CSUN#64697 Bij het aanmaken van planningsmeldingen, ook rekening houden met workflow.

svn path=/Customer/trunk/; revision=50234
This commit is contained in:
Sander Schepers
2021-03-08 19:15:29 +00:00
parent d7314cb749
commit 966a7a4b04

View File

@@ -4271,13 +4271,10 @@ AS
WHERE UPPER (prs_perslid_email) = UPPER (m.aanvrageremail)),
4)
AS aanvrager_key,
l.alg_locatie_key,
wf.mld_stdmelding_key as stdmelding_key,
wf.mld_workflowstep_key as workflowstep_key
FROM csun_imp_planning m, alg_v_locatie_gegevens l, mld_workflowstep wf
l.alg_locatie_key
FROM csun_imp_planning m, alg_v_locatie_gegevens l
WHERE l.alg_locatie_code = m.alg_locatie_code
AND m.mld_stdmelding_key = wf.mld_stdmelding_key (+)
AND m.mld_melding_key IS NULL;
AND m.mld_melding_key IS NULL;
BEGIN
FOR recmld IN cmld
LOOP
@@ -4295,9 +4292,7 @@ BEGIN
mld_melding_spoed,
mld_melding_onderwerp,
mld_melding_omschrijving,
mld_melding_behandelaar_key,
mld_melding_start_key,
mld_workflowstep_key)
mld_melding_behandelaar_key)
VALUES (recmld.aanvrager_key,
'MLD',
6, --Bron = Systeem
@@ -4311,9 +4306,7 @@ BEGIN
3, --Prioriteit = Normaal
recmld.onderwerp,
recmld.omschrijving,
NULL, --Op verzoek (CSUN#59537) toch niet vullen
recmld.stdmelding_key,
recmld.workflowstep_key)
NULL) --Op verzoek (CSUN#59537) toch niet vullen
RETURNING mld_melding_key, mld_stdmelding_key, mld_melding_datum
INTO v_mld_melding_key,
v_mld_stdmelding_key,
@@ -4376,7 +4369,6 @@ EXCEPTION
END csun_update_planning;
/
--CSUN#59537
CREATE OR REPLACE PROCEDURE csun_export_planning (p_applname IN VARCHAR2,
p_applrun IN VARCHAR2,
@@ -4400,19 +4392,29 @@ AS
-- Haal alle meldingen op die nog in behandeling (status 0) staan en met kenmerk 'Planning melding' aan heeft. .
CURSOR cmld
IS
SELECT m.mld_melding_key,
m.mld_stdmelding_key,
m.mld_melding_onderwerp,
m.mld_melding_omschrijving,
m.mld_melding_datum,
m.mld_melding_einddatum,
m.mld_alg_locatie_key
FROM mld_melding m, mld_kenmerkmelding km
WHERE km.mld_melding_key = m.mld_melding_key
AND TRUNC (m.mld_melding_einddatum) <= TRUNC (SYSDATE) + 11
AND km.mld_kenmerk_key = 1301 -- Kenmerk 'Import planning' (checkbox die bij het importeren op 1 wordt gezet zodat herkend wordt dat deze vanuit de import komt).
AND km.mld_kenmerkmelding_waarde = 1
AND m.mld_melding_status = 0;
SELECT m.mld_melding_key,
m.mld_stdmelding_key,
m.mld_melding_onderwerp,
m.mld_melding_omschrijving,
m.mld_melding_datum,
m.mld_melding_einddatum,
m.mld_alg_locatie_key,
(SELECT DISTINCT (wf.mld_stdmelding_key)
FROM mld_workflowstep wf
WHERE m.mld_stdmelding_key = wf.mld_stdmelding_key(+)
AND wf.mld_workflowstep_start_key IS NULL)
AS stdmelding_key, --Alleen bij een startmelding van een workflow
(SELECT DISTINCT (wf.mld_workflowstep_key)
FROM mld_workflowstep wf
WHERE m.mld_stdmelding_key = wf.mld_stdmelding_key(+)
AND wf.mld_workflowstep_start_key IS NULL)
AS workflowstep_key --Alleen bij een startmelding van een workflow
FROM mld_melding m, mld_kenmerkmelding km
WHERE km.mld_melding_key = m.mld_melding_key
AND TRUNC (m.mld_melding_einddatum) <= TRUNC (SYSDATE) + 18
AND km.mld_kenmerk_key = 1301 --Kenmerk 'Import planning' (checkbox die bij het importeren op 1 wordt gezet zodat herkend wordt dat deze vanuit de import komt).
AND km.mld_kenmerkmelding_waarde = 1
AND m.mld_melding_status = 0;
BEGIN
FOR recmld IN cmld
LOOP
@@ -4432,6 +4434,18 @@ BEGIN
v_errorhint := 'Select opdracht';
-- Betreft het een workflowmelding?
IF recmld.stdmelding_key IS NOT NULL
THEN
UPDATE mld_melding
SET mld_workflowstep_key = recmld.workflowstep_key,
mld_melding_start_key = mld_melding_key
WHERE mld_melding_key = recmld.mld_melding_key;
-- Indien het een melding is die start is van een workflow, dan moet ook de eerstvolgende stap(pen) aangemaakt worden.
mld.mld_nextworkflowstep (recmld.mld_melding_key, -1);
END IF;
-- Nu kijken of we automatisch een opdracht kunnen aanmaken.
SELECT ms.mld_stdmelding_autoorder,
ms.prs_dienst_key,
@@ -4494,7 +4508,6 @@ BEGIN
mld.setopdrachtstatus (v_opdr_key, 5, v_perslid_key); -- Uitgegeven
mld.updatemeldingstatus (v_mld_melding_key, 0, v_perslid_key);
END IF;
END;
END LOOP;