diff --git a/onces/KMMO/KMMO#82686.sql b/onces/KMMO/KMMO#82686.sql new file mode 100644 index 000000000..67e5fb725 --- /dev/null +++ b/onces/KMMO/KMMO#82686.sql @@ -0,0 +1,96 @@ +-- $Id$ +-- +-- Script om bij taken met meerdere inspecties in een jaar de laatsten inspecties te verwijderen zodat er één overblijft. +-- +-- +DEFINE thisfile = 'KMMO#82686.SQL' +DEFINE dbuser = '^KMMO' + +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 ------ + +DELETE FROM ins_deelsrtcontrole + WHERE ins_deelsrtcontrole_key IN + (SELECT isc.ins_deelsrtcontrole_key + FROM ins_deelsrtcontrole isc, + (SELECT aantal, + ins_deel_key, + ins_srtcontrole_key, + ins_scenario_key + FROM ( SELECT COUNT(ins_deelsrtcontrole_key) + aantal, + MAX(ins_deelsrtcontrole_key) + max_aantal, + MIN(ins_deelsrtcontrole_key) + min_aantal, + ins_deel_key, + ins_srtcontrole_key, + ins_scenario_key, + EXTRACT( + YEAR FROM ins_deelsrtcontrole_freezedate) + FROM ins_deelsrtcontrole + WHERE ins_deelsrtcontrole_freezedate + IS NOT NULL + AND EXTRACT( + YEAR FROM INS_DEELSRTCONTROLE_FREEZEDATE) = + 2023 + GROUP BY ins_deel_key, + ins_srtcontrole_key, + ins_scenario_key, + EXTRACT( + YEAR FROM ins_deelsrtcontrole_freezedate)) + WHERE aantal > 1) aa + WHERE isc.ins_deel_key = aa.ins_deel_key + AND isc.ins_srtcontrole_key = aa.ins_srtcontrole_key + AND isc.ins_scenario_key = aa.ins_scenario_key + AND isc.ins_scenario_key = 1 + AND EXTRACT(YEAR FROM isc.ins_deelsrtcontrole_freezedate) = 2023 + AND isc.ins_deelsrtcontrole_key NOT IN + (SELECT min_aantal + FROM ( SELECT COUNT(ins_deelsrtcontrole_key) + aantal, + MAX(ins_deelsrtcontrole_key) + max_aantal, + MIN(ins_deelsrtcontrole_key) + min_aantal, + ins_deel_key, + ins_srtcontrole_key, + ins_scenario_key, + EXTRACT( + YEAR FROM ins_deelsrtcontrole_freezedate) + FROM ins_deelsrtcontrole + WHERE ins_deelsrtcontrole_freezedate + IS NOT NULL + AND EXTRACT( + YEAR FROM INS_DEELSRTCONTROLE_FREEZEDATE) = + 2023 + GROUP BY ins_deel_key, + ins_srtcontrole_key, + ins_scenario_key, + EXTRACT( + YEAR FROM ins_deelsrtcontrole_freezedate)) + WHERE aantal > 1)); + +------ 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