/*==============================================================*/
/* DBMS name:      ORACLE Version 8i2 (8.1.6)                   */
/* Created on:     05/07/2005 02:45:12 p.m.                     */
/*==============================================================*/


/*==============================================================*/
/* Table: CONCONSECDIST                                         */
/*==============================================================*/
CREATE TABLE CONCONSECDIST  (
   COD_CIA              CHAR(3)                         NOT NULL,
   SISTEMA              CHAR(4)                         NOT NULL,
   CONSECUTIVO          NUMBER(10)                      NOT NULL,
   DESCRIPCION          VARCHAR2(30)                    NOT NULL,
   TABLA                VARCHAR2(30)                    NOT NULL,
   CONSTRAINT CONCONSECDIST_PK PRIMARY KEY (COD_CIA, SISTEMA)
);

/*==============================================================*/
/* Table: CONDETDISTRIBUCION                                    */
/*==============================================================*/
CREATE TABLE CONDETDISTRIBUCION  (
   COD_CIA              CHAR(3)                         NOT NULL,
   DISTRIBUCION         NUMBER(10)                      NOT NULL,
   LINEA                NUMBER(4)                       NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   DESCRIPCION          VARCHAR2(40),
   DEBITO               NUMBER(14,2)                    NOT NULL,
   CREDITO              NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CONDETDISTRIBUCION_PK PRIMARY KEY (COD_CIA, DISTRIBUCION, LINEA)
);

/*==============================================================*/
/* Index: CONDISTRIBUCION_DETALLE_FK                            */
/*==============================================================*/
CREATE INDEX CONDISTRIBUCION_DETALLE_FK ON CONDETDISTRIBUCION (
   COD_CIA ASC,
   DISTRIBUCION ASC
);

/*==============================================================*/
/* Table: CONDETINTERFAZ                                        */
/*==============================================================*/
CREATE TABLE CONDETINTERFAZ  (
   COD_CIA              CHAR(3)                         NOT NULL,
   INTERFAZ             VARCHAR2(10)                    NOT NULL,
   NOMVAR               VARCHAR2(10)                    NOT NULL,
   TIPO                 CHAR(1)                         NOT NULL
      CONSTRAINT CONDETINTERFAZ_TIPO_CK CHECK (TIPO IN ('F','N','T')),
   VALOROMISION         VARCHAR2(30),
   CONSTRAINT CONDETINTERFAZ_PK PRIMARY KEY (COD_CIA, INTERFAZ, NOMVAR)
);

/*==============================================================*/
/* Index: CONINTERFAZ_DET_FK                                    */
/*==============================================================*/
CREATE INDEX CONINTERFAZ_DET_FK ON CONDETINTERFAZ (
   COD_CIA ASC,
   INTERFAZ ASC
);

/*==============================================================*/
/* Table: CONDETPLANTILLA                                       */
/*==============================================================*/
CREATE TABLE CONDETPLANTILLA  (
   COD_CIA              CHAR(3)                         NOT NULL,
   PLANTILLA            VARCHAR2(10)                    NOT NULL,
   LINEA                NUMBER(4)                       NOT NULL,
   FCTA                 VARCHAR2(256)                   NOT NULL,
   FCCOSTO              VARCHAR2(256)                   NOT NULL,
   FTIPSALDO            VARCHAR2(256)                   NOT NULL,
   FMONTO               VARCHAR2(256)                   NOT NULL,
   CONSTRAINT CONDETPLANTILLA_PK PRIMARY KEY (COD_CIA, PLANTILLA, LINEA)
);

/*==============================================================*/
/* Index: CONPLANTILLA_DETALLE_FK                               */
/*==============================================================*/
CREATE INDEX CONPLANTILLA_DETALLE_FK ON CONDETPLANTILLA (
   COD_CIA ASC,
   PLANTILLA ASC
);

/*==============================================================*/
/* Table: CONDISTRIBUCION                                       */
/*==============================================================*/
CREATE TABLE CONDISTRIBUCION  (
   COD_CIA              CHAR(3)                         NOT NULL,
   DISTRIBUCION         NUMBER(10)                      NOT NULL,
   FECHA                DATE                            NOT NULL,
   ORIGEN               CHAR(3)                         NOT NULL,
   ASIENTO              VARCHAR2(15),
   CONSTRAINT CONDISTRIBUCION_PK PRIMARY KEY (COD_CIA, DISTRIBUCION)
);

/*==============================================================*/
/* Table: CONINTERFAZ                                           */
/*==============================================================*/
CREATE TABLE CONINTERFAZ  (
   COD_CIA              CHAR(3)                         NOT NULL,
   INTERFAZ             VARCHAR2(10)                    NOT NULL,
   DESCRIPCION          VARCHAR2(30)                    NOT NULL,
   CONSTRAINT CONINTERFAZ_PK PRIMARY KEY (COD_CIA, INTERFAZ)
);

