BLCC#87078 Rap/Contractscope-mutaties per jaar (bugfix)
svn path=/Customer/trunk/; revision=68623
This commit is contained in:
138
BLCC/blcc.sql
138
BLCC/blcc.sql
@@ -22443,63 +22443,86 @@ AS
|
||||
WITH
|
||||
alg_freeze
|
||||
AS
|
||||
(SELECT freeze_datum,
|
||||
alg_ruimte_key,
|
||||
gebouwcode,
|
||||
ruimtenummer,
|
||||
vvo,
|
||||
huur_contract,
|
||||
fac.safe_to_number (SUBSTR (huur_contract, 1, INSTR (huur_contract, '=') - 1))
|
||||
(SELECT TRUNC (freeze_datum, 'mm') freeze_datum,
|
||||
alg_ruimte_key, gebouwcode, gebouwclusternaam, ruimtenummer, lhkotc_class_code,
|
||||
vvo, vvo_overeenkomst,
|
||||
fac.safe_to_number (SUBSTR (huur_contract, 1, INSTR (huur_contract, '=', 1, 1) - 1))
|
||||
huur_contract_key,
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1) + 1),
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 1) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr,
|
||||
vvo_overeenkomst,
|
||||
gebouwclusternaam,
|
||||
lhkotc_class_code
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 1) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr
|
||||
FROM blcc_alg_freeze
|
||||
WHERE freeze_datum > fac.safe_to_date ('01-01-2024', 'dd-mm-yyyy')
|
||||
AND REGEXP_COUNT (huur_contract, ',') = 0
|
||||
UNION ALL
|
||||
SELECT freeze_datum,
|
||||
alg_ruimte_key,
|
||||
gebouwcode,
|
||||
ruimtenummer,
|
||||
vvo,
|
||||
huur_contract,
|
||||
fac.safe_to_number (SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1) + 1), '=') - 1))
|
||||
SELECT TRUNC (freeze_datum, 'mm') freeze_datum,
|
||||
alg_ruimte_key, gebouwcode, gebouwclusternaam, ruimtenummer, lhkotc_class_code,
|
||||
vvo, vvo_overeenkomst,
|
||||
fac.safe_to_number (SUBSTR (huur_contract, 1, INSTR (huur_contract, '=', 1, 1) - 1))
|
||||
huur_contract_key,
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 2) + 1),
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 1) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 2) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr,
|
||||
vvo_overeenkomst,
|
||||
gebouwclusternaam,
|
||||
lhkotc_class_code
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 1) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr
|
||||
FROM blcc_alg_freeze
|
||||
WHERE freeze_datum > fac.safe_to_date ('01-01-2024', 'dd-mm-yyyy')
|
||||
AND REGEXP_COUNT (huur_contract, ',') = 1
|
||||
UNION ALL
|
||||
SELECT freeze_datum,
|
||||
alg_ruimte_key,
|
||||
gebouwcode,
|
||||
ruimtenummer,
|
||||
vvo,
|
||||
huur_contract,
|
||||
fac.safe_to_number (SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 2) + 1),
|
||||
SELECT TRUNC (freeze_datum, 'mm') freeze_datum,
|
||||
alg_ruimte_key, gebouwcode, gebouwclusternaam, ruimtenummer, lhkotc_class_code,
|
||||
vvo, vvo_overeenkomst,
|
||||
fac.safe_to_number (SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1, 1) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 2) + 1), '=') - 1))
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1, 1) + 1), '=') - 1))
|
||||
huur_contract_key,
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 3) + 1),
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 2) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 3) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr,
|
||||
vvo_overeenkomst,
|
||||
gebouwclusternaam,
|
||||
lhkotc_class_code
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 2) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr
|
||||
FROM blcc_alg_freeze
|
||||
WHERE freeze_datum > fac.safe_to_date ('01-01-2024', 'dd-mm-yyyy')
|
||||
AND REGEXP_COUNT (huur_contract, ',') = 1
|
||||
UNION ALL
|
||||
SELECT TRUNC (freeze_datum, 'mm') freeze_datum,
|
||||
alg_ruimte_key, gebouwcode, gebouwclusternaam, ruimtenummer, lhkotc_class_code,
|
||||
vvo, vvo_overeenkomst,
|
||||
fac.safe_to_number (SUBSTR (huur_contract, 1, INSTR (huur_contract, '=', 1, 1) - 1))
|
||||
huur_contract_key,
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 1) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 1) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr
|
||||
FROM blcc_alg_freeze
|
||||
WHERE freeze_datum > fac.safe_to_date ('01-01-2024', 'dd-mm-yyyy')
|
||||
AND REGEXP_COUNT (huur_contract, ',') = 2
|
||||
UNION ALL
|
||||
SELECT TRUNC (freeze_datum, 'mm') freeze_datum,
|
||||
alg_ruimte_key, gebouwcode, gebouwclusternaam, ruimtenummer, lhkotc_class_code,
|
||||
vvo, vvo_overeenkomst,
|
||||
fac.safe_to_number (SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1, 1) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1, 1) + 1), '=') - 1))
|
||||
huur_contract_key,
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 2) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 2) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr
|
||||
FROM blcc_alg_freeze
|
||||
WHERE freeze_datum > fac.safe_to_date ('01-01-2024', 'dd-mm-yyyy')
|
||||
AND REGEXP_COUNT (huur_contract, ',') = 2
|
||||
UNION ALL
|
||||
SELECT TRUNC (freeze_datum, 'mm') freeze_datum,
|
||||
alg_ruimte_key, gebouwcode, gebouwclusternaam, ruimtenummer, lhkotc_class_code,
|
||||
vvo, vvo_overeenkomst,
|
||||
fac.safe_to_number (SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1, 2) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, ',', 1, 2) + 1), '=') - 1))
|
||||
huur_contract_key,
|
||||
SUBSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 3) + 1),
|
||||
1,
|
||||
INSTR (SUBSTR (huur_contract, INSTR (huur_contract, '=', 1, 3) + 1) || '.', '.') - 1)
|
||||
huur_contract_nr
|
||||
FROM blcc_alg_freeze
|
||||
WHERE freeze_datum > fac.safe_to_date ('01-01-2024', 'dd-mm-yyyy')
|
||||
AND REGEXP_COUNT (huur_contract, ',') = 2)
|
||||
@@ -22582,18 +22605,15 @@ AS
|
||||
FROM DUAL
|
||||
WHERE ADD_MONTHS (fac.safe_to_date ('01-01-2024', 'dd-mm-yyyy'), LEVEL - 1) BETWEEN fac.safe_to_date ('20240101', 'yyyymmdd') AND TRUNC (ADD_MONTHS (SYSDATE, 2))
|
||||
CONNECT BY LEVEL <= 240) p,
|
||||
(SELECT * FROM cnt_v_aanwezigcontract_plaats WHERE cnt_alg_plaats_code = 'R') cp,
|
||||
alg_freeze baf
|
||||
WHERE c.ins_discipline_key = cd.ins_discipline_key
|
||||
AND cd.ins_discipline_key IN (2122, 2123) -- LA/LA CRF
|
||||
AND cd.ins_discipline_key IN (2122, 2123) -- LA/LA CRF
|
||||
--AND c.cnt_contract_status = 0 -- Definitief/TODO:Of gesloten???
|
||||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND TRUNC (c.cnt_contract_looptijd_van) < LAST_DAY (p.maand) -- Van-datum < einde te factureren maand
|
||||
AND c.cnt_contract_looptijd_tot > p.maand
|
||||
AND c.cnt_contract_key = cp.cnt_contract_key -- Alleen contracten met scope!
|
||||
--AND TO_CHAR (p.maand, 'yyyy-mm') = baf.huur_maand
|
||||
AND TRUNC (p.maand, 'mm') = TRUNC (baf.freeze_datum, 'mm')
|
||||
AND cp.cnt_alg_plaats_key = baf.alg_ruimte_key
|
||||
AND p.maand = baf.freeze_datum
|
||||
AND baf.huur_contract_key = c.cnt_contract_key
|
||||
GROUP BY TO_CHAR (p.maand, 'yyyy-mm'),
|
||||
c.cnt_contract_key,
|
||||
c.cnt_contract_nummer_intern,
|
||||
@@ -22631,19 +22651,20 @@ AS
|
||||
WHERE c.ins_discipline_key IN (2122, 2123) -- LA/LA CRF
|
||||
AND TRUNC (c.cnt_contract_looptijd_van) < LAST_DAY (p.maand) -- Van-datum < einde te factureren maand
|
||||
AND c.cnt_contract_looptijd_tot > p.maand
|
||||
AND TRUNC (ADD_MONTHS (p.maand, 1), 'mm') = TRUNC (baf.freeze_datum, 'mm') -- Ruimten volgende maand!
|
||||
AND c.cnt_contract_nummer_intern = baf.huur_contract_nr
|
||||
AND ADD_MONTHS (p.maand, 1) = baf.freeze_datum -- Ruimten volgende maand!
|
||||
AND baf.huur_contract_nr = c.cnt_contract_nummer_intern
|
||||
AND NOT EXISTS -- Nog niet in scope deze maand!
|
||||
(SELECT 1
|
||||
FROM alg_freeze
|
||||
WHERE huur_contract_nr = baf.huur_contract_nr
|
||||
AND TRUNC (freeze_datum, 'mm') = TRUNC (p.maand, 'mm')
|
||||
WHERE freeze_datum = p.maand
|
||||
AND huur_contract_nr = baf.huur_contract_nr
|
||||
AND alg_ruimte_key = baf.alg_ruimte_key)
|
||||
GROUP BY TO_CHAR (p.maand, 'yyyy-mm'),
|
||||
c.cnt_contract_key,
|
||||
baf.gebouwcode) y
|
||||
ON x.cnt_contract_key = y.cnt_contract_key
|
||||
AND x.maand = y.maand
|
||||
AND x.gebouwcode = y.gebouwcode
|
||||
LEFT JOIN -- In scope deze maand en volgende maand niet meer!
|
||||
( SELECT TO_CHAR (p.maand, 'yyyy-mm') maand, -- Deze maand verwijderd!
|
||||
c.cnt_contract_key,
|
||||
@@ -22669,24 +22690,25 @@ AS
|
||||
WHERE c.ins_discipline_key IN (2122, 2123) -- LA/LA CRF
|
||||
AND TRUNC (c.cnt_contract_looptijd_van) < LAST_DAY (p.maand) -- Van-datum < einde te factureren maand
|
||||
AND c.cnt_contract_looptijd_tot > p.maand
|
||||
AND TRUNC (p.maand, 'mm') = TRUNC (baf.freeze_datum, 'mm') -- Ruimten deze maand!
|
||||
AND c.cnt_contract_key = baf.huur_contract_key
|
||||
AND p.maand = baf.freeze_datum -- Ruimten deze maand!
|
||||
AND baf.huur_contract_nr = c.cnt_contract_nummer_intern
|
||||
AND EXISTS -- Volgende maand loopt contract nog!
|
||||
(SELECT 1
|
||||
FROM alg_freeze
|
||||
WHERE huur_contract_nr = baf.huur_contract_nr
|
||||
AND TRUNC (freeze_datum, 'mm') = TRUNC (ADD_MONTHS (p.maand, 1), 'mm'))
|
||||
WHERE freeze_datum = ADD_MONTHS (baf.freeze_datum, 1)
|
||||
AND huur_contract_nr = baf.huur_contract_nr)
|
||||
AND NOT EXISTS -- Niet meer in scope volgende maand!
|
||||
(SELECT 1
|
||||
FROM alg_freeze
|
||||
WHERE huur_contract_nr = baf.huur_contract_nr
|
||||
AND TRUNC (freeze_datum, 'mm') = TRUNC (ADD_MONTHS (p.maand, 1), 'mm')
|
||||
WHERE freeze_datum = ADD_MONTHS (baf.freeze_datum, 1)
|
||||
AND huur_contract_nr = baf.huur_contract_nr
|
||||
AND alg_ruimte_key = baf.alg_ruimte_key)
|
||||
GROUP BY TO_CHAR (p.maand, 'yyyy-mm'),
|
||||
c.cnt_contract_key,
|
||||
baf.gebouwcode) z
|
||||
ON x.cnt_contract_key = z.cnt_contract_key
|
||||
AND x.maand = z.maand
|
||||
AND x.gebouwcode = z.gebouwcode
|
||||
LEFT JOIN cnt_kenmerkcontract oic
|
||||
ON x.cnt_contract_key = oic.cnt_contract_key
|
||||
AND oic.cnt_kenmerkcontract_verwijder IS NULL
|
||||
|
||||
Reference in New Issue
Block a user