diff --git a/PROR/PROR.sql b/PROR/PROR.sql index b2acc82b4..1b1e736b0 100644 --- a/PROR/PROR.sql +++ b/PROR/PROR.sql @@ -43,8 +43,6 @@ AS PROCEDURE mandateer_prs(p_perslid_key IN NUMBER); - - END; @@ -108,7 +106,8 @@ AS WHERE pk.prs_kenmerk_upper='AFAS ACCOUNT' AND pk.prs_kenmerk_key = pkl.prs_kenmerk_key AND pkl.prs_link_key=p.prs_perslid_key - AND pkl.prs_kenmerklink_waarde='1') + AND pkl.prs_kenmerklink_waarde='1') + AND p.prs_perslid_nr NOT LIKE 'P%' -- Alle P accounts komen via SCIM koppeling ,die geeft door als account inactief is GROUP BY p.prs_perslid_key, p.prs_perslid_oslogin; BEGIN FOR rec IN prs_del @@ -158,6 +157,9 @@ AS END; + + + END; / @@ -423,7 +425,7 @@ BEGIN prs_perslid_email, prs_perslid_telefoonnr, prs_srtperslid_omschrijving, - prs_perslid_oslogin, + prs_perslid_oslogin, prs_perslid_nr, prs_kenmerk1) VALUES(p_import_key, @@ -432,9 +434,11 @@ BEGIN rec.prs_voorletters, rec.prs_tussenvoegsel, rec.prs_achternaam, + -- LTRIM(rec.prs_tussenvoegsel||' '||rec.prs_achternaam), rec.prs_email, rec.prs_telefoon, v_srtperslid_omschrijving, + -- rec.prs_perslid_nr, SUBSTR(rec.prs_email,0,30), rec.prs_perslid_nr, '1000=1'); -- AFAS account kenmerk D=1022, A=1020, P=1000 @@ -552,7 +556,6 @@ END; - -- NOTIFICATIE VIEWS -- Noifictaie View tbv te late annulering outlook reservereing inc catering @@ -579,8 +582,8 @@ AS WHERE p.prs_perslid_key= rrr.RES_RSV_RUIMTE_HOST_KEY) gastheer, null receiver, NULL sender, - 'norbert.wassink@facilitor.nl' xemail, - --'cateringmanagerprorail@prorail.nl' xemail, + --'norbert.wassink@facilitor.nl' xemail, + 'cateringmanagerprorail@prorail.nl' xemail, NULL xmobile, rrr.res_rsv_ruimte_key xkey FROM res_rsv_ruimte rrr, res_rsv_artikel rra @@ -624,12 +627,13 @@ AS NULL xemail, NULL xmobile FROM res_rsv_ruimte rrr - WHERE rrr.res_rsv_ruimte_host_key<>rrr.res_rsv_ruimte_contact_key + WHERE rrr.res_rsv_ruimte_host_key<>rrr.res_rsv_ruimte_contact_key -- DIT MOET ANDERS AND NOT EXISTS (SELECT * FROM fac_tracking ft WHERE fac_tracking_refkey=rrr.res_rsv_ruimte_key AND ft.fac_srtnotificatie_key=223 - AND ft.fac_tracking_oms LIKE '%CUST01%'); + AND ft.fac_tracking_oms LIKE '%CUST01%') + AND rrr.res_rsv_ruimte_aanmaak BETWEEN SYSDATE-1 AND SYSDATE; @@ -655,9 +659,9 @@ AS SELECT rrr.res_rsv_ruimte_host_key user_key, CASE WHEN rro.res_ruimte_opstel_tijd>0 AND (SELECT COUNT(*) FROM res_rsv_deel rrd - WHERE rrd.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key)>0 THEN 'opstelling+vergadermiddel' - WHEN rro.res_ruimte_opstel_tijd>0 then 'opstelling aanpassing' - ELSE 'vergadermiddel' end title, + WHERE rrd.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key)>0 THEN 'Opstelling + Vergadermiddel' + WHEN rro.res_ruimte_opstel_tijd>0 then 'Opstelling' + ELSE 'Vergadermiddel' end title, rrr.res_rsv_ruimte_van van, rrr.res_rsv_ruimte_tot tot, rrr.res_rsv_ruimte_key item_key, @@ -666,7 +670,8 @@ AS '?u=reservering' || chr (38) || 'k=' || rrr.res_rsv_ruimte_key url FROM res_rsv_ruimte rrr, res_activiteit ra, res_ruimte_opstelling rro WHERE rrr.res_activiteit_key=ra.res_activiteit_key - AND ra.res_activiteit_omschrijving='vergadering inclusief vergadermiddel' + AND UPPER(ra.res_activiteit_omschrijving)='VERGADERING' + AND TRUNC(rrr.res_rsv_ruimte_van)>= TRUNC(SYSDATE-30) -- we laten alleen een 30 dagen terug zien. AND rrr.res_ruimte_opstel_key= rro.res_ruimte_opstel_key AND (rro.res_ruimte_opstel_tijd> 0 OR (SELECT COUNT(*) FROM res_rsv_deel rrd @@ -849,7 +854,11 @@ AS --- CREATE OR REPLACE VIEW pror_v_bkms_biomni AS - SELECT 'https://fmis.prorail.nl/?u='||fac_bookmark_id||CHR(38)||'mld_defaultstdmelding='||ms.MLD_STDMELDING_KEY url, + SELECT + CASE WHEN (SELECT USER FROM DUAL)='PROR_TEST' + THEN 'https://fmis.testprorail.nl/?u='||fac_bookmark_id||CHR(38)||'mld_defaultstdmelding='||ms.MLD_STDMELDING_KEY + ELSE 'https://fmis.prorail.nl/?u='||fac_bookmark_id||CHR(38)||'mld_defaultstdmelding='||ms.MLD_STDMELDING_KEY + END url, ms.MLD_STDMELDING_OMSCHRIJVING FROM fac_bookmark fb, mld_stdmelding ms WHERE fb.FAC_BOOKMARK_NAAM='SSP/Biomni melding' @@ -1296,7 +1305,7 @@ CREATE OR REPLACE VIEW PROR_V_EXPORT_PROVAT AS SELECT 'SLA-escalatieniveau;Requestnr;Begindatum;Contact;Service;Omschrijving;Gebouw;Assignee;Type request;Status;Kostenplaats;Omschrijving' heaeder,0 FROM DUAL UNION ALL - SELECT ';'||melding_key||';'||TO_CHAR(begin_datum,'DD-MM-YYYY HH24:MI:SS')||';'||contact||';'||service||';'||omschrijving||';'||locatie||';'||assignee||';'||type_request||';'||mld_status||';;'||REPLACE(REPLACE(onderwerp, CHR(10),''),CHR(13),'')||', '||kenmerkwaardes, 1 + SELECT ';'||melding_key||';'||TO_CHAR(begin_datum,'DD-MM-YYYY HH24:MI:SS')||';'||contact||';'||service||';'||omschrijving||';'||locatie||';'||assignee||';'||type_request||';'||mld_status||';;'||REPLACE(REPLACE(REPLACE(onderwerp, CHR(10),''),CHR(13),''),';',' ')||', '||kenmerkwaardes, 1 FROM pror_v_mld_provat WHERE provat_flag='1' ORDER BY 1 DESC; @@ -1452,7 +1461,12 @@ AS AND rrr.res_status_bo_key = 2 -- vervallen en te laat uit outllok afgemeld AND p.prs_perslid_key=rrr.res_rsv_ruimte_contact_key AND rrr.res_rsv_ruimte_externnr IS NOT NULL - AND rrr.res_rsv_ruimte_externsyncdate IS NULL; + AND rrr.res_rsv_ruimte_externsyncdate IS NULL + AND rrr.res_rsv_ruimte_key NOT IN (SELECT rkw.res_rsv_ruimte_key -- deze zijn door kenmerk uitgesloten van facturatie (aangegeven door cateraar) + FROM res_kenmerkwaarde rkw, res_kenmerk rk + WHERE rkw.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key + AND rkw.res_kenmerk_key = rk.res_kenmerk_key + AND rk.res_kenmerk_omschrijving='Niet factureren'); CREATE OR REPLACE PROCEDURE PROR_SELECT_EUREST_CAT( p_applname IN VARCHAR2, @@ -1467,7 +1481,7 @@ AS FROM alg_v_allonrgoed_gegevens alg WHERE alg.alg_ruimte_nr=p.ruimtenr) gebouw_code FROM PROR_V_SELECT_EUREST_CAT p - WHERE TO_CHAR(p.van,'MM')='12'; --TO_CHAR(ADD_MONTHS(SYSDATE,-1),'MM'); + WHERE TO_CHAR(p.van,'MM')=TO_CHAR(ADD_MONTHS(SYSDATE,-1),'MM'); CURSOR sel_art(p_rrr_key NUMBER) IS @@ -1616,6 +1630,90 @@ AS WHERE fac_rapport_node LIKE 'EUR-EX%'; -- EINDE EXPORT COMPASSGROUP + + +CREATE OR REPLACE PROCEDURE PROR_EXPORT_NSECURE_UPD(p_applname IN VARCHAR2, + p_applrun IN VARCHAR2, + p_filedir IN VARCHAR2, + p_filename IN VARCHAR2) +AS + oracle_err_num NUMBER; + oracle_err_mes VARCHAR2 (200); + v_errorhint VARCHAR2 (100); + v_aanduiding VARCHAR2 (100); + v_locatie_key NUMBER; + v_lengte NUMBER; + v_new_note VARCHAR2 (4000); + v_note_key NUMBER; + + + CURSOR upd + IS + SELECT o.mld_opdr_key, M.MLD_MELDING_KEY from mld_opdr o, mld_melding m + WHERE o.MLD_STATUSOPDR_KEY IN (5,8) + AND m.mld_melding_key = o.mld_melding_key + AND o.MLD_UITVOERENDE_KEYS=(select b.prs_bedrijf_key + from prs_bedrijf b + where b.PRS_LEVERANCIER_NR ='313341' + and b.PRS_BEDRIJF_UITVOERENDE='1' + AND b.PRS_BEDRIJF_VERWIJDER IS NULL) + AND o.MLD_OPDR_EXTERNSYNCDATE < (select MAX(mld_melding_note_aanmaak) + from mld_melding_note + where mld_melding_key=6 + and mld_melding_note_flag =1); + +BEGIN + FOR rec IN upd + LOOP + + SELECT MLD_MELDING_NOTE_OMSCHRIJVING + INTO v_new_note + FROM (SELECT MAX(mld_MELDING_note_aanmaak), mld_MELDING_key, mld_melding_note_key, MLD_melding_NOTE_OMSCHRIJVING + from mld_melding_note where mld_melding_key=rec.mld_melding_key + GROUP BY mld_melding_key,mld_melding_note_key,MLD_melding_NOTE_OMSCHRIJVING); + -- Gaan we hem nu in de melding kenmerk notite zetten + SELECT k.mld_kenmerk_key + INTO v_note_key + FROM mld_kenmerk k, mld_srtkenmerk sk + WHERE sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key + AND UPPER (sk.mld_srtkenmerk_omschrijving) = 'UPDATE NOTITIES'; + + v_errorhint := + 'Verwijderen kenmerk bij de opdracht : ' + || rec.mld_melding_key; + + DELETE MLD_KENMERKOPDR ko + WHERE ko.mld_opdr_key = rec.mld_opdr_key + AND ko.mld_kenmerk_key = v_note_key; + + + mld.upsertopdrachtkenmerk (v_note_key, + rec.mld_opdr_key, + v_new_note); + + v_errorhint := + 'Opdracht opnieuw te verzenden naar Nsecure voor opdracht : ' + || rec.mld_melding_key; + + -- Eerst zetten we de opdracht opnieuw klaar om te verzenden + UPDATE mld_opdr o + SET mld_opdr_teverzenden = 2, mld_opdr_verzonden = NULL + WHERE o.mld_opdr_key = rec.mld_opdr_key; + + END LOOP; +EXCEPTION + WHEN OTHERS + THEN + oracle_err_num := SQLCODE; + oracle_err_mes := SUBSTR (SQLERRM, 1, 100); + + fac.writelog (p_applname, + 'E', + oracle_err_num || '/' || oracle_err_mes, + v_errorhint); +END; +/ + ------ payload end ------ SET DEFINE OFF