/*==============================================================*/
/* Table: CONPLANTILLA                                          */
/*==============================================================*/
CREATE TABLE CONPLANTILLA  (
   COD_CIA              CHAR(3)                         NOT NULL,
   PLANTILLA            VARCHAR2(10)                    NOT NULL,
   INTERFAZ             VARCHAR2(10)                    NOT NULL,
   DESCRIPCION          VARCHAR2(60)                    NOT NULL,
   MONEDA               VARCHAR2(3)                     NOT NULL,
   CONSTRAINT CONPLANTILLA_PK PRIMARY KEY (COD_CIA, PLANTILLA)
);

/*==============================================================*/
/* Index: CONINTERFAZ_PLANTILLA_FK                              */
/*==============================================================*/
CREATE INDEX CONINTERFAZ_PLANTILLA_FK ON CONPLANTILLA (
   COD_CIA ASC,
   INTERFAZ ASC
);

/*==============================================================*/
/* Table: CON_CCDESCR                                           */
/*==============================================================*/
CREATE TABLE CON_CCDESCR  (
   COD_CIA              CHAR(3)                         NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   DESCRIPCION          VARCHAR2(79)                    NOT NULL,
   CONSTRAINT CON_CCDESCR_PK PRIMARY KEY (COD_CIA, CCOSTO)
)
INITRANS 1
STORAGE
(
    INITIAL 10K
    NEXT 10K
);

/*==============================================================*/
/* Index: CONPARAMETRO_CCDESCR_FK                               */
/*==============================================================*/
CREATE INDEX CONPARAMETRO_CCDESCR_FK ON CON_CCDESCR (
   COD_CIA ASC
);

/*==============================================================*/
/* Table: CON_CCINVAL                                           */
/*==============================================================*/
CREATE TABLE CON_CCINVAL  (
   COD_CIA              CHAR(3)                         NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   EXHIJOS              CHAR(1)                         NOT NULL
      CONSTRAINT CON_CCINVAL_EXHIJOS_CK CHECK (EXHIJOS IN ('S','N')),
   CONSTRAINT CON_CCINVAL_PK PRIMARY KEY (COD_CIA, CCOSTO)
)
INITRANS 1
STORAGE
(
    INITIAL 10K
    NEXT 10K
);

/*==============================================================*/
/* Index: CONPARAMETRO_CCINVAL_FK                               */
/*==============================================================*/
CREATE INDEX CONPARAMETRO_CCINVAL_FK ON CON_CCINVAL (
   COD_CIA ASC
);

/*==============================================================*/
/* Table: CON_CLASE_CTA                                         */
/*==============================================================*/
CREATE TABLE CON_CLASE_CTA  (
   COD_CIA              CHAR(3)                         NOT NULL,
   CLASE_CTA            CHAR(2)                         NOT NULL,
   DES_CLASE            VARCHAR2(30)                    NOT NULL,
   CONSTRAINT CON_CLASE_CTA_PK PRIMARY KEY (COD_CIA, CLASE_CTA)
);

/*==============================================================*/
/* Table: CON_COMP                                              */
/*==============================================================*/
CREATE TABLE CON_COMP  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ORDINAL              NUMBER(2)                       NOT NULL,
   CODIGO               VARCHAR2(2)                     NOT NULL,
   NOMBRE               VARCHAR2(15)                    NOT NULL,
   CONSTRAINT CON_COMP_PK PRIMARY KEY (COD_CIA, ORDINAL, CODIGO)
);

/*==============================================================*/
/* Index: CONNOMCOMP_COMP_FK                                    */
/*==============================================================*/
CREATE INDEX CONNOMCOMP_COMP_FK ON CON_COMP (
   COD_CIA ASC,
   ORDINAL ASC
);

/*==============================================================*/
/* Table: CON_CONSEC_ASIE                                       */
/*==============================================================*/
CREATE TABLE CON_CONSEC_ASIE  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ANO_FISCAL           NUMBER(4)                       NOT NULL,
   PER_PROCESO          NUMBER(2)                       NOT NULL,
   NUM_CONSECUTIVO      NUMBER(6)                      DEFAULT 1 NOT NULL,
   CONSTRAINT CON_CONSEC_ASIE_PK PRIMARY KEY (COD_CIA, ANO_FISCAL, PER_PROCESO)
);

/*==============================================================*/
/* Table: CON_CONSOLIDA_SALDOS                                  */
/*==============================================================*/
CREATE TABLE CON_CONSOLIDA_SALDOS  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ANO_FISCAL           NUMBER(4)                       NOT NULL,
   PER_PROCESO          NUMBER(2)                       NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   COD_MONEDA           VARCHAR2(3)                     NOT NULL,
   MON_CREDITO          NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_CONSOLIDASALDOS_CREDITO_CK CHECK (MON_CREDITO >= 0),
   MON_DEBITO           NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_CONSOLIDASALDOS_DEBITO_CK CHECK (MON_DEBITO >= 0),
   SAL_INICIO           NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_CONSOLIDA_SALDOS_PK PRIMARY KEY (COD_CIA, ANO_FISCAL, PER_PROCESO, COD_CTA, CCOSTO, COD_MONEDA)
);

