VGLD#85984: Automatische afsluitdatum instellen in contracten mogelijk?
svn path=/Database/trunk/; revision=67607
This commit is contained in:
@@ -12,6 +12,7 @@ CREATE OR REPLACE PACKAGE cnt AS
|
|||||||
FUNCTION cnt_getRappeldatum (pcnt_contract_key IN NUMBER) RETURN DATE;
|
FUNCTION cnt_getRappeldatum (pcnt_contract_key IN NUMBER) RETURN DATE;
|
||||||
FUNCTION cnt_contract_status (van IN DATE, rappel IN DATE, opzeg IN DATE, tot IN DATE) RETURN NUMBER;
|
FUNCTION cnt_contract_status (van IN DATE, rappel IN DATE, opzeg IN DATE, tot IN DATE) RETURN NUMBER;
|
||||||
PROCEDURE autoverleng_contract;
|
PROCEDURE autoverleng_contract;
|
||||||
|
PROCEDURE autoinactiveer_contract;
|
||||||
|
|
||||||
PROCEDURE splitscontract (p_key IN NUMBER, p_datum IN DATE, p_user IN NUMBER, p_amount NUMBER);
|
PROCEDURE splitscontract (p_key IN NUMBER, p_datum IN DATE, p_user IN NUMBER, p_amount NUMBER);
|
||||||
PROCEDURE generatefactuurschema (pcontractkey IN NUMBER,ptermijnbedrag IN NUMBER DEFAULT NULL);
|
PROCEDURE generatefactuurschema (pcontractkey IN NUMBER,ptermijnbedrag IN NUMBER DEFAULT NULL);
|
||||||
@@ -277,6 +278,41 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
|||||||
END LOOP;
|
END LOOP;
|
||||||
END;
|
END;
|
||||||
|
|
||||||
|
PROCEDURE autoinactiveer_contract
|
||||||
|
IS
|
||||||
|
l_prs_perslid_key prs_perslid.prs_perslid_key%TYPE;
|
||||||
|
tracking VARCHAR2(4000);
|
||||||
|
|
||||||
|
CURSOR c_inactiveer IS
|
||||||
|
SELECT c.cnt_contract_key
|
||||||
|
FROM cnt_contract c
|
||||||
|
WHERE c.cnt_contract_inactiveren = 1
|
||||||
|
AND TRUNC(c.cnt_contract_looptijd_tot) < TRUNC(SYSDATE);
|
||||||
|
BEGIN
|
||||||
|
BEGIN
|
||||||
|
SELECT prs_perslid_key
|
||||||
|
INTO l_prs_perslid_key
|
||||||
|
FROM prs_perslid
|
||||||
|
WHERE prs_perslid_oslogin = '_SYSTEEM' AND prs_perslid_verwijder IS NULL;
|
||||||
|
EXCEPTION
|
||||||
|
WHEN NO_DATA_FOUND
|
||||||
|
THEN
|
||||||
|
fac.putsystemnotification ('Invalid configuration: missing _SYSTEEM user', 1);
|
||||||
|
END;
|
||||||
|
|
||||||
|
FOR cnt_inactiveer IN c_inactiveer
|
||||||
|
LOOP
|
||||||
|
cnt.setcontractstatus(cnt_inactiveer.cnt_contract_key, 1, l_prs_perslid_key); -- Zorgt ook voor tracking en daarmee notificatie.
|
||||||
|
|
||||||
|
UPDATE cnt_contract
|
||||||
|
SET cnt_contract_inactiveren = 0
|
||||||
|
WHERE cnt_contract_key = cnt_inactiveer.cnt_contract_key;
|
||||||
|
|
||||||
|
tracking := lcl.l('lcl_cnt_is_cntupd') || CHR(10) || lcl.l('lcl_cnt_auto_close') || ': ' || lcl.l('lcl_Yes') || lcl.l('lcl_trackto') || lcl.l('lcl_No');
|
||||||
|
fac.trackaction('CNTUPD', cnt_inactiveer.cnt_contract_key, NULL, NULL, tracking);
|
||||||
|
END LOOP;
|
||||||
|
END;
|
||||||
|
|
||||||
PROCEDURE splitscontract (p_key IN NUMBER, p_datum IN DATE, p_user IN NUMBER, p_amount NUMBER)
|
PROCEDURE splitscontract (p_key IN NUMBER, p_datum IN DATE, p_user IN NUMBER, p_amount NUMBER)
|
||||||
IS
|
IS
|
||||||
begin1 DATE;
|
begin1 DATE;
|
||||||
|
|||||||
@@ -116,6 +116,10 @@ CREATE_TABLE(cnt_contract,0)
|
|||||||
, cnt_contract_looptijd_tot
|
, cnt_contract_looptijd_tot
|
||||||
DATE
|
DATE
|
||||||
CONSTRAINT cnt_c_cnt_contract_tot CHECK(cnt_contract_looptijd_tot IS NOT NULL)
|
CONSTRAINT cnt_c_cnt_contract_tot CHECK(cnt_contract_looptijd_tot IS NOT NULL)
|
||||||
|
, cnt_contract_inactiveren /* Automatisch sluiten na einddatum (0=nee, 1=ja) */
|
||||||
|
NUMBER(1)
|
||||||
|
DEFAULT 0
|
||||||
|
CONSTRAINT cnt_r_cnt_contract_inactiveren CHECK(cnt_contract_inactiveren IN (0,1))
|
||||||
, cnt_contract_kosten
|
, cnt_contract_kosten
|
||||||
NUMBER(11,2)
|
NUMBER(11,2)
|
||||||
, cnt_contract_termijnkosten
|
, cnt_contract_termijnkosten
|
||||||
|
|||||||
@@ -3324,6 +3324,7 @@ FAC_LCL('lcl_cnt_prolongation_auto', 'Automatisch', 'Automatic')
|
|||||||
FAC_LCL('lcl_cnt_prolongation_period', 'Verlengtermijn', 'Prolongation period')
|
FAC_LCL('lcl_cnt_prolongation_period', 'Verlengtermijn', 'Prolongation period')
|
||||||
FAC_LCL('lcl_cnt_prolongation_tracking', 'Automatische verlenging met {0} tot {1}', 'Automatic prolongation with {0} to {1}.')
|
FAC_LCL('lcl_cnt_prolongation_tracking', 'Automatische verlenging met {0} tot {1}', 'Automatic prolongation with {0} to {1}.')
|
||||||
FAC_LCL('lcl_cnt_date_end', 'Einddatum', 'End Date')
|
FAC_LCL('lcl_cnt_date_end', 'Einddatum', 'End Date')
|
||||||
|
FAC_LCL('lcl_cnt_auto_close', 'Automatisch sluiten na einddatum', 'Automatically close after end date')
|
||||||
FAC_LCL('lcl_cnt_effecter', 'Contractpartij', 'Contracting party')
|
FAC_LCL('lcl_cnt_effecter', 'Contractpartij', 'Contracting party')
|
||||||
FAC_LCL('lcl_cnt_company', 'Bedrijf', 'Company')
|
FAC_LCL('lcl_cnt_company', 'Bedrijf', 'Company')
|
||||||
FAC_LCL('lcl_cnt_name', 'Naam', 'Name')
|
FAC_LCL('lcl_cnt_name', 'Naam', 'Name')
|
||||||
|
|||||||
@@ -225,6 +225,13 @@ DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MAX_C' , 'Nieuwe max.waarde van dit kenmerks
|
|||||||
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MAX_P' , 'Nieuwe max.waarde van dit kenmerksoort voldoet niet aan alle personen.' ,'New max.value of this property-type does not satisfy all persons.');
|
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MAX_P' , 'Nieuwe max.waarde van dit kenmerksoort voldoet niet aan alle personen.' ,'New max.value of this property-type does not satisfy all persons.');
|
||||||
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_LENGTE', 'De lengte moet tussen 1 en 50 liggen.','Length must be between 1 and 50.');
|
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_LENGTE', 'De lengte moet tussen 1 en 50 liggen.','Length must be between 1 and 50.');
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////////////////// VGLD#85984
|
||||||
|
ALTER TABLE cnt_contract
|
||||||
|
ADD cnt_contract_inactiveren /* Automatisch sluiten na einddatum (0=nee, 1=ja) */
|
||||||
|
NUMBER(1)
|
||||||
|
DEFAULT 0
|
||||||
|
CONSTRAINT cnt_r_cnt_contract_inactiveren CHECK(cnt_contract_inactiveren IN (0,1));
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#00000
|
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#00000
|
||||||
REGISTERONCE('$Id$')
|
REGISTERONCE('$Id$')
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user