KMMO#82686: Regels in MJOB realisatie komen dubbel voor.
svn path=/Customer/; revision=64712
This commit is contained in:
96
onces/KMMO/KMMO#82686.sql
Normal file
96
onces/KMMO/KMMO#82686.sql
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
-- $Id$
|
||||||
|
--
|
||||||
|
-- Script om bij taken met meerdere inspecties in een jaar de laatsten inspecties te verwijderen zodat er <20><>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
|
||||||
Reference in New Issue
Block a user