Files
Customer/CAPG/capg.sql
Arthur Egberink 66ce743de5 CAPG#2177
svn path=/Customer/trunk/; revision=13138
2006-12-15 07:53:00 +00:00

941 lines
44 KiB
SQL

SPOOL xCAPG.SQL
--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 AS inkoop,
res_artikel_kostenpersoneel AS personeel,
res_artikel_kostenalgemeen AS algemeen
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 p.prs_perslid_key = pf.prs_perslid_key) as gastheer,
(select prs_perslid_naam_full from prs_v_perslid_fullnames pf, res_reservering rs
WHERE rs.RES_RESERVERING_CONTACT_KEY = pf.prs_perslid_key
AND rs.res_reservering_key = ra.res_reservering_key) as aanvrager,
rs.res_reservering_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 (rs.res_reservering_key) resnr
FROM res_reservering rs,
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 rs.res_reservering_key = ra.res_reservering_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 = rs.res_reservering_host_key
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key
AND k.prs_kostenplaats_key(+) = rs.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 = ra.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, res_reservering rs
WHERE rs.RES_RESERVERING_CONTACT_KEY = pf.prs_perslid_key
AND rs.res_reservering_key = ra.res_reservering_key) as aanvrager,
rs.res_reservering_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 (rs.res_reservering_key) resnr
FROM res_v_aanwezigreservering rs,
prs_perslid p,
prs_v_afdeling af,
res_v_aanwezigrsv_artikel ra,
res_artikel a,
capg_v_kostenplaatsafdeling ka,
prs_kostenplaats k
WHERE rs.res_reservering_key = ra.res_reservering_key
AND ra.res_artikel_key = a.res_artikel_key
AND ra.alg_ruimte_key IS NOT NULL
AND ra.res_status_bo_key <> 1
AND p.prs_perslid_key = rs.res_reservering_host_key
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key
AND k.prs_kostenplaats_key(+) = rs.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_reservering rs,
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 rs.res_reservering_key = ra.res_reservering_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 = rs.res_reservering_host_key
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key
AND af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY
AND k.prs_kostenplaats_key(+) = rs.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_aanwezigreservering rs,
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 rs.res_reservering_key = ra.res_reservering_key
AND ra.res_artikel_key = a.res_artikel_key
AND ra.alg_ruimte_key IS NOT NULL
AND ra.res_status_bo_key <> 1
AND p.prs_perslid_key = rs.res_reservering_host_key
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key
AND af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY
AND k.prs_kostenplaats_key(+) = rs.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_reservering rs,
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 rs.res_reservering_key = ra.res_reservering_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 = rs.res_reservering_host_key
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_aanwezigreservering rs,
prs_perslid p,
prs_v_afdeling af,
prs_v_afdeling afs,
res_v_aanwezigrsv_artikel ra,
res_artikel a,
capg_v_kostenplaatsafdeling ka
WHERE rs.res_reservering_key = ra.res_reservering_key
AND ra.res_artikel_key = a.res_artikel_key
AND ra.alg_ruimte_key IS NOT NULL
AND ra.res_status_bo_key <> 1
AND p.prs_perslid_key = rs.res_reservering_host_key
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_reservering rs,
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 rs.res_reservering_key = ra.res_reservering_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 = rs.res_reservering_host_key
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_aanwezigreservering rs,
prs_perslid p,
prs_v_afdeling af,
prs_v_afdeling afs,
res_v_aanwezigrsv_artikel ra,
res_artikel a,
capg_v_kostenplaatsafdeling ka
WHERE rs.res_reservering_key = ra.res_reservering_key
AND ra.res_artikel_key = a.res_artikel_key
AND ra.alg_ruimte_key IS NOT NULL
AND ra.res_status_bo_key <> 1
AND p.prs_perslid_key = rs.res_reservering_host_key
AND afs.prs_afdeling_key(+) = af.prs_afdeling_parentkey
AND ka.PRS_KOSTENPLAATS_KEY(+) = rs.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 p.prs_perslid_key = pf.prs_perslid_key) as gastheer,
(select prs_perslid_naam_full from prs_v_perslid_fullnames pf, res_reservering rs
WHERE rs.RES_RESERVERING_CONTACT_KEY = pf.prs_perslid_key
AND rs.res_reservering_key = ra.res_reservering_key) as aanvrager,
rs.RES_RESERVERING_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(rs.RES_RESERVERING_KEY) Resnr
FROM RES_V_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 = rs.RES_RESERVERING_HOST_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 = rs.RES_RESERVERING_HOST_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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
ra.RES_STATUS_BO_KEY <> 1 AND
p.PRS_PERSLID_KEY = rs.RES_RESERVERING_HOST_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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, res_reservering rs
WHERE rs.RES_RESERVERING_CONTACT_KEY = pf.prs_perslid_key
AND rs.res_reservering_key = ra.res_reservering_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(rs.RES_RESERVERING_KEY) Resnr
FROM RES_V_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key AND
af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY AND
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 p.prs_perslid_key = pf.prs_perslid_key) as gastheer,
(select prs_perslid_naam_full from prs_v_perslid_fullnames pf, res_reservering rs
WHERE rs.RES_RESERVERING_CONTACT_KEY = pf.prs_perslid_key
AND rs.res_reservering_key = ra.res_reservering_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(rs.RES_RESERVERING_KEY) Resnr
FROM RES_V_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_KEY AND
ra.RES_ARTIKEL_KEY = a.RES_ARTIKEL_KEY AND
ra.ALG_RUIMTE_KEY = rg.ALG_RUIMTE_KEY AND
ra.RES_STATUS_BO_KEY <> 1 AND
p.PRS_PERSLID_KEY = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key AND
af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY AND
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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key AND
af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_KEY AND
ra.RES_ARTIKEL_KEY = a.RES_ARTIKEL_KEY AND
ra.ALG_RUIMTE_KEY = rg.ALG_RUIMTE_KEY AND
ra.RES_STATUS_BO_KEY <> 1 AND
p.PRS_PERSLID_KEY = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key AND
af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
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_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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key AND
af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_KEY AND
ra.RES_ARTIKEL_KEY = a.RES_ARTIKEL_KEY AND
ra.ALG_RUIMTE_KEY = rg.ALG_RUIMTE_KEY AND
ra.RES_STATUS_BO_KEY <> 1 AND
p.PRS_PERSLID_KEY = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.prs_kostenplaats_key AND
af.PRS_AFDELING_KEY(+) = ka.PRS_AFDELING_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
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 p.prs_perslid_key = pf.prs_perslid_key) as gastheer,
(select prs_perslid_naam_full from prs_v_perslid_fullnames pf, res_reservering rs
WHERE rs.RES_RESERVERING_CONTACT_KEY = pf.prs_perslid_key
AND rs.res_reservering_key = ra.res_reservering_key) as aanvrager,
TO_CHAR(rr.RES_RSV_RUIMTE_BEZOEKERS) Personen,
TO_CHAR(rs.RES_RESERVERING_KEY) Resnr
FROM RES_V_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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 = ra.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, res_reservering rs
WHERE rs.RES_RESERVERING_CONTACT_KEY = pf.prs_perslid_key
AND rs.res_reservering_key = ra.res_reservering_key) as aanvrager,
'' Personen,
TO_CHAR(rs.RES_RESERVERING_KEY) Resnr
FROM RES_V_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_KEY AND
ra.RES_ARTIKEL_KEY = a.RES_ARTIKEL_KEY AND
ra.alg_ruimte_key = rg.alg_ruimte_key AND
ra.RES_STATUS_BO_KEY <> 1 AND
p.PRS_PERSLID_KEY = rs.RES_RESERVERING_HOST_KEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 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 = rs.RES_RESERVERING_HOST_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_KEY AND
ra.RES_ARTIKEL_KEY = a.RES_ARTIKEL_KEY AND
ra.alg_ruimte_key = rg.alg_ruimte_key AND
ra.RES_STATUS_BO_KEY <> 1 AND
p.PRS_PERSLID_KEY = rs.RES_RESERVERING_HOST_KEY AND
afs.PRS_AFDELING_KEY (+)= af.PRS_AFDELING_PARENTKEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_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 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 = rs.RES_RESERVERING_HOST_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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_AANWEZIGRESERVERING rs, 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 rs.RES_RESERVERING_KEY = ra.RES_RESERVERING_KEY AND
ra.RES_ARTIKEL_KEY = a.RES_ARTIKEL_KEY AND
ra.alg_ruimte_key = rg.alg_ruimte_key AND
ra.RES_STATUS_BO_KEY <> 1 AND
p.PRS_PERSLID_KEY = rs.RES_RESERVERING_HOST_KEY AND
afs.PRS_AFDELING_KEY(+) = af.PRS_AFDELING_PARENTKEY AND
ka.PRS_KOSTENPLAATS_KEY(+) = rs.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