--
-- $Id$
--
-- Terugzetten fin_kenmerk met key 2. Tijden de uitvoering van PCHD#41392 is hier de referentie van de het administatienummer ingevuld.
-- De administratie eigen tabel wordt eigenlijk niet meer gebruikt. Deze wordt hier dan ook weggegooid.

DEFINE thisfile = 'PCHW#41595.sql'
DEFINE dbuser   = '^PCH'


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 ------

-- verwijder de afhankelijkheid van het kenmerk grootboekrekening van het kenmerk administratie
UPDATE fac_usrdata
   SET fac_usrdata_parentkey = NULL
 WHERE fac_usrtab_key IN (SELECT fac_usrtab_key
                            FROM fac_usrtab
                           WHERE UPPER (fac_usrtab_naam) = 'GROOTBOEKREKENIN');

UPDATE fac_usrtab
   SET fac_usrtab_parentkey = NULL
 WHERE UPPER (fac_usrtab_naam) = 'GROOTBOEKREKENIN';

-- Pas de data aan en verander de link naar de eigen tabel aan naar de waarde van de administratie
UPDATE fin_kenmerkfactuur
   SET fin_kenmerkfactuur_waarde =
          COALESCE ( (SELECT fac_usrdata_code
                        FROM fac_usrdata
                       WHERE fac_usrdata_key = fin_kenmerkfactuur_waarde),
                    fin_kenmerkfactuur_waarde)
 WHERE fin_kenmerk_key = 2;
   
UPDATE fin_kenmerk
   SET fin_kenmerk_kenmerktype = 'C', fac_kenmerkdomein_key = NULL
 WHERE fin_kenmerk_key = 2;
   
-- Verwijder de eigen tabel administratie voor de FIN module
DELETE fac_kenmerkdomein
 WHERE fac_kenmerkdomein_module = 'FIN' AND fac_kenmerkdomein_upper = 'ADMINISTRATIE';

------ 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

--@@ &custid