diff --git a/SKAF/skaf.sql b/SKAF/skaf.sql index 7c5e0db20..4d38682ae 100644 --- a/SKAF/skaf.sql +++ b/SKAF/skaf.sql @@ -2495,7 +2495,7 @@ AS AND bes_bestelopdr_status = 3 -- in behandeling; -- SKAF#86147: Nieuwe, uitgegeven en afgemelde meldingen per week (incl. op --- tijd volgens afspraak/SLA) +-- tijd volgens afspraak/SLA). CREATE OR REPLACE VIEW SKAF_V_UDR_MLD_SLA AS SELECT weeknr, @@ -2535,18 +2535,116 @@ AS WHERE melding_afgemeld > TRUNC (ADD_MONTHS (SYSDATE, -12), 'iyyy')) GROUP BY weeknr); -BEGIN adm.systrackscriptId('$Id$', 0); END; -/ - -BEGIN fac.registercustversion('SKAF', 11); END; -/ - +-- SKAF#86147: Staafdiagram met lopende meldingen per gekozen groepering met +-- kleuren (volgens SLA): [a] groen=op tijd en [b] rood=te laat. +CREATE OR REPLACE VIEW SKAF_V_UDR_MLD_OPEN +( + mld_melding_key, + meldingid, + vakgroeptype, + --vakgroep_key, + fclt_3d_discipline_key, + vakgroep, + standaardmelding, + --locatie_key, + fclt_3d_locatie_key, + locatiecode, + locatie, + behandelteam_key, + behandelteam, + prio, + status, + mldnew, + melding_datum, + geplande_einddatum, + uitvoertijd, + optijd_telaat +) +AS + SELECT x.mld_melding_key, + x.ins_srtdiscipline_prefix || TO_CHAR (x.mld_melding_key) meldingid, + x.ins_srtdiscipline_omschrijving vakgroeptype, + x.ins_discipline_key vakgroep_key, + x.ins_discipline_omschrijving vakgroep, + x.mld_stdmelding_omschrijving standaardmelding, + x.alg_locatie_key, + x.alg_locatie_code, + x.alg_locatie_omschrijving, + x.behandelteam_key, + COALESCE (x.behandelteam, ''), + x.mld_melding_spoed, + x.mld_statuses_omschrijving, + x.mldnew, + x.mld_melding_datum, + x.mld_melding_einddatum, + TO_CHAR (x.mld_melding_t_uitvoertijd.tijdsduur) || x.mld_melding_t_uitvoertijd.eenheid uitvoertijd, + --DECODE (SIGN (x.gepland_over_2wd - SYSDATE), + -- -1, + -- DECODE (SIGN (x.mld_melding_einddatum - SYSDATE), + -- -1, 'Te laat', -- Rood + -- 'Over 2 dagen te laat'), -- Oranje + -- DECODE (BITAND (x.mld_melding_actiecode, 1), + -- 1, 'Actie bij behandelaar', -- Groen en "alle tijd" + -- 'Actie bij aanvrager')) -- Blauw en "alle tijd" + DECODE (SIGN (mld_melding_einddatum_std - SYSDATE), + -1, 'Te laat', -- Rood + 'Op tijd') -- Groen + optijd_telaat + FROM (SELECT m.mld_melding_key, + sd.ins_srtdiscipline_prefix, + sd.ins_srtdiscipline_omschrijving, + md.ins_discipline_key, + md.ins_discipline_omschrijving, + sm.mld_stdmelding_key, + sm.mld_stdmelding_omschrijving, + l.alg_locatie_key, + l.alg_locatie_code, + l.alg_locatie_omschrijving, + bt.ins_discipline_key behandelteam_key, + bt.ins_discipline_omschrijving behandelteam, + m.mld_melding_spoed, + ms.mld_statuses_omschrijving, + fac.gettrackingdate ('MLDNEW', m.mld_melding_key) mldnew, + m.mld_melding_datum, + m.mld_melding_einddatum, + m.mld_melding_t_uitvoertijd, + m.mld_melding_einddatum_std, + --fac.datumtijdplusuitvoertijd ( + -- m.mld_melding_einddatum - 14, + -- mld.getactualuitvoer (m.mld_melding_einddatum - 14, m.mld_melding_einddatum, sm.mld_stdmelding_key, -1, -1, -1, 'D').tijdsduur - 2, + -- 'D') + -- gepland_over_2wd, -- Twee werkdagen voor geplande einddatum (niet triviaal, maar best slim bedacht, al zeg ik het zelf) + m.mld_melding_actiecode -- 1=bij behandelaar/2=bij aanvrager/129=reactie aanvrager/257=info aanvrager/258=actie aanvrager + FROM mld_melding m, + mld_stdmelding sm, + mld_discipline md, + ins_srtdiscipline sd, + alg_locatie l, + mld_statuses ms, + mld_discipline bt + WHERE 1 = 1 + --AND m.mld_melding_datum > TRUNC (ADD_MONTHS (SYSDATE, -24), 'yyyy') + --AND fac.gettrackingdate ('MLDNEW', m.mld_melding_key) > TRUNC (ADD_MONTHS (SYSDATE, -24), 'yyyy') + AND m.fac_activiteit_key IS NULL + AND m.mld_melding_status IN (0, 2, 3, 4, 7, 99) -- Open meldingen + AND m.mld_stdmelding_key = sm.mld_stdmelding_key + --AND sm.mld_stdmelding_key NOT IN (-1) -- Uitsluiten? + AND sm.mld_ins_discipline_key = md.ins_discipline_key + --AND md.ins_discipline_key NOT IN (-1) -- Uitsluiten? + AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key + --AND sd.ins_srtdiscipline_key NOT IN (-1) -- Uitsluiten? + AND m.mld_alg_locatie_key = l.alg_locatie_key(+) + AND m.mld_melding_status = ms.mld_statuses_key + AND m.mld_ins_discipline_key = bt.ins_discipline_key(+)) x; ------ payload end ------ SET DEFINE OFF BEGIN adm.systrackscriptId ('$Id$', 0); END; / - +/* +BEGIN fac.registercustversion ('SKAF', 11); END; +/ +*/ COMMIT; SET ECHO OFF SPOOL OFF