diff --git a/NOUR/NOUR.SQL b/NOUR/NOUR.SQL index 32c2df3c1..3b5889fca 100644 --- a/NOUR/NOUR.SQL +++ b/NOUR/NOUR.SQL @@ -6228,136 +6228,147 @@ AS 'G', s.ins_srtgroep_key, 'D', g.ins_discipline_key); -CREATE OR REPLACE VIEW nour_V_NOTI_OBJBEH +CREATE OR REPLACE VIEW NOUR_V_NOTI_OBJBEH ( - METHODE, - TO_KEY, - TO_OMSCHR, - REF_KEY, - REF_OMSCHR, - KPN_KEY, - AANTAL, - BETREFT + METHODE, + TO_KEY, + TO_OMSCHR, + REF_KEY, + REF_OMSCHR, + KPN_KEY, + AANTAL, + BETREFT ) -AS -WITH - taken - AS - (SELECT fac.nextcyclusdatedeel (d.ins_deel_key, - d.ins_srtcontrole_key, - 1) volgende_cyclus, - p.ins_deelsrtcontrole_plandatum datum_gepland, - COALESCE ( - p.ins_deelsrtcontrole_plandatum, - fac.nextcyclusdatedeel (d.ins_deel_key, +AS + WITH + taken + AS + (SELECT fac.nextcyclusdatedeel (d.ins_deel_key, d.ins_srtcontrole_key, - 1)) volgende_ctr, - d.*, - xcp.ins_srtcontroledl_xcp_periode - FROM (SELECT sc.ins_srtcontrole_key, - d.ins_deel_key, - d.ins_deel_omschrijving, - sc.ins_srtcontrole_periode, - sd.ins_srtdeel_omschrijving, - a.prs_kostenplaats_key, - pfa.prs_perslid_key, - pfa.prs_perslid_naam_full, - ud.fac_usrdata_key, - ud.fac_usrdata_omschr - FROM ins_srtcontrole sc, - ins_discipline di, - ins_v_aanwezigsrtgroep sg, - ins_v_aanwezigsrtdeel sd, - ins_v_aanwezigdeel d, - prs_perslid p, - prs_afdeling a, - prs_v_perslid_fullnames_all pfa, - (SELECT * - FROM ins_kenmerkdeel kd, ins_kenmerk k - WHERE kd.ins_kenmerkdeel_verwijder IS NULL - AND kd.ins_kenmerk_key = k.ins_kenmerk_key - AND k.ins_srtkenmerk_key = 3742) kd, -- Uitvoerder regime - fac_usrdata ud - WHERE sd.ins_srtdeel_key = d.ins_srtdeel_key - AND sg.ins_srtgroep_key = sd.ins_srtgroep_key - AND di.ins_discipline_key = sg.ins_discipline_key - AND COALESCE (d.ins_deel_vervaldatum, SYSDATE + 1) > - SYSDATE - AND p.prs_perslid_key = d.prs_perslid_key_beh - AND a.prs_afdeling_key(+) = p.prs_afdeling_key - AND pfa.prs_perslid_key = d.prs_perslid_key_beh - AND kd.ins_deel_key = d.ins_deel_key - AND NOT EXISTS - (SELECT sk.ins_srtkenmerk_omschrijving, - kd.ins_deel_key - FROM ins_srtkenmerk sk, - ins_kenmerk k, - ins_kenmerkdeel kd - WHERE sk.ins_srtkenmerk_key = 3922 - AND k.ins_srtkenmerk_key = - sk.ins_srtkenmerk_key - AND kd.ins_kenmerk_key = - k.ins_kenmerk_key - AND kd.ins_deel_key = d.ins_deel_key) - AND ( sc.ins_srtcontrole_eind IS NULL - OR sc.ins_srtcontrole_eind > SYSDATE) - AND kd.ins_kenmerkdeel_waarde != '4321' -- 'N.v.t.' - AND ud.fac_usrdata_key = - fac.safe_to_number (kd.ins_kenmerkdeel_waarde) - AND sc.ins_srtinstallatie_key = - DECODE (ins_srtcontrole_niveau, - 'D', di.ins_discipline_key, - 'G', sg.ins_srtgroep_key, - 'S', sd.ins_srtdeel_key)) d, - ins_srtcontroledl_xcp xcp, - (SELECT * - FROM ins_v_udr_deelinspect ins - WHERE deelsrtcontrole_status = 'Gepland' - AND ins_deelsrtcontrole_plandatum IS NOT NULL) p - WHERE xcp.ins_deel_key(+) = d.ins_deel_key - AND xcp.ins_srtcontrole_key(+) = d.ins_srtcontrole_key - AND p.deel_key(+) = d.ins_deel_key - AND p.ins_srtcontrole_key(+) = d.ins_srtcontrole_key - AND COALESCE (xcp.ins_srtcontroledl_xcp_periode, - d.ins_srtcontrole_periode) > - 0 - -- De eerste paar dagen van volgende maand ook vast meepakken, dat scheelt verrassingen - AND COALESCE ( + 1) volgende_cyclus, + p.ins_deelsrtcontrole_plandatum datum_gepland, + COALESCE ( p.ins_deelsrtcontrole_plandatum, fac.nextcyclusdatedeel (d.ins_deel_key, d.ins_srtcontrole_key, - 1)) < - ADD_MONTHS (SYSDATE, 1) + 3) - SELECT 'mail' methode, - prs_perslid_key to_key, - prs_perslid_naam_full to_omschr, - NULL ref_key, - NULL ref_omschr, - NULL kpn_key, - COUNT (*) aantal, - LISTAGG (ins_deel_omschrijving, ', ') - WITHIN GROUP (ORDER BY ins_deel_omschrijving) AS betreft - FROM taken - WHERE fac_usrdata_key = 4318 -- Objectbeheerder -GROUP BY prs_perslid_key, prs_perslid_naam_full -UNION ALL - SELECT 'melding' methode, - fac_usrdata_key to_key, - fac_usrdata_omschr to_omschr, - prs_perslid_key ref_key, - prs_perslid_naam_full ref_omschr, - prs_kostenplaats_key kpn_key, - COUNT (*) aantal, - LISTAGG (ins_deel_omschrijving, ', ') - WITHIN GROUP (ORDER BY ins_deel_omschrijving) AS betreft - FROM taken - WHERE fac_usrdata_key NOT IN (4321, 4318) -- alles behalve nvt en beheerder -GROUP BY fac_usrdata_key, - fac_usrdata_omschr, - prs_kostenplaats_key, - prs_perslid_key, - prs_perslid_naam_full -ORDER BY methode, to_omschr, ref_omschr; + 1)) volgende_ctr, + d.*, + xcp.ins_srtcontroledl_xcp_periode + FROM (SELECT sc.ins_srtcontrole_key, + d.ins_deel_key, + d.ins_deel_omschrijving, + sc.ins_srtcontrole_periode, + sd.ins_srtdeel_omschrijving, + a.prs_kostenplaats_key, + pfa.prs_perslid_key, + pfa.prs_perslid_naam_full, + CASE + WHEN UPPER (ud.fac_usrdata_omschr) LIKE + 'TS-DISCIPLINE%' + THEN + 4404 --- op deze manier mappen we alle TS-DISCIPLINE opties terug naar 1 + ELSE + ud.fac_usrdata_key + END AS fac_usrdata_key, + ud.fac_usrdata_omschr + FROM ins_srtcontrole sc, + ins_discipline di, + ins_v_aanwezigsrtgroep sg, + ins_v_aanwezigsrtdeel sd, + ins_v_aanwezigdeel d, + prs_perslid p, + prs_afdeling a, + prs_v_perslid_fullnames_all pfa, + (SELECT * + FROM ins_kenmerkdeel kd, ins_kenmerk k + WHERE kd.ins_kenmerkdeel_verwijder IS NULL + AND kd.ins_kenmerk_key = + k.ins_kenmerk_key + AND k.ins_srtkenmerk_key = 3742) kd, -- Uitvoerder regime + fac_usrdata ud + WHERE sd.ins_srtdeel_key = d.ins_srtdeel_key + AND sg.ins_srtgroep_key = sd.ins_srtgroep_key + AND di.ins_discipline_key = sg.ins_discipline_key + AND COALESCE (d.ins_deel_vervaldatum, + SYSDATE + 1) > + SYSDATE + AND p.prs_perslid_key = d.prs_perslid_key_beh + AND a.prs_afdeling_key(+) = p.prs_afdeling_key + AND pfa.prs_perslid_key = d.prs_perslid_key_beh + AND kd.ins_deel_key = d.ins_deel_key + AND NOT EXISTS + (SELECT sk.ins_srtkenmerk_omschrijving, + kd.ins_deel_key + FROM ins_srtkenmerk sk, + ins_kenmerk k, + ins_kenmerkdeel kd + WHERE sk.ins_srtkenmerk_key = 3922 + AND k.ins_srtkenmerk_key = + sk.ins_srtkenmerk_key + AND kd.ins_kenmerk_key = + k.ins_kenmerk_key + AND kd.ins_deel_key = + d.ins_deel_key) + AND ( sc.ins_srtcontrole_eind IS NULL + OR sc.ins_srtcontrole_eind > SYSDATE) + AND kd.ins_kenmerkdeel_waarde != '4321' -- 'N.v.t.' + AND ud.fac_usrdata_key = + fac.safe_to_number ( + kd.ins_kenmerkdeel_waarde) + AND sc.ins_srtinstallatie_key = + DECODE (ins_srtcontrole_niveau, + 'D', di.ins_discipline_key, + 'G', sg.ins_srtgroep_key, + 'S', sd.ins_srtdeel_key)) d, + ins_srtcontroledl_xcp xcp, + (SELECT * + FROM ins_v_udr_deelinspect ins + WHERE deelsrtcontrole_status = 'Gepland' + AND ins_deelsrtcontrole_plandatum IS NOT NULL) p + WHERE xcp.ins_deel_key(+) = d.ins_deel_key + AND xcp.ins_srtcontrole_key(+) = d.ins_srtcontrole_key + AND p.deel_key(+) = d.ins_deel_key + AND p.ins_srtcontrole_key(+) = d.ins_srtcontrole_key + AND COALESCE (xcp.ins_srtcontroledl_xcp_periode, + d.ins_srtcontrole_periode) > + 0 + -- De eerste paar dagen van volgende maand ook vast meepakken, dat scheelt verrassingen + AND COALESCE ( + p.ins_deelsrtcontrole_plandatum, + fac.nextcyclusdatedeel (d.ins_deel_key, + d.ins_srtcontrole_key, + 1)) < + ADD_MONTHS (SYSDATE, 1) + 3) + SELECT 'mail' methode, + prs_perslid_key to_key, + prs_perslid_naam_full to_omschr, + NULL ref_key, + NULL ref_omschr, + NULL kpn_key, + COUNT (*) aantal, + LISTAGG (ins_deel_omschrijving, ', ') + WITHIN GROUP (ORDER BY ins_deel_omschrijving) AS betreft + FROM taken + WHERE fac_usrdata_key = 4318 -- Objectbeheerder + GROUP BY prs_perslid_key, prs_perslid_naam_full + UNION ALL + SELECT 'melding' methode, + fac_usrdata_key to_key, + fac_usrdata_omschr to_omschr, + prs_perslid_key ref_key, + prs_perslid_naam_full ref_omschr, + prs_kostenplaats_key kpn_key, + COUNT (*) aantal, + LISTAGG (ins_deel_omschrijving, ', ') + WITHIN GROUP (ORDER BY ins_deel_omschrijving) AS betreft + FROM taken + WHERE fac_usrdata_key NOT IN (4321, 4318) -- alles behalve nvt en beheerder + GROUP BY fac_usrdata_key, + fac_usrdata_omschr, + prs_kostenplaats_key, + prs_perslid_key, + prs_perslid_naam_full + ORDER BY methode, to_omschr, ref_omschr; CREATE OR REPLACE FORCE VIEW nour_V_TAKEN_STOPLICHT ( @@ -6722,7 +6733,6 @@ AS CURSOR c IS SELECT * FROM nour_v_noti_objbeh; - BEGIN @@ -6798,10 +6808,11 @@ BEGIN rec.ref_key, rec.kpn_key, DECODE(rec.to_key, - 4320, 1481, -- EIA / Uitvoering regime + 4320, 1481, -- EIA / Uitvoering regime 4319, 1482, -- WTB / Uitvoering regime - 4347, 1581, -- LDW/ Uitvoering regime - 4388, 1610), -- S/Park / Uitvoering regime + 4347, 1581, -- LDW/ Uitvoering regime + 4388, 1610, -- S/Park / Uitvoering regime + 4404, 1821), -- TS-Disciplines / Uitvoering regime 121, -- DEV SYSDATE, 45, -- System