MDUX#49088 huurrapportage uitgebreid

svn path=/Customer/trunk/; revision=35863
This commit is contained in:
Ruud Lipper
2017-10-31 14:07:18 +00:00
parent d4b91d8394
commit 5ccd9fc8d9

View File

@@ -2070,181 +2070,271 @@ UNION
SELECT * FROM mdux_huurcontracten_locatie;
CREATE OR REPLACE VIEW mdux_rap_huurcontracten
(cnt_contract_key,
prs_bedrijf_key,
alg_gebouw_key,
prs_perslid_key_eig,
cnt_contract_nummer_intern,
cnt_contract_versie,
cnt_contract_omschrijving,
cnt_contract_looptijd_van,
cnt_contract_looptijd_tot,
cnt_looptijd_mnd,
perc_looptijd,
aantal_weken_tegaan,
cnt_contract_rappeldatum,
cnt_contract_opzegdatum,
cnt_contract_opzegtermijn,
cnt_contract_rappeltermijn,
cnt_contract_status,
contract_fase_actief,
cnt_contract_status_txt,
cnt_contract_kosten,
cnt_contract_termijnkosten,
cnt_contract_termijnkosten_mnd,
cnt_contract_termijn_type,
cnt_contract_termijn_aantal,
cnt_contract_termijn_omschr,
contract_disc_key,
prs_afdeling_key_eig,
cnt_eigenaar_afdeling_naam,
prs_bedrijf_naam,
prs_perslid_naam_full,
prs_perslid_naam_friendly,
cnt_alg_plaats_key,
cnt_alg_plaats_code,
alg_gebouw_code,
alg_gebouw_naam,
alg_gebouw_omschrijving,
alg_verdieping_key,
alg_verdieping_omschrijving,
alg_verdieping_volgnr,
alg_verdieping_code,
alg_ruimte_key,
alg_ruimte_nr,
alg_ruimte_omschrijving,
alg_ruimte_bruto_vloeropp,
alg_ruimte_opp_alt1,
alg_ruimte_opp_alt2,
alg_ruimte_omtrek,
alg_ruimte_inhoud,
alg_ruimte_opmerking,
prs_ruimteafdeling_bezetting,
prs_afdeling_key,
prs_afdeling_naam,
prs_afdeling_omschrijving,
prs_kostenplaats_key,
prs_kostenplaats_nr,
prs_kostenplaats_omschrijving,
mdux_kostenplaats,
mdux_kostendrager,
cnt_interne_doorbelasting,
cnt_interne_doorbelasting_mnd
(
cnt_contract_key,
prs_bedrijf_key,
alg_gebouw_key,
prs_perslid_key_eig,
cnt_contract_nummer_intern,
cnt_contract_versie,
cnt_contract_omschrijving,
cnt_contract_looptijd_van,
cnt_contract_looptijd_tot,
cnt_looptijd_mnd,
perc_looptijd,
aantal_weken_tegaan,
cnt_contract_rappeldatum,
cnt_contract_opzegdatum,
cnt_contract_opzegtermijn,
cnt_contract_rappeltermijn,
cnt_contract_status,
contract_fase_actief,
cnt_contract_status_txt,
cnt_contract_kosten,
cnt_contract_termijnkosten,
cnt_contract_termijnkosten_mnd,
cnt_contract_termijn_type,
cnt_contract_termijn_aantal,
cnt_contract_termijn_omschr,
contract_disc_key,
prs_afdeling_key_eig,
cnt_eigenaar_afdeling_naam,
prs_bedrijf_naam,
prs_perslid_naam_full,
prs_perslid_naam_friendly,
cnt_alg_plaats_key,
cnt_alg_plaats_code,
alg_gebouw_code,
alg_gebouw_naam,
alg_gebouw_omschrijving,
alg_verdieping_key,
alg_verdieping_omschrijving,
alg_verdieping_volgnr,
alg_verdieping_code,
alg_ruimte_key,
alg_ruimte_nr,
alg_ruimte_omschrijving,
alg_ruimte_bruto_vloeropp,
alg_ruimte_opp_alt1,
alg_ruimte_opp_alt2,
alg_ruimte_omtrek,
alg_ruimte_inhoud,
alg_ruimte_opmerking,
prs_ruimteafdeling_bezetting,
prs_afdeling_key,
prs_afdeling_naam,
prs_afdeling_omschrijving,
prs_kostenplaats_key,
prs_kostenplaats_nr,
prs_kostenplaats_omschrijving,
mdux_kostenplaats,
mdux_kostendrager,
cnt_interne_doorbelasting,
cnt_interne_doorbelasting_mnd,
cnt_contractsoort,
indexatie_volgens,
waarborgsom,
bankgarantie,
servicekosten_permaand,
status_huurcontract,
huurkosten_permaand,
maand_van_index
)
AS
SELECT
cnt_contract_key,
hc.prs_bedrijf_key,
hc.alg_gebouw_key,
prs_perslid_key_eig,
cnt_contract_nummer_intern,
cnt_contract_versie,
cnt_contract_omschrijving,
cnt_contract_looptijd_van,
cnt_contract_looptijd_tot,
cnt_looptijd_mnd,
perc_looptijd,
aantal_weken_tegaan,
cnt_contract_rappeldatum,
cnt_contract_opzegdatum,
cnt_contract_opzegtermijn,
cnt_contract_rappeltermijn,
cnt_contract_status,
contract_fase_actief,
cnt_contract_status_txt,
cnt_contract_kosten,
cnt_contract_termijnkosten,
cnt_contract_termijnkosten_mnd,
cnt_contract_termijn_type,
cnt_contract_termijn_aantal,
cnt_contract_termijn_omschr,
contract_disc_key,
prs_afdeling_key_eig,
cnt_eigenaar_afdeling_naam,
prs_bedrijf_naam,
prs_perslid_naam_full,
prs_perslid_naam_friendly,
cnt_alg_plaats_key,
cnt_alg_plaats_code,
alg_gebouw_code,
alg_gebouw_naam,
alg_gebouw_omschrijving,
v.alg_verdieping_key,
v.alg_verdieping_omschrijving,
v.alg_verdieping_volgnr,
v.alg_verdieping_code,
r.alg_ruimte_key,
r.alg_ruimte_nr,
r.alg_ruimte_omschrijving,
r.alg_ruimte_bruto_vloeropp,
r.alg_ruimte_opp_alt1,
r.alg_ruimte_opp_alt2,
r.alg_ruimte_omtrek,
r.alg_ruimte_inhoud,
r.alg_ruimte_opmerking,
ra.prs_ruimteafdeling_bezetting,
a.prs_afdeling_key,
a.prs_afdeling_naam,
a.prs_afdeling_omschrijving,
k.prs_kostenplaats_key,
k.prs_kostenplaats_nr,
k.prs_kostenplaats_omschrijving,
SUBSTR(k.prs_kostenplaats_nr, 1, INSTR(k.prs_kostenplaats_nr, '.') - 1) mdux_kostenplaats,
SUBSTR(k.prs_kostenplaats_nr, 1 + INSTR(k.prs_kostenplaats_nr, '.')) mdux_kostendrager,
ROUND(cnt_contract_termijnkosten *
(
(SELECT SUM(prs_ruimteafdeling_bezetting)
FROM prs_ruimteafdeling ra2, alg_verdieping v2, alg_ruimte r2, mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_afdeling_key = a.prs_afdeling_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL) /
(SELECT COALESCE(SUM(prs_ruimteafdeling_bezetting),100)
FROM prs_ruimteafdeling ra2, alg_verdieping v2, alg_ruimte r2, mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL)
),2) mdux_interne_doorbelasting,
ROUND(cnt_contract_termijnkosten_mnd *
(
(SELECT SUM(prs_ruimteafdeling_bezetting)
FROM prs_ruimteafdeling ra2, alg_verdieping v2, alg_ruimte r2, mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_afdeling_key = a.prs_afdeling_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL) /
(SELECT COALESCE(SUM(prs_ruimteafdeling_bezetting),100)
FROM prs_ruimteafdeling ra2, alg_verdieping v2, alg_ruimte r2, mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL)
),2) mdux_interne_doorbelasting_mnd
FROM mdux_huurcontracten_gebouwen hc, alg_verdieping v, alg_ruimte r, prs_ruimteafdeling ra, prs_afdeling a, prs_kostenplaats k
WHERE hc.alg_gebouw_key = v.alg_gebouw_key (+)
AND v.alg_verdieping_verwijder IS NULL
AND v.alg_verdieping_key = r.alg_verdieping_key (+)
AND r.alg_ruimte_verwijder IS NULL
AND r.alg_ruimte_key = ra.alg_ruimte_key (+)
AND ra.prs_ruimteafdeling_verwijder IS NULL
AND ra.prs_afdeling_key = a.prs_afdeling_key (+)
AND a.prs_afdeling_verwijder IS NULL
AND a.prs_kostenplaats_key = k.prs_kostenplaats_key (+);
SELECT cnt_contract_key,
hc.prs_bedrijf_key,
hc.alg_gebouw_key,
prs_perslid_key_eig,
cnt_contract_nummer_intern,
cnt_contract_versie,
cnt_contract_omschrijving,
cnt_contract_looptijd_van,
cnt_contract_looptijd_tot,
cnt_looptijd_mnd,
perc_looptijd,
aantal_weken_tegaan,
cnt_contract_rappeldatum,
cnt_contract_opzegdatum,
cnt_contract_opzegtermijn,
cnt_contract_rappeltermijn,
cnt_contract_status,
contract_fase_actief,
cnt_contract_status_txt,
cnt_contract_kosten,
cnt_contract_termijnkosten,
cnt_contract_termijnkosten_mnd,
cnt_contract_termijn_type,
cnt_contract_termijn_aantal,
cnt_contract_termijn_omschr,
contract_disc_key,
prs_afdeling_key_eig,
cnt_eigenaar_afdeling_naam,
prs_bedrijf_naam,
prs_perslid_naam_full,
prs_perslid_naam_friendly,
cnt_alg_plaats_key,
cnt_alg_plaats_code,
alg_gebouw_code,
alg_gebouw_naam,
alg_gebouw_omschrijving,
v.alg_verdieping_key,
v.alg_verdieping_omschrijving,
v.alg_verdieping_volgnr,
v.alg_verdieping_code,
r.alg_ruimte_key,
r.alg_ruimte_nr,
r.alg_ruimte_omschrijving,
r.alg_ruimte_bruto_vloeropp,
r.alg_ruimte_opp_alt1,
r.alg_ruimte_opp_alt2,
r.alg_ruimte_omtrek,
r.alg_ruimte_inhoud,
r.alg_ruimte_opmerking,
ra.prs_ruimteafdeling_bezetting,
a.prs_afdeling_key,
a.prs_afdeling_naam,
a.prs_afdeling_omschrijving,
k.prs_kostenplaats_key,
k.prs_kostenplaats_nr,
k.prs_kostenplaats_omschrijving,
SUBSTR (k.prs_kostenplaats_nr,
1,
INSTR (k.prs_kostenplaats_nr, '.') - 1)
mdux_kostenplaats,
SUBSTR (k.prs_kostenplaats_nr,
1 + INSTR (k.prs_kostenplaats_nr, '.'))
mdux_kostendrager,
ROUND (
cnt_contract_termijnkosten
* ( (SELECT SUM (prs_ruimteafdeling_bezetting)
FROM prs_ruimteafdeling ra2,
alg_verdieping v2,
alg_ruimte r2,
mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_afdeling_key = a.prs_afdeling_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL)
/ (SELECT COALESCE (SUM (prs_ruimteafdeling_bezetting), 100)
FROM prs_ruimteafdeling ra2,
alg_verdieping v2,
alg_ruimte r2,
mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL)),
2)
mdux_interne_doorbelasting,
ROUND (
cnt_contract_termijnkosten_mnd
* ( (SELECT SUM (prs_ruimteafdeling_bezetting)
FROM prs_ruimteafdeling ra2,
alg_verdieping v2,
alg_ruimte r2,
mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_afdeling_key = a.prs_afdeling_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL)
/ (SELECT COALESCE (SUM (prs_ruimteafdeling_bezetting), 100)
FROM prs_ruimteafdeling ra2,
alg_verdieping v2,
alg_ruimte r2,
mdux_huurcontracten_gebouwen hc2
WHERE hc2.cnt_contract_key = hc.cnt_contract_key
AND v2.alg_gebouw_key = hc2.alg_gebouw_key
AND v2.alg_verdieping_verwijder IS NULL
AND r2.alg_verdieping_key = v2.alg_verdieping_key
AND r2.alg_ruimte_verwijder IS NULL
AND ra2.alg_ruimte_key = r2.alg_ruimte_key
AND ra2.prs_ruimteafdeling_verwijder IS NULL)),
2)
mdux_interne_doorbelasting_mnd,
(SELECT ins_discipline_omschrijving
FROM cnt_discipline cd, cnt_contract c
WHERE c.ins_discipline_key = cd.ins_discipline_key
AND c.cnt_contract_key = hc.cnt_contract_key)
contractsoort,
(SELECT cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract ckc, cnt_kenmerk ck
WHERE ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 8
AND ck.cnt_kenmerk_verwijder IS NULL
AND ckc.cnt_contract_key = hc.cnt_contract_key)
indexatie_volgens,
(SELECT cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract ckc, cnt_kenmerk ck
WHERE ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 13
AND ck.cnt_kenmerk_verwijder IS NULL
AND ckc.cnt_contract_key = hc.cnt_contract_key)
waarborgsom,
(SELECT cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract ckc, cnt_kenmerk ck
WHERE ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 1
AND ck.cnt_kenmerk_verwijder IS NULL
AND ckc.cnt_contract_key = hc.cnt_contract_key)
bankgarantie,
(SELECT cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract ckc, cnt_kenmerk ck
WHERE ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 11
AND ck.cnt_kenmerk_verwijder IS NULL
AND ckc.cnt_contract_key = hc.cnt_contract_key)
servicekosten_permaand,
(SELECT fac_usrdata_omschr
FROM cnt_kenmerkcontract ckc, cnt_kenmerk ck, fac_usrdata fu
WHERE ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 61
AND ck.cnt_kenmerk_verwijder IS NULL
AND ckc.cnt_contract_key = hc.cnt_contract_key
AND fu.fac_usrtab_key = 181
AND TO_CHAR (fac_usrdata_key) = cnt_kenmerkcontract_waarde)
status_huurcontract,
(SELECT cnt_kenmerkcontract_waarde
FROM cnt_kenmerkcontract ckc, cnt_kenmerk ck
WHERE ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 6
AND ck.cnt_kenmerk_verwijder IS NULL
AND ckc.cnt_contract_key = hc.cnt_contract_key)
huurkosten_permaand,
(SELECT fac_usrdata_omschr
FROM cnt_kenmerkcontract ckc, cnt_kenmerk ck, fac_usrdata fu
WHERE ckc.cnt_kenmerk_key = ck.cnt_kenmerk_key
AND ck.cnt_srtkenmerk_key = 9
AND ck.cnt_kenmerk_verwijder IS NULL
AND ckc.cnt_contract_key = hc.cnt_contract_key
AND fu.fac_usrtab_key = 43
AND TO_CHAR (fac_usrdata_key) = cnt_kenmerkcontract_waarde)
maand_van_index
FROM mdux_huurcontracten_gebouwen hc,
alg_verdieping v,
alg_ruimte r,
prs_ruimteafdeling ra,
prs_afdeling a,
prs_kostenplaats k
WHERE hc.alg_gebouw_key = v.alg_gebouw_key(+)
AND v.alg_verdieping_verwijder IS NULL
AND v.alg_verdieping_key = r.alg_verdieping_key(+)
AND r.alg_ruimte_verwijder IS NULL
AND r.alg_ruimte_key = ra.alg_ruimte_key(+)
AND ra.prs_ruimteafdeling_verwijder IS NULL
AND ra.prs_afdeling_key = a.prs_afdeling_key(+)
AND a.prs_afdeling_verwijder IS NULL
AND a.prs_kostenplaats_key = k.prs_kostenplaats_key(+);
CREATE OR REPLACE VIEW MDUX_V_INS_QRC
(