107 lines
3.4 KiB
SQL
107 lines
3.4 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Dit script schoont de reserveringen en meldingen die zijn afgemeld voor 01-01-2021 (zet ze in het archief). Korte beschrijving wat het script doet
|
|
-- Voor dbuser invullen: - indien script voor 1 klant is: 'AADS' (de klantcode, zoals vermeld in fac_version_cust)
|
|
-- - script is voor meerdere klanten: 'AAXX' (de groepcode, zoals vermeld in fac_version_group)
|
|
-- - script is voor meerdere klanten met naam volgens een bepaald patroon: '^AA|^ASMS|^GULU|^NMMS|^RABO|^ZKHM'
|
|
--
|
|
DEFINE thisfile = 'WELK#75628.SQL'
|
|
DEFINE dbuser = 'WELK'
|
|
|
|
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 ------
|
|
|
|
DECLARE
|
|
CURSOR c_mld IS
|
|
SELECT m.mld_melding_key
|
|
FROM mld_melding m
|
|
WHERE m.mld_melding_status = 5 --Afgemeld
|
|
AND TRUNC (m.mld_melding_datum) <
|
|
TO_DATE ('01012021', 'DDMMYYYY');
|
|
|
|
CURSOR c_opdr IS
|
|
SELECT m.mld_melding_key,
|
|
o.mld_opdr_key,
|
|
o.mld_opdr_bedrijfopdr_volgnr
|
|
FROM mld_melding m, mld_opdr o
|
|
WHERE m.mld_melding_key = o.mld_melding_key
|
|
AND m.mld_melding_status IN (5,6) --Afgemeld/Verwerkt
|
|
AND o.mld_statusopdr_key = 6 --Afgemeld
|
|
AND TRUNC (m.mld_melding_datum) <
|
|
TO_DATE ('01012021', 'DDMMYYYY');
|
|
|
|
CURSOR c_res IS
|
|
SELECT res_rsv_ruimte_key, res_reservering_key, res_rsv_ruimte_van
|
|
FROM res_rsv_ruimte
|
|
WHERE res_status_bo_key IN (2, 5)
|
|
AND res_rsv_ruimte_verwijder IS NULL
|
|
AND TRUNC (res_rsv_ruimte_van) <
|
|
TO_DATE ('01012021', 'DDMMYYYY');
|
|
BEGIN
|
|
FOR rec IN c_mld
|
|
LOOP
|
|
UPDATE mld_melding
|
|
SET mld_melding_status = 6
|
|
WHERE mld_melding_key = rec.mld_melding_key;
|
|
|
|
fac.trackaction ('MLDVER',
|
|
rec.mld_melding_key,
|
|
4,
|
|
NULL,
|
|
'Administratief verwerkt');
|
|
END LOOP;
|
|
|
|
FOR rec IN c_opdr
|
|
LOOP
|
|
UPDATE mld_opdr
|
|
SET mld_statusopdr_key = 7
|
|
WHERE mld_opdr_key = rec.mld_opdr_key;
|
|
|
|
fac.trackaction (
|
|
'ORDVER',
|
|
rec.mld_opdr_key,
|
|
4,
|
|
NULL,
|
|
'Opdracht ' || rec.mld_opdr_key || ' is geheel verwerkt');
|
|
END LOOP;
|
|
|
|
FOR rec IN c_res
|
|
LOOP
|
|
UPDATE res_rsv_ruimte
|
|
SET res_status_bo_key = 6
|
|
WHERE res_rsv_ruimte_key = rec.res_rsv_ruimte_key;
|
|
|
|
fac.trackaction ('RESVER',
|
|
rec.res_rsv_ruimte_key,
|
|
4,
|
|
NULL,
|
|
'Administratief verwerkt');
|
|
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
|