1352 lines
48 KiB
Plaintext
1352 lines
48 KiB
Plaintext
SPOOL 123to124
|
|
|
|
/*
|
|
* [V:\SQL\_UPDATE]
|
|
*
|
|
* Update script van versie 01.23 naar 01.24
|
|
*
|
|
* Dit script wordt geprecompileerd dus is het mogelijk (verplicht)
|
|
* om #ifdef's te gebruiken voor de diverse modules.
|
|
*
|
|
* History:
|
|
*
|
|
* --- 01.24 ---
|
|
* 04-12-96 AH Controle op MLD_ADRES + MLD_M172 toegevoegd
|
|
* 04-12-96 AH PRS_M059 + BCO_M113 + MLD_T_MLD_OPDR_B_D aangepast.
|
|
* 03-12-96 AH BCO_M147 toegevoegd en BCO_M116/118/120/122 aangepast
|
|
* 03-12-96 AH ControleerGoedJaarweek toegevoegd en gebruik in NIETWERKBAAR
|
|
* en NIETBESCHIK toegevoegd
|
|
* 03-12-96 AH BCO_COMMENTAAR krijgt primary key
|
|
* 03-12-96 AH BCO_V_CORROPDR_BEDRIJF aangepast. Bij bestekken gaat het om
|
|
* Contractbedrijven ipv. UitvoerendeBedrijven.
|
|
* BCO_V_PERSLID_CORROPDR aangepast Naam voor Voorletters
|
|
* BCP_V_PERSLID aangepast. Naam voor Voorletters
|
|
* 03-12-96 AH BCO_M136, BCP_M076 aangepast
|
|
* 03-12-96 AH BCP_V_PREVOPDR_GEGEVENS aangepast.
|
|
* 03-12-96 AH MLD_BESTELREGEL aangepast
|
|
* 02-12-96 AH MLD_M124, BCO_M126 en 127 aangepast, PRS_SRTBEDRIJF toegevoegd
|
|
* 02-12-96 AH BCO_NIETBESCHIK_UREN aangepast.
|
|
* 29-11-96 AH Extra velden voor BEBIS en Entities en messages toegevoegd.
|
|
* En schermen toegevoegd in FAC_FORM
|
|
* 27-11-96 AH LOG#1081: BCP_M119-120 toegevoegd, BCP_T_BCP_TAAK_B_IU-verwijder-
|
|
* controle weggehaald.
|
|
* 27-11-96 AH LOG#1068: UNIQUE op BCO_NIETBESCHIK en trigger aangepast
|
|
* 26-11-96 AH LOG#1080: Functie BepaalEinWeek toegevoegd
|
|
* 26-11-96 AH LOG#1080: BCO_V_CORROPDR_ORDER aangemaakt voor de ordering op
|
|
* eindweek in de planning
|
|
* 26-11-96 AH LOG#1079: BCP_M110 - BCP_M118, BCO_M139 - 145 toegevoegd
|
|
* 25-11-96 AH LOG#1074: BCO_M138 toegevoegd
|
|
* 22-11-96 AH LOG#1073: MLD_ADRES-table toegevoegd en MLD_BESTELOPDR-adressen
|
|
* 22-11-96 AH LOG#1073: MLD_S_MLD_ADRES_KEY toegevoegd
|
|
* 22-11-96 AH LOG#1073: MLD022 en MLD122 toegevoegd voor BCO
|
|
* 22-11-96 AH LOG#1073: MLD_ADRES entities en messages toegevoegd
|
|
* 21-11-96 AH LOG#1072: Verwijderen MLD_OPDR mag ook werkregels en bestelregels
|
|
* verwijderen, om consistentie met BCP_PREVOPDR
|
|
* BCP_M109 toegevoegd
|
|
* 20-11-96 AH LOG#1069: BCP_V_PREVOPDR_BEDRIJF aangepast voor Bestek en
|
|
* zijn Contractbedrijf, BCP_V_DEFAULTUITV aangepast.
|
|
* 20-11-96 AH LOG#1066: BCP_V_HISTORISCH_OVZ aangepast, BCP_PREVOPDR_KEY
|
|
* toegevoegd
|
|
* 20-11-96 AH LOG#1066: MLD_OPDR_KEY toegevoegd in MLD_V_OVZ
|
|
* 19-11-96 AH LOG#1057: BCO_M126 en 127 aangepast
|
|
* 19-11-96 PF Update van fac_module toegevoegd
|
|
* 19-11-96 AH LOG#1034: BCP_M108 toegevoegd
|
|
* --- 01.23 ---
|
|
*/
|
|
|
|
#include <modules.h>
|
|
#include <comsql.h>
|
|
PROMPT Upgrading van versie 123 naar 124...
|
|
|
|
DEF_FAC_MESSAGE ('BCP_M108', '%1% uitgegeven preventieve opdrachten zijn weer ingetrokken');
|
|
|
|
|
|
|
|
|
|
|
|
UPDATE fac_module SET fac_module_version='01.24*',
|
|
fac_module_date=to_char(sysdate, 'YYYYMMDD');
|
|
|
|
DELETE FROM fac_message
|
|
WHERE fac_message_code IN ('BCO_M126',
|
|
'BCO_M127');
|
|
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M126', 'Totale uren moet groter zijn dan de preventieve uren plus de storingsuren');
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M127', 'Totale uren moet groter zijn dan de correctieve uren plus de storingsuren');
|
|
#ifdef MLD
|
|
CREATE_VIEW(MLD_V_OVZ,NORMAAL_PRIVILEGE) (ALG_LOCATIE_KEY, ALG_LOCATIE_OMSCHRIJVING,
|
|
ALG_ONRGOED_KEY, ALG_GEBOUW_KEY,
|
|
ALG_TERREINSECTOR_KEY, ALG_ONRGOED_OMSCHRIJVING,
|
|
INS_DISCIPLINE_KEY, INS_DISCIPLINE_OMSCHRIJVING,
|
|
INS_SRTGROEP_KEY, INS_SRTGROEP_OMSCHRIJVING,
|
|
MLD_UITVOERENDE_KEYS, MLD_UITVOERENDE_OMSCHRIJVING,
|
|
MLD_MELDING_KEY, MLD_OPDR_KEY, MLD_OPDR_DATUMUITGEVOERD,
|
|
MLD_OPDR_WERKZAAMHEDEN, MLD_UREN, MLD_MATERIAAL,
|
|
MLD_KOSTEN, MLD_OPDR_MODULE,
|
|
MLD_TYPEOPDR_KEY,
|
|
MLD_TYPEOPDR_OMSCHRIJVING
|
|
#ifdef MRA
|
|
, MRA_HFDCATEGORIE_KEY, MRA_HFDCATEGORIE_OMSCHRIJVING,
|
|
MRA_SRTGROEPVERV_KEY, MRA_SRTGROEPVERV_OMSCHRIJVING
|
|
#endif
|
|
) AS
|
|
SELECT ALG_L.ALG_LOCATIE_KEY,
|
|
ALG_L.ALG_LOCATIE_OMSCHRIJVING,
|
|
MLD_OL.ALG_ONROERENDGOED_KEYS,
|
|
MLD_OL.ALG_GEBOUW_KEY,
|
|
MLD_OL.ALG_TERREINSECTOR_KEY,
|
|
MLD_OL.ALG_ONRGOED_OMSCHRIJVING,
|
|
#ifdef INS
|
|
INS_D.INS_DISCIPLINE_KEY,
|
|
INS_D.INS_DISCIPLINE_OMSCHRIJVING,
|
|
INS_D.INS_SRTGROEP_KEY,
|
|
INS_D.INS_SRTGROEP_OMSCHRIJVING,
|
|
#else
|
|
to_number(NULL),
|
|
NULL,
|
|
to_number(NULL),
|
|
NULL,
|
|
#endif
|
|
MLD_U.KEY,
|
|
MLD_U.NAAM,
|
|
MLD_M.MLD_MELDING_KEY,
|
|
MLD_O.MLD_OPDR_KEY,
|
|
MLD_O.MLD_OPDR_DATUMUITGEVOERD,
|
|
MLD_O.MLD_OPDR_WERKZAAMHEDEN,
|
|
MLD_O.MLD_OPDR_UREN,
|
|
MLD_O.MLD_OPDR_MATERIAAL,
|
|
MLD_O.MLD_OPDR_KOSTEN,
|
|
MLD_O.MLD_OPDR_MODULE,
|
|
MLD_T.MLD_TYPEOPDR_KEY,
|
|
MLD_T.MLD_TYPEOPDR_OMSCHRIJVING
|
|
#ifdef MRA
|
|
, MRA_H.MRA_HFDCATEGORIE_KEY,
|
|
MRA_H.MRA_HFDCATEGORIE_OMSCHRIJVING,
|
|
MRA_SGV.MRA_SRTGROEPVERV_KEY,
|
|
MRA_SGV.MRA_SRTGROEPVERV_OMSCHRIJVING
|
|
#endif
|
|
FROM MLD_OPDR MLD_O,
|
|
MLD_MELDING MLD_M,
|
|
MLD_V_ONROERENDGOED_LOCATIE MLD_OL,
|
|
ALG_LOCATIE ALG_L,
|
|
#ifdef INS
|
|
INS_V_SRTINST_DISCIPLINE INS_D,
|
|
#endif
|
|
MLD_V_UITVOERENDE MLD_U,
|
|
MLD_STATUSOPDR MLD_S,
|
|
MLD_TYPEOPDR MLD_T
|
|
#ifdef MRA
|
|
, MRA_CATEGORIE MRA_C,
|
|
MRA_HFDCATEGORIE MRA_H,
|
|
MRA_SRTDEELVERV MRA_SDV,
|
|
MRA_SRTGROEPVERV MRA_SGV
|
|
#endif
|
|
WHERE MLD_O.MLD_MELDING_KEY = MLD_M.MLD_MELDING_KEY
|
|
AND MLD_M.MLD_ALG_ONROERENDGOED_KEYS = MLD_OL.ALG_ONROERENDGOED_KEYS
|
|
AND MLD_OL.alg_locatie_key = ALG_L.alg_locatie_key
|
|
AND MLD_O.MLD_UITVOERENDE_KEYS = MLD_U.KEY
|
|
AND MLD_O.MLD_STATUSOPDR_KEY = MLD_S.MLD_STATUSOPDR_KEY
|
|
AND MLD_S.MLD_STATUSOPDR_OMSCHRIJVING = 'Verwerkt'
|
|
AND MLD_O.MLD_TYPEOPDR_KEY = MLD_T.MLD_TYPEOPDR_KEY
|
|
#ifdef INS
|
|
AND MLD_M.MLD_INS_SRTINST_KEYS = INS_D.INS_SRTINST_KEYS (+)
|
|
#endif
|
|
#ifdef MRA
|
|
AND MLD_M.MRA_CATEGORIE_KEY = MRA_C.MRA_CATEGORIE_KEY (+)
|
|
AND MRA_C.MRA_HFDCATEGORIE_KEY = MRA_H.MRA_HFDCATEGORIE_KEY (+)
|
|
AND MLD_M.MRA_SRTDEELVERV_KEY = MRA_SDV.MRA_SRTDEELVERV_KEY (+)
|
|
AND MRA_SDV.MRA_SRTGROEPVERV_KEY = MRA_SGV.MRA_SRTGROEPVERV_KEY (+)
|
|
#endif
|
|
;
|
|
#endif // MLD
|
|
#ifdef BCP
|
|
CREATE_VIEW(bcp_v_historisch_ovz,NORMAAL_PRIVILEGE)
|
|
(alg_locatie_key, alg_locatie_omschrijving,
|
|
alg_onrgoed_key, alg_gebouw_key,
|
|
alg_terreinsector_key, alg_onrgoed_omschrijving,
|
|
ins_discipline_key, ins_discipline_omschrijving,
|
|
ins_srtgroep_key, ins_srtgroep_omschrijving,
|
|
bcp_mld_uitvoerende_keys, mld_uitvoerende_omschrijving,
|
|
bcp_prevopdr_key, bcp_prevopdr_datumgereed,
|
|
bcp_prevopdr_werkzaamheden, bcp_uren, bcp_materiaal,
|
|
bcp_kosten) AS
|
|
SELECT ALG_L.alg_locatie_key,
|
|
ALG_L.alg_locatie_omschrijving,
|
|
MLD_OL.alg_onroerendgoed_keys,
|
|
MLD_OL.alg_gebouw_key,
|
|
MLD_OL.alg_terreinsector_key,
|
|
MLD_OL.alg_onrgoed_omschrijving,
|
|
INS_D.ins_discipline_key,
|
|
INS_D.ins_discipline_omschrijving,
|
|
INS_SG.ins_srtgroep_key,
|
|
INS_SG.ins_srtgroep_omschrijving,
|
|
MLD_U.key,
|
|
MLD_U.naam,
|
|
BCP_P.bcp_prevopdr_key,
|
|
BCP_P.bcp_prevopdr_datumgereed,
|
|
BCP_P.bcp_prevopdr_werkzaamheden,
|
|
BCP_P.bcp_prevopdr_uren,
|
|
BCP_P.bcp_prevopdr_materiaal,
|
|
BCP_P.bcp_prevopdr_kosten
|
|
FROM bcp_prevopdr BCP_P,
|
|
mld_v_uitvoerende MLD_U,
|
|
bcp_taak bcp_T,
|
|
bcp_verzamel BCP_V,
|
|
ins_srtdeel INS_SD,
|
|
ins_srtgroep INS_SG,
|
|
ins_discipline INS_D,
|
|
mld_v_onroerendgoed_locatie MLD_OL,
|
|
alg_locatie ALG_L,
|
|
mld_statusopdr MLD_S
|
|
WHERE BCP_T.bcp_alg_gebouw_key = MLD_OL.alg_onroerendgoed_keys
|
|
AND MLD_OL.alg_locatie_key = ALG_L.alg_locatie_key
|
|
AND BCP_P.bcp_mld_uitvoerende_keys = MLD_U.key
|
|
AND BCP_P.bcp_mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND MLD_S.mld_statusopdr_omschrijving = 'Verwerkt'
|
|
AND BCP_P.bcp_taak_key= BCP_T.bcp_taak_key
|
|
AND BCP_T.bcp_verzamel_key = BCP_V.bcp_verzamel_key
|
|
AND BCP_V.bcp_ins_srtdeel_key = INS_SD.ins_srtdeel_key
|
|
AND INS_SD.ins_srtgroep_key = INS_SG.ins_srtgroep_key
|
|
AND INS_SG.ins_discipline_key = INS_D.ins_discipline_key;
|
|
|
|
CREATE_VIEW(bcp_v_defaultuitv,NORMAAL_PRIVILEGE) (bcp_bco_defaultuitv_key,
|
|
naam,
|
|
type) AS
|
|
SELECT key, naam, type
|
|
FROM bco_v_defaultuitv;
|
|
|
|
CREATE_VIEW(bcp_v_prevopdr_bedrijf,NORMAAL_PRIVILEGE)
|
|
(bcp_uitv_omschrijving,
|
|
bcp_bedrijf_omschrijving,
|
|
bcp_mld_uitvoerende_keys,
|
|
prs_bedrijf_key,
|
|
bcp_prevopdr_somuren,
|
|
bcp_locatiegroep_key,
|
|
bcp_prevopdr_week) AS
|
|
SELECT PRS_S.prs_srtperslid_omschrijving,
|
|
PRS_U.prs_bedrijf_naam,
|
|
PRS_S.prs_srtperslid_key,
|
|
PRS_U.prs_bedrijf_key,
|
|
BCP_S.bcp_prevopdr_somuren,
|
|
BCP_O.bco_locatiegroep_key,
|
|
BCP_P.bcp_prevopdr_week
|
|
FROM prs_v_uitvoerendebedrijf PRS_U,
|
|
prs_srtperslid PRS_S,
|
|
bcp_v_aanwezigprevopdr BCP_P,
|
|
bcp_v_aanwezigtaak BCP_T,
|
|
bcp_v_onrgoed_op_locgroep BCP_O,
|
|
bcp_v_prevopdr_somuren BCP_S
|
|
WHERE BCP_P.bcp_taak_key = BCP_T.bcp_taak_key AND
|
|
BCP_T.bcp_alg_gebouw_key = BCP_O.alg_onrgoed_key AND
|
|
BCP_O.bco_locatiegroep_key = BCP_S.bcp_locatiegroep_key AND
|
|
BCP_P.bcp_prevopdr_week = BCP_S.bcp_prevopdr_week AND
|
|
BCP_P.bcp_mld_uitvoerende_keys = BCP_S.bcp_mld_uitvoerende_keys AND
|
|
BCP_P.bcp_mld_uitvoerende_keys = PRS_S.prs_srtperslid_key AND
|
|
PRS_U.prs_bedrijf_key = PRS_S.prs_bedrijf_key
|
|
UNION
|
|
SELECT PRS_E.prs_bestek_omschrijving,
|
|
PRS_U.prs_bedrijf_naam,
|
|
PRS_D.prs_disciplinebestek_key,
|
|
PRS_U.prs_bedrijf_key,
|
|
BCP_S.bcp_prevopdr_somuren,
|
|
BCP_O.bco_locatiegroep_key,
|
|
BCP_P.bcp_prevopdr_week
|
|
FROM prs_v_contractbedrijf PRS_U,
|
|
prs_disciplinebestek PRS_D,
|
|
prs_bestek PRS_E,
|
|
bcp_v_aanwezigprevopdr BCP_P,
|
|
bcp_v_aanwezigtaak BCP_T,
|
|
bcp_v_onrgoed_op_locgroep BCP_O,
|
|
bcp_v_prevopdr_somuren BCP_S
|
|
WHERE BCP_P.bcp_taak_key = BCP_T.bcp_taak_key AND
|
|
BCP_T.bcp_alg_gebouw_key = BCP_O.alg_onrgoed_key AND
|
|
BCP_O.bco_locatiegroep_key = BCP_S.bcp_locatiegroep_key AND
|
|
BCP_P.bcp_prevopdr_week = BCP_S.bcp_prevopdr_week AND
|
|
BCP_P.bcp_mld_uitvoerende_keys = BCP_S.bcp_mld_uitvoerende_keys AND
|
|
BCP_P.bcp_mld_uitvoerende_keys = PRS_D.prs_disciplinebestek_key AND
|
|
PRS_D.prs_bestek_key = PRS_E.prs_bestek_key AND
|
|
PRS_U.prs_bedrijf_key = PRS_E.prs_bedrijf_key
|
|
UNION
|
|
SELECT NULL,
|
|
PRS_U.prs_bedrijf_naam,
|
|
PRS_U.prs_bedrijf_key,
|
|
PRS_U.prs_bedrijf_key,
|
|
BCP_S.bcp_prevopdr_somuren,
|
|
BCP_O.bco_locatiegroep_key,
|
|
BCP_P.bcp_prevopdr_week
|
|
FROM prs_v_uitvoerendebedrijf PRS_U,
|
|
bcp_v_aanwezigprevopdr BCP_P,
|
|
bcp_v_aanwezigtaak BCP_T,
|
|
bcp_v_onrgoed_op_locgroep BCP_O,
|
|
bcp_v_prevopdr_somuren BCP_S
|
|
WHERE BCP_P.bcp_taak_key = BCP_T.bcp_taak_key AND
|
|
BCP_T.bcp_alg_gebouw_key = BCP_O.alg_onrgoed_key AND
|
|
BCP_O.bco_locatiegroep_key = BCP_S.bcp_locatiegroep_key AND
|
|
BCP_P.bcp_prevopdr_week = BCP_S.bcp_prevopdr_week AND
|
|
BCP_P.bcp_mld_uitvoerende_keys = BCP_S.bcp_mld_uitvoerende_keys AND
|
|
BCP_P.bcp_mld_uitvoerende_keys = PRS_U.prs_bedrijf_key;
|
|
|
|
CREATE OR REPLACE TRIGGER bcp_t_bcp_prevopdr_b_d
|
|
BEFORE DELETE ON bcp_prevopdr
|
|
FOR EACH ROW
|
|
BEGIN
|
|
/* Een verwerkte opdracht mag niet verwijderd worden */
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM mld_statusopdr MLD_S
|
|
WHERE :old.bcp_mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND MLD_S.mld_statusopdr_omschrijving = 'Verwerkt';
|
|
APPLICATION_ERROR(-20002, 'mld_m135');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
END;
|
|
/* Een opdracht die voorkomt op een werkregel mag NU OOK verwijderd worden.
|
|
*/
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
DELETE FROM bco_werkregel
|
|
WHERE bcp_mld_opdr_key = :old.bcp_prevopdr_key;
|
|
END;
|
|
/* Een opdracht komt nog voor in een bestelopdracht, mag NU OOK verwijderd worden.
|
|
*/
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
DELETE FROM mld_bestelregel
|
|
WHERE bcp_mld_opdr_key = :old.bcp_prevopdr_key;
|
|
END;
|
|
END;
|
|
/
|
|
#endif // BCP
|
|
|
|
#ifdef MLD
|
|
CREATE OR REPLACE TRIGGER mld_t_mld_opdr_b_d
|
|
BEFORE DELETE ON mld_opdr
|
|
FOR EACH ROW
|
|
BEGIN
|
|
/* Een verwerkte opdracht mag niet verwijderd worden */
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM mld_statusopdr MLD_S
|
|
WHERE :old.mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND MLD_S.mld_statusopdr_omschrijving = 'Verwerkt';
|
|
APPLICATION_ERROR(-20002, 'mld_m135');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
END;
|
|
#ifdef BCO
|
|
/* Een opdracht die voorkomt op een werkregel mag NU OOK verwijderd worden.
|
|
*/
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
DELETE FROM bco_werkregel
|
|
WHERE bcp_mld_opdr_key = :old.mld_opdr_key;
|
|
END;
|
|
#endif
|
|
/* Een opdracht komt nog voor in een bestelopdracht, mag NU OOK verwijderd worden.
|
|
*/
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
DELETE FROM mld_bestelregel
|
|
WHERE bcp_mld_opdr_key = :old.mld_opdr_key;
|
|
END;
|
|
END;
|
|
/
|
|
|
|
#endif
|
|
DEF_FAC_MESSAGE ('BCP_M109', 'Preventieve opdracht %1% kan niet verwijderd worden.');
|
|
DEF_FAC_FORM('MLD022', NULL, NULL ,'210220','MLD_MLD022','Overzichtscherm Adres');
|
|
DEF_FAC_FORM('MLD122', NULL, NULL ,'211220','MLD_MLD122','Mutatiescherm Adres');
|
|
DEF_FAC_MESSAGE ('MLD_M164', 'Factuuradres');
|
|
DEF_FAC_MESSAGE ('MLD_M165', 'Opdrachtgeveradres');
|
|
DEF_FAC_MESSAGE ('MLD_M166', 'Afleveradres');
|
|
DEF_FAC_MESSAGE ('MLD_M167', 'Verwijderen adres');
|
|
DEF_FAC_MESSAGE ('MLD_M168', 'Verwijderen adres %1%?');
|
|
DEF_FAC_MESSAGE ('MLD_M169', 'Factuuradres is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('MLD_M170', 'Opdrachtgeveradres is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('MLD_M171', 'Afleveradres is niet ingevuld.');
|
|
DEF_FAC_ENTITY ('MLD_ADRES', 'Adres', 'Adressen', 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_NAAM', 'Naam', 'Namen', 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_BEZOEK', 'Bezoek', NULL, 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_BEZOEK_ADRES', 'Adres', 'Adressen', 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_GEBOUW_RUIMTE', 'Gebouw/Ruimte', , 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_BEZOEK_POSTCODE', 'Postcode', NULL, 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_BEZOEK_PLAATS', 'Plaats', 'Plaatsen', 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_BEZOEK_LAND', 'Land', 'Landen', 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_POST', 'Post', NULL, 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_POST_ADRES', 'Adres', 'Adressen', 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_POST_POSTCODE', 'Postcode', NULL, 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_POST_PLAATS', 'Plaats', 'Plaatsen', 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_POST_LAND', 'Land', 'Landen', 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_CONTACTPERSOON', 'Contactpersoon', NULL, 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_CONTACTPERS_TELEFOON', 'Telefoon', NULL, 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_CONTACTPERS_FAX', 'Fax', NULL, 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_CONTACTPERS_BUREAU', 'Bureau', NULL, 'het');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_TELEFOON', 'Telefoon', NULL, 'de');
|
|
DEF_FAC_ENTITY ('MLD_ADRES_FAX', 'Fax', NULL, 'de');
|
|
DEF_FAC_ENTITY ('MLD_BESTELOPDR_OPDRGEVER', 'Opdrachtgever', NULL, 'de');
|
|
DEF_FAC_ENTITY ('MLD_BESTELOPDR_AANVRAGER', 'Aanvrager', NULL, 'de');
|
|
|
|
#ifdef MLD
|
|
CREATE_TABLE(mld_adres, NORMAAL_PRIVILEGE)
|
|
(
|
|
mld_adres_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
mld_adres_naam
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
mld_adres_upper
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
mld_adres_bezoek_adres
|
|
VARCHAR2(35),
|
|
mld_adres_bezoek_postcode
|
|
VARCHAR2(12),
|
|
mld_adres_bezoek_plaats
|
|
VARCHAR2(30),
|
|
mld_adres_bezoek_land
|
|
VARCHAR2(30),
|
|
mld_adres_post_adres
|
|
VARCHAR2(35),
|
|
mld_adres_gebouw_ruimte
|
|
VARCHAR2(30),
|
|
mld_adres_post_postcode
|
|
VARCHAR2(12),
|
|
mld_adres_post_plaats
|
|
VARCHAR2(30),
|
|
mld_adres_post_land
|
|
VARCHAR2(30),
|
|
mld_adres_contactpersoon
|
|
VARCHAR2(30),
|
|
mld_adres_contactpers_telefoon
|
|
VARCHAR2(15),
|
|
mld_adres_contactpers_fax
|
|
VARCHAR2(15),
|
|
mld_adres_contactpers_bureau
|
|
VARCHAR2(20),
|
|
mld_adres_telefoon
|
|
VARCHAR2(15),
|
|
mld_adres_fax
|
|
VARCHAR2(15),
|
|
mld_adres_factuuradres
|
|
NUMBER(1)
|
|
CHECK(mld_adres_factuuradres IS NULL
|
|
OR mld_adres_factuuradres = 1),
|
|
mld_adres_opdrachtadres
|
|
NUMBER(1)
|
|
CHECK(mld_adres_opdrachtadres IS NULL
|
|
OR mld_adres_opdrachtadres = 1),
|
|
mld_adres_afleveradres
|
|
NUMBER(1)
|
|
CHECK(mld_adres_afleveradres IS NULL
|
|
OR mld_adres_afleveradres = 1)
|
|
);
|
|
|
|
ALTER TABLE mld_bestelopdr
|
|
ADD
|
|
(
|
|
mld_bestelopdr_factuuradres
|
|
NUMBER(10)
|
|
REFERENCES mld_adres(mld_adres_key),
|
|
mld_bestelopdr_afleveradres
|
|
NUMBER(10)
|
|
REFERENCES mld_adres(mld_adres_key)
|
|
);
|
|
|
|
CREATE SEQUENCE mld_s_mld_adres_key MINVALUE 1;
|
|
|
|
CREATE TRIGGER mld_t_mld_adres_B_IU
|
|
BEFORE INSERT OR UPDATE ON mld_adres
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(mld_adres_key, mld_s_mld_adres_key);
|
|
UPDATE_UPPER(mld_adres_naam, mld_adres_upper);
|
|
END;
|
|
/
|
|
#endif // MLD
|
|
DEF_FAC_MESSAGE ('BCO_M138', 'Er moeten 4 niet werkbare weken aangegeven worden.');
|
|
DEF_FAC_MESSAGE ('BCP_M110', 'Aanmaken preventieve weekplanning');
|
|
DEF_FAC_MESSAGE ('BCP_M111', 'Taken worden bijgewerkt');
|
|
DEF_FAC_MESSAGE ('BCP_M112', 'Nieuwe preventieve opdrachten worden aangemaakt');
|
|
DEF_FAC_MESSAGE ('BCP_M113', 'Preventieve opdrachten worden bijgewerkt');
|
|
DEF_FAC_MESSAGE ('BCP_M114', 'Bedrijven worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCP_M115', 'Bestekken worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCP_M116', 'Functies bij bedrijven worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCP_M117', 'Personeelsleden worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCP_M118', 'Preventieve planning voltooid.');
|
|
DEF_FAC_MESSAGE ('BCO_M139', 'Aanmaken correctieve weekplanning');
|
|
DEF_FAC_MESSAGE ('BCO_M140', 'Correctieve opdrachten worden bijgewerkt');
|
|
DEF_FAC_MESSAGE ('BCO_M141', 'Bedrijven worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCO_M142', 'Bestekken worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCO_M143', 'Functies bij bedrijven worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCO_M144', 'Personeelsleden worden ingepland');
|
|
DEF_FAC_MESSAGE ('BCO_M145', 'Correctieve planning voltooid.');
|
|
|
|
#ifdef BCO
|
|
/* Bepaal de JAARWEEK van Jaarweek + aantak_weken, rekening houdend met
|
|
* jaargrenzen. Er wordt geen rekening gehouden met BCO_NIETWERKBAAR.
|
|
*/
|
|
CREATE OR REPLACE FUNCTION BCO_BepaalEindWeek(jaarweek IN NUMBER, weken IN NUMBER) RETURN NUMBER
|
|
IS
|
|
jaar NUMBER;
|
|
week NUMBER;
|
|
aantal_weken NUMBER;
|
|
eind_jaarweek NUMBER;
|
|
BEGIN
|
|
jaar := TO_NUMBER(SUBSTR(TO_CHAR(jaarweek), 1, 4));
|
|
week := TO_NUMBER(SUBSTR(TO_CHAR(jaarweek), 5, 2));
|
|
/* Bepaal het maximum aantal weken van het opgegeven jaar.
|
|
* Als 31-december in week 1 valt, dan zijn er 52 weken in het opgegeven
|
|
* jaar. Anders zijn er 53 weken in het opgegeven jaar.
|
|
*/
|
|
aantal_weken := to_number(to_char(to_date('31-12-'||TO_CHAR(jaar), 'DD-MM-YYYY'), 'IW'));
|
|
IF aantal_weken = 1
|
|
THEN
|
|
aantal_weken := 52;
|
|
END IF;
|
|
week := week + weken;
|
|
/* Als het nieuwe weeknummer over het aantal weken heen gaat
|
|
* moet het jaar 1 groter worden en weeknr kleiner worden
|
|
*/
|
|
IF week > aantal_weken
|
|
THEN
|
|
jaar := jaar + 1;
|
|
week := week - aantal_weken;
|
|
END IF;
|
|
eind_jaarweek := TO_NUMBER(LTRIM(TO_CHAR(jaar, '0999'))||LTRIM(TO_CHAR(week,'09')));
|
|
RETURN eind_jaarweek;
|
|
END;
|
|
/
|
|
CREATE_VIEW(bco_v_corropdr_order, NORMAAL_PRIVILEGE)
|
|
(mld_opdr_key,
|
|
mld_opdr_module,
|
|
bco_opdr_eindweek) AS
|
|
SELECT mld_opdr_key,
|
|
mld_opdr_module,
|
|
BCO_BepaalEindWeek(bco_opdr_weekingave, (mld_opdr_dagen/7))
|
|
FROM mld_opdr
|
|
WHERE mld_opdr_module = 'BCO';
|
|
|
|
|
|
ALTER TABLE bco_nietbeschik
|
|
ADD
|
|
UNIQUE(bco_prs_perslid_key, bco_nietbeschik_week, bco_nietbeschik_datum);
|
|
|
|
CREATE OR REPLACE TRIGGER bco_t_bco_nietbeschik_B_IU
|
|
BEFORE INSERT OR UPDATE ON bco_nietbeschik
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(bco_nietbeschik_key, bco_s_bco_nietbeschik_key);
|
|
IF NOT :new.bco_nietbeschik_datum IS NULL
|
|
THEN
|
|
:new.bco_nietbeschik_datum := TRUNC(:new.bco_nietbeschik_datum);
|
|
END IF;
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER bcp_t_bcp_taak_B_IU
|
|
BEFORE INSERT OR UPDATE ON bcp_taak
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(bcp_taak_key, bcp_s_bcp_taak_key);
|
|
END;
|
|
/
|
|
#endif // BCO
|
|
DEF_FAC_MESSAGE ('BCP_M119', 'Preventieve opdracht %1% verwijderd.');
|
|
DEF_FAC_MESSAGE ('BCP_M120', 'Preventieve opdracht %1% kan niet verwijderd worden.');
|
|
DELETE FROM fac_entity_name
|
|
WHERE fac_entity_system_name = 'MLD_BESTELOPDR_BCO_LETTER';
|
|
|
|
INSERT INTO FAC_ENTITY_NAME VALUES('MLD_BESTELOPDR_BCO_LETTER', NULL, NULL, NULL);
|
|
|
|
#ifdef ALG
|
|
ALTER TABLE alg_regio
|
|
ADD
|
|
(
|
|
alg_regio_land
|
|
VARCHAR2(15),
|
|
alg_regio_tekening
|
|
VARCHAR2(32)
|
|
);
|
|
|
|
ALTER TABLE alg_district
|
|
ADD
|
|
(
|
|
alg_district_code
|
|
VARCHAR2(1)
|
|
#ifdef BEB
|
|
NOT NULL
|
|
#endif
|
|
,
|
|
alg_district_acadkey
|
|
VARCHAR2(10)
|
|
);
|
|
|
|
ALTER TABLE alg_locatie
|
|
ADD
|
|
(
|
|
alg_locatie_gemeente
|
|
VARCHAR2(30),
|
|
alg_locatie_provincie
|
|
VARCHAR2(15),
|
|
alg_locatie_oppervlak
|
|
NUMBER(10,2),
|
|
alg_locatie_omtrek
|
|
NUMBER(8,2)
|
|
);
|
|
|
|
|
|
ALTER TABLE alg_objectdeel
|
|
(
|
|
alg_objectdeel_code
|
|
VARCHAR2(5)
|
|
NOT NULL,
|
|
alg_objectdeel_acadkey
|
|
VARCHAR2(10),
|
|
alg_objectdeel_oppervlak
|
|
NUMBER(10,2),
|
|
alg_objectdeel_omtrek
|
|
NUMBER(8,2)
|
|
);
|
|
|
|
|
|
ALTER TABLE alg_systeemcluster
|
|
(
|
|
alg_systeemcluster_code
|
|
VARCHAR2(5)
|
|
NOT NULL,
|
|
alg_systeemcluster_acadkey
|
|
VARCHAR2(10),
|
|
alg_systeemcluster_oppervlak
|
|
NUMBER(10,2),
|
|
alg_systeemcluster_omtrek
|
|
NUMBER(8,2)
|
|
);
|
|
|
|
ALTER TABLE alg_gebouw
|
|
ADD
|
|
(
|
|
alg_gebouw_omtrek
|
|
NUMBER(8,2)
|
|
);
|
|
|
|
CREATE_TABLE(alg_srtterrein,NORMAAL_PRIVILEGE)
|
|
(
|
|
alg_srtterrein_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
alg_srtterrein_omschrijving
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
alg_srtterrein_upper
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
alg_srtterrein_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
alg_srtterrein_verwijder
|
|
DATE
|
|
DEFAULT NULL,
|
|
UNIQUE(alg_srtterrein_upper, alg_srtterrein_verwijder)
|
|
);
|
|
|
|
ALTER TABLE alg_terreinsector
|
|
ADD
|
|
(
|
|
alg_srtterrein_key
|
|
NUMBER(10)
|
|
REFERENCES alg_srtterrein(alg_srtterrein_key),
|
|
alg_terreinsector_acadkey
|
|
VARCHAR2(10),
|
|
alg_terreinsector_oppervlak
|
|
NUMBER(10,2),
|
|
alg_terreinsector_omtrek
|
|
NUMBER(8,2),
|
|
alg_terreinsector_opmerking
|
|
VARCHAR2(50)
|
|
);
|
|
|
|
ALTER TABLE alg_bouwdeel
|
|
(
|
|
alg_bouwdeel_code
|
|
VARCHAR2(2)
|
|
NOT NULL
|
|
);
|
|
|
|
CREATE_TABLE(alg_srtverdieping,NORMAAL_PRIVILEGE)
|
|
(
|
|
alg_srtverdieping_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
alg_srtverdieping_omschrijving
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
alg_srtverdieping_upper
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
alg_srtverdieping_volgnr
|
|
NUMBER(3)
|
|
NOT NULL,
|
|
alg_srtverdieping_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
alg_srtverdieping_verwijder
|
|
DATE
|
|
DEFAULT NULL,
|
|
UNIQUE(alg_srtverdieping_volgnr, alg_srtverdieping_verwijder)
|
|
);
|
|
|
|
ALTER TABLE alg_verdieping
|
|
ADD
|
|
(
|
|
alg_srtverdieping_key
|
|
NUMBER(10)
|
|
REFERENCES alg_srtverdieping(alg_srtverdieping_key)
|
|
#ifdef BEB
|
|
NOT NULL
|
|
#endif
|
|
);
|
|
|
|
ALTER TABLE alg_ruimte
|
|
ADD
|
|
(
|
|
alg_ruimte_omtrek
|
|
NUMBER(8,2)
|
|
);
|
|
|
|
CREATE SEQUENCE alg_s_alg_srtterrein_key MINVALUE 1;
|
|
CREATE SEQUENCE alg_s_alg_srtverdieping_key MINVALUE 1;
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_regio, alg_regio_verwijder,
|
|
alg_v_aanwezigregio,NORMAAL_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_district, alg_district_verwijder,
|
|
alg_v_aanwezigdistrict,NORMAAL_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_locatie, alg_locatie_verwijder,
|
|
alg_v_aanweziglocatie,NORMAAL_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_srtgebouw, alg_srtgebouw_verwijder,
|
|
alg_v_aanwezigsrtgebouw,BIBLIOTHEEK_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_gebouw, alg_gebouw_verwijder,
|
|
alg_v_aanweziggebouw,NORMAAL_PRIVILEGE) AND
|
|
alg_locatie_key IN (SELECT alg_locatie_key
|
|
FROM alg_v_aanweziglocatie);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_verdieping, alg_verdieping_verwijder,
|
|
alg_v_aanwezigverdieping,NORMAAL_PRIVILEGE) AND
|
|
alg_gebouw_key IN (SELECT alg_gebouw_key
|
|
FROM alg_v_aanweziggebouw);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_srtruimte, alg_srtruimte_verwijder,
|
|
alg_v_aanwezigsrtruimte,BIBLIOTHEEK_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_ruimte, alg_ruimte_verwijder,
|
|
alg_v_aanwezigruimte,NORMAAL_PRIVILEGE) AND
|
|
alg_verdieping_key IN (SELECT alg_verdieping_key
|
|
FROM alg_v_aanwezigverdieping);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_terreinsector, alg_terreinsector_verwijder,
|
|
alg_v_aanwezigterreinsector,NORMAAL_PRIVILEGE) AND
|
|
alg_locatie_key IN (SELECT alg_locatie_key
|
|
FROM alg_v_aanweziglocatie);
|
|
DEFINIEER_VIEW_AANWEZIG(alg_objectdeel, alg_objectdeel_verwijder,
|
|
alg_v_aanwezigobjectdeel,NORMAAL_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_systeemcluster, alg_systeemcluster_verwijder,
|
|
alg_v_aanwezigsysteemcluster,NORMAAL_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_bouwdeel, alg_bouwdeel_verwijder,
|
|
alg_v_aanwezigbouwdeel,NORMAAL_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_srtterrein, alg_srtterrein_verwijder,
|
|
alg_v_aanwezigsrtterrein,NORMAAL_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(alg_srtverdieping, alg_srtverdieping_verwijder,
|
|
alg_v_aanwezigsrtverdieping,NORMAAL_PRIVILEGE);
|
|
|
|
CREATE OR REAPLCE TRIGGER alg_t_alg_district_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_district
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_district_key, alg_s_alg_district_key);
|
|
UPDATE_UPPER(alg_district_code, alg_district_code);
|
|
UPDATE_UPPER(alg_district_omschrijving, alg_district_upper);
|
|
SET_VERWIJDER_CHILDREN(alg_locatie, alg_district_key, alg_district_verwijder, alg_locatie_verwijder);
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER alg_t_alg_terreinsector_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_terreinsector
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_terreinsector_key, alg_s_alg_onroerendgoed_keys);
|
|
:new.alg_terreinsector_omschrijving := SUBSTRB(:new.alg_terreinsector_code ||' - '|| :new.alg_terreinsector_naam,1,30);
|
|
UPDATE_UPPER(alg_terreinsector_code,alg_terreinsector_upper);
|
|
#ifdef MRA
|
|
IF :new.alg_terreinsector_verwijder IS NOT NULL
|
|
THEN
|
|
DELETE FROM mra_onrgoedvoorschr
|
|
WHERE mra_onroerendgoed_keys = :old.alg_terreinsector_key;
|
|
DELETE FROM mra_onrgoedbestemming
|
|
WHERE mra_onroerendgoed_keys = :old.alg_terreinsector_key;
|
|
END IF;
|
|
#endif // MRA
|
|
#ifdef INS
|
|
SET_VERWIJDER_CHILDREN_DEEL(ins_deel, alg_terreinsector_key,
|
|
alg_terreinsector_verwijder, ins_deel_verwijder, ins_alg_ruimte_key);
|
|
#endif // INS
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER alg_t_alg_verdieping_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_verdieping
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_verdieping_key, alg_s_alg_onroerendgoed_keys);
|
|
UPDATE_UPPER(alg_verdieping_omschrijving, alg_verdieping_upper);
|
|
LAAT_RUIMTE_VERVALLEN_VOOR_VERDIEPING('alg_m55');
|
|
#ifdef INS
|
|
SET_VERWIJDER_CHILDREN_DEEL(ins_deel, alg_verdieping_key,
|
|
alg_verdieping_verwijder, ins_deel_verwijder, ins_alg_ruimte_key);
|
|
#endif // INS
|
|
/* Voor BEB: ALG_VERDIEPING_Volgnr = ALG_SRTVERDIEPING_VOLGNR */
|
|
IF NOT :new.alg_srtverdieping_key IS NULL
|
|
THEN
|
|
SELECT alg_srtverdieping_volgnr
|
|
INTO :new.alg_verdieping_volgnr
|
|
FROM alg_srtverdieping
|
|
WHERE alg_srtverdieping_key = :new.alg_srtverdieping_key;
|
|
END IF;
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER alg_t_alg_objectdeel_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_objectdeel
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_objectdeel_key, alg_s_alg_objectdeel_key);
|
|
UPDATE_UPPER(alg_objectdeel_code, alg_objectdeel_code);
|
|
UPDATE_UPPER(alg_objectdeel_omschrijving, alg_objectdeel_upper);
|
|
SET_VERWIJDER_CHILDREN(alg_systeemcluster, alg_objectdeel_key, alg_objectdeel_verwijder,
|
|
alg_systeemcluster_verwijder);
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER alg_t_alg_systeemcluster_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_systeemcluster
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_systeemcluster_key, alg_s_alg_systeemcluster_key);
|
|
UPDATE_UPPER(alg_systeemcluster_code, alg_systeemcluster_code);
|
|
UPDATE_UPPER(alg_systeemclust_omschrijving, alg_systeemcluster_upper);
|
|
CHECK_NOG_REFERENCES(alg_systeemcluster, alg_systeemcluster_verwijder,
|
|
alg_v_aanweziggebouw, alg_systeemcluster_key, 'alg_m182');
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER alg_t_alg_bouwdeel_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_bouwdeel
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_bouwdeel_key, alg_s_alg_bouwdeel_key);
|
|
UPDATE_UPPER(alg_bouwdeel_code, alg_bouwdeel_code);
|
|
UPDATE_UPPER(alg_bouwdeel_omschrijving, alg_bouwdeel_upper);
|
|
CHECK_NOG_REFERENCES(alg_bouwdeel, alg_bouwdeel_verwijder,
|
|
alg_v_aanwezigverdieping, alg_bouwdeel_key, 'alg_m183');
|
|
END;
|
|
/
|
|
|
|
CREATE TRIGGER alg_t_alg_srtterrein_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_srtterrein
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_srtterrein_key, alg_s_alg_srtterrein_key);
|
|
UPDATE_UPPER(alg_srtterrein_omschrijving, alg_srtterrein_upper);
|
|
CHECK_NOG_REFERENCES(alg_srtterrein, alg_srtterrein_verwijder,
|
|
alg_v_aanwezigterreinsector, alg_srtterrein_key, 'alg_m196');
|
|
END;
|
|
/
|
|
|
|
CREATE TRIGGER alg_t_alg_srtverdieping_B_IU
|
|
BEFORE INSERT OR UPDATE ON alg_srtverdieping
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(alg_srtverdieping_key, alg_s_alg_srtverdieping_key);
|
|
UPDATE_UPPER(alg_srtverdieping_omschrijving, alg_srtverdieping_upper);
|
|
CHECK_NOG_REFERENCES(alg_srtverdieping, alg_srtverdieping_verwijder,
|
|
alg_v_aanwezigverdieping, alg_srtverdieping_key, 'alg_m204');
|
|
END;
|
|
/
|
|
|
|
#endif
|
|
DEF_FAC_ENTITY ('ALG_REGIO_LAND', 'Land', 'Landen', 'het');
|
|
DEF_FAC_ENTITY ('ALG_REGIO_TEKENING', 'Tekening', 'Tekeningen', 'de');
|
|
DEF_FAC_ENTITY ('ALG_DISTRICT_CODE', 'Districtcode', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_DISTRICT_ACADKEY', 'Acadkey', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_LOCATIE_GEMEENTE', 'Gemeente', 'Gemeentes', 'de');
|
|
DEF_FAC_ENTITY ('ALG_LOCATIE_PROVINCIE', 'Provincie', 'Provincies', 'de');
|
|
DEF_FAC_ENTITY ('ALG_LOCATIE_ACADKEY', 'Acadkey', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_LOCATIE_OPPERVLAK', 'Oppervlakte', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_LOCATIE_OMTREK', 'Omtrek', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_OBJECTDEEL_CODE', 'Objectdeelcode', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_OBJECTDEEL_ACADKEY', 'Acadkey', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_OBJECTDEEL_OPPERVLAK', 'Oppervlakte', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_OBJECTDEEL_OMTREK', 'Omtrek', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_SYSTEEMCLUSTER_CODE', 'Code', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_SYSTEEMCLUSTER_ACADKEY', 'Acadkey', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_SYSTEEMCLUSTER_OPPERVLAK', 'Oppervlakte', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_SYSTEEMCLUSTER_OMTREK', 'Omtrek', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_GEBOUW_OMTREK', 'Omtrek', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_TERREINSECTOR_ACADKEY', 'Acadkey', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_TERREINSECTOR_OPPERVLAK', 'Oppervlakte', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_TERREINSECTOR_OMTREK', 'Omtrek', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_TERREINSECTOR_OPMERKING', 'Opmerking', NULL, 'de');
|
|
#if defined(BEB)
|
|
DEF_FAC_ENTITY ('ALG_SRTTERREIN', 'Terrein/Werksoort', NULL, 'de');
|
|
#else
|
|
DEF_FAC_ENTITY ('ALG_SRTTERREIN', 'Terreinsectorsoort', NULL, 'de');
|
|
#endif
|
|
DEF_FAC_ENTITY ('ALG_SRTTERREIN_OMSCHRIJVING', 'Omschrijving', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_BOUWDEEL_CODE', 'Bouwdeelcode', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_RUIMTE_OMTREK', 'Omtrek', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_SRTVERDIEPING', 'Verdiepingsoort', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_SRTVERDIEPING_OMSCHRIJVING', 'Omschrijving', NULL, 'de');
|
|
DEF_FAC_ENTITY ('ALG_SRTVERDIEPING_VOLGNR', 'Volgnummer', NULL, 'de');
|
|
|
|
#if defined(BEB)
|
|
DEF_FAC_MESSAGE ('ALG_M196', 'Er zijn nog terreinen/werken gekoppeld aan het terrein/werksoort.');
|
|
#else
|
|
DEF_FAC_MESSAGE ('ALG_M196', 'Er zijn nog terreinsectoren gekoppeld aan het terreinsoort.');
|
|
#endif
|
|
#if defined(BEB)
|
|
DEF_FAC_MESSAGE ('ALG_M197', 'De dienstkringcode is niet ingevuld.');
|
|
#else
|
|
DEF_FAC_MESSAGE ('ALG_M197', 'De districtcode is niet ingevuld.');
|
|
#endif
|
|
#if defined(BEB)
|
|
DEF_FAC_MESSAGE ('ALG_M198', 'Verwijderen Terrein/Werksoort');
|
|
DEF_FAC_MESSAGE ('ALG_M199', 'Verwijderen Terrein/Werksoort %1%?');
|
|
#else
|
|
DEF_FAC_MESSAGE ('ALG_M198', 'Verwijderen Terreinsoort');
|
|
DEF_FAC_MESSAGE ('ALG_M199', 'Verwijderen Terreinsoort %1%?');
|
|
#endif
|
|
DEF_FAC_MESSAGE ('ALG_M200', 'Objectcode is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('ALG_M201', 'Systeemclustercode is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('ALG_M202', 'Bouwdeelcode is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('ALG_M203', 'Omschrijving is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('ALG_M204', 'Er zijn nog verdieping gekoppeld aan de verdiepingsoort.');
|
|
DEF_FAC_MESSAGE ('ALG_M205', 'Omschrijving is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('ALG_M206', 'Volgnummer is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('ALG_M207', 'Verwijderen verdiepingsoort');
|
|
DEF_FAC_MESSAGE ('ALG_M208', 'Verwijderen verdiepingsoort %1%?');
|
|
DEF_FAC_MESSAGE ('ALG_M209', 'Verdiepingsoort is niet ingevuld.');
|
|
|
|
DEF_FAC_MESSAGE ('RMC_M006', 'De garnizoencode is niet ingevuld.');
|
|
|
|
DEF_FAC_FORM('ALG027', NULL, NULL ,'110270','ALG_ALG027','Overzichtscherm Terreinsoort');
|
|
DEF_FAC_FORM('ALG028', NULL, NULL ,'110280','ALG_ALG028','Overzichtscherm Verdiepingsoort');
|
|
DEF_FAC_FORM('ALG127', NULL, NULL ,'111270','ALG_ALG127','Mutatiescherm Terreinsoort');
|
|
DEF_FAC_FORM('ALG128', NULL, NULL ,'111280','ALG_ALG128','Mutatiescherm Verdiepingsoort');
|
|
|
|
#ifdef BCO
|
|
ALTER TABLE bco_nietbeschik
|
|
MODIFY
|
|
(
|
|
bco_nietbeschik_uren
|
|
NUMBER(5,2)
|
|
);
|
|
ALTER TABLE bco_nietbeschik
|
|
ADD
|
|
CHECK(bco_nietbeschik_uren IS NULL OR bco_nietbeschik_uren >= 0);
|
|
#endif
|
|
DELETE FROM fac_message
|
|
WHERE fac_message_code IN ('BCO_M126', 'BCO_M127', 'MLD_M124', 'BCP_M076');
|
|
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M126', 'Totale uren moet groter of gelijk zijn dan de uren preventief en uren storing');
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M127', 'Totale uren moet groter of gelijk zijn dan de uren correctief en uren storing');
|
|
DEF_FAC_MESSAGE ('BCP_M076', 'Preventieve opdracht %1% krijgt opnieuw de status ''%2%''');
|
|
#if defined(MRA)
|
|
DEF_FAC_MESSAGE ('MLD_M124', 'Activiteit of omschrijving is niet ingevuld.');
|
|
#else
|
|
DEF_FAC_MESSAGE ('MLD_M124', 'Opdracht of omschrijving is niet ingevuld.');
|
|
#endif // MRA
|
|
DEF_FAC_ENTITY ('PRS_SRTBEDRIJF', 'Bedrijfsoort', 'Bedrijfsoorten', 'het');
|
|
|
|
#ifdef MLD
|
|
DROP TABLE mld_bestelregel;
|
|
CREATE_TABLE(mld_bestelregel,NORMAAL_PRIVILEGE)
|
|
(
|
|
mld_bestelregel_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
mld_bestelopdr_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES mld_bestelopdr ON DELETE CASCADE,
|
|
bcp_mld_opdr_key
|
|
NUMBER(10)
|
|
UNIQUE,
|
|
mld_bestelregel_omschrijving
|
|
VARCHAR2(320),
|
|
CHECK(bcp_mld_opdr_key IS NOT NULL OR
|
|
mld_bestelregel_omschrijving IS NOT NULL)
|
|
);
|
|
|
|
CREATE TRIGGER mld_t_mld_bestelregel_B_IU
|
|
BEFORE INSERT OR UPDATE ON mld_bestelregel
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(mld_bestelregel_key, mld_s_mld_bestelregel_key);
|
|
IF :new.bcp_mld_opdr_key IS NOT NULL
|
|
THEN
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
dummy := NULL;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM mld_opdr
|
|
WHERE mld_opdr_key = :new.bcp_mld_opdr_key;
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN dummy := NULL;
|
|
END;
|
|
#ifdef BCP
|
|
IF dummy IS NULL
|
|
THEN
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM bcp_prevopdr
|
|
WHERE bcp_prevopdr_key = :new.bcp_mld_opdr_key;
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN dummy := NULL;
|
|
END;
|
|
END IF;
|
|
#endif // BCP
|
|
IF dummy IS NULL
|
|
THEN
|
|
APPLICATION_ERROR(-20000, 'mld_m159');
|
|
END IF;
|
|
END;
|
|
END IF;
|
|
END;
|
|
/
|
|
|
|
#endif
|
|
#ifdef BCP
|
|
CREATE_VIEW(bcp_v_prevopdr_gegevens,NORMAAL_PRIVILEGE)
|
|
(bcp_prevopdr_key,
|
|
bcp_prevopdr_status,
|
|
bcp_prevopdr_status_key,
|
|
bcp_prevopdr_jaarweek,
|
|
bcp_prevopdr_discipline,
|
|
bcp_prevopdr_discipline_key,
|
|
bcp_prevopdr_locatie,
|
|
bcp_prevopdr_locatie_key) AS
|
|
SELECT BCP_P.bcp_prevopdr_key,
|
|
MLD_S.mld_statusopdr_omschrijving,
|
|
MLD_S.mld_statusopdr_key,
|
|
BCP_P.bcp_prevopdr_week,
|
|
INS_D.ins_discipline_omschrijving,
|
|
INS_D.ins_discipline_key,
|
|
ALG_L.alg_locatie_omschrijving,
|
|
ALG_L.alg_locatie_key
|
|
FROM bcp_prevopdr BCP_P,
|
|
mld_statusopdr MLD_S,
|
|
bcp_taak BCP_T,
|
|
bcp_verzamel BCP_V,
|
|
ins_srtdeel INS_SD,
|
|
ins_srtgroep INS_SG,
|
|
ins_discipline INS_D,
|
|
bcp_v_onrgoed_op_locgroep BCP_L,
|
|
alg_locatie ALG_L
|
|
WHERE BCP_P.bcp_mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND BCP_P.bcp_taak_key = BCP_T.bcp_taak_key
|
|
AND BCP_T.bcp_verzamel_key = BCP_V.bcp_verzamel_key
|
|
AND BCP_V.bcp_ins_srtdeel_key = INS_SD.ins_srtdeel_key
|
|
AND INS_SD.ins_srtgroep_key = INS_SG.ins_srtgroep_key
|
|
AND INS_SG.ins_discipline_key = INS_D.ins_discipline_key
|
|
AND BCP_T.bcp_alg_gebouw_key = BCP_L.alg_onrgoed_key
|
|
AND BCP_L.alg_locatie_key = ALG_L.alg_locatie_key;
|
|
#endif
|
|
DELETE FROM fac_message
|
|
WHERE fac_message_code = 'BCO_M136';
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M136', 'Weekplanning niet mogelijk: er zijn opdrachten afgemeld of verwerkt.');
|
|
#ifdef BCO
|
|
CREATE_VIEW(bco_v_corropdr_bedrijf,NORMAAL_PRIVILEGE)
|
|
(bco_uitv_omschrijving,
|
|
bco_bedrijf_omschrijving,
|
|
mld_uitvoerende_keys,
|
|
prs_bedrijf_key,
|
|
mld_opdr_uren,
|
|
bco_locatiegroep_key,
|
|
bco_opdr_weekuitgifte) AS
|
|
SELECT PRS_S.prs_srtperslid_omschrijving,
|
|
PRS_U.prs_bedrijf_naam,
|
|
PRS_S.prs_srtperslid_key,
|
|
PRS_U.prs_bedrijf_key,
|
|
BCO_S.bco_opdr_somuren,
|
|
BCO_S.bco_locatiegroep_key,
|
|
BCO_S.bco_opdr_weekuitgifte
|
|
FROM bco_v_corropdr_somuren BCO_S,
|
|
prs_srtperslid PRS_S,
|
|
prs_v_uitvoerendebedrijf PRS_U
|
|
WHERE BCO_S.mld_uitvoerende_keys = PRS_S.prs_srtperslid_key AND
|
|
PRS_S.prs_bedrijf_key = PRS_U.prs_bedrijf_key
|
|
UNION
|
|
SELECT PRS_E.prs_bestek_omschrijving,
|
|
PRS_U.prs_bedrijf_naam,
|
|
PRS_D.prs_disciplinebestek_key,
|
|
PRS_U.prs_bedrijf_key,
|
|
BCO_S.bco_opdr_somuren,
|
|
BCO_S.bco_locatiegroep_key,
|
|
BCO_S.bco_opdr_weekuitgifte
|
|
FROM bco_v_corropdr_somuren BCO_S,
|
|
prs_v_contractbedrijf PRS_U,
|
|
prs_disciplinebestek PRS_D,
|
|
prs_bestek PRS_E
|
|
WHERE BCO_S.mld_uitvoerende_keys = PRS_D.prs_disciplinebestek_key AND
|
|
PRS_D.prs_bestek_key = PRS_E.prs_bestek_key AND
|
|
PRS_E.prs_bedrijf_key = PRS_U.prs_bedrijf_key
|
|
UNION
|
|
SELECT NULL,
|
|
PRS_U.prs_bedrijf_naam,
|
|
PRS_U.prs_bedrijf_key,
|
|
PRS_U.prs_bedrijf_key,
|
|
BCO_S.bco_opdr_somuren,
|
|
BCO_S.bco_locatiegroep_key,
|
|
BCO_S.bco_opdr_weekuitgifte
|
|
FROM bco_v_corropdr_somuren BCO_S,
|
|
prs_v_uitvoerendebedrijf PRS_U
|
|
WHERE BCO_S.mld_uitvoerende_keys = PRS_U.prs_bedrijf_key;
|
|
|
|
CREATE_VIEW (bco_v_perslid_corropdr,NORMAAL_PRIVILEGE)
|
|
(prs_perslid_key,
|
|
key,
|
|
prs_srtperslid_key,
|
|
naam,
|
|
soort,
|
|
locatiegroep_key,
|
|
bco_locatiegroep_key) AS
|
|
SELECT PRS_P.prs_perslid_key,
|
|
PRS_P.prs_perslid_key,
|
|
PRS_P.prs_srtperslid_key,
|
|
PRS_P.prs_perslid_naam||' '||PRS_P.prs_perslid_voorletters,
|
|
PRS_S.prs_srtperslid_omschrijving,
|
|
PRS_P.bco_locatiegroep_key,
|
|
PRS_P.bco_locatiegroep_key
|
|
FROM prs_v_aanwezigperslid PRS_P,
|
|
prs_v_aanwezigsrtperslid PRS_S
|
|
WHERE PRS_P.prs_srtperslid_key = PRS_S.prs_srtperslid_key;
|
|
|
|
#endif
|
|
#ifdef BCP
|
|
CREATE_VIEW(bcp_v_perslid,NORMAAL_PRIVILEGE) (key,
|
|
naam,
|
|
soort,
|
|
locatiegroep_key) AS
|
|
SELECT P.prs_perslid_key,
|
|
P.prs_perslid_naam||' '||P.prs_perslid_voorletters,
|
|
S.prs_srtperslid_omschrijving,
|
|
P.bco_locatiegroep_key
|
|
FROM prs_v_aanwezigperslid P,
|
|
prs_srtperslid S
|
|
WHERE P.prs_srtperslid_key = S.prs_srtperslid_key;
|
|
|
|
#endif
|
|
#ifdef BCO
|
|
DROP TABLE bco_commentaar;
|
|
CREATE TABLE bco_commentaar
|
|
(
|
|
bco_commentaar_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
bco_commentaar_tijd
|
|
DATE
|
|
DEFAULT SYSDATE,
|
|
bco_commentaar_jaarweek
|
|
NUMBER(6),
|
|
bco_locatiegroep_key
|
|
NUMBER(10),
|
|
bco_commentaar_source
|
|
VARCHAR2(2)
|
|
NOT NULL,
|
|
bco_commentaar_tekst
|
|
VARCHAR2(200)
|
|
NOT NULL,
|
|
bco_commentaar_type
|
|
VARCHAR2(1)
|
|
);
|
|
CREATE SEQUENCE bco_s_bco_commentaar_key MINVALUE 1;
|
|
|
|
|
|
CREATE TRIGGER bco_t_bco_commentaar_B_IU
|
|
BEFORE INSERT OR UPDATE ON bco_commentaar
|
|
FOR EACH ROW
|
|
BEGIN
|
|
IF :new.bco_commentaar_key IS NULL THEN SELECT bco_s_bco_commentaar_key.nextval INTO :new.bco_commentaar_key FROM DUAL; END IF;
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE FUNCTION ControleerGoedJaarweek(jaarweek IN NUMBER) RETURN BOOLEAN
|
|
IS
|
|
jaar NUMBER;
|
|
week NUMBER;
|
|
aantal_weken NUMBER;
|
|
BEGIN
|
|
jaar := TO_NUMBER(SUBSTR(TO_CHAR(jaarweek), 1, 4));
|
|
week := TO_NUMBER(SUBSTR(TO_CHAR(jaarweek), 5, 2));
|
|
/* Bepaal het maximum aantal weken van het opgegeven jaar.
|
|
* Als 31-december in week 1 valt, dan zijn er 52 weken in het opgegeven
|
|
* jaar. Anders zijn er 53 weken in het opgegeven jaar.
|
|
*/
|
|
aantal_weken := to_number(to_char(to_date('31-12-'||TO_CHAR(jaar), 'DD-MM-YYYY'), 'IW'));
|
|
IF aantal_weken = 1
|
|
THEN
|
|
aantal_weken := 52;
|
|
END IF;
|
|
IF week <= aantal_weken
|
|
AND LENGTH(TO_CHAR(jaarweek)) = 6
|
|
AND week > 0
|
|
THEN
|
|
RETURN TRUE;
|
|
ELSE
|
|
RETURN FALSE;
|
|
END IF;
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER bco_t_bco_nietwerkbaar_B_IU
|
|
BEFORE INSERT OR UPDATE ON bco_nietwerkbaar
|
|
FOR EACH ROW
|
|
BEGIN
|
|
IF :new.bco_nietwerkbaar_key IS NULL THEN SELECT bco_s_bco_nietwerkbaar_key.nextval INTO :new.bco_nietwerkbaar_key FROM DUAL; END IF;
|
|
IF (:old.bco_nietwerkbaar_week IS NULL
|
|
OR :old.bco_nietwerkbaar_week <> :new.bco_nietwerkbaar_week)
|
|
AND NOT ControleerGoedJaarweek(:new.bco_nietwerkbaar_week)
|
|
THEN
|
|
raise_application_error(-20000, 'bco_m146');
|
|
END IF;
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER bco_t_bco_nietbeschik_B_IU
|
|
BEFORE INSERT OR UPDATE ON bco_nietbeschik
|
|
FOR EACH ROW
|
|
BEGIN
|
|
IF :new.bco_nietbeschik_key IS NULL THEN SELECT bco_s_bco_nietbeschik_key.nextval INTO :new.bco_nietbeschik_key FROM DUAL; END IF;
|
|
IF (:old.bco_nietbeschik_week IS NULL
|
|
OR :old.bco_nietbeschik_week <> :new.bco_nietbeschik_week)
|
|
AND NOT ControleerGoedJaarweek(:new.bco_nietbeschik_week)
|
|
THEN
|
|
raise_application_error(-20000, 'bco_m146');
|
|
END IF;
|
|
IF NOT :new.bco_nietbeschik_datum IS NULL
|
|
THEN
|
|
:new.bco_nietbeschik_datum := TRUNC(:new.bco_nietbeschik_datum);
|
|
END IF;
|
|
END;
|
|
/
|
|
#endif
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M146', 'De week bestaat niet in het opgegeven jaar.');
|
|
DELETE FROM fac_message
|
|
WHERE fac_message_code IN ('BCO_M116',
|
|
'BCO_M118',
|
|
'BCO_M120',
|
|
'BCO_M122',
|
|
'PRS_M059',
|
|
'BCO_M113');
|
|
|
|
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M116', 'Aantal uitgegeven correctieve opdrachten aan bedrijven: %1%');
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M118', 'Aantal uitgegeven correctieve opdrachten aan bestekken: %1%');
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M120', 'Aantal uitgegeven correctieve opdrachten aan functies bij bedrijven: %1%');
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M122', 'Aantal uitgegeven correctieve opdrachten aan personen: %1%');
|
|
INSERT INTO FAC_MESSAGE VALUES('BCO_M147', 'Maatregel is niet ingevuld.');
|
|
DEF_FAC_MESSAGE ('PRS_M059', 'Functie wordt nog default uitvoerende bij een deelsoort gebruikt.');
|
|
DEF_FAC_MESSAGE ('BCO_M113', 'Correctieve opdracht %1% is ingetrokken, deze is langer dan 2 weken uitgegeven.');
|
|
#ifdef MLD
|
|
CREATE OR REPLACE TRIGGER mld_t_mld_opdr_b_d
|
|
BEFORE DELETE ON mld_opdr
|
|
FOR EACH ROW
|
|
BEGIN
|
|
/* Een verwerkte opdracht mag niet verwijderd worden */
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM mld_statusopdr MLD_S
|
|
WHERE :old.mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND MLD_S.mld_statusopdr_omschrijving = 'Verwerkt';
|
|
APPLICATION_ERROR(-20002, 'mld_m135');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
END;
|
|
#ifdef BCO
|
|
/* Een opdracht die voorkomt op een werkregel mag niet verwijderd worden.
|
|
*/
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM bco_werkregel
|
|
WHERE bcp_mld_opdr_key = :old.mld_opdr_key;
|
|
APPLICATION_ERROR(-20002, 'mld_m158');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
WHEN TOO_MANY_ROWS
|
|
THEN APPLICATION_ERROR(-20002, 'mld_m158');
|
|
END;
|
|
#endif
|
|
/* Een opdracht komt nog voor in een bestelopdracht, mag niet verwijderd worden.
|
|
*/
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM mld_bestelregel
|
|
WHERE bcp_mld_opdr_key = :old.mld_opdr_key;
|
|
APPLICATION_ERROR(-20002, 'mld_m162');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
WHEN TOO_MANY_ROWS
|
|
THEN APPLICATION_ERROR(-20002, 'mld_m162');
|
|
END;
|
|
END;
|
|
/
|
|
|
|
ALTER TABLE mld_adres
|
|
ADD
|
|
CHECK(mld_adres_factuuradres IS NOT NULL
|
|
OR mld_adres_opdrachtadres IS NOT NULL
|
|
OR mld_adres_afleveradres IS NOT NULL);
|
|
#endif
|
|
DEF_FAC_MESSAGE ('MLD_M172', 'Er is geen adrestype opgegeven.');
|
|
|
|
PROMPT Vergeet niet te committen!
|