UWVA#38957 Voorleveren 2016.3 core-views

svn path=/Customer/; revision=32850
This commit is contained in:
Maarten van der Heide
2017-02-16 10:08:35 +00:00
parent e1c263326f
commit ba4a808327

View File

@@ -65,7 +65,8 @@ INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
fac_functie_key,
0
FROM fac_functie
WHERE fac_functie_code = 'WEB_PRSSYS';
WHERE fac_functie_code = 'WEB_PRSSYS'
AND NOT EXISTS (SELECT 1 FROM fac_usrrap WHERE LOWER (fac_usrrap_view_name) = 'uwva_v_rap_sch_gebfrozen_ms20');
CREATE OR REPLACE VIEW uwva_v_rap_sch_fotofrozen_ms20 AS SELECT NULL x FROM DUAL;
INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
@@ -85,7 +86,8 @@ INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
fac_functie_key,
0
FROM fac_functie
WHERE fac_functie_code = 'WEB_PRSSYS';
WHERE fac_functie_code = 'WEB_PRSSYS'
AND NOT EXISTS (SELECT 1 FROM fac_usrrap WHERE LOWER (fac_usrrap_view_name) = 'uwva_v_rap_sch_fotofrozen_ms20');
CREATE OR REPLACE VIEW uwva_v_rap_sch_gebgebrfrozen AS SELECT NULL x FROM DUAL;
INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
@@ -105,7 +107,8 @@ INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
fac_functie_key,
0
FROM fac_functie
WHERE fac_functie_code = 'WEB_PRSSYS';
WHERE fac_functie_code = 'WEB_PRSSYS'
AND NOT EXISTS (SELECT 1 FROM fac_usrrap WHERE LOWER (fac_usrrap_view_name) = 'uwva_v_rap_sch_gebgebrfrozen');
CREATE OR REPLACE VIEW uwva_v_rap_sch_gebgfrozen_ms20 AS SELECT NULL x FROM DUAL;
INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
@@ -125,7 +128,8 @@ INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
fac_functie_key,
0
FROM fac_functie
WHERE fac_functie_code = 'WEB_PRSSYS';
WHERE fac_functie_code = 'WEB_PRSSYS'
AND NOT EXISTS (SELECT 1 FROM fac_usrrap WHERE LOWER (fac_usrrap_view_name) = 'uwva_v_rap_sch_gebgfrozen_ms20');
CREATE OR REPLACE VIEW uwva_v_rap_cat_frozen_ms20 AS SELECT NULL x FROM DUAL;
INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
@@ -145,7 +149,8 @@ INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
fac_functie_key,
0
FROM fac_functie
WHERE fac_functie_code = 'WEB_PRSSYS';
WHERE fac_functie_code = 'WEB_PRSSYS'
AND NOT EXISTS (SELECT 1 FROM fac_usrrap WHERE LOWER (fac_usrrap_view_name) = 'uwva_v_rap_cat_frozen_ms20');
CREATE OR REPLACE VIEW uwva_v_rap_cat_frozen_det_ms20 AS SELECT NULL x FROM DUAL;
INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
@@ -165,7 +170,560 @@ INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
fac_functie_key,
0
FROM fac_functie
WHERE fac_functie_code = 'WEB_PRSSYS';
WHERE fac_functie_code = 'WEB_PRSSYS'
AND NOT EXISTS (SELECT 1 FROM fac_usrrap WHERE LOWER (fac_usrrap_view_name) = 'uwva_v_rap_cat_frozen_det_ms20');
-- UWVA#38957: Voorleveren 2016.3 core-views!
--CREATE_VIEW(mld_v_udr_melding, 1)
CREATE OR REPLACE VIEW mld_v_udr_melding
(
melding_key,
meldingnummer,
melding_regio,
melding_district,
melding_locatiecode,
melding_locatie,
melding_locatieplaats,
fclt_3d_locatie_key,
melding_gebouwcode,
melding_gebouw,
melding_verdieping,
melding_ruimtenr,
melding_ruimte,
melding_ordernr,
kostensoortgroep,
kostensoort,
kostenplaats,
kostenplaats_oms,
melder,
melder_key,
afdeling,
afdeling_omschrijving,
fclt_3d_afdeling_key,
bedrijf_key,
invoerder,
meldbron,
soortmelding,
fclt_3d_discipline_key,
productgroep,
subproductgroep,
behandelgroep,
behandelaar,
behandelaar_key,
subproductgroepgroep,
melding_status,
sla_nvt,
sla_werkdgn,
sla_werkuren,
sla_respijtdgn,
sla_respijturen,
sla_accptdgn,
sla_accpturen,
plan_uitvoertijd_sla,
melding_datum,
melding_einddatum,
melding_acceptdatum,
melding_afgemeld,
melding_accepted,
doorlooptijd_werkdgn,
doorlooptijd_werkuren,
onderwerp,
vomschrijving,
melding_opmerking,
prioriteit,
prioriteittxt,
rating,
rating_opmerking,
bolletje,
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,
alg_regio_omschrijving,
alg_district_omschrijving,
locatie,
locatie_omschrijving,
locatie_plaats,
alg_locatie_key,
gebouw,
gebouw_naam,
verdieping,
ruimte,
ruimte_omschrijving,
melding_ordernr,
kostensoortgroep,
kostensoort,
kostenplaats,
kostenplaats_oms,
melder,
prs_perslid_key,
afdeling,
afdeling_omschrijving,
afdeling_key,
prs_bedrijf_key,
invoerder,
meldbron,
soortmelding,
ins_discipline_key,
productgroep,
subproductgroep,
behandelgroep,
behandelaar,
behandelaar_key,
subproductgroepgroep,
status,
sla_nvt,
sla_werkdgn,
sla_werkuren,
sla_respijtdgn,
sla_respijturen,
sla_accptdgn,
sla_accpturen,
plan_uitvoertijd_sla,
datum,
einddatum,
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,
DECODE (x.t_doorlooptijd.eenheid, 'D', acceptdatum - COALESCE (accepted, afgemeld), NULL)
accept_sla_dagen,
DECODE (x.t_doorlooptijd.eenheid,
'U', (acceptdatum - COALESCE (accepted, afgemeld)) * 24,
NULL)
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,
DECODE (
x.t_doorlooptijd.eenheid,
'U',
( (mld.geteinddatum (mld_melding_key) - COALESCE (afgemeld, SYSDATE)) * 24)
+ COALESCE (sla_respijturen, 0),
NULL)
uitvoering_sla_uren,
DECODE (x.t_doorlooptijd.eenheid,
'D', einddatum - COALESCE (afgemeld, SYSDATE) + COALESCE (sla_respijtdgn, 0),
NULL)
afspraak_sla_dagen,
DECODE (
x.t_doorlooptijd.eenheid,
'U',
( (einddatum - COALESCE (afgemeld, SYSDATE)) * 24) + COALESCE (sla_respijtdgn, 0),
NULL)
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.prs_perslid_key,
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,
og.alg_gebouw_code gebouw,
og.alg_gebouw_naam gebouw_naam,
og.alg_verdieping_code verdieping,
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,
(SELECT prs_afdeling_naam
FROM prs_afdeling afd, prs_perslid pp
WHERE afd.prs_afdeling_key = pp.prs_afdeling_key
AND pp.prs_perslid_key = m.prs_perslid_key)
afdeling,
(SELECT prs_afdeling_omschrijving
FROM prs_afdeling afd, prs_perslid pp
WHERE afd.prs_afdeling_key = pp.prs_afdeling_key
AND pp.prs_perslid_key = m.prs_perslid_key)
afdeling_omschrijving,
(SELECT prs_afdeling_key
FROM prs_perslid pp
WHERE pp.prs_perslid_key = m.prs_perslid_key)
afdeling_key,
(SELECT prs_bedrijf_key
FROM prs_v_afdeling pva, prs_perslid pp
WHERE pva.prs_afdeling_key = pp.prs_afdeling_key
AND pp.prs_perslid_key = m.prs_perslid_key)
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 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,
(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,
m.mld_melding_einddatum einddatum,
mld.getacceptdatum (m.mld_melding_datum,
m.mld_stdmelding_key,
og.alg_onroerendgoed_keys)
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
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
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_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;
-- Noot: SELECT * is een slecht gebruik en leidt tot onoplosbare conflicten
--CREATE_VIEW(mld_v_udr_meldingopdracht, 1)
CREATE OR REPLACE VIEW mld_v_udr_meldingopdracht
AS
SELECT
m.melding_key,
m.meldingnummer,
m.melding_regio,
m.melding_district,
m.melding_locatiecode,
m.melding_locatie,
m.melding_locatieplaats,
m.fclt_3d_locatie_key,
m.melding_gebouwcode,
m.melding_gebouw,
m.melding_verdieping,
m.melding_ruimtenr,
m.melding_ruimte,
m.melding_ordernr,
m.kostensoortgroep,
m.kostensoort,
m.kostenplaats,
m.kostenplaats_oms,
m.melder,
m.melder_key,
m.afdeling,
m.afdeling_omschrijving,
m.fclt_3d_afdeling_key,
m.bedrijf_key,
m.invoerder,
m.meldbron,
m.soortmelding,
m.fclt_3d_discipline_key,
m.productgroep,
m.subproductgroep,
m.behandelgroep,
m.behandelaar,
m.behandelaar_key,
m.subproductgroepgroep,
m.melding_status,
m.sla_nvt,
m.sla_werkdgn,
m.sla_werkuren,
m.sla_respijtdgn,
m.sla_respijturen,
m.sla_accptdgn,
m.sla_accpturen,
m.plan_uitvoertijd_sla,
m.melding_datum,
m.melding_einddatum,
m.melding_acceptdatum,
m.melding_afgemeld,
m.melding_accepted,
m.doorlooptijd_werkdgn,
m.doorlooptijd_werkuren,
m.onderwerp,
m.vomschrijving,
m.melding_opmerking,
m.prioriteit,
m.prioriteittxt,
m.rating,
m.rating_opmerking,
m.bolletje,
m.accept_sla_dagen,
m.accept_sla_uren,
m.uitvoering_sla_dagen,
m.uitvoering_sla_uren,
m.afspraak_sla_dagen,
m.afspraak_sla_uren,
m.accept_sla_optijd,
m.uitvoering_sla_optijd,
m.afspraak_sla_optijd,
m.selfservice,
o.opdracht_key,
o.opdracht_nummer,
o.opdracht_regio,
o.opdracht_district,
o.opdracht_locatie_code,
o.opdracht_locatie,
o.opdracht_locatieplaats,
--o.fclt_3d_locatie_key,
o.opdracht_gebouwcode,
o.opdracht_gebouw,
o.opdracht_verdieping,
o.opdracht_ruimtenr,
o.opdracht_ruimte,
o.opdracht_kostenplaats,
o.opdracht_kostenplaats_oms,
--o.melding_key,
o.opdracht_type,
o.opdracht_volgnummer,
o.opdracht_status,
o.opdracht_duur_gepland,
o.opdracht_datum,
o.opdracht_einddatum,
o.opdracht_plandatum,
o.opdracht_acceptdatum,
o.opdracht_afgemeld,
o.opdracht_doorlooptijd,
o.opdracht_accepttijd,
o.opdracht_omschrijving,
o.opdracht_opmerking,
o.opdracht_uitvoerende,
o.opdracht_contract,
o.opdracht_contract_versie,
o.opdracht_contactpersoon,
o.opdracht_uren,
o.opdracht_correctie,
o.opdracht_materiaal,
o.opdracht_uurtarief,
o.opdracht_kosten
FROM mld_v_udr_melding m, mld_v_udr_opdracht o
WHERE m.melding_key = o.melding_key(+);
-- UDR met kenmerken (1 record per kenmerk met waarde in kolom c, n of d afhankelijk van type
-- Geen kenmerk, geen record.
--CREATE_VIEW(mld_v_udr_meldingkenmerk_cnd, 1)
CREATE OR REPLACE VIEW mld_v_udr_meldingkenmerk_cnd
AS
SELECT m.*,
lcl.x ('skm.mld_srtkenmerk_omschrijving',
skm.mld_srtkenmerk_key,
mld_srtkenmerk_omschrijving)
kenmerk,
CASE
WHEN skm.mld_srtkenmerk_kenmerktype = 'R' OR skm.mld_srtkenmerk_kenmerktype = 'S'
THEN
fac.getdomeinwaarde (skm.fac_kenmerkdomein_key, km.mld_kenmerkmelding_waarde)
WHEN skm.mld_srtkenmerk_kenmerktype = 'C' OR skm.mld_srtkenmerk_kenmerktype = 'F'
THEN
km.mld_kenmerkmelding_waarde
ELSE
NULL
END
waarde_c,
CASE
WHEN skm.mld_srtkenmerk_kenmerktype IN ('N', 'B')
THEN TO_NUMBER (km.mld_kenmerkmelding_waarde)
ELSE TO_NUMBER (NULL)
END
waarde_n,
CASE
WHEN skm.mld_srtkenmerk_kenmerktype = 'D'
THEN
TO_DATE (km.mld_kenmerkmelding_waarde, 'DD-MM-YYYY')
ELSE
TO_DATE (NULL)
END
waarde_d
FROM mld_v_udr_melding M,
mld_kenmerkmelding km,
mld_kenmerk K,
mld_srtkenmerk skm
WHERE km.mld_melding_key = m.melding_key
AND km.mld_kenmerkmelding_verwijder IS NULL
AND k.mld_kenmerk_verwijder IS NULL
AND skm.mld_srtkenmerk_verwijder IS NULL
AND km.mld_kenmerk_key = k.mld_kenmerk_key(+)
AND k.mld_srtkenmerk_key = skm.mld_srtkenmerk_key(+);
COMMIT;
BEGIN adm.systrackscriptId('$Id$'); END;
@@ -175,7 +733,7 @@ SPOOL OFF
--@@uwva_prs.sql
@@uwva_fin.sql
@@uwva_hv.sql
--@@uwva_misc.sql
@@uwva_misc.sql
BEGIN fac.registercustversion('UWVA', 104); END;
/