/*==============================================================*/
/* Index: CONCUENTA_CONSOLIDA_FK                                */
/*==============================================================*/
CREATE INDEX CONCUENTA_CONSOLIDA_FK ON CON_CONSOLIDA_SALDOS (
   COD_CIA ASC,
   COD_CTA ASC
);

/*==============================================================*/
/* Table: CON_CUENTA                                            */
/*==============================================================*/
CREATE TABLE CON_CUENTA  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   DESCRIPCION          VARCHAR2(40)                    NOT NULL,
   NIVEL                NUMBER(2)                       NOT NULL
      CONSTRAINT CON_CUENTA_NIVEL_CK CHECK (NIVEL BETWEEN 1 AND 9),
   CLASE                CHAR(2)                         NOT NULL,
   TIPO                 CHAR(1)                         NOT NULL
      CONSTRAINT CON_CUENTA_TIPO_CK CHECK (TIPO IN ('C','O','A','P','S','G','I','K')),
   SALDONORMAL          CHAR(1)                         NOT NULL
      CONSTRAINT CON_CUENTA_SALDONORMA_CK CHECK (SALDONORMAL IN ('D','C')),
   COD_MONEDA           VARCHAR2(3)                     NOT NULL,
   ESDETALLE            CHAR(1)                         NOT NULL
      CONSTRAINT CON_CUENTA_ESDETALLE_CK CHECK (ESDETALLE IN ('S','N')),
   BLOQUEO              VARCHAR2(25),
   CTA_SUPERIOR         VARCHAR2(25),
   CTA_AJUDIFCAM        VARCHAR2(25),
   CONSTRAINT CON_CUENTA_PK PRIMARY KEY (COD_CIA, COD_CTA)
);

/*==============================================================*/
/* Index: CONCUENTA_CTASUP_FK                                   */
/*==============================================================*/
CREATE INDEX CONCUENTA_CTASUP_FK ON CON_CUENTA (
   COD_CIA ASC,
   CTA_SUPERIOR ASC
);

/*==============================================================*/
/* Index: CONCUENTA_CLASE_FK                                    */
/*==============================================================*/
CREATE INDEX CONCUENTA_CLASE_FK ON CON_CUENTA (
   COD_CIA ASC,
   CLASE ASC
);

/*==============================================================*/
/* Index: CONCUENTA_PARAMETRO_FK                                */
/*==============================================================*/
CREATE INDEX CONCUENTA_PARAMETRO_FK ON CON_CUENTA (
   COD_CIA ASC
);

/*==============================================================*/
/* Index: CONCUENTA_CTAAJU_FK                                   */
/*==============================================================*/
CREATE INDEX CONCUENTA_CTAAJU_FK ON CON_CUENTA (
   COD_CIA ASC,
   CTA_AJUDIFCAM ASC
);

/*==============================================================*/
/* Table: CON_DEFPRE                                            */
/*==============================================================*/
CREATE TABLE CON_DEFPRE  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   IND_FIJO             CHAR(1)                         NOT NULL,
   PORCENTAJE           VARCHAR2(7),
   CONSTRAINT CON_DEFPRE_PK PRIMARY KEY (COD_CIA, COD_CTA, CCOSTO)
);

/*==============================================================*/
/* Index: CONCUENTA_DEFPRE_FK                                   */
/*==============================================================*/
CREATE INDEX CONCUENTA_DEFPRE_FK ON CON_DEFPRE (
   COD_CIA ASC,
   COD_CTA ASC
);

/*==============================================================*/
/* Table: CON_DET_ASIENTO                                       */
/*==============================================================*/
CREATE TABLE CON_DET_ASIENTO  (
   COD_CIA              CHAR(3)                         NOT NULL,
   NUM_ASIENTO          VARCHAR2(15)                    NOT NULL,
   NUM_LINEA            NUMBER(4)                       NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                    DEFAULT '0' NOT NULL,
   DES_LINEA            VARCHAR2(40),
   FEC_DOCTO            DATE                            NOT NULL,
   DEBITOS              NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_DET_ASIENTO_MONLINEA_CK CHECK (DEBITOS >= 0),
   CREDITOS             NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_DET_ASIENTO_PK PRIMARY KEY (COD_CIA, NUM_ASIENTO, NUM_LINEA)
);

/*==============================================================*/
/* Index: CONENCASIENTO_DETASI_FK                               */
/*==============================================================*/
CREATE INDEX CONENCASIENTO_DETASI_FK ON CON_DET_ASIENTO (
   COD_CIA ASC,
   NUM_ASIENTO ASC
);

/*==============================================================*/
/* Index: CONCUENTA_DETASI_FK                                   */
/*==============================================================*/
CREATE INDEX CONCUENTA_DETASI_FK ON CON_DET_ASIENTO (
   COD_CIA ASC,
   COD_CTA ASC
);

/*==============================================================*/
/* Table: CON_DOCTO                                             */
/*==============================================================*/
CREATE TABLE CON_DOCTO  (
   TIP_DOC              VARCHAR2(2)                     NOT NULL,
   NOM_DOC              VARCHAR2(25)                    NOT NULL,
   CONSTRAINT CON_DOCTO_PK PRIMARY KEY (TIP_DOC)
);

