84 lines
2.9 KiB
SQL
84 lines
2.9 KiB
SQL
-- Script containing customer specific db-configuration for PHBF.
|
|
-- (c) 2014 SG|facilitor bv
|
|
--
|
|
-- Support: +31 53 4800700
|
|
set echo on
|
|
spool xphbf.lst
|
|
|
|
/* Formatted on 2-3-2010 21:00:14 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW phbf_v_thema_vloerafw
|
|
(
|
|
alg_ruimte_key,
|
|
waarde,
|
|
waarde_key
|
|
)
|
|
AS
|
|
SELECT a.alg_ruimte_key,
|
|
COALESCE (b.vloerafw, '[Onbekend]'),
|
|
COALESCE (b.vloerafw_key, -1)
|
|
FROM (SELECT r.alg_ruimte_key
|
|
FROM alg_v_aanwezigruimte r) a
|
|
LEFT JOIN
|
|
(SELECT ok.alg_onrgoed_key,
|
|
ud.fac_usrdata_omschr vloerafw,
|
|
ud.fac_usrdata_key vloerafw_key
|
|
FROM alg_onrgoedkenmerk ok, fac_usrdata ud
|
|
WHERE ok.alg_kenmerk_key = 1020 -- Vloerafwerking
|
|
AND ok.alg_onrgoed_niveau = 'R'
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL
|
|
AND ok.alg_onrgoedkenmerk_waarde =
|
|
ud.fac_usrdata_key) b
|
|
ON a.alg_ruimte_key = b.alg_onrgoed_key
|
|
UNION ALL
|
|
SELECT NULL,
|
|
ud.fac_usrdata_omschr vloerafw,
|
|
ud.fac_usrdata_key vloerafw_key
|
|
FROM fac_usrdata ud
|
|
WHERE ud.fac_usrtab_key = 21
|
|
AND NOT EXISTS
|
|
(SELECT 1
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_kenmerk_key = 1020 -- Vloerafwerking
|
|
AND ok.alg_onrgoedkenmerk_waarde =
|
|
ud.fac_usrdata_key);
|
|
|
|
/* Formatted on 28-3-2014 15:48:12 (QP5 v5.136.908.31019) */
|
|
CREATE OR REPLACE TRIGGER phbf_t_thema_vloerafw_i_iu
|
|
INSTEAD OF INSERT OR UPDATE
|
|
ON phbf_v_thema_vloerafw
|
|
BEGIN
|
|
IF UPDATING -- oude hard weggooien; dus DELETE (lekker opruimen)!
|
|
THEN
|
|
DELETE FROM alg_onrgoedkenmerk
|
|
WHERE alg_kenmerk_key = 1020 -- Vloerafwerking
|
|
AND alg_onrgoed_key = :new.alg_ruimte_key
|
|
AND alg_onrgoedkenmerk_waarde <> TO_CHAR (:new.waarde_key);
|
|
END IF;
|
|
|
|
BEGIN
|
|
IF :new.waarde_key <> -1
|
|
THEN
|
|
INSERT INTO alg_onrgoedkenmerk (alg_onrgoed_key,
|
|
alg_onrgoed_niveau,
|
|
alg_kenmerk_key,
|
|
alg_onrgoedkenmerk_waarde)
|
|
VALUES (:new.alg_ruimte_key,
|
|
'R',
|
|
1020,
|
|
TO_CHAR (:new.waarde_key));
|
|
END IF;
|
|
EXCEPTION
|
|
WHEN DUP_VAL_ON_INDEX -- was al aanwezig
|
|
THEN
|
|
NULL;
|
|
END;
|
|
END;
|
|
/
|
|
|
|
BEGIN adm.systrackscriptId('$Id$', 0); END;
|
|
/
|
|
BEGIN fac.registercustversion('PHBF', 0); END;
|
|
/
|
|
COMMIT;
|
|
spool off
|