From 43cebe6d254ae7a8ef1bb1b63bf30934267098af Mon Sep 17 00:00:00 2001 From: Suzan Wiegerinck Date: Thu, 20 Jun 2019 07:47:33 +0000 Subject: [PATCH] LOGI#56094: Personen import afgelopen nacht verkeerd gelopen svn path=/Customer/; revision=43021 --- onces/LOGI/LOGI#56094.sql | 93 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) diff --git a/onces/LOGI/LOGI#56094.sql b/onces/LOGI/LOGI#56094.sql index 01cfae8aa..045e8ea07 100644 --- a/onces/LOGI/LOGI#56094.sql +++ b/onces/LOGI/LOGI#56094.sql @@ -19,6 +19,99 @@ WHENEVER SQLERROR CONTINUE; SET DEFINE OFF ------ payload begin ------ +CREATE OR REPLACE PROCEDURE logi_import_persoon (p_import_key IN NUMBER) +AS + oracle_err_num NUMBER; + oracle_err_mes VARCHAR2 (200); + v_errormsg VARCHAR2 (400); + v_errorhint VARCHAR2 (400); + v_aantal_in_FCLT NUMBER; +BEGIN + v_errorhint := 'Generieke update'; + -- de sequence array staat beschreven in PRS_PAC.SRC bij de prs.import_perslid proc + prs.import_perslid ( + p_import_key, + '0;0;0;0;0;0;8;2;4;3;' + || '0;0;0;0;0;0;0;6;0;1;' + || '1;5;0;0;0;0;9;0;0;0;' + || '0;0;0;0;0;0;0;0;0;0;' + || '0;0;0;0;0;0', + 'employeeID;sn;givenName;infix;uid;mail;orglevel7;orgleve7id;a1physicalDeliveryOfficeName%'); + + UPDATE fac_imp_perslid + SET prs_srtperslid_omschrijving = 'Onbekend'; + + UPDATE fac_imp_perslid + SET prs_afdeling_naam = 'CGI'; + + UPDATE fac_imp_perslid p + SET p.alg_locatie_code = + (SELECT lo.alg_locatie_code + FROM fac_usrdata ud, alg_locatie lo + WHERE ud.fac_usrtab_key = 1 + AND ud.fac_usrdata_code = lo.alg_locatie_code + AND ud.fac_usrdata_omschr = p.prs_kenmerk1 + AND lo.alg_locatie_verwijder IS NULL); + + UPDATE fac_imp_perslid p + SET p.alg_gebouw_code = + (SELECT g.alg_gebouw_code + FROM alg_locatie l, alg_gebouw g + WHERE p.alg_locatie_code = l.alg_locatie_code + AND l.alg_locatie_key = g.alg_locatie_key + AND g.alg_gebouw_verwijder IS NULL + AND g.alg_srtgebouw_key <> 61 -- parkeer garages doen niet mee + AND l.alg_locatie_verwijder IS NULL); + + UPDATE fac_imp_perslid p + SET p.alg_verdieping_volgnr = + (SELECT v.alg_verdieping_volgnr + FROM alg_locatie l, alg_gebouw g, alg_verdieping v + WHERE p.alg_locatie_code = l.alg_locatie_code + AND p.alg_gebouw_code = g.alg_gebouw_code + AND l.alg_locatie_key = g.alg_locatie_key + AND g.alg_gebouw_verwijder IS NULL + AND g.alg_srtgebouw_key <> 61 -- parkeer garages doen niet mee + AND l.alg_locatie_verwijder IS NULL + AND v.alg_gebouw_key = g.alg_gebouw_key + AND v.alg_verdieping_code = '0' + AND v.alg_verdieping_verwijder IS NULL); + + UPDATE fac_imp_perslid p + SET p.alg_ruimte_nr = + (SELECT r.alg_ruimte_nr + FROM alg_locatie l, + alg_gebouw g, + alg_verdieping v, + alg_ruimte r + WHERE p.alg_locatie_code = l.alg_locatie_code + AND l.alg_locatie_key = g.alg_locatie_key + AND p.alg_gebouw_code = g.alg_gebouw_code + AND p.alg_verdieping_volgnr = v.alg_verdieping_volgnr + AND g.alg_gebouw_verwijder IS NULL + AND g.alg_srtgebouw_key <> 61 -- parkeer garages doen niet mee + AND l.alg_locatie_verwijder IS NULL + AND v.alg_gebouw_key = g.alg_gebouw_key + AND v.alg_verdieping_code = '0' + AND v.alg_verdieping_verwijder IS NULL + AND r.alg_verdieping_key = v.alg_verdieping_key + AND r.alg_ruimte_nr = '000' + AND r.alg_ruimte_verwijder IS NULL); + + 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 logi_import_persoon; +/ + CREATE OR REPLACE PROCEDURE logi_update_persoon (p_import_key IN NUMBER) AS