BLST#76765 Aanpassing rapportage gemaakt vanuit BLST#75595
svn path=/Customer/trunk/; revision=60565
This commit is contained in:
247
BLST/BLST.sql
247
BLST/BLST.sql
@@ -9322,116 +9322,143 @@ AS
|
||||
--- BLST#75595 Rapport met afdelingen, gebouwen en reserveerbare ruimten
|
||||
CREATE OR REPLACE VIEW BLST_V_RAP_RECHT_RSVRUIMTE
|
||||
AS
|
||||
SELECT DISTINCT prs.prs_afdeling_naam afdeling_code,
|
||||
prs.prs_afdeling_omschrijving afdeling_omschrijving,
|
||||
r.alg_locatie_code locatie_code,
|
||||
r.alg_locatie_omschrijving locatie_omschrijving,
|
||||
r.alg_gebouw_code gebouw_code,
|
||||
r.alg_gebouw_naam gebouw_naam,
|
||||
r.ins_discipline_omschrijving catalogus,
|
||||
r.res_ruimte_nr res_ruimte_naam,
|
||||
opst.opstelling opstelling
|
||||
FROM --- personen die een werkplek hebben in dit gebouw
|
||||
(SELECT a.prs_afdeling_naam,
|
||||
a.prs_afdeling_omschrijving,
|
||||
p.prs_perslid_key,
|
||||
g.alg_gebouw_key
|
||||
FROM fac_usrtab ut,
|
||||
fac_usrdata ud,
|
||||
prs_afdeling a,
|
||||
prs_perslid p,
|
||||
prs_v_perslid_fullnames pn,
|
||||
alg_gebouw g
|
||||
WHERE ( UPPER (fac_usrtab_naam) = 'WERKPLEKKEN BD'
|
||||
OR UPPER (fac_usrtab_naam) = 'WERKPLEKKEN EXT')
|
||||
AND ud.fac_usrtab_key = ut.fac_usrtab_key
|
||||
AND ( ud.fac_usrdata_vervaldatum IS NULL
|
||||
OR ud.fac_usrdata_vervaldatum > SYSDATE)
|
||||
AND ud.fac_usrdata_verwijder IS NULL
|
||||
AND ud.fac_usrdata_omschr = a.prs_afdeling_naam
|
||||
AND p.prs_afdeling_key = a.prs_afdeling_key
|
||||
AND pn.prs_perslid_key = p.prs_perslid_key
|
||||
AND fac.safe_to_number (g.alg_gebouw_code) =
|
||||
fac.safe_to_number (ud.fac_usrdata_prijs)) prs,
|
||||
--- gebouwen met res ruimten
|
||||
(SELECT l.alg_locatie_code,
|
||||
l.alg_locatie_omschrijving,
|
||||
g.alg_gebouw_code,
|
||||
g.alg_gebouw_naam,
|
||||
g.alg_gebouw_key,
|
||||
v.alg_verdieping_code,
|
||||
r.alg_ruimte_nr,
|
||||
r.alg_ruimte_omschrijving,
|
||||
rr.res_ruimte_key,
|
||||
rr.res_ruimte_nr,
|
||||
cat.ins_discipline_key,
|
||||
cat.ins_discipline_omschrijving
|
||||
FROM alg_locatie l,
|
||||
alg_gebouw g,
|
||||
alg_verdieping v,
|
||||
alg_ruimte r,
|
||||
res_alg_ruimte ra,
|
||||
res_ruimte rr,
|
||||
ins_tab_discipline cat
|
||||
WHERE l.alg_locatie_key = g.alg_locatie_key
|
||||
AND v.alg_gebouw_key = g.alg_gebouw_key
|
||||
AND r.alg_verdieping_key = v.alg_verdieping_key
|
||||
AND r.alg_ruimte_verwijder IS NULL
|
||||
AND r.alg_ruimte_key = ra.alg_ruimte_key
|
||||
AND ra.res_alg_ruimte_verwijder IS NULL
|
||||
AND ra.res_ruimte_key = rr.res_ruimte_key
|
||||
AND rr.res_ruimte_verwijder IS NULL
|
||||
AND cat.ins_discipline_key = rr.res_discipline_key
|
||||
AND cat.ins_discipline_verwijder IS NULL) r,
|
||||
--- opstellingen
|
||||
( SELECT ro.res_ruimte_key,
|
||||
LISTAGG (
|
||||
o.res_opstelling_omschrijving
|
||||
|| ' ('
|
||||
|| ro.res_ruimte_opstel_bezoekers
|
||||
|| ' bezoekers)',
|
||||
' / ') --- scheidingsteken een komma
|
||||
WITHIN GROUP (ORDER BY o.res_opstelling_omschrijving) opstelling
|
||||
FROM res_ruimte_opstelling ro, res_opstelling o
|
||||
WHERE ro.res_opstelling_key = o.res_opstelling_key
|
||||
AND ro.res_ruimte_opstel_verwijder IS NULL
|
||||
AND o.res_opstelling_verwijder IS NULL
|
||||
GROUP BY ro.res_ruimte_key) opst
|
||||
WHERE r.alg_gebouw_key = prs.alg_gebouw_key
|
||||
AND opst.res_ruimte_key = r.res_ruimte_key
|
||||
AND EXISTS
|
||||
(SELECT g.fac_groep_omschrijving,
|
||||
c.ins_discipline_key,
|
||||
pf.prs_perslid_naam_friendly,
|
||||
pf.prs_perslid_naam_full
|
||||
FROM fac_groep g,
|
||||
fac_groeprechten gr,
|
||||
fac_gebruikersgroep gg,
|
||||
prs_perslid p,
|
||||
prs_v_perslid_fullnames pf,
|
||||
fac_functie f,
|
||||
ins_tab_discipline c
|
||||
WHERE c.ins_discipline_key = r.ins_discipline_key
|
||||
AND p.prs_perslid_key = prs.prs_perslid_key
|
||||
AND g.fac_groep_key = gr.fac_groep_key
|
||||
AND UPPER (
|
||||
fac.getscopeleveltext (
|
||||
gr.fac_gebruiker_alg_level_write,
|
||||
'ALG')) NOT IN
|
||||
('GEEN')
|
||||
AND gg.fac_groep_key = g.fac_groep_key
|
||||
AND p.prs_perslid_key = gg.prs_perslid_key
|
||||
AND pf.prs_perslid_key = p.prs_perslid_key
|
||||
AND f.fac_functie_key = gr.fac_functie_key
|
||||
AND f.fac_functie_discipline = 1
|
||||
AND f.fac_functie_code = 'WEB_RESUSE'
|
||||
AND gr.ins_discipline_key = c.ins_discipline_key
|
||||
AND c.ins_discipline_verwijder IS NULL
|
||||
AND c.ins_discipline_module = 'RES'
|
||||
AND c.ins_discipline_min_level IN (1,
|
||||
2,
|
||||
3,
|
||||
4));
|
||||
SELECT DISTINCT prs.prs_afdeling_naam afdeling_code_prs,
|
||||
prs.prs_afdeling_omschrijving afdeling_omschrijving_prs,
|
||||
prs.bu_code businessunit_code,
|
||||
prs.bu_omschrijving businessunit_omschrijving,
|
||||
prs.afd_code afdeling_code,
|
||||
prs.afd_omschrijving afdeling_omschrijving,
|
||||
r.alg_locatie_code locatie_code,
|
||||
r.alg_locatie_omschrijving locatie_omschrijving,
|
||||
r.alg_gebouw_code gebouw_code,
|
||||
r.alg_gebouw_naam gebouw_naam,
|
||||
r.ins_discipline_omschrijving catalogus,
|
||||
r.res_ruimte_nr res_ruimte_naam,
|
||||
opst.opstelling opstelling
|
||||
FROM --- personen die een werkplek hebben in dit gebouw
|
||||
(SELECT a.prs_afdeling_naam,
|
||||
a.prs_afdeling_omschrijving,
|
||||
a.bu_code,
|
||||
a.bu_omschrijving,
|
||||
a.afd_code,
|
||||
a.afd_omschrijving,
|
||||
p.prs_perslid_key,
|
||||
g.alg_gebouw_key,
|
||||
l.alg_locatie_key
|
||||
FROM fac_usrtab ut,
|
||||
fac_usrdata ud,
|
||||
(SELECT a.prs_afdeling_key,
|
||||
a.prs_afdeling_naam,
|
||||
a.prs_afdeling_omschrijving,
|
||||
ab.prs_afdeling_key1 bu_key,
|
||||
a1.prs_afdeling_naam bu_code,
|
||||
a1.prs_afdeling_omschrijving bu_omschrijving,
|
||||
ab.prs_afdeling_key2 afd_key,
|
||||
a2.prs_afdeling_naam afd_code,
|
||||
a2.prs_afdeling_omschrijving afd_omschrijving
|
||||
FROM prs_v_afdeling_boom ab,
|
||||
prs_afdeling a,
|
||||
prs_afdeling a1,
|
||||
prs_afdeling a2
|
||||
WHERE ab.prs_afdeling_key = a.prs_afdeling_key
|
||||
AND ab.prs_afdeling_key1 = a1.prs_afdeling_key(+)
|
||||
AND ab.prs_afdeling_key2 = a2.prs_afdeling_key(+)) a,
|
||||
prs_perslid p,
|
||||
prs_v_perslid_fullnames pn,
|
||||
alg_gebouw g,
|
||||
alg_locatie l
|
||||
WHERE ( UPPER (fac_usrtab_naam) = 'WERKPLEKKEN BD'
|
||||
OR UPPER (fac_usrtab_naam) = 'WERKPLEKKEN EXT')
|
||||
AND ud.fac_usrtab_key = ut.fac_usrtab_key
|
||||
AND ( ud.fac_usrdata_vervaldatum IS NULL
|
||||
OR ud.fac_usrdata_vervaldatum > SYSDATE)
|
||||
AND ud.fac_usrdata_verwijder IS NULL
|
||||
AND ud.fac_usrdata_omschr = a.prs_afdeling_naam
|
||||
AND p.prs_afdeling_key = a.prs_afdeling_key
|
||||
AND l.alg_locatie_key = g.alg_locatie_key
|
||||
AND pn.prs_perslid_key = p.prs_perslid_key
|
||||
AND fac.safe_to_number (g.alg_gebouw_code) =
|
||||
fac.safe_to_number (ud.fac_usrdata_prijs)) prs,
|
||||
--- gebouwen met res ruimten
|
||||
(SELECT l.alg_locatie_key,
|
||||
l.alg_locatie_code,
|
||||
l.alg_locatie_omschrijving,
|
||||
g.alg_gebouw_code,
|
||||
g.alg_gebouw_naam,
|
||||
g.alg_gebouw_key,
|
||||
v.alg_verdieping_code,
|
||||
r.alg_ruimte_nr,
|
||||
r.alg_ruimte_omschrijving,
|
||||
rr.res_ruimte_key,
|
||||
rr.res_ruimte_nr,
|
||||
cat.ins_discipline_key,
|
||||
cat.ins_discipline_omschrijving
|
||||
FROM alg_locatie l,
|
||||
alg_gebouw g,
|
||||
alg_verdieping v,
|
||||
alg_ruimte r,
|
||||
res_alg_ruimte ra,
|
||||
res_ruimte rr,
|
||||
ins_tab_discipline cat
|
||||
WHERE l.alg_locatie_key = g.alg_locatie_key
|
||||
AND v.alg_gebouw_key = g.alg_gebouw_key
|
||||
AND r.alg_verdieping_key = v.alg_verdieping_key
|
||||
AND r.alg_ruimte_verwijder IS NULL
|
||||
AND r.alg_ruimte_key = ra.alg_ruimte_key
|
||||
AND ra.res_alg_ruimte_verwijder IS NULL
|
||||
AND ra.res_ruimte_key = rr.res_ruimte_key
|
||||
AND rr.res_ruimte_verwijder IS NULL
|
||||
AND cat.ins_discipline_key = rr.res_discipline_key
|
||||
AND cat.ins_discipline_verwijder IS NULL) r,
|
||||
--- opstellingen
|
||||
( SELECT ro.res_ruimte_key,
|
||||
LISTAGG (
|
||||
o.res_opstelling_omschrijving
|
||||
|| ' ('
|
||||
|| ro.res_ruimte_opstel_bezoekers
|
||||
|| ' bezoekers)',
|
||||
' / ') --- scheidingsteken een komma
|
||||
WITHIN GROUP (ORDER BY o.res_opstelling_omschrijving) opstelling
|
||||
FROM res_ruimte_opstelling ro, res_opstelling o
|
||||
WHERE ro.res_opstelling_key = o.res_opstelling_key
|
||||
AND ro.res_ruimte_opstel_verwijder IS NULL
|
||||
AND o.res_opstelling_verwijder IS NULL
|
||||
GROUP BY ro.res_ruimte_key) opst
|
||||
WHERE r.alg_locatie_key = prs.alg_locatie_key
|
||||
AND opst.res_ruimte_key = r.res_ruimte_key
|
||||
AND EXISTS
|
||||
(SELECT g.fac_groep_omschrijving,
|
||||
c.ins_discipline_key,
|
||||
pf.prs_perslid_naam_friendly,
|
||||
pf.prs_perslid_naam_full
|
||||
FROM fac_groep g,
|
||||
fac_groeprechten gr,
|
||||
fac_gebruikersgroep gg,
|
||||
prs_perslid p,
|
||||
prs_v_perslid_fullnames pf,
|
||||
fac_functie f,
|
||||
ins_tab_discipline c
|
||||
WHERE c.ins_discipline_key = r.ins_discipline_key
|
||||
AND p.prs_perslid_key = prs.prs_perslid_key
|
||||
AND g.fac_groep_key = gr.fac_groep_key
|
||||
AND UPPER (
|
||||
fac.getscopeleveltext (
|
||||
gr.fac_gebruiker_alg_level_write,
|
||||
'ALG')) NOT IN
|
||||
('GEEN')
|
||||
AND gg.fac_groep_key = g.fac_groep_key
|
||||
AND p.prs_perslid_key = gg.prs_perslid_key
|
||||
AND pf.prs_perslid_key = p.prs_perslid_key
|
||||
AND f.fac_functie_key = gr.fac_functie_key
|
||||
AND f.fac_functie_discipline = 1
|
||||
AND f.fac_functie_code = 'WEB_RESUSE'
|
||||
AND gr.ins_discipline_key = c.ins_discipline_key
|
||||
AND c.ins_discipline_verwijder IS NULL
|
||||
AND c.ins_discipline_module = 'RES'
|
||||
AND c.ins_discipline_min_level IN (1,
|
||||
2,
|
||||
3,
|
||||
4));
|
||||
|
||||
CREATE OR REPLACE VIEW BLST_V_RAP_UITLEEN_OBJ
|
||||
(
|
||||
|
||||
Reference in New Issue
Block a user