Files
Customer/onces/AA/AAIT/RuimteSensor.sql
Peter Koerhuis 3b8d7f1dcc Migratie once-scripts van /branch naar /onces
svn path=/Customer/; revision=21207
2014-04-02 13:57:31 +00:00

61 lines
2.7 KiB
SQL

CREATE OR REPLACE VIEW cad_v_thema_srtruimtesensor
(
alg_ruimte_key,
waarde
)
AS
-- zalen met een sensor
SELECT r.alg_ruimte_key,
DECODE (
INITCAP (d.ins_deel_state),
'Uit', -- als de sensor uit is kijken we naar de reservering
DECODE (r2a.res_reservering_key,
NULL, 'Uit', -- als er geen reservering gescheduled staat is de status uit
DECODE (eerste10min, 1, 'Aan', 'NoShow')), -- in de eerste 10 minuten v/d reservering melden we nog geen noshow
'Aan')
status
FROM alg_ruimte r,
ins_deel d,
(SELECT r2a.*,
DECODE (TRUNC ( (SYSDATE - res_rsv_ruimte_van) / 144),
0, 1,
0)
eerste10min
FROM res_v_rsv_ruimte_2_alg_ruimte r2a
WHERE res_rsv_ruimte_dirtlevel = 0
AND r2a.res_alg_ruimte_verwijder IS NULL
AND r2a.res_rsv_ruimte_van < SYSDATE
AND r2a.res_rsv_ruimte_tot > SYSDATE) r2a
WHERE r.alg_ruimte_verwijder IS NULL
AND d.ins_deel_verwijder IS NULL
AND d.ins_alg_ruimte_type = 'R'
AND d.ins_alg_ruimte_key = r.alg_ruimte_key
AND d.ins_deel_state IS NOT NULL
AND r.alg_ruimte_key = r2a.alg_ruimte_key(+)
UNION ALL -- en dan de ruimten zonder sensor
SELECT r.alg_ruimte_key,
DECODE (rr.res_ruimte_key, -- is dit een vergaderruimte?
NULL, '*' || sr.alg_srtruimte_omschrijving,
DECODE (r2a.res_reservering_key, NULL, 'Uit', 'Aan'))
FROM alg_v_aanwezigruimte r,
alg_srtruimte sr,
(SELECT r2a.*
FROM res_v_rsv_ruimte_2_alg_ruimte r2a
WHERE res_rsv_ruimte_dirtlevel = 0
AND r2a.res_alg_ruimte_verwijder IS NULL
AND r2a.res_rsv_ruimte_van < SYSDATE
AND r2a.res_rsv_ruimte_tot > SYSDATE) r2a,
( SELECT alg_ruimte_key, MAX (res_ruimte_key) res_ruimte_key
FROM res_alg_ruimte
WHERE res_alg_ruimte_verwijder IS NULL
GROUP BY alg_ruimte_key) rr
WHERE r.alg_srtruimte_key = sr.alg_srtruimte_key(+)
AND r.alg_ruimte_key = r2a.alg_ruimte_key(+)
AND r.alg_ruimte_key = rr.alg_ruimte_key(+)
AND NOT EXISTS
(SELECT r.alg_ruimte_key
FROM ins_deel d
WHERE d.ins_deel_verwijder IS NULL
AND d.ins_alg_ruimte_type = 'R'
AND d.ins_alg_ruimte_key = r.alg_ruimte_key
AND d.ins_deel_state IS NOT NULL);