From 3f9a46e0fa7ca2afaa8c80abd620054b8581614b Mon Sep 17 00:00:00 2001 From: Maykel Geerdink Date: Thu, 16 May 2024 15:28:19 +0000 Subject: [PATCH] KMMO#82686: Regels in MJOB realisatie komen dubbel voor. svn path=/Customer/; revision=64712 --- onces/KMMO/KMMO#82686.sql | 96 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 onces/KMMO/KMMO#82686.sql 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