From cf3c10e4b2bd09c747feff0595e0a160938e8e46 Mon Sep 17 00:00:00 2001 From: Norbert Wassink Date: Thu, 25 May 2023 13:15:41 +0000 Subject: [PATCH] YKPN#78017-- rapportage aanpassen svn path=/Customer/trunk/; revision=60516 --- YKPN/ykpn.sql | 463 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 463 insertions(+) diff --git a/YKPN/ykpn.sql b/YKPN/ykpn.sql index 2f69abce7..62c9c8428 100644 --- a/YKPN/ykpn.sql +++ b/YKPN/ykpn.sql @@ -15970,6 +15970,469 @@ AS FROM ykpn_v_udr_opdracht_kenm WHERE opdracht_datum >= TO_DATE ('01-01-2020', 'DD-MM-YYYY'); +CREATE OR REPLACE VIEW ykpn_v_udr_melding +( + melding_key, + meldingnummer, + melding_start_key, + externnummer, + melding_regio, + melding_district, + melding_locatiecode, + melding_locatie, + melding_locatieplaats, + fclt_3d_locatie_key, + gebouw_key, + melding_gebouwcode, + melding_gebouw, + melding_verdieping, + melding_ruimtenr, + melding_ruimte, + melding_ordernr, + kostensoortgroep, + kostensoort, + kostenplaats, + kostenplaats_oms, + melder, + melder_key, + melder_email, + afdeling, + afdeling_omschrijving, + fclt_3d_afdeling_key, + divisie, + divisie_omschrijving, + fclt_3d_divisie_key, + bedrijf_key, + invoerder, + meldbron, + soortmelding, + fclt_3d_discipline_key, + productgroep, + subproductgroep, + behandelgroep, + behandelaar, + behandelaar_key, + subproductgroepgroep, + fclt_3d_discipline2_key, + actieve_behandelgroep, + actieve_behandelaar_key, + actieve_behandelaar, + melding_status, + sla_nvt, + sla_werkdgn, + sla_werkuren, + sla_respijtdgn, + sla_respijturen, + sla_accptdgn, + sla_accpturen, + plan_uitvoertijd_sla, + melding_datum, + melding_einddatum, + melding_einddatum_std, + melding_acceptdatum, + melding_afgemeld, + melding_accepted, + doorlooptijd_werkdgn, + doorlooptijd_werkuren, + onderwerp, + vomschrijving, + melding_opmerking, + prioriteit, + prioriteittxt, + rating, + rating_opmerking, + bolletje, + actiecode, + accept_sla_dagen, + accept_sla_uren, + uitvoering_sla_dagen, + uitvoering_sla_uren, + afspraak_sla_dagen, + afspraak_sla_uren, + accept_sla_optijd, + uitvoering_sla_optijd, + afspraak_sla_optijd, + selfservice +) +AS + SELECT mld_melding_key, + meldingnummer, + mld_melding_start_key, + mld_melding_externnr, + alg_regio_omschrijving, + alg_district_omschrijving, + locatie, + locatie_omschrijving, + locatie_plaats, + alg_locatie_key, + alg_gebouw_key, + gebouw, + gebouw_naam, + verdieping, + ruimte, + ruimte_omschrijving, + melding_ordernr, + kostensoortgroep, + kostensoort, + kostenplaats, + kostenplaats_oms, + melder, + prs_perslid_key, + prs_perslid_email, + afdeling, + afdeling_omschrijving, + afdeling_key, + divisie, + divisie_omschrijving, + divisie_key, + prs_bedrijf_key, + invoerder, + meldbron, + soortmelding, + stdm_ins_discipline_key, + productgroep, + subproductgroep, + behandelgroep, + behandelaar, + behandelaar_key, + subproductgroepgroep, + mld_ins_discipline_key, + actieve_behandelgroep, + actieve_behandelaar_key, + actieve_behandelaar, + status, + sla_nvt, + sla_werkdgn, + sla_werkuren, + sla_respijtdgn, + sla_respijturen, + sla_accptdgn, + sla_accpturen, + plan_uitvoertijd_sla, + datum, + einddatum, + einddatum_std, + acceptdatum, + afgemeld, + accepted, + DECODE (x.t_doorlooptijd.eenheid, 'D', x.t_doorlooptijd.tijdsduur, NULL) + doorlooptijd_werkdgn, + DECODE (x.t_doorlooptijd.eenheid, 'U', x.t_doorlooptijd.tijdsduur, NULL) + doorlooptijd_werkuren, + onderwerp, + omschrijving, + opmerking, + mld_melding_spoed prioriteit, + DECODE(mld_melding_spoed,3,lcl.l('lcl_mld_urg_normaal'),1,lcl.l('lcl_mld_urg_kritiek'),2,lcl.l('lcl_mld_urg_hoog'),4,lcl.l('lcl_mld_urg_laag')), + mld_melding_satisfaction, + mld_melding_satisfaction_op, + mld_melding_flag, + mld_melding_actiecode, + DECODE (x.t_doorlooptijd.eenheid, 'D', acceptdatum - COALESCE (accepted, afgemeld), NULL) + accept_sla_dagen, + CAST ( + DECODE (x.t_doorlooptijd.eenheid, + 'U', (acceptdatum - COALESCE (accepted, afgemeld)) * 24, + NULL) + AS NUMBER(7,2) + ) + accept_sla_uren, + DECODE ( + x.t_doorlooptijd.eenheid, + 'D', + mld.geteinddatum (mld_melding_key) + - COALESCE (afgemeld, SYSDATE) + + COALESCE (sla_respijtdgn, 0), + NULL) + uitvoering_sla_dagen, + CAST ( + DECODE ( + x.t_doorlooptijd.eenheid, + 'U', + ( (mld.geteinddatum (mld_melding_key) - COALESCE (afgemeld, SYSDATE)) * 24) + + COALESCE (sla_respijturen, 0), + NULL) + AS NUMBER(7,2) + ) + uitvoering_sla_uren, + DECODE (x.t_doorlooptijd.eenheid, + 'D', einddatum - COALESCE (afgemeld, SYSDATE) + COALESCE (sla_respijtdgn, 0), + NULL) + afspraak_sla_dagen, + CAST ( + DECODE ( + x.t_doorlooptijd.eenheid, + 'U', + ( (einddatum - COALESCE (afgemeld, SYSDATE)) * 24) + COALESCE (sla_respijtdgn, 0), + NULL) + AS NUMBER(7,2) + ) + afspraak_sla_uren, + CASE + WHEN acceptdatum IS NULL + OR -- Dan is er geen acceptatietijd gedefinieerd en dus altijd op tijd. + DECODE (x.t_doorlooptijd.eenheid, + 'D', acceptdatum - COALESCE (accepted, afgemeld), + 0) + + DECODE (x.t_doorlooptijd.eenheid, + 'U', (acceptdatum - COALESCE (accepted, afgemeld)) * 24, + 0) >= 0 + THEN + lcl.l ('lcl_yes') + ELSE + lcl.l ('lcl_no') + END + accept_sla_optijd, + CASE + WHEN DECODE ( + x.t_doorlooptijd.eenheid, + 'D', + mld.geteinddatum (mld_melding_key) + - COALESCE (afgemeld, SYSDATE) + + COALESCE (sla_respijtdgn, 0), + 0) + + DECODE ( + x.t_doorlooptijd.eenheid, + 'U', + ( (mld.geteinddatum(mld_melding_key) - COALESCE (afgemeld, SYSDATE)) * 24) + + COALESCE (sla_respijturen, 0), + 0) >= 0 + THEN + lcl.l ('lcl_yes') + ELSE + lcl.l ('lcl_no') + END + uitvoering_sla_optijd, + CASE + WHEN DECODE (x.t_doorlooptijd.eenheid, + 'D', + einddatum - COALESCE (afgemeld, SYSDATE) + COALESCE (sla_respijtdgn, 0), + 0) + + DECODE ( + x.t_doorlooptijd.eenheid, + 'U', + ( (einddatum - COALESCE (afgemeld, SYSDATE)) * 24) + + COALESCE (sla_respijtdgn, 0), + 0) >= 0 + THEN + lcl.l ('lcl_yes') + ELSE + lcl.l ('lcl_no') + END + afspraak_sla_optijd, + DECODE(invoerder, melder, lcl.l ('lcl_yes'), lcl.l ('lcl_no')) selfservice + FROM (SELECT m.mld_melding_key, + m.mld_melding_start_key, + m.mld_melding_externnr, + m.prs_perslid_key, + mab.prs_perslid_email, + sd.ins_srtdiscipline_prefix || m.mld_melding_key meldingnummer, + alg_regio_omschrijving, + alg_district_omschrijving, + alg_locatie_code locatie, + alg_locatie_omschrijving locatie_omschrijving, + alg_locatie_plaats locatie_plaats, + l.alg_locatie_key, + COALESCE(og.alg_gebouw_code, og.alg_terreinsector_code) gebouw, + COALESCE(og.alg_gebouw_naam, og.alg_terreinsector_naam) gebouw_naam, + og.alg_verdieping_code verdieping, + og.alg_gebouw_key, + og.alg_ruimte_nr ruimte, + og.alg_ruimte_omschrijving ruimte_omschrijving, + m.mld_melding_ordernr melding_ordernr, + (SELECT ksg.prs_kostensoortgrp_oms + FROM prs_kostensoortgrp ksg, prs_kostensoort ks + WHERE ksg.prs_kostensoortgrp_key = ks.prs_kostensoortgrp_key + AND ks.prs_kostensoort_key = + (SELECT COALESCE (sm.prs_kostensoort_key, disc.prs_kostensoort_key) + FROM mld_stdmelding sm, mld_discipline disc + WHERE sm.mld_ins_discipline_key = disc.ins_discipline_key + AND sm.mld_stdmelding_key = s.mld_stdmelding_key)) + kostensoortgroep, + (SELECT ks.prs_kostensoort_oms + FROM prs_kostensoort ks + WHERE ks.prs_kostensoort_key = + (SELECT COALESCE (sm.prs_kostensoort_key, disc.prs_kostensoort_key) + FROM mld_stdmelding sm, mld_discipline disc + WHERE sm.mld_ins_discipline_key = disc.ins_discipline_key + AND sm.mld_stdmelding_key = s.mld_stdmelding_key)) + kostensoort, + (SELECT k.prs_kostenplaats_nr + FROM prs_kostenplaats k + WHERE k.prs_kostenplaats_key = m.prs_kostenplaats_key) + kostenplaats, + (SELECT k.prs_kostenplaats_omschrijving + FROM prs_kostenplaats k + WHERE k.prs_kostenplaats_key = m.prs_kostenplaats_key) + kostenplaats_oms, + (SELECT prs_perslid_naam_full + FROM prs_v_perslid_fullnames_all pf + WHERE pf.prs_perslid_key = m.prs_perslid_key) + melder, + mab.afdeling_naam afdeling, + mab.afdeling_omschrijving afdeling_omschrijving, + mab.prs_afdeling_key afdeling_key, + mab.divisie_naam divisie, + mab.divisie_omschrijving, + mab.prs_afdeling_key1 divisie_key, + mab.prs_bedrijf_key, + (SELECT prs_perslid_naam_full + FROM prs_v_perslid_fullnames_all pf + WHERE pf.prs_perslid_key = mld.getmeldinguser (m.mld_melding_key)) + invoerder, + (SELECT mb.mld_meldbron_omschrijving + FROM mld_meldbron mb + WHERE mb.mld_meldbron_key = m.mld_meldbron_key) + meldbron, + m.mld_meldbron_key, + sd.ins_srtdiscipline_key ins_srtdiscipline_key, + sd.ins_srtdiscipline_omschrijving soortmelding, + md.ins_discipline_key stdm_ins_discipline_key, + md.ins_discipline_omschrijving productgroep, + s.mld_stdmelding_omschrijving subproductgroep, + smg.mld_stdmeldinggroep_naam subproductgroepgroep, + mbg.mld_behandelgroep_naam behandelgroep, + (SELECT prs_perslid_naam_full + FROM prs_v_perslid_fullnames_all pf + WHERE pf.prs_perslid_key = m.mld_melding_behandelaar_key) + behandelaar, + m.mld_melding_behandelaar_key behandelaar_key, + m.mld_ins_discipline_key mld_ins_discipline_key, + (SELECT md2.ins_discipline_omschrijving + FROM mld_discipline md2 + WHERE md2.ins_discipline_key = m.mld_ins_discipline_key) actieve_behandelgroep, + m.mld_melding_behandelaar2_key actieve_behandelaar_key, + (SELECT prs_perslid_naam_full + FROM prs_v_perslid_fullnames_all pf + WHERE pf.prs_perslid_key = m.mld_melding_behandelaar2_key) + actieve_behandelaar, + (SELECT mld_statuses_omschrijving + FROM mld_statuses sta + WHERE sta.mld_statuses_key = m.mld_melding_status) + status, + CASE + WHEN m.mld_melding_einddatum > + COALESCE (fac.gettrackingdate ('MLDAFM', m.mld_melding_key), + fac.gettrackingdate ('MLDREJ', m.mld_melding_key), + SYSDATE) + THEN + 1 + ELSE + 0 + END + plan_uitvoertijd_sla, + CASE + WHEN m.mld_melding_indult = 1 OR s.mld_stdmelding_slabewaken = 0 THEN 1 + ELSE 0 + END + sla_nvt, + DECODE (m.mld_melding_t_uitvoertijd.eenheid, + 'D', m.mld_melding_t_uitvoertijd.tijdsduur, + NULL) + sla_werkdgn, + DECODE (m.mld_melding_t_uitvoertijd.eenheid, + 'U', m.mld_melding_t_uitvoertijd.tijdsduur, + NULL) + sla_werkuren, + DECODE (m.mld_melding_t_respijt.eenheid, + 'D', m.mld_melding_t_respijt.tijdsduur, + NULL) + sla_respijtdgn, + DECODE (m.mld_melding_t_respijt.eenheid, + 'U', m.mld_melding_t_respijt.tijdsduur, + NULL) + sla_respijturen, + DECODE (m.mld_melding_t_accepttijd.eenheid, + 'D', m.mld_melding_t_accepttijd.tijdsduur, + NULL) + sla_accptdgn, + DECODE (m.mld_melding_t_accepttijd.eenheid, + 'U', m.mld_melding_t_accepttijd.tijdsduur, + NULL) + sla_accpturen, + m.mld_melding_datum datum, + CASE WHEN s.mld_stdmelding_planbaar = 2 + THEN TO_DATE(NULL) + ELSE m.mld_melding_einddatum + END einddatum, + mld_melding_einddatum_std einddatum_std, + mld_melding_acceptdatum_std acceptdatum, + COALESCE (mld.getmeldingstatusdate (m.mld_melding_key, 5), + mld.getmeldingstatusdate (m.mld_melding_key, 1)) + afgemeld, + COALESCE (mld.getmeldingstatusdate (m.mld_melding_key, 4), + mld.getmeldingstatusdate (m.mld_melding_key, 1)) + accepted, + mld.getactualuitvoer (m.mld_melding_key) t_doorlooptijd, + m.mld_melding_onderwerp onderwerp, + m.mld_melding_omschrijving omschrijving, + m.mld_melding_opmerking opmerking, + m.mld_melding_spoed, + m.mld_melding_satisfaction, + m.mld_melding_satisfaction_op, + m.mld_melding_flag, + mld_melding_actiecode + FROM mld_melding m, + mld_stdmelding s, + alg_locatie l, + alg_district d, + alg_regio r, + alg_v_allonrgoed_gegevens og, + mld_discipline md, + mld_disc_params mdp, + mld_behandelgroep mbg, + ins_srtdiscipline sd, + mld_stdmeldinggroep smg, + (SELECT mx.mld_melding_key + , div.prs_bedrijf_key + , ab.prs_afdeling_key1 + , div.prs_afdeling_naam divisie_naam + , div.prs_afdeling_omschrijving divisie_omschrijving + , ab.prs_afdeling_key + , afd.prs_afdeling_naam afdeling_naam + , afd.prs_afdeling_omschrijving afdeling_omschrijving + , px.prs_perslid_key + , px.prs_perslid_email + FROM mld_melding mx + , prs_perslid px + , prs_v_afdeling_boom ab + , prs_afdeling afd + , prs_afdeling div + WHERE px.prs_perslid_key = mx.prs_perslid_key + AND ab.prs_afdeling_key = coalesce(mx.prs_afdeling_key, px.prs_afdeling_key) + AND ab.prs_afdeling_key = afd.prs_afdeling_key + AND ab.prs_afdeling_key1 = div.prs_afdeling_key + ) mab + WHERE s.mld_stdmelding_key = m.mld_stdmelding_key + AND m.mld_alg_locatie_key = l.alg_locatie_key(+) + AND sd.ins_srtdiscipline_key = md.ins_srtdiscipline_key + AND md.ins_discipline_key = s.mld_ins_discipline_key + AND md.ins_discipline_key = mdp.mld_ins_discipline_key + AND s.mld_stdmeldinggroep_key = smg.mld_stdmeldinggroep_key(+) + AND mdp.mld_behandelgroep_key = mbg.mld_behandelgroep_key(+) + AND l.alg_district_key = d.alg_district_key(+) + AND d.alg_regio_key = r.alg_regio_key(+) + AND m.mld_melding_key = mab.mld_melding_key + AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys(+) + AND m.fac_activiteit_key IS NULL + AND m.mld_melding_datum >= TO_DATE ('01-01-2010', 'DD-MM-YYYY')) x; + +CREATE OR REPLACE VIEW ykpn_v_melding_inc_accept +AS + SELECT y.*, + (SELECT p.prs_perslid_naam_friendly + FROM prs_v_perslid_fullnames_all p + WHERE p.prs_perslid_key= + (SELECT ft.prs_perslid_key + from fac_tracking ft, prs_v_perslid_fullnames_all p + where ft.fac_tracking_refkey=melding_key + AND ft.fac_srtnotificatie_key=38 + AND ROWNUM=1 + ) + ) acceptant + FROM ykpn_v_udr_melding y; + + -- YKPN wil uitbereiding op de udr_medlingopdracht raportage