SQLS perl compatible

svn path=/Database/trunk/; revision=8977
This commit is contained in:
Jos Groot Lipman
2005-05-04 15:08:28 +00:00
parent f376db5305
commit 0cb76e05b0

View File

@@ -10,14 +10,53 @@
CREATE_TRIGGER(bez_t_bez_afspraak_B_IU)
BEFORE INSERT OR UPDATE ON bez_afspraak
FOR EACH ROW
DECLARE dummy AS NUMBER;
BEGIN
UPDATE_PRIMARY_KEY(bez_afspraak_key,bez_s_bez_afspraak_key);
IF :new.bez_afspraak_contact_key IS NULL THEN :new.bez_afspraak_contact_key := :new.prs_perslid_key; END IF;
IF :new.bez_afspraak_host_key IS NULL AND :new.bez_afspraak_gastheer IS NULL THEN :new.bez_afspraak_host_key := :new.bez_afspraak_contact_key; END IF;
IF :new.bez_afspraak_host_key IS NOT NULL THEN SELECT SUBSTR(prs_perslid_naam_full,1,50) INTO :new.bez_afspraak_gastheer FROM prs_v_perslid_fullnames_all WHERE prs_perslid_key=:new.bez_afspraak_host_key; END IF;
IF :new.alg_onrgoed_keys IS NOT NULL THEN SELECT SUBSTR(alg_plaatsaanduiding,1,30) INTO :new.bez_afspraak_ruimte FROM alg_v_plaatsaanduiding_all WHERE alg_onroerendgoed_keys=:new.alg_onrgoed_keys AND alg_onroerendgoed_type<> 'L'; END IF;
dummy := :new.bez_afspraak_key;
IF :new.bez_afspraak_contact_key IS NULL AND :new.prs_perslid_key IS NOT NULL THEN
#ifdef MS_SQL
update bez_afspraak set bez_afspraak_contact_key = prs_perslid_key
where bez_afspraak_key = @new__bez_afspraak_key;
#else
:new.bez_afspraak_contact_key := :new.prs_perslid_key;
#endif
END IF;
IF :new.bez_afspraak_host_key IS NULL AND :new.bez_afspraak_gastheer IS NULL THEN
#ifdef MS_SQL
update bez_afspraak set bez_afspraak_host_key = bez_afspraak_contact_key
where bez_afspraak_key = @new__bez_afspraak_key;
#else
:new.bez_afspraak_host_key := :new.bez_afspraak_contact_key;
#endif
END IF;
IF :new.bez_afspraak_host_key IS NOT NULL THEN
#ifdef MS_SQL
update bez_afspraak set bez_afspraak_gastheer =
(select SUBSTRING(prs_perslid_naam_full,1,50) FROM prs_v_perslid_fullnames_all WHERE prs_perslid_key=:new.bez_afspraak_host_key)
where bez_afspraak_key = @new__bez_afspraak_key;
#else
SELECT SUBSTR(prs_perslid_naam_full,1,50)
INTO :new.bez_afspraak_gastheer FROM prs_v_perslid_fullnames_all
WHERE prs_perslid_key=:new.bez_afspraak_host_key;
#endif
END IF;
IF :new.alg_onrgoed_keys IS NOT NULL THEN
#ifdef MS_SQL
update bez_afspraak set bez_afspraak_ruimte =
(select SUBSTRING(alg_plaatsaanduiding,1,30) FROM alg_v_plaatsaanduiding_all WHERE alg_onroerendgoed_keys=:new.alg_onrgoed_keys)
where bez_afspraak_key = @new__bez_afspraak_key;
#else
SELECT SUBSTR(alg_plaatsaanduiding,1,30)
INTO :new.bez_afspraak_ruimte FROM alg_v_plaatsaanduiding_all
WHERE alg_onroerendgoed_keys=:new.alg_onrgoed_keys AND alg_onroerendgoed_type<> 'L';
#endif
END IF;
END;
/
/
CREATE_TRIGGER(bez_t_bez_bezoekers_B_IU)
BEFORE INSERT OR UPDATE ON bez_bezoekers