FCLT#86661 Savepoint global tsk_master_schema voor scheduling
svn path=/Database/trunk/; revision=67371
This commit is contained in:
@@ -2250,7 +2250,9 @@ AS
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
FROM prs_bedrijfadres ba
|
||||
WHERE ba.prs_bedrijf_key = b.prs_bedrijf_key AND ba.prs_bedrijfadres_type = 'BOG')))
|
||||
WHERE ba.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND ba.prs_bedrijfadres_startdatum <= SYSDATE
|
||||
AND ba.prs_bedrijfadres_type = 'BOG')))
|
||||
LOOP
|
||||
fac.notifybedrijf (pbedrijf_key => bedrijfrec.prs_bedrijf_key,
|
||||
pbedrijfadres_type => bedrijfrec.bedrijfadres_type,
|
||||
|
||||
@@ -716,7 +716,9 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
FROM prs_bedrijfadres ba
|
||||
WHERE ba.prs_bedrijf_key = b.prs_bedrijf_key AND ba.prs_bedrijfadres_type = 'CG')))
|
||||
WHERE ba.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND ba.prs_bedrijfadres_startdatum <= SYSDATE
|
||||
AND ba.prs_bedrijfadres_type = 'CG')))
|
||||
LOOP
|
||||
fac.notifybedrijf (pbedrijf_key => bedrijfrec.prs_bedrijf_key,
|
||||
pbedrijfadres_type => bedrijfrec.bedrijfadres_type,
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "fac_pacflex.src"
|
||||
#include "fac_pacano.src"
|
||||
#include "fac_pacdel.src"
|
||||
#include "fac_pactsk.src"
|
||||
|
||||
CREATE OR REPLACE PACKAGE fac
|
||||
AUTHID CURRENT_USER -- zodat CREATE TABLE lukt
|
||||
@@ -61,6 +62,7 @@ CREATE OR REPLACE PACKAGE fac
|
||||
FUNCTION safe_To_Number( str IN VARCHAR2 ) RETURN NUMBER;
|
||||
FUNCTION safe_To_Date ( pchar IN VARCHAR2, pfmt IN VARCHAR2 ) RETURN DATE;
|
||||
FUNCTION safe_concat ( pchar1 IN VARCHAR2, pchar2 IN VARCHAR2, pmaxlen NUMBER DEFAULT 4000 ) RETURN VARCHAR2;
|
||||
FUNCTION safe_least ( p1 IN DATE, p2 IN DATE ) RETURN DATE;
|
||||
FUNCTION getweekdaynum (d IN DATE) RETURN NUMBER;
|
||||
FUNCTION getdomeinwaarde (dkey IN NUMBER, waarde IN VARCHAR2, ignorewhenxmlnode IN NUMBER DEFAULT 0) RETURN VARCHAR2;
|
||||
FUNCTION getscopeleveltext (plevel IN NUMBER, ptype IN VARCHAR) RETURN VARCHAR;
|
||||
@@ -115,8 +117,6 @@ CREATE OR REPLACE PACKAGE fac
|
||||
pbedrijfadreskey NUMBER DEFAULT NULL,
|
||||
pqueue VARCHAR2 DEFAULT 'DEFAULT',
|
||||
pgeturl VARCHAR2 DEFAULT NULL);
|
||||
PROCEDURE putnotification (pfrom NUMBER, pto NUMBER, pmessage VARCHAR2, pmode NUMBER,
|
||||
poptemail VARCHAR2, poptmobile VARCHAR2);
|
||||
PROCEDURE putsystemnotification (pmessage VARCHAR2, pmode NUMBER);
|
||||
PROCEDURE putnotificationsrtprio (pfrom NUMBER, pto NUMBER, pcode VARCHAR2, pref NUMBER,
|
||||
poptmessage VARCHAR2, poptstatus NUMBER, poptemail VARCHAR2, poptmobile VARCHAR2, pxref NUMBER,
|
||||
@@ -159,8 +159,7 @@ CREATE OR REPLACE PACKAGE fac
|
||||
psender VARCHAR2 DEFAULT NULL,
|
||||
plocatie_key NUMBER DEFAULT NULL,
|
||||
pdiscipline_key NUMBER DEFAULT NULL,
|
||||
ptypeopdr_key NUMBER DEFAULT NULL,
|
||||
teverzenden_datum DATE DEFAULT SYSDATE);
|
||||
ptypeopdr_key NUMBER DEFAULT NULL);
|
||||
FUNCTION gettrackingdate (peventcode IN VARCHAR2, pkey IN number) RETURN date;
|
||||
FUNCTION gettrackinguserkey (peventcode IN VARCHAR2, pkey IN number) RETURN number;
|
||||
PROCEDURE initsession (flcode IN VARCHAR2);
|
||||
@@ -366,6 +365,19 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
RETURN SUBSTR(v_result, 1, pmaxlen);
|
||||
END;
|
||||
|
||||
-- Lever de andere waarde op als er een parameter NULL is
|
||||
FUNCTION safe_least ( p1 IN DATE, p2 IN DATE ) RETURN DATE
|
||||
IS
|
||||
BEGIN
|
||||
IF p1 IS NULL THEN
|
||||
RETURN p2;
|
||||
ELSIF p2 IS NULL THEN
|
||||
RETURN p1;
|
||||
ELSE
|
||||
RETURN LEAST(p1, p2);
|
||||
END IF;
|
||||
END;
|
||||
|
||||
-- Levert het dow-nummer op (1-7), op een nls-onafhankelijke wijze
|
||||
FUNCTION getweekdaynum (d IN DATE) RETURN NUMBER IS
|
||||
BEGIN
|
||||
@@ -2229,14 +2241,6 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
END IF;
|
||||
END;
|
||||
|
||||
/* for code compatibility only */
|
||||
PROCEDURE putnotification (pfrom NUMBER, pto NUMBER, pmessage VARCHAR2, pmode NUMBER,
|
||||
poptemail VARCHAR2, poptmobile VARCHAR2)
|
||||
AS
|
||||
BEGIN
|
||||
putnotificationprio (pfrom, pto, pmessage, pmode, poptemail, poptmobile, 2);
|
||||
END;
|
||||
|
||||
-- Zet een bericht in de queue ter verspreiding aan de applicatiebeheerders
|
||||
PROCEDURE putsystemnotification (pmessage VARCHAR2, pmode NUMBER)
|
||||
AS
|
||||
@@ -2249,7 +2253,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
BEGIN
|
||||
FOR rec1 IN c1
|
||||
LOOP
|
||||
putnotification (NULL, rec1.prs_perslid_key, pmessage, pmode, NULL, NULL);
|
||||
putnotificationprio (NULL, rec1.prs_perslid_key, pmessage, pmode, NULL, NULL, 2);
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
@@ -2742,6 +2746,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
AS
|
||||
BEGIN
|
||||
-- Ruim alle totaal verwerkte notificaties op.
|
||||
-- Putorders heeft de meeste al wel gedaan maar iets als portal only komt niet per se langs putorders
|
||||
DELETE FROM fac_notificatie
|
||||
WHERE fac_notificatie_status IN (0, 16)
|
||||
AND fac_notificatie_systeemadres IS NULL
|
||||
@@ -4839,13 +4844,13 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
psender VARCHAR2 DEFAULT NULL,
|
||||
plocatie_key NUMBER DEFAULT NULL,
|
||||
pdiscipline_key NUMBER DEFAULT NULL,
|
||||
ptypeopdr_key NUMBER DEFAULT NULL,
|
||||
teverzenden_datum DATE DEFAULT SYSDATE)
|
||||
ptypeopdr_key NUMBER DEFAULT NULL)
|
||||
AS
|
||||
l_bdradr_key prs_bedrijfadres.prs_bedrijfadres_key%TYPE;
|
||||
l_basrt_key prs_bedrijfadres_srtnoti.prs_bedrijfadres_srtnoti_key%TYPE;
|
||||
l_srtnoti_code fac_srtnotificatie.fac_srtnotificatie_code%TYPE;
|
||||
l_srtnoti_key fac_srtnotificatie.fac_srtnotificatie_key%TYPE;
|
||||
l_srtnoti_delay fac_srtnotificatie.fac_srtnotificatie_delay%TYPE;
|
||||
nn_noti NUMBER (10);
|
||||
BEGIN
|
||||
-- Merk op: per bedrijf notificeren we hooguit <20><>n enkel technisch adres
|
||||
@@ -4890,8 +4895,14 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
DBMS_OUTPUT.Put_line ('Gevonden technisch adres key ' || l_bdradr_key);
|
||||
|
||||
-- Nu de srtnotifictie zoeken
|
||||
SELECT basrt.prs_bedrijfadres_srtnoti_key, srtnoti.fac_srtnotificatie_code, srtnoti.fac_srtnotificatie_key
|
||||
INTO l_basrt_key, l_srtnoti_code, l_srtnoti_key
|
||||
SELECT basrt.prs_bedrijfadres_srtnoti_key,
|
||||
srtnoti.fac_srtnotificatie_code,
|
||||
srtnoti.fac_srtnotificatie_delay,
|
||||
srtnoti.fac_srtnotificatie_key
|
||||
INTO l_basrt_key,
|
||||
l_srtnoti_code,
|
||||
l_srtnoti_delay,
|
||||
l_srtnoti_key
|
||||
FROM prs_bedrijfadres_srtnoti basrt, fac_srtnotificatie srtnoti, fac_tracking ft
|
||||
WHERE basrt.prs_bedrijfadres_key(+) = l_bdradr_key
|
||||
AND basrt.fac_srtnotificatie_key(+) = srtnoti.fac_srtnotificatie_key
|
||||
@@ -4931,7 +4942,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
psender,
|
||||
0,
|
||||
l_bdradr_key,
|
||||
teverzenden_datum);
|
||||
SYSDATE); -- nooit delay, we ontdubbelen toch niet? + NVL(l_srtnoti_delay/ 60/ 60/ 24, 0));
|
||||
END;
|
||||
|
||||
-- Levert de (nieuwste) datum op van een getrackt event op key
|
||||
|
||||
145
FAC/FAC_PACTSK.SRC
Normal file
145
FAC/FAC_PACTSK.SRC
Normal file
@@ -0,0 +1,145 @@
|
||||
/* $Revision$
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
/* FAC_PACTSK
|
||||
*
|
||||
* Contains all functions for tasker.
|
||||
*
|
||||
*/
|
||||
|
||||
CREATE OR REPLACE PACKAGE tsk
|
||||
AS
|
||||
PROCEDURE registercust (p_customerid VARCHAR2 DEFAULT NULL,
|
||||
p_schema VARCHAR2 DEFAULT NULL);
|
||||
PROCEDURE registertask (p_taskcode VARCHAR2,
|
||||
p_customerid VARCHAR2 DEFAULT NULL);
|
||||
PROCEDURE starttask (p_taskcode VARCHAR2,
|
||||
p_nextrun DATE DEFAULT SYSDATE,
|
||||
p_customerid VARCHAR2 DEFAULT NULL);
|
||||
END tsk;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PACKAGE BODY tsk
|
||||
AS
|
||||
PROCEDURE registercust (p_customerid VARCHAR2 DEFAULT NULL,
|
||||
p_schema VARCHAR2 DEFAULT NULL)
|
||||
AS
|
||||
tsk_master_schema VARCHAR(32);
|
||||
custid fac_version.fac_version_cust%TYPE;
|
||||
selfid fac_version.fac_version_cust%TYPE;
|
||||
selfschema fac_version.fac_version_schema%TYPE;
|
||||
tsksql VARCHAR2 (4000);
|
||||
cursor_name INTEGER;
|
||||
rows_processed INTEGER;
|
||||
BEGIN
|
||||
SELECT fac_version_cust,
|
||||
fac_version_schema
|
||||
INTO selfid,
|
||||
selfschema
|
||||
FROM fac_version;
|
||||
custid := COALESCE(p_customerid, selfid);
|
||||
tsk_master_schema := fac.getsetting ('tsk_master_schema');
|
||||
|
||||
IF tsk_master_schema IS NULL OR tsk_master_schema = USER
|
||||
THEN -- zelf oplossen
|
||||
BEGIN
|
||||
INSERT INTO fac_cust(fac_cust_customerid, fac_cust_schema)
|
||||
VALUES(custid, COALESCE(p_schema, selfschema));
|
||||
EXCEPTION
|
||||
WHEN DUP_VAL_ON_INDEX
|
||||
THEN
|
||||
NULL;
|
||||
END;
|
||||
-- Schema bijwerken
|
||||
UPDATE fac_cust
|
||||
SET fac_cust_schema = COALESCE(p_schema, selfschema)
|
||||
WHERE fac_cust_customerid = custid;
|
||||
ELSE -- Remote register
|
||||
tsksql := 'BEGIN ' || tsk_master_schema || '.tsk.registercust(:custid, :schema); END;';
|
||||
|
||||
cursor_name := DBMS_SQL.open_cursor;
|
||||
DBMS_SQL.PARSE (cursor_name, tsksql, DBMS_SQL.NATIVE);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':custid', selfid);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':schema', selfschema);
|
||||
rows_processed := DBMS_SQL.EXECUTE (cursor_name);
|
||||
DBMS_SQL.CLOSE_CURSOR (cursor_name);
|
||||
END IF;
|
||||
END;
|
||||
|
||||
PROCEDURE registertask (p_taskcode VARCHAR2,
|
||||
p_customerid VARCHAR2 DEFAULT NULL)
|
||||
AS
|
||||
tsk_master_schema VARCHAR(32);
|
||||
selfid fac_version.fac_version_cust%TYPE;
|
||||
tsksql VARCHAR2 (4000);
|
||||
cursor_name INTEGER;
|
||||
rows_processed INTEGER;
|
||||
BEGIN
|
||||
SELECT fac_version_cust INTO selfid FROM fac_version;
|
||||
tsk_master_schema := fac.getsetting ('tsk_master_schema');
|
||||
|
||||
IF tsk_master_schema IS NULL OR tsk_master_schema = USER
|
||||
THEN -- zelf oplossen
|
||||
BEGIN
|
||||
INSERT INTO fac_task(fac_cust_key, fac_task_code)
|
||||
SELECT fac_cust_key, p_taskcode
|
||||
FROM fac_cust
|
||||
WHERE fac_cust_customerid = COALESCE(p_customerid, selfid);
|
||||
EXCEPTION
|
||||
WHEN DUP_VAL_ON_INDEX
|
||||
THEN
|
||||
NULL;
|
||||
END;
|
||||
ELSE -- start remote tasker
|
||||
tsksql := 'BEGIN ' || tsk_master_schema || '.tsk.registertask(:taskcode, :custid); END;';
|
||||
|
||||
cursor_name := DBMS_SQL.open_cursor;
|
||||
DBMS_SQL.PARSE (cursor_name, tsksql, DBMS_SQL.NATIVE);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':custid', selfid);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':taskcode', p_taskcode);
|
||||
rows_processed := DBMS_SQL.EXECUTE (cursor_name);
|
||||
DBMS_SQL.CLOSE_CURSOR (cursor_name);
|
||||
END IF;
|
||||
END;
|
||||
|
||||
-- veronderstelt dat taak al correct is geregistreerd
|
||||
PROCEDURE starttask (p_taskcode VARCHAR2,
|
||||
p_nextrun DATE DEFAULT SYSDATE,
|
||||
p_customerid VARCHAR2 DEFAULT NULL)
|
||||
AS
|
||||
tsk_master_schema VARCHAR(32);
|
||||
selfid fac_version.fac_version_cust%TYPE;
|
||||
tsksql VARCHAR2 (4000);
|
||||
cursor_name INTEGER;
|
||||
rows_processed INTEGER;
|
||||
BEGIN
|
||||
SELECT fac_version_cust INTO selfid FROM fac_version;
|
||||
tsk_master_schema := fac.getsetting ('tsk_master_schema');
|
||||
|
||||
IF tsk_master_schema IS NULL OR tsk_master_schema = USER
|
||||
THEN -- zelf oplossen
|
||||
UPDATE fac_task
|
||||
SET fac_task_nextrun = fac.safe_LEAST (p_nextrun, fac_task_nextrun)
|
||||
WHERE fac_task_code = p_taskcode
|
||||
AND fac_cust_key = (SELECT fac_cust_key
|
||||
FROM fac_cust
|
||||
WHERE fac_cust_customerid = COALESCE(p_customerid, selfid));
|
||||
ELSE -- start remote tasker
|
||||
tsksql := 'BEGIN ' || tsk_master_schema || '.tsk.starttask(:taskcode, :nextrun, :custid); END;';
|
||||
|
||||
cursor_name := DBMS_SQL.open_cursor;
|
||||
DBMS_SQL.PARSE (cursor_name, tsksql, DBMS_SQL.NATIVE);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':custid', selfid);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':taskcode', p_taskcode);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':nextrun', p_nextrun);
|
||||
rows_processed := DBMS_SQL.EXECUTE (cursor_name);
|
||||
DBMS_SQL.CLOSE_CURSOR (cursor_name);
|
||||
END IF;
|
||||
END;
|
||||
END tsk;
|
||||
/
|
||||
-- tsk_master_schema needs:
|
||||
-- GRANT EXECUTE ON tsk TO PUBLIC
|
||||
|
||||
REGISTERRUN('$Id$')
|
||||
@@ -55,6 +55,8 @@ CREATE SEQUENCE fac_s_fac_session_key MINVALUE 1;
|
||||
CREATE SEQUENCE fac_s_fac_sequence_key MINVALUE 1;
|
||||
CREATE SEQUENCE fac_s_fac_bijlagen_key MINVALUE 1;
|
||||
CREATE SEQUENCE fac_s_fac_layout_key MINVALUE 100;
|
||||
CREATE SEQUENCE fac_s_fac_cust_key MINVALUE 1;
|
||||
CREATE SEQUENCE fac_s_fac_task_key MINVALUE 1;
|
||||
-- CREATE SEQUENCE fac_s_fac_queue_key MINVALUE 1;
|
||||
|
||||
-- Some free to use sequence to generate unique and sequential numbers
|
||||
|
||||
@@ -63,6 +63,8 @@ DEFINE_SETTING('FAC', 0000, 'WEB_FACFAC', 'sys_ip_restrict_internal'
|
||||
DEFINE_SETTING('FAC', 0000, 'WEB_FACFAC', 'fac_imagecharts_account_id' , 'string' , '' , 'Image-charts account_id (future use)')
|
||||
DEFINE_SETTING('FAC', 0000, 'WEB_FACFAC', 'fac_imagecharts_secret_key' , 'string' , '' , 'Image-charts secret_key (future use)')
|
||||
|
||||
DEFINE_SETTING('PUO', 0000, 'WEB_FACTAB', 'tsk_master_schema' , 'string' , '' , 'Task master schema name (not necessarily customerId)')
|
||||
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_api2_compatibility' , 'number' , '0' , '0=latest and greatest, bit 1=backwards compatible')
|
||||
|
||||
DEFINE_SETTING('ALG', 0001, 'WEB_FACFAC', 'alg_ruimte_comm_opp_key' , 'number' , '-1' , 'Key to be used for commercial ruimte oppervlakte')
|
||||
@@ -354,7 +356,7 @@ DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_show_alg_level'
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_t1' , 'float' , '8' , 'visitors day start (hour)')
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_t1_fo' , 'float' , '-1' , 'visitors day start (hour) frontoffice')
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_t1_std' , 'float' , '8' , 'standard visiting begin time of visitors (hour)')
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_t2' , 'float' , '18' , 'visitors day end (hour)')
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_t2' , 'float' , '18' , 'visitors day end (hour, max. 23.99)')
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_t2_fo' , 'float' , '-1' , 'visitors day end (hour) frontoffice')
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_t2_std' , 'float' , '18' , 'standard visiting end time of visitors (hour)')
|
||||
DEFINE_SETTING('BEZ', 0001, 'WEB_PRSSYS', 'vis_user_history' , 'number' , '7' , 'number of days in the past the FE can see his vistors')
|
||||
|
||||
@@ -1526,7 +1526,8 @@ CREATE_TABLE (fac_version, 0) (
|
||||
fac_version_putorders_date DATE,
|
||||
fac_version_scheduler_date DATE,
|
||||
fac_version_notify_date DATE,
|
||||
fac_version_cleanup_date DATE
|
||||
fac_version_cleanup_date DATE,
|
||||
fac_version_tasker_date DATE
|
||||
);
|
||||
|
||||
CREATE_TABLE(fac_typestaffel, 0)
|
||||
@@ -2431,4 +2432,27 @@ CREATE_TABLE(fac_layout, 0)
|
||||
DEFAULT SYSDATE
|
||||
);
|
||||
|
||||
CREATE_TABLE(fac_cust, 0)
|
||||
(
|
||||
fac_cust_key NUMBER(10)
|
||||
CONSTRAINT fac_k_fac_cust_key PRIMARY KEY,
|
||||
fac_cust_customerid VARCHAR(4) NOT NULL,
|
||||
fac_cust_schema VARCHAR(30) DEFAULT '00' NOT NULL, // kopie fac_version_schema van de gebruiker
|
||||
fac_cust_enabled NUMBER(1) DEFAULT 1 NOT NULL, // future use, disable during upgrades?
|
||||
fac_cust_aanmaak DATE DEFAULT SYSDATE NOT NULL,
|
||||
CONSTRAINT fac_u_fac_cust UNIQUE(fac_cust_customerid)
|
||||
);
|
||||
|
||||
CREATE_TABLE(fac_task, 0)
|
||||
(
|
||||
fac_task_key NUMBER(10)
|
||||
CONSTRAINT fac_k_fac_task_key PRIMARY KEY,
|
||||
fac_cust_key NUMBER(10) REFERENCES fac_cust(fac_cust_key) ON DELETE CASCADE,
|
||||
fac_task_code VARCHAR(32) NOT NULL,
|
||||
fac_task_nextrun DATE,
|
||||
fac_task_lastrun DATE,
|
||||
CONSTRAINT fac_u_fac_task UNIQUE(fac_cust_key, fac_task_code)
|
||||
);
|
||||
|
||||
|
||||
REGISTERONCE('$Id$')
|
||||
|
||||
@@ -394,6 +394,13 @@ BEGIN
|
||||
-- Always clear the notify_to_statinfo bit, even when no :new.prs_perslid_key_receiver
|
||||
:NEW.fac_notificatie_status := BITAND (:NEW.fac_notificatie_status, 255 - 1);
|
||||
:NEW.fac_notificatie_queue:=UPPER(:NEW.fac_notificatie_queue);
|
||||
|
||||
IF BITAND(:NEW.fac_notificatie_status, 255 - 64) > 0 -- Alleen custom-queue negeren we
|
||||
OR :NEW.prs_bedrijfadres_key IS NOT NULL
|
||||
OR :NEW.fac_notificatie_systeemadres IS NOT NULL
|
||||
THEN
|
||||
tsk.starttask(p_taskcode => 'PUTORDERS', p_nextrun => :NEW.fac_notificatie_notbefore);
|
||||
END IF;
|
||||
END;
|
||||
/
|
||||
|
||||
@@ -1063,6 +1070,38 @@ BEGIN
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE_TRIGGER(fac_t_fac_cust_B_I)
|
||||
BEFORE INSERT ON fac_cust
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
UPDATE_PRIMARY_KEY(fac_cust_key, fac_s_fac_cust_key);
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE_TRIGGER(fac_t_fac_cust_B_IU)
|
||||
BEFORE INSERT OR UPDATE ON fac_cust
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
:new.fac_cust_customerid := UPPER(:new.fac_cust_customerid);
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE_TRIGGER(fac_t_fac_task_B_I)
|
||||
BEFORE INSERT ON fac_task
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
UPDATE_PRIMARY_KEY(fac_task_key, fac_s_fac_task_key);
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE_TRIGGER(fac_t_fac_task_B_IU)
|
||||
BEFORE INSERT OR UPDATE ON fac_task
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
:new.fac_task_code := UPPER(:new.fac_task_code);
|
||||
END;
|
||||
/
|
||||
|
||||
-- CREATE_TRIGGER(fac_t_fac_queue_B_I)
|
||||
-- BEFORE INSERT ON fac_queue
|
||||
-- FOR EACH ROW
|
||||
|
||||
1
FCLT.NMK
1
FCLT.NMK
@@ -193,6 +193,7 @@ $(EXE)\$(NEXTROOT)\FCLT$(NEXTVERSION)$(FILEVERSION).SQL: \
|
||||
$(MSRC)\fac\fac_pacl.src \
|
||||
$(MSRC)\fac\fac_pacflex.src \
|
||||
$(MSRC)\fac\fac_pacdel.src \
|
||||
$(MSRC)\fac\fac_pactsk.src \
|
||||
$(MSRC)\fac\fac_seq.src \
|
||||
$(MSRC)\fac\fac_tab.src \
|
||||
$(MSRC)\fac\fac_tri.src \
|
||||
|
||||
@@ -53,6 +53,9 @@ ALTER TABLE fac_notificatie
|
||||
ALTER TABLE fac_notificatie
|
||||
ADD fac_notificatie_failmessage VARCHAR(4000); // de laatste
|
||||
|
||||
ALTER TABLE fac_notificatie
|
||||
ADD fac_notificatie_faildatum DATE; // de laatste
|
||||
|
||||
ALTER TABLE prs_bedrijfadres
|
||||
ADD ins_discipline_key NUMBER(10)
|
||||
REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE; // Scherpere bedrijfadres bepaling, vooral reserveringen?
|
||||
@@ -60,6 +63,34 @@ ALTER TABLE prs_bedrijfadres
|
||||
ALTER TABLE prs_bedrijfadres
|
||||
MODIFY prs_bedrijfadres_type VARCHAR2(3); // Ook ruimte voor BOG voor BestelOpdrachten Generiek
|
||||
|
||||
ALTER TABLE fac_version
|
||||
ADD fac_version_tasker_date DATE;
|
||||
|
||||
CREATE_TABLE(fac_cust, 0)
|
||||
(
|
||||
fac_cust_key NUMBER(10)
|
||||
CONSTRAINT fac_k_fac_cust_key PRIMARY KEY,
|
||||
fac_cust_customerid VARCHAR(4) NOT NULL,
|
||||
fac_cust_schema VARCHAR(30) DEFAULT '00' NOT NULL, // kopie fac_version_schema van de gebruiker
|
||||
fac_cust_enabled NUMBER(1) DEFAULT 1 NOT NULL, // future use, disable during upgrades?
|
||||
fac_cust_aanmaak DATE DEFAULT SYSDATE NOT NULL,
|
||||
CONSTRAINT fac_u_fac_cust UNIQUE(fac_cust_customerid)
|
||||
);
|
||||
|
||||
CREATE_TABLE(fac_task, 0)
|
||||
(
|
||||
fac_task_key NUMBER(10)
|
||||
CONSTRAINT fac_k_fac_task_key PRIMARY KEY,
|
||||
fac_cust_key NUMBER(10) REFERENCES fac_cust(fac_cust_key) ON DELETE CASCADE,
|
||||
fac_task_code VARCHAR(32) NOT NULL,
|
||||
fac_task_nextrun DATE,
|
||||
fac_task_lastrun DATE,
|
||||
CONSTRAINT fac_u_fac_task UNIQUE(fac_cust_key, fac_task_code)
|
||||
);
|
||||
|
||||
CREATE SEQUENCE fac_s_fac_cust_key MINVALUE 1;
|
||||
CREATE SEQUENCE fac_s_fac_task_key MINVALUE 1;
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#80469
|
||||
|
||||
|
||||
@@ -143,6 +174,10 @@ DELETE FROM fac_menuitems
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#86343
|
||||
// Sinds HSLE#36898 (2016.3) al niet meer in gebruik.
|
||||
|
||||
ALTER PACKAGE fac COMPILE; // anders (nog) invalid en lukt het volgende niet niet
|
||||
ALTER PACKAGE fac COMPILE BODY;
|
||||
|
||||
UPDATE prs_perslid
|
||||
SET prs_perslid_options = NULL
|
||||
WHERE prs_perslid_options IS NOT NULL;
|
||||
|
||||
Reference in New Issue
Block a user