nybu#56373: Actielijst campus | Planbord voor campuskamers

svn path=/Customer/trunk/; revision=48452
This commit is contained in:
Suzan Wiegerinck
2020-10-13 08:27:47 +00:00
parent cb29a90dae
commit 08731ebcb9

View File

@@ -41,6 +41,11 @@ AS
PROCEDURE upsertkenmerk_res (p_kenmerk_key IN NUMBER,
p_rsv_ruimte_key IN NUMBER,
p_waarde IN VARCHAR2);
PROCEDURE nybu_rap_planbord (user_key IN NUMBER,
p_datum_van IN VARCHAR2, -- Let wel: formaat '16-01-2006'
p_datum_tot IN VARCHAR2,
p_cursor OUT t_cursor);
END nybu;
/
@@ -298,6 +303,209 @@ AS
END IF;
END IF;
END;
PROCEDURE nybu_rap_planbord (user_key IN NUMBER,
p_datum_van IN VARCHAR2, -- Let wel: formaat '16-01-2006'
p_datum_tot IN VARCHAR2,
p_cursor OUT t_cursor)
AS
v_datum_van DATE;
v_datum_tot DATE;
BEGIN
v_datum_van := fac.safe_to_date (p_datum_van, 'dd-mm-yyyy');
v_datum_tot := fac.safe_to_date (p_datum_tot, 'dd-mm-yyyy');
OPEN p_cursor FOR
SELECT rg.alg_ruimte_nr
hide_f_sort,
rg.alg_gebouw_omschrijving
fclt_f_gebouw,
rg.alg_verdieping_code
fclt_f_verdieping,
rg.alg_ruimte_nr
fclt_x_kamer,
'<a class="details" onclick=''FcltMgr.openDetail("'
|| 'appl/ALG/alg_ruimte.asp?key='
|| rg.alg_ruimte_key
|| '")''>'
|| HTF.escape_sc (rg.alg_ruimte_nr)
|| '</a>'
html_kamer,
r.alg_ruimte_omschrijving,
rg.alg_srtruimte_omschrijving
fclt_f_type,
rg.alg_ruimte_bruto_vloeropp,
zijde.zijde,
vloerafw.vloerafwerking,
sloped_ceiling.fac_usrdata_omschr
sloped_ceiling,
vrij_sinds.vrij_sinds,
bezet_vanaf.bezet_vanaf,
fac.safe_to_date (ooo.alg_onrgoedkenmerk_waarde,
'DD-MM-YYYY')
out_of_order_tot,
max_prs.max_prs,
COUNT (contr.prs_perslid_key)
aant_act_huurders,
LISTAGG (contr.prs_afdeling_omschrijving, ', ')
WITHIN GROUP (ORDER BY prs_afdeling_key)
lichting,
SUM (contr.man)
aant_man,
SUM (contr.vrouw)
aant_vrouw,
max_prs.max_prs - COUNT (contr.prs_perslid_key)
aant_over
FROM alg_ruimte r,
alg_v_ruimte_gegevens_all rg,
alg_srtruimte sr,
(SELECT alg_onrgoed_key, ud.fac_usrdata_omschr zijde
FROM alg_onrgoedkenmerk ogk,
alg_kenmerk k,
fac_usrdata ud
WHERE ogk.alg_kenmerk_key = k.alg_kenmerk_key
AND alg_onrgoed_niveau = 'R'
AND k.alg_kenmerk_key = 1080
AND ud.fac_usrtab_key = 281
AND alg_onrgoedkenmerk_waarde = ud.fac_usrdata_key)
zijde,
(SELECT alg_onrgoed_key,
ud.fac_usrdata_omschr vloerafwerking
FROM alg_onrgoedkenmerk ogk,
alg_kenmerk k,
fac_usrdata ud
WHERE ogk.alg_kenmerk_key = k.alg_kenmerk_key
AND alg_onrgoed_niveau = 'R'
AND k.alg_kenmerk_key = 2
AND ud.fac_usrtab_key = 201
AND alg_onrgoedkenmerk_waarde = ud.fac_usrdata_key)
vloerafw,
(SELECT alg_onrgoed_key, alg_onrgoedkenmerk_waarde max_prs
FROM alg_onrgoedkenmerk ogk, alg_kenmerk k
WHERE ogk.alg_kenmerk_key = k.alg_kenmerk_key
AND alg_onrgoed_niveau = 'R'
AND k.alg_kenmerk_key = 1120) max_prs,
(SELECT *
FROM alg_onrgoedkenmerk
WHERE alg_kenmerk_key = 1100
AND alg_onrgoedkenmerk_verwijder IS NULL) ooo,
(SELECT contr.cnt_contract_key,
contr.cnt_contract_nr_versie,
contr.cnt_contract_status,
contr.cnt_contract_looptijd_van,
contr.cnt_contract_looptijd_tot,
contr.prs_perslid_key,
contr.alg_ruimte_key,
man.man,
vrouw.vrouw,
a.PRS_AFDELING_KEY,
a.prs_afdeling_omschrijving
FROM nybu_v_huurcnt_student_all contr,
prs_perslid p,
prs_afdeling a,
(SELECT prs_perslid_key, prs_perslid_geslacht man
FROM prs_perslid p
WHERE prs_perslid_geslacht = 1) man,
(SELECT prs_perslid_key,
DECODE (prs_perslid_geslacht, 0, 1, 0) vrouw
FROM prs_perslid p
WHERE prs_perslid_geslacht = 0) vrouw
WHERE contr.prs_perslid_key = man.prs_perslid_key(+)
AND contr.prs_perslid_key =
vrouw.prs_perslid_key(+)
AND contr.prs_perslid_key = p.prs_perslid_key
AND p.prs_afdeling_key = a.prs_afdeling_key
AND contr.cnt_contract_looptijd_van <= v_datum_tot
AND contr.cnt_contract_looptijd_tot >= v_datum_van)
contr,
(SELECT ok.*, fac_usrdata_omschr
FROM alg_onrgoedkenmerk ok,
alg_kenmerk km,
fac_usrdata ud
WHERE km.alg_kenmerk_key = 1020
AND ok.alg_kenmerk_key = km.alg_kenmerk_key
AND fac_usrdata_key = alg_onrgoedkenmerk_waarde
AND alg_onrgoedkenmerk_verwijder IS NULL)
sloped_ceiling,
( SELECT MAX (cnt_contract_looptijd_tot) vrij_sinds,
r.alg_ruimte_key
FROM cnt_contract c,
cnt_kenmerkcontract kc,
alg_ruimte r
WHERE c.ins_discipline_key = 55
AND c.cnt_contract_looptijd_tot < v_datum_van
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 1
AND fac.safe_to_number (
kc.cnt_kenmerkcontract_waarde) =
r.alg_ruimte_key
AND NOT EXISTS
(SELECT 1
FROM cnt_contract c,
cnt_kenmerkcontract kc
WHERE c.ins_discipline_key = 55
AND c.cnt_contract_looptijd_tot >=
v_datum_van
AND c.cnt_contract_looptijd_van <=
v_datum_tot
AND kc.cnt_contract_key =
c.cnt_contract_key
AND kc.cnt_kenmerk_key = 1
AND c.cnt_contract_verwijder
IS NULL
AND fac.safe_to_number (
kc.cnt_kenmerkcontract_waarde) =
r.alg_ruimte_key)
GROUP BY r.alg_ruimte_key) vrij_sinds,
( SELECT MIN (cnt_contract_looptijd_van) bezet_vanaf,
r.alg_ruimte_key
FROM cnt_contract c,
cnt_kenmerkcontract kc,
alg_ruimte r
WHERE c.ins_discipline_key = 55
AND c.cnt_contract_looptijd_van <= v_datum_tot
AND kc.cnt_contract_key = c.cnt_contract_key
AND kc.cnt_kenmerk_key = 1
AND fac.safe_to_number (
kc.cnt_kenmerkcontract_waarde) =
r.alg_ruimte_key
GROUP BY r.alg_ruimte_key) bezet_vanaf
WHERE r.alg_srtruimte_key = sr.alg_srtruimte_key(+)
AND r.alg_ruimte_key = max_prs.alg_onrgoed_key(+)
AND r.alg_ruimte_key = zijde.alg_onrgoed_key(+)
AND r.alg_ruimte_key = vloerafw.alg_onrgoed_key(+)
AND r.alg_ruimte_key = sloped_ceiling.alg_onrgoed_key(+)
AND r.alg_ruimte_key = ooo.alg_onrgoed_key(+)
AND r.alg_ruimte_key = vrij_sinds.alg_ruimte_key(+)
AND r.alg_ruimte_key = bezet_vanaf.alg_ruimte_key(+)
AND r.alg_ruimte_key = rg.alg_ruimte_key
AND r.alg_ruimte_key = contr.alg_ruimte_key(+)
AND sr.prs_verhuurbaar = '1'
AND sr.alg_srtruimte_upper LIKE 'TYPE%'
GROUP BY rg.alg_ruimte_nr,
rg.alg_gebouw_omschrijving,
rg.alg_verdieping_code,
rg.alg_ruimte_nr,
'<a class="details" onclick=''FcltMgr.openDetail("'
|| 'appl/ALG/alg_ruimte.asp?key='
|| rg.alg_ruimte_key
|| '")''>'
|| HTF.escape_sc (rg.alg_ruimte_nr)
|| '</a>',
r.alg_ruimte_omschrijving,
rg.alg_srtruimte_omschrijving,
rg.alg_ruimte_bruto_vloeropp,
zijde.zijde,
vloerafw.vloerafwerking,
sloped_ceiling.fac_usrdata_omschr,
vrij_sinds.vrij_sinds,
bezet_vanaf.bezet_vanaf,
fac.safe_to_date (ooo.alg_onrgoedkenmerk_waarde,
'DD-MM-YYYY'),
max_prs.max_prs
ORDER BY rg.alg_gebouw_omschrijving, rg.alg_ruimte_nr;
END;
END nybu;
/