-- Copyright (C) 2001,2002 topIT Informationstechnologie GmbH
-- Copyright (C) 2003-2014 independIT Integrative Technologies GmbH

CREATE TABLE HIERARCHY_INSTANCE (
    ID                             NUMBER (38) PRIMARY KEY
    , PARENT_ID                      NUMBER (38)          NOT NULL
    , CHILD_ID                       NUMBER (38)          NOT NULL
    , SH_ID                          NUMBER (38)          NOT NULL
    , NICE                           NUMBER (38)          NOT NULL
    , CHILD_ESD_ID                   NUMBER (38)              NULL
    , CHILD_ES_PREFERENCE            NUMBER (38)              NULL
    , SE_VERSION                     NUMBER (38)          NOT NULL
    , CREATOR_U_ID                   NUMBER (38)          NOT NULL
    , CREATE_TS                      NUMBER (38)          NOT NULL
    , CHANGER_U_ID                   NUMBER (38)          NOT NULL
    , CHANGE_TS                      NUMBER (38)          NOT NULL
);
CREATE OR REPLACE VIEW SCI_HIERARCHY_INSTANCE AS
SELECT 
    ID 
    , PARENT_ID                      AS PARENT_ID
    , CHILD_ID                       AS CHILD_ID
    , SH_ID                          AS SH_ID
    , NICE                           AS NICE
    , CHILD_ESD_ID                   AS CHILD_ESD_ID
    , CHILD_ES_PREFERENCE            AS CHILD_ES_PREFERENCE
    , SE_VERSION                     AS SE_VERSION
    , CREATOR_U_ID                   AS CREATOR_U_ID
    , pkg_time.gmt2local(CREATE_TS) AS CREATE_TS
    , CHANGER_U_ID                   AS CHANGER_U_ID
    , pkg_time.gmt2local(CHANGE_TS) AS CHANGE_TS
  FROM HIERARCHY_INSTANCE;
CREATE TABLE ARC_HIERARCHY_INSTANCE (
    ID                             NUMBER (38) NOT NULL
    , PARENT_ID                      NUMBER (38)           NULL
    , CHILD_ID                       NUMBER (38)           NULL
    , SH_ID                          NUMBER (38)           NULL
    , NICE                           NUMBER (38)           NULL
    , CHILD_ESD_ID                   NUMBER (38)           NULL
    , CHILD_ES_PREFERENCE            NUMBER (38)           NULL
    , SE_VERSION                     NUMBER (38)           NULL
    , CREATOR_U_ID                   NUMBER (38)           NULL
    , CREATE_TS                      NUMBER (38)           NULL
    , CHANGER_U_ID                   NUMBER (38)           NULL
    , CHANGE_TS                      NUMBER (38)           NULL
);
