BRCF#81737 -- Uitfasering koppeling Groendus

svn path=/Customer/trunk/; revision=63146
This commit is contained in:
Robin Stoker
2024-01-11 12:49:34 +00:00
parent 4ca95a9a0f
commit 7387e66437

View File

@@ -386,81 +386,6 @@ BEGIN
END;
/
-- Voor de Groendus koppeling moet er per pand een drietal objecten worden aangemaakt (water, gas, elektra)
-- Dat doe de procedure hieronder, die wordt aangeroepen in de daily.
CREATE OR REPLACE PROCEDURE brcf_groendus_meters
AS
CURSOR c1
IS
SELECT g.alg_locatie_key,
r.alg_ruimte_key,
'W_' || g.alg_gebouw_code water,
'G_' || g.alg_gebouw_code gas,
'E_' || g.alg_gebouw_code elektra
FROM alg_gebouw g, alg_verdieping v, alg_ruimte r
WHERE g.alg_gebouw_key = v.alg_gebouw_key
AND r.alg_verdieping_key = v.alg_verdieping_key
AND r.alg_ruimte_upper_nr = '_'
AND g.alg_gebouw_verwijder IS NULL
AND NOT EXISTS
(SELECT i.ins_deel_key
FROM ins_deel i
WHERE i.ins_alg_ruimte_key = r.alg_ruimte_key
AND i.ins_srtdeel_key IN (61, 62, 63));
BEGIN
FOR rec IN c1
LOOP
BEGIN
INSERT INTO ins_deel (ins_srtdeel_key,
ins_alg_ruimte_key,
ins_alg_ruimte_type,
ins_deel_aantal,
ins_deel_omschrijving,
ins_alg_locatie_key,
ins_deel_actief)
VALUES (62,
rec.alg_ruimte_key,
'R',
1,
rec.water,
rec.alg_locatie_key,
1);
INSERT INTO ins_deel (ins_srtdeel_key,
ins_alg_ruimte_key,
ins_alg_ruimte_type,
ins_deel_aantal,
ins_deel_omschrijving,
ins_alg_locatie_key,
ins_deel_actief)
VALUES (61,
rec.alg_ruimte_key,
'R',
1,
rec.elektra,
rec.alg_locatie_key,
1);
INSERT INTO ins_deel (ins_srtdeel_key,
ins_alg_ruimte_key,
ins_alg_ruimte_type,
ins_deel_aantal,
ins_deel_omschrijving,
ins_alg_locatie_key,
ins_deel_actief)
VALUES (63,
rec.alg_ruimte_key,
'R',
1,
rec.gas,
rec.alg_locatie_key,
1);
END;
END LOOP;
END;
/
CREATE OR REPLACE PROCEDURE brcf_daily
AS
v_errormsg VARCHAR2 (1000);
@@ -471,182 +396,9 @@ BEGIN
brcf_toekennen_authgroep ();
brcf_wp_toekenning ();
-- brcf_delete_persons ();
brcf_groendus_meters ();
END;
/
-- T.b.v. de koppeling met Groendus.
CREATE OR REPLACE PROCEDURE brcf_groendus_locaties (
p_locatieid IN NUMBER,
p_postalcode IN VARCHAR2)
IS
BEGIN
UPDATE alg_locatie
SET alg_locatie_externnr = p_locatieid
WHERE REPLACE (alg_locatie_postcode, ' ', '') = p_postalcode
AND alg_locatie_verwijder IS NULL;
END;
/
CREATE OR REPLACE PROCEDURE brcf_groendus_eancodes (
p_eancode IN NUMBER,
p_addressid IN NUMBER,
p_energytype IN VARCHAR2)
IS
CURSOR c1
IS
SELECT i.ins_deel_key
FROM ins_deel i,
alg_locatie l,
alg_gebouw g,
alg_verdieping v,
alg_ruimte r
WHERE i.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 l.alg_locatie_externnr = p_addressid
AND (i.ins_deel_externnr != p_eancode OR i.ins_deel_externnr IS NULL)
AND i.ins_srtdeel_key IN (61, 62, 63)
AND UPPER (SUBSTR (ins_deel_omschrijving, 1, 1)) =
UPPER (SUBSTR (p_energytype, 1, 1)); -- W = Water, G= Gas, E= Elektra
BEGIN
FOR rec IN c1
LOOP
BEGIN
UPDATE ins_deel
SET ins_deel_externnr = p_eancode
WHERE ins_deel_key = rec.ins_deel_key;
END;
END LOOP;
END;
/
CREATE OR REPLACE PROCEDURE brcf_groendus_consumption (
p_deelkey IN NUMBER,
p_verbruik IN VARCHAR2,
p_timestamp IN VARCHAR2)
IS
BEGIN
UPDATE ins_deel
SET ins_deel_state = p_verbruik,
ins_deel_statedate =
TO_DATE (REPLACE (p_timestamp, 'T', ' '),
'YYYY-MM-DD HH24:MI:SS')
WHERE ins_deel_key = p_deelkey;
END;
/
CREATE OR REPLACE VIEW brcf_v_groendus_history
(
deel_key,
eancode,
datumvan,
datumtot
)
AS
SELECT ins_deel_key,
ins_deel_externnr,
'2022-01-01',
TO_CHAR (SYSDATE, 'YYYY-MM-DD')
FROM ins_deel
WHERE ins_srtdeel_key IN (61, 62, 63) AND ins_deel_externnr IS NOT NULL;
CREATE OR REPLACE VIEW brcf_v_groendus_history_old
(
deel_key,
eancode,
datumvan,
datumtot
)
AS
SELECT ins_deel_key,
ins_deel_externnr,
'2021-01-01',
'2021-12-31'
FROM ins_deel
WHERE ins_srtdeel_key IN (61, 62, 63) AND ins_deel_externnr IS NOT NULL;
-- Bronview voor het dagelijks ophalen van meetwaarden
-- Objecten die nog nooit een meetwaarde hebben gehad worden een heel jaar terug gesynchroniseerd.
CREATE OR REPLACE VIEW brcf_v_groendus_latest
(
deel_key,
eancode,
datumvan,
datumtot
)
AS
SELECT i.ins_deel_key,
i.ins_deel_externnr,
TO_CHAR (MAX (ih.ins_deel_statedate + 1), 'YYYY-MM-DD'),
TO_CHAR (SYSDATE, 'YYYY-MM-DD')
FROM ins_deel i, ins_deel_state_history ih
WHERE i.ins_srtdeel_key IN (61, 62, 63)
AND i.ins_deel_externnr IS NOT NULL
AND i.ins_deel_key = ih.ins_deel_key
GROUP BY (i.ins_deel_key, i.ins_deel_externnr)
UNION ALL
SELECT i.ins_deel_key,
i.ins_deel_externnr,
TO_CHAR (SYSDATE - 365, 'YYYY-MM-DD'),
TO_CHAR (SYSDATE, 'YYYY-MM-DD')
FROM ins_deel i, ins_deel_state_history ih
WHERE i.ins_srtdeel_key IN (61, 62, 63)
AND i.ins_deel_externnr IS NOT NULL
AND NOT EXISTS
(SELECT 'x'
FROM ins_deel_state_history ih
WHERE ih.ins_deel_key = i.ins_deel_key)
GROUP BY (i.ins_deel_key, i.ins_deel_externnr);
CREATE OR REPLACE VIEW brcf_v_groendus_meetwaarden
(
deel_key,
locatie_omschrjving,
fclt_3d_locatie_key,
type,
jaar,
jaarmaand,
maand,
jaarweek,
week,
dag,
datum,
meetwaarde
)
AS
SELECT i.ins_deel_key,
l.alg_locatie_omschrijving,
l.alg_locatie_key,
DECODE (i.ins_srtdeel_key,
61, 'Elektriciteit',
62, 'Water',
63, 'Gas',
NULL)
TYPE,
TO_CHAR (ih.ins_deel_statedate, 'YYYY') jaar,
TO_CHAR (ih.ins_deel_statedate, 'YYYY-MM') jaarmaand,
TO_CHAR (ih.ins_deel_statedate, 'MONTH') maand,
TO_CHAR (ih.ins_deel_statedate, 'IYYY-IW') jaarweek,
TO_CHAR (ih.ins_deel_statedate, 'WW') week,
TO_CHAR (ih.ins_deel_statedate, 'DD-MM-YYYY') dag,
ih.ins_deel_statedate datum,
fac.safe_to_number (ih.ins_deel_state) waarde
FROM ins_deel i,
ins_deel_state_history ih,
alg_locatie l,
alg_gebouw g,
alg_verdieping v,
alg_ruimte r
WHERE i.ins_srtdeel_key IN (61, 62, 63)
AND i.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 i.ins_deel_key = ih.ins_deel_key;
CREATE OR REPLACE PROCEDURE brcf_processemail
(pfrom IN VARCHAR2,
pto IN VARCHAR2,