BAMG#74784 -- Rapportage vastgoed en indexering

svn path=/Customer/trunk/; revision=57794
This commit is contained in:
Arthur Egberink
2022-10-28 12:58:46 +00:00
parent e1bc0e2aa8
commit ac1d83cd10

View File

@@ -26,6 +26,8 @@ SET DEFINE OFF
CREATE OR REPLACE PACKAGE BAMG
AS
PROCEDURE update_energie_label;
PROCEDURE indexeer_contracten;
END;
/
@@ -56,6 +58,53 @@ AS
END IF;
END LOOP;
END;
PROCEDURE indexeer_contracten
AS
-- 162 Huurprijs
-- 163 Servicekosten
-- 164 Indexatie
-- 165 Indexatiedatum
CURSOR c IS
SELECT cnt_contract_key,
fac.safe_to_number (
flx.getflex ('CNT', 162, cnt_contract_key))
huurprijs,
fac.safe_to_number (
flx.getflex ('CNT', 163, cnt_contract_key))
servicekosten,
fac.safe_to_number (
flx.getflex ('CNT', 164, cnt_contract_key))
indexatie
FROM cnt_contract c
WHERE EXISTS
(SELECT 1
FROM cnt_kenmerkcontract kc
WHERE cnt_kenmerk_key = 165
AND TRUNC (
fac.safe_to_date (
kc.cnt_kenmerkcontract_waarde,
'dd-mm-yyyy')) =
TRUNC (SYSDATE)
AND c.cnt_contract_key = kc.cnt_contract_key);
BEGIN
FOR rec IN c
LOOP
BEGIN
IF rec.huurprijs IS NOT NULL AND rec.indexatie IS NOT NULL
THEN
flx.setflex ('CNT', 162, rec.cnt_contract_key, rec.huurprijs * (1 + rec.indexatie / 100));
END IF;
IF rec.servicekosten IS NOT NULL AND rec.indexatie IS NOT NULL
THEN
flx.setflex ('CNT', 163, rec.cnt_contract_key, rec.servicekosten * (1 + rec.indexatie / 100));
END IF;
END;
END LOOP;
END;
END;
/
@@ -864,60 +913,20 @@ AS
-- VASTGOED
CREATE OR REPLACE VIEW bamg_v_gebouw_contract_geg
AS
SELECT FLX.getflex ('ALG',
1011,
g.alg_gebouw_key,
'G')
plaats,
FLX.getflex ('ALG',
1001,
g.alg_gebouw_key,
'G')
adres,
FLX.getflex ('ALG',
1012,
g.alg_gebouw_key,
'G')
postcode,
SELECT FLX.getflex ('ALG', 1011, g.alg_gebouw_key, 'G') plaats,
FLX.getflex ('ALG', 1001, g.alg_gebouw_key, 'G') adres,
FLX.getflex ('ALG', 1012, g.alg_gebouw_key, 'G') postcode,
alg_gebouw_code,
(SELECT fac_usrdata_omschr
FROM fac_usrdata
WHERE fac_usrdata_key = FLX.getflex ('ALG',
1005,
g.alg_gebouw_key,
'G'))
eigendom,
FAC.safe_to_number(FLX.getflex ('ALG',
1041,
g.alg_gebouw_key,
'G'))
opp_kantoor,
FAC.safe_to_number(FLX.getflex ('ALG',
1042,
g.alg_gebouw_key,
'G'))
opp_bedrijfsruimte,
FAC.safe_to_number(FLX.getflex ('ALG',
1043,
g.alg_gebouw_key,
'G'))
opp_terrein,
WHERE fac_usrdata_key = FLX.getflex ('ALG', 1005, g.alg_gebouw_key, 'G')) eigendom,
FAC.safe_to_number(FLX.getflex ('ALG', 1041, g.alg_gebouw_key, 'G')) opp_kantoor,
FAC.safe_to_number(FLX.getflex ('ALG', 1042, g.alg_gebouw_key, 'G')) opp_bedrijfsruimte,
FAC.safe_to_number(FLX.getflex ('ALG', 1043, g.alg_gebouw_key, 'G')) opp_terrein,
cnt_contract_nummer_intern contract_nummer,
cnt_contract_looptijd_van,
DECODE (c.cnt_contract_key,
NULL, NULL,
FLX.getflex ('CNT',
3,
c.cnt_contract_key,
NULL))
verlengen_met,
DECODE (c.cnt_contract_key,
NULL, NULL,
FLX.getflex ('CNT',
1,
c.cnt_contract_key,
NULL))
opgezegd,
DECODE (c.cnt_contract_key, NULL, NULL, FLX.getflex ('CNT', 3, c.cnt_contract_key, NULL)) verlengen_met,
DECODE (c.cnt_contract_key, NULL, NULL, FLX.getflex ('CNT', 1, c.cnt_contract_key, NULL)) opgezegd,
(SELECT t.cnt_termijn_aantal || ' ' || t.cnt_termijn_type
FROM cnt_termijn t
WHERE t.cnt_termijn_key = cnt_contract_rappeltermijn)
@@ -928,19 +937,17 @@ SELECT FLX.getflex ('ALG',
opzegtermijn,
CNT.cnt_getOpzegdatum(c.cnt_contract_key) opzegdatum,
cnt_contract_looptijd_tot,
DECODE (c.cnt_contract_key,
NULL, NULL,
FLX.getflex ('CNT',
61,
c.cnt_contract_key,
NULL))
tagetiknr,
DECODE (c.cnt_contract_key, NULL, NULL, FLX.getflex ('CNT', 61, c.cnt_contract_key, NULL)) tagetiknr,
prs_kostenplaats_nr,
bam.prs_perslid_naam_full klantmanager,
yask.prs_perslid_naam_full contactpersoon_yask,
prs_bedrijf_naam,
prs_bedrijf_bezoek_adres,
prs_bedrijf_bezoek_plaats
prs_bedrijf_bezoek_plaats,
DECODE (c.cnt_contract_key, NULL, NULL, FLX.getflex ('CNT', 161, c.cnt_contract_key, NULL)) huurprijs,
DECODE (c.cnt_contract_key, NULL, NULL, FLX.getflex ('CNT', 162, c.cnt_contract_key, NULL)) servicekosten,
DECODE (c.cnt_contract_key, NULL, NULL, FLX.getflex ('CNT', 163, c.cnt_contract_key, NULL)) indexatie,
DECODE (c.cnt_contract_key, NULL, NULL, FLX.getflex ('CNT', 164, c.cnt_contract_key, NULL)) indexatiedatum
FROM alg_gebouw g,
alg_locatie l,
(SELECT cnt_contract_key, alg_gebouw_key
@@ -2103,6 +2110,7 @@ BEGIN
-- en kijk welke organistatie-onderdelen en personen verwijderd kunnen worden.
bamg_update_organisatie_sched;
BAMG.update_energie_label;
BAMG.indexeer_contracten;
-- Anonymizeren van bezoekers (na 6 maanden) en personen (na 12 maanden)
SELECT COALESCE(MAX(fac_rapport_volgnr),0)