/*==============================================================*/
/* Table: CON_ENC_ASIENTO                                       */
/*==============================================================*/
CREATE TABLE CON_ENC_ASIENTO  (
   COD_CIA              CHAR(3)                         NOT NULL,
   NUM_ASIENTO          VARCHAR2(15)                    NOT NULL,
   ANO_FISCAL           NUMBER(4)                       NOT NULL,
   PER_PROCESO          NUMBER(2)                       NOT NULL,
   INTEGRACION          CHAR(4),
   FEC_PROCESO          DATE                            NOT NULL,
   DES_ASIENTO          VARCHAR2(240),
   TIP_DOC              VARCHAR2(2)                     NOT NULL,
   NUM_DOC              VARCHAR2(15),
   COD_MONEDA           VARCHAR2(3)                     NOT NULL,
   TIP_CAMBIO           NUMBER(14,4)                    NOT NULL,
   TIP_CAMBIO_BASE      NUMBER(14,4)                    NOT NULL,
   DES_USUARIO          VARCHAR2(30)                    NOT NULL,
   EST_ACTUAL           CHAR(1)                         NOT NULL
      CONSTRAINT CON_ENC_ASIENTO_ESTADO_CK CHECK (EST_ACTUAL IN ('A','P','N')),
   DEBITOS              NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_ENC_ASIENTO_DEBITOS_CK CHECK (DEBITOS >= 0),
   CREDITOS             NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_ENC_ASIENTO_CREDITOS_CK CHECK (CREDITOS >= 0),
   CONSTRAINT CON_ENC_ASIENTO_PK PRIMARY KEY (COD_CIA, NUM_ASIENTO)
);

/*==============================================================*/
/* Index: CONENCASIENTO_DOCTO_FK                                */
/*==============================================================*/
CREATE INDEX CONENCASIENTO_DOCTO_FK ON CON_ENC_ASIENTO (
   TIP_DOC ASC
);

/*==============================================================*/
/* Index: CONENCASIENTO_PERIODO                                 */
/*==============================================================*/
CREATE INDEX CONENCASIENTO_PERIODO ON CON_ENC_ASIENTO (
   COD_CIA ASC,
   ANO_FISCAL ASC,
   PER_PROCESO ASC
);

/*==============================================================*/
/* Table: CON_GFCC                                              */
/*==============================================================*/
CREATE TABLE CON_GFCC  (
   COD_CIA              CHAR(3)                         NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   PORCENTAJE           NUMBER(5,2)                    
      CONSTRAINT CON_GFCC_PORCENTAJE_CK CHECK (PORCENTAJE IS NULL OR (PORCENTAJE BETWEEN 0 AND 100 )),
   FORMULA              VARCHAR2(100),
   CONSTRAINT CON_GFCC_PK PRIMARY KEY (CCOSTO, COD_CIA)
);

/*==============================================================*/
/* Table: CON_GFCTAS                                            */
/*==============================================================*/
CREATE TABLE CON_GFCTAS  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                    DEFAULT '0' NOT NULL,
   DESCENDIENTES        CHAR(1)                        DEFAULT 'N' NOT NULL
      CONSTRAINT CON_GFCTAS_DESCENDIEN_CK CHECK (DESCENDIENTES IN ('S','N')),
   DISTRIBUCION         CHAR(1)                         NOT NULL
      CONSTRAINT CON_GFCTAS_DISTRIBUCION_CK CHECK (DISTRIBUCION IN ('U','I','F','V','%')),
   CONSTRAINT CON_GFCTAS_PK PRIMARY KEY (COD_CIA, COD_CTA, CCOSTO)
);

/*==============================================================*/
/* Index: CONCUENTA_GFCTAS_FK                                   */
/*==============================================================*/
CREATE INDEX CONCUENTA_GFCTAS_FK ON CON_GFCTAS (
   COD_CIA ASC,
   COD_CTA ASC
);

/*==============================================================*/
/* Table: CON_GFCTAS_CC                                         */
/*==============================================================*/
CREATE TABLE CON_GFCTAS_CC  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   CCOSTO_DIST          VARCHAR2(7)                     NOT NULL,
   PORCENTAJE           NUMBER(5,2)                    
      CONSTRAINT CON_GFCTAS_CC_PORCENTAJE_CK CHECK (PORCENTAJE IS NULL OR (PORCENTAJE BETWEEN 0 AND 100 )),
   FORMULA              VARCHAR2(100),
   CONSTRAINT CON_GFCTAS_CC_PK PRIMARY KEY (COD_CIA, COD_CTA, CCOSTO, CCOSTO_DIST)
);

/*==============================================================*/
/* Index: CONGFCTAS_GFCTASCC_FK                                 */
/*==============================================================*/
CREATE INDEX CONGFCTAS_GFCTASCC_FK ON CON_GFCTAS_CC (
   COD_CIA ASC,
   COD_CTA ASC,
   CCOSTO ASC
);

