SKAF#76053 -- Periodieke taken herstelscript startdatum om taken in 2023 netjes getoond te krijgen (intern ticket SKAF#80060)

svn path=/Customer/; revision=61794
This commit is contained in:
Jos Migo
2023-09-14 07:03:26 +00:00
parent c01453a7e6
commit bc9c7bf925

View File

@@ -0,0 +1,110 @@
-- $Id$
--
-- Herstelscript om de startdatum van de xcp-records voor de NIET-mjob-taken op te schuiven zodat deze in console-2023 naar voren komen.
--- Zie intern ticket SKAF#80060 Periodieke controle-taken worden onterecht niet getoond
--
--
DEFINE thisfile = 'SKAF#76053_taken_2.SQL'
DEFINE dbuser = '^SKAF'
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
v_errormsg VARCHAR (200);
v_errorhint VARCHAR (200);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (150);
currentversion fac_module.fac_module_version%TYPE;
v_aanduiding VARCHAR (200);
v_count NUMBER;
v_ins_deel_key NUMBER;
v_ins_srtcontrole_key NUMBER;
v_ins_srtcontroledl_xcp_key NUMBER;
v_teller_xcptaken NUMBER := 0 ;
p_import_key NUMBER;
CURSOR C
IS
SELECT xcp.ins_srtcontroledl_xcp_key, d.ins_deel_key, d.ins_deel_upper, sc.ins_srtcontrole_omschrijving
FROM ins_srtcontroledl_xcp xcp, ins_srtcontrole sc, ins_deel d
WHERE xcp.ins_srtcontrole_key = sc.ins_srtcontrole_key
AND xcp.ins_srtcontroledl_xcp_startdat =
TO_DATE ('01-01-2023', 'dd-mm-yyyy')
AND xcp.ins_deel_key = d.ins_deel_key
AND d.ins_deel_aanmaak =
TO_DATE ('01-01-2023', 'dd-mm-yyyy')
AND sc.ctr_discipline_key IN (921, 922, 923) ;
BEGIN
FOR rec IN c
LOOP
BEGIN
-- v_ins_deel_key := NULL;
-- v_ins_srtcontrole_key := NULL ;
-- v_ins_srtcontroledl_xcp_key := NULL;
v_aanduiding := 'Taak-xcp ' || rec.ins_srtcontrole_omschrijving || ' / object ' || rec.ins_deel_upper ;
v_errorhint := 'updaten datum';
UPDATE ins_srtcontroledl_xcp xcp
SET xcp.ins_srtcontroledl_xcp_startdat = TO_DATE ('02-01-2023', 'dd-mm-yyyy')
WHERE xcp.ins_srtcontroledl_xcp_key = rec.ins_srtcontroledl_xcp_key ;
BEGIN fac.trackaction('#INSUPD', rec.ins_deel_key, 4, NULL, rec.ins_srtcontrole_omschrijving || 'is gewijzigd' || CHR(10) || 'Startdatum: 01-01-2023 00:00 --> 02-01-2023 00:00'); END;
v_teller_xcptaken := v_teller_xcptaken + 1 ;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
-- fac.imp_writelog (p_import_key, 'E', v_aanduiding || v_errormsg, v_errorhint);
fac.writelog ('HERSTEL_STARTDATUM', 'E', v_aanduiding || v_errormsg, v_errorhint);
END;
END LOOP;
-- logging wegschrijven
fac.writelog ('HERSTEL_STARTDATUM',
'I',
'Totaal gemuteerde xcp_taken: ' || TO_CHAR(v_teller_xcptaken),
'');
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