Files
Customer/CAPG/capg.sql
Erik Groener 67b708a9f9 fsn#12054 Upgraden klantspecifieke views
svn path=/Customer/trunk/; revision=13141
2006-12-19 13:03:14 +00:00

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