NYBU#28495: AiAi afmelden reserveringen met negatief bedrag.
svn path=/Database/trunk/; revision=20501
This commit is contained in:
@@ -6272,7 +6272,7 @@ AS
|
||||
res_rsv_ruimte_van,
|
||||
res_rsv_ruimte_tot,
|
||||
res_rsv_ruimte_bezoekers,
|
||||
res.getruimteprijs (res_rsv_ruimte_key),
|
||||
res.getruimteprijs (res_rsv_ruimte_key) - res_rsv_ruimte_korting,
|
||||
res_rsv_ruimte_korting,
|
||||
rr.res_status_bo_key,
|
||||
rr.res_status_fo_key,
|
||||
|
||||
@@ -1330,16 +1330,11 @@ AS
|
||||
thisroomprice := thisroomprice * COALESCE(ruimte_prijsfactor_intern,fac.safe_to_number (fac.getsetting ('res_ruimte_prijsfactor_intern')));
|
||||
END IF;
|
||||
|
||||
-- De uiteindelijke ruimteprijs die afgeleverd wordt (return waarde) moet een op twee decimalen afgeronde prijs zijn.
|
||||
thisroomprice := ROUND(thisroomprice, 2);
|
||||
|
||||
-- Hier wordt een eventuele korting bij de reservering (door FO ingevoerd) nog verrekend: zie NYBU#25763
|
||||
thisroomprice := thisroomprice - res_rsv_korting;
|
||||
|
||||
-- Doorbelastingspercentage (bij annuleren) op het laatste moment nog.
|
||||
thisroomprice := thisroomprice * doorbelasting / 100;
|
||||
-- Voor de berekening van de doorbelasting moet gerekend worden met een op twee decimalen afgeronde ruimteprijs.
|
||||
thisroomprice := ROUND(thisroomprice, 2) * doorbelasting / 100;
|
||||
|
||||
-- De uiteindelijke ruimteprijs die afgeleverd wordt (return waarde) moet een op twee decimalen afgeronde prijs zijn. Vanwege doorbelasging opnieuw afronden.
|
||||
-- De uiteindelijke ruimteprijs die afgeleverd wordt (return waarde) moet een op twee decimalen afgeronde prijs zijn. Vanwege doorbelasting opnieuw afronden.
|
||||
RETURN ROUND(thisroomprice, 2);
|
||||
END;
|
||||
|
||||
@@ -1503,6 +1498,7 @@ AS
|
||||
ruimteprijs NUMBER := 0;
|
||||
artikelprijs NUMBER := 0;
|
||||
deelprijs NUMBER := 0;
|
||||
korting NUMBER := 0;
|
||||
CURSOR cartikel
|
||||
IS
|
||||
SELECT res_rsv_artikel_key
|
||||
@@ -1525,7 +1521,13 @@ AS
|
||||
loop
|
||||
deelprijs := deelprijs + res.getdeelprijs(cd.res_rsv_deel_key);
|
||||
end loop;
|
||||
RETURN ruimteprijs + artikelprijs + deelprijs;
|
||||
|
||||
SELECT res_rsv_ruimte_korting
|
||||
INTO korting
|
||||
FROM res_rsv_ruimte
|
||||
WHERE res_rsv_ruimte_key = pres_rsv_ruimte_key;
|
||||
|
||||
RETURN ruimteprijs + artikelprijs + deelprijs - korting;
|
||||
END;
|
||||
FUNCTION sprintf (ps IN VARCHAR2 , pres_rsv_ruimte_key IN NUMBER)
|
||||
RETURN VARCHAR2 IS
|
||||
|
||||
@@ -371,10 +371,10 @@ CREATE_TABLE(res_rsv_ruimte, 0)
|
||||
, res_rsv_ruimte_bezoekers_shown
|
||||
NUMBER(5)
|
||||
CONSTRAINT res_c_rsv_ruimte_bez_shown CHECK((res_rsv_ruimte_bezoekers_shown IS NULL) OR (res_rsv_ruimte_bezoekers_shown >= 0))
|
||||
, res_rsv_ruimte_prijs
|
||||
, res_rsv_ruimte_prijs /* prijs van de ruimte voor deze deelreservering (zonder korting) */
|
||||
NUMBER(9,2)
|
||||
CONSTRAINT res_c_res_rsv_ruimte_prijs CHECK((res_rsv_ruimte_prijs >= 0) or (res_rsv_ruimte_prijs IS NULL))
|
||||
, res_rsv_ruimte_korting
|
||||
, res_rsv_ruimte_korting /* Korting op de gehele deelreservering */
|
||||
NUMBER(9,2)
|
||||
CONSTRAINT res_c_res_rsv_ruimte_korting CHECK(res_rsv_ruimte_korting >= 0)
|
||||
, res_status_bo_key
|
||||
|
||||
Reference in New Issue
Block a user