FSN#13778 Thema's gelijktrekken
svn path=/Database/trunk/; revision=9790
This commit is contained in:
160
PRJ/PRJ_VIE.SRC
160
PRJ/PRJ_VIE.SRC
@@ -1,8 +1,8 @@
|
||||
#ifdef PRJ
|
||||
/* PRJ_VIE.SRC
|
||||
*
|
||||
* $Revision: 57 $
|
||||
* $Modtime: 22-06-06 9:20 $
|
||||
* $Revision: 58 $
|
||||
* $Modtime: 17-07-08 14:47 $
|
||||
*/
|
||||
|
||||
#include "comsql.h"
|
||||
@@ -166,13 +166,18 @@ AS
|
||||
-- GRAFISCHE LABELS
|
||||
-- GRAFISCHE LABELS
|
||||
|
||||
CREATE_VIEW (prj_v_cad_label_bewoner,0) (prj_ruimte_key, waarde, label_soort, label_key, highlight)
|
||||
CREATE_VIEW (prj_v_cad_label_bewoner,0) (prj_ruimte_key, waarde, highlight)
|
||||
AS
|
||||
SELECT DISTINCT /*Voor als in meerdere buffers*/
|
||||
prj_ruimte_key, waarde, label_soort, label_key, DECODE (prj_selectie_key, NULL, 0, 1) highlight
|
||||
FROM (SELECT prj_r.prj_scenario_key, prs_w.prj_ruimte_key, '* [' || prs_a.prs_afdeling_naam || ']' waarde,
|
||||
'PRJ_PERSLIDWERKPLEK' label_soort, prs_pw.prj_perslidwerkplek_key label_key
|
||||
FROM prj_ruimte prj_r, prj_werkplek prs_w, prj_perslidwerkplek prs_pw, prs_afdeling prs_a
|
||||
SELECT DISTINCT prj_ruimte_key, waarde,
|
||||
DECODE (prj_selectie_key, NULL, 0, 1) highlight
|
||||
FROM (SELECT prj_r.prj_scenario_key, prs_w.prj_ruimte_key,
|
||||
'* [' || prs_a.prs_afdeling_naam || ']' waarde,
|
||||
'PRJ_WERKPLEK' label_soort,
|
||||
prs_pw.prj_werkplek_key label_key
|
||||
FROM PRJ_RUIMTE prj_r,
|
||||
PRJ_WERKPLEK prs_w,
|
||||
PRJ_PERSLIDWERKPLEK prs_pw,
|
||||
PRS_AFDELING prs_a
|
||||
WHERE prs_w.prj_werkplek_key = prs_pw.prj_werkplek_key
|
||||
AND prs_pw.prs_perslid_key IS NULL
|
||||
AND prs_w.prj_werkplek_verwijder IS NULL
|
||||
@@ -182,42 +187,58 @@ AS
|
||||
UNION
|
||||
SELECT prj_r.prj_scenario_key, prs_w.prj_ruimte_key,
|
||||
prs_p.prs_perslid_naam
|
||||
|| DECODE (prs_p.prs_perslid_voorletters, NULL, '', ', ' || prs_p.prs_perslid_voorletters)
|
||||
|| DECODE (prs_p.prs_perslid_voornaam, NULL, '', ' (' || prs_p.prs_perslid_voornaam || ')'),
|
||||
'PRJ_PERSLIDWERKPLEK', prs_pw.prj_perslidwerkplek_key
|
||||
FROM prj_ruimte prj_r, prj_werkplek prs_w, prj_perslidwerkplek prs_pw, prs_perslid prs_p
|
||||
|| DECODE (prs_p.prs_perslid_voorletters,
|
||||
NULL, '',
|
||||
', ' || prs_p.prs_perslid_voorletters
|
||||
)
|
||||
|| DECODE (prs_p.prs_perslid_voornaam,
|
||||
NULL, '',
|
||||
' (' || prs_p.prs_perslid_voornaam
|
||||
|| ')'
|
||||
),
|
||||
'PRJ_WERKPLEK', prs_pw.prj_werkplek_key
|
||||
FROM PRJ_RUIMTE prj_r,
|
||||
PRJ_WERKPLEK prs_w,
|
||||
PRJ_PERSLIDWERKPLEK prs_pw,
|
||||
PRS_PERSLID prs_p
|
||||
WHERE prs_w.prj_werkplek_key = prs_pw.prj_werkplek_key
|
||||
AND prs_pw.prs_perslid_key IS NOT NULL
|
||||
AND prs_w.prj_werkplek_verwijder IS NULL
|
||||
AND prs_pw.prj_perslidwerkplek_verwijder IS NULL
|
||||
AND prs_pw.prs_perslid_key = prs_p.prs_perslid_key
|
||||
AND prs_w.prj_ruimte_key = prj_r.prj_ruimte_key) vdata,
|
||||
prj_selectie ps
|
||||
WHERE ps.prj_scenario_key(+) = vdata.prj_scenario_key AND ps.prj_selectie_tabelnaam(+) = label_soort
|
||||
AND ps.prj_selectie_tabelkey(+) = label_key;
|
||||
PRJ_SELECTIE ps
|
||||
WHERE ps.prj_scenario_key(+) = vdata.prj_scenario_key
|
||||
AND ps.prj_selectie_tabelnaam(+) = label_soort
|
||||
AND ps.prj_selectie_tabelkey(+) = label_key;
|
||||
|
||||
// Note: the subselect in the FROM is *necessary* to force these record to be retrieved by outer join
|
||||
// else deleted prj_perslidwerkplek records are retrieved by inner join, and do not show up if
|
||||
// the _verwijder IS NULL is then applied.
|
||||
CREATE_VIEW (prj_v_cad_label_bewonerwp, 0) (prj_ruimte_key, waarde, label_soort, label_key, highlight)
|
||||
CREATE_VIEW (prj_v_cad_label_bewonerwp, 0) (prj_ruimte_key, waarde, highlight)
|
||||
AS
|
||||
SELECT DISTINCT /*Voor als in meerdere buffers*/
|
||||
prj_ruimte_key, waarde, label_soort, label_key, DECODE (prj_selectie_key, NULL, 0, 1)
|
||||
SELECT DISTINCT prj_ruimte_key, waarde,
|
||||
DECODE (prj_selectie_key, NULL, 0, 1)
|
||||
FROM (SELECT prj_r.prj_scenario_key, prs_w.prj_ruimte_key,
|
||||
CHR (1)
|
||||
|| prs_w.prj_werkplek_volgnr
|
||||
|| ' * ['
|
||||
|| prs_a.prs_afdeling_naam
|
||||
|| ']: '
|
||||
|| NUMBER_TO_CHAR (NVL (prs_pw.prj_perslidwerkplek_bezetting, 0))
|
||||
|| TO_CHAR
|
||||
(NVL (prs_pw.prj_perslidwerkplek_bezetting,
|
||||
0
|
||||
)
|
||||
)
|
||||
|| '%' waarde,
|
||||
'PRJ_PERSLIDWERKPLEK' label_soort, prs_pw.prj_perslidwerkplek_key label_key
|
||||
FROM prj_ruimte prj_r,
|
||||
prj_werkplek prs_w,
|
||||
'PRJ_WERKPLEK' label_soort,
|
||||
prs_pw.prj_werkplek_key label_key
|
||||
FROM PRJ_RUIMTE prj_r,
|
||||
PRJ_WERKPLEK prs_w,
|
||||
(SELECT *
|
||||
FROM prj_perslidwerkplek
|
||||
FROM PRJ_PERSLIDWERKPLEK
|
||||
WHERE prj_perslidwerkplek_verwijder IS NULL) prs_pw,
|
||||
prs_afdeling prs_a
|
||||
PRS_AFDELING prs_a
|
||||
WHERE prs_w.prj_werkplek_key = prs_pw.prj_werkplek_key
|
||||
AND prs_pw.prs_perslid_key IS NULL
|
||||
AND prs_pw.prs_afdeling_key = prs_a.prs_afdeling_key
|
||||
@@ -228,18 +249,29 @@ AS
|
||||
|| prs_w.prj_werkplek_volgnr
|
||||
|| ' '
|
||||
|| prs_p.prs_perslid_naam
|
||||
|| DECODE (prs_p.prs_perslid_voorletters, NULL, '', ', ' || prs_p.prs_perslid_voorletters)
|
||||
|| DECODE (prs_p.prs_perslid_voornaam, NULL, '', ' (' || prs_p.prs_perslid_voornaam || ')')
|
||||
|| DECODE (prs_p.prs_perslid_voorletters,
|
||||
NULL, '',
|
||||
', ' || prs_p.prs_perslid_voorletters
|
||||
)
|
||||
|| DECODE (prs_p.prs_perslid_voornaam,
|
||||
NULL, '',
|
||||
' (' || prs_p.prs_perslid_voornaam
|
||||
|| ')'
|
||||
)
|
||||
|| ': '
|
||||
|| NUMBER_TO_CHAR (NVL (prs_pw.prj_perslidwerkplek_bezetting, 0))
|
||||
|| TO_CHAR
|
||||
(NVL (prs_pw.prj_perslidwerkplek_bezetting,
|
||||
0
|
||||
)
|
||||
)
|
||||
|| '%',
|
||||
'PRJ_PERSLIDWERKPLEK', prs_pw.prj_perslidwerkplek_key
|
||||
FROM prj_ruimte prj_r,
|
||||
prj_werkplek prs_w,
|
||||
'PRJ_WERKPLEK', prs_pw.prj_werkplek_key
|
||||
FROM PRJ_RUIMTE prj_r,
|
||||
PRJ_WERKPLEK prs_w,
|
||||
(SELECT *
|
||||
FROM prj_perslidwerkplek
|
||||
FROM PRJ_PERSLIDWERKPLEK
|
||||
WHERE prj_perslidwerkplek_verwijder IS NULL) prs_pw,
|
||||
prs_perslid prs_p
|
||||
PRS_PERSLID prs_p
|
||||
WHERE prs_w.prj_werkplek_key = prs_pw.prj_werkplek_key
|
||||
AND prs_pw.prs_perslid_key IS NOT NULL
|
||||
AND prs_pw.prs_perslid_key = prs_p.prs_perslid_key
|
||||
@@ -249,18 +281,33 @@ AS
|
||||
CHR (1)
|
||||
|| prs_w.prj_werkplek_volgnr
|
||||
|| ' Vrij: '
|
||||
|| NUMBER_TO_CHAR (100 - NVL (SUM (prs_wb.prj_perslidwerkplek_bezetting), 0))
|
||||
|| TO_CHAR
|
||||
( 100
|
||||
- NVL
|
||||
(SUM
|
||||
(prs_wb.prj_perslidwerkplek_bezetting
|
||||
),
|
||||
0
|
||||
)
|
||||
)
|
||||
|| '%',
|
||||
'PRJ_WERKPLEK', prs_w.prj_werkplek_key
|
||||
FROM prj_werkplek prs_w, (SELECT *
|
||||
FROM prj_perslidwerkplek
|
||||
WHERE prj_perslidwerkplek_verwijder IS NULL) prs_wb
|
||||
WHERE prs_w.prj_werkplek_key = prs_wb.prj_werkplek_key(+) AND prj_werkplek_verwijder IS NULL
|
||||
GROUP BY prs_w.prj_ruimte_key, prs_w.prj_werkplek_key, prs_w.prj_werkplek_volgnr
|
||||
HAVING SUM (NVL (prs_wb.prj_perslidwerkplek_bezetting, 0)) < 100) DATA,
|
||||
prj_selectie ps
|
||||
WHERE ps.prj_scenario_key(+) = DATA.prj_scenario_key AND ps.prj_selectie_tabelnaam(+) = label_soort
|
||||
AND ps.prj_selectie_tabelkey(+) = label_key;
|
||||
FROM PRJ_WERKPLEK prs_w,
|
||||
(SELECT *
|
||||
FROM PRJ_PERSLIDWERKPLEK
|
||||
WHERE prj_perslidwerkplek_verwijder IS NULL) prs_wb
|
||||
WHERE prs_w.prj_werkplek_key = prs_wb.prj_werkplek_key(+)
|
||||
AND prj_werkplek_verwijder IS NULL
|
||||
GROUP BY prs_w.prj_ruimte_key,
|
||||
prs_w.prj_werkplek_key,
|
||||
prs_w.prj_werkplek_volgnr
|
||||
HAVING SUM (NVL (prs_wb.prj_perslidwerkplek_bezetting,
|
||||
0)
|
||||
) < 100) DATA,
|
||||
PRJ_SELECTIE ps
|
||||
WHERE ps.prj_scenario_key(+) = DATA.prj_scenario_key
|
||||
AND ps.prj_selectie_tabelnaam(+) = label_soort
|
||||
AND ps.prj_selectie_tabelkey(+) = label_key;
|
||||
|
||||
CREATE_VIEW(prj_v_werkplek_oppervlakte, 0) (prj_werkplek_key, wpopp)
|
||||
AS
|
||||
@@ -286,17 +333,16 @@ AS
|
||||
AND prj_werkplek_verwijder is null
|
||||
ORDER BY prj_werkplek_key;
|
||||
|
||||
CREATE_VIEW (prj_v_cad_label_werkplekken,0) (prj_ruimte_key, waarde, label_soort, label_key, highlight)
|
||||
CREATE_VIEW (prj_v_cad_label_werkplekken,0) (prj_ruimte_key, waarde, highlight)
|
||||
AS
|
||||
SELECT prj_ruimte_key,
|
||||
CHR (1)
|
||||
|| prj_werkplek_volgnr
|
||||
|| ' ('
|
||||
|| NUMBER_TO_CHAR (wpopp, 'FM9999.0')
|
||||
|| TO_CHAR (wpopp, 'FM9999.0')
|
||||
|| 'm2 '
|
||||
|| NUMBER_TO_CHAR (bez)
|
||||
|| TO_CHAR (bez)
|
||||
|| '%)' waarde,
|
||||
label_soort, label_key,
|
||||
DECODE (SIGN (bez - 100),
|
||||
1, 2,
|
||||
DECODE (prj_selectie_key, NULL, 0, 1)
|
||||
@@ -306,28 +352,40 @@ AS
|
||||
SUM (NVL (prs_pw.prj_perslidwerkplek_bezetting, 0)) bez,
|
||||
'PRJ_WERKPLEK' label_soort,
|
||||
prs_w.prj_werkplek_key label_key, wpopp
|
||||
FROM prj_ruimte prj_r,
|
||||
prj_werkplek prs_w,
|
||||
FROM PRJ_RUIMTE prj_r,
|
||||
PRJ_WERKPLEK prs_w,
|
||||
prj_v_werkplek_oppervlakte pwo,
|
||||
(SELECT *
|
||||
FROM prj_perslidwerkplek
|
||||
FROM PRJ_PERSLIDWERKPLEK
|
||||
WHERE prj_perslidwerkplek_verwijder IS NULL) prs_pw
|
||||
WHERE prs_w.prj_werkplek_key = prs_pw.prj_werkplek_key(+)
|
||||
AND pwo.prj_werkplek_key(+) = prs_w.prj_werkplek_key
|
||||
AND prs_w.prj_ruimte_key = prj_r.prj_ruimte_key
|
||||
AND prs_w.prj_werkplek_verwijder IS NULL
|
||||
-- AND prs_pw.prj_perslidwerkplek_verwijder IS NULL
|
||||
GROUP BY prj_scenario_key,
|
||||
prs_w.prj_ruimte_key,
|
||||
prs_w.prj_werkplek_volgnr,
|
||||
'PRJ_WERKPLEK',
|
||||
prs_w.prj_werkplek_key,
|
||||
wpopp) vdata,
|
||||
prj_selectie ps
|
||||
PRJ_SELECTIE ps
|
||||
WHERE ps.prj_scenario_key(+) = vdata.prj_scenario_key
|
||||
AND ps.prj_selectie_tabelnaam(+) = label_soort AND ps.prj_selectie_tabelkey(+) =
|
||||
label_key;
|
||||
|
||||
CREATE_VIEW(prj_v_cad_v_label_srtruimteopp, 0)
|
||||
(prj_ruimte_key, waarde)
|
||||
AS
|
||||
SELECT r.prj_ruimte_key,
|
||||
sr.alg_srtruimte_omschrijving
|
||||
|| ' ('
|
||||
|| r.prj_ruimte_bruto_vloeropp
|
||||
|| ' m2)'
|
||||
FROM PRJ_RUIMTE r, ALG_SRTRUIMTE sr
|
||||
WHERE r.alg_srtruimte_key = sr.alg_srtruimte_key
|
||||
AND prj_ruimte_verwijder IS NULL;
|
||||
/
|
||||
|
||||
//De objecten in een ruimte (de soort-keys kunnen worden gebruikt om onroerende objecten uit te sluiten)
|
||||
CREATE_VIEW (prj_v_cad_label_object,0) (prj_ruimte_key,
|
||||
waarde,
|
||||
|
||||
Reference in New Issue
Block a user