1047 lines
51 KiB
SQL
1047 lines
51 KiB
SQL
SPOOL xCAPG.SQL
|
|
SET ECHO ON
|
|
--CAPG#100
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_KOSTENPLAATSAFDELING
|
|
(PRS_AFDELING_KEY, PRS_KOSTENPLAATS_KEY)
|
|
AS
|
|
select max(prs_afdeling_key) prs_afdeling_key, prs_kostenplaats_key from
|
|
prs_afdeling group by prs_kostenplaats_key;
|
|
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_SODEXHO_RAPPORT (FCLT_F_Maand, FCLT_F_Artikelnummer, Categorie, Groep, Aantal, Omschrijving, Inkoop, Personeel, Algemeen, Totaal)
|
|
AS
|
|
SELECT maand, artnr AS artikelnummer,
|
|
(SELECT ud.fac_usrdata_omschr
|
|
FROM fac_usrdata ud, fac_usrtab ut
|
|
WHERE ud.fac_usrtab_key = ut.fac_usrtab_key
|
|
AND ut.fac_usrtab_omschrijving = 'Catering groep'
|
|
AND SUBSTR (TO_CHAR (fac.safe_to_number (fac_usrdata_code),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
5
|
|
)
|
|
|| '000' =
|
|
SUBSTR (TO_CHAR (fac.safe_to_number (tot1000),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
5
|
|
)
|
|
|| '000'
|
|
AND ROWNUM = 1) AS categorie,
|
|
(SELECT ud.fac_usrdata_omschr
|
|
FROM fac_usrdata ud, fac_usrtab ut
|
|
WHERE ud.fac_usrtab_key = ut.fac_usrtab_key
|
|
AND ut.fac_usrtab_omschrijving = 'Catering groep'
|
|
AND SUBSTR (TO_CHAR (fac.safe_to_number (fac_usrdata_code),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
6
|
|
)
|
|
|| '00' =
|
|
SUBSTR (TO_CHAR (fac.safe_to_number (tot100),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
6
|
|
)
|
|
|| '00'
|
|
AND ROWNUM = 1) AS groep,
|
|
aantal AS aantal, omschr AS omschrijving, inkoop, personeel, algemeen,
|
|
TO_CHAR (prijs, '99999990.00') AS totaal
|
|
FROM (SELECT TO_CHAR (res_rsv_artikel_levering, 'YYMM') AS maand,
|
|
TO_CHAR (fac.safe_to_number (LTRIM (res_artikel_nr)),
|
|
'FM00000000'
|
|
) AS artnr,
|
|
TO_CHAR (NULL) AS tot1000, TO_CHAR (NULL) AS tot100,
|
|
SUM (res_rsv_artikel_aantal) AS aantal,
|
|
RTRIM (LTRIM (res_artikel_omschrijving)) AS omschr,
|
|
SUM (res_rsv_artikel_aantal * res_rsv_artikel_prijs)
|
|
AS prijs,
|
|
res_artikel_inkoopprijs AS inkoop,
|
|
res_artikel_kostenpersoneel AS personeel,
|
|
res_artikel_kostenalgemeen AS algemeen
|
|
FROM res_v_aanwezigrsv_artikel rra, res_artikel ra
|
|
WHERE ra.res_artikel_key = rra.res_artikel_key
|
|
GROUP BY TO_CHAR (res_rsv_artikel_levering, 'YYMM'),
|
|
LTRIM (res_artikel_nr),
|
|
RTRIM (LTRIM (res_artikel_omschrijving)),
|
|
res_artikel_inkoopprijs,
|
|
res_artikel_kostenpersoneel,
|
|
res_artikel_kostenalgemeen
|
|
UNION ALL
|
|
SELECT TO_CHAR (res_rsv_artikel_levering, 'YYMM') AS maand,
|
|
SUBSTR
|
|
(TO_CHAR (fac.safe_to_number (res_artikel_nr),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
6
|
|
)
|
|
|| '00' AS artnr,
|
|
TO_CHAR (NULL) AS tot1000,
|
|
SUBSTR
|
|
(TO_CHAR (fac.safe_to_number (res_artikel_nr),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
6
|
|
)
|
|
|| '00' AS tot100,
|
|
TO_NUMBER (NULL) AS aantal, '' AS omschr,
|
|
SUM (res_rsv_artikel_aantal * res_rsv_artikel_prijs)
|
|
AS prijs,
|
|
TO_NUMBER (NULL) AS inkoop, TO_NUMBER (NULL) AS personeel,
|
|
TO_NUMBER (NULL) AS algemeen
|
|
FROM res_v_aanwezigrsv_artikel rra, res_artikel ra
|
|
WHERE ra.res_artikel_key = rra.res_artikel_key
|
|
GROUP BY TO_CHAR (res_rsv_artikel_levering, 'YYMM'),
|
|
SUBSTR (TO_CHAR (fac.safe_to_number (res_artikel_nr),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
6
|
|
)
|
|
UNION ALL
|
|
SELECT TO_CHAR (res_rsv_artikel_levering, 'YYMM') AS maand,
|
|
SUBSTR
|
|
(TO_CHAR (fac.safe_to_number (res_artikel_nr),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
5
|
|
)
|
|
|| '000' AS artnr,
|
|
SUBSTR
|
|
(TO_CHAR (fac.safe_to_number (res_artikel_nr),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
5
|
|
)
|
|
|| '000' AS tot1000,
|
|
TO_CHAR (NULL) AS tot100, TO_NUMBER (NULL) AS aantal,
|
|
'' AS omschr,
|
|
SUM (res_rsv_artikel_aantal * res_rsv_artikel_prijs)
|
|
AS prijs,
|
|
TO_NUMBER (NULL) AS inkoop, TO_NUMBER (NULL) AS personeel,
|
|
TO_NUMBER (NULL) AS algemeen
|
|
FROM res_v_aanwezigrsv_artikel rra, res_artikel ra
|
|
WHERE ra.res_artikel_key = rra.res_artikel_key
|
|
GROUP BY TO_CHAR (res_rsv_artikel_levering, 'YYMM'),
|
|
SUBSTR (TO_CHAR (fac.safe_to_number (res_artikel_nr),
|
|
'FM00000000'
|
|
),
|
|
0,
|
|
5
|
|
)
|
|
UNION ALL
|
|
SELECT TO_CHAR (res_rsv_artikel_levering, 'YYMM') AS maand,
|
|
' TOTAAL', '', '' AS tot100, TO_NUMBER (NULL) AS aantal,
|
|
'' AS omschr,
|
|
SUM (res_rsv_artikel_aantal * res_rsv_artikel_prijs)
|
|
AS prijs,
|
|
TO_NUMBER (NULL) AS inkoop, TO_NUMBER (NULL) AS personeel,
|
|
TO_NUMBER (NULL) AS algemeen
|
|
FROM res_v_aanwezigrsv_artikel rra, res_artikel ra
|
|
WHERE ra.res_artikel_key = rra.res_artikel_key
|
|
GROUP BY TO_CHAR (res_rsv_artikel_levering, 'YYMM'));
|
|
|
|
|
|
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_DOORBELASTING_SECTOR
|
|
(FCLT_F_MAAND, FCLT_F_SECTOR, PRACTICE, P_NUMMER, DATUM, AFLEVERTIJD,
|
|
RUIMTE, GASTHEER, AANVRAGER, RES_OMSCHRIJVING, PERSONEN,
|
|
AANTAL, ARTIKEL, KOSTEN, RESERVERING)
|
|
AS
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
(SELECT afs.prs_afdeling_naam
|
|
FROM prs_v_afdeling afs
|
|
WHERE afs.prs_afdeling_key =
|
|
af.prs_afdeling_parentkey)
|
|
fclt_f_sector,
|
|
af.prs_afdeling_naam practice, k.prs_kostenplaats_nr p_nummer,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'DD-MM-YYYY') datum,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'HH24:MI') aflevertijd,
|
|
rg.res_ruimte_nr lokatie,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key) AS gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
rr.res_rsv_ruimte_contact_key)
|
|
AS aanvrager,
|
|
rr.res_rsv_ruimte_omschrijving omschrijving,
|
|
TO_CHAR (rr.res_rsv_ruimte_bezoekers) personen,
|
|
TO_CHAR (ra.res_rsv_artikel_aantal),
|
|
a.res_artikel_omschrijving
|
|
|| ' ('
|
|
|| NVL (a.res_artikel_eenheid, '')
|
|
|| ')' aantal,
|
|
TO_CHAR (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) kosten,
|
|
TO_CHAR (rr.res_reservering_key) resnr
|
|
FROM res_rsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
res_rsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka,
|
|
prs_kostenplaats k
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND k.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rr.res_rsv_ruimte_key NOT IN (
|
|
SELECT res_rsv_ruimte_key
|
|
FROM res_rsv_ruimte
|
|
WHERE res_rsv_ruimte_verwijder IS NOT NULL
|
|
AND res_status_fo_key <> 4)
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
(SELECT afs.prs_afdeling_naam
|
|
FROM prs_v_afdeling afs
|
|
WHERE afs.prs_afdeling_key =
|
|
af.prs_afdeling_parentkey)
|
|
fclt_f_sector,
|
|
af.prs_afdeling_naam practice, k.prs_kostenplaats_nr p_nummer,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'DD-MM-YYYY') datum,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'HH24:MI') aflevertijd,
|
|
(SELECT MIN (alg_ruimte_aanduiding)
|
|
FROM res_v_alg_ruimte_gegevens
|
|
WHERE alg_ruimte_key = rr.alg_ruimte_key) locatie,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE p.prs_perslid_key = pf.prs_perslid_key) AS gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
rr.res_rsv_ruimte_contact_key)
|
|
AS aanvrager,
|
|
rr.res_rsv_ruimte_omschrijving omschrijving, '' personen,
|
|
TO_CHAR (ra.res_rsv_artikel_aantal),
|
|
a.res_artikel_omschrijving
|
|
|| ' ('
|
|
|| NVL (a.res_artikel_eenheid, '')
|
|
|| ')' aantal,
|
|
TO_CHAR (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) kosten,
|
|
TO_CHAR (rr.res_reservering_key) resnr
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka,
|
|
prs_kostenplaats k
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key IS NOT NULL
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND k.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
UNION ALL
|
|
SELECT fclt_f_maand, fclt_f_sector, practice, p_nummer, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, NULL, NULL, 'Subtotaal Practice',
|
|
TO_CHAR (SUM (kosten), '999990.99') som, NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
af.prs_afdeling_naam practice,
|
|
k.prs_kostenplaats_nr p_nummer, NULL, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, NULL, 'Subtotaal Practice',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_rsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_rsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka,
|
|
prs_kostenplaats k
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND k.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND rr.res_rsv_ruimte_key NOT IN (
|
|
SELECT res_rsv_ruimte_key
|
|
FROM res_rsv_ruimte
|
|
WHERE res_rsv_ruimte_verwijder IS NOT NULL
|
|
AND res_status_fo_key <> 4)
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam,
|
|
af.prs_afdeling_naam,
|
|
k.prs_kostenplaats_nr
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
af.prs_afdeling_naam practice, k.prs_kostenplaats_nr, NULL,
|
|
NULL, NULL, NULL, NULL, NULL, NULL, NULL,
|
|
'Subtotaal Practice',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka,
|
|
prs_kostenplaats k
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key IS NOT NULL
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND k.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam,
|
|
af.prs_afdeling_naam,
|
|
k.prs_kostenplaats_nr)
|
|
GROUP BY fclt_f_maand, fclt_f_sector, practice, p_nummer
|
|
UNION ALL
|
|
SELECT fclt_f_maand, fclt_f_sector, NULL, NULL, NULL, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, NULL, 'Subtotaal Sector',
|
|
TO_CHAR (SUM (kosten), '999990.99') som, NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand, -- Catering bij res. ruimte
|
|
afs.prs_afdeling_naam fclt_f_sector, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, NULL, NULL, NULL, 'Subtotaal Sector',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_rsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_rsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rr.res_rsv_ruimte_key NOT IN (
|
|
SELECT res_rsv_ruimte_key
|
|
FROM res_rsv_ruimte
|
|
WHERE res_rsv_ruimte_verwijder IS NOT NULL
|
|
AND res_status_fo_key <> 4)
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand, -- Catering bij alg. ruimte
|
|
afs.prs_afdeling_naam fclt_f_sector, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, NULL, NULL, NULL, 'Subtotaal Sector',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key IS NOT NULL
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector
|
|
ORDER BY 1, 2, 3;
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_DOORBELASTING_TOTAAL
|
|
(FCLT_F_MAAND, FCLT_F_SECTOR, KOSTEN)
|
|
AS
|
|
SELECT fclt_f_maand, fclt_f_sector, SUM (kosten) som
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten
|
|
FROM res_rsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_rsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rr.res_rsv_ruimte_key NOT IN (
|
|
SELECT res_rsv_ruimte_key
|
|
FROM res_rsv_ruimte
|
|
WHERE res_rsv_ruimte_verwijder IS NOT NULL
|
|
AND res_status_fo_key <> 4)
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key IS NOT NULL
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector
|
|
ORDER BY 1, 2;
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_NOSHOW_SECTOR
|
|
(FCLT_F_MAAND, FCLT_F_SECTOR, PRACTICE, DATUM, AFLEVERTIJD,
|
|
RUIMTE, GASTHEER, AANVRAGER, RES_OMSCHRIJVING, PERSONEN,
|
|
AANTAL, ARTIKEL, KOSTEN, RESERVERING)
|
|
AS
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
(SELECT afs.prs_afdeling_naam
|
|
FROM prs_v_afdeling afs
|
|
WHERE afs.prs_afdeling_key =
|
|
af.prs_afdeling_parentkey)
|
|
fclt_f_sector,
|
|
af.prs_afdeling_naam practice,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'DD-MM-YYYY') datum,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'HH24:MI') aflevertijd,
|
|
rg.res_ruimte_nr lokatie,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key) AS gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
rr.res_rsv_ruimte_contact_key)
|
|
AS aanvrager,
|
|
rr.res_rsv_ruimte_omschrijving omschrijving_reservering,
|
|
TO_CHAR (rr.res_rsv_ruimte_bezoekers) personen,
|
|
TO_CHAR (ra.res_rsv_artikel_aantal),
|
|
a.res_artikel_omschrijving
|
|
|| ' ('
|
|
|| NVL (a.res_artikel_eenheid, '')
|
|
|| ')' aantal,
|
|
TO_CHAR (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) kosten,
|
|
TO_CHAR (rr.res_reservering_key) resnr
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rr.res_rsv_ruimte_noshow = 1
|
|
UNION ALL
|
|
SELECT fclt_f_maand, fclt_f_sector, practice, NULL, NULL, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, 'Subtotaal Practice',
|
|
TO_CHAR (SUM (kosten), '999990.99') som, NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
af.prs_afdeling_naam practice, NULL, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, 'Subtotaal Practice',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rr.res_rsv_ruimte_noshow = 1
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam,
|
|
af.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector, practice
|
|
UNION ALL
|
|
SELECT fclt_f_maand, fclt_f_sector, NULL, NULL, NULL, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, 'Subtotaal Sector',
|
|
TO_CHAR (SUM (kosten), '999990.99') som, NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector, NULL, NULL, NULL,
|
|
NULL, NULL, NULL, NULL, NULL, 'Subtotaal Sector',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rr.res_rsv_ruimte_noshow = 1
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector
|
|
ORDER BY 1, 2, 3;
|
|
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_NOSHOW_TOTAAL
|
|
(FCLT_F_MAAND, FCLT_F_SECTOR, KOSTEN)
|
|
AS
|
|
SELECT fclt_f_maand, fclt_f_sector, SUM (kosten) som
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rr.res_rsv_ruimte_noshow = 1
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector
|
|
ORDER BY 1, 2;
|
|
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_OVERWERKMAALTIJDEN
|
|
(FCLT_F_MAAND, DATUM, GASTHEER, AANVRAGER, AANTAL,
|
|
ARTIKEL, FCLT_F_SECTOR, PRACTICE, KOSTEN, RESERVERING)
|
|
AS
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'DD-MM-YYYY') datum,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE p.prs_perslid_key = pf.prs_perslid_key) AS gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
rr.res_rsv_ruimte_contact_key)
|
|
AS aanvrager,
|
|
TO_CHAR (ra.res_rsv_artikel_aantal),
|
|
a.res_artikel_omschrijving
|
|
|| ' ('
|
|
|| NVL (a.res_artikel_eenheid, '')
|
|
|| ')' aantal,
|
|
(SELECT afs.prs_afdeling_naam
|
|
FROM prs_v_afdeling afs
|
|
WHERE afs.prs_afdeling_key =
|
|
af.prs_afdeling_parentkey)
|
|
fclt_f_sector,
|
|
af.prs_afdeling_naam practice,
|
|
TO_CHAR (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) kosten,
|
|
TO_CHAR (rr.res_reservering_key) resnr
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND a.res_artikel_omschrijving LIKE 'Overwerkmaaltijd%'
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'DD-MM-YYYY') datum,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key) AS gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
rr.res_rsv_ruimte_contact_key)
|
|
AS aanvrager,
|
|
TO_CHAR (ra.res_rsv_artikel_aantal),
|
|
a.res_artikel_omschrijving
|
|
|| ' ('
|
|
|| NVL (a.res_artikel_eenheid, '')
|
|
|| ')' aantal,
|
|
(SELECT afs.prs_afdeling_naam
|
|
FROM prs_v_afdeling afs
|
|
WHERE afs.prs_afdeling_key =
|
|
af.prs_afdeling_parentkey)
|
|
fclt_f_sector,
|
|
af.prs_afdeling_naam practice,
|
|
TO_CHAR (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) kosten,
|
|
TO_CHAR (rr.res_reservering_key) resnr
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key = rg.alg_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND a.res_artikel_omschrijving LIKE 'Overwerkmaaltijd%'
|
|
UNION ALL
|
|
SELECT fclt_f_maand, NULL, NULL, NULL, NULL, 'Subtotaal Practice',
|
|
fclt_f_sector, practice, TO_CHAR (SUM (kosten), '999990.99') som,
|
|
NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
NULL, NULL, NULL, 'Subtotaal Practice',
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
af.prs_afdeling_naam practice,
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigreservering rs,
|
|
res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND a.res_artikel_omschrijving LIKE 'Overwerkmaaltijd%'
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam,
|
|
af.prs_afdeling_naam
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
NULL, NULL, NULL, 'Subtotaal Practice',
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
af.prs_afdeling_naam practice,
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key = rg.alg_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND a.res_artikel_omschrijving LIKE 'Overwerkmaaltijd%'
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam,
|
|
af.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector, practice
|
|
UNION ALL
|
|
SELECT fclt_f_maand, NULL, NULL, NULL, NULL, 'Subtotaal Sector',
|
|
fclt_f_sector, NULL, TO_CHAR (SUM (kosten), '999990.99') som, NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
NULL, NULL, NULL, 'Subtotaal Sector',
|
|
afs.prs_afdeling_naam fclt_f_sector, NULL,
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND a.res_artikel_omschrijving LIKE 'Overwerkmaaltijd%'
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
NULL, NULL, NULL, 'Subtotaal Sector',
|
|
afs.prs_afdeling_naam fclt_f_sector, NULL,
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key = rg.alg_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND a.res_artikel_omschrijving LIKE 'Overwerkmaaltijd%'
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector
|
|
ORDER BY 1, 2, 3;
|
|
|
|
|
|
CREATE OR REPLACE VIEW CAPG_V_ARTIKELOVERZICHT
|
|
(FCLT_F_MAAND, FCLT_F_SECTOR, PRACTICE, AANTAL, ARTIKEL,
|
|
KOSTEN, INKOOPKOSTEN, DATUM, RUIMTE, GASTHEER,
|
|
AANVRAGER, PERSONEN, RESERVERING)
|
|
AS
|
|
SELECT DISTINCT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
(SELECT afs.prs_afdeling_naam
|
|
FROM prs_v_afdeling afs
|
|
WHERE afs.prs_afdeling_key =
|
|
af.prs_afdeling_parentkey)
|
|
fclt_f_sector,
|
|
af.prs_afdeling_naam practice,
|
|
TO_CHAR (ra.res_rsv_artikel_aantal),
|
|
a.res_artikel_omschrijving
|
|
|| ' ('
|
|
|| NVL (a.res_artikel_eenheid, '')
|
|
|| ')' aantal,
|
|
TO_CHAR (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) kosten,
|
|
TO_CHAR (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) inkoopkostenen,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'DD-MM-YYYY') datum,
|
|
rg.res_ruimte_nr lokatie,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key) AS gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
rr.res_rsv_ruimte_contact_key)
|
|
AS aanvrager,
|
|
TO_CHAR (rr.res_rsv_ruimte_bezoekers) personen,
|
|
TO_CHAR (rr.res_reservering_key) resnr
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
res_ruimte rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key = rg.res_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
(SELECT afs.prs_afdeling_naam
|
|
FROM prs_v_afdeling afs
|
|
WHERE afs.prs_afdeling_key =
|
|
af.prs_afdeling_parentkey)
|
|
fclt_f_sector,
|
|
af.prs_afdeling_naam practice, TO_CHAR (ra.res_rsv_artikel_aantal),
|
|
a.res_artikel_omschrijving
|
|
|| ' ('
|
|
|| NVL (a.res_artikel_eenheid, '')
|
|
|| ')' aantal,
|
|
TO_CHAR (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) kosten,
|
|
TO_CHAR (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal,
|
|
'9990.99'
|
|
) inkoopkostenen,
|
|
TO_CHAR (ra.res_rsv_artikel_levering, 'DD-MM-YYYY') datum,
|
|
(SELECT MIN (alg_ruimte_aanduiding)
|
|
FROM res_v_alg_ruimte_gegevens
|
|
WHERE alg_ruimte_key = rr.alg_ruimte_key) locatie,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE p.prs_perslid_key = pf.prs_perslid_key) AS gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key =
|
|
rr.res_rsv_ruimte_contact_key)
|
|
AS aanvrager,
|
|
'' personen, TO_CHAR (rr.res_reservering_key) resnr
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key = rg.alg_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rg.res_ruimte_key IS NULL
|
|
UNION ALL
|
|
SELECT fclt_f_maand, fclt_f_sector, practice, NULL, 'Subtotaal Practice',
|
|
TO_CHAR (SUM (kosten), '999990.99') som,
|
|
TO_CHAR (SUM (inkoopkosten), '999990.99') inkoopsom, NULL, NULL,
|
|
NULL, NULL, NULL, NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
af.prs_afdeling_naam practice, 'Subtotaal Practice',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
SUM (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal
|
|
) inkoopkosten,
|
|
NULL, NULL, NULL, NULL, NULL, NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key IN (
|
|
SELECT rg.res_ruimte_key
|
|
FROM res_v_alg_ruimte_gegevens rg
|
|
WHERE rg.res_ruimte_key =
|
|
ro.res_ruimte_key)
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam,
|
|
af.prs_afdeling_naam
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector,
|
|
af.prs_afdeling_naam practice, 'Subtotaal Practice',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
SUM (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal
|
|
) inkoopkosten,
|
|
NULL, NULL, NULL, NULL, NULL, NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key = rg.alg_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rg.res_ruimte_key IS NULL
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam,
|
|
af.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector, practice
|
|
UNION ALL
|
|
SELECT fclt_f_maand, fclt_f_sector, NULL, NULL, 'Subtotaal Sector',
|
|
TO_CHAR (SUM (kosten), '999990.99') som,
|
|
TO_CHAR (SUM (inkoopkosten), '999990.99') inkoopsom, NULL, NULL,
|
|
NULL, NULL, NULL, NULL
|
|
FROM (SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector, NULL,
|
|
'Subtotaal Sector',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
SUM (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal
|
|
) inkoopkosten,
|
|
NULL, NULL, NULL, NULL, NULL, NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_ruimte_opstelling ro,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE ra.res_artikel_key = a.res_artikel_key
|
|
AND ra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
|
AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
|
AND ro.res_ruimte_key IN (
|
|
SELECT rg.res_ruimte_key
|
|
FROM res_v_alg_ruimte_gegevens rg
|
|
WHERE rg.res_ruimte_key =
|
|
ro.res_ruimte_key)
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam
|
|
UNION ALL
|
|
SELECT TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM') fclt_f_maand,
|
|
afs.prs_afdeling_naam fclt_f_sector, NULL,
|
|
'Subtotaal Sector',
|
|
SUM (ra.res_rsv_artikel_prijs * ra.res_rsv_artikel_aantal
|
|
) kosten,
|
|
SUM (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal
|
|
) inkoopkosten,
|
|
NULL, NULL, NULL, NULL, NULL, NULL
|
|
FROM res_v_aanwezigrsv_ruimte rr,
|
|
res_v_alg_ruimte_gegevens rg,
|
|
prs_perslid p,
|
|
prs_v_afdeling af,
|
|
prs_v_afdeling afs,
|
|
res_v_aanwezigrsv_artikel ra,
|
|
res_artikel a,
|
|
capg_v_kostenplaatsafdeling ka
|
|
WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key
|
|
AND ra.res_artikel_key = a.res_artikel_key
|
|
AND rr.alg_ruimte_key = rg.alg_ruimte_key
|
|
AND ra.res_status_bo_key <> 1
|
|
AND p.prs_perslid_key = rr.res_rsv_ruimte_host_key
|
|
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
|
|
AND ka.prs_kostenplaats_key(+) = rr.prs_kostenplaats_key
|
|
AND af.prs_afdeling_key(+) = ka.prs_afdeling_key
|
|
AND rg.res_ruimte_key IS NULL
|
|
GROUP BY TO_CHAR (ra.res_rsv_artikel_levering, 'YYMM'),
|
|
afs.prs_afdeling_naam)
|
|
GROUP BY fclt_f_maand, fclt_f_sector
|
|
ORDER BY 1, 2, 3;
|
|
|
|
COMMIT;
|
|
|
|
SPOOL OFF
|