Files
Database/MLD/MLD_VIE.SRC
Peter Feij 05c100714a UWVA#38411 Regiokolom in UDR's
svn path=/Database/trunk/; revision=31486
2016-11-16 08:46:45 +00:00

2055 lines
84 KiB
Plaintext

#ifdef MLD // 13-03-96 AH
/*
* $Revision$
* $Id$
*/
CREATE_VIEW(MLD_discipline, 0)
AS
SELECT * FROM ALL_discipline WHERE ins_discipline_module = 'MLD';
DEFINIEER_VIEW_AANWEZIG(MLD_discipline, ins_discipline_verwijder,
MLD_v_aanwezigdiscipline,0);
DEFINIEER_VIEW_AANWEZIG(mld_oorzaak,
mld_oorzaak_verwijder,
mld_v_aanwezigoorzaak,
0);
DEFINIEER_VIEW_AANWEZIG(mld_meldbron,
mld_meldbron_verwijder,
mld_v_aanwezigmeldbron,
0);
DEFINIEER_VIEW_AANWEZIG(mld_standaardopdr,
mld_standaardopdr_verwijder,
mld_v_aanwezigstandaardopdr,
0);
/* LET OP (FSN#21553)
* Deze twee views lijken qua naam een tabel, maar is het technisch niet
* Hij levert de statustekst in de juiste taal op, van een specifieke statuscode
* Voorheen was dit een tabel met deze naam, en werd deze initieel gevuld. Dit is
* hiermee dus vanwege de i18n veranderd.
*/
CREATE_VIEW(mld_statuses, 0)
AS
SELECT fac_code2label_code mld_statuses_key,
COALESCE (fac_locale_xsl_cust, fac_locale_xsl_tekst) mld_statuses_omschrijving
FROM fac_locale_xsl fl, fac_code2label fs
WHERE fl.fac_locale_xsl_label = fac_code2label_label
AND fac_code2label_domein = 'melding'
AND fac_locale_xsl_lang = lcl.getuserlanguage ();
CREATE_VIEW(mld_statusopdr, 0)
AS
SELECT fac_code2label_code mld_statusopdr_key,
COALESCE (fac_locale_xsl_cust, fac_locale_xsl_tekst) mld_statusopdr_omschrijving
FROM fac_locale_xsl fl, fac_code2label fs
WHERE fl.fac_locale_xsl_label = fac_code2label_label
AND fac_code2label_domein = 'opdracht'
AND fac_locale_xsl_lang = lcl.getuserlanguage ();
/*
View met alle sleutels van de gemeenschappelijke sequence
prs_s_prs_uitvoerende_keys
*/
CREATE_VIEW(mld_v_aanweziguitvoerende,0)
( mld_alluitvoerende_keys,
prs_bedrijf_key,
prs_perslid_key,
prs_srtperslid_key,
mld_type) AS
SELECT prs_v_uitvoerendebedrijf.prs_bedrijf_key,
prs_v_uitvoerendebedrijf.prs_bedrijf_key,
TO_NUMBER(NULL),
TO_NUMBER(NULL),
'B'
FROM prs_v_uitvoerendebedrijf
WHERE prs_bedrijf_key>0
UNION
SELECT prs_v_aanwezigperslid.prs_perslid_key,
TO_NUMBER(NULL),
prs_v_aanwezigperslid.prs_perslid_key,
prs_v_aanwezigperslid.prs_srtperslid_key,
'P'
FROM prs_v_aanwezigperslid
WHERE prs_perslid_key >0
UNION
SELECT prs_v_aanwezigsrtperslid.prs_srtperslid_key,
prs_v_aanwezigsrtperslid.prs_bedrijf_key,
TO_NUMBER(NULL),
prs_v_aanwezigsrtperslid.prs_srtperslid_key,
'S'
FROM prs_v_aanwezigsrtperslid;
/*
View met alle sleutels van de uitvoerenden
type: 'B' = bedrijf
'P' = perslid
//'S' = srtperslid bij bedrijf
*/
/* PF: op eigen houtje aangepast, achterhaalde onzin eruitgehaald */
CREATE_VIEW(mld_v_uitvoerende,0) (mld_uitvoerende_key, naam, type, intern) AS
SELECT B.prs_bedrijf_key,
B.prs_bedrijf_naam,
'B',
COALESCE(prs_bedrijf_intern, 0)
FROM prs_bedrijf B
UNION ALL
SELECT P.prs_perslid_key,
p.prs_perslid_naam||DECODE(p.prs_perslid_voorletters,null,'',', '||p.prs_perslid_voorletters)||DECODE(p.prs_perslid_tussenvoegsel,null,'',' '||p.prs_perslid_tussenvoegsel)||DECODE(p.prs_perslid_voornaam,null,'',' ('||p.prs_perslid_voornaam||')'),
'P',
1
FROM prs_perslid P;
/*
* View voor de form mld_215.fmb
*/
CREATE_VIEW(mld_v_onroerendgoed_locatie,0) ( alg_onroerendgoed_keys,
alg_onrgoed_omschrijving,
alg_locatie_key,
alg_gebouw_key,
alg_terreinsector_key,
type ) AS
SELECT ALG_O.alg_onroerendgoed_keys,
ALG_G.alg_gebouw_omschrijving,
ALG_G.alg_locatie_key,
ALG_G.alg_gebouw_key,
to_number(NULL),
'G'
FROM alg_v_onroerendgoed ALG_O, alg_v_aanweziggebouw ALG_G
WHERE ALG_O.alg_gebouw_key = ALG_G.alg_gebouw_key
UNION
SELECT ALG_O.alg_onroerendgoed_keys,
ALG_T.alg_terreinsector_omschrijving,
ALG_T.alg_locatie_key,
to_number(NULL),
ALG_T.alg_terreinsector_key,
'T'
FROM alg_v_onroerendgoed ALG_O, alg_v_aanwezigterreinsector ALG_T
WHERE ALG_O.alg_terreinsector_key = ALG_T.alg_terreinsector_key;
CREATE_VIEW(mld_v_ins_discipline, 0) AS
SELECT * FROM MLD_v_aanwezigdiscipline;
DEFINIEER_VIEW_AANWEZIG(mld_melding_object, mld_melding_object_verwijder,
mld_v_aanwezigmelding_object,0);
DEFINIEER_VIEW_AANWEZIG(mld_kenmerkmelding, mld_kenmerkmelding_verwijder,
mld_v_aanwezigkenmerkmelding, 0);
CREATE_VIEW(mld_v_stdmelding_kenmerk, 0)
( mld_kenmerk_key
, mld_srtkenmerk_key
, mld_stdmelding_key
, mld_kenmerk_niveau
, mld_kenmerk_verplicht
, mld_kenmerk_toonbaar
, mld_kenmerk_uniek
, mld_kenmerk_locatiekolom
, mld_kenmerk_volgnummer
, mld_srtkenmerk_omschrijving
, mld_srtkenmerk_dimensie
, mld_srtkenmerk_kenmerktype
, mld_srtkenmerk_lengte
, mld_srtkenmerk_dec
, mld_srtkenmerk_nmin
, mld_srtkenmerk_nmax
, fac_kenmerkdomein_key
, mld_stdmelding_omschrijving
, mld_stdmelding_upper
, mld_discipline_key
, mld_discipline_omschrijving
)
AS SELECT MLD_K.mld_kenmerk_key
, MLD_K.mld_srtkenmerk_key
, MLD_K.mld_stdmelding_key
, MLD_K.mld_kenmerk_niveau
, MLD_K.mld_kenmerk_verplicht
, MLD_K.mld_kenmerk_toonbaar
, MLD_K.mld_kenmerk_uniek
, MLD_K.mld_kenmerk_locatiekolom
, MLD_K.mld_kenmerk_volgnummer
, MLD_SK.mld_srtkenmerk_omschrijving
, MLD_SK.mld_srtkenmerk_dimensie
, MLD_SK.mld_srtkenmerk_kenmerktype
, MLD_SK.mld_srtkenmerk_lengte
, MLD_SK.mld_srtkenmerk_dec
, MLD_SK.mld_srtkenmerk_nmin
, MLD_SK.mld_srtkenmerk_nmax
, MLD_SK.fac_kenmerkdomein_key
, MLD_SM.mld_stdmelding_omschrijving
, MLD_SM.mld_stdmelding_upper
, INS_D.ins_discipline_key
, INS_D.ins_discipline_omschrijving
FROM mld_kenmerk MLD_K
, mld_srtkenmerk MLD_SK
, mld_stdmelding MLD_SM
, ins_discipline INS_D
WHERE MLD_K.mld_srtkenmerk_key = MLD_SK.mld_srtkenmerk_key
AND MLD_K.mld_kenmerk_niveau = 'S'
AND MLD_SM.mld_stdmelding_key = MLD_K.mld_stdmelding_key
AND MLD_SM.mld_ins_discipline_key = INS_D.ins_discipline_key
UNION
SELECT MLD_K.mld_kenmerk_key
, MLD_K.mld_srtkenmerk_key
, MLD_K.mld_stdmelding_key
, MLD_K.mld_kenmerk_niveau
, MLD_K.mld_kenmerk_verplicht
, MLD_K.mld_kenmerk_toonbaar
, MLD_K.mld_kenmerk_uniek
, MLD_K.mld_kenmerk_locatiekolom
, MLD_K.mld_kenmerk_volgnummer
, MLD_SK.mld_srtkenmerk_omschrijving
, MLD_SK.mld_srtkenmerk_dimensie
, MLD_SK.mld_srtkenmerk_kenmerktype
, MLD_SK.mld_srtkenmerk_lengte
, MLD_SK.mld_srtkenmerk_dec
, MLD_SK.mld_srtkenmerk_nmin
, MLD_SK.mld_srtkenmerk_nmax
, MLD_SK.fac_kenmerkdomein_key
, MLD_SM.mld_stdmelding_omschrijving
, MLD_SM.mld_stdmelding_upper
, MLD_D.ins_discipline_key
, MLD_D.ins_discipline_omschrijving
FROM mld_kenmerk MLD_K
, mld_srtkenmerk MLD_SK
, mld_stdmelding MLD_SM
, mld_v_aanwezigdiscipline MLD_D
WHERE MLD_K.mld_srtkenmerk_key = MLD_SK.mld_srtkenmerk_key
AND MLD_K.mld_kenmerk_niveau = 'D'
AND MLD_SM.mld_ins_discipline_key = MLD_D.ins_discipline_key
AND ( MLD_D.ins_discipline_key = MLD_K.mld_stdmelding_key
OR MLD_K.mld_stdmelding_key IS NULL);
DEFINIEER_VIEW_AANWEZIG(mld_adres, mld_adres_verwijder,
mld_v_aanwezigadres, 0);
CREATE_VIEW(mld_v_afleveradres, 0) AS
SELECT * FROM mld_v_aanwezigadres WHERE mld_adres_afleveradres = 1;
CREATE_VIEW(mld_v_factuuradres, 0) AS
SELECT * FROM mld_v_aanwezigadres WHERE mld_adres_factuuradres = 1;
DEFINIEER_VIEW_AANWEZIG(mld_kenmerkopdr, mld_kenmerkopdr_verwijder,
mld_v_aanwezigkenmerkopdr, 0);
CREATE_VIEW(mld_v_qvw_algemeen, 0) (mld_melding_key,
meldingnummer,
alg_district_omschrijving,
locatie,
locatie_omschrijving,
alg_locatie_key,
gebouw,
gebouw_naam,
verdieping,
ruimtenr,
ruimte_omschrijving,
melding_ordernr,
kostensoortgroep,
kostensoort,
kostenplaats,
kostenplaats_oms,
melder,
afdeling,
afdeling_omschrijving,
prs_bedrijf_key,
invoerder,
meldbron,
meldbron_key,
ins_srtdiscipline_key,
soortmelding,
ins_discipline_key,
productgroep,
mld_stdmelding_key,
subproductgroep,
mld_stdmeldinggroep_key,
mld_behandelgroep_key,
behandelgroep,
behandelaar,
subproductgroepgroep,
status,
sla_nvt,
sla_werkdgn,
sla_werkuren,
sla_respijtdgn,
sla_respijturen,
sla_accptdgn,
sla_accpturen,
plan_uitvoertijd_sla,
datum,
afgemeld,
doorlooptijd_werkdgn,
doorlooptijd_werkuren,
omschrijving,
opmerking,
mld_typeopdr_key,
opdracht_type,
opdracht_volgnummer,
opdracht_status,
opdracht_duur_gepland,
opdracht_datum,
opdracht_afgemeld,
opdracht_doorlooptijd,
opdracht_omschrijving,
opdracht_opmerking,
opdracht_uitvoerende,
opdracht_contract,
opdracht_contactpersoon,
opdracht_uren,
opdracht_correctie,
opdracht_materiaal,
opdracht_uurtarief,
opdracht_kosten
)
AS
SELECT mld_melding_key, meldingnummer, alg_district_omschrijving, locatie, locatie_omschrijving, alg_locatie_key, gebouw, gebouw_naam, verdieping, ruimte, ruimte_omschrijving,
melding_ordernr, kostensoortgroep, kostensoort, kostenplaats, kostenplaats_oms, melder, afdeling, afdeling_omschrijving,prs_bedrijf_key, invoerder, meldbron, mld_meldbron_key,
ins_srtdiscipline_key, soortmelding, ins_discipline_key, productgroep, mld_stdmelding_key, subproductgroep, mld_stdmeldinggroep_key, mld_behandelgroep_key, behandelgroep, behandelaar,
subproductgroepgroep, status, sla_nvt, sla_werkdgn, sla_werkuren, sla_respijtdgn, sla_respijturen, sla_accptdgn, sla_accpturen, plan_uitvoertijd_sla, datum, afgemeld,
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,
SUBSTR (omschrijving, 1, 512), SUBSTR (opmerking, 1, 512),
mld_typeopdr_key, opdracht_type, opdracht_volgnummer, opdracht_status, opdracht_duur_gepland, opdracht_datum, opdracht_afgemeld,
opdracht_doorlooptijd, SUBSTR (opdracht_omschrijving, 1, 512), SUBSTR (opdracht_opmerking, 1, 512),
opdracht_uitvoerende, opdracht_contract, opdracht_contactpersoon, opdracht_uren, opdracht_correctie,
opdracht_materiaal, opdracht_uurtarief, opdracht_kosten
FROM (SELECT m.mld_melding_key, sd.ins_srtdiscipline_prefix||m.mld_melding_key meldingnummer, alg_district_omschrijving, alg_locatie_code locatie,
alg_locatie_omschrijving locatie_omschrijving, 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_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_key,
s.mld_stdmelding_omschrijving subproductgroep,
smg.mld_stdmeldinggroep_key,
smg.mld_stdmeldinggroep_naam subproductgroepgroep,
mbg.mld_behandelgroep_key,
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,
(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,
TRUNC (m.mld_melding_datum) datum,
COALESCE (TRUNC (mld.getmeldingstatusdate(m.mld_melding_key,5)),
TRUNC (mld.getmeldingstatusdate(m.mld_melding_key,1))
)
afgemeld,
mld.getactualuitvoer(m.mld_melding_key) t_doorlooptijd,
m.mld_melding_omschrijving omschrijving,
m.mld_melding_opmerking opmerking,
top.mld_typeopdr_key,
top.mld_typeopdr_omschrijving opdracht_type,
o.mld_opdr_bedrijfopdr_volgnr opdracht_volgnummer,
(SELECT mld_statusopdr_omschrijving
FROM mld_statusopdr sta
WHERE sta.mld_statusopdr_key = o.mld_statusopdr_key) opdracht_status,
fac.count_Work_Days(o.mld_opdr_datumbegin, o.mld_opdr_einddatum) opdracht_duur_gepland,
TRUNC (o.mld_opdr_datumbegin) opdracht_datum,
TRUNC (mld.getopdrachtstatusdate(o.mld_opdr_key,6)) opdracht_afgemeld,
fac.count_work_days (o.mld_opdr_datumbegin, mld.getopdrachtstatusdate(o.mld_opdr_key,6)) opdracht_doorlooptijd,
o.mld_opdr_omschrijving opdracht_omschrijving, o.mld_opdr_opmerking opdracht_opmerking,
(SELECT naam
FROM mld_v_uitvoerende u
WHERE u.mld_uitvoerende_key = o.mld_uitvoerende_keys) opdracht_uitvoerende, NULL opdracht_contract,
NULL opdracht_contactpersoon,
o.mld_opdr_uren opdracht_uren,
o.mld_opdr_kosten - o.mld_opdr_materiaal - (o.mld_opdr_uren * o.mld_opdr_uurloon) opdracht_correctie,
o.mld_opdr_materiaal opdracht_materiaal,
o.mld_opdr_uurloon opdracht_uurtarief,
o.mld_opdr_kosten opdracht_kosten
FROM mld_melding m,
mld_stdmelding s,
alg_locatie l,
alg_district d,
alg_v_allonrgoed_gegevens og,
mld_discipline md,
mld_disc_params mdp,
mld_behandelgroep mbg,
ins_srtdiscipline sd,
mld_opdr o,
mld_typeopdr top,
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 m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys(+)
AND m.mld_melding_key = o.mld_melding_key(+)
AND O.MLD_TYPEOPDR_KEY=top.MLD_TYPEOPDR_KEY(+)
AND m.mld_melding_datum >= TO_DATE ('01-01-2000', 'DD-MM-YYYY')) x;
CREATE_VIEW(mld_v_qvw_locale, 0)
(fac_locale_kolomkeyval, fac_locale_kolomnaam, fac_locale_tekst_nl, fac_locale_tekst_en, fac_locale_tekst_de, fac_locale_tekst_fr)
AS
WITH mqa AS (SELECT DISTINCT ins_srtdiscipline_key,
soortmelding,
ins_discipline_key,
productgroep,
mld_stdmelding_key,
subproductgroep,
mld_stdmeldinggroep_key,
subproductgroepgroep,
mld_behandelgroep_key,
behandelgroep,
mld_typeopdr_key,
opdracht_type
FROM mld_v_qvw_algemeen)
SELECT DISTINCT mqa.ins_srtdiscipline_key,
'INS_SRTDISCIPLINE_OMSCHRIJVING',
mqa.soortmelding,
COALESCE (en.fac_locale_tekst, mqa.soortmelding),
COALESCE (de.fac_locale_tekst, mqa.soortmelding),
COALESCE (fr.fac_locale_tekst, mqa.soortmelding)
FROM fac_locale en,
fac_locale de,
fac_locale fr,
mqa
WHERE mqa.ins_srtdiscipline_key = en.fac_locale_kolomkeyval(+)
AND en.fac_locale_kolomnaam(+) = 'INS_SRTDISCIPLINE_OMSCHRIJVING'
AND en.fac_locale_lang(+) = 'EN'
AND mqa.ins_srtdiscipline_key = de.fac_locale_kolomkeyval(+)
AND de.fac_locale_kolomnaam(+) = 'INS_SRTDISCIPLINE_OMSCHRIJVING'
AND de.fac_locale_lang(+) = 'DE'
AND mqa.ins_srtdiscipline_key = fr.fac_locale_kolomkeyval(+)
AND fr.fac_locale_kolomnaam(+) = 'INS_SRTDISCIPLINE_OMSCHRIJVING'
AND fr.fac_locale_lang(+) = 'FR'
UNION ALL
SELECT DISTINCT mqa.ins_discipline_key,
'INS_DISCIPLINE_OMSCHRIJVING',
mqa.productgroep,
COALESCE (en.fac_locale_tekst, mqa.productgroep),
COALESCE (de.fac_locale_tekst, mqa.productgroep),
COALESCE (fr.fac_locale_tekst, mqa.productgroep)
FROM fac_locale en,
fac_locale de,
fac_locale fr,
mqa
WHERE mqa.ins_discipline_key = en.fac_locale_kolomkeyval(+)
AND en.fac_locale_kolomnaam(+) = 'INS_DISCIPLINE_OMSCHRIJVING'
AND en.fac_locale_lang(+) = 'EN'
AND mqa.ins_discipline_key = de.fac_locale_kolomkeyval(+)
AND de.fac_locale_kolomnaam(+) = 'INS_DISCIPLINE_OMSCHRIJVING'
AND de.fac_locale_lang(+) = 'DE'
AND mqa.ins_discipline_key = fr.fac_locale_kolomkeyval(+)
AND fr.fac_locale_kolomnaam(+) = 'INS_DISCIPLINE_OMSCHRIJVING'
AND fr.fac_locale_lang(+) = 'FR'
UNION ALL
SELECT DISTINCT mqa.mld_stdmelding_key,
'MLD_STDMELDING_OMSCHRIJVING',
mqa.subproductgroep,
COALESCE (en.fac_locale_tekst, mqa.subproductgroep),
COALESCE (de.fac_locale_tekst, mqa.subproductgroep),
COALESCE (fr.fac_locale_tekst, mqa.subproductgroep)
FROM fac_locale en,
fac_locale de,
fac_locale fr,
mqa
WHERE mqa.mld_stdmelding_key = en.fac_locale_kolomkeyval(+)
AND en.fac_locale_kolomnaam(+) = 'MLD_STDMELDING_OMSCHRIJVING'
AND en.fac_locale_lang(+) = 'EN'
AND mqa.mld_stdmelding_key = de.fac_locale_kolomkeyval(+)
AND de.fac_locale_kolomnaam(+) = 'MLD_STDMELDING_OMSCHRIJVING'
AND de.fac_locale_lang(+) = 'DE'
AND mqa.mld_stdmelding_key = fr.fac_locale_kolomkeyval(+)
AND fr.fac_locale_kolomnaam(+) = 'MLD_STDMELDING_OMSCHRIJVING'
AND fr.fac_locale_lang(+) = 'FR'
UNION ALL
SELECT DISTINCT mqa.mld_stdmeldinggroep_key,
'MLD_STDMELDINGGROEP_NAAM',
mqa.subproductgroepgroep,
COALESCE (en.fac_locale_tekst, mqa.subproductgroepgroep),
COALESCE (de.fac_locale_tekst, mqa.subproductgroepgroep),
COALESCE (fr.fac_locale_tekst, mqa.subproductgroepgroep)
FROM fac_locale en,
fac_locale de,
fac_locale fr,
mqa
WHERE mqa.mld_stdmeldinggroep_key = en.fac_locale_kolomkeyval(+)
AND en.fac_locale_kolomnaam(+) = 'MLD_STDMELDINGGROEP_NAAM'
AND en.fac_locale_lang(+) = 'EN'
AND mqa.mld_stdmeldinggroep_key = de.fac_locale_kolomkeyval(+)
AND de.fac_locale_kolomnaam(+) = 'MLD_STDMELDINGGROEP_NAAM'
AND de.fac_locale_lang(+) = 'DE'
AND mqa.mld_stdmeldinggroep_key = fr.fac_locale_kolomkeyval(+)
AND fr.fac_locale_kolomnaam(+) = 'MLD_STDMELDINGGROEP_NAAM'
AND fr.fac_locale_lang(+) = 'FR'
UNION ALL
SELECT DISTINCT mqa.mld_behandelgroep_key,
'MLD_BEHANDELGROEP_NAAM',
mqa.behandelgroep,
COALESCE (en.fac_locale_tekst, mqa.behandelgroep),
COALESCE (de.fac_locale_tekst, mqa.behandelgroep),
COALESCE (fr.fac_locale_tekst, mqa.behandelgroep)
FROM fac_locale en,
fac_locale de,
fac_locale fr,
mqa
WHERE mqa.mld_behandelgroep_key = en.fac_locale_kolomkeyval(+)
AND en.fac_locale_kolomnaam(+) = 'MLD_BEHANDELGROEP_NAAM'
AND en.fac_locale_lang(+) = 'EN'
AND mqa.mld_behandelgroep_key = de.fac_locale_kolomkeyval(+)
AND de.fac_locale_kolomnaam(+) = 'MLD_BEHANDELGROEP_NAAM'
AND de.fac_locale_lang(+) = 'DE'
AND mqa.mld_behandelgroep_key = fr.fac_locale_kolomkeyval(+)
AND fr.fac_locale_kolomnaam(+) = 'MLD_BEHANDELGROEP_NAAM'
AND fr.fac_locale_lang(+) = 'FR'
UNION ALL
SELECT DISTINCT mqa.mld_typeopdr_key,
'MLD_TYPEOPDR_OMSCHRIJVING',
mqa.opdracht_type,
COALESCE (en.fac_locale_tekst, mqa.opdracht_type),
COALESCE (de.fac_locale_tekst, mqa.opdracht_type),
COALESCE (fr.fac_locale_tekst, mqa.opdracht_type)
FROM fac_locale en,
fac_locale de,
fac_locale fr,
mqa
WHERE mqa.mld_typeopdr_key = en.fac_locale_kolomkeyval(+)
AND en.fac_locale_kolomnaam(+) = 'MLD_TYPEOPDR_OMSCHRIJVING'
AND en.fac_locale_lang(+) = 'EN'
AND mqa.mld_typeopdr_key = de.fac_locale_kolomkeyval(+)
AND de.fac_locale_kolomnaam(+) = 'MLD_TYPEOPDR_OMSCHRIJVING'
AND de.fac_locale_lang(+) = 'DE'
AND mqa.mld_typeopdr_key = fr.fac_locale_kolomkeyval(+)
AND fr.fac_locale_kolomnaam(+) = 'MLD_TYPEOPDR_OMSCHRIJVING'
AND fr.fac_locale_lang(+) = 'FR';
-- Voor een handige standaardrapportage
CREATE_VIEW(mld_v_rap_stdmelding, 0)
(
hide_f_vakgroeptype,
fclt_f_vakgroep,
vakgroep_key,
notificeren_vakgroep,
doorzetten,
eerstnaarFO,
interactie_fe,
fclt_f_melding,
melding_key,
volgnummer,
meldingsgroep,
acceptatietijd,
uitvoertijd_normaal,
uitvoertijd_laag,
uitvoertijd_hoog,
uitvoertijd_kritisch,
planbaar,
omschrijvingsveld,
tekst_bij_afmelden,
niet_zichtbaar_fe,
notificeren,
kostensoort,
discipline,
groep,
objectsoort,
object_kiezen_verplicht,
verplicht_niveau_alg,
alleen_ruimtes_eigen_org,
aanwijzing,
symboolnaam,
te_beh_door_dienst,
dienst_vereist,
standaard_opdrachttype,
auto_opdr_aanmaken,
beperk_tot_catalogus,
kopieerbaar,
regime,
malusbasis,
malus,
dubbele_mld_controleren,
doet_mee_in_kto,
vervaldatum
)
AS
SELECT ins_srtdiscipline_omschrijving vakgroeptype,
ins_srtdiscipline_prefix || '-' || vak.ins_discipline_omschrijving
vakgroep,
vak.ins_discipline_key vakgroep_key,
DECODE (mld_disc_params_notify,
0, 'Nooit',
1, 'Altijd',
2, 'Afhankelijk van melding',
'Onbekend')
notificeren,
DECODE (mld_disc_params_keten,
0, 'Niet',
'Wel') doorzetten,
DECODE (COALESCE(mld_stdmelding_directklaar, mld_disc_params_directklaar),
0, 'Nee',
1, 'Ja',
2, 'Initieel ook eerst naar FO',
'Onbekend') eerstnaarFO,
DECODE (mld_disc_params_fenotes,
0, 'default niet zichtbaar voor FE',
1, 'default wel zichtbaar voor FE',
2, 'per notitie, default niet zichtbaar voor FE',
3, 'per notitie, default wel zichtbaar voor FE',
'Onbekend') interactiefe,
mld_stdmelding_omschrijving melding,
std.mld_stdmelding_key melding_key,
mld_stdmelding_volgnr volgnummer,
mld_stdmeldinggroep_naam meldingsgroep,
std.mld_stdmelding_t_accepttijd.tijdsduur||DECODE(std.mld_stdmelding_t_accepttijd.eenheid, 'U', ' Uren', 'D', ' Dagen', '') acceptatietijd,
std.mld_stdmelding_t_uitvoertijd.tijdsduur||DECODE(std.mld_stdmelding_t_uitvoertijd.eenheid, 'U', ' Uren', 'D', ' Dagen', '') uitvoertijd_normaal,
std.mld_stdmelding_t_uitvtijd_pr4.tijdsduur||DECODE(std.mld_stdmelding_t_uitvtijd_pr4.eenheid, 'U', ' Uren', 'D', ' Dagen', '') uitvoertijd_laag,
std.mld_stdmelding_t_uitvtijd_pr2.tijdsduur||DECODE(std.mld_stdmelding_t_uitvtijd_pr2.eenheid, 'U', ' Uren', 'D', ' Dagen', '') uitvoertijd_hoog,
std.mld_stdmelding_t_uitvtijd_pr1.tijdsduur||DECODE(std.mld_stdmelding_t_uitvtijd_pr1.eenheid, 'U', ' Uren', 'D', ' Dagen', '') uitvoertijd_kritisch,
DECODE (mld_stdmelding_planbaar, 1, 'ja', 'nee') planbaar,
DECODE (mld_stdmelding_freetext,
0, 'onzichtbaar',
2, 'verplicht',
'optioneel')
omschrijvingsveld,
DECODE (mld_stdmelding_afmeldtext, 2, 'verplicht', 'optioneel')
tekst_bij_afmelden,
DECODE (mld_stdmelding_notfrontend, 1, 'ja', 'nee')
niet_zichtbaar_fe,
DECODE (mld_stdmelding_notify, 1, 'ja', 'nee') notificeren,
pks.prs_kostensoort_oms kostensoort,
mo.discipline,
mo.groep,
mo.objectsoort,
DECODE (ins_srtinst_verplicht, 1, 'ja', 'nee')
object_kiezen_verplicht,
DECODE (alg_onrgoed_niveau,
'R', 'ruimte',
'V', 'verdieping',
'G', 'gebouw',
'L', 'locatie')
verplicht_niveau,
DECODE (mld_stdmelding_prseigen, 1, 'ja', 'nee')
alleen_ruimtes_eigen_org,
mld_stdmelding_hint aanwijzing,
mld_stdmelding_image symboolnaam,
d.prs_dienst_omschrijving te_beh_door_dienst,
DECODE (mld_stdmelding_vereisdienst, 1, 'ja', 'nee') dienst_vereist,
ot.mld_typeopdr_omschrijving standaard_opdrachttype,
DECODE (mld_stdmelding_autoorder, 1, 'ja', 'nee')
auto_opdr_aanmaken,
bd.ins_discipline_omschrijving beperk_tot_catalogus,
DECODE (mld_stdmelding_kopieerbaar, 1, 'ja', 'nee') kopieerbaar,
DECODE (mld_stdmelding_regime,
1, 'Kantoortijden',
2, 'Openingstijden',
3, '24/7')
regime,
mld_stdmelding_malusbasis malusbasis,
mld_stdmelding_malus malus,
DECODE (mld_stdmelding_doublecheck,
1, 'alleen bij invoeren',
2, 'alleen bij accepteren',
3, 'bij invoeren en accepteren',
'nooit')
dubbele_mld_controleren,
DECODE (mld_stdmelding_kto,
1, 'Altijd',
2, 'Opt-in',
3, 'Opt-out',
'Nooit')
doet_mee_in_kto,
mld_stdmelding_vervaldatum vervaldatum
FROM mld_stdmelding std,
mld_stdmeldinggroep smg,
mld_discipline vak,
ins_srtdiscipline srt,
prs_kostensoort pks,
prs_dienst d,
mld_disc_params dp,
mld_typeopdr ot,
bes_discipline bd,
(SELECT sm.mld_stdmelding_key,
td.ins_discipline_omschrijving discipline,
NULL groep,
NULL objectsoort
FROM mld_stdmelding sm, ins_tab_discipline td
WHERE sm.ins_srtinst_niveau = 'D'
AND sm.ins_srtinst_key = td.ins_discipline_key
UNION ALL
SELECT sm.mld_stdmelding_key,
td.ins_discipline_omschrijving discipline,
sg.ins_srtgroep_omschrijving groep,
NULL objectsoort
FROM mld_stdmelding sm, ins_srtgroep sg, ins_tab_discipline td
WHERE sm.ins_srtinst_niveau = 'G'
AND sm.ins_srtinst_key = sg.ins_srtgroep_key
AND sg.ins_discipline_key = td.ins_discipline_key
UNION ALL
SELECT sm.mld_stdmelding_key,
td.ins_discipline_omschrijving discipline,
sg.ins_srtgroep_omschrijving groep,
sd.ins_srtdeel_omschrijving objectsoort
FROM mld_stdmelding sm,
ins_srtdeel sd,
ins_srtgroep sg,
ins_tab_discipline td
WHERE sm.ins_srtinst_niveau = 'S'
AND sm.ins_srtinst_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = sg.ins_srtgroep_key
AND sg.ins_discipline_key = td.ins_discipline_key) mo
WHERE std.mld_stdmelding_verwijder IS NULL
AND std.mld_ins_discipline_key = vak.ins_discipline_key
AND vak.ins_discipline_verwijder IS NULL
AND vak.ins_srtdiscipline_key = srt.ins_srtdiscipline_key
AND srt.ins_srtdiscipline_verwijder IS NULL
AND std.prs_kostensoort_key = pks.prs_kostensoort_key(+)
AND std.prs_dienst_key = d.prs_dienst_key(+)
AND std.mld_typeopdr_key = ot.mld_typeopdr_key(+)
AND std.mld_stdmelding_key = mo.mld_stdmelding_key(+)
AND std.mld_stdmelding_key = mo.mld_stdmelding_key(+)
AND std.mld_stdmeldinggroep_key = smg.mld_stdmeldinggroep_key(+)
AND bd.ins_discipline_key(+) = std.bes_ins_discipline_key
AND vak.ins_discipline_key = dp.mld_ins_discipline_key;
-- UWVA#31346: Export tbv. import afmeldteksten!
CREATE_VIEW(mld_v_rap_expimp_afmtxt, 0)
(
afmeldtekstnaam,
afmeldtekstomschrijving,
fclt_x_discipline_key,
fclt_x_stdmelding_key,
discipline_key,
stdmelding_key
)
AS
SELECT t.mld_afmeldtekst_naam,
t.mld_afmeldtekst_omschrijving,
md.ins_discipline_omschrijving
|| ' [key='
|| TO_CHAR (sm.mld_ins_discipline_key)
|| ']',
sm.mld_stdmelding_omschrijving
|| ' [key='
|| TO_CHAR (sm.mld_stdmelding_key)
|| ']',
sm.mld_ins_discipline_key,
t.mld_stdmelding_key
FROM mld_afmeldtekst t, mld_stdmelding sm, mld_discipline md
WHERE t.mld_stdmelding_key IS NOT NULL
AND t.mld_stdmelding_key = sm.mld_stdmelding_key
AND sm.mld_ins_discipline_key = md.ins_discipline_key
UNION ALL
SELECT t.mld_afmeldtekst_naam,
t.mld_afmeldtekst_omschrijving,
DECODE (
md.ins_discipline_key,
NULL,
NULL,
md.ins_discipline_omschrijving
|| ' [key='
|| TO_CHAR (md.ins_discipline_key)
|| ']'),
NULL,
md.ins_discipline_key,
NULL
FROM mld_afmeldtekst t, mld_discipline md
WHERE t.mld_stdmelding_key IS NULL
AND t.mld_ins_discipline_key = md.ins_discipline_key(+);
---- KTO views + rapportages
CREATE_VIEW(mld_v_kto_vragen, 0)
(
vraag1,
vraag2,
vraag3,
vraag4,
vraag5
)
AS SELECT
(SELECT mld_kenmerk_default
FROM mld_kenmerk
WHERE mld_kenmerk_key = fac.getSetting('kto_mld_vraag1')
) vraag1,
(SELECT mld_kenmerk_default
FROM mld_kenmerk
WHERE mld_kenmerk_key = fac.getSetting('kto_mld_vraag2')
) vraag2,
(SELECT mld_kenmerk_default
FROM mld_kenmerk
WHERE mld_kenmerk_key = fac.getSetting('kto_mld_vraag3')
) vraag3,
(SELECT mld_kenmerk_default
FROM mld_kenmerk
WHERE mld_kenmerk_key = fac.getSetting('kto_mld_vraag4')
) vraag4,
(SELECT mld_kenmerk_default
FROM mld_kenmerk
WHERE mld_kenmerk_key = fac.getSetting('kto_mld_vraag5')
) vraag5
FROM dual;
CREATE_VIEW(mld_v_kto_antwoorden, 0)
(
mld_melding_key,
cijfer1,
cijfer2,
cijfer3,
cijfer4,
cijfer5,
opm1,
opm2,
opm3,
opm4,
opm5
)
AS
SELECT
kto.mld_melding_key,
(SELECT fac.safe_to_number(mld_kenmerkmelding_waarde)
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_cijfer1')
) cijfer1,
(SELECT fac.safe_to_number(mld_kenmerkmelding_waarde)
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_cijfer2')
) cijfer2,
(SELECT fac.safe_to_number(mld_kenmerkmelding_waarde)
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_cijfer3')
) cijfer3,
(SELECT fac.safe_to_number(mld_kenmerkmelding_waarde)
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_cijfer4')
) cijfer4,
(SELECT fac.safe_to_number(mld_kenmerkmelding_waarde)
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_cijfer5')
) cijfer5,
(SELECT mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_toelicht1')
) toelicht1,
(SELECT mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_toelicht2')
) toelicht2,
(SELECT mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_toelicht3')
) toelicht3,
(SELECT mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_toelicht4')
) toelicht4,
(SELECT mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding km
WHERE km.mld_melding_key = kto.mld_melding_key AND km.mld_kenmerk_key = fac.getSetting('kto_mld_toelicht5')
) toelicht5
FROM mld_melding kto
WHERE kto.mld_melding_kto_type IS NOT NULL
AND kto.mld_melding_kto_key IS NOT NULL;
CREATE_VIEW(mld_v_kto_geg, 0)
(
KTO_KEY,
KTO_TYPE,
KTO_REFKEY,
KTO_UITNODIGING_DATUM,
KTO_INVUL_DATUM,
KTO_RESPONSE_TIJD,
INS_SRTDISCIPLINE_KEY,
RES_ACTIVITEIT_KEY,
INS_DISCIPLINE_KEY,
MLD_STDMELDING_KEY,
INS_SRTDISCIPLINE_OMSCHRIJVING,
RES_ACTIVITEIT_OMSCHRIJVING,
MLD_VAKGROEP_OMSCHRIJVING,
RES_RUIMTECATEGORIE,
BES_CATALOGUS,
MLD_STDMELDING_OMSCHRIJVING,
ALG_REGIO_OMSCHRIJVING,
ALG_DISTRICT_OMSCHRIJVING,
ALG_LOCATIE_CODE,
ALG_LOCATIE_OMSCHRIJVING,
CIJFER1,
CIJFER2,
CIJFER3,
CIJFER4,
CIJFER5,
OPM1,
OPM2,
OPM3,
OPM4,
OPM5
)
AS
-- Alle meldingen (alias m) waarvan KTO-uitnodiging is verstuurd met eventuele bijbehorende kto-melding (alias kto)
-- Let op: 2e kolom staat hard 'BMR', en niet overnemen van kto.mld_melding_kto_type, omdat je dat zonder KTO-melding al wilt weten
SELECT kto.mld_melding_key kto_key,
'M',
kto.mld_melding_kto_key,
m.mld_melding_kto_verstuurd,
fac.gettrackingdate('MLDNEW',kto.mld_melding_key) kto_invul_datum,
fac.gettrackingdate('MLDNEW',kto.mld_melding_key) - m.mld_melding_kto_verstuurd kto_response_tijd,
sd.ins_srtdiscipline_key,
NULL res_activiteit_key,
d.ins_discipline_key,
s.mld_stdmelding_key,
sd.ins_srtdiscipline_omschrijving,
NULL res_activiteit_omschrijving,
d.ins_discipline_omschrijving mld_vakgroep_omschrijving,
NULL res_ruimtecategorie,
NULL bes_catalogus,
s.mld_stdmelding_omschrijving,
r.alg_regio_omschrijving,
di.alg_district_omschrijving,
l.alg_locatie_code,
l.alg_locatie_omschrijving,
kto_a.cijfer1,
kto_a.cijfer2,
kto_a.cijfer3,
kto_a.cijfer4,
kto_a.cijfer5,
kto_a.opm1,
kto_a.opm2,
kto_a.opm3,
kto_a.opm4,
kto_a.opm5
FROM mld_melding kto, mld_melding m, ins_tab_discipline d, mld_stdmelding s, ins_srtdiscipline sd,
alg_locatie l, alg_district di, alg_regio r,
mld_v_kto_antwoorden kto_a
WHERE m.mld_melding_kto_verstuurd IS NOT NULL
AND m.mld_melding_key = kto.mld_melding_kto_key(+)
AND kto.mld_melding_key = kto_a.mld_melding_key (+)
AND COALESCE(KTO.MLD_MELDING_KTO_TYPE,'M') = 'M'
AND s.mld_stdmelding_key = m.mld_stdmelding_key
AND d.ins_discipline_key = s.mld_ins_discipline_key
AND d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
AND m.mld_alg_locatie_key = l.alg_locatie_key (+)
AND l.alg_district_key = di.alg_district_key (+)
AND di.alg_regio_key = r.alg_regio_key (+)
UNION ALL
SELECT kto.mld_melding_key kto_key,
'R',
kto.mld_melding_kto_key,
rrr.res_rsv_ruimte_kto_verstuurd kto_uitnodiging_datum,
fac.gettrackingdate('MLDNEW',kto.mld_melding_key) kto_invul_datum,
fac.gettrackingdate('MLDNEW',kto.mld_melding_key) - rrr.res_rsv_ruimte_kto_verstuurd kto_response_tijd,
NULL ins_srtdiscipline_key,
a.res_activiteit_key,
d.ins_discipline_key,
rrr.res_rsv_ruimte_key,
NULL ins_srtdiscipline_omschrijving,
a.res_activiteit_omschrijving,
NULL mld_vakgroep_omschrijving,
d.ins_discipline_omschrijving res_ruimtecategorie,
NULL bes_catalogus,
NULL mld_stdmelding_omschrijving,
rg.alg_regio_omschrijving,
di.alg_district_omschrijving,
l.alg_locatie_code,
l.alg_locatie_omschrijving,
kto_a.cijfer1,
kto_a.cijfer2,
kto_a.cijfer3,
kto_a.cijfer4,
kto_a.cijfer5,
kto_a.opm1,
kto_a.opm2,
kto_a.opm3,
kto_a.opm4,
kto_a.opm5
FROM mld_melding kto, res_rsv_ruimte rrr, res_ruimte_opstelling ro, res_ruimte rr, ins_tab_discipline d, res_activiteit a,
alg_ruimte r, alg_verdieping v, alg_gebouw g, alg_locatie l, alg_district di, alg_regio rg,
mld_v_kto_antwoorden kto_a
WHERE rrr.res_rsv_ruimte_kto_verstuurd IS NOT NULL
AND a.res_activiteit_key = rrr.res_activiteit_key
AND rrr.res_rsv_ruimte_key = kto.mld_melding_kto_key(+)
AND kto.mld_melding_key = kto_a.mld_melding_key (+)
AND COALESCE(KTO.MLD_MELDING_KTO_TYPE,'R') = 'R'
AND rrr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
AND ro.res_ruimte_key = rr.res_ruimte_key
AND rr.res_discipline_key = d.ins_discipline_key
AND r.alg_ruimte_key = (SELECT MIN(rar.alg_ruimte_key) FROM res_alg_ruimte rar WHERE rar.res_ruimte_key = rr.res_ruimte_key)
AND v.alg_verdieping_key = r.alg_verdieping_key
AND g.alg_gebouw_key = v.alg_gebouw_key
AND l.alg_locatie_key = g.alg_locatie_key
AND di.alg_district_key = l.alg_district_key
AND rg.alg_regio_key = di.alg_regio_key
UNION ALL
SELECT kto.mld_melding_key kto_key,
'B',
kto.mld_melding_kto_key,
b.bes_bestelling_kto_verstuurd kto_uitnodiging_datum,
fac.gettrackingdate('MLDNEW',kto.mld_melding_key) kto_invul_datum,
fac.gettrackingdate('MLDNEW',kto.mld_melding_key) - b.bes_bestelling_kto_verstuurd kto_response_tijd,
NULL ins_srtdiscipline_key,
NULL res_activiteit_key,
d.ins_discipline_key,
b.bes_bestelling_key,
NULL ins_srtdiscipline_omschrijving,
NULL res_activiteit_omschrijving,
NULL mld_vakgroep_omschrijving,
NULL res_ruimtecategorie,
d.ins_discipline_omschrijving bes_catalogus,
NULL mld_stdmelding_omschrijving,
r.alg_regio_omschrijving,
di.alg_district_omschrijving,
l.alg_locatie_code,
l.alg_locatie_omschrijving,
kto_a.cijfer1,
kto_a.cijfer2,
kto_a.cijfer3,
kto_a.cijfer4,
kto_a.cijfer5,
kto_a.opm1,
kto_a.opm2,
kto_a.opm3,
kto_a.opm4,
kto_a.opm5
FROM mld_melding kto, bes_bestelling b, bes_bestelling_item bi, bes_srtdeel sd, bes_srtgroep sg, bes_discipline d,
mld_adres ad, alg_locatie l, alg_district di, alg_regio r,
mld_v_kto_antwoorden kto_a
WHERE b.bes_bestelling_kto_verstuurd IS NOT NULL
AND b.bes_bestelling_key = kto.mld_melding_kto_key(+)
AND kto.mld_melding_key = kto_a.mld_melding_key (+)
AND COALESCE(KTO.MLD_MELDING_KTO_TYPE,'B') = 'B'
AND b.bes_bestelling_key = bi.bes_bestelling_key
AND bi.bes_srtdeel_key = sd.bes_srtdeel_key
AND sd.bes_srtgroep_key = sg.bes_srtgroep_key
AND sg.ins_discipline_key = d.ins_discipline_key
AND b.mld_adres_key_lev = ad.mld_adres_key
AND ad.alg_locatie_key = l.alg_locatie_key (+)
AND l.alg_district_key = di.alg_district_key (+)
AND di.alg_regio_key = r.alg_regio_key (+);
-----
-- KTO-Rapport 1: Algemeen overview/overzicht van ingevulde KTO's
CREATE_VIEW(mld_v_rap_kto_overview, 0)
(
fclt_f_kto,
fclt_f_jaar,
fclt_f_kwartaal,
fclt_f_maand,
fclt_f_regio,
fclt_f_district,
fclt_f_locatie,
fclt_f_vakgroeptype,
fclt_f_activiteit,
fclt_f_vakgroep,
fclt_f_ruimtecategorie,
fclt_f_bestelcatalogus,
melding,
fclt_f_beoordeling,
cijfer1,
opm1,
cijfer2,
opm2,
cijfer3,
opm3,
cijfer4,
opm4,
cijfer5,
opm5,
hide_f_kto_key,
hide_f_kto_refkey
)
AS
SELECT
decode(kto_type,'B','Bestellingen','M','Meldingen','R','Reserveringen'),
to_char(kto_invul_datum,'yyyy'),
'Q' || to_char(kto_invul_datum,'q'),
to_char(kto_invul_datum,'mm'),
alg_regio_omschrijving,
alg_district_omschrijving,
alg_locatie_code || '-' || alg_locatie_omschrijving,
ins_srtdiscipline_omschrijving,
res_activiteit_omschrijving,
mld_vakgroep_omschrijving,
res_ruimtecategorie,
bes_catalogus,
mld_stdmelding_omschrijving,
CASE
WHEN COALESCE(cijfer1,10)<5.5 OR
COALESCE(cijfer2,10)<5.5 OR
COALESCE(cijfer3,10)<5.5 OR
COALESCE(cijfer4,10)<5.5 OR
COALESCE(cijfer5,10)<5.5 THEN 'Onvoldoende'
ELSE 'Voldoende'
END,
cijfer1,
opm1,
cijfer2,
opm2,
cijfer3,
opm3,
cijfer4,
opm4,
cijfer5,
opm5,
kto_key,
kto_refkey
FROM mld_v_kto_geg
WHERE kto_key IS NOT NULL;
-- KTO-Rapport 2: KTO Response: aantal KTO-uitnodigingen vs. KTO-ingediend + responsedagen,
-- gegroepeerd op ktosoort(BMR)+jaar+maand
CREATE_VIEW(mld_v_rap_kto_response_soort, 0)
(
fclt_f_kto,
fclt_f_jaar,
fclt_f_maand,
aantal_uitnodigingen,
aantal_ontvangen,
percentage,
gemiddelde_response_in_dagen
)
AS
SELECT
decode(kto_type,'B','Bestellingen','M','Meldingen','R','Reserveringen'),
to_char(kto_uitnodiging_datum,'yyyy'),
to_char(kto_uitnodiging_datum,'mm'),
COUNT(*),
COUNT(kto_key),
100* COUNT(kto_key)/DECODE(COUNT(*),0,1,COUNT(*)),
AVG(round(kto_response_tijd-0.5))
FROM mld_v_kto_geg
GROUP BY kto_type, to_char(kto_uitnodiging_datum,'yyyy'), to_char(kto_uitnodiging_datum,'mm');
-- KTO-Rapport 3: KTO Response: aantal KTO-uitnodigingen vs. KTO-ingediend + responsedagen,
-- gegroepeerd op ktosoort(BMR) +jaar+maand+regio+district
CREATE_VIEW(mld_v_rap_kto_responsedistrict, 0)
(
fclt_f_kto,
fclt_f_jaar,
fclt_f_maand,
fclt_f_regio,
fclt_f_district,
aantal_uitnodigingen,
aantal_ontvangen,
percentage,
gemiddelde_response_in_dagen
)
AS
SELECT
decode(kto_type,'B','Bestellingen','M','Meldingen','R','Reserveringen'),
to_char(kto_uitnodiging_datum,'yyyy'),
to_char(kto_uitnodiging_datum,'mm'),
alg_regio_omschrijving,
alg_district_omschrijving,
COUNT(*),
COUNT(kto_key),
100* COUNT(kto_key)/DECODE(COUNT(*),0,1,COUNT(*)),
AVG(round(kto_response_tijd-0.5))
FROM mld_v_kto_geg
GROUP BY kto_type, to_char(kto_uitnodiging_datum,'yyyy'), to_char(kto_uitnodiging_datum,'mm'),
alg_regio_omschrijving, alg_district_omschrijving;
-- KTO-Rapport 4: KTO Response: aantal KTO-uitnodigingen vs. KTO-ingediend + responsedagen,
-- gegroepeerd op ktosoort(BMR) +jaar+maand+regio+district+locatie
CREATE_VIEW(mld_v_rap_kto_response_locatie, 0)
(
fclt_f_kto,
fclt_f_jaar,
fclt_f_maand,
fclt_f_regio,
fclt_f_district,
fclt_f_locatie,
aantal_uitnodigingen,
aantal_ontvangen,
percentage,
gemiddelde_response_in_dagen
)
AS
SELECT
decode(kto_type,'B','Bestellingen','M','Meldingen','R','Reserveringen'),
to_char(kto_uitnodiging_datum,'yyyy'),
to_char(kto_uitnodiging_datum,'mm'),
alg_regio_omschrijving,
alg_district_omschrijving,
alg_locatie_code || '-' || alg_locatie_omschrijving,
COUNT(*),
COUNT(kto_key),
100* COUNT(kto_key)/DECODE(COUNT(*),0,1,COUNT(*)),
AVG(round(kto_response_tijd-0.5))
FROM mld_v_kto_geg
GROUP BY kto_type, to_char(kto_uitnodiging_datum,'yyyy'), to_char(kto_uitnodiging_datum,'mm'),
alg_regio_omschrijving, alg_district_omschrijving, alg_locatie_code || '-' || alg_locatie_omschrijving;
-- KTO-Rapport 5: KTO Response: aantal KTO-uitnodigingen vs. KTO-ingediend + responsedagen,
-- gegroepeerd op ktosoort(BMR) +jaar+maand+discipline (disc=vakgroep of catalogus of ruimtecategorie)
CREATE_VIEW(mld_v_rap_kto_response_disc, 0)
(
fclt_f_kto,
fclt_f_jaar,
fclt_f_maand,
fclt_f_categorie,
aantal_uitnodigingen,
aantal_ontvangen,
percentage,
gemiddelde_response_in_dagen
)
AS
SELECT
decode(kto_type,'B','Bestellingen','M','Meldingen','R','Reserveringen'),
to_char(kto_uitnodiging_datum,'yyyy'),
to_char(kto_uitnodiging_datum,'mm'),
COALESCE(mld_vakgroep_omschrijving, res_ruimtecategorie, bes_catalogus),
COUNT(*),
COUNT(kto_key),
100* COUNT(kto_key)/DECODE(COUNT(*),0,1,COUNT(*)),
AVG(round(kto_response_tijd-0.5))
FROM mld_v_kto_geg
GROUP BY kto_type, to_char(kto_uitnodiging_datum,'yyyy'), to_char(kto_uitnodiging_datum,'mm'),
COALESCE(mld_vakgroep_omschrijving, res_ruimtecategorie, bes_catalogus);
-- Vooralsnog placeholder, moet aangepast worden
CREATE_VIEW(mld_v_api_meldingen, 1) AS SELECT * from mld_melding;
CREATE_VIEW(mld_v_api_opdrachten, 1) AS SELECT * from mld_opdr;
/* ROOT VIEWS for User defined Reports (UDR) */
/* since melding and opdracht are joined later on, the columns must be unique */
/* Note: als je kolommen toevoegt wil je dat zeer waarschijnlijk ook in mld_v_udr_meldingopdracht */
CREATE_VIEW(mld_v_udr_melding, 1)
(
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;
CREATE_VIEW(mld_v_udr_opdracht, 1)
(
opdracht_key,
opdracht_nummer,
opdracht_regio,
opdracht_district,
opdracht_locatie_code,
opdracht_locatie,
opdracht_locatieplaats,
fclt_3d_locatie_key,
opdracht_gebouwcode,
opdracht_gebouw,
opdracht_verdieping,
opdracht_ruimtenr,
opdracht_ruimte,
opdracht_kostenplaats,
opdracht_kostenplaats_oms,
melding_key,
opdracht_type,
opdracht_volgnummer,
opdracht_status,
opdracht_duur_gepland,
opdracht_datum,
opdracht_einddatum,
opdracht_plandatum,
opdracht_acceptdatum,
opdracht_afgemeld,
opdracht_doorlooptijd,
opdracht_accepttijd,
opdracht_omschrijving,
opdracht_opmerking,
opdracht_uitvoerende,
opdracht_contract,
opdracht_contract_versie,
opdracht_contactpersoon,
opdracht_uren,
opdracht_correctie,
opdracht_materiaal,
opdracht_uurtarief,
opdracht_kosten
)
AS
SELECT mld_opdr_key,
ins_srtdiscipline_prefix||TO_CHAR (mld_melding_key) || '/' || opdracht_volgnummer,
alg_regio_omschrijving,
alg_district_omschrijving,
locatie,
locatie_omschrijving,
locatie_plaats,
alg_locatie_key,
gebouw,
gebouw_naam,
verdieping,
ruimte,
ruimte_omschrijving,
kostenplaats,
kostenplaats_oms,
mld_melding_key,
opdracht_type,
opdracht_volgnummer,
opdracht_status,
opdracht_duur_gepland,
opdracht_datum,
opdracht_einddatum,
opdracht_plandatum,
opdracht_acceptdatum,
opdracht_afgemeld,
opdracht_doorlooptijd,
opdracht_accepttijd,
opdracht_omschrijving,
opdracht_opmerking,
opdracht_uitvoerende,
opdracht_contract,
opdracht_contract_versie,
opdracht_contactpersoon,
opdracht_uren,
opdracht_correctie,
opdracht_materiaal,
opdracht_uurtarief,
opdracht_kosten
FROM (SELECT 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,
(SELECT k.prs_kostenplaats_nr
FROM prs_kostenplaats k
WHERE k.prs_kostenplaats_key = o.prs_kostenplaats_key)
kostenplaats,
(SELECT k.prs_kostenplaats_omschrijving
FROM prs_kostenplaats k
WHERE k.prs_kostenplaats_key = o.prs_kostenplaats_key)
kostenplaats_oms,
o.mld_opdr_key,
o.mld_melding_key,
top.mld_typeopdr_key,
top.mld_typeopdr_omschrijving opdracht_type,
o.mld_opdr_bedrijfopdr_volgnr opdracht_volgnummer,
(SELECT mld_statusopdr_omschrijving
FROM mld_statusopdr sta
WHERE sta.mld_statusopdr_key = o.mld_statusopdr_key)
opdracht_status,
fac.count_work_days (o.mld_opdr_datumbegin, o.mld_opdr_einddatum)
opdracht_duur_gepland,
o.mld_opdr_datumbegin opdracht_datum,
o.mld_opdr_einddatum opdracht_einddatum,
o.mld_opdr_plandatum opdracht_plandatum,
COALESCE(mld.getopdrachtstatusdate (o.mld_opdr_key, 8), mld.getopdrachtstatusdate (o.mld_opdr_key, 1)) opdracht_acceptdatum,
mld.getopdrachtstatusdate (o.mld_opdr_key, 6) opdracht_afgemeld,
fac.count_work_days (o.mld_opdr_datumbegin,
mld.getopdrachtstatusdate (o.mld_opdr_key, 6))
opdracht_doorlooptijd,
COALESCE (fac.count_Work_Days (mld.getopdrachtstatusdate (o.mld_opdr_key, 5),
COALESCE(mld.getopdrachtstatusdate (o.mld_opdr_key, 8), mld.getopdrachtstatusdate (o.mld_opdr_key, 6))),
fac.count_Work_Days (mld.getopdrachtstatusdate (o.mld_opdr_key, 5),
mld.getopdrachtstatusdate (o.mld_opdr_key, 1)))
opdracht_accepttijd,
o.mld_opdr_omschrijving opdracht_omschrijving,
o.mld_opdr_opmerking opdracht_opmerking,
(SELECT naam
FROM mld_v_uitvoerende u
WHERE u.mld_uitvoerende_key = o.mld_uitvoerende_keys)
opdracht_uitvoerende,
c.cnt_contract_nummer_intern opdracht_contract,
c.cnt_contract_versie opdracht_contract_versie,
o.mld_opdr_contactpersoon opdracht_contactpersoon,
o.mld_opdr_uren opdracht_uren,
o.mld_opdr_kosten - o.mld_opdr_materiaal - (o.mld_opdr_uren * o.mld_opdr_uurloon)
opdracht_correctie,
o.mld_opdr_materiaal opdracht_materiaal,
o.mld_opdr_uurloon opdracht_uurtarief,
o.mld_opdr_kosten opdracht_kosten,
sdi.ins_srtdiscipline_prefix
FROM alg_locatie l,
alg_district d,
alg_regio r,
alg_v_allonrgoed_gegevens og,
mld_opdr o,
mld_typeopdr top,
mld_melding m,
mld_stdmelding stdm,
ins_tab_discipline di,
ins_srtdiscipline sdi,
cnt_contract c
WHERE m.mld_alg_locatie_key = l.alg_locatie_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 o.cnt_contract_key = c.cnt_contract_key(+)
AND m.mld_stdmelding_key = stdm.mld_stdmelding_key
AND stdm.mld_ins_discipline_key = di.ins_discipline_key
AND di.ins_srtdiscipline_key = sdi.ins_srtdiscipline_key
AND o.mld_melding_key = m.mld_melding_key
AND o.mld_typeopdr_key = top.mld_typeopdr_key(+)
AND o.mld_opdr_datumbegin >= 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)
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)
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 = 'N' 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(+);
CREATE_VIEW(mld_v_udr_opdrachtkenmerk_cnd, 1)
AS
SELECT o.*,
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, ko.mld_kenmerkopdr_waarde)
WHEN skm.mld_srtkenmerk_kenmerktype = 'C' OR skm.mld_srtkenmerk_kenmerktype = 'F'
THEN
ko.mld_kenmerkopdr_waarde
ELSE
NULL
END
waarde_c,
CASE
WHEN skm.mld_srtkenmerk_kenmerktype = 'N' THEN TO_NUMBER (ko.mld_kenmerkopdr_waarde)
ELSE TO_NUMBER (NULL)
END
waarde_n,
CASE
WHEN skm.mld_srtkenmerk_kenmerktype = 'D'
THEN
TO_DATE (ko.mld_kenmerkopdr_waarde, 'DD-MM-YYYY')
ELSE
TO_DATE (NULL)
END
waarde_d
FROM mld_v_udr_opdracht o,
mld_kenmerkopdr ko,
mld_kenmerk k,
mld_srtkenmerk skm
WHERE ko.mld_opdr_key = o.opdracht_key
AND ko.mld_kenmerkopdr_verwijder IS NULL
AND k.mld_kenmerk_verwijder IS NULL
AND skm.mld_srtkenmerk_verwijder IS NULL
AND ko.mld_kenmerk_key = k.mld_kenmerk_key(+)
AND k.mld_srtkenmerk_key = skm.mld_srtkenmerk_key(+);
CREATE_VIEW(mld_v_udr_opdrachtmateriaal, 1)
AS
SELECT o.*,
mld_opdr_materiaal_aantal aantal,
mld_opdr_materiaal_eenheid eenheid,
mld_opdr_materiaal_eenheidcode eenheidcode,
COALESCE (mld_opdr_materiaal_omschr, fu.fac_usrdata_omschr) omschrijving,
COALESCE (mld_opdr_materiaal_prijs, fu.fac_usrdata_prijs) prijs,
mld_opdr_materiaal_code code,
mld_opdr_materiaal_info info,
mld_opdr_materiaal_groep groep,
mld_opdr_materiaal_extra1 extra1,
mld_opdr_materiaal_extra2 extra2,
mld_opdr_materiaal_extra3 extra3,
fin_btwtabelwaarde_code btwcode,
fin_btwtabelwaarde_oms btwomschrijving,
fin_btwtabelwaarde_perc btw,
fin_btwtabelwaarde_verlegd btwverlegd
FROM mld_v_udr_opdracht o,
mld_opdr_materiaal mo,
fac_usrdata fu,
fin_btwtabelwaarde btw
WHERE mo.mld_opdr_key = o.opdracht_key
AND mo.fac_usrdata_key = fu.fac_usrdata_key(+)
AND mo.fin_btwtabelwaarde_key = btw.fin_btwtabelwaarde_key(+);
REGISTERRUN('$Id$')
#endif // MLD