RENK#24949 Reserveringsfacturen (voor derden)
svn path=/Customer/trunk/; revision=18895
This commit is contained in:
678
RENK/renk.sql
678
RENK/renk.sql
@@ -1864,475 +1864,72 @@ AS
|
||||
CREATE OR REPLACE PACKAGE RENK
|
||||
AS
|
||||
-- PACKAGES voor de RENK specifieke ondersteuning
|
||||
PROCEDURE freezereserveringen (p_prskey IN NUMBER, p_periode IN NUMBER);
|
||||
PROCEDURE freezereserveringen (p_groepering IN VARCHAR2);
|
||||
END;
|
||||
/
|
||||
|
||||
/* Formatted on 5-6-2013 15:30:45 (QP5 v5.115.810.9015) */
|
||||
/* Formatted on 20-8-2013 13:22:02 (QP5 v5.115.810.9015) */
|
||||
CREATE OR REPLACE PACKAGE BODY RENK
|
||||
AS
|
||||
PROCEDURE freezereserveringen (p_prskey IN NUMBER, p_periode IN NUMBER)
|
||||
PROCEDURE freezereserveringen (p_groepering IN VARCHAR2,
|
||||
p_kenmerk IN VARCHAR2)
|
||||
AS
|
||||
-- Volgende cursors lopen over reserveringen (door personen van bedrijf
|
||||
-- waartoe ook 'p_prskey' behoort) die in de voorgaande maand hebben
|
||||
-- plaatsgevonden en nog niet zijn gefactuureerd; betreffende ruimte- <20>n
|
||||
-- roomservice-reserveringen worden Administratief Verwerkt (AV)!
|
||||
-- Tevens wordt aan al deze reserveringen het factuurnummer gekoppeld.
|
||||
-- Volgende cursors lopen over boekingen door de huurder geidentificeerd
|
||||
-- door 'p_groepering' in de lopende jaarhelft hebben plaatsgevonden (of
|
||||
-- nog moeten plaatsvinden) en nog niet zijn gefactuureerd; betreffende
|
||||
-- ruimte-reservering worden NIET Administratief Verwerkt!
|
||||
-- Ook wordt aan deze reserveringen een (nieuw) Docman-kenmerk gekoppeld.
|
||||
CURSOR cobj
|
||||
IS
|
||||
SELECT x.periode,
|
||||
x.res_rsv_ruimte_key,
|
||||
x.res_reservering_key,
|
||||
x.res_rsv_ruimte_volgnr,
|
||||
x.res_rsv_deel_key,
|
||||
x.res_status_bo_key
|
||||
FROM (SELECT rr.res_rsv_ruimte_key,
|
||||
rr.res_reservering_key,
|
||||
rr.res_rsv_ruimte_volgnr,
|
||||
DECODE (
|
||||
TO_CHAR (rr.res_rsv_ruimte_tot, 'yyyymm'),
|
||||
TO_CHAR (SYSDATE, 'yyyymm'),
|
||||
0,
|
||||
1
|
||||
)
|
||||
periode,
|
||||
rd.res_rsv_deel_key,
|
||||
rd.res_status_bo_key,
|
||||
rr.res_rsv_ruimte_contact_key,
|
||||
TRIM (bedr.prs_kenmerklink_waarde) bedrijf
|
||||
FROM res_v_aanwezigrsv_ruimte rr,
|
||||
res_v_aanwezigrsv_deel rd,
|
||||
prs_perslid p,
|
||||
(SELECT *
|
||||
FROM prs_v_aanwezigkenmerklink
|
||||
WHERE prs_kenmerk_key = 1000) bedr
|
||||
WHERE rr.res_status_fo_key IN (1, 2)
|
||||
AND COALESCE (rr.res_status_bo_key, 2) != 6 -- Nog niet AV
|
||||
AND rr.res_rsv_ruimte_dirtlevel = 0
|
||||
AND rr.res_rsv_ruimte_key =
|
||||
rd.res_rsv_ruimte_key
|
||||
AND rd.res_status_bo_key != 6 -- Nog niet AV
|
||||
AND rd.res_rsv_deel_dirtlevel = 0
|
||||
AND rd.res_rsv_ruimte_key IS NOT NULL -- Geen parkeerplaatsen
|
||||
AND rr.res_rsv_ruimte_contact_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden
|
||||
--AND TRUNC (rr.res_rsv_ruimte_tot) <
|
||||
-- TO_DATE (
|
||||
-- '01' || TO_CHAR (SYSDATE, 'mmyyyy'),
|
||||
-- 'ddmmyyyy'
|
||||
-- )
|
||||
AND rr.res_rsv_ruimte_tot < SYSDATE + (1 / 24)
|
||||
AND rr.res_rsv_ruimte_contact_key =
|
||||
bedr.prs_link_key(+)) x
|
||||
LEFT JOIN
|
||||
(SELECT c.bedrijf,
|
||||
COALESCE (mc.prs_link_key, c.prs_link_key)
|
||||
prs_link_key
|
||||
FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde))
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key)
|
||||
prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN
|
||||
(21, 22) -- Leden/Niet leden
|
||||
GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde)))
|
||||
c
|
||||
LEFT JOIN
|
||||
( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde))
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key)
|
||||
prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN
|
||||
(21, 22) -- Leden/Niet leden
|
||||
AND p.prs_srtperslid_key = 482
|
||||
GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde)))
|
||||
mc
|
||||
ON c.bedrijf = mc.bedrijf) y
|
||||
ON UPPER (x.bedrijf) = y.bedrijf
|
||||
WHERE COALESCE (y.prs_link_key, x.res_rsv_ruimte_contact_key) =
|
||||
p_prskey
|
||||
AND x.periode = p_periode;
|
||||
SELECT v.resid,
|
||||
rr.res_rsv_ruimte_key,
|
||||
rr.res_reservering_key,
|
||||
rr.res_rsv_ruimte_volgnr,
|
||||
rd.res_rsv_deel_key
|
||||
FROM renk_v_verhuurregels_alle v,
|
||||
res_v_aanwezigrsv_ruimte rr,
|
||||
res_v_aanwezigrsv_deel rd
|
||||
WHERE v.groepering = p_groepering
|
||||
AND v.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
||||
AND rr.res_rsv_ruimte_key = rd.res_rsv_ruimte_key;
|
||||
|
||||
CURSOR cart
|
||||
IS
|
||||
SELECT x.periode,
|
||||
x.res_rsv_ruimte_key,
|
||||
x.res_reservering_key,
|
||||
x.res_rsv_ruimte_volgnr,
|
||||
x.res_rsv_artikel_key,
|
||||
x.res_artikel_key,
|
||||
x.res_status_bo_key,
|
||||
x.res_artikel_prijs_vast
|
||||
FROM (SELECT rr.res_rsv_ruimte_key,
|
||||
rr.res_reservering_key,
|
||||
rr.res_rsv_ruimte_volgnr,
|
||||
DECODE (
|
||||
TO_CHAR (rr.res_rsv_ruimte_tot, 'yyyymm'),
|
||||
TO_CHAR (SYSDATE, 'yyyymm'),
|
||||
0,
|
||||
1
|
||||
)
|
||||
periode,
|
||||
ra.res_rsv_artikel_key,
|
||||
ra.res_artikel_key,
|
||||
ra.res_status_bo_key,
|
||||
a.res_artikel_prijs_vast,
|
||||
rr.res_rsv_ruimte_contact_key,
|
||||
TRIM (bedr.prs_kenmerklink_waarde) bedrijf
|
||||
FROM res_v_aanwezigrsv_ruimte rr,
|
||||
res_v_aanwezigrsv_artikel ra,
|
||||
res_artikel a,
|
||||
prs_perslid p,
|
||||
(SELECT *
|
||||
FROM prs_v_aanwezigkenmerklink
|
||||
WHERE prs_kenmerk_key = 1000) bedr
|
||||
WHERE rr.res_status_fo_key IN (1, 2)
|
||||
AND COALESCE (rr.res_status_bo_key, 2) != 6 -- Nog niet AV
|
||||
AND rr.res_rsv_ruimte_dirtlevel = 0
|
||||
AND rr.res_rsv_ruimte_key =
|
||||
ra.res_rsv_ruimte_key
|
||||
AND ra.res_artikel_key = a.res_artikel_key
|
||||
AND ra.res_status_bo_key != 6 -- Nog niet AV
|
||||
AND ra.res_rsv_artikel_dirtlevel = 0
|
||||
AND rr.res_rsv_ruimte_contact_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden
|
||||
--AND TRUNC (rr.res_rsv_ruimte_tot) <
|
||||
-- TO_DATE (
|
||||
-- '01' || TO_CHAR (SYSDATE, 'mmyyyy'),
|
||||
-- 'ddmmyyyy'
|
||||
-- )
|
||||
AND rr.res_rsv_ruimte_tot < SYSDATE + (1 / 24)
|
||||
AND rr.res_rsv_ruimte_contact_key =
|
||||
bedr.prs_link_key(+)) x
|
||||
LEFT JOIN
|
||||
(SELECT c.bedrijf,
|
||||
COALESCE (mc.prs_link_key, c.prs_link_key)
|
||||
prs_link_key
|
||||
FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde))
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key)
|
||||
prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN
|
||||
(21, 22) -- Leden/Niet leden
|
||||
GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde)))
|
||||
c
|
||||
LEFT JOIN
|
||||
( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde))
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key)
|
||||
prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN
|
||||
(21, 22) -- Leden/Niet leden
|
||||
AND p.prs_srtperslid_key = 482
|
||||
GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde)))
|
||||
mc
|
||||
ON c.bedrijf = mc.bedrijf) y
|
||||
ON UPPER (x.bedrijf) = y.bedrijf
|
||||
WHERE COALESCE (y.prs_link_key, x.res_rsv_ruimte_contact_key) =
|
||||
p_prskey
|
||||
AND x.periode = p_periode;
|
||||
SELECT v.resid,
|
||||
rr.res_rsv_ruimte_key,
|
||||
rr.res_reservering_key,
|
||||
rr.res_rsv_ruimte_volgnr,
|
||||
ra.res_rsv_artikel_key
|
||||
FROM renk_v_verhuurregels_alle v,
|
||||
res_v_aanwezigrsv_ruimte rr,
|
||||
res_v_aanwezigrsv_artikel ra
|
||||
WHERE v.groepering = p_groepering
|
||||
AND v.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
||||
AND rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key;
|
||||
|
||||
CURSOR crui
|
||||
IS
|
||||
SELECT x.periode,
|
||||
x.res_rsv_ruimte_key,
|
||||
x.res_reservering_key,
|
||||
x.res_rsv_ruimte_volgnr,
|
||||
x.res_status_bo_key,
|
||||
x.old_prijs,
|
||||
x.new_prijs
|
||||
FROM (SELECT rr.res_rsv_ruimte_key,
|
||||
rr.res_reservering_key,
|
||||
rr.res_rsv_ruimte_volgnr,
|
||||
DECODE (
|
||||
TO_CHAR (rr.res_rsv_ruimte_tot, 'yyyymm'),
|
||||
TO_CHAR (SYSDATE, 'yyyymm'),
|
||||
0,
|
||||
1
|
||||
)
|
||||
periode,
|
||||
rr.res_status_bo_key,
|
||||
COALESCE (rr.res_rsv_ruimte_prijs, 0)
|
||||
old_prijs,
|
||||
DECODE (
|
||||
SIGN( ( (rr.res_rsv_ruimte_tot
|
||||
- rr.res_rsv_ruimte_van)
|
||||
* 24)
|
||||
- 8),
|
||||
-1,
|
||||
DECODE (
|
||||
SIGN( ( (rr.res_rsv_ruimte_tot
|
||||
- rr.res_rsv_ruimte_van)
|
||||
* 24)
|
||||
- 4),
|
||||
-1,
|
||||
(rr.res_rsv_ruimte_tot
|
||||
- rr.res_rsv_ruimte_van)
|
||||
* 24
|
||||
* COALESCE (r.res_ruimte_prijs, 0),
|
||||
COALESCE (r.res_ruimte_prijs_ochtend, 0)
|
||||
+ ( ( (rr.res_rsv_ruimte_tot
|
||||
- rr.res_rsv_ruimte_van)
|
||||
* 24)
|
||||
- 4)
|
||||
* COALESCE (r.res_ruimte_prijs, 0)
|
||||
),
|
||||
COALESCE (r.res_ruimte_prijs_middag, 0)
|
||||
)
|
||||
new_prijs,
|
||||
rr.res_rsv_ruimte_contact_key,
|
||||
TRIM (bedr.prs_kenmerklink_waarde) bedrijf
|
||||
FROM res_v_aanwezigrsv_ruimte rr,
|
||||
res_ruimte_opstelling ro,
|
||||
res_ruimte r,
|
||||
prs_perslid p,
|
||||
(SELECT *
|
||||
FROM prs_v_aanwezigkenmerklink
|
||||
WHERE prs_kenmerk_key = 1000) bedr
|
||||
WHERE rr.res_status_fo_key IN (1, 2)
|
||||
AND COALESCE (rr.res_status_bo_key, 2) != 6 -- Nog niet AV
|
||||
AND rr.res_rsv_ruimte_dirtlevel = 0
|
||||
AND rr.res_rsv_ruimte_ordernr IS NULL -- Nog geen factuur!
|
||||
AND rr.res_ruimte_opstel_key =
|
||||
ro.res_ruimte_opstel_key(+)
|
||||
AND ro.res_ruimte_key = r.res_ruimte_key(+)
|
||||
AND rr.res_rsv_ruimte_contact_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden
|
||||
--AND TRUNC (rr.res_rsv_ruimte_tot) <
|
||||
-- TO_DATE (
|
||||
-- '01' || TO_CHAR (SYSDATE, 'mmyyyy'),
|
||||
-- 'ddmmyyyy'
|
||||
-- )
|
||||
AND rr.res_rsv_ruimte_tot < SYSDATE + (1 / 24)
|
||||
AND rr.res_rsv_ruimte_contact_key =
|
||||
bedr.prs_link_key(+)) x
|
||||
LEFT JOIN
|
||||
(SELECT c.bedrijf,
|
||||
COALESCE (mc.prs_link_key, c.prs_link_key)
|
||||
prs_link_key
|
||||
FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde))
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key)
|
||||
prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN
|
||||
(21, 22) -- Leden/Niet leden
|
||||
GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde)))
|
||||
c
|
||||
LEFT JOIN
|
||||
( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde))
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key)
|
||||
prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN
|
||||
(21, 22) -- Leden/Niet leden
|
||||
AND p.prs_srtperslid_key = 482
|
||||
GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde)))
|
||||
mc
|
||||
ON c.bedrijf = mc.bedrijf) y
|
||||
ON UPPER (x.bedrijf) = y.bedrijf
|
||||
WHERE COALESCE (y.prs_link_key, x.res_rsv_ruimte_contact_key) =
|
||||
p_prskey
|
||||
AND x.periode = p_periode;
|
||||
SELECT v.resid,
|
||||
rr.res_rsv_ruimte_key,
|
||||
rr.res_reservering_key,
|
||||
rr.res_rsv_ruimte_volgnr
|
||||
FROM renk_v_verhuurregels_alle v, res_v_aanwezigrsv_ruimte rr
|
||||
WHERE v.groepering = p_groepering
|
||||
AND v.res_rsv_ruimte_key = rr.res_rsv_ruimte_key;
|
||||
|
||||
c_applname VARCHAR2 (50) := 'FREEZE_RES';
|
||||
v_errormsg VARCHAR2 (1000);
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_aanduiding VARCHAR2 (200) := '-';
|
||||
v_count NUMBER (10);
|
||||
v_count_upd NUMBER (10);
|
||||
v_factuurnr VARCHAR2 (20);
|
||||
v_prskey NUMBER (10);
|
||||
v_huurderlid VARCHAR2 (1) := 'N';
|
||||
v_factuurbedrag NUMBER (12, 2);
|
||||
v_prijs NUMBER (9, 2);
|
||||
c_applname VARCHAR2 (50) := 'FREEZE_RES';
|
||||
v_errormsg VARCHAR2 (1000);
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_aanduiding VARCHAR2 (200) := '-';
|
||||
v_count NUMBER (10);
|
||||
v_count_upd NUMBER (10);
|
||||
--v_factuurnr VARCHAR2 (20);
|
||||
--v_prskey NUMBER (10);
|
||||
--v_huurderlid VARCHAR2 (1) := 'N';
|
||||
--v_factuurbedrag NUMBER (12, 2);
|
||||
--v_prijs NUMBER (9, 2);
|
||||
BEGIN
|
||||
-- Beginnen met toevoegen Factuur/Debiteur-entry in Eigen tabel met
|
||||
-- key=82; als dat al niet kan, dan weten wij dat gelijk (nog zonder
|
||||
-- gevolgschade)!
|
||||
v_errormsg := 'Fout bij bepalen factuurnummer.';
|
||||
|
||||
SELECT fac_s_user01.NEXTVAL INTO v_count FROM DUAL;
|
||||
|
||||
v_factuurnr :=
|
||||
TO_CHAR (TRUNC (SYSDATE, 'MM') - 1, 'YYYY')
|
||||
|| SUBSTR ('0000' || TO_CHAR (v_count), -4);
|
||||
|
||||
v_errormsg := 'Fout bij bepalen debiteur.';
|
||||
|
||||
SELECT COALESCE (y.prs_link_key, x.prs_perslid_key)
|
||||
INTO v_prskey
|
||||
FROM (SELECT p.prs_perslid_key,
|
||||
TRIM (bedr.prs_kenmerklink_waarde) bedrijf
|
||||
FROM prs_perslid p,
|
||||
(SELECT *
|
||||
FROM prs_v_aanwezigkenmerklink
|
||||
WHERE prs_kenmerk_key = 1000) bedr
|
||||
WHERE p.prs_perslid_key = p_prskey
|
||||
AND p.prs_perslid_key = bedr.prs_link_key(+)) x
|
||||
LEFT JOIN
|
||||
(SELECT c.bedrijf,
|
||||
COALESCE (mc.prs_link_key, c.prs_link_key)
|
||||
prs_link_key
|
||||
FROM ( SELECT UPPER (
|
||||
TRIM (kl.prs_kenmerklink_waarde)
|
||||
)
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key) prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden
|
||||
GROUP BY UPPER(TRIM (
|
||||
kl.prs_kenmerklink_waarde
|
||||
))) c
|
||||
LEFT JOIN
|
||||
( SELECT UPPER (
|
||||
TRIM (kl.prs_kenmerklink_waarde)
|
||||
)
|
||||
bedrijf,
|
||||
MIN (kl.prs_link_key) prs_link_key
|
||||
FROM prs_v_aanwezigkenmerklink kl,
|
||||
prs_perslid p
|
||||
WHERE kl.prs_kenmerk_key = 1000
|
||||
AND kl.prs_link_key =
|
||||
p.prs_perslid_key
|
||||
AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden
|
||||
AND p.prs_srtperslid_key = 482
|
||||
GROUP BY UPPER(TRIM (
|
||||
kl.prs_kenmerklink_waarde
|
||||
))) mc
|
||||
ON c.bedrijf = mc.bedrijf) y
|
||||
ON UPPER (x.bedrijf) = y.bedrijf;
|
||||
|
||||
v_errormsg := 'Fout bij bepalen ruimtekorting.';
|
||||
|
||||
--SELECT COUNT ( * )
|
||||
-- INTO v_count
|
||||
-- FROM prs_v_aanwezigkenmerklink
|
||||
-- WHERE prs_link_key = v_prskey
|
||||
-- AND prs_kenmerk_key = 1023 -- Huurder
|
||||
-- AND prs_kenmerklink_waarde = '1';
|
||||
SELECT COUNT ( * )
|
||||
INTO v_count
|
||||
FROM renk_v_rap_res_actual
|
||||
WHERE hide_f_debnr = SUBSTR ('000000' || TO_CHAR (v_prskey), -6)
|
||||
AND hide_f_restype = '1S';
|
||||
|
||||
IF (v_count > 0)
|
||||
THEN
|
||||
v_huurderlid := 'H'; -- Factuur incl. ruimtekorting!
|
||||
END IF;
|
||||
|
||||
v_errormsg := 'Fout bij bepalen lidmaatschap.';
|
||||
|
||||
SELECT COUNT ( * )
|
||||
INTO v_count
|
||||
FROM renk_v_rap_res_actual
|
||||
WHERE hide_f_debnr = SUBSTR ('000000' || TO_CHAR (v_prskey), -6)
|
||||
AND hide_f_restype = '0L';
|
||||
|
||||
IF (v_count > 0)
|
||||
THEN
|
||||
--IF (v_huurderlid = 'H')
|
||||
--THEN
|
||||
-- v_huurderlid := 'X';
|
||||
--ELSE
|
||||
-- v_huurderlid := 'L';
|
||||
--END IF;
|
||||
v_huurderlid := 'L'; -- Factuur incl. lidmaatschap <20>n ruimtekorting!
|
||||
END IF;
|
||||
|
||||
v_errormsg := 'Fout bij toevoegen meta-factuur.';
|
||||
|
||||
INSERT INTO fac_usrdata (fac_usrtab_key,
|
||||
fac_usrdata_code,
|
||||
fac_usrdata_omschr,
|
||||
fac_usrdata_aanmaak,
|
||||
fac_usrdata_vervaldatum)
|
||||
VALUES (82,
|
||||
v_factuurnr,
|
||||
TO_CHAR (p_prskey) || v_huurderlid,
|
||||
TRUNC (SYSDATE),
|
||||
TRUNC (SYSDATE + 24));
|
||||
|
||||
COMMIT;
|
||||
|
||||
v_errormsg := 'Fout bij bepalen factuurbedrag.';
|
||||
|
||||
SELECT SUM (kosten + btwkosten)
|
||||
INTO v_factuurbedrag
|
||||
FROM renk_v_rap_res_actual
|
||||
WHERE hide_f_debnr = SUBSTR ('000000' || TO_CHAR (v_prskey), -6);
|
||||
|
||||
-- Toevoegen pseudo-transactie in renk_bankboek voor facturen met een
|
||||
-- negatief bedrag (te betalen door RENK aan klant).
|
||||
IF (v_factuurbedrag < 0)
|
||||
THEN
|
||||
v_errormsg := 'Fout bij toevoegen pseudo-tranactie.';
|
||||
|
||||
INSERT INTO renk_bankboek (regel_insert,
|
||||
afschriftnr,
|
||||
boekdat_oud,
|
||||
saldo_oud,
|
||||
valutadat,
|
||||
creditdebet,
|
||||
bedrag,
|
||||
transactietype,
|
||||
tegenrekening,
|
||||
omschrijving,
|
||||
boekdat_nieuw,
|
||||
saldo_nieuw)
|
||||
VALUES (SYSDATE,
|
||||
'Geen',
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
'-',
|
||||
v_factuurbedrag,
|
||||
NULL,
|
||||
NULL,
|
||||
'Pseudo-transactie tbv. factuur ' || v_factuurnr,
|
||||
TO_CHAR (SYSDATE, 'yymmdd'),
|
||||
NULL);
|
||||
|
||||
COMMIT;
|
||||
END IF;
|
||||
|
||||
v_count_upd := 0;
|
||||
|
||||
-- Bevriezen RES-objecten!
|
||||
@@ -2341,13 +1938,11 @@ AS
|
||||
BEGIN
|
||||
v_aanduiding :=
|
||||
'['
|
||||
|| rec.res_reservering_key
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_volgnr
|
||||
|| rec.resid
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_key
|
||||
|| '|'
|
||||
|| TO_CHAR (p_prskey)
|
||||
|| TO_CHAR (p_groepering)
|
||||
|| '] ';
|
||||
|
||||
-- Eerst maar eens afmelden (als dat nog niet is gedaan)!
|
||||
@@ -2358,29 +1953,31 @@ AS
|
||||
UPDATE res_rsv_deel
|
||||
SET res_status_bo_key = 5
|
||||
WHERE res_rsv_deel_key = rec.res_rsv_deel_key;
|
||||
|
||||
COMMIT;
|
||||
v_count_upd := v_count_upd + 1;
|
||||
END IF;
|
||||
|
||||
v_errormsg := 'Fout bij bepalen res_rsv_deel_prijs.';
|
||||
--v_errormsg := 'Fout bij bepalen res_rsv_deel_prijs.';
|
||||
|
||||
SELECT res.getdeelprijs (rec.res_rsv_deel_key)
|
||||
INTO v_prijs
|
||||
FROM DUAL;
|
||||
--SELECT res.getdeelprijs (rec.res_rsv_deel_key)
|
||||
-- INTO v_prijs
|
||||
-- FROM DUAL;
|
||||
|
||||
v_errormsg := 'Fout bij bijwerken res_rsv_deel_prijs.';
|
||||
--v_errormsg := 'Fout bij bijwerken res_rsv_deel_prijs.';
|
||||
|
||||
UPDATE res_rsv_deel
|
||||
SET res_rsv_deel_prijs = v_prijs
|
||||
WHERE res_rsv_deel_key = rec.res_rsv_deel_key;
|
||||
--UPDATE res_rsv_deel
|
||||
-- SET res_rsv_deel_prijs = v_prijs
|
||||
-- WHERE res_rsv_deel_key = rec.res_rsv_deel_key;
|
||||
|
||||
v_errormsg := 'Fout bij AV-en RES-object.';
|
||||
--v_errormsg := 'Fout bij AV-en RES-object.';
|
||||
|
||||
UPDATE res_rsv_deel
|
||||
SET res_status_bo_key = 6
|
||||
WHERE res_rsv_deel_key = rec.res_rsv_deel_key;
|
||||
--UPDATE res_rsv_deel
|
||||
-- SET res_status_bo_key = 6
|
||||
-- WHERE res_rsv_deel_key = rec.res_rsv_deel_key;
|
||||
|
||||
v_count_upd := v_count_upd + 1;
|
||||
|
||||
COMMIT;
|
||||
--COMMIT;
|
||||
--v_count_upd := v_count_upd + 1;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
@@ -2402,7 +1999,7 @@ AS
|
||||
|
||||
fac.writelog (c_applname,
|
||||
'S',
|
||||
'RES-object/#bevroren: ' || TO_CHAR (v_count_upd),
|
||||
'RES-object/#afgemeld: ' || TO_CHAR (v_count_upd),
|
||||
'');
|
||||
COMMIT;
|
||||
|
||||
@@ -2414,13 +2011,11 @@ AS
|
||||
BEGIN
|
||||
v_aanduiding :=
|
||||
'['
|
||||
|| rec.res_reservering_key
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_volgnr
|
||||
|| rec.resid
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_key
|
||||
|| '|'
|
||||
|| TO_CHAR (p_prskey)
|
||||
|| TO_CHAR (p_groepering)
|
||||
|| '] ';
|
||||
|
||||
-- Eerst maar eens afmelden (als dat nog niet is gedaan)!
|
||||
@@ -2432,39 +2027,41 @@ AS
|
||||
SET res_status_bo_key = 5
|
||||
WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
|
||||
IF (rec.res_artikel_prijs_vast = 1)
|
||||
THEN
|
||||
v_errormsg := 'Fout bij bepalen res_rsv_artikel_prijs.';
|
||||
|
||||
SELECT res.getartikelprijs (rec.res_rsv_artikel_key)
|
||||
INTO v_prijs
|
||||
FROM DUAL;
|
||||
|
||||
v_errormsg := 'Fout bij bijwerken res_rsv_artikel_prijs.';
|
||||
|
||||
UPDATE res_rsv_artikel
|
||||
SET res_rsv_artikel_prijs = v_prijs,
|
||||
res_rsv_artikel_inkoopprijs =
|
||||
(SELECT res_artikel_inkoopprijs
|
||||
FROM res_artikel
|
||||
WHERE res_artikel_key = rec.res_artikel_key),
|
||||
res_rsv_artikel_btw =
|
||||
(SELECT res_artikel_btw
|
||||
FROM res_artikel
|
||||
WHERE res_artikel_key = rec.res_artikel_key)
|
||||
WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
END IF;
|
||||
COMMIT;
|
||||
v_count_upd := v_count_upd + 1;
|
||||
END IF;
|
||||
|
||||
v_errormsg := 'Fout bij AV-en RES-artikel.';
|
||||
--IF (rec.res_artikel_prijs_vast = 1)
|
||||
--THEN
|
||||
-- v_errormsg := 'Fout bij bepalen res_rsv_artikel_prijs.';
|
||||
|
||||
UPDATE res_rsv_artikel
|
||||
SET res_status_bo_key = 6
|
||||
WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
-- SELECT res.getartikelprijs (rec.res_rsv_artikel_key)
|
||||
-- INTO v_prijs
|
||||
-- FROM DUAL;
|
||||
|
||||
v_count_upd := v_count_upd + 1;
|
||||
-- v_errormsg := 'Fout bij bijwerken res_rsv_artikel_prijs.';
|
||||
|
||||
COMMIT;
|
||||
-- UPDATE res_rsv_artikel
|
||||
-- SET res_rsv_artikel_prijs = v_prijs,
|
||||
-- res_rsv_artikel_inkoopprijs =
|
||||
-- (SELECT res_artikel_inkoopprijs
|
||||
-- FROM res_artikel
|
||||
-- WHERE res_artikel_key = rec.res_artikel_key),
|
||||
-- res_rsv_artikel_btw =
|
||||
-- (SELECT res_artikel_btw
|
||||
-- FROM res_artikel
|
||||
-- WHERE res_artikel_key = rec.res_artikel_key)
|
||||
-- WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
--END IF;
|
||||
|
||||
--v_errormsg := 'Fout bij AV-en RES-artikel.';
|
||||
|
||||
--UPDATE res_rsv_artikel
|
||||
-- SET res_status_bo_key = 6
|
||||
-- WHERE res_rsv_artikel_key = rec.res_rsv_artikel_key;
|
||||
|
||||
--COMMIT;
|
||||
--v_count_upd := v_count_upd + 1;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
@@ -2486,23 +2083,23 @@ AS
|
||||
|
||||
fac.writelog (c_applname,
|
||||
'S',
|
||||
'RES-artikel/#bevroren: ' || TO_CHAR (v_count_upd),
|
||||
'RES-artikel/#afgemeld: ' || TO_CHAR (v_count_upd),
|
||||
'');
|
||||
COMMIT;
|
||||
|
||||
v_count_upd := 0;
|
||||
|
||||
-- Eerst maar eens afmelden (als dat nog niet is gedaan)!
|
||||
FOR rec IN crui
|
||||
LOOP
|
||||
BEGIN
|
||||
v_aanduiding :=
|
||||
'['
|
||||
|| rec.res_reservering_key
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_volgnr
|
||||
|| rec.resid
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_key
|
||||
|| '|'
|
||||
|| TO_CHAR (p_prskey)
|
||||
|| TO_CHAR (p_groepering)
|
||||
|| '] ';
|
||||
|
||||
-- Niet voor reeds afgemelde reserveringen en "roomservice"!
|
||||
@@ -2521,6 +2118,7 @@ AS
|
||||
NULL);
|
||||
|
||||
COMMIT;
|
||||
v_count_upd := v_count_upd + 1;
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
@@ -2541,6 +2139,12 @@ AS
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
fac.writelog (c_applname,
|
||||
'S',
|
||||
'RES-ruimte/#afgemeld: ' || TO_CHAR (v_count_upd),
|
||||
'');
|
||||
COMMIT;
|
||||
|
||||
v_count_upd := 0;
|
||||
|
||||
FOR rec IN crui
|
||||
@@ -2548,49 +2152,47 @@ AS
|
||||
BEGIN
|
||||
v_aanduiding :=
|
||||
'['
|
||||
|| rec.res_reservering_key
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_volgnr
|
||||
|| rec.resid
|
||||
|| '|'
|
||||
|| rec.res_rsv_ruimte_key
|
||||
|| '|'
|
||||
|| TO_CHAR (p_prskey)
|
||||
|| '] ';
|
||||
|
||||
v_errormsg := 'Fout bij bijwerken factuurnummer.';
|
||||
v_errormsg := 'Fout bij bijwerken kenmerk.';
|
||||
|
||||
UPDATE res_rsv_ruimte
|
||||
SET res_rsv_ruimte_ordernr = v_factuurnr
|
||||
SET res_rsv_ruimte_ordernr =
|
||||
res_rsv_ruimte_ordernr || '+' || v_factuurnr
|
||||
WHERE res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
|
||||
-- Niet voor "roomservice"!
|
||||
IF (rec.res_status_bo_key = 5)
|
||||
THEN
|
||||
IF (rec.old_prijs <> rec.new_prijs)
|
||||
THEN
|
||||
v_errormsg := 'Fout bij bijwerken res_rsv_ruimte_prijs';
|
||||
--IF (rec.res_status_bo_key = 5)
|
||||
--THEN
|
||||
-- IF (rec.old_prijs <> rec.new_prijs)
|
||||
-- THEN
|
||||
-- v_errormsg := 'Fout bij bijwerken res_rsv_ruimte_prijs';
|
||||
|
||||
UPDATE res_rsv_ruimte rr
|
||||
SET rr.res_rsv_ruimte_prijs = rec.new_prijs
|
||||
WHERE rr.res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
END IF;
|
||||
-- UPDATE res_rsv_ruimte rr
|
||||
-- SET rr.res_rsv_ruimte_prijs = rec.new_prijs
|
||||
-- WHERE rr.res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
-- END IF;
|
||||
|
||||
v_errormsg := 'Fout bij AV-en RES-ruimte.';
|
||||
-- v_errormsg := 'Fout bij AV-en RES-ruimte.';
|
||||
|
||||
UPDATE res_rsv_ruimte
|
||||
SET res_status_bo_key = 6
|
||||
WHERE res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
-- UPDATE res_rsv_ruimte
|
||||
-- SET res_status_bo_key = 6
|
||||
-- WHERE res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
||||
|
||||
fac.trackaction ('RESVER',
|
||||
rec.res_rsv_ruimte_key,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL);
|
||||
END IF;
|
||||
|
||||
v_count_upd := v_count_upd + 1;
|
||||
-- fac.trackaction ('RESVER',
|
||||
-- rec.res_rsv_ruimte_key,
|
||||
-- NULL,
|
||||
-- NULL,
|
||||
-- NULL);
|
||||
--END IF;
|
||||
|
||||
COMMIT;
|
||||
v_count_upd := v_count_upd + 1;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
@@ -2612,7 +2214,7 @@ AS
|
||||
|
||||
fac.writelog (c_applname,
|
||||
'S',
|
||||
'RES-ruimte/#bevroren: ' || TO_CHAR (v_count_upd),
|
||||
'RES-ruimte/#bijgewerkt: ' || TO_CHAR (v_count_upd),
|
||||
'');
|
||||
COMMIT;
|
||||
EXCEPTION
|
||||
@@ -2650,6 +2252,7 @@ CREATE OR REPLACE VIEW renk_v_verhuurregels_alle
|
||||
postcode,
|
||||
plaats,
|
||||
factuurdatum,
|
||||
res_rsv_ruimte_key,
|
||||
resid,
|
||||
ordernr,
|
||||
sys_helft,
|
||||
@@ -2758,6 +2361,7 @@ AS
|
||||
' december ')
|
||||
|| TO_CHAR (SYSDATE, 'yyyy')
|
||||
factuurdatum,
|
||||
x.res_rsv_ruimte_key,
|
||||
x.res_key || '/' || x.res_vnr resid,
|
||||
x.res_rsv_ruimte_ordernr ordernr,
|
||||
x.sys_helft, -- 1e of 2e jaarhelft in formaat yyyyh(elft)!
|
||||
|
||||
Reference in New Issue
Block a user