CSUN#84005 Werkplekken importeren
svn path=/Customer/trunk/; revision=65548
This commit is contained in:
134
CSUN/CSUN.sql
134
CSUN/CSUN.sql
@@ -7660,6 +7660,140 @@ AS
|
||||
AND m.prs_perslid_key = 39281 -- API-user tbv Mulesoft
|
||||
AND l.alg_locatie_key = m.mld_alg_locatie_key;
|
||||
|
||||
|
||||
CREATE OR REPLACE PROCEDURE csun_import_perslid (p_import_key IN NUMBER)
|
||||
AS
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_errormsg VARCHAR2 (400);
|
||||
v_errorhint VARCHAR2 (400);
|
||||
BEGIN
|
||||
v_errorhint := 'Generieke import';
|
||||
-- de sequence array staat beschreven in PRS_PAC.SRC bij de prs.import_perslid proc
|
||||
prs.import_perslid (
|
||||
p_import_key,
|
||||
'1;2;3;4;0;0;5;6;7;9;'
|
||||
|| '8;0;0;0;0;12;0;10;0;0;'
|
||||
|| '11;13;0;0;0;0;0;0;0;0;'
|
||||
|| '0;0;0;0;0;0;0;0;0;0;'
|
||||
|| '0;0;0;0;0;0',
|
||||
'Locatiecode;Gebouwcode;Bouwlaagvolgnummer;Ruimtenummer;Afdelingscode;PersoonAchternaam;Tussenvoegsel;Voorletters;Voornaam;Email;Functie;Klantautorisatie;Loginnaam');
|
||||
|
||||
COMMIT;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg := 'Error ' || oracle_err_num || '/' || oracle_err_mes;
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_errormsg,
|
||||
v_errorhint);
|
||||
END csun_import_perslid;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PROCEDURE csun_update_perslid (p_import_key IN NUMBER)
|
||||
IS
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_errormsg VARCHAR2 (400);
|
||||
v_errorhint VARCHAR2 (400);
|
||||
BEGIN
|
||||
v_errorhint := 'Toevoegen personen';
|
||||
prs.update_perslid (p_import_key, 'LOGIN', NULL);
|
||||
|
||||
-- Klantspecifieke aanpassingen
|
||||
v_errorhint := 'Klantspecifieke aanpassingen update';
|
||||
csun_post_update_perslid (p_import_key);
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg := 'Error ' || oracle_err_num || '/' || oracle_err_mes;
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_errormsg,
|
||||
v_errorhint);
|
||||
END csun_update_perslid;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PROCEDURE csun_post_update_perslid (p_import_key IN NUMBER)
|
||||
IS
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_errormsg VARCHAR2 (400);
|
||||
v_errorhint VARCHAR2 (400);
|
||||
|
||||
CURSOR cperslid IS
|
||||
SELECT i.prs_perslid_key,
|
||||
i.prs_perslid_naam,
|
||||
i.prs_perslid_tussenvoegsel,
|
||||
i.prs_perslid_voornaam,
|
||||
i.prs_perslid_voorletters,
|
||||
i.prs_perslid_email,
|
||||
i.prs_perslid_oslogin,
|
||||
i.prs_srtperslid_omschrijving,
|
||||
i.prs_afdeling_naam,
|
||||
i.prs_perslid_telefoonnr,
|
||||
TO_NUMBER (
|
||||
DECODE (i.prs_perslid_telefoonnr,
|
||||
'1', 61,
|
||||
'2', 601,
|
||||
'3', 761)) AS fac_groep_key
|
||||
FROM fac_imp_perslid i
|
||||
WHERE i.prs_perslid_oslogin IS NOT NULL
|
||||
GROUP BY i.prs_perslid_key,
|
||||
i.prs_perslid_naam,
|
||||
i.prs_perslid_tussenvoegsel,
|
||||
i.prs_perslid_voornaam,
|
||||
i.prs_perslid_voorletters,
|
||||
i.prs_perslid_email,
|
||||
i.prs_perslid_oslogin,
|
||||
i.prs_srtperslid_omschrijving,
|
||||
i.prs_afdeling_naam,
|
||||
i.prs_perslid_telefoonnr,
|
||||
TO_NUMBER (
|
||||
DECODE (i.prs_perslid_telefoonnr,
|
||||
'1', 61,
|
||||
'2', 601,
|
||||
'3', 761));
|
||||
BEGIN
|
||||
FOR rec IN cperslid
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint :=
|
||||
'Toevoegen autorisaties ' || rec.prs_perslid_oslogin;
|
||||
|
||||
IF rec.prs_perslid_key IS NOT NULL
|
||||
THEN
|
||||
INSERT INTO fac_gebruikersgroep (prs_perslid_key,
|
||||
fac_groep_key)
|
||||
VALUES (rec.prs_perslid_key, rec.fac_groep_key);
|
||||
|
||||
v_errorhint :=
|
||||
'Opschonen telefoonnr ' || rec.prs_perslid_oslogin;
|
||||
|
||||
UPDATE prs_perslid
|
||||
SET prs_perslid_telefoonnr = NULL
|
||||
WHERE prs_perslid_key = rec.prs_perslid_key;
|
||||
END IF;
|
||||
END;
|
||||
END LOOP;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg := 'Error ' || oracle_err_num || '/' || oracle_err_mes;
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_errormsg,
|
||||
v_errorhint);
|
||||
END csun_post_update_perslid;
|
||||
/
|
||||
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
|
||||
Reference in New Issue
Block a user