Module INS verplaatst tot boven Module CAD aangezien er vanuit de cad-package twee nieuwe functies van INS worden aangeroepen.

svn path=/Database/trunk/; revision=7020
This commit is contained in:
Bert in het Veld
1999-08-24 14:26:04 +00:00
parent 995ea9efe9
commit aa6bdfabfe

View File

@@ -96,6 +96,186 @@ END_MODULE;
BEGIN_MODULE('BIS')
END_MODULE;
BEGIN_MODULE('INS')
CREATE_VIEW (ins_v_ins_deel_verdieping,INS_NORMAAL_PRIVILEGE)
( ins_deel_key
, alg_verdieping_key)
AS SELECT INS_D.ins_deel_key,
ALG_R.alg_verdieping_key
FROM ins_deel INS_D,
alg_ruimte ALG_R
WHERE INS_D.ins_alg_ruimte_key = ALG_R.alg_ruimte_key
AND ins_alg_ruimte_type = 'R'
AND ins_deel_verwijder IS NULL
UNION
SELECT INS_D.ins_deel_key,
ALG_R.alg_verdieping_key
FROM ins_deel INS_D,
prs_werkplek PRS_W,
alg_ruimte ALG_R
WHERE INS_D.ins_alg_ruimte_key = PRS_W.prs_werkplek_key
AND PRS_W.prs_alg_ruimte_key = ALG_R.alg_ruimte_key
AND ins_alg_ruimte_type = 'W'
AND ins_deel_verwijder IS NULL
/
CREATE_VIEW(ins_v_deel_plaatsaanduiding,INS_NORMAAL_PRIVILEGE)
( alg_plaatsaanduiding
, prs_werkplek_key
, prs_werkplek_verwijder
, ins_deel_key
, ins_deel_omschrijving
, ins_deel_verwijder)
AS SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr,
to_number(NULL)
, to_date(NULL)
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = ALG_R.alg_ruimte_key
AND INS_D.ins_alg_ruimte_type = 'R'
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
UNION
SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr ||'/'
|| to_char(PRS_W.prs_werkplek_volgnr)
, PRS_W.prs_werkplek_key
, PRS_W.prs_werkplek_verwijder
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, prs_werkplek PRS_W
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = PRS_W.prs_werkplek_key
AND INS_D.ins_alg_ruimte_type = 'W'
AND PRS_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
/
CREATE_VIEW(ins_v_deel_plaatsaanduiding_r,INS_NORMAAL_PRIVILEGE)
( alg_plaatsaanduiding
, prs_werkplek_key
, prs_werkplek_verwijder
, ins_deel_key
, ins_deel_omschrijving
, ins_deel_verwijder)
AS SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr
, to_number(NULL)
, to_date(NULL)
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = ALG_R.alg_ruimte_key
AND INS_D.ins_alg_ruimte_type = 'R'
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
/
CREATE_VIEW(ins_v_deel_plaatsaanduiding_w,INS_NORMAAL_PRIVILEGE)
( alg_plaatsaanduiding
, prs_werkplek_key
, prs_werkplek_verwijder
, ins_deel_key
, ins_deel_omschrijving
, ins_deel_verwijder)
AS SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr ||'/'
|| to_char(PRS_W.prs_werkplek_volgnr),
PRS_W.prs_werkplek_key
, PRS_W.prs_werkplek_verwijder
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, prs_werkplek PRS_W
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = PRS_W.prs_werkplek_key
AND INS_D.ins_alg_ruimte_type = 'W'
AND PRS_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
/
CREATE OR REPLACE PROCEDURE WriteKenmerkWaarde(DeelKey IN NUMBER, KenmerkKey IN NUMBER, KenmerkWaarde IN VARCHAR2) IS
Dummy VARCHAR2(1);
BEGIN
BEGIN
SELECT 'x' INTO Dummy
FROM ins_kenmerkdeel
WHERE ins_deel_key = DeelKey
AND ins_kenmerk_key = KenmerkKey;
UPDATE ins_kenmerkdeel
SET ins_kenmerkdeel_waarde = KenmerkWaarde
WHERE ins_deel_key = DeelKey
AND ins_kenmerk_key = KenmerkKey;
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
BEGIN
SELECT 'x' INTO Dummy
FROM ins_deel
WHERE ins_deel_key = DeelKey;
SELECT 'x' INTO Dummy
FROM ins_kenmerk
WHERE ins_kenmerk_key = KenmerkKey;
/* Kenmerk staat nog niet in ins_kenmerkdeel -> toevoegen */
INSERT INTO ins_kenmerkdeel(ins_deel_key, ins_kenmerk_key, ins_kenmerkdeel_waarde)
VALUES (DeelKey, KenmerkKey, KenmerkWaarde);
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RAISE_APPLICATION_ERROR(-20004, ' DeelKey : '||TO_CHAR(DeelKey)||
'of KenmerkKey : '||TO_CHAR(KenmerkKey)||' niet gevonden...');
END;
END;
END;
/
CREATE OR REPLACE FUNCTION ReadKenmerkWaarde(DeelKey IN NUMBER, KenmerkKey IN NUMBER) RETURN VARCHAR2 IS
KenmerkWaarde ins_kenmerkdeel.ins_kenmerkdeel_waarde%TYPE;
BEGIN
BEGIN
SELECT ins_kenmerkdeel_waarde INTO KenmerkWaarde
FROM ins_kenmerkdeel
WHERE ins_deel_key = DeelKey
AND ins_kenmerk_key = KenmerkKey;
RETURN KenmerkWaarde;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RETURN NULL;
END;
END;
/
END_MODULE;
BEGIN_MODULE('CAD')
CREATE_VIEW(cad_v_alg_ruimte_nieuw, FAC_NORMAAL_PRIVILEGE) AS
@@ -2668,183 +2848,6 @@ DEF_FAC_MESSAGE ('PRJ_RAP009', '[Nieuwe werkplekken]');
END_MODULE;
BEGIN_MODULE('INS')
CREATE_VIEW (ins_v_ins_deel_verdieping,INS_NORMAAL_PRIVILEGE)
( ins_deel_key
, alg_verdieping_key)
AS SELECT INS_D.ins_deel_key,
ALG_R.alg_verdieping_key
FROM ins_deel INS_D,
alg_ruimte ALG_R
WHERE INS_D.ins_alg_ruimte_key = ALG_R.alg_ruimte_key
AND ins_alg_ruimte_type = 'R'
AND ins_deel_verwijder IS NULL
UNION
SELECT INS_D.ins_deel_key,
ALG_R.alg_verdieping_key
FROM ins_deel INS_D,
prs_werkplek PRS_W,
alg_ruimte ALG_R
WHERE INS_D.ins_alg_ruimte_key = PRS_W.prs_werkplek_key
AND PRS_W.prs_alg_ruimte_key = ALG_R.alg_ruimte_key
AND ins_alg_ruimte_type = 'W'
AND ins_deel_verwijder IS NULL
/
CREATE_VIEW(ins_v_deel_plaatsaanduiding,INS_NORMAAL_PRIVILEGE)
( alg_plaatsaanduiding
, prs_werkplek_key
, prs_werkplek_verwijder
, ins_deel_key
, ins_deel_omschrijving
, ins_deel_verwijder)
AS SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr,
to_number(NULL)
, to_date(NULL)
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = ALG_R.alg_ruimte_key
AND INS_D.ins_alg_ruimte_type = 'R'
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
UNION
SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr ||'/'
|| to_char(PRS_W.prs_werkplek_volgnr)
, PRS_W.prs_werkplek_key
, PRS_W.prs_werkplek_verwijder
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, prs_werkplek PRS_W
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = PRS_W.prs_werkplek_key
AND INS_D.ins_alg_ruimte_type = 'W'
AND PRS_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
/
CREATE_VIEW(ins_v_deel_plaatsaanduiding_r,INS_NORMAAL_PRIVILEGE)
( alg_plaatsaanduiding
, prs_werkplek_key
, prs_werkplek_verwijder
, ins_deel_key
, ins_deel_omschrijving
, ins_deel_verwijder)
AS SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr
, to_number(NULL)
, to_date(NULL)
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = ALG_R.alg_ruimte_key
AND INS_D.ins_alg_ruimte_type = 'R'
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
/
CREATE_VIEW(ins_v_deel_plaatsaanduiding_w,INS_NORMAAL_PRIVILEGE)
( alg_plaatsaanduiding
, prs_werkplek_key
, prs_werkplek_verwijder
, ins_deel_key
, ins_deel_omschrijving
, ins_deel_verwijder)
AS SELECT ALG_G.alg_gebouw_code ||' - '
|| to_char(ALG_V.alg_verdieping_volgnr) ||' - '
|| ALG_R.alg_ruimte_nr ||'/'
|| to_char(PRS_W.prs_werkplek_volgnr),
PRS_W.prs_werkplek_key
, PRS_W.prs_werkplek_verwijder
, INS_D.ins_deel_key
, INS_D.ins_deel_omschrijving
, INS_D.ins_deel_verwijder
FROM ins_deel INS_D
, prs_werkplek PRS_W
, alg_ruimte ALG_R
, alg_verdieping ALG_V
, alg_gebouw ALG_G
WHERE INS_D.ins_alg_ruimte_key = PRS_W.prs_werkplek_key
AND INS_D.ins_alg_ruimte_type = 'W'
AND PRS_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
/
CREATE OR REPLACE PROCEDURE WriteKenmerkWaarde(DeelKey IN NUMBER, KenmerkKey IN NUMBER, KenmerkWaarde IN VARCHAR2) IS
Dummy VARCHAR2(1);
BEGIN
BEGIN
SELECT 'x' INTO Dummy
FROM ins_kenmerkdeel
WHERE ins_deel_key = DeelKey
AND ins_kenmerk_key = KenmerkKey;
UPDATE ins_kenmerkdeel
SET ins_kenmerkdeel_waarde = KenmerkWaarde
WHERE ins_deel_key = DeelKey
AND ins_kenmerk_key = KenmerkKey;
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
BEGIN
SELECT 'x' INTO Dummy
FROM ins_deel
WHERE ins_deel_key = DeelKey;
SELECT 'x' INTO Dummy
FROM ins_kenmerk
WHERE ins_kenmerk_key = KenmerkKey;
/* Kenmerk staat nog niet in ins_kenmerkdeel -> toevoegen */
INSERT INTO ins_kenmerkdeel(ins_deel_key, ins_kenmerk_key, ins_kenmerkdeel_waarde)
VALUES (DeelKey, KenmerkKey, KenmerkWaarde);
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RAISE_APPLICATION_ERROR(-20004, ' DeelKey : '||TO_CHAR(DeelKey)||
'of KenmerkKey : '||TO_CHAR(KenmerkKey)||' niet gevonden...');
END;
END;
END;
/
CREATE OR REPLACE FUNCTION ReadKenmerkWaarde(DeelKey IN NUMBER, KenmerkKey IN NUMBER) RETURN VARCHAR2 IS
KenmerkWaarde ins_kenmerkdeel.ins_kenmerkdeel_waarde%TYPE;
BEGIN
BEGIN
SELECT ins_kenmerkdeel_waarde INTO KenmerkWaarde
FROM ins_kenmerkdeel
WHERE ins_deel_key = DeelKey
AND ins_kenmerk_key = KenmerkKey;
RETURN KenmerkWaarde;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RETURN NULL;
END;
END;
/
END_MODULE;
BEGIN_MODULE('PRS')