/*==============================================================*/
/* Table: CON_HIS_DET_ASIENTO                                   */
/*==============================================================*/
CREATE TABLE CON_HIS_DET_ASIENTO  (
   COD_CIA              CHAR(3)                         NOT NULL,
   NUM_ASIENTO          VARCHAR2(15)                    NOT NULL,
   NUM_LINEA            NUMBER(4)                       NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   DES_LINEA            VARCHAR2(40),
   FEC_DOCTO            DATE                            NOT NULL,
   DEBITOS              NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_HIS_DETASIENTO_MONLINEA_CK CHECK (DEBITOS >= 0),
   CREDITOS             NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_HIS_DET_ASIENTO_PK PRIMARY KEY (COD_CIA, NUM_ASIENTO, NUM_LINEA)
);

/*==============================================================*/
/* Table: CON_HIS_ENC_ASIENTO                                   */
/*==============================================================*/
CREATE TABLE CON_HIS_ENC_ASIENTO  (
   COD_CIA              CHAR(3)                         NOT NULL,
   NUM_ASIENTO          VARCHAR2(15)                    NOT NULL,
   ANO_FISCAL           NUMBER(4)                       NOT NULL,
   PER_PROCESO          NUMBER(2)                       NOT NULL,
   FEC_PROCESO          DATE                            NOT NULL,
   DES_ASIENTO          VARCHAR2(240),
   TIP_DOC              VARCHAR2(2)                     NOT NULL,
   NUM_DOC              VARCHAR2(15),
   COD_MONEDA           VARCHAR2(3)                     NOT NULL,
   TIP_CAMBIO           NUMBER(14,4)                    NOT NULL,
   TIP_CAMBIO_BASE      NUMBER(14,4)                    NOT NULL,
   DES_USUARIO          VARCHAR2(30)                    NOT NULL,
   EST_ACTUAL           CHAR(1)                         NOT NULL,
   DEBITOS              NUMBER(14,2)                    NOT NULL,
   CREDITOS             NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_HIS_ENC_ASIENTO_PK PRIMARY KEY (COD_CIA, NUM_ASIENTO)
);

/*==============================================================*/
/* Table: CON_HIS_SALDO_CONTA                                   */
/*==============================================================*/
CREATE TABLE CON_HIS_SALDO_CONTA  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ANO_FISCAL           NUMBER(4)                       NOT NULL,
   PER_PROCESO          NUMBER(2)                       NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   COD_MONEDA           VARCHAR2(3)                     NOT NULL,
   MON_CREDITO          NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_HIS_SALDO_CONTA_MONCRED_CK CHECK (MON_CREDITO >= 0),
   MON_DEBITO           NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_HIS_SALDO_CONTA_MONDEB_CK CHECK (MON_DEBITO >= 0),
   SAL_INICIO           NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_HIS_SALDO_CONTA_PK PRIMARY KEY (COD_CIA, ANO_FISCAL, PER_PROCESO, COD_CTA, CCOSTO, COD_MONEDA)
);

/*==============================================================*/
/* Table: CON_NOMCOMP                                           */
/*==============================================================*/
CREATE TABLE CON_NOMCOMP  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ORDINAL              NUMBER(2)                       NOT NULL,
   NOMBRE               VARCHAR2(15)                    NOT NULL,
   CONSTRAINT CON_NOMCOMP_PK PRIMARY KEY (COD_CIA, ORDINAL)
);

/*==============================================================*/
/* Index: CONPARAMETRO_NOMCOMP_FK                               */
/*==============================================================*/
CREATE INDEX CONPARAMETRO_NOMCOMP_FK ON CON_NOMCOMP (
   COD_CIA ASC
);

/*==============================================================*/
/* Table: CON_PARAMETRO                                         */
/*==============================================================*/
CREATE TABLE CON_PARAMETRO  (
   COD_CIA              CHAR(3)                         NOT NULL,
   FOR_CCOSTO           VARCHAR2(15)                    NOT NULL,
   FOR_CTA              VARCHAR2(25)                    NOT NULL,
   FOR_ASIENTO          VARCHAR2(15)                    NOT NULL,
   COMPS_CC             NUMBER(2)                       NOT NULL,
   CONSTRAINT CON_PARAMETRO_PK PRIMARY KEY (COD_CIA)
);

/*==============================================================*/
/* Table: CON_PRE                                               */
/*==============================================================*/
CREATE TABLE CON_PRE  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ANO_FISCAL           NUMBER(4)                       NOT NULL,
   PER_PROCESO          NUMBER(2)                       NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   COD_MONEDA           VARCHAR2(3)                     NOT NULL,
   MON_CREDITO          NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_PRE_MON_CREDITO_CK CHECK (MON_CREDITO >= 0),
   MON_DEBITO           NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_PRE_MON_DEBITO_CK CHECK (MON_DEBITO >= 0),
   MONTO_ACU            NUMBER(14,2)                    NOT NULL,
   MVCD                 NUMBER(14,2)                    NOT NULL,
   MVSI                 NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_PRE_PK PRIMARY KEY (COD_CIA, ANO_FISCAL, PER_PROCESO, COD_CTA, CCOSTO, COD_MONEDA)
);

