FCLT#85890 Orderqueue en notificatiequeue savepoint

svn path=/Database/trunk/; revision=67654
This commit is contained in:
Jos Groot Lipman
2025-01-21 08:35:38 +00:00
parent ab18f3f3dc
commit e242bb0b3f
5 changed files with 52 additions and 32 deletions

View File

@@ -15,7 +15,11 @@ CREATE OR REPLACE PACKAGE mld AS
FUNCTION getmeldinguser (pmeldingkey IN number) RETURN NUMBER;
PROCEDURE setmeldingstatus (pmeldingkey IN NUMBER, pstatus IN NUMBER, puserkey IN NUMBER, pnotificeren IN NUMBER DEFAULT 1);
FUNCTION getopdrachtstatusdate (popdrkey IN number, pstatus IN number) RETURN date;
PROCEDURE setopdrachtstatus (popdrachtkey IN NUMBER, pstatus IN NUMBER, puserkey IN NUMBER, popdr_note_key IN NUMBER DEFAULT NULL);
PROCEDURE setopdrachtstatus (popdrachtkey IN NUMBER,
pstatus IN NUMBER,
puserkey IN NUMBER,
popdr_note_key IN NUMBER DEFAULT NULL,
pnotificeren IN NUMBER DEFAULT 1);
PROCEDURE notifybackoffice (pmeldingkey IN NUMBER, pcode IN VARCHAR2, pdisc_level IN NUMBER DEFAULT 1);
PROCEDURE notifybehandelaar (pto IN NUMBER, pcode IN VARCHAR2, pmeldingkey IN NUMBER);
PROCEDURE notifyprio (pmeldingkey IN NUMBER, prio IN NUMBER, pperslid_key IN NUMBER, pdisc_level IN NUMBER DEFAULT 1);
@@ -448,7 +452,11 @@ CREATE OR REPLACE PACKAGE BODY mld AS
-- gezet, waarbij zonodig (indien verandering) een trackrecord wordt gemaakt
-- Als de status niet wijzigt, wordt ook geen trackrecord gemaakt
-- ZIE schema StateDiagramOpdrachten.vsd
PROCEDURE setopdrachtstatus (popdrachtkey IN NUMBER, pstatus IN NUMBER, puserkey IN NUMBER, popdr_note_key IN NUMBER DEFAULT NULL)
PROCEDURE setopdrachtstatus (popdrachtkey IN NUMBER,
pstatus IN NUMBER,
puserkey IN NUMBER,
popdr_note_key IN NUMBER DEFAULT NULL,
pnotificeren IN NUMBER DEFAULT 1)
AS
currentstatus mld_opdr.mld_statusopdr_key%TYPE;
newstatus mld_opdr.mld_statusopdr_key%TYPE;
@@ -582,6 +590,10 @@ CREATE OR REPLACE PACKAGE BODY mld AS
IF statusopdr_key_refiat IS NULL OR
newstatus = 3 OR newstatus = 4 OR newstatus = 10
THEN
IF pnotificeren = 0 AND eventcode IS NOT NULL
THEN
eventcode := '#' || eventcode;
END IF;
fac.trackaction (eventcode, popdrachtkey, puserkey, NULL, NULL, new_fac_tracking_key);
IF popdr_note_key IS NOT NULL
THEN
@@ -1398,6 +1410,7 @@ CREATE OR REPLACE PACKAGE BODY mld AS
BEGIN
FOR bedrijfrec
IN (SELECT o.mld_typeopdr_key,
o.mld_opdr_discipline_key,
b.prs_bedrijf_key,
CASE WHEN b.prs_bedrijf_key = o.mld_uitvoerende_keys THEN 'O' ELSE 'OG' END bedrijfadres_type,
COALESCE (l1.alg_locatie_key, l2.alg_locatie_key) alg_locatie_key,
@@ -1433,7 +1446,9 @@ CREATE OR REPLACE PACKAGE BODY mld AS
ptrackingkey => ptrackingkey,
preference => bedrijfrec.reference,
ptypeopdr_key => bedrijfrec.mld_typeopdr_key,
plocatie_key => bedrijfrec.alg_locatie_key);
plocatie_key => bedrijfrec.alg_locatie_key,
pdisc_key => bedrijfrec.mld_opdr_discipline_key,
psender => bedrijfrec.alg_locatie_email);
END LOOP;
END;
@@ -1447,6 +1462,7 @@ CREATE OR REPLACE PACKAGE BODY mld AS
COALESCE (l1.alg_locatie_key, l2.alg_locatie_key) alg_locatie_key,
COALESCE (l1.alg_locatie_email, l2.alg_locatie_email) alg_locatie_email,
m.mld_melding_key reference,
m.mld_ins_discipline_key,
d.prs_bedrijf_key persoon_bedrijf_key -- van de melder, niet de uitvoerende
FROM mld_melding m,
mld_adres ma,
@@ -1473,7 +1489,9 @@ CREATE OR REPLACE PACKAGE BODY mld AS
prefkey => pmldkey,
ptrackingkey => ptrackingkey,
preference => bedrijfrec.reference,
plocatie_key => bedrijfrec.alg_locatie_key);
plocatie_key => bedrijfrec.alg_locatie_key,
pdisc_key => bedrijfrec.mld_ins_discipline_key,
psender => bedrijfrec.alg_locatie_email);
END LOOP;
END;