HOUT#17797

svn path=/Database/trunk/; revision=10329
This commit is contained in:
Peter Feij
2010-06-10 12:26:34 +00:00
parent 38763c8594
commit e69b540279

View File

@@ -1,8 +1,8 @@
#ifdef CAD // 22-05-1998 KTH
/* CAD_VIE1.SRC
*
* $Revision: 33 $
* $Modtime: 14-04-09 12:07 $
* $Revision: 34 $
* $Modtime: 10-06-10 14:20 $
*/
#include "comsql.h"
@@ -165,7 +165,7 @@ CREATE_VIEW(cad_v_lpn_prs_werkplek_1, FAC_NORMAAL_PRIVILEGE) AS
/* Standard thema/label views */
// Zowel label-views als thema-views hebben de kolommen alg_ruimte_key en waarde
// Feature: Sommige thema views kunnen updatable zijn!
// In dat geval moet de kolom waarde_key ook aanwezig zijn, en zal de code met
// In dat geval moet de kolom waarde_key ook aanwezig zijn, en zal de code met
// een UPDATE (drop) of een INSERT (shift-drop) opereren. Om die te ondersteunen
// zal meestal een INSTEAD OF trigger moeten worden gedefinieerd, dat moet
// dan ook hier gebeuren. Let op de naamgevingsconventies: cad_v_thema_x
@@ -222,7 +222,7 @@ AS
-- Insert is: toevoegen aan oude situatie
CREATE_TRIGGER(cad_t_thema_afdelingen_i_iu)
INSTEAD OF INSERT OR UPDATE
ON cad_v_thema_afdelingen
ON cad_v_thema_afdelingen
BEGIN
IF UPDATING -- oude weggooien
THEN
@@ -430,4 +430,65 @@ AS
FROM prs_perslid prs_p, prs_v_norm_verband pnv
WHERE pnv.prs_perslid_key = prs_p.prs_perslid_key;
CREATE OR REPLACE FORCE VIEW PRJ_V_CAD_LABEL_BEWONERWPE
(
PRJ_WERKPLEK_KEY,
WAARDE,
HIGHLIGHT
)
AS
SELECT DISTINCT
prj_werkplek_key, waarde, DECODE (prj_selectie_key, NULL, 0, 1)
FROM (SELECT prj_r.prj_scenario_key,
prs_w.prj_werkplek_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 || ')')
|| ': '
|| TO_CHAR (NVL (prs_pw.prj_perslidwerkplek_bezetting, 0))
|| '%'
waarde,
'PRJ_WERKPLEK' label_soort,
prs_pw.prj_werkplek_key label_key
FROM PRJ_RUIMTE prj_r,
PRJ_WERKPLEK prs_w,
(SELECT *
FROM PRJ_PERSLIDWERKPLEK
WHERE prj_perslidwerkplek_verwijder IS NULL) 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_pw.prs_perslid_key = prs_p.prs_perslid_key
AND prs_w.prj_ruimte_key = prj_r.prj_ruimte_key
UNION
SELECT -1,
prs_w.prj_werkplek_key,
' Vrij: '
|| 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_werkplek_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;
#endif // CAD