NYBU#62190 In planbord totaal bezette stoelen

svn path=/Database/trunk/; revision=53861
This commit is contained in:
Alex Tiehuis
2021-11-25 15:05:11 +00:00
parent 8925ad4035
commit f2a782ea6c

View File

@@ -8037,7 +8037,7 @@ AS
createclosetag ('res_ruimte');
END;
PROCEDURE create_res_deel_node (p_key IN NUMBER)
PROCEDURE create_res_deel_node (p_key IN NUMBER, p_aantal IN NUMBER)
AS
v_key res_deel.res_deel_key%TYPE;
v_ins_deel_key res_deel.res_ins_deel_key%TYPE;
@@ -8094,7 +8094,12 @@ AS
createxmltagvalue ('key', p_key);
create_ins_discipline_node (v_discipline_key);
create_ins_deel_node (v_ins_deel_key, TRUE);
createxmltagvalue ('omschrijving', v_omschrijving);
IF v_bulkrsvbaar IS NOT NULL AND p_aantal IS NOT NULL
THEN
createxmltagvalue ('omschrijving', v_omschrijving || '(' || p_aantal || ')');
ELSE
createxmltagvalue ('omschrijving', v_omschrijving);
END IF;
createxmltagvalue ('eenheid', v_eenheid);
createxmltagvalue ('prijs', v_prijs);
createxmltagvalue ('prijsvast', v_prijs_vast);
@@ -8109,7 +8114,7 @@ AS
createclosetag ('res_deel');
END;
PROCEDURE create_res_rsv_deel_node (p_key IN NUMBER)
PROCEDURE create_res_rsv_deel_node (p_key IN NUMBER, p_aantal IN NUMBER)
AS
v_deel_key res_rsv_deel.res_deel_key%TYPE;
v_aantal res_rsv_deel.res_rsv_deel_aantal%TYPE;
@@ -8169,7 +8174,7 @@ AS
AND rd.res_rsv_deel_key = p_key;
createxmltagvalue ('key', p_key);
create_res_deel_node (v_deel_key);
create_res_deel_node (v_deel_key, p_aantal);
createxmltagvalue ('aantal', v_aantal);
createxmltagvalue ('status_bokey', v_status_bo_key);
createxmltagvalue ('status_bo', v_status_bo_omschr);
@@ -8447,10 +8452,41 @@ AS
CURSOR c2d
IS
SELECT rd.res_rsv_deel_key
FROM res_rsv_deel rd
WHERE rd.res_rsv_deel_verwijder IS NULL
AND rd.res_rsv_ruimte_key = p_key;
SELECT res_deel_omschrijving, res_rsv_deel_key, res_deel_bulkreserveerbaar, selected
FROM (
SELECT rd.res_deel_omschrijving, rrd.res_rsv_deel_key, res_deel_bulkreserveerbaar, 0 selected
FROM res_rsv_deel rrd, res_deel rd
WHERE rrd.res_rsv_deel_verwijder IS NULL
AND rrd.res_rsv_ruimte_key = p_key
AND rrd.res_deel_key = rd.res_deel_key
AND rd.res_deel_bulkreserveerbaar IS NULL
UNION ALL
SELECT res_deel_omschrijving, res_rsv_deel_key, res_deel_bulkreserveerbaar, selected
FROM
(
SELECT DISTINCT oms.res_deel_omschrijving,
oms.res_rsv_deel_key,
1 res_deel_bulkreserveerbaar,
COUNT (oms.res_deel_omschrijving) selected
FROM (SELECT DISTINCT
rx.res_deel_omschrijving, rrd.res_rsv_deel_key
FROM res_deel rx, res_rsv_deel rrd
WHERE rx.res_deel_bulkreserveerbaar IS NOT NULL
AND rx.res_deel_key IN (SELECT min(ry.res_deel_key)
FROM res_v_aanwezigdeel ry, res_rsv_deel rrdy
WHERE rx.res_deel_omschrijving = ry.res_deel_omschrijving
AND ry.res_deel_key = rrdy.res_deel_key
AND rrdy.res_rsv_ruimte_key = p_key)
AND rx.res_deel_key = rrd.res_deel_key
AND rrd.res_rsv_ruimte_key = p_key ) oms,
res_deel r1, res_rsv_deel rrd1
WHERE oms.res_deel_omschrijving = r1.res_deel_omschrijving
AND r1.res_deel_key = rrd1.res_deel_key
AND rrd1.res_rsv_ruimte_key = p_key
GROUP BY oms.res_deel_omschrijving,
oms.res_rsv_deel_key
)
);
CURSOR c2a
IS
@@ -8615,7 +8651,7 @@ AS
FOR rec2d IN c2d
LOOP
create_res_rsv_deel_node (rec2d.res_rsv_deel_key);
create_res_rsv_deel_node (rec2d.res_rsv_deel_key, rec2d.selected);
END LOOP;
FOR rec3 IN c3