Files
Customer/onces/MNNL/MNNL#81103-MLDAFM.sql
Maarten van der Heide f569020935 MNNL#81103 Once/Afmelden hangende WF-startmeldingen
svn path=/Customer/; revision=62763
2023-11-29 13:38:30 +00:00

58 lines
1.7 KiB
SQL

--
-- $Id$
--
-- Customer specific once-script MNNL#81103-MLDAFM.sql.
DEFINE thisfile = 'MNNL#81103-MLDAFM.sql'
DEFINE dbuser = '^MNNL'
SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT;
WHENEVER SQLERROR CONTINUE;
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
SPOOL &fcltlogfile
WHENEVER SQLERROR EXIT;
SELECT adm.checkscriptcust('&dbuser') AS fcltcusterr FROM DUAL;
WHENEVER SQLERROR CONTINUE;
PROMPT &fcltcusterr
SET DEFINE OFF
------ payload begin ------
-- MNNL#81103: Afmelden hangende WF-startmeldingen.
DECLARE
CURSOR c
IS
SELECT m.mld_melding_key
FROM mld_melding m
WHERE m.mld_melding_status NOT IN (1, 5, 6) -- Open/lopend
AND mld_melding_key = mld_melding_start_key -- Startmelding
AND NOT EXISTS
(SELECT 1
FROM mld_melding
WHERE mld_melding_status NOT IN (1, 5, 6) -- Open/lopend
AND mld_melding_key <> mld_melding_start_key -- Vervolgmelding
AND mld_melding_start_key = m.mld_melding_key);
BEGIN
FOR rec IN c
LOOP
-- Cursor met alleen WF-startmeldingen waarvoor alle vervolgmeldingen
-- gesloten (en startmelding zelf is natuurlijk Geaccepteerd).
mld.setmeldingstatus (rec.mld_melding_key, 5, NULL); -- Afgemeld
END LOOP;
END;
/
------ payload end ------
SET DEFINE OFF
BEGIN adm.systrackscriptId ('$Id$', 1); END;
/
COMMIT;
SET ECHO OFF
SPOOL OFF
SET DEFINE ON
PROMPT Logfile of this upgrade is: &fcltlogfile