diff --git a/SGGR/sggr.sql b/SGGR/sggr.sql index f3683e7fc..ca83af34e 100644 --- a/SGGR/sggr.sql +++ b/SGGR/sggr.sql @@ -3912,6 +3912,89 @@ AS AND p.prs_perslid_key = t.prs_perslid_key --- 21 = MLDACP AND sn.fac_srtnotificatie_key = 21; + +-- Ruimteviews voor sensoren met -1 als geen sensor +-- gebaseerd op srtdeel_code=TEMP +CREATE OR REPLACE FORCE VIEW sggr_v_thema_alg_temp +( + alg_ruimte_key, + waarde +) +AS + SELECT ins_alg_ruimte_key alg_ruimte_key, + AVG (fac.safe_to_number (REPLACE (ins_deel_state, ',', '.'))) waarde + FROM ins_deel d, ins_srtdeel sd + WHERE ins_deel_verwijder IS NULL + AND COALESCE (ins_deel_vervaldatum, SYSDATE + 1) > SYSDATE + AND d.ins_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtdeel_code = 'TEMP' + GROUP BY ins_alg_ruimte_key + UNION + SELECT alg_ruimte_key, -1 waarde + FROM alg_ruimte + WHERE alg_ruimte_verwijder IS NULL + AND alg_ruimte_key NOT IN + (SELECT ii.ins_alg_ruimte_key + FROM ins_deel ii, ins_srtdeel jj + WHERE ii.ins_deel_verwijder IS NULL + AND COALESCE (ii.ins_deel_vervaldatum, SYSDATE + 1) > SYSDATE + AND ii.ins_srtdeel_key = jj.ins_srtdeel_key + AND jj.ins_srtdeel_code = 'TEMP'); + +-- gebaseerd op srtdeel_code=CO2 +CREATE OR REPLACE FORCE VIEW sggr_v_thema_alg_c02 +( + alg_ruimte_key, + waarde +) +AS + SELECT ins_alg_ruimte_key alg_ruimte_key, + AVG (fac.safe_to_number (REPLACE (ins_deel_state, ',', '.'))) waarde + FROM ins_deel d, ins_srtdeel sd + WHERE ins_deel_verwijder IS NULL + AND COALESCE (ins_deel_vervaldatum, SYSDATE + 1) > SYSDATE + AND d.ins_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtdeel_code = 'CO2' + GROUP BY ins_alg_ruimte_key + UNION + SELECT alg_ruimte_key, -1 waarde + FROM alg_ruimte + WHERE alg_ruimte_verwijder IS NULL + AND alg_ruimte_key NOT IN + (SELECT ii.ins_alg_ruimte_key + FROM ins_deel ii, ins_srtdeel jj + WHERE ii.ins_deel_verwijder IS NULL + AND COALESCE (ii.ins_deel_vervaldatum, SYSDATE + 1) > SYSDATE + AND ii.ins_srtdeel_key = jj.ins_srtdeel_key + AND jj.ins_srtdeel_code = 'CO2'); + + +CREATE OR REPLACE FORCE VIEW sggr_v_thema_alg_bezetting +( + alg_ruimte_key, + waarde +) +AS + SELECT ins_alg_ruimte_key alg_ruimte_key, MAX (DECODE (ins_deel_state, 'True', 1, 0)) waarde + FROM ins_deel d, ins_srtdeel sd + WHERE ins_deel_verwijder IS NULL + AND COALESCE (ins_deel_vervaldatum, SYSDATE + 1) > SYSDATE + AND d.ins_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtgroep_key = fac.getsetting ('ins_occupationsensors_srtgroep_key') + GROUP BY ins_alg_ruimte_key + UNION + SELECT alg_ruimte_key, -1 waarde + FROM alg_ruimte + WHERE alg_ruimte_verwijder IS NULL + AND alg_ruimte_key NOT IN + (SELECT ii.ins_alg_ruimte_key + FROM ins_deel ii, ins_srtdeel jj + WHERE ii.ins_deel_verwijder IS NULL + AND COALESCE (ii.ins_deel_vervaldatum, SYSDATE + 1) > SYSDATE + AND ii.ins_srtdeel_key = jj.ins_srtdeel_key + AND jj.ins_srtgroep_key = + fac.getsetting ('ins_occupationsensors_srtgroep_key')); + ------ payload end ------ SET DEFINE OFF