YASK#90843 Opdrachten toevoegen voor contractmutaties in Facilitor
svn path=/Customer/trunk/; revision=70601
This commit is contained in:
@@ -66,6 +66,12 @@ AS
|
||||
|
||||
PROCEDURE set_mandaatbedrag (p_opdr_key IN NUMBER);
|
||||
|
||||
FUNCTION vk_bepaal_maandbedrag (p_startdienstverlening IN DATE,
|
||||
p_startverrekening IN DATE,
|
||||
p_maand IN NUMBER,
|
||||
p_bedrag IN NUMBER)
|
||||
RETURN NUMBER;
|
||||
|
||||
PROCEDURE add_xml_row (p_bestand IN VARCHAR2,
|
||||
p_regel IN VARCHAR2);
|
||||
|
||||
@@ -141,6 +147,12 @@ AS
|
||||
OR (k.mld_kenmerk_niveau = 'D' AND k.mld_stdmelding_key = d.ins_discipline_key)
|
||||
OR (k.mld_kenmerk_niveau = 'S' AND k.mld_stdmelding_key = std.mld_stdmelding_key)
|
||||
);
|
||||
WHEN p_module = 'ALG'
|
||||
THEN
|
||||
SELECT alg_kenmerk_key
|
||||
INTO kkey
|
||||
FROM alg_kenmerk k
|
||||
WHERE k.alg_kenmerk_code = p_kenmerk_code;
|
||||
ELSE
|
||||
kkey := NULL;
|
||||
END CASE;
|
||||
@@ -1108,6 +1120,42 @@ AS
|
||||
RETURN;
|
||||
END;
|
||||
|
||||
-- Voor contractmutaties moet een excel bestand aangeleverd worden waarin per maand de kosten komen te staan.
|
||||
-- Hierbij beginnen de kosten op p_startverrekening. Als de dienstverlening eerder start zal er een verrekening
|
||||
-- plaatsvinden in p_startverrekening
|
||||
FUNCTION vk_bepaal_maandbedrag (p_startdienstverlening IN DATE,
|
||||
p_startverrekening IN DATE,
|
||||
p_maand IN NUMBER,
|
||||
p_bedrag IN NUMBER)
|
||||
RETURN NUMBER
|
||||
AS
|
||||
v_startdienstverlening DATE;
|
||||
v_startverrekening DATE;
|
||||
v_maand DATE;
|
||||
BEGIN
|
||||
v_startdienstverlening := TRUNC (p_startdienstverlening, 'MM');
|
||||
v_startverrekening := TRUNC (p_startverrekening, 'MM');
|
||||
|
||||
-- als de datum dat de dienstverlening start later ligt dan de datum dat de verrekening start,
|
||||
-- wordt de verreking pas gestart als ook de dienstverlening start.
|
||||
IF v_startdienstverlening > v_startverrekening
|
||||
THEN
|
||||
v_startverrekening := v_startdienstverlening;
|
||||
END IF;
|
||||
|
||||
v_maand := ADD_MONTHS (TRUNC (SYSDATE, 'YY'), p_maand - 1);
|
||||
|
||||
CASE
|
||||
WHEN v_maand = v_startverrekening
|
||||
THEN
|
||||
RETURN ROUND(MONTHS_BETWEEN (v_startverrekening, v_startdienstverlening) * p_bedrag,2);
|
||||
WHEN v_maand > v_startverrekening
|
||||
THEN
|
||||
RETURN ROUND(p_bedrag,2);
|
||||
ELSE
|
||||
RETURN NULL;
|
||||
END CASE;
|
||||
END;
|
||||
|
||||
PROCEDURE add_xml_row (
|
||||
p_bestand IN VARCHAR2,
|
||||
@@ -4332,7 +4380,7 @@ BEGIN
|
||||
|
||||
v_errormsg := 'Fout bijwerken status (MLD).';
|
||||
|
||||
FLX.setflex('OPD', v_ts_kenmerk_key, rec.mld_opdr_key, TO_CHAR(SYSDATE, 'dd-mm-yyyy hh:mi:ss'));
|
||||
FLX.setflex('OPD', v_ts_kenmerk_key, rec.mld_opdr_key, TO_CHAR(SYSDATE, 'dd-mm-yyyy hh24:mi:ss'));
|
||||
|
||||
-- Om tot een goede factuurmatch te komen wordt het bedrag van de opdracht toegevoegd aan het factuurschema
|
||||
-- van het variabele contract.
|
||||
|
||||
Reference in New Issue
Block a user