--
-- $Id$
--
-- Hang de kenmerwaarde van nog niet verwerkte facturen om
-- En maak kenmerwaarden aan voor facturen die nog niet verwerkt zijn en nog geen kenmerkwaarde hebben
-- TBV juiste verwerking exact export

DEFINE thisfile = 'PCHD#41392.SQL'
DEFINE dbuser   = '^PCHD'
DEFINE custid   = 'PCHD'

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

-- 7 is status verwerkt
-- 226 is eigen tabel waarde met code 650
-- 2 is kenmerk administratie
UPDATE fin_kenmerkfactuur
   SET fin_kenmerkfactuur_waarde = 226
 WHERE fin_kenmerkfactuur_key IN
             (SELECT fin_kenmerkfactuur_key
                FROM fin_kenmerkfactuur kf, fin_factuur f
               WHERE     kf.fin_factuur_key = f.fin_factuur_key
                     AND fin_factuur_verwijder IS NULL
                     AND fin_kenmerk_key = 2
                     AND fin_factuur_statuses_key != 7
                     AND fin_kenmerkfactuur_waarde != 226);

-- 7 is status verwerkt
-- 226 is eigen tabel waarde met code 650
-- 2 is kenmerk administratie
INSERT INTO fin_kenmerkfactuur (fin_factuur_key, fin_kenmerk_key, fin_kenmerkfactuur_waarde)
   SELECT fin_factuur_key, 2, 226
     FROM fin_factuur f
    WHERE     fin_factuur_verwijder IS NULL
          AND fin_factuur_statuses_key != 7
          AND fin_factuur_verwijder IS NULL
          AND fin_factuur_key NOT IN
                   (SELECT f.fin_factuur_key
                      FROM fin_kenmerkfactuur kf, fin_factuur f
                     WHERE     kf.fin_factuur_key = f.fin_factuur_key
                           AND fin_factuur_verwijder IS NULL
                           AND fin_kenmerk_key = 2
                           AND fin_factuur_statuses_key != 7);


BEGIN adm.systrackscriptid('$Id$'); END;
/

COMMIT;

SPOOL OFF
