#ifdef CND /* * $Revision$ * $Id$ */ -- CND_V_NEN2767_ALLE_GEBREKEN: hierin zitten alle meldingen (gebreken) die nu relevant voor de berekening kunnen zijn -- dus gebreken die erkend zijn maar nog niet verwerkt of afgewezen. -- Niet uit te sluiten valt dat er dubbele registraties zijn, dat wordt ontdubbeld in cnd_v_nen2767_per_srtgebrek -- Het is daarmee niet aannemelijk dat je deze view nodig hebt, gebruik cnd_v_nen2767_per_srtgebrek. -- Merk op: op alle 3 de aspecten in mld_kenmerkmelding zit geen outer join, omdat ze overal verplicht zijn; -- zonder deze waarden is de conditiescore ook niet te berekenen overigens. -- Full version, met ernst, intensiteit en omvang CREATE_VIEW(cnd_v_nen2767_alle_gebreken_fl,0) ( ins_deel_key, mld_melding_key, mld_stdmelding_key, mld_melding_status, ernst, intensiteit, omvang ) AS WITH w_srtdisc_key AS (SELECT fac.getsetting ('cnd_gebreken_srtdisc_key') sdk FROM DUAL) SELECT d.ins_deel_key, m.mld_melding_key, m.mld_stdmelding_key, m.mld_melding_status, km_ernst.mld_kenmerkmelding_waarde, km_intensiteit.mld_kenmerkmelding_waarde, ud_omvang.fac_usrdata_prijs FROM mld_melding m, mld_stdmelding sm, mld_discipline disc, mld_melding_object mo, ins_deel d, mld_kenmerkmelding km_ernst, mld_kenmerk k_ernst, mld_srtkenmerk sk_ernst, mld_kenmerkmelding km_intensiteit, mld_kenmerk k_intensiteit, mld_srtkenmerk sk_intensiteit, mld_kenmerkmelding km_omvang, mld_kenmerk k_omvang, mld_srtkenmerk sk_omvang, fac_usrdata ud_omvang, w_srtdisc_key WHERE disc.ins_srtdiscipline_key = w_srtdisc_key.sdk AND sm.mld_stdmelding_code <> 'GEEN' AND disc.ins_discipline_verwijder IS NULL AND sm.mld_ins_discipline_key = disc.ins_discipline_key AND m.mld_stdmelding_key = sm.mld_stdmelding_key AND mo.mld_melding_key = m.mld_melding_key AND mo.mld_melding_object_verwijder IS NULL AND d.ins_deel_key = mo.ins_deel_key AND km_ernst.mld_melding_key = m.mld_melding_key AND k_ernst.mld_kenmerk_key = km_ernst.mld_kenmerk_key AND k_ernst.mld_srtkenmerk_key = sk_ernst.mld_srtkenmerk_key AND sk_ernst.mld_srtkenmerk_code = 'ERNST' AND km_intensiteit.mld_melding_key = m.mld_melding_key AND k_intensiteit.mld_kenmerk_key = km_intensiteit.mld_kenmerk_key AND k_intensiteit.mld_srtkenmerk_key = sk_intensiteit.mld_srtkenmerk_key AND sk_intensiteit.mld_srtkenmerk_code = 'INTENSITEIT' AND km_omvang.mld_melding_key = m.mld_melding_key AND k_omvang.mld_kenmerk_key = km_omvang.mld_kenmerk_key AND k_omvang.mld_srtkenmerk_key = sk_omvang.mld_srtkenmerk_key AND sk_omvang.mld_srtkenmerk_code = 'OMVANG' AND ud_omvang.fac_usrdata_key = fac.safe_to_number (km_omvang.mld_kenmerkmelding_waarde) AND m.mld_melding_status NOT IN (1, 6); -- Smaller/faster version, zonder ernst, intensiteit en omvang CREATE_VIEW(cnd_v_nen2767_alle_gebreken,0) ( ins_deel_key, mld_melding_key, mld_stdmelding_key ) AS WITH w_srtdisc_key AS (SELECT fac.getsetting ('cnd_gebreken_srtdisc_key') sdk FROM DUAL) SELECT d.ins_deel_key, m.mld_melding_key, m.mld_stdmelding_key FROM mld_melding m, mld_stdmelding sm, mld_discipline disc, mld_melding_object mo, ins_deel d, w_srtdisc_key WHERE disc.ins_srtdiscipline_key = w_srtdisc_key.sdk AND sm.mld_stdmelding_code <> 'GEEN' AND disc.ins_discipline_verwijder IS NULL AND sm.mld_ins_discipline_key = disc.ins_discipline_key AND m.mld_stdmelding_key = sm.mld_stdmelding_key AND mo.mld_melding_key = m.mld_melding_key AND mo.mld_melding_object_verwijder IS NULL AND d.ins_deel_key = mo.ins_deel_key AND m.mld_melding_status NOT IN (1, 6); -- Ontdubbel eventuele zelfde gebreken die op hetzelfde object zijn gemaakt, dus wanneer na elkaar -- hetzelfde gebrek (stdmelding) is ingelegd, dan geldt de laatste (=hoogste melding_key) CREATE_VIEW(cnd_v_nen2767_per_srtgebrek,0) ( ins_deel_key, mld_melding_key, mld_stdmelding_key, mld_melding_status, ernst, intensiteit, omvang ) AS SELECT a.ins_deel_key, a.mld_melding_key, a.mld_stdmelding_key, a.mld_melding_status, a.ernst, a.intensiteit, a.omvang FROM cnd_v_nen2767_alle_gebreken_fl a, ( SELECT a2.mld_stdmelding_key, a2.ins_deel_key, MAX (a2.mld_melding_key) AS mld_melding_key FROM cnd_v_nen2767_alle_gebreken a2 GROUP BY a2.mld_stdmelding_key, a2.ins_deel_key) b WHERE a.mld_melding_key = b.mld_melding_key AND a.ins_deel_key = b.ins_deel_key; CREATE_VIEW(cnd_v_nen2767_gebrek,0) AS WITH w_srtdisc_key AS (SELECT fac.getsetting ('cnd_gebreken_srtdisc_key') sdk FROM DUAL) SELECT mo.ins_deel_key, m.mld_melding_key, m.mld_stdmelding_key, m.mld_melding_status, m.mld_melding_datum FROM mld_melding m, mld_stdmelding sm, mld_discipline disc, mld_melding_object mo, w_srtdisc_key WHERE disc.ins_srtdiscipline_key = w_srtdisc_key.sdk AND disc.ins_discipline_verwijder IS NULL AND sm.mld_ins_discipline_key = disc.ins_discipline_key AND m.mld_stdmelding_key = sm.mld_stdmelding_key AND mo.mld_melding_key = m.mld_melding_key AND mo.mld_melding_object_verwijder IS NULL AND m.mld_melding_status NOT IN (1,6); CREATE_VIEW(cnd_v_nen2767_srtgebrek,0) AS SELECT a.ins_deel_key, a.mld_melding_key, a.mld_stdmelding_key, a.mld_melding_status, a.mld_melding_datum FROM cnd_v_nen2767_gebrek a, ( SELECT a2.mld_stdmelding_key, a2.ins_deel_key, MAX (a2.mld_melding_key) AS mld_melding_key FROM cnd_v_nen2767_gebrek a2 GROUP BY a2.mld_stdmelding_key, a2.ins_deel_key) b WHERE a.mld_melding_key = b.mld_melding_key AND a.ins_deel_key = b.ins_deel_key; CREATE_VIEW(cnd_v_aggr_cond_score,0) ( alg_locatie_key, alg_gebouw_key, ins_deel_key, ins_deel_aantal, ins_deel_mjb_score1, kosten, correctiefactor, totale_vervangingswaarde, correctie_vervangingswaarde ) AS SELECT l.alg_locatie_key, g.alg_gebouw_key, d.ins_deel_key, MAX (d.ins_deel_aantal), MAX (d.ins_deel_mjb_score1), MAX ( COALESCE (sc.INS_SRTCONTROLE_KOSTEN, 0) + COALESCE (sc.INS_SRTCONTROLE_KOSTEN2, 0) + COALESCE (sc.INS_SRTCONTROLE_KOSTEN3, 0) + COALESCE (sc.INS_SRTCONTROLE_MATERIAAL, 0)) kosten, cnd.nen2767_corr_cond_score (MAX (d.ins_deel_mjb_score1)) correctiefactor, MAX (d.ins_deel_aantal) * MAX ( COALESCE (sc.INS_SRTCONTROLE_KOSTEN, 0) + COALESCE (sc.INS_SRTCONTROLE_KOSTEN2, 0) + COALESCE (sc.INS_SRTCONTROLE_KOSTEN3, 0) + COALESCE (sc.INS_SRTCONTROLE_MATERIAAL, 0)) totale_vervangingswaarde, MAX (d.ins_deel_aantal) * MAX ( COALESCE (sc.INS_SRTCONTROLE_KOSTEN, 0) + COALESCE (sc.INS_SRTCONTROLE_KOSTEN2, 0) + COALESCE (sc.INS_SRTCONTROLE_KOSTEN3, 0) + COALESCE (sc.INS_SRTCONTROLE_MATERIAAL, 0)) * cnd.nen2767_corr_cond_score (MAX (d.ins_deel_mjb_score1)) correctie_vervangingswaarde FROM ins_deel d, ins_v_defined_inspect_xcp sc, alg_ruimte r, alg_verdieping v, alg_gebouw g, alg_locatie l WHERE d.ins_deel_verwijder IS NULL AND ins_deel_mjb_score1 IS NOT NULL AND sc.ins_deel_key = d.ins_deel_key AND d.ins_alg_ruimte_type = 'R' AND d.ins_alg_ruimte_key = r.alg_ruimte_key AND r.alg_verdieping_key = v.alg_verdieping_key AND v.alg_gebouw_key = g.alg_gebouw_key AND g.alg_locatie_key = l.alg_locatie_key AND ins_scenario_key = 1 AND ctr_ismjob = 1 GROUP BY d.ins_deel_key, l.alg_locatie_key, g.alg_gebouw_key; CREATE_VIEW(cnd_v_rap_conditiemetingen, 0) ( mld_melding_key, complexnummer, complexnaam, clusternummer, clusternaam, gebouwgroep, hoofdrecept, groeprecept, subrecept, identificatie, gebreknr, datum_tijd, datum, inspecteur, status, gebrek, omschrijving, ernst, omvang, intensiteit, veiligheid_gezondheid, cultuurhistorische_waarde, gebruik_en_bedrijfsproces, technische_vervolgschade, toename_klachtenonderhoud, beleving_esthetica, foto ) AS SELECT m.mld_melding_key, l.alg_locatie_code complexnummer, l.alg_locatie_omschrijving complexnaam, aog.alg_gebouw_code clusternummer, aog.alg_gebouw_naam clusternaam, aog.alg_gebouw_groep groep, id.ins_discipline_omschrijving hoofdrecept, isg.ins_srtgroep_omschrijving groeprecept, isd.ins_srtdeel_omschrijving || ' (' || isd.ins_srtdeel_code || ')' subrecept, d.ins_deel_omschrijving identificatie, m.mld_melding_key gebreknummer, m.mld_melding_datum datum_tijd, TO_CHAR (mld_melding_datum, 'DD-MM-YYYY') datum, pf.prs_perslid_naam_full inspecteur, s.mld_statuses_omschrijving status, std.mld_stdmelding_omschrijving gebrek, m.mld_melding_omschrijving omschrijving, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'ERNST' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) ernst, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'OMVANG' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) omvang, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'INTENSITEIT' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) intensiteit, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'ASPECT1' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) veiligheid_gezondheid, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'ASPECT2' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) cultuurhistorische_waarde, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'ASPECT3' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) gebruik_en_bedrijfsproces, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'ASPECT4' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) technische_vervolgschade, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'ASPECT5' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) toename_klachtenonderhoud, (SELECT fac_usrdata_omschr FROM mld_kenmerkmelding mk, mld_kenmerk k, mld_srtkenmerk sk, fac_kenmerkdomein kd, fac_usrtab ut, fac_usrdata ud WHERE sk.mld_srtkenmerk_code = 'ASPECT6' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key AND k.mld_kenmerk_key = mk.mld_kenmerk_key AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key AND ut.fac_usrtab_key = kd.fac_usrtab_key AND ud.fac_usrtab_key = ut.fac_usrtab_key AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde AND mk.mld_melding_key = m.mld_melding_key) beleving_esthetica, (SELECT k.mld_kenmerk_key FROM mld_kenmerk k, mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_code = 'FOTO' AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key) foto FROM mld_melding m, mld_melding_object mo, ins_deel d, ins_srtdeel isd, ins_srtgroep isg, ins_discipline id, alg_v_allonrgoed_gegevens aog, alg_locatie l, mld_statuses s, prs_v_perslid_fullnames_all pf, mld_stdmelding std WHERE m.mld_melding_key = mo.mld_melding_key AND d.ins_deel_key = mo.ins_deel_key AND d.ins_srtdeel_key = isd.ins_srtdeel_key AND isd.ins_srtgroep_key = isg.ins_srtgroep_key AND isg.ins_discipline_key = id.ins_discipline_key AND m.mld_alg_onroerendgoed_keys = aog.alg_onroerendgoed_keys AND l.alg_locatie_key = aog.alg_locatie_key AND s.mld_statuses_key = m.mld_melding_status AND m.prs_perslid_key = pf.prs_perslid_key AND m.mld_stdmelding_key = std.mld_stdmelding_key; REGISTERRUN('$Id$') #endif // CND