/*==============================================================*/
/* Index: CONCUENTA_PRE_FK                                      */
/*==============================================================*/
CREATE INDEX CONCUENTA_PRE_FK ON CON_PRE (
   COD_CIA ASC,
   COD_CTA ASC
);

/*==============================================================*/
/* Table: CON_PREAJUS                                           */
/*==============================================================*/
CREATE TABLE CON_PREAJUS  (
   COD_CIA              CHAR(3)                         NOT NULL,
   NOMBRE               VARCHAR2(7)                     NOT NULL,
   PORCENTAJE           NUMBER(5,2)                     NOT NULL,
   CONSTRAINT CON_PREAJUS_PK PRIMARY KEY (COD_CIA, NOMBRE)
);

/*==============================================================*/
/* Table: CON_PREESC                                            */
/*==============================================================*/
CREATE TABLE CON_PREESC  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ESC1                 NUMBER(7)                       NOT NULL,
   ESC2                 NUMBER(7),
   ESC3                 NUMBER(7),
   REAL_ANT             NUMBER(7)                       NOT NULL,
   PRESUPUESTO          NUMBER(7)                       NOT NULL,
   DETALLE_CC           NUMBER(1)                       NOT NULL
      CONSTRAINT CON_PREESC_DETALLE_CC_CK CHECK (DETALLE_CC >= 0),
   PORC_DEFAULT         VARCHAR2(7),
   CONSTRAINT CON_PREESC_PK PRIMARY KEY (COD_CIA)
);

/*==============================================================*/
/* Index: CONPREAJUS_PREESC_FK                                  */
/*==============================================================*/
CREATE INDEX CONPREAJUS_PREESC_FK ON CON_PREESC (
   COD_CIA ASC,
   PORC_DEFAULT ASC
);

/*==============================================================*/
/* Table: CON_REPCTA                                            */
/*==============================================================*/
CREATE TABLE CON_REPCTA  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_REPORTE          VARCHAR2(3)                     NOT NULL,
   COD_SECCION          VARCHAR2(2)                     NOT NULL,
   COD_LINEA            VARCHAR2(2)                     NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   TIP_SALDO            CHAR(1)                        DEFAULT 'I' NOT NULL
      CONSTRAINT CON_REPCTA_TIPSALDO_CK CHECK (TIP_SALDO IN ('N','I','F')),
   CLASE_ACUMULA        CHAR(1)                         NOT NULL
      CONSTRAINT CON_REPCTA_CLASEACUMULA_CK CHECK (CLASE_ACUMULA IN ('A','B','C','D','E')),
   FACTOR               NUMBER(7,4)                     NOT NULL,
   CONSTRAINT CON_REPCTA_PK PRIMARY KEY (COD_CIA, COD_REPORTE, COD_SECCION, COD_LINEA, COD_CTA)
);

/*==============================================================*/
/* Index: CONREPLIN_REPCTA_FK                                   */
/*==============================================================*/
CREATE INDEX CONREPLIN_REPCTA_FK ON CON_REPCTA (
   COD_CIA ASC,
   COD_REPORTE ASC,
   COD_SECCION ASC,
   COD_LINEA ASC
);

/*==============================================================*/
/* Index: CONCUENTA_REPCTA_FK                                   */
/*==============================================================*/
CREATE INDEX CONCUENTA_REPCTA_FK ON CON_REPCTA (
   COD_CIA ASC,
   COD_CTA ASC
);

/*==============================================================*/
/* Table: CON_REPLIN                                            */
/*==============================================================*/
CREATE TABLE CON_REPLIN  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_REPORTE          VARCHAR2(3)                     NOT NULL,
   COD_SECCION          VARCHAR2(2)                     NOT NULL,
   COD_LINEA            VARCHAR2(2)                     NOT NULL,
   NOMBRE               VARCHAR2(30)                    NOT NULL,
   CONSTRAINT CON_REPLIN_PK PRIMARY KEY (COD_CIA, COD_REPORTE, COD_SECCION, COD_LINEA)
);

/*==============================================================*/
/* Index: CONREPLIN_REPSEC_FK                                   */
/*==============================================================*/
CREATE INDEX CONREPLIN_REPSEC_FK ON CON_REPLIN (
   COD_CIA ASC,
   COD_REPORTE ASC,
   COD_SECCION ASC
);

/*==============================================================*/
/* Table: CON_REPNOM                                            */
/*==============================================================*/
CREATE TABLE CON_REPNOM  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_REPORTE          VARCHAR2(3)                     NOT NULL,
   NOMBRE               VARCHAR2(30)                    NOT NULL,
   TIP_SALDOS           CHAR(1)                         NOT NULL
      CONSTRAINT CON_REPNOM_TIP_SALDOS_CK CHECK (TIP_SALDOS IN ('+','-')),
   CONSTRAINT CON_REPNOM_PK PRIMARY KEY (COD_CIA, COD_REPORTE)
);

