--
-- $Id$
--

DEFINE thisfile = 'ARAI#58891.SQL'
DEFINE dbuser   = '^ARAI'

SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT;
WHENEVER SQLERROR CONTINUE;

SELECT adm.getscriptspoolfile ('&thisfile') AS fcltlogfile FROM DUAL;

SPOOL &fcltlogfile
WHENEVER SQLERROR EXIT;

SELECT adm.checkscriptcust ('&dbuser') AS fcltcusterr FROM DUAL;

WHENEVER SQLERROR CONTINUE;
SET DEFINE OFF

------ payload begin ------

-- De objectgroep Liften (groepkey = 101) moet van discipline 841 - gebouwinstallaties naar discipline 1861 - transport

-- Kenmerken op discipline niveau die eerst overgezet moeten worden in ins_kenmerk_deel
--Serienummer 109 --> 1921

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1921
 WHERE     ins_kenmerk_key = 109
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

--Onderhoudspartij 107 --> 1922

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1922
 WHERE     ins_kenmerk_key = 107
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

--Bouwjaar 111 --> 1923

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1923
 WHERE     ins_kenmerk_key = 111
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

--Leverancier 121 --> 1924

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1924
 WHERE     ins_kenmerk_key = 121
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

--Installatienummer 106 --> 1925

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1925
 WHERE     ins_kenmerk_key = 106
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Merk 108 --> 1926

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1926
 WHERE     ins_kenmerk_key = 108
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Referentie 1161 --> 1927

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1927
 WHERE     ins_kenmerk_key = 1161
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Type 110 --> 1928

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1928
 WHERE     ins_kenmerk_key = 110
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 101
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Dan kan de groep Liften omgezet worden van 841 naar 1861

UPDATE ins_srtgroep
   SET ins_discipline_key = 1861
 WHERE ins_srtgroep_key = 101;

COMMIT;


-- De objectgroep Energie (groepkey = 124) moet van discipline 861 - 65.Veligheid naar discipline 1881 - 61.Centrale....

-- Kenmerken op discipline niveau die eerst overgezet moeten worden in ins_kenmerk_deel
-- Serienummer 183 --> 1941

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1941
 WHERE     ins_kenmerk_key = 183
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Onderhoudspartij 185 --> 1942

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1942
 WHERE     ins_kenmerk_key = 185
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Leverancier 182 --> 1943

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1943
 WHERE     ins_kenmerk_key = 182
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Batterij jaar 203 --> 1944

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1944
 WHERE     ins_kenmerk_key = 203
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Bouwjaar 201 --> 1946

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1946
 WHERE     ins_kenmerk_key = 201
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Type 184 --> 1947

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1947
 WHERE     ins_kenmerk_key = 184
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Merk 181 --> 1961

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1961
 WHERE     ins_kenmerk_key = 181
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Batterij type 202 --> 1945

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1945
 WHERE     ins_kenmerk_key = 202
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 124
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Dan kan de groep Energie omgezet worden van 861 naar 1881

UPDATE ins_srtgroep
   SET ins_discipline_key = 1881
 WHERE ins_srtgroep_key = 124;

COMMIT;

-- De objectgroep Noodverlichting (groepkey = 142) moet van discipline 861 - 65.Veligheid naar discipline 1921 - 63.Verlichting
-- Bij objecten uit deze groep zijn geen kenmerken gevuld

UPDATE ins_srtgroep
   SET ins_discipline_key = 1921
 WHERE ins_srtgroep_key = 861;

COMMIT;

-- De objectgroep Meetapparatuur (groepkey = 263) moet van discipline 941 - Meetinstrumenten naar discipline 1901 - 89.Gereedschap

-- Kenmerken op discipline niveau die eerst overgezet moeten worden in ins_kenmerk_deel
-- Merk 402 --> 1981

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1981
 WHERE     ins_kenmerk_key = 402
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 263
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Serienr 404 --> 1982

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1982
 WHERE     ins_kenmerk_key = 404
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 263
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Type 405 --> 1983

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1983
 WHERE     ins_kenmerk_key = 405
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 263
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Onderhoudspartij 403 --> 2001

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 2001
 WHERE     ins_kenmerk_key = 403
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 263
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Gebruiker 1793 --> 2002

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 2002
 WHERE     ins_kenmerk_key = 1793
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 263
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Dan kan de groep Meetapparatuur omgezet worden van 941 naar 1901

UPDATE ins_srtgroep
   SET ins_discipline_key = 1901
 WHERE ins_srtgroep_key = 263;

COMMIT;

--- ook Vast opgestelde machines (groepkey = 301) moeten naar Gereedschap (discipline 1901)

-- Kenmerken op discipline niveau die eerst overgezet moeten worden in ins_kenmerk_deel
-- Merk 702 --> 1981

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1981
 WHERE     ins_kenmerk_key = 702
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 301
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Serienr 705 --> 1982

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1982
 WHERE     ins_kenmerk_key = 705
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 301
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Type 703 --> 1983

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1983
 WHERE     ins_kenmerk_key = 703
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 301
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Onderhoudspartij 704 --> 2001

UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 2001
 WHERE     ins_kenmerk_key = 704
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s, ins_srtgroep g
                 WHERE     g.ins_srtgroep_key = 301
                       AND g.ins_srtgroep_key = s.ins_srtgroep_key
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Dan kan de groep Vast opgestelde machines omgezet worden van 921 naar 1901

UPDATE ins_srtgroep
   SET ins_discipline_key = 1901
 WHERE ins_srtgroep_key = 921;

COMMIT;

-- De objectsoorten Roltrappen A (103) en Roltrappen B (104) moeten van groep Roltrappen (102) naar groep 66.2 Roltrappen (1181)

-- Er zijn alleen kenmerken op discipline niveau, omdat de discipline door deze shuffle ook anders worden de kenmerken eerst overzetten.
-- Type 110 --> 1928
UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1928
 WHERE     ins_kenmerk_key = 110
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s
                 WHERE   s.ins_srtdeel_key in (103, 104)
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Bouwjaar 111 --> 1923
UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1923
 WHERE     ins_kenmerk_key = 111
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s
                 WHERE   s.ins_srtdeel_key in (103, 104)
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Leverancier 121 --> 1924
UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1924
 WHERE     ins_kenmerk_key = 121
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s
                 WHERE   s.ins_srtdeel_key in (103, 104)
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Serienummer 109 --> 1921
UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1921
 WHERE     ins_kenmerk_key = 109
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s
                 WHERE   s.ins_srtdeel_key in (103, 104)
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);

-- Installatienummer 106 --> 1925
UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1925
 WHERE     ins_kenmerk_key = 106
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s
                 WHERE   s.ins_srtdeel_key in (103, 104)
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);        

-- Onderhoudspartij 107 --> 1922
UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1922
 WHERE     ins_kenmerk_key = 107
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s
                 WHERE   s.ins_srtdeel_key in (103, 104)
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key);         
                       
-- Merk 108 --> 1926
UPDATE ins_kenmerkdeel
   SET ins_kenmerk_key = 1926
 WHERE     ins_kenmerk_key = 108
       AND ins_deel_key IN
               (SELECT d.ins_deel_key
                  FROM ins_deel d, ins_srtdeel s
                 WHERE   s.ins_srtdeel_key in (103, 104)
                       AND s.ins_srtdeel_key = d.ins_srtdeel_key); 
 
--- Dan kunnen de soorten Roltrappen A en Roltrappen B omvergezet worden naar een andere groep                        
UPDATE ins_srtdeel
   SET ins_srtgroep_key = 1181
 WHERE ins_srtdeel_key IN (103, 104);
 
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