VENR#67822 PERSLID_MUT-import/WP op HTC 05 (ipv. 5)

svn path=/Customer/trunk/; revision=53067
This commit is contained in:
Maarten van der Heide
2021-09-16 20:23:01 +00:00
parent 4703159969
commit 7f3e08d191

View File

@@ -3581,58 +3581,62 @@ END;
CREATE OR REPLACE PROCEDURE venr_update_perslid_mut (p_import_key IN NUMBER)
IS
CURSOR c IS
SELECT prs_perslid_key
FROM prs_perslid p
WHERE prs_afdeling_key = 1861 -- Yask
AND NOT EXISTS
(SELECT prs_perslidwerkplek_key
CURSOR c
IS
SELECT p.prs_perslid_key
FROM prs_perslid p
WHERE p.prs_afdeling_key = 1861 -- YASK
AND (NOT EXISTS -- Nog geen WP op YASK-locatie
(SELECT 1
FROM prs_v_perslidwerkplek_gegevens pwp
WHERE pwp.alg_locatie_key = 1421 -- YASK
AND pwp.prs_perslid_key = p.prs_perslid_key)
OR EXISTS -- Of WP in te laten vervallen YASK HTC 5-gebouw (waarna deze EXISTS kan worden verwijderd)
(SELECT 1
FROM prs_v_perslidwerkplek_gegevens pwp
WHERE pwp.prs_perslid_key = p.prs_perslid_key
AND pwp.alg_locatie_key = 1421 -- Yask
);
WHERE pwp.alg_gebouw_key = 14881 -- YASK HTC 5
AND pwp.prs_perslid_key = p.prs_perslid_key));
CURSOR c_del IS
SELECT prs_perslid_key
FROM prs_perslid p
WHERE prs_afdeling_key = 1861 -- Yask
AND SUBSTR (COALESCE (prs_perslid_oslogin, 'Que'), 1, 1) <> '_'
AND prs_perslid_verwijder IS NULL -- Persoon was al niet verwijderd.
AND COALESCE (prs_perslid_login, SYSDATE - 300) < SYSDATE - 60 -- Persoon is twee maanden niet ingelogd geweest
AND NOT EXISTS
(SELECT i.prs_perslid_oslogin
FROM fac_imp_perslid i
WHERE i.prs_perslid_oslogin = p.prs_perslid_oslogin);
CURSOR c_del
IS
SELECT p.prs_perslid_key
FROM prs_perslid p
WHERE p.prs_perslid_verwijder IS NULL -- Persoon niet verwijderd
AND p.prs_afdeling_key = 1861 -- YASK
AND SUBSTR (COALESCE (p.prs_perslid_oslogin, 'Que'), 1, 1) <> '_'
AND COALESCE (p.prs_perslid_login, SYSDATE - 300) < SYSDATE - 60 -- Persoon 2 maanden niet ingelogd geweest
AND NOT EXISTS
(SELECT 1
FROM fac_imp_perslid
WHERE prs_perslid_oslogin = p.prs_perslid_oslogin);
v_count NUMBER;
v_count NUMBER;
BEGIN
SELECT count(*)
INTO v_count
FROM fac_imp_perslid;
SELECT COUNT ( * ) INTO v_count FROM fac_imp_perslid;
prs.update_perslid (p_import_key, 'LOGIN', NULL);
-- autorisatiegroep koppelen 1501 Yask medewerker meldingen
-- Toekennen autorisatiegroep 1501=2. Yask_Default_MLD_BES
INSERT INTO fac_gebruikersgroep (prs_perslid_key, fac_groep_key)
SELECT prs_perslid_key, 1501
FROM prs_perslid p
WHERE prs_afdeling_key = 1861
AND NOT EXISTS
(SELECT fac_gebruikersgroep_key
FROM fac_gebruikersgroep gg
WHERE gg.prs_perslid_key = p.prs_perslid_key
AND fac_groep_key = 1501);
SELECT p.prs_perslid_key, 1501
FROM prs_perslid p
WHERE p.prs_perslid_verwijder IS NULL -- Persoon niet verwijderd
AND p.prs_afdeling_key = 1861 -- YASK
AND NOT EXISTS
(SELECT 1
FROM fac_gebruikersgroep
WHERE fac_groep_key = 1501
AND prs_perslid_key = p.prs_perslid_key);
DELETE FROM fac_gebruikersgroep
WHERE fac_groep_key = 1
WHERE fac_groep_key = 1
AND fac_gebruikersgroep_aanmaak > SYSDATE - 1 / 24;
FOR rec IN c
LOOP
prs.movetoruimte (rec.prs_perslid_key,
15421, -- HTC41
NULL,
20561, -- VENR#67822: YASK HTC 05 (verdieping 2, ruimte 2.001)
'L', -- VENR#67822: Evt. andere WP(s) op Locatie verwijderen
1);
END LOOP;
@@ -3644,6 +3648,7 @@ BEGIN
prs.delete_perslid (p_import_key, rec.prs_perslid_key);
END LOOP;
END IF;
COMMIT;
END;
/