/*==============================================================*/
/* Table: CON_REPSEC                                            */
/*==============================================================*/
CREATE TABLE CON_REPSEC  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_REPORTE          VARCHAR2(3)                     NOT NULL,
   COD_SECCION          VARCHAR2(2)                     NOT NULL,
   NOMBRE               VARCHAR2(30)                    NOT NULL,
   SECCIONPADRE         VARCHAR2(2),
   CONSTRAINT CON_REPSEC_PK PRIMARY KEY (COD_CIA, COD_REPORTE, COD_SECCION)
);

/*==============================================================*/
/* Index: CONREPNOM_REPSEC_FK                                   */
/*==============================================================*/
CREATE INDEX CONREPNOM_REPSEC_FK ON CON_REPSEC (
   COD_CIA ASC,
   COD_REPORTE ASC
);

/*==============================================================*/
/* Index: CONREPSEC_SECPADRE_FK                                 */
/*==============================================================*/
CREATE INDEX CONREPSEC_SECPADRE_FK ON CON_REPSEC (
   COD_CIA ASC,
   COD_REPORTE ASC,
   SECCIONPADRE ASC
);

/*==============================================================*/
/* Table: CON_REPTMP                                            */
/*==============================================================*/
CREATE TABLE CON_REPTMP  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_REPORTE          VARCHAR2(10)                    NOT NULL,
   COD_SECCION          VARCHAR2(2)                     NOT NULL,
   COD_LINEA            VARCHAR2(2)                     NOT NULL,
   MONTO1               NUMBER(14,2)                    NOT NULL,
   ACUM1                NUMBER(14,2)                    NOT NULL,
   MONTO2               NUMBER(14,2)                    NOT NULL,
   ACUM2                NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_REPTMP_PK PRIMARY KEY (COD_CIA, COD_REPORTE, COD_SECCION, COD_LINEA)
);

/*==============================================================*/
/* Table: CON_SALDO_VMONEDA                                     */
/*==============================================================*/
CREATE TABLE CON_SALDO_VMONEDA  (
   COD_CIA              CHAR(3)                         NOT NULL,
   ANO_FISCAL           NUMBER(4)                       NOT NULL,
   PER_PROCESO          NUMBER(2)                       NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   COD_MONEDA           VARCHAR2(3)                     NOT NULL,
   MON_CREDITO          NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_SALDO_VMONEDA_CREDITO_CK CHECK (MON_CREDITO >= 0),
   MON_DEBITO           NUMBER(14,2)                    NOT NULL
      CONSTRAINT CON_SALDO_VMONEDA_DEBITO_CK CHECK (MON_DEBITO >= 0),
   SAL_INICIO           NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_SALDO_VMONEDA_PK PRIMARY KEY (COD_CIA, ANO_FISCAL, PER_PROCESO, COD_CTA, CCOSTO, COD_MONEDA)
);

/*==============================================================*/
/* Index: CONCUENTA_SALDO_FK                                    */
/*==============================================================*/
CREATE INDEX CONCUENTA_SALDO_FK ON CON_SALDO_VMONEDA (
   COD_CIA ASC,
   COD_CTA ASC
);

/*==============================================================*/
/* Table: CON_TMP_SALDODIST                                     */
/*==============================================================*/
CREATE TABLE CON_TMP_SALDODIST  (
   COD_CIA              CHAR(3)                         NOT NULL,
   COD_CTA              VARCHAR2(25)                    NOT NULL,
   CCOSTO               VARCHAR2(7)                     NOT NULL,
   CCOSTO_DIST          VARCHAR2(7)                     NOT NULL,
   MONTO                NUMBER(14,2)                    NOT NULL,
   CONSTRAINT CON_TMP_SALDODIST_PK PRIMARY KEY (COD_CIA, COD_CTA, CCOSTO, CCOSTO_DIST)
);

ALTER TABLE CONDETDISTRIBUCION
   ADD CONSTRAINT CONDISTRIBUCION_DETALLE_FK FOREIGN KEY (COD_CIA, DISTRIBUCION)
      REFERENCES CONDISTRIBUCION (COD_CIA, DISTRIBUCION);

ALTER TABLE CONDETINTERFAZ
   ADD CONSTRAINT CONINTERFAZ_DET_FK FOREIGN KEY (COD_CIA, INTERFAZ)
      REFERENCES CONINTERFAZ (COD_CIA, INTERFAZ);

ALTER TABLE CONDETPLANTILLA
   ADD CONSTRAINT CONPLANTILLA_DETALLE_FK FOREIGN KEY (COD_CIA, PLANTILLA)
      REFERENCES CONPLANTILLA (COD_CIA, PLANTILLA);

ALTER TABLE CONPLANTILLA
   ADD CONSTRAINT CONINTERFAZ_PLANTILLA_FK FOREIGN KEY (COD_CIA, INTERFAZ)
      REFERENCES CONINTERFAZ (COD_CIA, INTERFAZ);

ALTER TABLE CON_CCDESCR
   ADD CONSTRAINT CONPARAMETRO_CCDESCR_FK FOREIGN KEY (COD_CIA)
      REFERENCES CON_PARAMETRO (COD_CIA);

