-- Script containing customer specific configuration sql statements for CAPG: Capgemini Utrecht
-- (c) 2005-2006 Dijkoraad
-- $Revision$
-- $Id$
--
-- Support: +31 53 4800700


SPOOL xCAPG.LST
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_CATERINGDAGLIJST
(
   FCLT_F_DATUM,
   VAN,
   TOT,
   FCLT_F_RUIMTE,
   FCLT_F_CATALOGUS,
   VOORZIENING,
   AANTAL,
   OPMERKING,
   AANTAL_PERS,
   RESNR,
   FCLT_F_GASTHEER_VROUW
)
AS
   SELECT rr.res_rsv_ruimte_van,
          TO_CHAR (rr.res_rsv_ruimte_van, 'hh24:mi'),
          TO_CHAR (rr.res_rsv_ruimte_tot, 'hh24:mi'),
          r.alg_ruimte_omschrijving,
          rd.ins_discipline_omschrijving,
          TRIM (ra.res_artikel_omschrijving),
          rra.res_rsv_artikel_aantal,
          rr.res_rsv_ruimte_opmerking,
          rr.res_rsv_ruimte_bezoekers,
          rr.res_reservering_key || '/' || rr.res_rsv_ruimte_volgnr,
          prs_perslid_naam_full
     FROM res_rsv_ruimte rr,
          alg_ruimte r,
          res_artikel ra,
          res_rsv_artikel rra,
          prs_v_perslid_fullnames ppf,
          res_discipline rd
    WHERE     rr.alg_ruimte_key = r.alg_ruimte_key
          AND rra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
          AND rra.res_artikel_key = ra.res_artikel_key
          AND rr.res_rsv_ruimte_contact_key = ppf.prs_perslid_key
          AND rr.res_rsv_ruimte_host_key = ppf.prs_perslid_key
          AND ra.res_discipline_key = rd.ins_discipline_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_prijs) AS prijs,
                 SUM (res_rsv_artikel_aantal * res_artikel_inkoopprijs) AS inkoop,
                 SUM (res_rsv_artikel_aantal * res_artikel_kostenpersoneel) AS personeel,
                 SUM (res_rsv_artikel_aantal * 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_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_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_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,
                  '999990.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,
                  '999990.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) 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) 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) 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) 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) 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) 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,
                  '999990.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) 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) 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) 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, FCLT_F_SECTOR, PRACTICE, DATUM, GASTHEER, AANVRAGER, 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,
         (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,
         TO_CHAR (ra.res_rsv_artikel_prijs,
                  '999990.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
   WHERE ra.res_artikel_key = a.res_artikel_key
     AND ra.res_rsv_ruimte_key = rr.res_rsv_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, fclt_f_sector, practice, 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,
                   NULL, NULL, NULL, 'Subtotaal Practice',
                   afs.prs_afdeling_naam fclt_f_sector,
                   af.prs_afdeling_naam practice,
                   SUM (ra.res_rsv_artikel_prijs) 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 ra.res_artikel_key = a.res_artikel_key
               AND ra.res_rsv_ruimte_key = rr.res_rsv_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, fclt_f_sector, 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,
                   NULL, NULL, NULL, 'Subtotaal Sector',
                   afs.prs_afdeling_naam fclt_f_sector, NULL,
                   SUM (ra.res_rsv_artikel_prijs) 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 ra.res_rsv_ruimte_key = rr.res_rsv_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,
                         '999990.99'
                        ) kosten,
                TO_CHAR (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal,
                         '999990.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,
                  '999990.99'
                 ) kosten,
         TO_CHAR (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal,
                  '999990.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) kosten,
                   SUM (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal
                       ) inkoopkosten,
                   NULL, NULL, NULL, NULL, NULL, 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 ra.res_artikel_key = a.res_artikel_key
               AND ra.res_rsv_ruimte_key = rr.res_rsv_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)
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) kosten,
                   SUM (a.res_artikel_inkoopprijs * ra.res_rsv_artikel_aantal
                       ) inkoopkosten,
                   NULL, NULL, NULL, NULL, NULL, 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 ra.res_artikel_key = a.res_artikel_key
               AND ra.res_rsv_ruimte_key = rr.res_rsv_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)
GROUP BY fclt_f_maand, fclt_f_sector
ORDER BY 1, 2, 3;


CREATE OR REPLACE VIEW CAPG_V_NOTI_RESREMINDER
(CODE, SENDER, RECEIVER, TEXT, KEY,
 XKEY)
