AADO#31987 -- Toevoegen extra artikel aan catering reserveringen.
svn path=/Customer/trunk/; revision=24717
This commit is contained in:
@@ -246,6 +246,26 @@ CREATE OR REPLACE PROCEDURE aado_export_bundel_catering (
|
||||
p_filename IN VARCHAR2
|
||||
)
|
||||
AS
|
||||
CURSOR c IS
|
||||
SELECT rrr.res_rsv_ruimte_key,
|
||||
rrr.res_rsv_artikel_levering,
|
||||
a.res_rsv_artikel_aantal,
|
||||
a.res_rsv_artikel_key,
|
||||
a.res_status_bo_key
|
||||
FROM (SELECT res_rsv_ruimte_key,
|
||||
res_rsv_artikel_aantal,
|
||||
res_rsv_artikel_key,
|
||||
rra2.res_status_bo_key
|
||||
FROM res_rsv_artikel rra2
|
||||
WHERE res_artikel_key = 661 AND res_rsv_artikel_verwijder IS NULL) a,
|
||||
( SELECT res_rsv_ruimte_key,
|
||||
MIN (res_rsv_artikel_levering) res_rsv_artikel_levering
|
||||
FROM res_rsv_artikel rra
|
||||
WHERE rra.res_rsv_artikel_verwijder IS NULL
|
||||
AND rra.res_status_bo_key = 5 -- geleverd.
|
||||
AND rra.res_rsv_artikel_levering < SYSDATE
|
||||
GROUP BY res_rsv_ruimte_key) rrr
|
||||
WHERE rrr.res_rsv_ruimte_key = a.res_rsv_ruimte_key(+);
|
||||
|
||||
c_catmld_uitvoertijd mld_stdmelding.mld_stdmelding_t_uitvoertijd%TYPE := MLD_T_UITVOERTIJD(2, 'D');
|
||||
v_errormsg VARCHAR (200);
|
||||
@@ -262,9 +282,12 @@ AS
|
||||
v_aanvrager NUMBER;
|
||||
v_mld_workorder_key NUMBER;
|
||||
v_mld_stdmelding_key NUMBER;
|
||||
v_res_rsv_artikel_key NUMBER;
|
||||
v_res_status_bo_key NUMBER;
|
||||
v_date DATE;
|
||||
v_count NUMBER;
|
||||
v_total NUMBER(10,2);
|
||||
v_res_rsv_artikel_prijs NUMBER(10,2);
|
||||
BEGIN
|
||||
-- Facilitor
|
||||
v_aanvrager := 4;
|
||||
@@ -296,7 +319,9 @@ BEGIN
|
||||
WHERE rra.res_rsv_artikel_verwijder IS NULL
|
||||
AND rra.res_status_bo_key = 5 -- geleverd.
|
||||
AND rra.res_rsv_artikel_levering < v_date;
|
||||
|
||||
|
||||
fac.writelog (p_applname, 'I', 'Te factureren catering bedrag voor toevoeging disposables:' || v_total, '');
|
||||
|
||||
IF v_count > 0 THEN
|
||||
fac.writelog (p_applname, 'E', 'Catering export is al eerder uitgevoerd.',
|
||||
'Controleer opdrachten met datum: ' || to_char(v_date, 'dd-mm-yyyy'));
|
||||
@@ -304,6 +329,57 @@ BEGIN
|
||||
fac.writelog (p_applname, 'W', 'Er is deze maand niets te factureren',
|
||||
'Controleer of de catering wel afgemeld is');
|
||||
ELSE
|
||||
FOR rec in c
|
||||
LOOP
|
||||
v_res_rsv_artikel_key := rec.res_rsv_artikel_key;
|
||||
v_res_status_bo_key := rec.res_status_bo_key;
|
||||
-- Verwijder artikelen waar meer dan 1 stuks is aangegeven.
|
||||
IF rec.res_rsv_artikel_aantal IS NOT NULL
|
||||
AND rec.res_rsv_artikel_aantal <> 1
|
||||
THEN
|
||||
UPDATE res_rsv_artikel
|
||||
SET res_rsv_artikel_verwijder = SYSDATE
|
||||
WHERE res_rsv_artikel_key = v_res_rsv_artikel_key
|
||||
AND res_status_bo_key < 6;
|
||||
|
||||
v_res_rsv_artikel_key := NULL;
|
||||
END IF;
|
||||
IF v_res_rsv_artikel_key IS NULL
|
||||
THEN
|
||||
-- Artikel disposables a 2,50 toevoegen voor kostendoorberekening
|
||||
INSERT INTO res_rsv_artikel (res_artikel_key,
|
||||
res_rsv_artikel_aantal,
|
||||
res_rsv_artikel_levering,
|
||||
res_status_bo_key,
|
||||
res_rsv_ruimte_key)
|
||||
VALUES (661, -- disposables
|
||||
1,
|
||||
rec.res_rsv_artikel_levering,
|
||||
2,
|
||||
rec.res_rsv_ruimte_key)
|
||||
RETURN res_rsv_artikel_key INTO v_res_rsv_artikel_key;
|
||||
v_res_status_bo_key := 2;
|
||||
END IF;
|
||||
|
||||
IF v_res_status_bo_key = 2
|
||||
THEN
|
||||
v_res_rsv_artikel_prijs := RES.getartikelprijs(v_res_rsv_artikel_key);
|
||||
UPDATE res_rsv_artikel
|
||||
SET res_status_bo_key = 5,
|
||||
res_rsv_artikel_prijs = v_res_rsv_artikel_prijs
|
||||
WHERE res_rsv_artikel_key = v_res_rsv_artikel_key;
|
||||
END IF;
|
||||
END LOOP;
|
||||
|
||||
SELECT COALESCE(SUM (res_rsv_artikel_prijs),0)
|
||||
INTO v_total
|
||||
FROM res_rsv_artikel rra
|
||||
WHERE rra.res_rsv_artikel_verwijder IS NULL
|
||||
AND rra.res_status_bo_key = 5 -- geleverd.
|
||||
AND rra.res_rsv_artikel_levering < v_date;
|
||||
|
||||
fac.writelog (p_applname, 'I', 'Te factureren catering bedrag na toevoeging disposables:' || v_total, '');
|
||||
|
||||
v_errormsg := 'Aanpassen kostenplaatsen';
|
||||
-- vul de kostenplaats van reserveringen die per abuis geen kostenplaats hebben.
|
||||
UPDATE res_rsv_ruimte rrr
|
||||
@@ -416,7 +492,7 @@ BEGIN adm.systrackscriptId('$Id$', 0); END;
|
||||
/
|
||||
|
||||
|
||||
BEGIN fac.registercustversion('AADO', 11); END;
|
||||
BEGIN fac.registercustversion('AADO', 12); END;
|
||||
/
|
||||
|
||||
COMMIT;
|
||||
|
||||
Reference in New Issue
Block a user