ALTER TABLE CON_CCINVAL
   ADD CONSTRAINT CONPARAMETRO_CCINVAL_FK FOREIGN KEY (COD_CIA)
      REFERENCES CON_PARAMETRO (COD_CIA);

ALTER TABLE CON_COMP
   ADD CONSTRAINT CONNOMCOMP_COMP_FK FOREIGN KEY (COD_CIA, ORDINAL)
      REFERENCES CON_NOMCOMP (COD_CIA, ORDINAL);

ALTER TABLE CON_CONSOLIDA_SALDOS
   ADD CONSTRAINT CONCUENTA_CONSOLIDA_FK FOREIGN KEY (COD_CIA, COD_CTA)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_CUENTA
   ADD CONSTRAINT CONCUENTA_CLASE_FK FOREIGN KEY (COD_CIA, CLASE)
      REFERENCES CON_CLASE_CTA (COD_CIA, CLASE_CTA);

ALTER TABLE CON_CUENTA
   ADD CONSTRAINT CONCUENTA_CTAAJU_FK FOREIGN KEY (COD_CIA, CTA_AJUDIFCAM)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_CUENTA
   ADD CONSTRAINT CONCUENTA_CTASUP_FK FOREIGN KEY (COD_CIA, CTA_SUPERIOR)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_CUENTA
   ADD CONSTRAINT CONCUENTA_PARAMETRO_FK FOREIGN KEY (COD_CIA)
      REFERENCES CON_PARAMETRO (COD_CIA);

ALTER TABLE CON_DEFPRE
   ADD CONSTRAINT CONCUENTA_DEFPRE_FK FOREIGN KEY (COD_CIA, COD_CTA)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_DET_ASIENTO
   ADD CONSTRAINT CONCUENTA_DETASI_FK FOREIGN KEY (COD_CIA, COD_CTA)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_DET_ASIENTO
   ADD CONSTRAINT CONENCASIENTO_DETASI_FK FOREIGN KEY (COD_CIA, NUM_ASIENTO)
      REFERENCES CON_ENC_ASIENTO (COD_CIA, NUM_ASIENTO);

ALTER TABLE CON_ENC_ASIENTO
   ADD CONSTRAINT CONENCASIENTO_DOCTO_FK FOREIGN KEY (TIP_DOC)
      REFERENCES CON_DOCTO (TIP_DOC);

ALTER TABLE CON_GFCTAS
   ADD CONSTRAINT CONCUENTA_GFCTAS_FK FOREIGN KEY (COD_CIA, COD_CTA)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_GFCTAS_CC
   ADD CONSTRAINT CONGFCTAS_GFCTASCC_FK FOREIGN KEY (COD_CIA, COD_CTA, CCOSTO)
      REFERENCES CON_GFCTAS (COD_CIA, COD_CTA, CCOSTO);

ALTER TABLE CON_NOMCOMP
   ADD CONSTRAINT CONPARAMETRO_NOMCOMP_FK FOREIGN KEY (COD_CIA)
      REFERENCES CON_PARAMETRO (COD_CIA);

ALTER TABLE CON_PRE
   ADD CONSTRAINT CONCUENTA_PRE_FK FOREIGN KEY (COD_CIA, COD_CTA)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_PREESC
   ADD CONSTRAINT CONPREAJUS_PREESC_FK FOREIGN KEY (COD_CIA, PORC_DEFAULT)
      REFERENCES CON_PREAJUS (COD_CIA, NOMBRE);

ALTER TABLE CON_REPCTA
   ADD CONSTRAINT CONCUENTA_REPCTA_FK FOREIGN KEY (COD_CIA, COD_CTA)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

ALTER TABLE CON_REPCTA
   ADD CONSTRAINT CONREPLIN_REPCTA_FK FOREIGN KEY (COD_CIA, COD_REPORTE, COD_SECCION, COD_LINEA)
      REFERENCES CON_REPLIN (COD_CIA, COD_REPORTE, COD_SECCION, COD_LINEA);

ALTER TABLE CON_REPLIN
   ADD CONSTRAINT CONREPLIN_REPSEC_FK FOREIGN KEY (COD_CIA, COD_REPORTE, COD_SECCION)
      REFERENCES CON_REPSEC (COD_CIA, COD_REPORTE, COD_SECCION);

ALTER TABLE CON_REPSEC
   ADD CONSTRAINT CONREPNOM_REPSEC_FK FOREIGN KEY (COD_CIA, COD_REPORTE)
      REFERENCES CON_REPNOM (COD_CIA, COD_REPORTE);

ALTER TABLE CON_REPSEC
   ADD CONSTRAINT CONREPSEC_SECPADRE_FK FOREIGN KEY (COD_CIA, COD_REPORTE, SECCIONPADRE)
      REFERENCES CON_REPSEC (COD_CIA, COD_REPORTE, COD_SECCION);

ALTER TABLE CON_SALDO_VMONEDA
   ADD CONSTRAINT CONCUENTA_SALDO_FK FOREIGN KEY (COD_CIA, COD_CTA)
      REFERENCES CON_CUENTA (COD_CIA, COD_CTA);

