70 lines
2.7 KiB
SQL
70 lines
2.7 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Script om facturen waarbij het factuurtotaal afwijkt van het factuurregeltotaal te corrigeren
|
|
|
|
|
|
DEFINE thisfile = 'UWVA#55696.SQL'
|
|
DEFINE dbuser = '^UWVA'
|
|
|
|
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 ------
|
|
|
|
UPDATE fin_factuur f
|
|
SET fin_factuur_totaal =
|
|
(SELECT SUM (fin_factuurregel_totaal)
|
|
FROM fin_factuurregel fr
|
|
WHERE f.fin_factuur_key = fr.fin_factuur_key)
|
|
WHERE fin_factuur_key IN (SELECT fin_factuur_key
|
|
FROM (SELECT fin_factuur_key,
|
|
fin_factuur_totaal tot1,
|
|
(SELECT SUM (
|
|
fin_factuurregel_totaal)
|
|
FROM fin_factuurregel fr
|
|
WHERE f.fin_factuur_key =
|
|
fr.fin_factuur_key)
|
|
tot2
|
|
FROM fin_factuur f
|
|
WHERE fin_factuur_verwijder IS NULL
|
|
AND fin_factuur_datum >
|
|
SYSDATE - 300)
|
|
WHERE tot1 != tot2);
|
|
|
|
UPDATE fin_factuur f
|
|
SET fin_factuur_totaal_btw =
|
|
(SELECT SUM (fin_factuurregel_btw)
|
|
FROM fin_factuurregel fr
|
|
WHERE f.fin_factuur_key = fr.fin_factuur_key)
|
|
WHERE fin_factuur_key IN (SELECT fin_factuur_key
|
|
FROM (SELECT fin_factuur_key,
|
|
fin_factuur_totaal_btw tot1,
|
|
(SELECT SUM (fin_factuurregel_btw)
|
|
FROM fin_factuurregel fr
|
|
WHERE f.fin_factuur_key =
|
|
fr.fin_factuur_key)
|
|
tot2
|
|
FROM fin_factuur f
|
|
WHERE fin_factuur_verwijder IS NULL
|
|
AND fin_factuur_datum >
|
|
SYSDATE - 300)
|
|
WHERE tot1 != tot2);
|
|
|
|
------ 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 |