-- Customer specific once-script UWVA#27546.
--
-- (c) 2013 SG|facilitor bv
-- $Revision$
-- $Id$
--
-- Support: +31 53 4800700
SET ECHO ON
SPOOL xuwva#27546.lst
SET DEFINE OFF

/* Formatted on 23-9-2013 13:22:38 (QP5 v5.115.810.9015) */
CREATE OR REPLACE FORCE VIEW uwva_v_export_qlikview_reserv
(
   result,
   result_order
)
AS
   SELECT      '"nummer"'
            || ';'
            || '"datum"'
            || ';'
            || '"gastheer"'
            || ';'
            || '"contact"'
            || ';'
            || '"invoerder"'
            || ';'
            || '"kpn"'
            || ';'
            || '"kpn_omschrijving"'
            || ';'
            || '"afdeling_code"'
            || ';'
            || '"afdeling_omschrijving"'
            || ';'
            || '"district_omschijving"'
            || ';'
            || '"locatie"'
            || ';'
            || '"locatie_omschrijving"'
            || ';'
            || '"gebouw"'
            || ';'
            || '"verdieping"'
            || ';'
            || '"ruimte"'
            || ';'
            || '"mandaat"'
            || ';'
            || '"personeelsnr"'
            || ';'
            || '"bsn"'
            || ';'
            || '"werkplek"'
            || ';'
            || '"catalogus"'
            || ';'
            || '"reserveerbare_ruimte"'
            || ';'
            || '"bezoekers"'
            || ';'
            || '"van"'
            || ';'
            || '"tot"'
            || ';'
            || '"duur"'
            || ';'
            || '"status"'
            || ';'
            || '"activiteit"'
            || ';'
            || '"voorziening_catalogus"'
            || ';'
            || '"voorziening_product"'
            || ';'
            || '"voorziening_totaalprijs"'
            || ';'
            || '"voorziening_van"'
            || ';'
            || '"voorziening_tot"'
            || ';'
            || '"voorziening_aantal"'
            || ';'
            || '"voorziening_prijs"'
            || ';'
            || '"voorziening_afgemeld"'
            || ';',
            0
     FROM   DUAL
   UNION ALL
   SELECT      '"'
            || res.res_reservering_key
            || '/'
            || rrr.res_rsv_ruimte_volgnr
            || '";"'
            || NVL (
                  TO_CHAR (NVL (rrr.res_rsv_ruimte_van, voorz.van),
                           'YYYY-MM-DD'),
                  '<null>'
               )
            || '";"'
            || (SELECT   prs_perslid_naam_full
                  FROM   prs_v_perslid_fullnames_all pf
                 WHERE   pf.prs_perslid_key = rrr.res_rsv_ruimte_host_key)
            || '";"'
            || (SELECT   prs_perslid_naam_full
                  FROM   prs_v_perslid_fullnames_all pf
                 WHERE   pf.prs_perslid_key = rrr.res_rsv_ruimte_contact_key)
            || '";"'
            || (SELECT   prs_perslid_naam_full
                  FROM   prs_v_perslid_fullnames_all pf
                 WHERE   pf.prs_perslid_key =
                            fac.gettrackinguserkey ('RESNEW',
                                                    rrr.res_rsv_ruimte_key))
            || '";"'
            || NVL (k.prs_kostenplaats_nr, '<null>')
            || '";"'
            || NVL (k.prs_kostenplaats_omschrijving, '<null>')
            || '";"'
            || NVL (a.prs_afdeling_naam, '<null>')
            || '";"'
            || NVL (a.prs_afdeling_omschrijving, '<null>')
            || '";"'
            || (SELECT   d.alg_district_omschrijving
                  FROM   alg_district d,
                         alg_locatie l,
                         alg_gebouw g,
                         alg_verdieping v,
                         alg_ruimte r
                 WHERE       d.alg_district_key = l.alg_district_key
                         AND l.alg_locatie_key = g.alg_locatie_key
                         AND g.alg_gebouw_key = v.alg_gebouw_key
                         AND v.alg_verdieping_key = r.alg_verdieping_key
                         AND r.alg_ruimte_key = r2a.alg_ruimte_key)
            || '";"'
            || (SELECT   alg_locatie_code
                  FROM   alg_locatie l,
                         alg_gebouw g,
                         alg_verdieping v,
                         alg_ruimte r
                 WHERE       l.alg_locatie_key = g.alg_locatie_key
                         AND g.alg_gebouw_key = v.alg_gebouw_key
                         AND v.alg_verdieping_key = r.alg_verdieping_key
                         AND r.alg_ruimte_key = r2a.alg_ruimte_key)
            || '";"'
            || (SELECT   alg_locatie_omschrijving
                  FROM   alg_locatie l,
                         alg_gebouw g,
                         alg_verdieping v,
                         alg_ruimte r
                 WHERE       l.alg_locatie_key = g.alg_locatie_key
                         AND g.alg_gebouw_key = v.alg_gebouw_key
                         AND v.alg_verdieping_key = r.alg_verdieping_key
                         AND r.alg_ruimte_key = r2a.alg_ruimte_key)
            || '";"'
            || (SELECT   alg_gebouw_code
                  FROM   alg_gebouw g, alg_verdieping v, alg_ruimte r
                 WHERE       g.alg_gebouw_key = v.alg_gebouw_key
                         AND v.alg_verdieping_key = r.alg_verdieping_key
                         AND r.alg_ruimte_key = r2a.alg_ruimte_key)
            || '";"'
            || (SELECT   alg_verdieping_code
                  FROM   alg_verdieping v, alg_ruimte r
                 WHERE   v.alg_verdieping_key = r.alg_verdieping_key
                         AND r.alg_ruimte_key = r2a.alg_ruimte_key)
            || '";"'
            || (SELECT   alg_ruimte_nr
                  FROM   alg_ruimte r
                 WHERE   r.alg_ruimte_key = r2a.alg_ruimte_key)
            || '";"'
            || NVL ( (SELECT   pr.fac_profiel_limiet
                        FROM   fac_profiel pr
                       WHERE   p.fac_profiel_key = pr.fac_profiel_key), 0)
            || '";"'
            || NVL (prs_perslid_nr, '<null>')
            || '";"'
            || '<null>'
            || '";"'
            || NVL (wp2.prs_werkplek_aanduiding, '<null>')
            || '";"'
            || NVL (
                  (SELECT   ins_discipline_omschrijving
                     FROM   ins_tab_discipline d,
                            res_ruimte_opstelling ro,
                            res_ruimte rr
                    WHERE   rrr.res_ruimte_opstel_key =
                               ro.res_ruimte_opstel_key
                            AND ro.res_ruimte_key = rr.res_ruimte_key
                            AND rr.res_discipline_key = d.ins_discipline_key),
                  '<null>'
               )
            || '";"'
            || DECODE (rrr.alg_ruimte_key, NULL, 'Ja', 'Nee')
            || '";"'
            || NVL (TO_CHAR (rrr.res_rsv_ruimte_bezoekers), '<null>')
            || '";"'
            || NVL (TO_CHAR (rrr.res_rsv_ruimte_van, 'hh24:mi'), '<null>')
            || '";"'
            || NVL (TO_CHAR (rrr.res_rsv_ruimte_tot, 'hh24:mi'), '<null>')
            || '";"'
            || NVL (
                  REPLACE (
                     TO_CHAR( (rrr.res_rsv_ruimte_tot
                               - rrr.res_rsv_ruimte_van)
                             * 24),
                     '.',
                     ','
                  ),
                  '<null>'
               )
            || '";"'
            || NVL ( (SELECT   res_status_fo_omschrijving
                        FROM   res_status_fo rs
                       WHERE   rs.res_status_fo_key = rrr.res_status_fo_key),
                    '<null>')
            || '";"'
            || NVL (
                  (SELECT   res_activiteit_omschrijving
                     FROM   res_activiteit ra
                    WHERE   ra.res_activiteit_key = rrr.res_activiteit_key),
                  '<null>'
               )
            || '";"'
            || NVL (voorz.catalogus, '<null>')
            || '";"'
            || NVL (voorz.product, '<null>')
            || '";"'
            || NVL (REPLACE (TO_CHAR (voorz.totaalprijs), '.', ','),
                    '<null>')
            || '";"'
            || NVL (TO_CHAR (voorz.van, 'hh24:mi'), '<null>')
            || '";"'
            || NVL (TO_CHAR (voorz.tot, 'hh24:mi'), '<null>')
            || '";"'
            || NVL (REPLACE (TO_CHAR (voorz.aantal), '.', ','), '<null>')
            || '";"'
            || NVL (REPLACE (TO_CHAR (voorz.prijs), '.', ','), '<null>')
            || '";"'
            || CASE
                  WHEN voorz.status_bo < 5
                  THEN
                     '<open>'
                  WHEN voorz.status_bo >= 5
                  THEN
                     NVL (TO_CHAR (voorz.afgemeld, 'ddmmyyyy'), '<closed>')
                  ELSE
                     '<null>'
               END
            || '";',
            rrr.res_reservering_key * 1000 + rrr.res_rsv_ruimte_volgnr
     FROM   res_v_aanwezigrsv_ruimte rrr,
            res_reservering res,
            prs_kostenplaats k,
            prs_perslid p,
            prs_afdeling a,
            (  SELECT   res_rsv_ruimte_key,
                        MAX (ra.alg_ruimte_key) alg_ruimte_key
                 FROM   res_rsv_ruimte r,
                        res_ruimte_opstelling ro,
                        res_ruimte rr,
                        res_alg_ruimte ra
                WHERE       r.res_rsv_ruimte_verwijder IS NULL
                        AND r.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
                        AND ro.res_ruimte_key = rr.res_ruimte_key
                        AND rr.res_ruimte_key = ra.res_ruimte_key
             GROUP BY   res_rsv_ruimte_key
             UNION ALL
             SELECT   res_rsv_ruimte_key, alg_ruimte_key
               FROM   res_rsv_ruimte
              WHERE   alg_ruimte_key IS NOT NULL) r2a,
            (SELECT   rrd.res_rsv_ruimte_key res_rsv_ruimte_key,
                      d.ins_deel_omschrijving product,
                      DECODE (
                         rd.res_deel_prijs_vast,
                         1,
                         NVL (rrd.res_rsv_deel_prijs, rd.res_deel_prijs),
                           (rrd.res_rsv_deel_tot - rrd.res_rsv_deel_van)
                         * 24
                         * NVL (rrd.res_rsv_deel_prijs, rd.res_deel_prijs)
                      )
                         totaalprijs,
                      rrd.res_rsv_deel_van van,
                      rrd.res_rsv_deel_tot tot,
                      (rrd.res_rsv_deel_tot - rrd.res_rsv_deel_van) * 24
                         aantal,
                      NVL (rrd.res_rsv_deel_prijs, rd.res_deel_prijs) prijs,
                      rrd.res_status_bo_key status_bo,
                      rrd.res_rsv_deel_afgemeld afgemeld,
                      c.ins_discipline_omschrijving catalogus
               FROM   res_v_aanwezigrsv_deel rrd,
                      res_deel rd,
                      ins_deel d,
                      ins_tab_discipline c
              WHERE       rrd.res_deel_key = rd.res_deel_key
                      AND d.ins_deel_key = rd.res_ins_deel_key
                      AND rrd.res_rsv_ruimte_key IS NOT NULL
                      AND c.ins_discipline_key = rd.res_discipline_key
             UNION ALL
             SELECT   rra.res_rsv_ruimte_key res_rsv_ruimte_key,
                      ra.res_artikel_omschrijving product,
                      NVL (rra.res_rsv_artikel_prijs,
                           rra.res_rsv_artikel_aantal * res_artikel_prijs)
                         totaalprijs,
                      rra.res_rsv_artikel_levering van,
                      NULL tot,
                      rra.res_rsv_artikel_aantal aantal,
                      NVL (
                         rra.res_rsv_artikel_prijs
                         / rra.res_rsv_artikel_aantal,
                         res_artikel_prijs
                      )
                         prijs,
                      rra.res_status_bo_key status_bo,
                      rra.res_rsv_artikel_afgemeld afgemeld,
                      c.ins_discipline_omschrijving catalogus
               FROM   res_v_aanwezigrsv_artikel rra,
                      res_artikel ra,
                      ins_tab_discipline c
              WHERE   rra.res_artikel_key = ra.res_artikel_key
                      AND ra.res_discipline_key = c.ins_discipline_key) voorz,
            (  SELECT   pw.prs_perslid_key,
                        MIN (prs_werkplek_aanduiding)
                        || DECODE (COUNT ( * ), 1, '', '...')
                           prs_werkplek_aanduiding
                 FROM   prs_v_werkplek_gegevens wp, prs_perslidwerkplek pw
                WHERE   wp.prs_werkplek_key = pw.prs_werkplek_key
             GROUP BY   pw.prs_perslid_key) wp2
    WHERE       rrr.res_reservering_key = res.res_reservering_key
            AND rrr.res_rsv_ruimte_key = r2a.res_rsv_ruimte_key(+)
            AND rrr.prs_kostenplaats_key = k.prs_kostenplaats_key(+)
            AND rrr.res_rsv_ruimte_key = voorz.res_rsv_ruimte_key(+)
            AND rrr.res_rsv_ruimte_host_key = p.prs_perslid_key
            AND p.prs_afdeling_key = a.prs_afdeling_key
            AND wp2.prs_perslid_key(+) = p.prs_perslid_key
            AND (rrr.res_ruimte_opstel_key IS NOT NULL
                 OR voorz.res_rsv_ruimte_key IS NOT NULL)
            AND rrr.res_rsv_ruimte_tot > TRUNC (ADD_MONTHS (SYSDATE, -12), 'YYYY');

COMMIT;

BEGIN adm.systrackscript('$Workfile: uwva#27546.sql $', '$Revision$', 1); END;
/
COMMIT;
SPOOL OFF
