diff --git a/CAD/CAD_VIE.SRC b/CAD/CAD_VIE.SRC index d9784afe..fc712c11 100644 --- a/CAD/CAD_VIE.SRC +++ b/CAD/CAD_VIE.SRC @@ -631,10 +631,12 @@ AS GROUP BY rar.alg_ruimte_key UNION SELECT alg_ruimte_key, alg_ruimte_nr - FROM alg_ruimte r, ins_deel - WHERE ins_alg_ruimte_key = alg_ruimte_key - AND ins_alg_ruimte_type = 'R' - AND ins_deel_state IS NOT NULL + FROM alg_ruimte r, ins_deel d, ins_srtdeel sd + WHERE d.ins_alg_ruimte_key = r.alg_ruimte_key + AND d.ins_alg_ruimte_type = 'R' + AND d.ins_deel_state IS NOT NULL + AND d.ins_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtgroep_key = fac.getSetting('ins_occupationsensors_srtgroep_key') AND NOT EXISTS (SELECT '' FROM res_alg_ruimte WHERE alg_ruimte_key = r.alg_ruimte_key); @@ -721,11 +723,13 @@ CREATE_VIEW(cad_v_thema_ruimtesensor,0) ) AS SELECT r.alg_ruimte_key alg_ruimte_key, initcap(d.ins_deel_state) status - FROM alg_ruimte r, ins_deel d + FROM alg_ruimte r, ins_deel d, ins_srtdeel sd 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_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtgroep_key = fac.getSetting('ins_occupationsensors_srtgroep_key') AND d.ins_deel_state IS NOT NULL; -- Kleurenthema dat reserveringen en actuele bezetting weergeeft @@ -741,14 +745,15 @@ AS SELECT r.alg_ruimte_key, DECODE ( INITCAP (d.ins_deel_state), - 'Uit', -- als de sensor uit is kijken we naar de reservering + '0', -- 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') + NULL, '0', -- als er geen reservering gescheduled staat is de status uit + DECODE (eerste10min, 1, '1', 'NoShow')), -- in de eerste 10 minuten v/d reservering melden we nog geen noshow + '1') status FROM alg_ruimte r, ins_deel d, + ins_srtdeel sd, (SELECT rr2a.res_reservering_key, rr2a.alg_ruimte_key, CASE WHEN (SYSDATE - res_rsv_ruimte_van > 10 / 1440) @@ -764,13 +769,15 @@ AS 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_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtgroep_key = fac.getSetting('ins_occupationsensors_srtgroep_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')) + DECODE (r2a.res_reservering_key, NULL, '0', '1')) FROM alg_v_aanwezigruimte r, alg_srtruimte sr, (SELECT rr2a.res_reservering_key, rr2a.alg_ruimte_key @@ -788,10 +795,12 @@ AS AND r.alg_ruimte_key = rr.alg_ruimte_key(+) AND NOT EXISTS (SELECT r.alg_ruimte_key - FROM ins_deel d + FROM ins_deel d, ins_srtdeel sd 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_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtgroep_key = fac.getSetting('ins_occupationsensors_srtgroep_key') AND d.ins_deel_state IS NOT NULL); CREATE_VIEW(cad_v_thema_wpsensor,0) @@ -801,11 +810,13 @@ CREATE_VIEW(cad_v_thema_wpsensor,0) ) AS SELECT wp.prs_werkplek_key prs_werkplek_key, initcap(d.ins_deel_state) status - FROM prs_werkplek wp, ins_deel d + FROM prs_werkplek wp, ins_deel d, ins_srtdeel sd WHERE d.ins_deel_verwijder IS NULL AND wp.prs_werkplek_virtueel = 0 AND d.ins_alg_ruimte_type = 'W' AND d.ins_alg_ruimte_key = wp.prs_werkplek_key + AND d.ins_srtdeel_key = sd.ins_srtdeel_key + AND sd.ins_srtgroep_key = fac.getSetting('ins_occupationsensors_srtgroep_key') AND d.ins_deel_state IS NOT NULL; REGISTERRUN('$Id$') diff --git a/FAC/FAC_SET.SRC b/FAC/FAC_SET.SRC index 4b35caf6..eda9496c 100644 --- a/FAC/FAC_SET.SRC +++ b/FAC/FAC_SET.SRC @@ -384,6 +384,7 @@ DEFINE_SETTING('INS', 0009, 'ins_image_path' , 'string' DEFINE_SETTING('INS', 0003, 'ins_fg_remote_maps' , 'string' , '' , 'URL. if not empty use Google Maps instead of FG if x,y coordinates of an object are available') DEFINE_SETTING('INS', 0003, 'ins_inspect_soon_days' , 'number' , '30' , 'Days margin for needs inspection ''soon''') DEFINE_SETTING('INS', 0003, 'ins_flex_uitgifte_empty' , 'number' , '0' , 'Flexvelden die geen meetwaarden zijn leeg maken bij uitgifte {0=no (default) | 1=yes}') +DEFINE_SETTING('INS', 0003, 'ins_occupationsensors_srtgroep_key' , 'number' , '-1' , 'INS_SRTGROEP_KEY of sensor objects to be used for occupation/availability') DEFINE_SETTING('PRS', 0001, 'badgenum_kenmerk_key' , 'number' , '-1' , 'PRS_KENMERK_KEY of property badge number') DEFINE_SETTING('QVW', 0001, 'qvw_enabled' , 'number' , '0' , 'Number of licensed Qlikview users {0 | n}') DEFINE_SETTING('QVW', 0001, 'qvw_ajaxzfcpath' , 'string' , 'https://qv.facilitor.nl/QvAjaxZfc/', 'Root prefix to QlikView Analyzer Zero Footprint Client (must end with /)') diff --git a/_UP/DB22to23.src b/_UP/DB22to23.src index dc7fc508..68fdbc05 100644 --- a/_UP/DB22to23.src +++ b/_UP/DB22to23.src @@ -101,7 +101,14 @@ ALTER TABLE res_ruimte ADD res_ruimte_info_url VARCHAR2(1000); ALTER TABLE prs_perslid MODIFY prs_perslid_voorletters VARCHAR2(15); ALTER TABLE fac_imp_perslid MODIFY prs_perslid_voorletters VARCHAR2(15); -/////////////////////////////////////////////////////////////////////////////////////////// +/////////////////////////////////////////////////////////////////////////////////////////// FSN#30278 +ALTER TRIGGER ins_t_ins_deel_B_IU DISABLE; +UPDATE ins_deel SET ins_deel_state = 1 WHERE UPPER (ins_deel_state) = 'AAN'; +UPDATE ins_deel SET ins_deel_state = 0 WHERE UPPER (ins_deel_state) = 'UIT'; +ALTER TRIGGER ins_t_ins_deel_B_IU ENABLE; + +UPDATE ins_deel_state_history SET ins_deel_state = 1 WHERE UPPER(ins_deel_state) = 'AAN'; +UPDATE ins_deel_state_history SET ins_deel_state = 0 WHERE UPPER(ins_deel_state) = 'UIT'; /////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////// GENERAL