1518 lines
57 KiB
Plaintext
1518 lines
57 KiB
Plaintext
SPOOL 118to119
|
|
|
|
/*
|
|
* [V:\SQL\_UPDATE]
|
|
*
|
|
* Update script van versie 01.18 naar 01.19
|
|
*
|
|
* Dit script wordt geprecompileerd dus is het mogelijk (verplicht)
|
|
* om #ifdef's te gebruiken voor de diverse modules.
|
|
*
|
|
* History:
|
|
*
|
|
* 21-08-96 AH HUI_V_OVERNACHTING_GEGEVENS aangepast.
|
|
* 20-08-96 AH PER_KWARTAAL en PER_JAAR toegevoegd en BCP_M063 aangepast.
|
|
* MLD_BESTELOPDR_FONDSNR toegevoegd
|
|
* 20-08-96 AH Unique op INS_DEEL aangepast, PRS_BEDRIJF_UURLOON toegevoegd.
|
|
* 16-08-96 AH INS_DEEL en MLD_BESTELOPDR aangepast
|
|
* 15-08-96 AH MLD_BESTELREGEL aangepast: Kolom BCP_MLD_OPDR_KEY toegevoegd.
|
|
* Tevens NOT NULL van MLD_OPDR_KEY gehaald.
|
|
* 15-08-96 AH INS_V_...GEGEVENS aangepast, PRS_V_PRS_DISCLOCBESTEK toegevoegd.
|
|
* 15-08-96 AH BCP_V_METERSTAND_GEGEVENS toegevoegd.
|
|
* 15-08-96 AH BCO_messages en -entities toegevoegd.
|
|
* 15-08-96 AH BCO_DEFECTSRTINST_KEY ipv. BCO_DEFECT_KEY in MLD_OPDR
|
|
* BCO_DEFECTSRTINST krijgt Verwijder-velden.
|
|
* 09-08-96 EH Unique constraint op ins_onderdeel verwijderd.
|
|
* 08-08-96 AH BCO_defaultuitv_keys toegevoegd aan MLD_OPDR
|
|
* 07-08-96 AH BCO_M106 - BCO_M108 toegevoegd
|
|
* 07-08-96 AH BCO_V_BCP_BCO_OPDR_GEGEVENS en BCO_V_BCO_WERKREGEL_GEGEVENS
|
|
* toegevoegd.
|
|
* 06-08-96 AH BCO-entities en messages toegevoegd. MLD_OPDR_AFMELDEN toegevoegd.
|
|
* 05-08-96 AH BCO_WERKREGEL_POSTNR: wordt nu 'Volgnr.'
|
|
* 01-08-96 AH PRS_BESTEK-velden, -triggers en -views toegevoegd.
|
|
* PRS_BESTEK_..._AANMAAK en -VERWIJDER weggehaald.
|
|
* 01-08-96 AH PRS_BESTEK-entities en -messages toegevoegd.
|
|
* 31-07-96 KTH bco_terreinsector_sector aan alg_terreinsector toevoegen
|
|
* 30-07-96 KTH Bestek-tabellen toegevoegd, 3 soorten bedrijven gemaakt
|
|
* met bijbehorende views
|
|
* 29-07-96 AH FAC_SELECTIE_TABEL-veld toegevoegd aan FAC_SELECTIE.
|
|
* Messages 'MSELECT' 'ALG_M159' en 'ALG_M160' toegevoegd.
|
|
* 26-07-96 RW Created, prs_bedrijf toegevoegd aan prs_srtperslid
|
|
*/
|
|
|
|
#ifdef BCO
|
|
/* 31-07-96/KTH ook terreinsectoren moeten nu in een sector vallen */
|
|
ALTER TABLE alg_terreinsector
|
|
ADD
|
|
(
|
|
bco_terreinsector_sector
|
|
NUMBER(2)
|
|
CHECK(bco_terreinsector_sector between 1 AND 16)
|
|
);
|
|
#endif // BCO
|
|
|
|
/*
|
|
* 29-07-96/KTH
|
|
* De tabellen PRS_BESTEK% zijn opgenomen in PRS omdat het waarschijnlijk
|
|
* is dat de gegevens in de toekomst geshared moeten gaan worden met andere
|
|
* modules. Evt. hadden ze ook kunnen staan INS of BCO.
|
|
*
|
|
* Deze tabellen zijn vooralsnog alleen nodig wanneer INS bestaat.
|
|
*/
|
|
|
|
ALTER TABLE prs_bedrijf
|
|
ADD
|
|
(
|
|
prs_bedrijf_leverancier /* bedrijf is leverancier (o.a. voor LEV) */
|
|
NUMBER(1)
|
|
CHECK(prs_bedrijf_leverancier IS NULL OR prs_bedrijf_leverancier = 1 ),
|
|
prs_bedrijf_uitvoerende /* bedrijf is uitvoerende in opdrachten */
|
|
NUMBER(1)
|
|
CHECK(prs_bedrijf_uitvoerende IS NULL OR prs_bedrijf_uitvoerende = 1 ),
|
|
prs_bedrijf_contract /* een contract kan worden afgesloten met bedrijf */
|
|
NUMBER(1)
|
|
CHECK(prs_bedrijf_contract IS NULL OR prs_bedrijf_contract = 1 ),
|
|
);
|
|
|
|
/* 24-07-96/KTH Alle bedrijven die UITVOERENDE zijn */
|
|
DEFINIEER_VIEW_AANWEZIG(prs_bedrijf,
|
|
prs_bedrijf_verwijder,
|
|
prs_v_uitvoerendebedrijf,
|
|
NORMAAL_PRIVILEGE) AND prs_bedrijf_uitvoerende = 1;
|
|
/* 24-07-96/KTH Alle bedrijven die LEVERANCIER zijn */
|
|
DEFINIEER_VIEW_AANWEZIG(prs_bedrijf,
|
|
prs_bedrijf_verwijder,
|
|
prs_v_leverancierbedrijf,
|
|
NORMAAL_PRIVILEGE) AND prs_bedrijf_leverancier = 1;
|
|
/* 24-07-96/KTH Alle bedrijven waamee een CONTRACT kan worden afgesloten */
|
|
DEFINIEER_VIEW_AANWEZIG(prs_bedrijf,
|
|
prs_bedrijf_verwijder,
|
|
prs_v_contractbedrijf,
|
|
NORMAAL_PRIVILEGE) AND prs_bedrijf_contract = 1;
|
|
|
|
#ifdef INS
|
|
/* 29-07-96/KTH Vooralsnog zijn bestekken alleen #ifdef INS */
|
|
|
|
/* prs_bestek_key put uit prs_s_prs_alluitvoerende_keys omdat een
|
|
* bestek ook een uitvoerende kan zijn */
|
|
CREATE SEQUENCE prs_s_prs_disciplinebestek_key MINVALUE 1;
|
|
CREATE SEQUENCE prs_s_prs_locatiebestek_key MINVALUE 1;
|
|
|
|
CREATE_TABLE(prs_bestek,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
prs_bestek_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
prs_bestek_nr
|
|
VARCHAR2(20)
|
|
NOT NULL,
|
|
/* pre_bestek_omschrijving is geen verplicht veld */
|
|
prs_bestek_omschrijving
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
/* het bedrijf waarmee het bestek is overeengekomen */
|
|
prs_bedrijf_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES prs_bedrijf,
|
|
/* de materiaalkosten over het hele bestek, ongeacht discipline */
|
|
prs_bestek_materiaalpost
|
|
NUMBER(9,2)
|
|
NOT NULL
|
|
CHECK(prs_bestek_materiaalpost >= 0),
|
|
/* de ingangsdatum van het bestek */
|
|
prs_bestek_begindatum
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
/* de einddatum van het bestek */
|
|
prs_bestek_einddatum
|
|
DATE
|
|
NOT NULL,
|
|
prs_bestek_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
prs_bestek_verwijder
|
|
DATE
|
|
DEFAULT NULLDATUM,
|
|
/* gebruik in CHECK '<=' omdat een bestek voor 1 dag kan gelden */
|
|
CHECK(prs_bestek_begindatum <= prs_bestek_einddatum),
|
|
UNIQUE(prs_bestek_nr, prs_bestek_verwijder)
|
|
);
|
|
|
|
CREATE_TABLE(prs_disciplinebestek,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
prs_disciplinebestek_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
prs_bestek_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES prs_bestek,
|
|
ins_discipline_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES ins_discipline,
|
|
prs_disciplinebestek_uurprijs
|
|
NUMBER(5,2)
|
|
NOT NULL
|
|
CHECK (prs_disciplinebestek_uurprijs >= 0),
|
|
prs_disciplinebestek_uren
|
|
NUMBER(7,2)
|
|
NOT NULL
|
|
CHECK (prs_disciplinebestek_uren >= 0),
|
|
prs_disciplinebestek_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
prs_disciplinebestek_verwijder
|
|
DATE
|
|
DEFAULT NULLDATUM,
|
|
/* de combinatie bestek-discipline mag maar 1 keer bestaan */
|
|
UNIQUE(prs_bestek_key, ins_discipline_key, prs_disciplinebestek_verwijder)
|
|
);
|
|
|
|
CREATE_TABLE(prs_locatiebestek,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
prs_locatiebestek_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
prs_bestek_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES prs_bestek,
|
|
alg_locatie_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES alg_locatie,
|
|
prs_locatiebestek_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
prs_locatiebestek_verwijder
|
|
DATE
|
|
DEFAULT NULLDATUM,
|
|
/* de combinatie bestek-locatie mag maar 1 keer bestaan */
|
|
UNIQUE(prs_bestek_key, alg_locatie_key, prs_locatiebestek_verwijder)
|
|
);
|
|
|
|
/* 29-07-96/KTH Vooralsnog zijn de bestektriggers alleen #ifdef INS */
|
|
CREATE TRIGGER prs_t_prs_bestek_B_IU
|
|
BEFORE INSERT OR UPDATE ON prs_bestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
/* een bestek is ook een uitvoerende: prs_s_prs_alluitvoerende_keys */
|
|
UPDATE_PRIMARY_KEY(prs_bestek_key,prs_s_prs_alluitvoerende_keys);
|
|
/* een prs_bestek mag niet worden verwijderd als er reeds opdrachten
|
|
* zijn waarbij als uitvoerende dit bestek is opgegeven */
|
|
/* ... */
|
|
END;
|
|
/
|
|
|
|
CREATE TRIGGER prs_t_prs_disciplinebestek_B_IU
|
|
BEFORE INSERT OR UPDATE ON prs_disciplinebestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(prs_disciplinebestek_key,prs_s_prs_disciplinebestek_key);
|
|
/* een prs_disciplinebestek mag niet worden verwijderd als er reeds
|
|
* opdrachten zijn waarbij als uitvoerende dit bestek is opgegeven en de
|
|
* daarbij horende discipline in prs_disciplinebestek voorkomt
|
|
*/
|
|
/* ... */
|
|
END;
|
|
/
|
|
|
|
CREATE TRIGGER prs_t_prs_locatiebestek_B_IU
|
|
BEFORE INSERT OR UPDATE ON prs_locatiebestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(prs_locatiebestek_key,prs_s_prs_locatiebestek_key);
|
|
/* een prs_objectbestek mag niet worden verwijderd als er reeds
|
|
* opdrachten voor deze locatie zijn en waarbij als uitvoerende dit bestek
|
|
* is opgegeven
|
|
*/
|
|
/* ... */
|
|
END;
|
|
/
|
|
|
|
/* 29-07-96/KTH Bestek-views gedefinieerd (voorlopig #ifdef INS) */
|
|
DEFINIEER_VIEW_AANWEZIG(prs_bestek,
|
|
prs_bestek_verwijder,
|
|
prs_v_aanwezigbestek,
|
|
BIBLIOTHEEK_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(prs_disciplinebestek,
|
|
prs_disciplinebestek_verwijder,
|
|
prs_v_aanwezigdisciplinebestek,
|
|
BIBLIOTHEEK_PRIVILEGE);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(prs_locatiebestek,
|
|
prs_locatiebestek_verwijder,
|
|
prs_v_aanweziglocatiebestek,
|
|
BIBLIOTHEEK_PRIVILEGE);
|
|
|
|
ALTER TABLE ins_onderdeel
|
|
DROP UNIQUE (ins_srtonderdeel_key,
|
|
ins_deel_key,
|
|
ins_onderdeel_upper,
|
|
ins_onderdeel_verwijder);
|
|
|
|
#endif // INS
|
|
|
|
|
|
|
|
ALTER TABLE prs_srtperslid
|
|
ADD
|
|
(
|
|
prs_bedrijf_key
|
|
NUMBER(10)
|
|
REFERENCES prs_bedrijf,
|
|
prs_srtperslid_uurloon
|
|
NUMBER(6,2)
|
|
);
|
|
|
|
ALTER TABLE fac_selectie
|
|
ADD
|
|
(
|
|
fac_selectie_tabel
|
|
VARCHAR2(30)
|
|
);
|
|
|
|
|
|
INSERT INTO fac_message VALUES('ALG_M159', 'De geselecteerde ruimtes verwijderen');
|
|
INSERT INTO fac_message VALUES('ALG_M160', 'Er zijn geen ruimtes geselecteerd.');
|
|
|
|
INSERT INTO fac_message VALUES('MSELECT', 'Wijzigen meerdere');
|
|
|
|
INSERT INTO fac_entity_name VALUES('PRS_BEDRIJF_UITVOERENDE', 'Uitvoerende', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BEDRIJF_LEVERANCIER', 'Leverancier', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BEDRIJF_CONTRACT', 'Contract', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK', 'Bestek', 'Bestekken', 'het');
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_NR', 'Besteknummer', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_OMSCHRIJVING', 'Omschrijving', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_MATERIAALPOST', 'Materiaalpost', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_BEGINDATUM', 'Begindatum', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_EINDDATUM', 'Einddatum', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_FILENAME', 'Documentnaam', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_MATERIAALBESTEED', 'Besteed', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_MATERIAALGERAAMD', 'Geraamd', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_MATERIAALRESTANT', 'Restant', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_DISCIPLINEBESTEK_UREN', 'Uren', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('PRS_DISCIPLINEBESTEK_UURPRIJS', 'Uurprijs', NULL, NULL);
|
|
|
|
INSERT INTO fac_message VALUES('PRS_M061', 'Verwijderen bestek ');
|
|
INSERT INTO fac_message VALUES('PRS_M062', 'Inclusief verlopen bestekken');
|
|
INSERT INTO fac_message VALUES('PRS_M063', 'Het besteknummer is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('PRS_M064', 'De omschrijving van het bestek is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('PRS_M065', 'De materiaalpost van het bestek is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('PRS_M066', 'De begindatum van het bestek is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('PRS_M067', 'De einddatum van het bestek is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('PRS_M068', 'Het bestek mag niet verwijderd worden.');
|
|
INSERT INTO fac_message VALUES('PRS_M069', 'De koppeling tussen discipline en bestek mag niet verwijderd worden.');
|
|
INSERT INTO fac_message VALUES('PRS_M070', 'Discipline bij bestek');
|
|
INSERT INTO fac_message VALUES('PRS_M071', 'Verwijderen koppeling discipline en bestek');
|
|
INSERT INTO fac_message VALUES('PRS_M072', 'Verwijderen koppeling tussen ');
|
|
INSERT INTO fac_message VALUES('PRS_M073', 'De uurprijs is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('PRS_M074', 'Het aantal uren is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('PRS_M075', 'Locatie bij bestek');
|
|
INSERT INTO fac_message VALUES('PRS_M076', 'Verwijderen koppeling locatie en bestek');
|
|
INSERT INTO fac_message VALUES('PRS_M077', 'Verwijderen koppeling tussen ');
|
|
|
|
#if defined(INS)&&defined(PRS)
|
|
DROP TABLE prs_locatiebestek;
|
|
DROP TABLE prs_disciplinebestek;
|
|
DROP TABLE prs_bestek;
|
|
|
|
CREATE_TABLE(prs_bestek,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
prs_bestek_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
prs_bestek_nr
|
|
VARCHAR2(20)
|
|
NOT NULL,
|
|
prs_bestek_upper_nr
|
|
VARCHAR2(20)
|
|
NOT NULL,
|
|
prs_bestek_omschrijving /* pre_bestek_omschrijving is niet verplicht */
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
prs_bedrijf_key /* het bedrijf waarmee het bestek is overeengekomen */
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES prs_bedrijf,
|
|
prs_bestek_materiaalpost /* de materiaalkosten over het hele bestek, */
|
|
NUMBER(9,2) /* ongeacht discipline */
|
|
NOT NULL
|
|
CHECK(prs_bestek_materiaalpost >= 0),
|
|
prs_bestek_materiaalbesteed /* de bestede materiaalkosten over het hele bestek, */
|
|
NUMBER(9,2), /* ongeacht discipline */
|
|
prs_bestek_begindatum /* de ingangsdatum van het bestek */
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
prs_bestek_einddatum /* de einddatum van het bestek */
|
|
DATE
|
|
NOT NULL,
|
|
prs_bestek_filename
|
|
VARCHAR2(12),
|
|
CHECK(prs_bestek_begindatum <= prs_bestek_einddatum), /* kan 1 dag zijn */
|
|
UNIQUE(prs_bestek_upper_nr)
|
|
);
|
|
|
|
CREATE_TABLE(prs_disciplinebestek,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
prs_disciplinebestek_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
prs_bestek_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES prs_bestek(prs_bestek_key) ON DELETE CASCADE,
|
|
ins_discipline_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES ins_discipline,
|
|
prs_disciplinebestek_uurprijs
|
|
NUMBER(6,2)
|
|
NOT NULL
|
|
CHECK (prs_disciplinebestek_uurprijs >= 0),
|
|
prs_disciplinebestek_uren
|
|
NUMBER(7,2)
|
|
NOT NULL
|
|
CHECK (prs_disciplinebestek_uren >= 0),
|
|
prs_discbestek_urenbesteed
|
|
NUMBER(7,2),
|
|
UNIQUE(prs_bestek_key, ins_discipline_key)
|
|
);
|
|
|
|
CREATE_TABLE(prs_locatiebestek,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
prs_locatiebestek_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
prs_bestek_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES prs_bestek(prs_bestek_key) ON DELETE CASCADE,
|
|
alg_locatie_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES alg_locatie,
|
|
UNIQUE(prs_bestek_key, alg_locatie_key)
|
|
);
|
|
|
|
|
|
CREATE_VIEW(prs_v_openstaand_bestek, NORMAAL_PRIVILEGE)
|
|
AS
|
|
SELECT * FROM prs_bestek
|
|
WHERE prs_bestek_begindatum < SYSDATE
|
|
AND prs_bestek_einddatum > SYSDATE;
|
|
|
|
#ifdef MLD
|
|
CREATE_VIEW(prs_v_mld_bestek_geraamd, NORMAAL_PRIVILEGE)
|
|
(prs_bestek_key,
|
|
prs_bestek_geraamd
|
|
) AS
|
|
SELECT PRS_B.prs_bestek_key,
|
|
SUM(NVL(MLD_O.mld_opdr_materiaal, 0))
|
|
FROM prs_bestek PRS_B, mld_opdr MLD_O, mld_statusopdr MLD_S
|
|
WHERE MLD_O.mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND (MLD_S.mld_statusopdr_omschrijving = 'Uitgegeven'
|
|
OR MLD_S.mld_statusopdr_omschrijving = 'Afgemeld')
|
|
AND PRS_B.prs_bestek_key = MLD_O.mld_uitvoerende_keys
|
|
GROUP BY PRS_B.prs_bestek_key;
|
|
#endif // MLD
|
|
|
|
#ifdef BCP
|
|
CREATE_VIEW(prs_v_bcp_bestek_geraamd, NORMAAL_PRIVILEGE)
|
|
(prs_bestek_key,
|
|
prs_bestek_geraamd
|
|
) AS
|
|
SELECT PRS_B.prs_bestek_key,
|
|
SUM(NVL(BCP_P.bcp_prevopdr_materiaal, 0))
|
|
FROM prs_bestek PRS_B, bcp_v_aanwezigprevopdr BCP_P,
|
|
mld_statusopdr MLD_S
|
|
WHERE BCP_P.bcp_mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND (MLD_S.mld_statusopdr_omschrijving = 'Uitgegeven'
|
|
OR MLD_S.mld_statusopdr_omschrijving = 'Afgemeld')
|
|
AND PRS_B.prs_bestek_key = BCP_P.bcp_mld_uitvoerende_keys
|
|
GROUP BY PRS_B.prs_bestek_key;
|
|
#endif // BCP
|
|
|
|
CREATE_VIEW(prs_v_prs_bestek_gegevens, NORMAAL_PRIVILEGE)
|
|
(prs_bestek_key,
|
|
prs_bestek_nr,
|
|
prs_bestek_upper_nr,
|
|
prs_bestek_omschrijving,
|
|
prs_bestek_materiaalpost,
|
|
prs_bestek_materiaalbesteed,
|
|
prs_bestek_materiaalgeraamd,
|
|
prs_bestek_begindatum,
|
|
prs_bestek_einddatum) AS
|
|
SELECT PRS_B.prs_bestek_key,
|
|
PRS_B.prs_bestek_nr,
|
|
PRS_B.prs_bestek_upper_nr,
|
|
PRS_B.prs_bestek_omschrijving,
|
|
PRS_B.prs_bestek_materiaalpost,
|
|
PRS_B.prs_bestek_materiaalbesteed,
|
|
SUM(
|
|
#ifdef MLD
|
|
NVL(MLD_B.prs_bestek_geraamd, 0)
|
|
#else
|
|
0
|
|
#endif
|
|
+
|
|
#ifdef BCP
|
|
NVL(BCP_B.prs_bestek_geraamd, 0)
|
|
#else
|
|
0
|
|
#endif
|
|
),
|
|
PRS_B.prs_bestek_begindatum,
|
|
PRS_B.prs_bestek_einddatum
|
|
FROM prs_bestek PRS_B
|
|
#ifdef MLD
|
|
, prs_v_mld_bestek_geraamd MLD_B
|
|
#endif
|
|
#ifdef BCP
|
|
, prs_v_bcp_bestek_geraamd BCP_B
|
|
#endif
|
|
WHERE PRS_B.prs_bestek_key IS NOT NULL
|
|
#ifdef MLD
|
|
AND MLD_B.prs_bestek_key (+) = PRS_B.prs_bestek_key
|
|
#endif
|
|
#ifdef BCP
|
|
AND BCP_B.prs_bestek_key (+) = PRS_B.prs_bestek_key
|
|
#endif
|
|
GROUP BY PRS_B.prs_bestek_key,
|
|
PRS_B.prs_bestek_nr,
|
|
PRS_B.prs_bestek_upper_nr,
|
|
PRS_B.prs_bestek_omschrijving,
|
|
PRS_B.prs_bestek_materiaalpost,
|
|
PRS_B.prs_bestek_materiaalbesteed,
|
|
PRS_B.prs_bestek_begindatum,
|
|
PRS_B.prs_bestek_einddatum;
|
|
|
|
#ifdef MLD
|
|
CREATE_VIEW(prs_v_mld_discbestek_geraamd, NORMAAL_PRIVILEGE)
|
|
(prs_disciplinebestek_key,
|
|
ins_discipline_key,
|
|
prs_bestek_key,
|
|
prs_discbestek_geraamd
|
|
) AS
|
|
SELECT PRS_DB.prs_disciplinebestek_key,
|
|
PRS_DB.ins_discipline_key,
|
|
PRS_DB.prs_bestek_key,
|
|
SUM(NVL(MLD_O.mld_opdr_uren, 0))
|
|
FROM prs_disciplinebestek PRS_DB, mld_opdr MLD_O, mld_statusopdr MLD_S
|
|
WHERE MLD_O.mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND (MLD_S.mld_statusopdr_omschrijving = 'Uitgegeven'
|
|
OR MLD_S.mld_statusopdr_omschrijving = 'Afgemeld')
|
|
AND PRS_DB.prs_disciplinebestek_key = MLD_O.mld_uitvoerende_keys
|
|
GROUP BY PRS_DB.prs_disciplinebestek_key,
|
|
PRS_DB.ins_discipline_key,
|
|
PRS_DB.prs_bestek_key;
|
|
#endif // MLD
|
|
|
|
#ifdef BCP
|
|
CREATE_VIEW(prs_v_bcp_discbestek_geraamd, NORMAAL_PRIVILEGE)
|
|
(prs_disciplinebestek_key,
|
|
ins_discipline_key,
|
|
prs_bestek_key,
|
|
prs_discbestek_geraamd
|
|
) AS
|
|
SELECT PRS_DB.prs_disciplinebestek_key,
|
|
PRS_DB.ins_discipline_key,
|
|
PRS_DB.prs_bestek_key,
|
|
SUM(NVL(BCP_P.bcp_prevopdr_uren, 0))
|
|
FROM prs_disciplinebestek PRS_DB, bcp_v_aanwezigprevopdr BCP_P,
|
|
mld_statusopdr MLD_S
|
|
WHERE BCP_P.bcp_mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND (MLD_S.mld_statusopdr_omschrijving = 'Uitgegeven'
|
|
OR MLD_S.mld_statusopdr_omschrijving = 'Afgemeld')
|
|
AND PRS_DB.prs_disciplinebestek_key = BCP_P.bcp_mld_uitvoerende_keys
|
|
GROUP BY PRS_DB.prs_disciplinebestek_key,
|
|
PRS_DB.ins_discipline_key,
|
|
PRS_DB.prs_bestek_key;
|
|
#endif // BCP
|
|
|
|
CREATE_VIEW(prs_v_prs_discbestek_gegevens, NORMAAL_PRIVILEGE)
|
|
(prs_disciplinebestek_key,
|
|
ins_discipline_key,
|
|
ins_discipline_omschrijving,
|
|
prs_bestek_key,
|
|
prs_bestek_nr,
|
|
prs_bestek_upper_nr,
|
|
prs_bestek_omschrijving,
|
|
prs_bestek_begindatum,
|
|
prs_bestek_einddatum,
|
|
prs_disciplinebestek_uurprpijs,
|
|
prs_disciplinebestek_uren,
|
|
prs_discbestek_urenbesteed,
|
|
prs_discbestek_urengeraamd) AS
|
|
SELECT PRS_DB.prs_disciplinebestek_key,
|
|
PRS_DB.ins_discipline_key,
|
|
INS_D.ins_discipline_omschrijving,
|
|
PRS_B.prs_bestek_key,
|
|
PRS_B.prs_bestek_nr,
|
|
PRS_B.prs_bestek_upper_nr,
|
|
PRS_B.prs_bestek_omschrijving,
|
|
PRS_B.prs_bestek_begindatum,
|
|
PRS_B.prs_bestek_einddatum,
|
|
PRS_DB.prs_disciplinebestek_uurprijs,
|
|
PRS_DB.prs_disciplinebestek_uren,
|
|
PRS_DB.prs_discbestek_urenbesteed,
|
|
SUM(
|
|
#ifdef MLD
|
|
NVL(MLD_DB.prs_discbestek_geraamd, 0)
|
|
#else
|
|
0
|
|
#endif
|
|
+
|
|
#ifdef BCP
|
|
NVL(BCP_DB.prs_discbestek_geraamd, 0)
|
|
#else
|
|
0
|
|
#endif
|
|
)
|
|
FROM prs_disciplinebestek PRS_DB, ins_discipline INS_D, prs_bestek PRS_B
|
|
#ifdef MLD
|
|
, prs_v_mld_discbestek_geraamd MLD_DB
|
|
#endif
|
|
#ifdef BCP
|
|
, prs_v_bcp_discbestek_geraamd BCP_DB
|
|
#endif
|
|
WHERE PRS_DB.ins_discipline_key = INS_D.ins_discipline_key
|
|
AND PRS_DB.prs_bestek_key = PRS_B.prs_bestek_key
|
|
#ifdef MLD
|
|
AND MLD_DB.prs_disciplinebestek_key (+) = PRS_DB.prs_disciplinebestek_key
|
|
#endif
|
|
#ifdef BCP
|
|
AND BCP_DB.prs_disciplinebestek_key (+) = PRS_DB.prs_disciplinebestek_key
|
|
#endif
|
|
GROUP BY PRS_DB.prs_disciplinebestek_key,
|
|
PRS_DB.ins_discipline_key,
|
|
INS_D.ins_discipline_omschrijving,
|
|
PRS_B.prs_bestek_key,
|
|
PRS_B.prs_bestek_nr,
|
|
PRS_B.prs_bestek_upper_nr,
|
|
PRS_B.prs_bestek_omschrijving,
|
|
PRS_B.prs_bestek_begindatum,
|
|
PRS_B.prs_bestek_einddatum,
|
|
PRS_DB.prs_disciplinebestek_uurprijs,
|
|
PRS_DB.prs_disciplinebestek_uren,
|
|
PRS_DB.prs_discbestek_urenbesteed;
|
|
|
|
|
|
CREATE_VIEW(prs_v_uurloon_uitvoerende, NORMAAL_PRIVILEGE)
|
|
(prs_uitvoerende_key,uurloon) AS
|
|
|
|
SELECT P.prs_perslid_key, P.prs_perslid_uurloon
|
|
FROM prs_v_aanwezigperslid P
|
|
WHERE P.prs_perslid_uurloon IS NOT NULL
|
|
UNION
|
|
SELECT P.prs_perslid_key, S.prs_srtperslid_uurloon
|
|
FROM prs_v_aanwezigperslid P, prs_v_aanwezigsrtperslid S
|
|
WHERE P.prs_perslid_uurloon IS NULL
|
|
AND P.prs_srtperslid_key = S.prs_srtperslid_key
|
|
AND S.prs_srtperslid_uurloon IS NOT NULL
|
|
AND S.prs_bedrijf_key IS NULL
|
|
UNION
|
|
SELECT B.prs_bedrijf_key, B.prs_bedrijf_uurloon
|
|
FROM prs_v_aanwezigbedrijf B
|
|
WHERE B.prs_bedrijf_uurloon IS NOT NULL
|
|
UNION
|
|
SELECT E.prs_disciplinebestek_key, E.prs_disciplinebestek_uurprijs
|
|
FROM prs_disciplinebestek E
|
|
WHERE E.prs_disciplinebestek_uurprijs IS NOT NULL
|
|
UNION
|
|
SELECT E.prs_disciplinebestek_key, B.prs_bedrijf_uurloon
|
|
FROM prs_disciplinebestek E, prs_bestek A, prs_v_aanwezigbedrijf B
|
|
WHERE E.prs_disciplinebestek_uurprijs IS NULL
|
|
AND E.prs_bestek_key = A.prs_bestek_key
|
|
AND A.prs_bedrijf_key = B.prs_bedrijf_key
|
|
AND B.prs_bedrijf_uurloon IS NOT NULL;
|
|
|
|
CREATE_VIEW(prs_v_prs_locbestek_gegevens, NORMAAL_PRIVILEGE)
|
|
(prs_locatiebestek_key,
|
|
prs_bestek_key,
|
|
prs_bestek_nr,
|
|
prs_bestek_upper_nr,
|
|
prs_bestek_omschrijving,
|
|
prs_bestek_begindatum,
|
|
prs_bestek_einddatum,
|
|
alg_locatie_key,
|
|
alg_locatie_omschrijving,
|
|
alg_locatie_upper) AS
|
|
SELECT PRS_LB.prs_locatiebestek_key,
|
|
PRS_LB.prs_bestek_key,
|
|
PRS_B.prs_bestek_nr,
|
|
PRS_B.prs_bestek_upper_nr,
|
|
PRS_B.prs_bestek_omschrijving,
|
|
PRS_B.prs_bestek_begindatum,
|
|
PRS_B.prs_bestek_einddatum,
|
|
PRS_LB.alg_locatie_key,
|
|
ALG_L.alg_locatie_code||' '||ALG_L.alg_locatie_omschrijving,
|
|
ALG_L.alg_locatie_code||' '||ALG_L.alg_locatie_upper
|
|
FROM prs_locatiebestek PRS_LB, prs_bestek PRS_B, alg_locatie ALG_L
|
|
WHERE ALG_L.alg_locatie_key = PRS_LB.alg_locatie_key
|
|
AND PRS_B.prs_bestek_key = PRS_LB.prs_bestek_key;
|
|
|
|
CREATE TRIGGER prs_t_prs_bestek_B_IU
|
|
BEFORE INSERT OR UPDATE ON prs_bestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
/* een bestek is ook een uitvoerende: prs_s_prs_alluitvoerende_keys */
|
|
UPDATE_PRIMARY_KEY(prs_bestek_key,prs_s_prs_alluitvoerende_keys);
|
|
UPDATE_UPPER(prs_bestek_nr, prs_bestek_upper_nr);
|
|
END;
|
|
/
|
|
|
|
#if 0 //defined(MLD)||defined(BCP)
|
|
/* 31-07-96 AH: Als een bestek verwijderd wordt, dan kan disicplinebestek
|
|
* dit nog tegenhouden. Deze wordt nl. als uitveorende en defaultuitvoerende
|
|
* opgegeven, niet het bestek.
|
|
*/
|
|
/* een prs_bestek mag niet worden verwijderd als er reeds opdrachten
|
|
* zijn waarbij als uitvoerende dit bestek is opgegeven
|
|
*/
|
|
CREATE TRIGGER prs_t_prs_bestek_B_D
|
|
BEFORE DELETE ON prs_bestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
#ifdef MLD
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM mld_opdr MLD_O, prs_disciplinebestek PRS_DB
|
|
WHERE MLD_O.mld_uitvoerende_keys = PRS_DB.prs_disciplinebestek_key
|
|
AND PRS_DB.prs_bestek_key = :old.prs_bestek_key;
|
|
APPLICATION_ERROR(-20002, 'prs_m068');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
WHEN TOO_MANY_ROWS
|
|
THEN APPLICATION_ERROR(-20002, 'prs_m068');
|
|
END;
|
|
#endif
|
|
#ifdef BCP
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM bcp_prevopdr BCP_P, prs_disciplinebestek PRS_DB
|
|
WHERE BCP_P.bcp_mld_uitvoerende_keys = PRS_DB.prs_disciplinebestek_key
|
|
AND PRS_DB.prs_bestek_key = :old.prs_bestek_key;
|
|
APPLICATION_ERROR(-20002, 'prs_m068');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
WHEN TOO_MANY_ROWS
|
|
THEN APPLICATION_ERROR(-20002, 'prs_m068');
|
|
END;
|
|
#endif
|
|
END;
|
|
/
|
|
#endif // 0 (defined(MLD)||defined(BCP))
|
|
|
|
CREATE TRIGGER prs_t_prs_discbestek_B_IU
|
|
BEFORE INSERT OR UPDATE ON prs_disciplinebestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(prs_disciplinebestek_key,prs_s_prs_disciplinebestek_key);
|
|
END;
|
|
/
|
|
|
|
#ifdef BCO
|
|
CREATE TRIGGER prs_t_prs_discbestek_B_D
|
|
BEFORE DELETE ON prs_disciplinebestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
/* Als het bestek al als default uitvoerende is aangegeven bij een
|
|
* INS_SRTDEEL, dan mag de koppeling tussen de discipline van het
|
|
* INS_SRTDEEL en het bestek niet verwijderd worden.
|
|
*/
|
|
DECLARE
|
|
dummy CHAR;
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM ins_v_aanwezigsrtdeel INS_D
|
|
WHERE INS_D.bco_defaultuitv_keys = :old.prs_disciplinebestek_key;
|
|
APPLICATION_ERROR(-20002, 'prs_m069');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND
|
|
THEN NULL;
|
|
WHEN TOO_MANY_ROWS
|
|
THEN APPLICATION_ERROR(-20002, 'prs_m069');
|
|
END;
|
|
END;
|
|
/
|
|
#endif
|
|
|
|
CREATE TRIGGER prs_t_prs_locatiebestek_B_IU
|
|
BEFORE INSERT OR UPDATE ON prs_locatiebestek
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(prs_locatiebestek_key,prs_s_prs_locatiebestek_key);
|
|
END;
|
|
/
|
|
|
|
DROP TABLE bco_maatregel;
|
|
DROP TABLE bco_defect;
|
|
DROP TABLE bco_defectsrtinst;
|
|
|
|
CREATE_TABLE(bco_maatregel,NORMAAL_PRIVILEGE)
|
|
(
|
|
bco_maatregel_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
bco_maatregel_omschrijving
|
|
VARCHAR2(320)
|
|
NOT NULL,
|
|
bco_maatregel_afk
|
|
VARCHAR2(40)
|
|
NOT NULL,
|
|
bco_maatregel_afk_upper
|
|
VARCHAR2(40)
|
|
NOT NULL,
|
|
UNIQUE(bco_maatregel_afk_upper)
|
|
);
|
|
|
|
CREATE_TABLE(bco_defect,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
bco_defect_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
bco_defect_omschrijving
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
bco_defect_upper
|
|
VARCHAR2(30)
|
|
NOT NULL,
|
|
bco_defect_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
bco_defect_verwijder
|
|
DATE
|
|
DEFAULT NULLDATUM,
|
|
UNIQUE(bco_defect_upper)
|
|
);
|
|
|
|
/*
|
|
Tabel koppelt maatregel bij defect bij soort installatie;
|
|
de tabelnaam is niet helemaal correct, de kolomnamen bco_maatregel_uren
|
|
en bco_maatregel_materiaal ook niet. Dit is echter historisch zo gegroeid.
|
|
*/
|
|
|
|
CREATE_TABLE(bco_defectsrtinst,BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
bco_defectsrtinst_key
|
|
NUMBER(10)
|
|
PRIMARY KEY,
|
|
bco_defect_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES bco_defect,
|
|
bco_ins_srtinst_keys
|
|
NUMBER(10)
|
|
NOT NULL,
|
|
bco_maatregel_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
REFERENCES bco_maatregel,
|
|
bco_maatregel_uren
|
|
NUMBER(6,2)
|
|
CHECK(bco_maatregel_uren >=0),
|
|
bco_maatregel_materiaal
|
|
NUMBER(8,2)
|
|
CHECK(bco_maatregel_materiaal >=0),
|
|
UNIQUE(bco_defect_key, bco_ins_srtinst_keys, bco_maatregel_key)
|
|
);
|
|
|
|
DROP VIEW bco_v_aanwezigdefect;
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(bco_defect, bco_defect_verwijder,
|
|
bco_v_aanwezigdefect,BIBLIOTHEEK_PRIVILEGE);
|
|
|
|
DELETE FROM fac_entity_user
|
|
WHERE fac_entity_system_name = 'BCO_WERKREGEL_POSTNR';
|
|
|
|
DEF_FAC_ENTITY ('BCO_WERKREGEL_POSTNR', 'Volgnr.', 'Volgnummers', 'het');
|
|
|
|
#endif // INS && PRS
|
|
|
|
DELETE FROM fac_entity_name
|
|
WHERE fac_entity_system_name = 'BCO_WERKREGEL';
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKREGEL', 'Werkregel', 'Werkregels', 'de');
|
|
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKOPDR_OMSCHRIJVING', 'Werkopdrachtnr.', NULL, 'de');
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKOPDR_WEEK', 'Week', 'Weken', 'de');
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKOPDR_CORRECTIEF', 'Correctief', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKOPDR_PREVENTIEF', 'Preventief', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKOPDR_STORING', 'Storing', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKOPDR_SAMENSTELLEN', 'Samenstellen', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('BCO_WERKREGEL_ORIGINEEL', 'Origineel', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('MLD_OPDR_AFMELDEN', 'Afmelden', NULL, NULL);
|
|
|
|
INSERT INTO fac_message VALUES('BCO_M097', 'Inclusief verwerkte werkopdrachten');
|
|
INSERT INTO fac_message VALUES('BCO_M098', 'Verwijderen werkopdracht ');
|
|
INSERT INTO fac_message VALUES('BCO_M099', 'De werkopdracht mag niet verwijderd worden.');
|
|
INSERT INTO fac_message VALUES('BCO_M100', 'De werkopdracht mag niet verwijderd worden.');
|
|
INSERT INTO fac_message VALUES('BCO_M101', 'De opdracht kan niet afgemeld worden.');
|
|
INSERT INTO fac_message VALUES('BCO_M102', 'De opdracht kan niet verwerkt worden.');
|
|
INSERT INTO fac_message VALUES('BCO_M103', 'Samenstellen van nieuwe werkopdrachten?');
|
|
INSERT INTO fac_message VALUES('BCO_M104', ' werkopdracht(en) aangemaakt.');
|
|
|
|
INSERT INTO fac_message VALUES('BCP_M067', 'Opdrachtbon preventief onderhoud');
|
|
|
|
#ifdef BCO
|
|
CREATE_VIEW(bco_v_bcp_bco_opdr_gegevens, NORMAAL_PRIVILEGE)
|
|
(bcp_bco_opdr_module,
|
|
bcp_bco_opdr_key,
|
|
bcp_bco_opdr_uren,
|
|
bcp_bco_uitvoerende_keys,
|
|
bcp_bco_uitvoerende_sortering,
|
|
bcp_bco_uitvoerende_type,
|
|
bcp_bco_opdr_week) AS
|
|
SELECT BCO_O.bcp_bco_opdr_module,
|
|
BCO_O.bcp_bco_opdr_key,
|
|
BCO_O.bcp_bco_opdr_uren,
|
|
BCO_O.bcp_bco_uitvoerende_keys,
|
|
'1',
|
|
MLD_U.type,
|
|
BCO_O.bcp_bco_opdr_week
|
|
FROM bco_v_bcp_bco_opdr BCO_O, mld_statusopdr MLD_S, mld_v_uitvoerende MLD_U
|
|
WHERE MLD_S.mld_statusopdr_key = BCO_O.bcp_bco_statusopdr_key
|
|
AND MLD_S.mld_statusopdr_omschrijving = 'Uitgegeven'
|
|
AND BCO_O.bcp_bco_uitvoerende_keys = MLD_U.key
|
|
AND MLD_U.type = 'P'
|
|
UNION
|
|
SELECT BCO_O.bcp_bco_opdr_module,
|
|
BCO_O.bcp_bco_opdr_key,
|
|
BCO_O.bcp_bco_opdr_uren,
|
|
BCO_O.bcp_bco_uitvoerende_keys,
|
|
'2',
|
|
MLD_U.type,
|
|
BCO_O.bcp_bco_opdr_week
|
|
FROM bco_v_bcp_bco_opdr BCO_O, mld_statusopdr MLD_S, mld_v_uitvoerende MLD_U
|
|
WHERE MLD_S.mld_statusopdr_key = BCO_O.bcp_bco_statusopdr_key
|
|
AND MLD_S.mld_statusopdr_omschrijving = 'Uitgegeven'
|
|
AND BCO_O.bcp_bco_uitvoerende_keys = MLD_U.key
|
|
AND (MLD_U.type = 'B' OR MLD_U.type = 'E' OR MLD_U.type = 'S');
|
|
|
|
CREATE_VIEW(bco_v_bco_werkregel_gegevens, NORMAAL_PRIVILEGE)
|
|
(bco_werkregel_key,
|
|
bco_werkregel_postnr,
|
|
bco_werkopdr_key,
|
|
bco_werkopdr_omschrijving,
|
|
bco_org_werkopdr_key,
|
|
bcp_bco_opdr_key,
|
|
bco_werkregel_printen,
|
|
bcp_bco_opdr_module,
|
|
bcp_bco_statusopdr_key) AS
|
|
SELECT BCO_WR.bco_werkregel_key,
|
|
BCO_WR.bco_werkregel_postnr,
|
|
BCO_WR.bco_werkopdr_key,
|
|
BCO_W.bco_werkopdr_omschrijving,
|
|
BCO_WR.bco_org_werkopdr_key,
|
|
BCO_O.bcp_bco_opdr_key,
|
|
BCO_WR.bco_werkregel_printen,
|
|
BCO_O.bcp_bco_opdr_module,
|
|
BCO_O.bcp_bco_statusopdr_key
|
|
FROM bco_werkregel BCO_WR, bco_werkopdr BCO_W, bco_v_bcp_bco_opdr BCO_O
|
|
WHERE BCO_W.bco_werkopdr_key = BCO_WR.bco_werkopdr_key
|
|
AND BCO_O.bcp_bco_opdr_key = BCO_WR.bcp_mld_opdr_key;
|
|
|
|
ALTER TABLE mld_opdr
|
|
ADD
|
|
(
|
|
bco_defaultuitv_keys
|
|
NUMBER(10)
|
|
);
|
|
|
|
|
|
|
|
INSERT INTO fac_message VALUES('BCO_M106', 'Overzicht werkzaamheden Personen/Bedrijven');
|
|
INSERT INTO fac_message VALUES('BCO_M107', 'Uitvoerende persoon');
|
|
INSERT INTO fac_message VALUES('BCO_M108', 'Uitvoerende bedrijf');
|
|
|
|
ALTER TABLE bco_defectsrtinst
|
|
DROP UNIQUE(bco_defect_key, bco_ins_srtinst_keys, bco_maatregel_key);
|
|
|
|
ALTER TABLE bco_defectsrtinst
|
|
ADD
|
|
(
|
|
bco_defectsrtinst_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
NOT NULL,
|
|
bco_defectsrtinst_verwijder
|
|
DATE
|
|
DEFAULT NULL,
|
|
UNIQUE(bco_defect_key, bco_ins_srtinst_keys, bco_defectsrtinst_verwijder)
|
|
);
|
|
|
|
INSERT INTO fac_privilege VALUES (UPPER('bco_v_aanwezigdefectsrtinst'), 3);
|
|
CREATE OR REPLACE VIEW bco_v_aanwezigdefectsrtinst AS SELECT * FROM bco_defectsrtinst WHERE bco_defectsrtinst.bco_defectsrtinst_verwijder IS NULL;
|
|
|
|
CREATE OR REPLACE VIEW bco_v_defectsrtinst_gegevens AS
|
|
SELECT BCO_DI.bco_defectsrtinst_key, BCO_DI.bco_defect_key,
|
|
BCO_DI.bco_ins_srtinst_keys, BCO_D.bco_defect_omschrijving,
|
|
BCO_D.bco_defect_upper, INS_SI.ins_srtdeel_key,
|
|
INS_SI.ins_srtonderdeel_key, INS_SI.ins_srtelement_key
|
|
FROM bco_v_aanwezigdefectsrtinst BCO_DI, bco_v_aanwezigdefect BCO_D,
|
|
ins_v_srtinst INS_SI
|
|
WHERE BCO_DI.bco_defect_key = BCO_D.bco_defect_key
|
|
AND BCO_DI.bco_ins_srtinst_keys = INS_SI.ins_srtinst_keys;
|
|
|
|
DROP TRIGGER bco_t_bco_maatregel_B_IU;
|
|
CREATE TRIGGER bco_t_bco_maatregel_B_IU
|
|
BEFORE INSERT OR UPDATE ON bco_maatregel
|
|
FOR EACH ROW
|
|
BEGIN
|
|
IF :new.bco_maatregel_key IS NULL THEN SELECT bco_s_bco_maatregel_key.nextval INTO :new.bco_maatregel_key FROM DUAL; END IF;
|
|
SELECT UPPER(:new.bco_maatregel_afk) INTO :new.bco_maatregel_afk_upper FROM DUAL;
|
|
IF (:old.bco_maatregel_werkopdr = 1)
|
|
AND (:new.bco_maatregel_werkopdr IS NULL)
|
|
THEN
|
|
DECLARE
|
|
dummy VARCHAR2(1);
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM bco_defectsrtinst
|
|
WHERE bco_maatregel_key = :new.bco_maatregel_key;
|
|
raise_application_error(-20000,'bco_m097');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND THEN NULL;
|
|
END;
|
|
END IF;
|
|
IF :new.bco_maatregel_verwijder IS NOT NULL
|
|
THEN
|
|
NULL;
|
|
-- raise_application_error(-20000, 'bco_m109');
|
|
END IF;
|
|
BEGIN IF :new.bco_maatregel_verwijder IS NOT NULL THEN UPDATE bco_defectsrtinst SET bco_defectsrtinst_verwijder = SYSDATE WHERE bco_defectsrtinst.bco_maatregel_key = :new.bco_maatregel_key AND bco_defectsrtinst_verwijder IS NULL; END IF; END;
|
|
END;
|
|
/
|
|
|
|
|
|
DROP TRIGGER bco_t_bco_defect_B_IU;
|
|
CREATE TRIGGER bco_t_bco_defect_B_IU
|
|
BEFORE INSERT OR UPDATE ON bco_defect
|
|
FOR EACH ROW
|
|
BEGIN
|
|
IF :new.bco_defect_key IS NULL THEN SELECT bco_s_bco_defect_key.nextval INTO :new.bco_defect_key FROM DUAL; END IF;
|
|
SELECT UPPER(:new.bco_defect_omschrijving) INTO :new.bco_defect_upper FROM DUAL;
|
|
|
|
BEGIN IF :new.bco_defect_verwijder IS NOT NULL THEN UPDATE bco_defectsrtinst SET bco_defectsrtinst_verwijder = SYSDATE WHERE bco_defectsrtinst.bco_defect_key = :new.bco_defect_key AND bco_defectsrtinst_verwijder IS NULL; END IF; END;
|
|
END;
|
|
/
|
|
|
|
DROP TRIGGER bco_t_bco_defectsrtinst_B_IU;
|
|
CREATE TRIGGER bco_t_bco_defectsrtinst_B_IU
|
|
BEFORE INSERT OR UPDATE ON bco_defectsrtinst
|
|
FOR EACH ROW
|
|
BEGIN
|
|
IF :new.bco_defectsrtinst_key IS NULL THEN SELECT bco_s_bco_defectsrtinst_key.nextval INTO :new.bco_defectsrtinst_key FROM DUAL; END IF;
|
|
DECLARE dummy CHAR; BEGIN SELECT 'X' INTO dummy FROM ins_v_aanwezigsrtdeel WHERE ins_srtdeel_key = :new.bco_ins_srtinst_keys; EXCEPTION WHEN NO_DATA_FOUND THEN BEGIN SELECT 'X' INTO dummy FROM ins_v_aanwezigsrtonderdeel WHERE ins_srtonderdeel_key = :new.bco_ins_srtinst_keys; EXCEPTION WHEN NO_DATA_FOUND THEN BEGIN SELECT 'X' INTO dummy FROM ins_v_aanwezigsrtelement WHERE ins_srtelement_key = :new.bco_ins_srtinst_keys; EXCEPTION WHEN NO_DATA_FOUND THEN raise_application_error(-20000, 'ins_m21'); END; END; END;
|
|
END;
|
|
/
|
|
|
|
ALTER TABLE mld_opdr
|
|
ADD
|
|
(
|
|
bco_defectsrtinst_key
|
|
NUMBER(10),
|
|
REFERENCES bco_defectsrtinst(bco_defectsrtinst_key)
|
|
);
|
|
#endif // BCO
|
|
|
|
INSERT INTO fac_message VALUES('BCO_M109', 'De maatregel mag niet verwijderd worden.');
|
|
|
|
INSERT INTO fac_entity_name VALUES('ALG_BL_RUIMTE', 'Bl/Ruimte', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('BCP_METERSTAND_DATUM', 'Datum', NULL, NULL);
|
|
INSERT INTO fac_entity_name VALUES('BCP_METERSTAND_STAND', 'Stand', NULL, NULL);
|
|
|
|
INSERT INTO fac_message VALUES('BCP_M068', 'Verwijderen meterstand ');
|
|
INSERT INTO fac_message VALUES('BCP_M069', 'De datum vam de meterstand is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('BCP_M070', 'De meterstand van de meterstand is niet ingevuld.');
|
|
INSERT INTO fac_message VALUES('BCP_M071', 'Er zijn geen in te vullen meterstanden meer.');
|
|
|
|
#ifdef BCP
|
|
CREATE OR REPLACE VIEW bcp_v_meterstand_gegevens( bcp_meterstand_key,
|
|
bcp_meterstand_datum,
|
|
bcp_meterstand_stand,
|
|
bcp_prevopdr_key,
|
|
ins_inst_key,
|
|
ins_inst_type,
|
|
alg_verdieping_omschrijving,
|
|
alg_verdieping_volgnr,
|
|
alg_ruimte_nr,
|
|
alg_ruimte_upper_nr,
|
|
ins_deel_omschrijving,
|
|
ins_deel_upper,
|
|
ins_onderdeel_omschrijving,
|
|
ins_onderdeel_upper,
|
|
ins_element_omschrijving,
|
|
ins_element_upper
|
|
) AS
|
|
SELECT BCP_M.bcp_meterstand_key,
|
|
BCP_M.bcp_meterstand_datum,
|
|
BCP_M.bcp_meterstand_stand,
|
|
BCP_M.bcp_prevopdr_key,
|
|
INS_I.ins_inst_keys,
|
|
INS_I.ins_type,
|
|
INS_D.alg_verdieping_omschrijving,
|
|
INS_D.alg_verdieping_volgnr,
|
|
INS_D.alg_ruimte_nr,
|
|
INS_D.alg_ruimte_upper_nr,
|
|
INS_D.ins_deel_omschrijving,
|
|
INS_D.ins_deel_upper,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL
|
|
FROM bcp_meterstand BCP_M, bcp_prevopdr BCP_P, bcp_taak BCP_T,
|
|
ins_v_inst INS_I, ins_v_deel_gegevens INS_D
|
|
WHERE BCP_M.bcp_prevopdr_key = BCP_P.bcp_prevopdr_key
|
|
AND BCP_P.bcp_taak_key = BCP_T.bcp_taak_key
|
|
AND INS_I.ins_inst_keys = BCP_M.bcp_ins_inst_keys
|
|
AND INS_I.ins_type = 'D'
|
|
AND INS_I.ins_inst_keys = INS_D.ins_deel_key
|
|
UNION
|
|
SELECT BCP_M.bcp_meterstand_key,
|
|
BCP_M.bcp_meterstand_datum,
|
|
BCP_M.bcp_meterstand_stand,
|
|
BCP_M.bcp_prevopdr_key,
|
|
INS_I.ins_inst_keys,
|
|
INS_I.ins_type,
|
|
INS_O.alg_verdieping_omschrijving,
|
|
INS_O.alg_verdieping_volgnr,
|
|
INS_O.alg_ruimte_nr,
|
|
INS_O.alg_ruimte_upper_nr,
|
|
INS_O.ins_deel_omschrijving,
|
|
INS_O.ins_deel_upper,
|
|
INS_O.ins_onderdeel_omschrijving,
|
|
INS_O.ins_onderdeel_upper,
|
|
NULL,
|
|
NULL
|
|
FROM bcp_meterstand BCP_M, bcp_prevopdr BCP_P, bcp_taak BCP_T,
|
|
ins_v_inst INS_I, ins_v_onderdeel_gegevens INS_O
|
|
WHERE BCP_M.bcp_prevopdr_key = BCP_P.bcp_prevopdr_key
|
|
AND BCP_P.bcp_taak_key = BCP_T.bcp_taak_key
|
|
AND INS_I.ins_inst_keys = BCP_M.bcp_ins_inst_keys
|
|
AND INS_I.ins_type = 'O'
|
|
AND INS_I.ins_inst_keys = INS_O.ins_onderdeel_key
|
|
UNION
|
|
SELECT BCP_M.bcp_meterstand_key,
|
|
BCP_M.bcp_meterstand_datum,
|
|
BCP_M.bcp_meterstand_stand,
|
|
BCP_M.bcp_prevopdr_key,
|
|
INS_I.ins_inst_keys,
|
|
INS_I.ins_type,
|
|
INS_E.alg_verdieping_omschrijving,
|
|
INS_E.alg_verdieping_volgnr,
|
|
INS_E.alg_ruimte_nr,
|
|
INS_E.alg_ruimte_upper_nr,
|
|
INS_E.ins_deel_omschrijving,
|
|
INS_E.ins_deel_upper,
|
|
INS_E.ins_onderdeel_omschrijving,
|
|
INS_E.ins_onderdeel_upper,
|
|
INS_E.ins_element_omschrijving,
|
|
INS_E.ins_element_upper
|
|
FROM bcp_meterstand BCP_M, bcp_prevopdr BCP_P, bcp_taak BCP_T,
|
|
ins_v_inst INS_I, ins_v_element_gegevens INS_E
|
|
WHERE BCP_M.bcp_prevopdr_key = BCP_P.bcp_prevopdr_key
|
|
AND BCP_P.bcp_taak_key = BCP_T.bcp_taak_key
|
|
AND INS_I.ins_inst_keys = BCP_M.bcp_ins_inst_keys
|
|
AND INS_I.ins_type = 'E'
|
|
AND INS_I.ins_inst_keys = INS_E.ins_element_key;
|
|
#endif // BCP
|
|
|
|
#ifdef INS
|
|
CREATE_VIEW(ins_v_alg_overzicht,NORMAAL_PRIVILEGE)
|
|
(
|
|
alg_onroerendgoed_keys, alg_locatie_key,
|
|
alg_gebouw_key, alg_gebouw_omschrijving, alg_gebouw_upper,
|
|
alg_verdieping_key, alg_verdieping_omschrijving, alg_verdieping_upper,
|
|
alg_verdieping_volgnr,
|
|
alg_ruimte_key, alg_ruimte_nr, alg_ruimte_upper_nr,
|
|
alg_terreinsector_key, alg_terreinsector_omschrijving, alg_terreinsector_upper
|
|
)
|
|
AS
|
|
SELECT ALG_G.alg_gebouw_key, ALG_G.alg_locatie_key,
|
|
ALG_G.alg_gebouw_key, ALG_G.alg_gebouw_omschrijving, ALG_G.alg_gebouw_upper,
|
|
to_number(NULL), NULL, NULL, to_number(NULL),
|
|
to_number(NULL), NULL, NULL,
|
|
to_number(NULL), NULL, NULL
|
|
FROM alg_gebouw ALG_G
|
|
UNION
|
|
SELECT ALG_V.alg_verdieping_key, ALG_G.alg_locatie_key,
|
|
ALG_G.alg_gebouw_key, ALG_G.alg_gebouw_omschrijving, ALG_G.alg_gebouw_upper,
|
|
ALG_V.alg_verdieping_key, ALG_V.alg_verdieping_omschrijving, ALG_V.alg_verdieping_upper,
|
|
ALG_V.alg_verdieping_volgnr,
|
|
to_number(NULL), NULL, NULL,
|
|
to_number(NULL), NULL, NULL
|
|
FROM alg_verdieping ALG_V, alg_gebouw ALG_G
|
|
WHERE ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
|
|
UNION
|
|
SELECT ALG_R.alg_ruimte_key, ALG_G.alg_locatie_key,
|
|
ALG_G.alg_gebouw_key, ALG_G.alg_gebouw_omschrijving, ALG_G.alg_gebouw_upper,
|
|
ALG_V.alg_verdieping_key, ALG_V.alg_verdieping_omschrijving, ALG_V.alg_verdieping_upper,
|
|
ALG_V.alg_verdieping_volgnr,
|
|
ALG_R.alg_ruimte_key, ALG_R.alg_ruimte_nr, ALG_R.alg_ruimte_upper_nr,
|
|
to_number(NULL), NULL, NULL
|
|
FROM alg_ruimte ALG_R, alg_verdieping ALG_V, alg_gebouw ALG_G
|
|
WHERE ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key AND
|
|
ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
|
|
UNION
|
|
SELECT ALG_T.alg_terreinsector_key, ALG_T.alg_locatie_key,
|
|
to_number(NULL), NULL, NULL,
|
|
to_number(NULL), NULL, NULL, to_number(NULL),
|
|
to_number(NULL), NULL, NULL,
|
|
ALG_T.alg_terreinsector_key, ALG_T.alg_terreinsector_omschrijving, ALG_T.alg_terreinsector_upper
|
|
FROM alg_terreinsector ALG_T;
|
|
|
|
CREATE_VIEW(ins_v_deel_gegevens,NORMAAL_PRIVILEGE)
|
|
(
|
|
ins_discipline_key, ins_discipline_omschrijving,
|
|
ins_srtgroep_key, ins_srtgroep_omschrijving, ins_srtgroep_upper,
|
|
ins_srtdeel_key, ins_srtdeel_omschrijving, ins_srtdeel_upper,
|
|
alg_locatie_key, alg_gebouw_key, alg_gebouw_omschrijving, alg_gebouw_upper,
|
|
alg_verdieping_key, alg_verdieping_omschrijving, alg_verdieping_upper,
|
|
alg_verdieping_volgnr,
|
|
alg_ruimte_key, alg_ruimte_nr, alg_ruimte_upper_nr,
|
|
alg_terreinsector_key, alg_terreinsector_omschrijving, alg_terreinsector_upper,
|
|
ins_deel_key, ins_deel_omschrijving, ins_deel_upper, ins_deel_aantal,
|
|
ins_deel_fabrikaat, ins_deel_type, ins_deel_serienr, ins_deel_bouwjaar,
|
|
ins_deel_capaciteit, ins_deel_prijs, ins_deel_levensduur, ins_deel_opmerking
|
|
)
|
|
AS
|
|
SELECT ins_D.ins_discipline_key, ins_D.ins_discipline_omschrijving,
|
|
ins_SG.ins_srtgroep_key, ins_SG.ins_srtgroep_omschrijving, ins_SG.ins_srtgroep_upper,
|
|
ins_SD.ins_srtdeel_key, ins_SD.ins_srtdeel_omschrijving, ins_SD.ins_srtdeel_upper,
|
|
INS_AO.alg_locatie_key, INS_AO.alg_gebouw_key, INS_AO.alg_gebouw_omschrijving, INS_AO.alg_gebouw_upper,
|
|
INS_AO.alg_verdieping_key, INS_AO.alg_verdieping_omschrijving, INS_AO.alg_verdieping_upper,
|
|
INS_AO.alg_verdieping_volgnr,
|
|
INS_AO.alg_ruimte_key, INS_AO.alg_ruimte_nr, INS_AO.alg_ruimte_upper_nr,
|
|
INS_AO.alg_terreinsector_key, INS_AO.alg_terreinsector_omschrijving, INS_AO.alg_terreinsector_upper,
|
|
ins_DE.ins_deel_key, ins_DE.ins_deel_omschrijving, ins_DE.ins_deel_upper, ins_DE.ins_deel_aantal,
|
|
ins_DE.ins_deel_fabrikaat, ins_DE.ins_deel_type, ins_DE.ins_deel_serienr,ins_DE.ins_deel_bouwjaar,
|
|
ins_DE.ins_deel_capaciteit, ins_DE.ins_deel_prijs, ins_DE.ins_deel_levensduur, ins_DE.ins_deel_opmerking
|
|
FROM ins_v_aanwezigdiscipline ins_D, ins_v_aanwezigsrtgroep ins_SG,
|
|
ins_v_aanwezigsrtdeel ins_SD, ins_v_alg_overzicht INS_AO,
|
|
ins_v_aanwezigdeel ins_DE
|
|
WHERE
|
|
INS_AO.alg_onroerendgoed_keys = ins_DE.ins_alg_ruimte_key AND
|
|
ins_SD.ins_srtdeel_key = ins_DE.ins_srtdeel_key AND
|
|
ins_SG.ins_srtgroep_key = ins_SD.ins_srtgroep_key AND
|
|
ins_D.ins_discipline_key = ins_SG.ins_discipline_key;
|
|
|
|
CREATE_VIEW(ins_v_onderdeel_gegevens,NORMAAL_PRIVILEGE)
|
|
(
|
|
ins_discipline_key, ins_discipline_omschrijving,
|
|
ins_srtgroep_key, ins_srtgroep_omschrijving, ins_srtgroep_upper,
|
|
ins_srtdeel_key, ins_srtdeel_omschrijving, ins_srtdeel_upper,
|
|
ins_srtonderdeel_key, ins_srtonderdeel_omschrijving, ins_srtonderdeel_upper,
|
|
ins_deel_key, ins_deel_omschrijving, ins_deel_upper,
|
|
ins_onderdeel_key, ins_onderdeel_omschrijving, ins_onderdeel_upper,
|
|
ins_onderdeel_aantal, ins_onderdeel_fabrikaat, ins_onderdeel_type,
|
|
ins_onderdeel_serienr,ins_onderdeel_bouwjaar, ins_onderdeel_capaciteit,
|
|
ins_onderdeel_prijs, ins_onderdeel_levensduur, ins_onderdeel_opmerking,
|
|
alg_locatie_key, alg_gebouw_key, alg_gebouw_upper, alg_verdieping_key,
|
|
alg_verdieping_upper, alg_verdieping_omschrijving, alg_verdieping_volgnr,
|
|
alg_ruimte_key, alg_ruimte_nr, alg_ruimte_upper_nr,
|
|
alg_terreinsector_key, alg_terreinsector_upper
|
|
)
|
|
AS
|
|
SELECT ins_D.ins_discipline_key, ins_D.ins_discipline_omschrijving,
|
|
ins_D.ins_srtgroep_key, ins_D.ins_srtgroep_omschrijving, ins_D.ins_srtgroep_upper,
|
|
ins_D.ins_srtdeel_key, ins_D.ins_srtdeel_omschrijving, ins_D.ins_srtdeel_upper,
|
|
ins_SOD.ins_srtonderdeel_key, ins_SOD.ins_srtonderdeel_omschrijving, ins_SOD.ins_srtonderdeel_upper,
|
|
ins_D.ins_deel_key, ins_D.ins_deel_omschrijving, ins_D.ins_deel_upper,
|
|
ins_OD.ins_onderdeel_key, ins_OD.ins_onderdeel_omschrijving, ins_OD.ins_onderdeel_upper,
|
|
ins_OD.ins_onderdeel_aantal, ins_OD.ins_onderdeel_fabrikaat, ins_OD.ins_onderdeel_type,
|
|
ins_OD.ins_onderdeel_serienr, ins_OD.ins_onderdeel_bouwjaar, ins_OD.ins_onderdeel_capaciteit,
|
|
ins_OD.ins_onderdeel_prijs, ins_OD.ins_onderdeel_levensduur, ins_OD.ins_onderdeel_opmerking,
|
|
ins_D.alg_locatie_key, ins_D.alg_gebouw_key, ins_D.alg_gebouw_upper, ins_D.alg_verdieping_key,
|
|
ins_D.alg_verdieping_upper, ins_D.alg_verdieping_omschrijving, ins_D.alg_verdieping_volgnr,
|
|
ins_D.alg_ruimte_key, ins_D.alg_ruimte_nr, ins_D.alg_ruimte_upper_nr,
|
|
ins_D.alg_terreinsector_key, ins_D.alg_terreinsector_upper
|
|
FROM ins_v_aanwezigsrtonderdeel ins_SOD,
|
|
ins_v_aanwezigonderdeel ins_OD,
|
|
ins_v_deel_gegevens ins_D
|
|
WHERE
|
|
ins_SOD.ins_srtonderdeel_key = ins_OD.ins_srtonderdeel_key AND
|
|
ins_D.ins_deel_key = ins_OD.ins_deel_key AND
|
|
ins_OD.ins_alg_onroerendgoed_key IS NULL
|
|
UNION
|
|
SELECT ins_D.ins_discipline_key, ins_D.ins_discipline_omschrijving,
|
|
ins_D.ins_srtgroep_key, ins_D.ins_srtgroep_omschrijving, ins_D.ins_srtgroep_upper,
|
|
ins_D.ins_srtdeel_key, ins_D.ins_srtdeel_omschrijving, ins_D.ins_srtdeel_upper,
|
|
ins_SOD.ins_srtonderdeel_key, ins_SOD.ins_srtonderdeel_omschrijving, ins_SOD.ins_srtonderdeel_upper,
|
|
ins_D.ins_deel_key, ins_D.ins_deel_omschrijving, ins_D.ins_deel_upper,
|
|
ins_OD.ins_onderdeel_key, ins_OD.ins_onderdeel_omschrijving, ins_OD.ins_onderdeel_upper,
|
|
ins_OD.ins_onderdeel_aantal, ins_OD.ins_onderdeel_fabrikaat, ins_OD.ins_onderdeel_type,
|
|
ins_OD.ins_onderdeel_serienr, ins_OD.ins_onderdeel_bouwjaar, ins_OD.ins_onderdeel_capaciteit,
|
|
ins_OD.ins_onderdeel_prijs, ins_OD.ins_onderdeel_levensduur, ins_OD.ins_onderdeel_opmerking,
|
|
ins_AO.alg_locatie_key, ins_AO.alg_gebouw_key, ins_AO.alg_gebouw_upper, ins_AO.alg_verdieping_key,
|
|
ins_AO.alg_verdieping_upper, INS_AO.alg_verdieping_omschrijving, INS_AO.alg_verdieping_volgnr,
|
|
ins_AO.alg_ruimte_key, ins_AO.alg_ruimte_nr, ins_AO.alg_ruimte_upper_nr,
|
|
ins_AO.alg_terreinsector_key, ins_AO.alg_terreinsector_upper
|
|
FROM ins_v_aanwezigsrtonderdeel ins_SOD,
|
|
ins_v_aanwezigonderdeel ins_OD,
|
|
ins_v_deel_gegevens ins_D,
|
|
ins_v_alg_overzicht ins_AO
|
|
WHERE
|
|
ins_SOD.ins_srtonderdeel_key = ins_OD.ins_srtonderdeel_key AND
|
|
ins_D.ins_deel_key = ins_OD.ins_deel_key AND
|
|
ins_AO.alg_onroerendgoed_keys = ins_OD.ins_alg_onroerendgoed_key AND
|
|
ins_OD.ins_alg_onroerendgoed_key IS NOT NULL;
|
|
|
|
CREATE_VIEW(ins_v_element_gegevens,NORMAAL_PRIVILEGE) AS
|
|
SELECT ins_SE.ins_srtelement_key,
|
|
ins_OD.ins_onderdeel_key,
|
|
ins_OD.ins_onderdeel_omschrijving,
|
|
ins_OD.ins_onderdeel_upper,
|
|
ins_EL.ins_element_key,
|
|
ins_EL.ins_element_omschrijving,
|
|
ins_EL.ins_element_upper,
|
|
ins_EL.ins_element_aantal,
|
|
ins_EL.ins_element_fabrikaat, ins_EL.ins_element_type,
|
|
ins_EL.ins_element_serienr,ins_EL.ins_element_bouwjaar,
|
|
ins_EL.ins_element_capaciteit, ins_EL.ins_element_prijs,
|
|
ins_EL.ins_element_levensduur, ins_EL.ins_element_opmerking,
|
|
ins_OD.alg_gebouw_key, ins_OD.alg_verdieping_key,
|
|
ins_OD.alg_ruimte_key, ins_OD.alg_terreinsector_key,
|
|
ins_OD.alg_gebouw_upper, ins_OD.alg_verdieping_upper,
|
|
ins_OD.alg_verdieping_omschrijving, ins_OD.alg_verdieping_volgnr,
|
|
ins_OD.alg_ruimte_nr, ins_OD.alg_terreinsector_upper,
|
|
ins_OD.ins_deel_key, ins_OD.ins_deel_upper,
|
|
ins_OD.ins_deel_omschrijving
|
|
FROM ins_v_aanwezigsrtelement ins_SE, ins_v_onderdeel_gegevens ins_OD,
|
|
ins_v_aanwezigelement ins_EL
|
|
WHERE
|
|
ins_SE.ins_srtelement_key = ins_EL.ins_srtelement_key AND
|
|
ins_OD.ins_onderdeel_key = ins_EL.ins_onderdeel_key;
|
|
#endif //INS
|
|
|
|
INSERT INTO fac_entity_name VALUES('PRS_BESTEK_DOCUMENTATIE', 'Documentatie', NULL, NULL);
|
|
|
|
INSERT INTO fac_message VALUES('MLD_M157', 'Er is geen default uitvoerende ingevuld.');
|
|
INSERT INTO fac_message VALUES('MLD_M158', 'De opdracht komt nog op een werkopdracht voor.');
|
|
|
|
#ifdef PRS
|
|
CREATE OR REPLACE VIEW prs_v_prs_disclocbestek
|
|
AS
|
|
SELECT PRS_DB.prs_disciplinebestek_key,
|
|
PRS_DB.ins_discipline_key,
|
|
PRS_DB.prs_disciplinebestek_uren,
|
|
PRS_DB.prs_discbestek_urenbesteed,
|
|
PRS_B.prs_bestek_key,
|
|
PRS_B.prs_bestek_nr,
|
|
PRS_B.prs_bestek_upper_nr,
|
|
PRS_B.prs_bestek_omschrijving,
|
|
PRS_B.prs_bestek_materiaalpost,
|
|
PRS_B.prs_bestek_materiaalbesteed,
|
|
PRS_B.prs_bestek_begindatum,
|
|
PRS_B.prs_bestek_einddatum,
|
|
PRS_LB.prs_locatiebestek_key,
|
|
ALG_L.alg_locatie_key
|
|
FROM prs_bestek PRS_B, prs_disciplinebestek PRS_DB,
|
|
prs_locatiebestek PRS_LB, alg_v_aanweziglocatie ALG_L
|
|
WHERE PRS_B.prs_bestek_key = PRS_DB.prs_bestek_key
|
|
AND PRS_B.prs_bestek_key = PRS_LB.prs_bestek_key (+)
|
|
AND ((ALG_L.alg_locatie_key = PRS_LB.alg_locatie_key)
|
|
OR (PRS_LB.prs_locatiebestek_key IS NULL));
|
|
#endif // PRS
|
|
|
|
#ifdef MLD
|
|
ALTER TABLE mld_bestelregel
|
|
MODIFY
|
|
(
|
|
mld_opdr_key
|
|
NULL
|
|
);
|
|
|
|
ALTER TABLE mld_bestelregel
|
|
ADD
|
|
(
|
|
bcp_mld_opdr_key
|
|
NUMBER(10)
|
|
NOT NULL
|
|
UNIQUE
|
|
);
|
|
|
|
DROP TRIGGER mld_t_mld_bestelregel_B_IU;
|
|
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);
|
|
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;
|
|
/
|
|
#endif
|
|
|
|
#ifdef MLD
|
|
|
|
ALTER TABLE mld_bestelopdr
|
|
ADD
|
|
(
|
|
mld_bestelopdr_fondsnr
|
|
VARCHAR2(20)
|
|
);
|
|
|
|
#endif
|
|
#ifdef INS
|
|
ALTER TABLE ins_deel
|
|
MODIFY
|
|
(
|
|
ins_deel_aantal
|
|
CHECK(ins_deel_aantal > 0)
|
|
);
|
|
#endif
|
|
|
|
#if !defined(LEV)
|
|
ALTER TABLE ins_deel
|
|
DROP
|
|
UNIQUE(ins_alg_ruimte_key,
|
|
ins_srtdeel_key, ins_deel_upper,
|
|
ins_deel_module, ins_deel_verwijder);
|
|
|
|
ALTER TABLE ins_deel
|
|
ADD
|
|
UNIQUE(ins_alg_ruimte_key,
|
|
ins_alg_ruimte_type,
|
|
ins_srtdeel_key, ins_deel_upper,
|
|
ins_deel_module, ins_deel_verwijder);
|
|
#else
|
|
ALTER TABLE ins_deel
|
|
DROP
|
|
UNIQUE(ins_alg_ruimte_key,
|
|
ins_prs_bezit_key,
|
|
ins_srtdeel_key, ins_deel_upper,
|
|
lev_levering_key, lev_bestelling_key, lev_afvoerlijst_datum,
|
|
ins_deel_module, ins_deel_verwijder);
|
|
|
|
ALTER TABLE ins_deel
|
|
ADD
|
|
UNIQUE(ins_alg_ruimte_key,
|
|
ins_alg_ruimte_type,
|
|
ins_prs_bezit_key,
|
|
ins_prs_bezit_type,
|
|
ins_srtdeel_key, ins_deel_upper,
|
|
lev_levering_key, lev_bestelling_key, lev_afvoerlijst_datum,
|
|
ins_deel_module, ins_deel_verwijder);
|
|
#endif // LEV
|
|
|
|
INSERT INTO fac_entity_name VALUES('PRS_BEDRIJF_UURLOON', 'Uurloon', 'Uurlonen', 'het');
|
|
INSERT INTO FAC_ENTITY_NAME VALUES('PER_KWARTAAL', 'Per kwartaal', NULL, NULL);
|
|
INSERT INTO FAC_ENTITY_NAME VALUES('PER_JAAR', 'Per jaar', NULL, NULL);
|
|
|
|
DELETE FROM fac_message
|
|
WHERE fac_message_code = 'BCP_M063';
|
|
INSERT INTO fac_message VALUES('BCP_M063', 'Meerjarenplanning');
|
|
|
|
INSERT INTO fac_entity_name VALUES('MLD_BESTELOPDR_FONDSNR', 'Fondsnr.', NULL, 'het');
|
|
|
|
#ifdef HUI
|
|
CREATE OR REPLACE VIEW HUI_V_OVERNACHTING_GEGEVENS
|
|
AS
|
|
SELECT ALG_G.alg_locatie_key,
|
|
ALG_G.alg_gebouw_key,
|
|
ALG_G.alg_gebouw_omschrijving,
|
|
ALG_G.alg_gebouw_upper,
|
|
ALG_V.alg_verdieping_key,
|
|
ALG_V.alg_verdieping_omschrijving,
|
|
ALG_V.alg_verdieping_volgnr,
|
|
ALG_R.alg_ruimte_key,
|
|
ALG_R.alg_ruimte_nr,
|
|
ALG_R.alg_ruimte_upper_nr,
|
|
ALG_R.hui_categorie_key,
|
|
ALG_R.hui_eenheid,
|
|
ALG_R.hui_geslacht,
|
|
HUI_W.prs_werkplek_key,
|
|
HUI_W.prs_werkplek_module,
|
|
HUI_W.prs_werkplek_volgnr,
|
|
HUI_PW.prs_perslidwerkplek_key,
|
|
HUI_PW.hui_status,
|
|
HUI_PW.hui_begindatum,
|
|
HUI_PW.hui_einddatum,
|
|
HUI_PW.prs_perslid_key
|
|
FROM hui_v_aanwezigwerkplek HUI_W,
|
|
alg_ruimte ALG_R, alg_verdieping ALG_V, alg_gebouw ALG_G,
|
|
hui_v_aanwezigperslidwerkplek HUI_PW
|
|
WHERE HUI_W.prs_alg_ruimte_key = ALG_R.alg_ruimte_key
|
|
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
|
|
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
|
|
AND HUI_W.prs_werkplek_key = HUI_PW.prs_werkplek_key
|
|
UNION
|
|
SELECT ALG_G.alg_locatie_key,
|
|
ALG_G.alg_gebouw_key,
|
|
ALG_G.alg_gebouw_omschrijving,
|
|
ALG_G.alg_gebouw_upper,
|
|
ALG_V.alg_verdieping_key,
|
|
ALG_V.alg_verdieping_omschrijving,
|
|
ALG_V.alg_verdieping_volgnr,
|
|
ALG_R.alg_ruimte_key,
|
|
ALG_R.alg_ruimte_nr,
|
|
ALG_R.alg_ruimte_upper_nr,
|
|
ALG_R.hui_categorie_key,
|
|
ALG_R.hui_eenheid,
|
|
ALG_R.hui_geslacht,
|
|
HUI_W.prs_werkplek_key,
|
|
HUI_W.prs_werkplek_module,
|
|
HUI_W.prs_werkplek_volgnr,
|
|
TO_NUMBER(NULL),
|
|
NULL,
|
|
TO_DATE(NULL),
|
|
TO_DATE(NULL),
|
|
TO_NUMBER(NULL)
|
|
FROM hui_v_aanwezigwerkplek HUI_W,
|
|
alg_ruimte ALG_R, alg_verdieping ALG_V, alg_gebouw ALG_G
|
|
WHERE HUI_W.prs_alg_ruimte_key = ALG_R.alg_ruimte_key
|
|
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
|
|
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key;
|
|
|
|
#endif
|