AS
SELECT 'RESINF'
     , NULL
     , rsvr.res_rsv_ruimte_contact_key
     , 'Reservering '
          ||    res.res_reservering_key
          ||    ': U heeft op '
          ||    TO_CHAR (rsvr.res_rsv_ruimte_van, 'DD-MM')
          ||    ' van '
          ||    TO_CHAR (rsvr.res_rsv_ruimte_van, 'HH24:MI')
          ||    ' tot '
          ||    TO_CHAR (rsvr.res_rsv_ruimte_tot, 'HH24:MI')
          ||    ' ruimte '
          ||    r.res_ruimte_nr
          ||    ' gereserveerd.'
     , res.res_reservering_key
     , rsvr.res_rsv_ruimte_key
  FROM res_v_aanwezigreservering res
     , res_v_aanwezigrsv_ruimte rsvr
     , res_ruimte_opstelling opst
     , res_disc_params rdp
     , res_ruimte r
 WHERE r.res_discipline_key = rdp.res_ins_discipline_key
   AND rdp.res_disc_params_noti_dagen IS NOT NULL
   AND res.res_reservering_key = rsvr.res_reservering_key
   AND opst.res_ruimte_opstel_key = rsvr.res_ruimte_opstel_key
   AND opst.res_ruimte_key = r.res_ruimte_key
   AND rsvr.res_status_fo_key = 1
   AND rsvr.res_rsv_ruimte_van BETWEEN fac.datumtijdplusuitvoertijd (SYSDATE, res_disc_params_noti_dagen, 'DAGEN')
                                   AND fac.datumtijdplusuitvoertijd (SYSDATE, res_disc_params_noti_dagen+1, 'DAGEN')
   AND TO_CHAR(SYSDATE, 'D') NOT IN (1,7);


-- HUISVESTING
CREATE OR REPLACE VIEW capg_v_ruimte_sync (
   alg_ruimte_key,
   alg_verdieping_key,
   cadlabel
   )
AS
   SELECT r.alg_ruimte_key,
          r.alg_verdieping_key,
             'M.'
          || LTRIM (TO_CHAR (v.alg_verdieping_code, '00'))
          || '.'
          || r.alg_ruimte_nr
             cadlabel
   FROM alg_v_aanwezigruimte r, alg_verdieping v
   WHERE r.alg_verdieping_key = v.alg_verdieping_key;

-- CAPG#26115: Export t.b.v. bezoekerszuil
CREATE OR REPLACE VIEW capg_v_export_bez
AS
   SELECT '"BEZOEKER_KEY";"BEZOEKER_NAAM";"BEDRIJFSNAAM";"OPMERKING";"GESLACHT";"MOBIEL_NR";"KENTEKEN";"DATUM";"ONTVANGER"' result,
          0 result_order
     FROM DUAL
   UNION ALL
   SELECT bezoeker_key || ';"' ||
          bezoeker_naam || '";"' ||
          bedrijfsnaam || '";"' ||
          opmerking || '";"' ||
          geslacht || '";"' ||
          mobiel_nr || '";"' ||
          kenteken || '";"' ||
          datum || '";"' ||
          ontvanger || '"',
          bezoeker_key
     FROM 
     (SELECT b.bez_bezoekers_key bezoeker_key,
             REPLACE(b.bez_afspraak_naam, '"', '""') bezoeker_naam,
             REPLACE(b.bez_afspraak_bedrijf, '"', '""') bedrijfsnaam,
             REPLACE(a.bez_afspraak_opmerking, '"', '""') opmerking,
             ud.fac_usrdata_code geslacht,
             mobiel.bez_kenmerkwaarde_waarde mobiel_nr,
             REPLACE(kenteken.bez_kenmerkwaarde_waarde, '"', '""') kenteken,
             TO_CHAR(a.bez_afspraak_datum, 'YYYY-MM-DD HH24:MI') datum,
             p.prs_perslid_nr ontvanger
        FROM bez_bezoekers b,
             bez_afspraak a,
             prs_perslid p,
             (SELECT * FROM bez_kenmerkwaarde WHERE bez_kenmerk_key = 1000) geslacht,
             (SELECT * FROM fac_usrdata WHERE fac_usrtab_key = 281) ud,
             (SELECT * FROM bez_kenmerkwaarde WHERE bez_kenmerk_key = 1001) mobiel,
             (SELECT * FROM bez_kenmerkwaarde WHERE bez_kenmerk_key = 1002) kenteken
       WHERE b.bez_afspraak_key = a.bez_afspraak_key
         AND TRUNC(a.bez_afspraak_datum) >= TRUNC(SYSDATE)
         AND a.alg_locatie_key = 101
         AND p.prs_perslid_key = a.bez_afspraak_contact_key
         AND geslacht.bez_bezoekers_key = b.bez_bezoekers_key
         AND ud.fac_usrdata_key(+) = fac.safe_to_number(geslacht.bez_kenmerkwaarde_waarde)
         AND mobiel.bez_bezoekers_key(+) = b.bez_bezoekers_key
         AND kenteken.bez_bezoekers_key(+) = b.bez_bezoekers_key);

BEGIN fac.registercustversion('CAPG', 8); END;
/
BEGIN adm.systrackscriptId('$Id$', 0); END;
/
COMMIT;

SPOOL OFF


