SUTF#20618: Import CURA-personen

svn path=/Customer/trunk/; revision=14847
This commit is contained in:
Marcel Bourseau
2011-06-28 10:20:28 +00:00
parent 3996fc8beb
commit 721a63f48b

View File

@@ -1,7 +1,7 @@
-- Script containing customer specific configuration sql statements for SUTF
-- (c) 2010 SG|facilitor bv
-- $Revision: 1 $
-- $Modtime: 6-04-11 12:29 $
-- $Revision: 2 $
-- $Modtime: 27-06-11 16:43 $
--
-- Support: +31 53 4800700
@@ -646,56 +646,7 @@ IS
FROM fac_gebruikersgroep g
WHERE g.prs_perslid_key = p.prs_perslid_key);
-- Alle aanwezige JGZ-personen met personeelsnummer (ie. de import-doelgroep) krijgen de rol FE-RES (key = 22)
-- (indien ze dat nog niet hebben) om een JGZ Spreekkamer te kunnen reserveren.
-- Een JGZ-er is een persoon op een prs_afdeling die het divisie-kenmerk (referentie naar domein en eigen tabel)
-- JGZ heeft. Dit kenmerk heeft key=1000 en de waarde JGZ heeft key = 1.
CURSOR cJGZpersonen
IS
SELECT p.prs_perslid_key, p.prs_perslid_nr, p.prs_perslid_naam, p.prs_perslid_voornaam
FROM prs_v_aanwezigperslid p, prs_afdeling a, prs_kenmerklink k
WHERE p.prs_perslid_nr IS NOT NULL
AND p.prs_afdeling_key = a.prs_afdeling_key
AND a.prs_afdeling_key = K.PRS_LINK_KEY
AND K.PRS_KENMERKLINK_NIVEAU = 'A'
AND k.prs_kenmerk_key = 1000
AND k.prs_kenmerklink_waarde = 1
AND NOT EXISTS (select 'x' from fac_gebruikersgroep rol
WHERE p.prs_perslid_key = ROL.PRS_PERSLID_KEY
AND ROL.FAC_GROEP_KEY = c_key_JGZ_rol);
CURSOR cRisicoBeheeringpersonen
IS
SELECT p.prs_perslid_key, p.prs_perslid_nr, p.prs_perslid_naam, p.prs_perslid_voornaam
FROM prs_v_aanwezigperslid p, prs_afdeling a, prs_kenmerklink k
WHERE p.prs_perslid_nr IS NOT NULL
AND p.prs_afdeling_key = a.prs_afdeling_key
AND a.prs_afdeling_key = K.PRS_LINK_KEY
AND K.PRS_KENMERKLINK_NIVEAU = 'A'
AND k.prs_kenmerk_key = 1000
AND k.prs_kenmerklink_waarde = 2
AND NOT EXISTS (select 'x' from fac_gebruikersgroep rol
WHERE p.prs_perslid_key = ROL.PRS_PERSLID_KEY
AND ROL.FAC_GROEP_KEY = c_key_Risicobeheers_rol);
CURSOR cConcernStafpersonen
IS
SELECT p.prs_perslid_key, p.prs_perslid_nr, p.prs_perslid_naam, p.prs_perslid_voornaam
FROM prs_v_aanwezigperslid p, prs_afdeling a, prs_kenmerklink k
WHERE p.prs_perslid_nr IS NOT NULL
AND p.prs_afdeling_key = a.prs_afdeling_key
AND a.prs_afdeling_key = K.PRS_LINK_KEY
AND K.PRS_KENMERKLINK_NIVEAU = 'A'
AND k.prs_kenmerk_key = 1000
AND k.prs_kenmerklink_waarde = 81
AND NOT EXISTS (select 'x' from fac_gebruikersgroep rol
WHERE p.prs_perslid_key = ROL.PRS_PERSLID_KEY
AND ROL.FAC_GROEP_KEY = c_key_ConcernStaf_rol);
BEGIN
SELECT COUNT (*)
@@ -1349,156 +1300,6 @@ BEGIN
END;
END LOOP;
-- Iedere JGZ-er krijgt de rol (key = 22) om een JGZ-spreekkamer te kunnen reserveren.
FOR JGZpersoon IN cJGZpersonen
LOOP
BEGIN
v_aanduiding :=
JGZpersoon.prs_perslid_nr
|| '|'
|| JGZpersoon.prs_perslid_naam
|| '|'
|| JGZpersoon.prs_perslid_voornaam
|| ' - ';
v_errorhint := 'Fout bij bepalen groep met key [' || c_key_JGZ_rol || ']';
SELECT fac_groep_upper
INTO v_groep_defaultnaam
FROM fac_groep
WHERE fac_groep_key = c_key_JGZ_rol
AND fac_groep_verwijder IS NULL;
v_errorhint :=
'Fout bij koppelen persoon aan groep met key [' || c_key_JGZ_rol || ']';
INSERT INTO fac_gebruikersgroep
(fac_groep_key, prs_perslid_key
)
VALUES (c_key_JGZ_rol, JGZpersoon.prs_perslid_key
);
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_applname,
p_applrun,
'E',
v_errormsg,
v_errorhint
);
COMMIT;
END;
END LOOP;
-- Iedere persoon uit Risicobeheersing krijgt de rol (key = 62) om een brandweerdienstauto te kunnen reserveren.
FOR RisBeheersPersoon IN cRisicoBeheeringpersonen
LOOP
BEGIN
v_aanduiding :=
RisBeheersPersoon.prs_perslid_nr
|| '|'
|| RisBeheersPersoon.prs_perslid_naam
|| '|'
|| RisBeheersPersoon.prs_perslid_voornaam
|| ' - ';
v_errorhint := 'Fout bij bepalen groep met key [' || c_key_Risicobeheers_rol || ']';
SELECT fac_groep_upper
INTO v_groep_defaultnaam
FROM fac_groep
WHERE fac_groep_key = c_key_Risicobeheers_rol
AND fac_groep_verwijder IS NULL;
v_errorhint :=
'Fout bij koppelen persoon aan groep met key [' || c_key_Risicobeheers_rol || ']';
INSERT INTO fac_gebruikersgroep
(fac_groep_key, prs_perslid_key
)
VALUES (c_key_Risicobeheers_rol, RisBeheersPersoon.prs_perslid_key
);
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_applname,
p_applrun,
'E',
v_errormsg,
v_errorhint
);
COMMIT;
END;
END LOOP;
-- Iedere persoon uit Concernstaf krijgt de rol (key = 63) om een concernstafdienstauto te kunnen reserveren.
FOR ConcernStafPersoon IN cConcernStafpersonen
LOOP
BEGIN
v_aanduiding :=
ConcernStafPersoon.prs_perslid_nr
|| '|'
|| ConcernStafPersoon.prs_perslid_naam
|| '|'
|| ConcernStafPersoon.prs_perslid_voornaam
|| ' - ';
v_errorhint := 'Fout bij bepalen groep met key [' || c_key_ConcernStaf_rol || ']';
SELECT fac_groep_upper
INTO v_groep_defaultnaam
FROM fac_groep
WHERE fac_groep_key = c_key_ConcernStaf_rol
AND fac_groep_verwijder IS NULL;
v_errorhint :=
'Fout bij koppelen persoon aan groep met key [' || c_key_ConcernStaf_rol || ']';
INSERT INTO fac_gebruikersgroep
(fac_groep_key, prs_perslid_key
)
VALUES (c_key_ConcernStaf_rol, ConcernStafPersoon.prs_perslid_key
);
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_applname,
p_applrun,
'E',
v_errormsg,
v_errorhint
);
COMMIT;
END;
END LOOP;
ELSE
fac.imp_writelog
@@ -1522,7 +1323,7 @@ BEGIN
END sutf_update_prs;
/
BEGIN adm.systrackscript('$Workfile: sutf.sql $', '$Revision: 1 $', 0); END;
BEGIN adm.systrackscript('$Workfile: sutf.sql $', '$Revision: 2 $', 0); END;
/