82 lines
2.3 KiB
SQL
82 lines
2.3 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Status van alle afgemelde Wiltec-opdrachten met een bedrag naar Afgerond op
|
|
-- 31-05-2021!
|
|
DEFINE thisfile = 'KFSG#61123_afronden.SQL'
|
|
DEFINE dbuser = '^KFSG'
|
|
|
|
SET ECHO ON
|
|
SET DEFINE ON
|
|
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
|
WHENEVER SQLERROR EXIT;
|
|
SELECT adm.scriptspoolfile('&dbuser', '&thisfile') AS fcltlogfile FROM DUAL;
|
|
WHENEVER SQLERROR CONTINUE;
|
|
SPOOL &fcltlogfile
|
|
SET DEFINE OFF
|
|
|
|
------ payload begin ------
|
|
|
|
SET SERVEROUTPUT ON size 1000000;
|
|
|
|
DECLARE
|
|
v_errormsg VARCHAR2 (1000);
|
|
oracle_err_num NUMBER;
|
|
oracle_err_mes VARCHAR2 (200);
|
|
v_count NUMBER;
|
|
BEGIN
|
|
v_count := 0;
|
|
|
|
-- Cursor loopt over alle afgemelde Wiltec-opdrachten met een bedrag; deze
|
|
-- krijgen de status Afgerond!
|
|
FOR rc
|
|
IN ( SELECT o.mld_opdr_key
|
|
FROM mld_opdr o
|
|
WHERE o.mld_statusopdr_key = 6
|
|
AND o.mld_opdr_kosten > 0
|
|
AND o.mld_uitvoerende_keys = 31041 -- Wiltec
|
|
ORDER BY o.mld_opdr_key)
|
|
LOOP
|
|
BEGIN
|
|
MLD.setopdrachtstatus (rc.mld_opdr_key, 9, NULL);
|
|
|
|
-- Afronding antedateren naar 31-05-2021.
|
|
UPDATE fac_tracking
|
|
SET fac_tracking_datum = TRUNC (SYSDATE, 'mm') - 1,
|
|
fac_tracking_oms = 'Via script naar Afgerond op 31-05-2021'
|
|
WHERE TRUNC (fac_tracking_datum) = TRUNC (SYSDATE)
|
|
AND fac_srtnotificatie_key = 76 -- ORDAFR
|
|
AND fac_tracking_refkey = rc.mld_opdr_key;
|
|
|
|
v_count := v_count + 1;
|
|
COMMIT;
|
|
EXCEPTION
|
|
WHEN OTHERS
|
|
THEN
|
|
oracle_err_num := SQLCODE;
|
|
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
|
v_errormsg := v_errormsg || ' ORACLE (error ' || oracle_err_num || '/' || oracle_err_mes || ')';
|
|
DBMS_OUTPUT.PUT_LINE ('W: ' || v_errormsg);
|
|
COMMIT;
|
|
END;
|
|
END LOOP;
|
|
|
|
DBMS_OUTPUT.PUT_LINE ('S: ' || TO_CHAR (v_count) || ' Wiltec-opdrachten van Afgemeld naar Afgerond');
|
|
COMMIT;
|
|
END;
|
|
/
|
|
|
|
COMMIT;
|
|
|
|
------ 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
|