From f00acb6b71d12ef1e654c1367fd92821aa05c2fb Mon Sep 17 00:00:00 2001 From: Maykel Geerdink Date: Tue, 20 May 2014 13:50:48 +0000 Subject: [PATCH] NYBU#29378: Verwijderde reserveringen krijgen negatief saldo. svn path=/Database/trunk/; revision=21659 --- RES/RES_PAC.SRC | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/RES/RES_PAC.SRC b/RES/RES_PAC.SRC index 030005dd..96bf5a66 100644 --- a/RES/RES_PAC.SRC +++ b/RES/RES_PAC.SRC @@ -1499,6 +1499,8 @@ AS artikelprijs NUMBER := 0; deelprijs NUMBER := 0; korting NUMBER := 0; + verwijderdatum res_rsv_ruimte.res_rsv_ruimte_verwijder%TYPE; + statusfokey res_rsv_ruimte.res_status_fo_key%TYPE; CURSOR cartikel IS SELECT res_rsv_artikel_key @@ -1522,10 +1524,24 @@ AS deelprijs := deelprijs + res.getdeelprijs(cd.res_rsv_deel_key); end loop; - SELECT COALESCE(res_rsv_ruimte_korting, 0) - INTO korting - FROM res_rsv_ruimte - WHERE res_rsv_ruimte_key = pres_rsv_ruimte_key; + -- Is de reservering verwijderd + SELECT rrr.res_rsv_ruimte_verwijder, + rrr.res_status_fo_key + INTO verwijderdatum, + statusfokey + FROM res_rsv_ruimte rrr + WHERE rrr.res_rsv_ruimte_key = pres_rsv_ruimte_key; + + -- Bepaal doorbelasting korting + IF verwijderdatum IS NOT NULL AND statusfokey != 4 -- Verwijderde reservering met FO status die niet is vervallen: 0% korting doorberekenen. + THEN + korting := 0; + ELSE -- Actuele reservering of verwijderde reservering met FO status is vervallen: 100% korting doorberekenen + SELECT COALESCE(res_rsv_ruimte_korting, 0) + INTO korting + FROM res_rsv_ruimte + WHERE res_rsv_ruimte_key = pres_rsv_ruimte_key; + END IF; RETURN ruimteprijs + artikelprijs + deelprijs - korting; END;