-- uitvoeren op de nieuw ingelezen testomgeving
-- grant select on prs_kostenplaats to aaah
-- grant select on prs_perslid to aaah
-- grant select on prs_perslidkostenplaats to aaah

-- Verwijder de verwijderdatum van mensen die door de import verwijderd zijn. Ze kunnen dan alsnog weer gekoppeld worden.
UPDATE prs_perslid
   SET prs_perslid_verwijder = NULL
 WHERE prs_perslid_verwijder > SYSDATE - 1
 
 -- import opnieuw uitvoeren
 
 -- Budgethouders vallen onder afdelingen die niet meer ingelezen worden. Deze hebben we toch maar even gereanimeerd.
 UPDATE prs_perslid p
   SET prs_perslid_oslogin =
          (SELECT UPPER (prs_perslid_oslogin)
             FROM fac_imp_perslid i
            WHERE i.prs_perslid_email = p.prs_perslid_email
              AND NOT EXISTS
                     (SELECT p2.prs_perslid_key
                        FROM prs_perslid p2
                       WHERE p2.prs_perslid_oslogin =
                                UPPER (i.prs_perslid_oslogin)))
 WHERE prs_perslid_oslogin IS NULL AND prs_perslid_verwijder IS NULL
 
-- Neem de budgethouders over vanuit de nieuw ingelezen testomgeving
UPDATE prs_kostenplaats k
   SET prs_perslid_key =
          (SELECT p.prs_perslid_key
             FROM prs_perslid p,
                  aaah_test.prs_perslid pt,
                  aaah_test.prs_kostenplaats kt
            WHERE p.prs_perslid_oslogin = pt.prs_perslid_oslogin
              AND kt.prs_kostenplaats_key = k.prs_kostenplaats_key
              AND kt.prs_perslid_key = pt.prs_perslid_key)
 WHERE prs_perslid_key IS NULL
 
 -- mandateringen toevoegen.
 INSERT INTO prs_perslidkostenplaats
   SELECT *
     FROM aaah_test.prs_perslidkostenplaats pkt
    WHERE NOT EXISTS
             (SELECT pk.prs_perslidkostenplaats_key
                FROM prs_perslidkostenplaats pk
               WHERE pkt.prs_perslidkostenplaats_key =
                        pk.prs_perslidkostenplaats_key)