Files
Database/PRJ/PRJ_VIE.SRC
1999-07-27 14:30:08 +00:00

299 lines
11 KiB
Plaintext

#ifdef PRJ
/* Revisie:
**
** 26-07-1999 EGR nieuwe view: prj_v_aanwezigdeel.
** 22-07-1999 EGR nieuwe views: prj_v_aanwezigruimte, prj_v_aanwezigwerkplek, prj_v_plattegrond,
** prj_v_contour, prj_v_discipline, prj_v_verhuis, prj_v_cad_aanwezigtekening,
** prj_v_cad_tekening, prj_v_cad_tekening_gegevens
** en herdefinitie van cad-views i.v.m. uitbreiding tabel cad_tekening:
** cad_v_cad_tekening, cad_v_cad_aanwezigtekening,cad_v_cad_tekening_gegevens,
** cad_v_plattegrond, cad_v_contour, cad_v_discipline
** 20-04-1999 ABO Aangemaakt.
*/
#include "comsql.h"
CREATE_VIEW(PRJ_V_PRJ_PROJECT_DEFINITIE, PRJ_NORMAAL_PRIVILEGE)
( cad_tekening_key
, prj_project_key
, prj_gebouw_key
, prj_locatie_key
, prj_verdieping_key
, prj_discipline_key
, prj_project_nr
, prj_gebouw_omschrijving
, prj_verdieping_omschrijving
, prj_discipline_omschrijving
)
AS
SELECT T.cad_tekening_key
, T.prj_project_key
, O.alg_gebouw_key
, T.alg_locatie_key
, T.alg_verdieping_key
, T.ins_discipline_key
, P.prj_project_nr
, O.alg_gebouw_code||' '||alg_gebouw_naam
, O.alg_verdieping_volgnr||' '||O.alg_verdieping_omschrijving
, D.ins_discipline_omschrijving
FROM ins_tab_discipline D
, cad_tekening T
, alg_v_onroerendgoed_gegevens O
, prj_project P
WHERE P.prj_project_key (+) = T.prj_project_key
AND T.ins_discipline_key = D.ins_discipline_key
AND T.alg_verdieping_key = O.alg_onroerendgoed_keys (+)
AND T.cad_tekening_type = 'D';
DEFINIEER_VIEW_AANWEZIG(prj_deel
,ins_deel_verwijder
,prj_v_aanwezigdeel
,PRJ_NORMAAL_PRIVILEGE)
DEFINIEER_VIEW_AANWEZIG(prj_ruimte
,alg_ruimte_verwijder
,prj_v_aanwezigruimte
,PRJ_NORMAAL_PRIVILEGE);
DEFINIEER_VIEW_AANWEZIG(prj_werkplek
,prs_werkplek_verwijder
,prj_v_aanwezigwerkplek
,PRS_NORMAAL_PRIVILEGE);
CREATE_VIEW(prj_v_plattegrond, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening
WHERE UPPER(cad_tekening_type) = 'P'
AND prj_project_key IS NOT NULL;
CREATE_VIEW(prj_v_contour, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening
WHERE UPPER(cad_tekening_type) = 'C'
AND prj_project_key IS NOT NULL;
CREATE_VIEW(prj_v_discipline, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening
WHERE UPPER(cad_tekening_type) = 'D'
AND prj_project_key IS NOT NULL;
CREATE_VIEW(prj_v_verhuis, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening
WHERE UPPER(cad_tekening_type) = 'V'
AND prj_project_key IS NOT NULL;
CREATE_VIEW(prj_v_cad_aanwezigtekening, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening C_T
WHERE prj_project_key IS NOT NULL
AND ( C_T.ins_discipline_key IN (SELECT ins_discipline_key
FROM ins_discipline)
OR C_T.ins_discipline_key IS NULL);
CREATE_VIEW(prj_v_cad_tekening, PRJ_NORMAAL_PRIVILEGE)
AS SELECT ins_discipline_key
, alg_locatie_key
, alg_verdieping_key
, cad_tekening_type
, cad_tekening_filenaam
, prj_project_key
FROM cad_tekening C_T
WHERE prj_project_key IS NOT NULL;
CREATE_VIEW(prj_v_cad_tekening_gegevens, PRJ_NORMAAL_PRIVILEGE)
( cad_tekening_key
, alg_locatie_key
, alg_locatie_code
, alg_gebouw_key
, alg_gebouw_code
, alg_verdieping_key
, alg_verdieping_omschrijving
, ins_discipline_key
, ins_discipline_omschrijving)
AS SELECT C_T.cad_tekening_key
, C_T.alg_locatie_key
, ALG_L.alg_locatie_code
, ALG_G.alg_gebouw_key
, ALG_G.alg_gebouw_code
, C_T.alg_verdieping_key
, ALG_V.alg_verdieping_omschrijving
, C_T.ins_discipline_key
, INS_D.ins_discipline_omschrijving
FROM alg_locatie ALG_L
, alg_verdieping ALG_V
, alg_gebouw ALG_G
, ins_discipline INS_D
, cad_v_cad_aanwezigtekening C_T
WHERE C_T.alg_locatie_key = ALG_L.alg_locatie_key
AND C_T.alg_verdieping_key = ALG_V.alg_verdieping_key (+)
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key (+)
AND C_T.ins_discipline_key = INS_D.ins_discipline_key (+);
/*
** Herdefinitie van de cad-views omdat er een veld aan cad_tekening
** is toegevoegd voor projecten.
*/
CREATE_VIEW(cad_v_cad_aanwezigtekening, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening C_T
WHERE prj_project_key IS NULL
AND ( C_T.ins_discipline_key IN (SELECT ins_discipline_key
FROM ins_discipline)
OR C_T.ins_discipline_key IS NULL);
CREATE_VIEW(cad_v_cad_tekening, PRJ_NORMAAL_PRIVILEGE)
AS SELECT ins_discipline_key
, alg_locatie_key
, alg_verdieping_key
, cad_tekening_type
, cad_tekening_filenaam
, prj_project_key
FROM cad_tekening C_T
WHERE prj_project_key IS NULL;
CREATE_VIEW(cad_v_cad_tekening_gegevens, PRJ_NORMAAL_PRIVILEGE)
( cad_tekening_key
, alg_locatie_key
, alg_locatie_code
, alg_gebouw_key
, alg_gebouw_code
, alg_verdieping_key
, alg_verdieping_omschrijving
, ins_discipline_key
, ins_discipline_omschrijving)
AS SELECT C_T.cad_tekening_key
, C_T.alg_locatie_key
, ALG_L.alg_locatie_code
, ALG_G.alg_gebouw_key
, ALG_G.alg_gebouw_code
, C_T.alg_verdieping_key
, ALG_V.alg_verdieping_omschrijving
, C_T.ins_discipline_key
, INS_D.ins_discipline_omschrijving
FROM alg_locatie ALG_L
, alg_verdieping ALG_V
, alg_gebouw ALG_G
, ins_discipline INS_D
, cad_v_cad_aanwezigtekening C_T
WHERE C_T.alg_locatie_key = ALG_L.alg_locatie_key
AND C_T.alg_verdieping_key = ALG_V.alg_verdieping_key (+)
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key (+)
AND C_T.ins_discipline_key = INS_D.ins_discipline_key (+);
CREATE_VIEW(cad_v_plattegrond, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening
WHERE UPPER(cad_tekening_type) = 'P'
AND prj_project_key IS NULL;
CREATE_VIEW(cad_v_contour, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening
WHERE UPPER(cad_tekening_type) = 'C'
AND prj_project_key IS NULL;
CREATE_VIEW(cad_v_discipline, PRJ_NORMAAL_PRIVILEGE)
AS SELECT *
FROM cad_tekening
WHERE UPPER(cad_tekening_type) = 'D'
AND prj_project_key IS NULL;
CREATE_VIEW(ins_v_deel_plaatsaanduiding, PRJ_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, PRJ_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, PRJ_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;
#endif // PRJ