1101 lines
47 KiB
MySQL
1101 lines
47 KiB
MySQL
--
|
|
-- $Id$
|
|
--
|
|
-- Script containing customer specific sql statements for the FACILITOR database
|
|
|
|
DEFINE thisfile = 'TAYL.SQL'
|
|
DEFINE dbuser = 'TAYL'
|
|
|
|
SET ECHO ON
|
|
SET DEFINE ON
|
|
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
|
COLUMN fcltcusttxt NEW_VALUE fcltcusttxt NOPRINT;
|
|
WHENEVER SQLERROR CONTINUE;
|
|
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
|
|
SPOOL &fcltlogfile
|
|
WHENEVER SQLERROR EXIT;
|
|
SELECT adm.checkscriptcust('&dbuser') AS fcltcusttxt FROM DUAL;
|
|
WHENEVER SQLERROR CONTINUE;
|
|
---------------------------------------
|
|
PROMPT &fcltcusttxt
|
|
---------------------------------------
|
|
SET DEFINE OFF
|
|
|
|
------ payload begin ------
|
|
|
|
-------------------------------
|
|
--- DOMEIN-VIEWS --------------
|
|
-------------------------------
|
|
|
|
CREATE OR REPLACE VIEW tayl_v_leverancierslijst
|
|
(
|
|
PRS_BEDRIJF_KEY,
|
|
BEDRIJF_NAAM,
|
|
BEDRIJF_PLAATS,
|
|
PRS_BEDRIJF_VERWIJDER
|
|
)
|
|
AS
|
|
SELECT
|
|
b.prs_bedrijf_key,
|
|
b.prs_bedrijf_naam,
|
|
b.prs_bedrijf_post_plaats,
|
|
b.prs_bedrijf_verwijder
|
|
FROM
|
|
prs_bedrijf b
|
|
WHERE
|
|
prs_bedrijf_intern IS NULL
|
|
AND prs_bedrijf_verwijder IS NULL
|
|
ORDER BY prs_bedrijf_naam
|
|
;
|
|
|
|
|
|
-- Lijst van Locatieleiders (tbv domeinview)
|
|
CREATE OR REPLACE VIEW tayl_v_medewerkers
|
|
(
|
|
PRS_PERSLID_KEY,
|
|
NAAM,
|
|
AFDELING
|
|
)
|
|
AS
|
|
SELECT
|
|
p.prs_perslid_key,
|
|
CASE WHEN p.prs_perslid_tussenvoegsel IS NULL
|
|
THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam -- || ' (' || sp.prs_srtperslid_omschrijving || ')'
|
|
ELSE p.prs_perslid_voornaam || ' ' || p.prs_perslid_tussenvoegsel || ' ' || p.prs_perslid_naam -- || ' (' || sp.prs_srtperslid_omschrijving || ')'
|
|
END
|
|
naam,
|
|
a.prs_afdeling_naam2
|
|
FROM
|
|
prs_perslid p,
|
|
prs_srtperslid sp,
|
|
prs_v_afdeling a,
|
|
prs_bedrijf b
|
|
WHERE
|
|
p.prs_afdeling_key = a.prs_afdeling_key
|
|
AND a.prs_bedrijf_key = b.prs_bedrijf_key
|
|
AND b.prs_bedrijf_key = 6 -- bedrijfs_key TAYL
|
|
AND p.prs_srtperslid_key = sp.prs_srtperslid_key
|
|
AND p.prs_perslid_verwijder IS NULL
|
|
ORDER BY p.prs_perslid_naam
|
|
;
|
|
|
|
----------------------------------------
|
|
--- AUTOCAD-THEMA'S en LABELS ----------
|
|
----------------------------------------
|
|
|
|
-- View om de juiste labels te tonen in het werkplekreserveringsscherm.
|
|
CREATE OR REPLACE VIEW tayl_v_label_deel_res_datum
|
|
(
|
|
FCLT_F_DATUM,
|
|
INS_DEEL_KEY,
|
|
RES_DEEL_OMSCHRIJVING,
|
|
WAARDE1,
|
|
WAARDE,
|
|
WAARDE3,
|
|
WAARDE_HTML,
|
|
WAARDE_HTML2
|
|
)
|
|
BEQUEATH DEFINER
|
|
AS
|
|
WITH
|
|
datums
|
|
AS
|
|
( SELECT TRUNC (SYSDATE) + LEVEL - 1 datum
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 14)
|
|
SELECT datums.datum
|
|
fclt_f_datum,--count(res.res_ins_deel_key),
|
|
isd.res_ins_deel_key
|
|
ins_deel_key,
|
|
isd.res_deel_omschrijving,
|
|
CHR (10)
|
|
|| LISTAGG (
|
|
DECODE (
|
|
naam,
|
|
NULL, '',
|
|
'[s40]'
|
|
|| naam
|
|
|| ' ('
|
|
|| TO_CHAR (res_rsv_deel_van, 'HH24:MI')
|
|
|| '-'
|
|
|| DECODE (TRUNC (res_rsv_deel_tot),
|
|
TRUNC (res_rsv_deel_van), TO_CHAR (res_rsv_deel_tot, 'HH24:MI'),
|
|
TO_CHAR (res_rsv_deel_tot, 'DD-MM-YYYY HH24:MI'))
|
|
|| ')'),
|
|
CHR (10))
|
|
WITHIN GROUP (ORDER BY res_rsv_deel_van) || 'w1'
|
|
waarde1,
|
|
DECODE (count(res.res_ins_deel_key), 0, substr(isd.res_deel_omschrijving, INSTR(isd.res_deel_omschrijving, '-') +1, 20),
|
|
CHR (10)
|
|
|| LISTAGG (DECODE (naam, NULL, '', '[s40]' || TO_CHAR (res_rsv_deel_van, 'HH24:MI') || ' ' || naam),
|
|
CHR (10))
|
|
WITHIN GROUP (ORDER BY res_rsv_deel_van))
|
|
waarde2,
|
|
CHR (10)
|
|
|| LISTAGG (DECODE (naam, NULL, '', '[s40]' || naam), CHR (10)) WITHIN GROUP (ORDER BY res_rsv_deel_van) || 'w3'
|
|
waarde3,
|
|
LISTAGG (
|
|
DECODE (naam,
|
|
NULL, '',
|
|
'<span class="body">' || TO_CHAR (res_rsv_deel_van, 'HH24:MI') || ' ' || naam || '</span>'),
|
|
'<br>')
|
|
WITHIN GROUP (ORDER BY res_rsv_deel_van) || 'h1'
|
|
waarde_html,
|
|
LISTAGG (DECODE (naam, NULL, '', '<span class="body">' || naam || '</span>'), '<br>')
|
|
WITHIN GROUP (ORDER BY res_rsv_deel_van) || 'h2'
|
|
waarde_html2
|
|
FROM res_v_aanwezigdeel isd,
|
|
datums,
|
|
(SELECT datum,
|
|
res_ins_deel_key,
|
|
DECODE (p.prs_perslid_visibility, 1, pf.prs_perslid_naam_friendly, a.prs_afdeling_omschrijving)
|
|
naam,
|
|
res_rsv_deel_van,
|
|
res_rsv_deel_tot
|
|
FROM res_v_aanwezigdeel r,
|
|
res_v_aanwezigrsv_deel rrd,
|
|
res_rsv_ruimte rrr,
|
|
prs_v_perslid_fullnames pf,
|
|
prs_perslid p,
|
|
prs_afdeling a,
|
|
datums
|
|
WHERE r.res_deel_key = rrd.res_deel_key
|
|
AND rrd.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key
|
|
AND rrr.res_rsv_ruimte_host_key = pf.prs_perslid_key
|
|
AND pf.prs_perslid_key = p.prs_perslid_key
|
|
AND p.prs_afdeling_key = a.prs_afdeling_key
|
|
AND datum + 1 >= res_rsv_deel_van
|
|
AND datum < res_rsv_deel_tot) res -- Bezet
|
|
WHERE isd.res_ins_deel_key = res.res_ins_deel_key(+) AND datums.datum = res.datum(+)
|
|
GROUP BY datums.datum, isd.res_ins_deel_key, isd.res_deel_omschrijving;
|
|
|
|
-- Thema om het vlekkenplan te tonen welke afdeling die dag de ruimte gepland heeft. Om dit in te richten moet je voor
|
|
-- deze ruimten een reservering inleggen en het veld 'Ruimte reservering tbv blokken wp's' vullen.
|
|
CREATE OR REPLACE VIEW tayl_v_thema_ruimte_dag
|
|
(
|
|
FCLT_F_DATUM,
|
|
ALG_RUIMTE_KEY,
|
|
ALG_RES_RUIMTE_KEY,
|
|
RESERVERINGSNR,
|
|
WAARDE1,
|
|
WAARDE,
|
|
WAARDE3,
|
|
WAARDE_HTML,
|
|
WAARDE_HTML2
|
|
)
|
|
AS
|
|
WITH
|
|
datums
|
|
AS
|
|
( SELECT TRUNC (SYSDATE) + LEVEL - 1 datum
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 30)
|
|
SELECT datums.datum fclt_f_datum, --count(res.res_ins_deel_key),
|
|
r2a.alg_ruimte_key ,
|
|
r2a.res_ruimte_key,
|
|
r2a.reserveringsnr,
|
|
afdeling || 'w1' waarde1,
|
|
afdeling waarde2,
|
|
afdeling || 'w3' waarde3,
|
|
afdeling
|
|
|| 'h1' waarde_html,
|
|
afdeling
|
|
|| 'h2' waarde_html2
|
|
FROM (SELECT ra.*, rrr.res_reservering_key || '/' || rrr.res_rsv_ruimte_volgnr reserveringsnr
|
|
FROM res_v_rsv_ruimte_2_alg_ruimte ra,
|
|
res_rsv_ruimte rrr
|
|
WHERE ra.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key
|
|
AND ra.res_alg_ruimte_verwijder IS NULL
|
|
AND ra.res_rsv_ruimte_dirtlevel = 0
|
|
) r2a,
|
|
datums,
|
|
(SELECT datum,
|
|
res_rsv_ruimte_key,
|
|
flx.getdomeinwaarde(221, flx.getflex ('RES', 141, rrr.res_rsv_ruimte_key)) afdeling
|
|
FROM res_v_aanwezigrsv_ruimte rrr,
|
|
datums
|
|
WHERE TRUNC(datum) = TRUNC(res_rsv_ruimte_van)) res -- Bezet
|
|
WHERE r2a.res_rsv_ruimte_key = res.res_rsv_ruimte_key(+)
|
|
AND datums.datum = res.datum(+) ;
|
|
|
|
CREATE OR REPLACE VIEW tayl_v_thema_vloersoort
|
|
(
|
|
ALG_RUIMTE_KEY,
|
|
WAARDE,
|
|
WAARDE_KEY
|
|
)
|
|
AS
|
|
SELECT r.alg_ruimte_key,
|
|
COALESCE (va.fac_usrdata_omschr, 'Onbekend'),
|
|
va.fac_usrdata_key
|
|
FROM alg_ruimte r,
|
|
(SELECT rr.alg_ruimte_key,
|
|
ud.fac_usrdata_omschr,
|
|
ud.fac_usrdata_key
|
|
FROM alg_onrgoedkenmerk ok,
|
|
fac_usrdata ud,
|
|
fac_kenmerkdomein rk,
|
|
alg_kenmerk k,
|
|
alg_v_aanwezigruimte rr
|
|
WHERE rk.fac_usrtab_key = ud.fac_usrtab_key
|
|
AND k.fac_kenmerkdomein_key = rk.fac_kenmerkdomein_key
|
|
AND TO_CHAR (ud.fac_usrdata_key) =
|
|
ok.alg_onrgoedkenmerk_waarde
|
|
AND ok.alg_kenmerk_key = 1040
|
|
AND k.alg_kenmerk_niveau = 'R'
|
|
AND k.alg_kenmerk_verwijder IS NULL
|
|
AND rr.alg_ruimte_key = ok.alg_onrgoed_key) va
|
|
WHERE r.alg_ruimte_key = va.alg_ruimte_key(+);
|
|
|
|
CREATE OR REPLACE VIEW tayl_v_thema_set_res_wp
|
|
AS
|
|
SELECT ins_deel_key, DECODE (rd.res_deel_key, NULL, 0, 1) waarde
|
|
FROM ins_deel d,
|
|
(SELECT *
|
|
FROM res_deel
|
|
WHERE res_deel_verwijder IS NULL) rd
|
|
WHERE d.ins_deel_key = rd.res_ins_deel_key(+);
|
|
|
|
-------------------------------
|
|
--- PROCEDURES ---------------
|
|
-------------------------------
|
|
|
|
|
|
-------------------------------
|
|
--- NOTI-JOBS ---------------
|
|
-------------------------------
|
|
|
|
-- Contract-Rappel
|
|
--- Notificatie op contractbeheerder, verantwoordelijke en/of 2e aanspreekpunt
|
|
--- Onderstaand rapport is basisview en deze fungeert als bron voor de rappel-notificatie
|
|
CREATE OR REPLACE VIEW tayl_v_cnt_rappel_basis
|
|
AS
|
|
SELECT d.ins_discipline_omschrijving,
|
|
c.cnt_contract_key,
|
|
c.cnt_contract_nummer_intern
|
|
|| DECODE (c.cnt_contract_versie,
|
|
NULL, '',
|
|
'.' || c.cnt_contract_versie)
|
|
cnt_contract_nr,
|
|
c.cnt_contract_looptijd_van begindatum,
|
|
c.cnt_contract_looptijd_tot einddatum,
|
|
cnt.cnt_getopzegdatum (c.cnt_contract_key) cnt_opzegdatum,
|
|
cnt.cnt_getrappeldatum (c.cnt_contract_key) cnt_rappeldatum,
|
|
DECODE (cnt.cnt_contract_status (c.cnt_contract_looptijd_van,
|
|
cnt.cnt_getrappeldatum (c.cnt_contract_key),
|
|
cnt.cnt_getopzegdatum (c.cnt_contract_key),
|
|
c.cnt_contract_looptijd_tot),
|
|
0, lcl.l ('lcl_cnt_future'),
|
|
1, lcl.l ('lcl_cnt_topical'),
|
|
2, lcl.l ('lcl_cnt_warn'),
|
|
3, lcl.l ('lcl_cnt_cancel'),
|
|
4, lcl.l ('lcl_cnt_past'))
|
|
fase_actief,
|
|
DECODE (
|
|
c.cnt_contract_status,
|
|
0,
|
|
DECODE (fac.getsetting ('cnt_contract_approval'),
|
|
1, lcl.l ('lcl_cnt_active_approval'),
|
|
lcl.l ('lcl_cnt_active')),
|
|
1,
|
|
lcl.l ('lcl_cnt_inactive'),
|
|
2,
|
|
lcl.l ('lcl_cnt_new'),
|
|
3,
|
|
lcl.l ('lcl_cnt_forapproval'))
|
|
cnt_contract_status,
|
|
(SELECT kc.cnt_kenmerkcontract_waarde
|
|
FROM cnt_kenmerkcontract kc, cnt_kenmerk k
|
|
WHERE k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
|
AND kc.cnt_contract_key = c.cnt_contract_key
|
|
AND k.cnt_srtkenmerk_key = 22) -- contractbeheerder
|
|
vink_beheerder,
|
|
(SELECT p.prs_perslid_email
|
|
FROM prs_perslid p
|
|
WHERE p.prs_perslid_key = c.prs_perslid_key_beh
|
|
AND p.prs_perslid_verwijder IS NULL)
|
|
beheerder_email,
|
|
(SELECT kc.cnt_kenmerkcontract_waarde
|
|
FROM cnt_kenmerkcontract kc, cnt_kenmerk k
|
|
WHERE k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
|
AND kc.cnt_contract_key = c.cnt_contract_key
|
|
AND k.cnt_srtkenmerk_key = 23) -- contractverantwoordelijke
|
|
vink_verantwoordelijke,
|
|
(SELECT p.prs_perslid_email
|
|
FROM prs_perslid p
|
|
WHERE p.prs_perslid_key = c.prs_perslid_key_eig
|
|
AND p.prs_perslid_verwijder IS NULL)
|
|
veantwoordelijke_email,
|
|
(SELECT kc.cnt_kenmerkcontract_waarde
|
|
FROM cnt_kenmerkcontract kc, cnt_kenmerk k
|
|
WHERE k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
|
AND kc.cnt_contract_key = c.cnt_contract_key
|
|
AND k.cnt_srtkenmerk_key = 25) -- rappel 2e aanspreekpunt
|
|
vink_2e_aanspreekpunt,
|
|
(SELECT p.prs_perslid_email
|
|
FROM prs_perslid p
|
|
WHERE p.prs_perslid_key = (SELECT fac.safe_to_number(kc.cnt_kenmerkcontract_waarde)
|
|
FROM cnt_kenmerkcontract kc, cnt_kenmerk k
|
|
WHERE k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
|
AND kc.cnt_contract_key = c.cnt_contract_key
|
|
AND k.cnt_srtkenmerk_key = 21)
|
|
AND p.prs_perslid_verwijder IS NULL)
|
|
tweede_aanspreekpunt_email
|
|
FROM cnt_v_aanwezigcontract c, ins_tab_discipline d
|
|
WHERE c.ins_discipline_key = d.ins_discipline_key
|
|
AND d.ins_discipline_module = 'CNT';
|
|
|
|
|
|
-- TAYLOR: Contractbeheerder(_eig) is Beheerder/Administrateur en de Contractverantwoordelijke (_beh) is 1e aanspreekpunt die beslist over wel/niet verlengen. Tevens optie om 2e aanspreekpunt mee te nemen in rappel
|
|
CREATE OR REPLACE VIEW tayl_v_noti_cntreminder
|
|
(
|
|
code,
|
|
sender,
|
|
receiver,
|
|
text,
|
|
key,
|
|
xkey,
|
|
xemail,
|
|
xmobile
|
|
)
|
|
AS -- Op rappel-datum naar de Beheerder/Administrateur sturen
|
|
SELECT 'CNTMAI',
|
|
NULL,
|
|
c.prs_perslid_key_beh,
|
|
'TER INFO: Rappel verstuurd voor contract ' || c.cnt_contract_nummer_intern
|
|
|| DECODE (c.cnt_contract_versie, NULL, '', '.' || c.cnt_contract_versie)
|
|
|| ' (' || c.cnt_contract_omschrijving || ' ' || b.prs_bedrijf_naam || ')'
|
|
|| ' - Moet uiterlijk per ' || TO_CHAR (cnt.cnt_getopzegdatum (c.cnt_contract_key), 'dd-mm-yyyy')
|
|
|| ' worden verlengd of opgezegd.',
|
|
c.cnt_contract_key,
|
|
NULL,
|
|
NULL,
|
|
NULL
|
|
FROM tayl_v_cnt_rappel_basis v, cnt_v_aanwezigcontract c, prs_bedrijf b
|
|
WHERE c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
|
AND v.cnt_contract_key = c.cnt_contract_key
|
|
AND v.vink_beheerder = 1
|
|
AND c.cnt_contract_status = 0
|
|
AND cnt.cnt_getrappeldatum (c.cnt_contract_key) = TRUNC (SYSDATE)
|
|
AND c.prs_perslid_key_beh <> c.prs_perslid_key_eig -- als administrateur gelijk aan 1e aanspreekpunt dan dan sturen we de info-mail niet uit
|
|
AND NOT EXISTS -- kenmerkveld 'Opgezegd' staat uit
|
|
(SELECT km.cnt_contract_key
|
|
FROM cnt_kenmerkcontract km, cnt_kenmerk k
|
|
WHERE km.cnt_contract_key = c.cnt_contract_key AND km.cnt_kenmerk_key = k.cnt_kenmerk_key AND k.cnt_srtkenmerk_key = 4)
|
|
UNION ALL -- Op rappel-datum ACTIE-mail naar het 1e aanspreekpunt sturen (contractverantwoordelijke)
|
|
SELECT 'CUST01',
|
|
NULL,
|
|
c.prs_perslid_key_eig,
|
|
'ACTIE: Rappel verstuurd voor contract ' || c.cnt_contract_nummer_intern
|
|
|| DECODE (c.cnt_contract_versie, NULL, '', '.' || c.cnt_contract_versie)
|
|
|| ' (' || c.cnt_contract_omschrijving || ' ' || b.prs_bedrijf_naam || ')'
|
|
|| ' - Moet uiterlijk per ' || TO_CHAR (cnt.cnt_getopzegdatum (c.cnt_contract_key), 'dd-mm-yyyy')
|
|
|| ' worden verlengd of opgezegd.',
|
|
c.cnt_contract_key,
|
|
NULL,
|
|
NULL,
|
|
NULL
|
|
FROM tayl_v_cnt_rappel_basis v, cnt_v_aanwezigcontract c, prs_bedrijf b
|
|
WHERE c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
|
AND v.cnt_contract_key = c.cnt_contract_key
|
|
AND v.vink_verantwoordelijke = 1
|
|
AND c.cnt_contract_status = 0
|
|
AND cnt.cnt_getrappeldatum (c.cnt_contract_key) = TRUNC (SYSDATE)
|
|
AND c.prs_perslid_key_eig IS NOT NULL
|
|
AND NOT EXISTS -- kenmerkveld 'Opgezegd' staat uit
|
|
(SELECT km.cnt_contract_key
|
|
FROM cnt_kenmerkcontract km, cnt_kenmerk k
|
|
WHERE km.cnt_contract_key = c.cnt_contract_key AND km.cnt_kenmerk_key = k.cnt_kenmerk_key AND k.cnt_srtkenmerk_key = 4)
|
|
UNION ALL -- Op rappel-datum ACTIE-mail naar het tweede aanspreekpunt
|
|
SELECT 'CUST02',
|
|
NULL,
|
|
NULL,
|
|
'TER INFO: Rappel verstuurd voor contract ' || c.cnt_contract_nummer_intern
|
|
|| DECODE (c.cnt_contract_versie, NULL, '', '.' || c.cnt_contract_versie)
|
|
|| ' (' || c.cnt_contract_omschrijving || ' ' || b.prs_bedrijf_naam || ')'
|
|
|| ' - Moet uiterlijk per ' || TO_CHAR (cnt.cnt_getopzegdatum (c.cnt_contract_key), 'dd-mm-yyyy')
|
|
|| ' worden verlengd of opgezegd.',
|
|
c.cnt_contract_key,
|
|
NULL,
|
|
v.tweede_aanspreekpunt_email,
|
|
NULL
|
|
FROM tayl_v_cnt_rappel_basis v, cnt_v_aanwezigcontract c, prs_bedrijf b
|
|
WHERE c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
|
AND v.cnt_contract_key = c.cnt_contract_key
|
|
AND v.vink_2e_aanspreekpunt = 1
|
|
AND c.cnt_contract_status = 0
|
|
AND cnt.cnt_getrappeldatum (c.cnt_contract_key) = TRUNC (SYSDATE)
|
|
AND NOT EXISTS -- kenmerkveld 'Opgezegd' staat uit
|
|
(SELECT km.cnt_contract_key
|
|
FROM cnt_kenmerkcontract km, cnt_kenmerk k
|
|
WHERE km.cnt_contract_key = c.cnt_contract_key AND km.cnt_kenmerk_key = k.cnt_kenmerk_key AND k.cnt_srtkenmerk_key = 4) ;
|
|
|
|
|
|
-------------------------------
|
|
--- RAPPORTAGES ---------------
|
|
-------------------------------
|
|
|
|
CREATE OR REPLACE VIEW tayl_v_medewerkers_werktijden
|
|
(
|
|
PRS_PERSLID_KEY,
|
|
PRS_PERSLID_NAAM,
|
|
PRS_PERSLID_AFDELING,
|
|
MAANDAG,
|
|
MAANDAG_LOCATIE,
|
|
DINSDAG,
|
|
DINSDAG_LOCATIE,
|
|
WOENSDAG,
|
|
WOENSDAG_LOCATIE,
|
|
DONDERDAG,
|
|
DONDERDAG_LOCATIE,
|
|
VRIJDAG,
|
|
VRIJDAG_LOCATIE,
|
|
WERKWEEK_TOELICHTING
|
|
)
|
|
AS
|
|
SELECT
|
|
p.prs_perslid_key,
|
|
CASE WHEN p.prs_perslid_tussenvoegsel IS NULL
|
|
THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || sp.prs_srtperslid_omschrijving || ')'
|
|
ELSE p.prs_perslid_voornaam || ' ' || p.prs_perslid_tussenvoegsel || ' ' || p.prs_perslid_naam || ' (' || sp.prs_srtperslid_omschrijving || ')'
|
|
END
|
|
naam,
|
|
a.prs_afdeling_naam2,
|
|
CASE WHEN kw.ma_ochtend IS NULL and kw.ma_middag IS NULL THEN NULL
|
|
WHEN kw.ma_ochtend IS NOT NULL and kw.ma_middag IS NULL THEN 'ochtend'
|
|
WHEN kw.ma_ochtend IS NULL and kw.ma_middag IS NOT NULL THEN 'middag'
|
|
WHEN kw.ma_ochtend IS NOT NULL and kw.ma_middag IS NOT NULL THEN 'hele dag'
|
|
ELSE NULL
|
|
END
|
|
maandag,
|
|
CASE WHEN kw.ma_ochtend IS NOT NULL OR kw.ma_middag IS NOT NULL THEN kw.ma_locatie
|
|
ELSE NULL
|
|
END
|
|
maandag_locatie,
|
|
CASE WHEN kw.di_ochtend IS NULL and kw.di_middag IS NULL THEN NULL
|
|
WHEN kw.di_ochtend IS NOT NULL and kw.di_middag IS NULL THEN 'ochtend'
|
|
WHEN kw.di_ochtend IS NULL and kw.di_middag IS NOT NULL THEN 'middag'
|
|
WHEN kw.di_ochtend IS NOT NULL and kw.di_middag IS NOT NULL THEN 'hele dag'
|
|
ELSE NULL
|
|
END
|
|
dinsdag,
|
|
CASE WHEN kw.di_ochtend IS NOT NULL OR kw.di_middag IS NOT NULL THEN kw.di_locatie
|
|
ELSE NULL
|
|
END
|
|
dinsdag_locatie,
|
|
CASE WHEN kw.wo_ochtend IS NULL and kw.wo_middag IS NULL THEN NULL
|
|
WHEN kw.wo_ochtend IS NOT NULL and kw.wo_middag IS NULL THEN 'ochtend'
|
|
WHEN kw.wo_ochtend IS NULL and kw.wo_middag IS NOT NULL THEN 'middag'
|
|
WHEN kw.wo_ochtend IS NOT NULL and kw.wo_middag IS NOT NULL THEN 'hele dag'
|
|
ELSE NULL
|
|
END
|
|
woensdag,
|
|
CASE WHEN kw.wo_ochtend IS NOT NULL OR kw.wo_middag IS NOT NULL THEN kw.wo_locatie
|
|
ELSE NULL
|
|
END
|
|
woensdag_locatie,
|
|
CASE WHEN kw.do_ochtend IS NULL and kw.do_middag IS NULL THEN NULL
|
|
WHEN kw.do_ochtend IS NOT NULL and kw.do_middag IS NULL THEN 'ochtend'
|
|
WHEN kw.do_ochtend IS NULL and kw.do_middag IS NOT NULL THEN 'middag'
|
|
WHEN kw.do_ochtend IS NOT NULL and kw.do_middag IS NOT NULL THEN 'hele dag'
|
|
ELSE NULL
|
|
END
|
|
donderdag,
|
|
CASE WHEN kw.do_ochtend IS NOT NULL OR kw.do_middag IS NOT NULL THEN kw.do_locatie
|
|
ELSE NULL
|
|
END
|
|
donderdag_locatie,
|
|
CASE WHEN kw.vr_ochtend IS NULL and kw.vr_middag IS NULL THEN NULL
|
|
WHEN kw.vr_ochtend IS NOT NULL and kw.vr_middag IS NULL THEN 'ochtend'
|
|
WHEN kw.vr_ochtend IS NULL and kw.vr_middag IS NOT NULL THEN 'middag'
|
|
WHEN kw.vr_ochtend IS NOT NULL and kw.vr_middag IS NOT NULL THEN 'hele dag'
|
|
ELSE NULL
|
|
END
|
|
vrijdag,
|
|
CASE WHEN kw.vr_ochtend IS NOT NULL OR kw.vr_middag IS NOT NULL THEN kw.vr_locatie
|
|
ELSE NULL
|
|
END
|
|
vrijdag_locatie,
|
|
kw.werkweek_toelichting
|
|
FROM
|
|
prs_perslid p,
|
|
prs_v_afdeling a,
|
|
prs_bedrijf b,
|
|
prs_srtperslid sp,
|
|
(SELECT p.prs_perslid_key,
|
|
FLX.getflex('PRS',1000, p.prs_perslid_key, 'P')
|
|
werkweek_toelichting,
|
|
FLX.getflex('PRS',1041, p.prs_perslid_key, 'P')
|
|
ma_ochtend,
|
|
FLX.getflex('PRS',1051, p.prs_perslid_key, 'P')
|
|
ma_middag,
|
|
FLX.getdomeinwaarde (81, FLX.getflex('PRS',1056, p.prs_perslid_key, 'P'))
|
|
ma_locatie,
|
|
FLX.getflex('PRS',1042, p.prs_perslid_key, 'P')
|
|
di_ochtend,
|
|
FLX.getflex('PRS',1052, p.prs_perslid_key, 'P')
|
|
di_middag,
|
|
FLX.getdomeinwaarde (81, FLX.getflex('PRS',1057, p.prs_perslid_key, 'P'))
|
|
di_locatie,
|
|
FLX.getflex('PRS',1043, p.prs_perslid_key, 'P')
|
|
wo_ochtend,
|
|
FLX.getflex('PRS',1053, p.prs_perslid_key, 'P')
|
|
wo_middag,
|
|
FLX.getdomeinwaarde (81, FLX.getflex('PRS',1058, p.prs_perslid_key, 'P'))
|
|
wo_locatie,
|
|
FLX.getflex('PRS',1044, p.prs_perslid_key, 'P')
|
|
do_ochtend,
|
|
FLX.getflex('PRS',1054, p.prs_perslid_key, 'P')
|
|
do_middag,
|
|
FLX.getdomeinwaarde (81, FLX.getflex('PRS',1059, p.prs_perslid_key, 'P'))
|
|
do_locatie,
|
|
FLX.getflex('PRS',1045, p.prs_perslid_key, 'P')
|
|
vr_ochtend,
|
|
FLX.getflex('PRS',1055, p.prs_perslid_key, 'P')
|
|
vr_middag,
|
|
FLX.getdomeinwaarde (81, FLX.getflex('PRS',1060, p.prs_perslid_key, 'P'))
|
|
vr_locatie
|
|
FROM prs_perslid p) kw
|
|
WHERE
|
|
p.prs_perslid_key = kw.prs_perslid_key
|
|
AND p.prs_perslid_verwijder IS NULL
|
|
AND p.prs_afdeling_key = a.prs_afdeling_key
|
|
AND a.prs_bedrijf_key = b.prs_bedrijf_key
|
|
AND b.prs_bedrijf_key = 6 -- bedrijfs_key TAYL
|
|
AND p.prs_srtperslid_key = sp.prs_srtperslid_key ;
|
|
|
|
-- Bronview - Wie zit waar met werkplekreserveringen
|
|
CREATE OR REPLACE VIEW TAYL_V_RES_RESERVERINGINCL
|
|
(
|
|
KEY,
|
|
NUMMER,
|
|
RES_OMSCHRIJVING,
|
|
INVOERDATUM,
|
|
DATUM,
|
|
GASTHEER,
|
|
ZICHTBARE_GASTHEER,
|
|
CONTACT,
|
|
GASTHEER_EMAIL,
|
|
CONTACT_EMAIL,
|
|
INVOERDER,
|
|
KOSTENSOORTGROEP,
|
|
KOSTENSOORT,
|
|
KPN,
|
|
KPN_OMSCHRIJVING,
|
|
KPN_EXTERN,
|
|
FCLT_3D_DIVISIE_KEY,
|
|
DIVISIE_NAAM,
|
|
DIVISIE_OMSCHRIJVING,
|
|
FCLT_3D_AFDELING_KEY,
|
|
AFDELING_CODE,
|
|
AFDELING_OMSCHRIJVING,
|
|
REGIO_OMSCHRIJVING,
|
|
DISTRICT_OMSCHIJVING,
|
|
FCLT_3D_LOCATIE_KEY,
|
|
LOCATIE,
|
|
LOCATIE_OMSCHRIJVING,
|
|
LOCATIE_PLAATS,
|
|
GEBOUW,
|
|
VERDIEPING,
|
|
RUIMTE,
|
|
ALG_RUIMTE_KEY,
|
|
OPSTELLING,
|
|
CAPACITEIT,
|
|
NO_SHOW,
|
|
ACTUAL_SHOWN,
|
|
MANDAAT,
|
|
PERSONEELSNR,
|
|
FCLT_3D_DISCIPLINE_KEY,
|
|
CATALOGUS_KEY,
|
|
CATALOGUS,
|
|
RESERVEERBARE_RUIMTE,
|
|
BEZOEKERS,
|
|
VAN,
|
|
TOT,
|
|
DUUR,
|
|
STATUS,
|
|
BOSTATUS,
|
|
ACTIVITEIT,
|
|
SRTACTIVITEIT_KEY,
|
|
ACTIVITEITSOORT,
|
|
OPMERKING,
|
|
BEZORGMODE,
|
|
VOORZIENING_DISCIPLINE_KEY,
|
|
VOORZIENING_TYPE,
|
|
VOORZIENING_CATALOGUS,
|
|
LEVERANCIER,
|
|
VOORZIENING_PRODUCT_KEY,
|
|
VOORZIENING_PRODUCT,
|
|
VOORZIENING_TOTAALPRIJS,
|
|
VOORZIENING_VAN,
|
|
VOORZIENING_TOT,
|
|
VOORZIENING_AANTAL,
|
|
VOORZIENING_PRIJS,
|
|
-- KENMERKEN TAYLOR
|
|
LUNCH,
|
|
TOEGANG_BALIE,
|
|
PERSOON_INFO,
|
|
-- DOORKLIK NAAR RUIMTE-INDICATIE OP PLATTEGROND
|
|
HTML_PLATTEGROND,
|
|
DIRTLEVEL_CV,
|
|
VERVALDATUM_CV,
|
|
DIRTLEVEL_CV_FILTER
|
|
)
|
|
AS
|
|
SELECT rrr.res_rsv_ruimte_key,
|
|
res.res_reservering_key || '/' || rrr.res_rsv_ruimte_volgnr,
|
|
rrr.res_rsv_ruimte_omschrijving,
|
|
COALESCE (rrr.res_rsv_ruimte_aanmaak, voorz.van),
|
|
rrr.res_rsv_ruimte_van,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = rrr.res_rsv_ruimte_host_key),
|
|
DECODE (
|
|
p.prs_perslid_visibility,
|
|
1, (SELECT prs_perslid_naam_friendly
|
|
FROM prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = rrr.res_rsv_ruimte_host_key),
|
|
a.prs_afdeling_omschrijving)
|
|
zichtbare_gastheer,
|
|
(SELECT prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = rrr.res_rsv_ruimte_contact_key),
|
|
(SELECT ph.prs_perslid_email
|
|
FROM prs_perslid ph
|
|
WHERE ph.prs_perslid_key = rrr.res_rsv_ruimte_host_key),
|
|
(SELECT pc.prs_perslid_email
|
|
FROM prs_perslid pc
|
|
WHERE pc.prs_perslid_key = rrr.res_rsv_ruimte_contact_key),
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM fac_tracking tr,
|
|
fac_srtnotificatie str,
|
|
prs_v_perslid_fullnames_all pf
|
|
WHERE tr.prs_perslid_key = pf.prs_perslid_key
|
|
AND str.fac_srtnotificatie_code = 'RESNEW'
|
|
AND tr.fac_srtnotificatie_key = str.fac_srtnotificatie_key
|
|
AND tr.fac_tracking_refkey = rrr.res_rsv_ruimte_key),
|
|
(SELECT ksg.prs_kostensoortgrp_oms
|
|
FROM prs_kostensoortgrp ksg, prs_kostensoort ks
|
|
WHERE ksg.prs_kostensoortgrp_key = ks.prs_kostensoortgrp_key
|
|
AND ks.prs_kostensoort_key =
|
|
(SELECT disc.prs_kostensoort_key
|
|
FROM res_discipline disc
|
|
WHERE disc.ins_discipline_key =
|
|
COALESCE (
|
|
voorz.ins_discipline_key,
|
|
(SELECT ins_discipline_key
|
|
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))))
|
|
kostensoortgroep,
|
|
(SELECT ks.prs_kostensoort_oms
|
|
FROM prs_kostensoort ks
|
|
WHERE ks.prs_kostensoort_key =
|
|
(SELECT disc.prs_kostensoort_key
|
|
FROM res_discipline disc
|
|
WHERE disc.ins_discipline_key =
|
|
COALESCE (
|
|
voorz.ins_discipline_key,
|
|
(SELECT ins_discipline_key
|
|
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))))
|
|
kostensoort,
|
|
k.prs_kostenplaats_nr,
|
|
k.prs_kostenplaats_omschrijving,
|
|
k.prs_kostenplaats_extern,
|
|
an.prs_afdeling_key,
|
|
an.prs_afdeling_naam,
|
|
an.prs_afdeling_omschrijving,
|
|
a.prs_afdeling_key,
|
|
a.prs_afdeling_naam,
|
|
a.prs_afdeling_omschrijving,
|
|
(SELECT rg.alg_regio_omschrijving
|
|
FROM alg_regio rg,
|
|
alg_district d,
|
|
alg_locatie l,
|
|
alg_gebouw g,
|
|
alg_verdieping v,
|
|
alg_ruimte r
|
|
WHERE rg.alg_regio_key = d.alg_regio_key
|
|
AND 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 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 l.alg_locatie_key
|
|
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_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_locatie_plaats
|
|
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),
|
|
r2a.ruimte_nr,
|
|
r2a.alg_ruimte_key,
|
|
r2a.opstelling,
|
|
r2a.capaciteit,
|
|
rrr.res_rsv_ruimte_noshow,
|
|
rrr.res_rsv_ruimte_bezoekers_shown,
|
|
NVL ((SELECT pr.fac_profiel_limiet
|
|
FROM fac_profiel pr
|
|
WHERE p.fac_profiel_key = pr.fac_profiel_key),
|
|
0),
|
|
prs_perslid_nr,
|
|
COALESCE (
|
|
voorz.ins_discipline_key,
|
|
(SELECT ins_discipline_key
|
|
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)),
|
|
(SELECT ins_discipline_key
|
|
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),
|
|
(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),
|
|
DECODE (rrr.alg_ruimte_key, NULL, 'Ja', 'Nee'),
|
|
rrr.res_rsv_ruimte_bezoekers,
|
|
rrr.res_rsv_ruimte_van,
|
|
rrr.res_rsv_ruimte_tot,
|
|
COALESCE ((rrr.res_rsv_ruimte_tot - rrr.res_rsv_ruimte_van) * 24,
|
|
0),
|
|
(SELECT res_status_fo_omschrijving
|
|
FROM res_status_fo rs
|
|
WHERE rs.res_status_fo_key = rrr.res_status_fo_key),
|
|
(SELECT res_status_bo_omschrijving
|
|
FROM res_status_bo rs
|
|
WHERE rs.res_status_bo_key = rrr.res_status_bo_key),
|
|
ra.res_activiteit_omschrijving,
|
|
rsa.res_srtactiviteit_key,
|
|
rsa.res_srtactiviteit_omschrijving,
|
|
rrr.res_rsv_ruimte_opmerking,
|
|
DECODE (rrr.res_rsv_ruimte_cvab_mode,
|
|
0, lcl.l ('lcl_res_afhalen'),
|
|
1, lcl.l ('lcl_res_bezorgen'),
|
|
''),
|
|
voorz.ins_discipline_key,
|
|
voorz.vtype,
|
|
voorz.catalogus,
|
|
(SELECT prs_bedrijf_naam
|
|
FROM res_disc_params rdp, prs_bedrijf b
|
|
WHERE rdp.prs_bedrijf_key = b.prs_bedrijf_key
|
|
AND rdp.res_ins_discipline_key = voorz.ins_discipline_key),
|
|
voorz.product_key,
|
|
voorz.product,
|
|
voorz.totaalprijs,
|
|
TO_CHAR (voorz.van, 'hh24:mi'),
|
|
TO_CHAR (voorz.tot, 'hh24:mi'),
|
|
voorz.aantal,
|
|
voorz.prijs,
|
|
(SELECT kw.res_kenmerkreservering_waarde
|
|
FROM res_kenmerkwaarde kw, res_kenmerk k
|
|
WHERE kw.res_kenmerk_key = k.res_kenmerk_key AND kw.res_kenmerkwaarde_verwijder IS NULL
|
|
AND k.res_kenmerk_code='LUNCH'
|
|
AND kw.res_rsv_ruimte_key=rrr.res_rsv_ruimte_key)
|
|
lunch,
|
|
(SELECT kw.res_kenmerkreservering_waarde
|
|
FROM res_kenmerkwaarde kw, res_kenmerk k
|
|
WHERE kw.res_kenmerk_key = k.res_kenmerk_key AND kw.res_kenmerkwaarde_verwijder IS NULL
|
|
AND k.res_kenmerk_code='VIA_BALIE'
|
|
AND kw.res_rsv_ruimte_key=rrr.res_rsv_ruimte_key)
|
|
toegang_balie,
|
|
(SELECT MAX(kl.prs_kenmerklink_waarde)
|
|
FROM prs_kenmerklink kl, prs_kenmerk k, prs_perslid p
|
|
WHERE kl.prs_link_key = p.prs_perslid_key AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerk_key = k.prs_kenmerk_key
|
|
AND k.prs_kenmerk_code = 'BESCHIKBAARHEID'
|
|
AND p.prs_perslid_key = rrr.res_rsv_ruimte_contact_key)
|
|
persoon_info,
|
|
'<a class="details" onclick=''FcltMgr.openDetail("appl/cad/ShowRoom.asp?rKey='||r2a.alg_ruimte_key || '")''>'
|
|
|| 'klik hier'
|
|
|| '</a>' html_plattegrond_ruimte,
|
|
DECODE(voorz.dirtlevel, 0, NULL, 'Ongeldig')
|
|
dirtlevel_cv,
|
|
voorz.vervaldatum,
|
|
CASE WHEN voorz.vervaldatum IS NOT NULL AND TRUNC(rrr.res_rsv_ruimte_van) >= TRUNC(voorz.vervaldatum) THEN
|
|
'Ongeldig - wp vervallen'
|
|
WHEN voorz.dirtlevel > 0 THEN
|
|
'Ongeldig - wp al bezet'
|
|
ELSE NULL END
|
|
dirtlevel_cv_filter
|
|
FROM res_v_aanwezigrsv_ruimte rrr,
|
|
res_activiteit ra,
|
|
res_srtactiviteit rsa,
|
|
res_reservering res,
|
|
prs_kostenplaats k,
|
|
prs_perslid p,
|
|
prs_afdeling a,
|
|
prs_afdeling an,
|
|
prs_v_afdeling_boom ab,
|
|
( SELECT res_rsv_ruimte_key,
|
|
MAX (o.res_opstelling_omschrijving) opstelling,
|
|
MAX (ro.res_ruimte_opstel_bezoekers) capaciteit,
|
|
MAX (ra.alg_ruimte_key) alg_ruimte_key,
|
|
MAX (rr.res_ruimte_nr) ruimte_nr
|
|
FROM res_rsv_ruimte r,
|
|
res_ruimte_opstelling ro,
|
|
res_opstelling o,
|
|
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 ro.res_opstelling_key = o.res_opstelling_key
|
|
AND rr.res_ruimte_key = ra.res_ruimte_key
|
|
GROUP BY res_rsv_ruimte_key
|
|
UNION ALL
|
|
SELECT res_rsv_ruimte_key,
|
|
'' opstelling,
|
|
NULL capaciteit,
|
|
rrr.alg_ruimte_key,
|
|
r.alg_ruimte_nr
|
|
FROM res_rsv_ruimte rrr, alg_ruimte r
|
|
WHERE rrr.alg_ruimte_key IS NOT NULL
|
|
AND r.alg_ruimte_key = rrr.alg_ruimte_key) r2a,
|
|
(SELECT rrd.res_rsv_ruimte_key
|
|
res_rsv_ruimte_key,
|
|
-rd.res_deel_key
|
|
product_key,
|
|
rd.res_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,
|
|
c.ins_discipline_key
|
|
ins_discipline_key,
|
|
c.ins_discipline_omschrijving
|
|
catalogus,
|
|
'object'
|
|
vtype,
|
|
rrd.res_rsv_deel_dirtlevel
|
|
dirtlevel,
|
|
rd.res_deel_vervaldatum
|
|
vervaldatum
|
|
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_key
|
|
product_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,
|
|
c.ins_discipline_key
|
|
ins_discipline_key,
|
|
c.ins_discipline_omschrijving
|
|
catalogus,
|
|
'consumable'
|
|
vtype,
|
|
rra.res_rsv_artikel_dirtlevel
|
|
dirtlevel,
|
|
ra.res_artikel_vervaldatum
|
|
vervaldatum
|
|
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
|
|
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_activiteit_key = ra.res_activiteit_key
|
|
AND ra.res_srtactiviteit_key = rsa.res_srtactiviteit_key
|
|
AND rrr.res_rsv_ruimte_host_key = p.prs_perslid_key
|
|
AND p.prs_afdeling_key = a.prs_afdeling_key
|
|
AND p.prs_afdeling_key = ab.prs_afdeling_key
|
|
AND ab.prs_afdeling_key1 = an.prs_afdeling_key
|
|
AND ( rrr.res_ruimte_opstel_key IS NOT NULL
|
|
OR voorz.res_rsv_ruimte_key IS NOT NULL)
|
|
AND rrr.res_rsv_ruimte_van >= TO_DATE ('01-01-2010', 'DD-MM-YYYY');
|
|
|
|
-- Bronview voor QRC-codes en melden storingen op objecten
|
|
CREATE OR REPLACE VIEW tayl_v_rap_qr_deel
|
|
AS
|
|
SELECT user
|
|
omgeving,
|
|
fac_bookmark_naam,
|
|
fac_bookmark_id,
|
|
b.fac_bookmark_path,
|
|
b.fac_bookmark_query,
|
|
d.ins_discipline_omschrijving,
|
|
d.ins_srtgroep_omschrijving,
|
|
d.ins_srtdeel_omschrijving,
|
|
d.ins_deel_omschrijving,
|
|
(SELECT km.ins_kenmerkdeel_waarde
|
|
FROM ins_kenmerkdeel km, ins_kenmerk k
|
|
WHERE km.ins_deel_key = d.ins_deel_key
|
|
AND km.ins_kenmerk_key = k.ins_kenmerk_key
|
|
AND k.ins_kenmerk_code = 'QRC_SERIENUMMER'
|
|
AND km.ins_kenmerkdeel_verwijder IS NULL)
|
|
qrc_serienummer,
|
|
CASE
|
|
WHEN (SELECT MAX (k.ins_kenmerk_key)
|
|
FROM ins_kenmerkdeel km, ins_kenmerk k
|
|
WHERE km.ins_deel_key = d.ins_deel_key
|
|
AND km.ins_kenmerk_key = k.ins_kenmerk_key
|
|
AND k.ins_kenmerk_code = 'QRC_BESTICKEREN'
|
|
AND km.ins_kenmerkdeel_verwijder IS NULL)
|
|
IS NOT NULL
|
|
THEN
|
|
flx.getdomeinwaarde (2,
|
|
flx.getflex (
|
|
'INS',
|
|
(SELECT MAX (k.ins_kenmerk_key)
|
|
FROM ins_kenmerkdeel km,
|
|
ins_kenmerk k
|
|
WHERE km.ins_deel_key =
|
|
d.ins_deel_key
|
|
AND km.ins_kenmerk_key =
|
|
k.ins_kenmerk_key
|
|
AND k.ins_kenmerk_code =
|
|
'QRC_BESTICKEREN'
|
|
AND km.ins_kenmerkdeel_verwijder
|
|
IS NULL),
|
|
d.ins_deel_key))
|
|
ELSE
|
|
'Nvt'
|
|
END
|
|
nog_bestickeren,
|
|
CASE
|
|
WHEN d.alg_locatie_key IS NOT NULL THEN 'Locatiegebonden'
|
|
WHEN d.prs_perslid_key IS NOT NULL THEN 'Persoonsgebonden'
|
|
ELSE 'Overig'
|
|
END
|
|
TYPE,
|
|
d.alg_locatie_key,
|
|
d.prs_perslid_key,
|
|
CASE
|
|
WHEN d.alg_locatie_key IS NOT NULL THEN d.alg_gebouw_naam
|
|
WHEN d.prs_perslid_key IS NOT NULL THEN d.prs_perslid_volnaam
|
|
ELSE ''
|
|
END
|
|
plaats,
|
|
d.alg_plaatsaanduiding,
|
|
d.ins_deel_aanmaak,
|
|
d.ins_deel_key
|
|
FROM fac_bookmark b, ins_v_deel_gegevens d
|
|
WHERE fac_bookmark_expire IS NULL
|
|
AND fac_bookmark_id = 'jUY0LZPaCv9u2n6n'
|
|
AND d.ins_discipline_key NOT IN (43, 81) -- Geen SYSTEMEN en WERKPLEKKEN
|
|
AND ( d.ins_deel_vervaldatum IS NULL
|
|
OR d.ins_deel_vervaldatum >= TRUNC (SYSDATE));
|
|
|
|
|
|
------ payload end ------
|
|
|
|
SET DEFINE OFF
|
|
BEGIN adm.systrackscriptId ('$Id$', 0); END;
|
|
/
|
|
|
|
COMMIT;
|
|
SET ECHO OFF
|
|
SPOOL OFF
|
|
SET DEFINE ON
|
|
PROMPT Logfile of this upgrade is: &fcltlogfile
|