diff --git a/AKZO/AKZO.sql b/AKZO/AKZO.sql index 629d07d53..148141154 100644 --- a/AKZO/AKZO.sql +++ b/AKZO/AKZO.sql @@ -1,4 +1,4 @@ -/* Formatted on 18-6-2021 13:01:48 (QP5 v5.336) */ +/* Formatted on 8/7/2021 14:04:29 (QP5 v5.336) */ -- -- $Id$ -- @@ -503,6 +503,33 @@ AS END; / +CREATE OR REPLACE VIEW AKZO_V_T_PAS_AMSTERDAM +( + INS_DEEL_OMSCHRIJVING, + INS_DEEL_KEY, + INS_DEEL_VERWIJDER +) +AS + SELECT p.prs_perslid_naam_full + || ' / ' + || sd.ins_srtdeel_omschrijving + || ' ' + || d.ins_deel_omschrijving, + ins_deel_key, + ins_deel_verwijder + FROM ins_deel d, + ins_srtdeel sd, + ins_srtgroep sg, + prs_v_perslid_fullnames_all p + WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtgroep_key = sg.ins_srtgroep_key + AND sg.ins_srtgroep_key = 81 + AND d.ins_alg_ruimte_type = 'P' + AND d.ins_alg_ruimte_key = p.prs_perslid_key + AND d.ins_deel_actief = 1 + AND sd.ins_srtdeel_code_upper LIKE 'T-PAS' --- alleen tijdelijk passen kunnen worden verlengd + ORDER BY p.prs_perslid_naam_full; + CREATE OR REPLACE VIEW AKZO_V_TIJDELIJK_PAS ( INS_DEEL_OMSCHRIJVING, @@ -556,7 +583,7 @@ AS ins_srtdeel_verwijder FROM ins_srtdeel sd, ins_srtgroep gr WHERE sd.ins_srtgroep_key = gr.ins_srtgroep_key - AND gr.ins_srtgroep_key = 181; + AND gr.ins_srtgroep_key = 81; CREATE OR REPLACE VIEW AKZO_V_RAP_AANVR_BADGE ( @@ -822,7 +849,10 @@ AS TO_CHAR (res_rsv_artikel_levering, 'HH24:MI') levering_catering, aantal, - DECODE (upper(artikeloms), 'SPECIAL' , artikeloms|| ': ' || specialomschr , artikeloms) artikeloms, + DECODE (UPPER (artikeloms), + 'SPECIAL', artikeloms || ': ' || specialomschr, + artikeloms) + artikeloms, artikelopm, r2a.ruimte_nr catering_locatie, @@ -856,7 +886,7 @@ AS res_rsv_ruimte rr, res_activiteit act, prs_v_perslid_fullnames pf, - (SELECT ka.res_rsv_artikel_key, res_kenmerkartikel_waarde + (SELECT ka.res_rsv_artikel_key, res_kenmerkartikel_waarde FROM res_kenmerkartikel ka, res_kenmerk k, res_srtkenmerk sk @@ -864,16 +894,20 @@ AS AND k.res_srtkenmerk_key = sk.res_srtkenmerk_key AND res_srtkenmerk_upper = 'BIJZONDERHEDEN') opmerking, - (SELECT ka.res_rsv_artikel_key, res_kenmerkartikel_waarde specialomschr - FROM res_kenmerkartikel ka, res_kenmerk k, res_srtkenmerk sk - WHERE k.res_kenmerk_key = ka.res_kenmerk_key - AND sk.res_srtkenmerk_key = k.res_srtkenmerk_key - AND ka.res_kenmerkartikel_verwijder IS NULL - AND sk.res_srtkenmerk_upper = 'OMSCHRIJVING ARTIKEL') special + (SELECT ka.res_rsv_artikel_key, + res_kenmerkartikel_waarde specialomschr + FROM res_kenmerkartikel ka, + res_kenmerk k, + res_srtkenmerk sk + WHERE k.res_kenmerk_key = ka.res_kenmerk_key + AND sk.res_srtkenmerk_key = k.res_srtkenmerk_key + AND ka.res_kenmerkartikel_verwijder IS NULL + AND sk.res_srtkenmerk_upper = + 'OMSCHRIJVING ARTIKEL') special WHERE ra.res_rsv_artikel_verwijder IS NULL AND ra.res_rsv_artikel_key = opmerking.res_rsv_artikel_key(+) - AND ra.res_rsv_artikel_key = + AND ra.res_rsv_artikel_key = special.res_rsv_artikel_key(+) AND a.res_artikel_key = ra.res_artikel_key AND d.ins_discipline_key = a.res_discipline_key @@ -933,7 +967,7 @@ AS CREATE OR REPLACE VIEW AKZO_V_RAP_CATERING_LABELS AS - SELECT datum hide_f_datum, + SELECT datum hide_f_datum, hide_f_rsv_ruimte, resnr, HOST, @@ -959,8 +993,7 @@ AS res_omschrijving, bijzonderheden; -CREATE OR REPLACE PROCEDURE akzo_daily (p_applname IN VARCHAR2, - p_applrun IN VARCHAR2) +CREATE OR REPLACE PROCEDURE akzo_daily AS BEGIN -- mandaat voor alle AN medewerkers @@ -971,6 +1004,73 @@ BEGIN END; / +CREATE OR REPLACE PROCEDURE akzo_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); + 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, + '1;2;3;4;5;6;7;8;9;11;' + || '10;0;0;0;0;13;14;15;0;17;' + || '16;0;0;12;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;Werkplekvolgnummer;Omschrijving;Afdelingscode;PersoonAchternaam;Tussenvoegsel;Voorletters;Voornaam;Titel/Aanhef;Telefoonnummer;Mobiel;Email;Functie;Personeelsnummer;Loginnaam;Password'); + + + 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; +/ + +CREATE OR REPLACE PROCEDURE akzo_update_perslid (p_import_key IN NUMBER) +IS + v_count NUMBER; + + -- als er geen mailadres betreft het een contractor en voegen we toe obv persnr + CURSOR c_insert IS + SELECT * + FROM fac_imp_perslid i + WHERE i.prs_perslid_email IS NULL; + + -- met wel een mailadres kunnen we vergelijken en dus ook bijwerken + CURSOR c_upsert IS + SELECT * + FROM fac_imp_perslid i + WHERE i.prs_perslid_email IS NOT NULL; + +BEGIN + FOR rec IN c_insert + LOOP + BEGIN + prs.update_perslid (p_import_key, 'NR', NULL); + END; + END LOOP; + + FOR rec IN c_upsert + LOOP + BEGIN + prs.update_perslid (p_import_key, 'EMAIL', NULL); + END; + END LOOP; +END; +/ + CREATE OR REPLACE VIEW AKZO_V_NOTI_INS_TBADGE ( CODE, @@ -1118,6 +1218,7 @@ AS ---------- Rittenadministratie ---------- ----------------------------------------- + CREATE OR REPLACE VIEW AKZO_V_RIT_TARIEFGROEP AS SELECT fac_usrdata_key akzo_v_rit_tariefgroep_key, @@ -1840,6 +1941,7 @@ AS ----- Einde rittenadministratie --------- ----------------------------------------- + ------ payload end ------ SET DEFINE OFF