--
-- $Id$
--
-- Bij srtcontrole Eenheid = Jaarlijks en ins_srtcontrole_mode = Moment modus (0) is ins_srtcontroledl_xcp_bits voortaan in bitjes
-- want je kunt nu meerdere maanden selecteren (IVET#39761), dit was voor de overrule (xcp) nog niet aangepast.
-- Dat wordt gepatched in 2018.2 (met AKZA#55674) en deze query update de desbetreffende ins_srtcontroledl_xcp_bits
-- van een maandnr (1 >= ins_srtcontroledl_xcp_bits >= 12) naar bits (1 >= ins_srtcontroledl_xcp_bits >= 4095)
--
-- Aanpassing voor ALLE gebruikers (met inspecties en overrules)

DEFINE thisfile = 'AKZA#55674.SQL'
DEFINE dbuser   = '*'

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 ins_srtcontroledl_xcp xcp
   SET xcp.ins_srtcontroledl_xcp_bits =
           POWER (2, xcp.ins_srtcontroledl_xcp_bits - 1)
 WHERE     EXISTS
               (SELECT ''
                  FROM ins_v_defined_inspect di
                 WHERE     di.ins_deel_key = xcp.ins_deel_key
                       AND di.ins_srtcontrole_key = xcp.ins_srtcontrole_key
                       AND di.ins_srtcontrole_mode = 0)
       AND COALESCE (
               ins_srtcontroledl_xcp_eenheid,
               (SELECT di.ins_srtcontrole_eenheid
                  FROM ins_v_defined_inspect di
                 WHERE     di.ins_deel_key = xcp.ins_deel_key
                       AND di.ins_srtcontrole_key = xcp.ins_srtcontrole_key)) =
           4;

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