/*==============================================================*/
/* DBMS name:      ORACLE Version 8i2 (8.1.6)                   */
/* Created on:     21/06/2005 07:41:40 p.m.                     */
/*==============================================================*/


/*==============================================================*/
/* Table: LIBBANCO                                              */
/*==============================================================*/
create table LIBBANCO  (
   CIA                  CHAR(3)                         not null,
   BANCO                VARCHAR2(5)                     not null,
   DESCRIPCION          VARCHAR2(50)                    not null,
   TELEFONO1            VARCHAR2(15),
   TELEFONO2            VARCHAR2(15),
   constraint LIBBANCO_PK primary key (CIA, BANCO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Table: LIBBLOQUE                                             */
/*==============================================================*/
create table LIBBLOQUE  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   TIPO                 CHAR(1)                         not null
      constraint LIBBLOQUE_TIPO_CK check (TIPO in ('G','M','F','D')),
   INICIO               NUMBER(10)                      not null,
   CANTIDAD             NUMBER(5)                       not null,
   ACTUAL               NUMBER(10)                      not null,
   constraint LIBBLOQUE_PK primary key (CIA, SUCURSAL, TIPO, INICIO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBCONSECUTIVO_BLOQUE_FK                              */
/*==============================================================*/
create index LIBCONSECUTIVO_BLOQUE_FK on LIBBLOQUE (
   CIA ASC,
   TIPO ASC
);

/*==============================================================*/
/* Table: LIBCAJA                                               */
/*==============================================================*/
create table LIBCAJA  (
   CIA                  CHAR(3)                         not null,
   CAJA                 CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   DESCRIPCION          VARCHAR2(50)                    not null,
   constraint LIBCAJA_PK primary key (CIA, CAJA)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Table: LIBCLASEPERDIDA                                       */
/*==============================================================*/
create table LIBCLASEPERDIDA  (
   CIA                  CHAR(3)                         not null,
   GRUPO                NUMBER(7)                       not null,
   FECHA                DATE                            not null,
   CARNE                VARCHAR2(15)                    not null,
   OBSERVACIONES        VARCHAR2(50),
   constraint LIBCLASEPERDIDA_PK primary key (CIA, GRUPO, FECHA, CARNE)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBGRUPO_CLASEPERDIDA_FK                              */
/*==============================================================*/
create index LIBGRUPO_CLASEPERDIDA_FK on LIBCLASEPERDIDA (
   CIA ASC,
   GRUPO ASC
);

/*==============================================================*/
/* Table: LIBCONSECUTIVO                                        */
/*==============================================================*/
create table LIBCONSECUTIVO  (
   CIA                  CHAR(3)                         not null,
   TIPO                 CHAR(1)                         not null
      constraint LIBCONSECUTIVO_TIPO_CK check (TIPO in ('G','M','F','D')),
   ACTUAL               NUMBER(10)                      not null,
   constraint LIBCONSECUTIVO_PK primary key (CIA, TIPO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Table: LIBCUENTA                                             */
/*==============================================================*/
create table LIBCUENTA  (
   CIA                  CHAR(3)                         not null,
   BANCO                VARCHAR2(5)                     not null,
   CUENTA               VARCHAR2(10)                    not null,
   MONEDA               VARCHAR2(3)                     not null,
   constraint LIBCUENTA_PK primary key (CIA, BANCO, CUENTA)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBBANCO_CUENTA_FK                                    */
/*==============================================================*/
create index LIBBANCO_CUENTA_FK on LIBCUENTA (
   CIA ASC,
   BANCO ASC
);

/*==============================================================*/
/* Table: LIBCURSOESTUDIANTE                                    */
/*==============================================================*/
create table LIBCURSOESTUDIANTE  (
   CIA                  CHAR(3)                         not null,
   CARNE                VARCHAR2(15)                    not null,
   GRUPO                NUMBER(7)                       not null,
   FECHA                DATE                            not null,
   DESCTXT              VARCHAR2(40),
   COBRADO              DATE                            not null,
   FECHARETIRO          DATE,
   RAZONRETIRO          VARCHAR2(60),
   ESTADO               CHAR(1)                         not null
      constraint LIBCURSOESTUDIAN_ESTADO_CK check (ESTADO in ('A','R','C')),
   constraint LIBCURSOESTUDIANTE_PK primary key (CIA, CARNE, GRUPO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBCURSO_ESTUDIANTE_FK                                */
/*==============================================================*/
create index LIBCURSO_ESTUDIANTE_FK on LIBCURSOESTUDIANTE (
   CIA ASC,
   GRUPO ASC
);

/*==============================================================*/
/* Table: LIBDEPOSITO                                           */
/*==============================================================*/
create table LIBDEPOSITO  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   CONSECUTIVO          NUMBER(10)                      not null,
   BANCO                VARCHAR2(5)                     not null,
   CUENTA               VARCHAR2(10)                    not null,
   CAJA                 CHAR(3)                         not null,
   FECHA                DATE                            not null,
   FECHA_APLIC          DATE,
   DETALLE              VARCHAR2(200)                   not null,
   MONEDA               VARCHAR2(3)                     not null,
   MONTO                NUMBER(14,2)                    not null,
   TIPOCAMBIO           NUMBER(14,4)                    not null,
   CAMBIOBASE           NUMBER(14,4)                    not null,
   ESTADO               CHAR(1)                         not null
      constraint LIBDEPOSITO_ESTADO_CK check (ESTADO in ('P','A','N')),
   constraint LIBDEPOSITO_PK primary key (CIA, SUCURSAL, CONSECUTIVO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBCUENTA_DEPOSITO_FK                                 */
/*==============================================================*/
create index LIBCUENTA_DEPOSITO_FK on LIBDEPOSITO (
   CIA ASC,
   BANCO ASC,
   CUENTA ASC
);

/*==============================================================*/
/* Index: LIBCAJA_DEPOSITO_FK                                   */
/*==============================================================*/
create index LIBCAJA_DEPOSITO_FK on LIBDEPOSITO (
   CIA ASC,
   CAJA ASC
);

/*==============================================================*/
/* Table: LIBDESCPA                                             */
/*==============================================================*/
create table LIBDESCPA  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   MENSUALIDADES        NUMBER(3)                       not null,
   PORCENTAJE           NUMBER(6,4)                     not null,
   constraint LIBDESCPA_PK primary key (CIA, SUCURSAL, MENSUALIDADES)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBSUCPARAMETRO_DESCPA_FK                             */
/*==============================================================*/
create index LIBSUCPARAMETRO_DESCPA_FK on LIBDESCPA (
   CIA ASC,
   SUCURSAL ASC
);

/*==============================================================*/
/* Table: LIBDESCPP                                             */
/*==============================================================*/
create table LIBDESCPP  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   DIAS                 NUMBER(3)                       not null,
   PORCENTAJE           NUMBER(6,4)                     not null,
   constraint LIBDESCPP_PK primary key (CIA, SUCURSAL, DIAS)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBSUCPARAMETRO_DESCPP_FK                             */
/*==============================================================*/
create index LIBSUCPARAMETRO_DESCPP_FK on LIBDESCPP (
   CIA ASC,
   SUCURSAL ASC
);

/*==============================================================*/
/* Table: LIBDESCUENTO                                          */
/*==============================================================*/
create table LIBDESCUENTO  (
   CIA                  CHAR(3)                         not null,
   DESCUENTO            VARCHAR2(3)                     not null,
   NOMBRE               VARCHAR2(20)                    not null,
   PORCENTAJE           NUMBER(7,4)                     not null,
   constraint LIBDESCUENTO_PK primary key (CIA, DESCUENTO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Table: LIBDETFACTURA                                         */
/*==============================================================*/
create table LIBDETFACTURA  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   DOCUMENTO            NUMBER(10)                      not null,
   SERVICIO             VARCHAR2(5)                     not null,
   REFERENCIA           VARCHAR2(10)                    not null,
   DESCTXT              VARCHAR2(40),
   CANTIDAD             NUMBER(7,2)                     not null,
   PRECIO               NUMBER(14,2)                    not null,
   DESCUENTO            NUMBER(14,2)                    not null,
   IMPUESTO             NUMBER(14,2)                    not null,
   TOTALLINEA           NUMBER(14,2)                    not null,
   constraint LIBDETFACTURA_PK primary key (CIA, SUCURSAL, DOCUMENTO, SERVICIO, REFERENCIA)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBFACTURA_DETFACUTRA_FK                              */
/*==============================================================*/
create index LIBFACTURA_DETFACUTRA_FK on LIBDETFACTURA (
   CIA ASC,
   SUCURSAL ASC,
   DOCUMENTO ASC
);

/*==============================================================*/
/* Table: LIBDETPAGO                                            */
/*==============================================================*/
create table LIBDETPAGO  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   DOCUMENTO            NUMBER(10)                      not null,
   FORMAPAGO            VARCHAR2(3)                     not null,
   MONTO                NUMBER(14,2)                    not null,
   REFERENCIA           VARCHAR2(15),
   OBSERVACIONES        VARCHAR2(60),
   constraint LIBDETPAGO_PK primary key (CIA, SUCURSAL, DOCUMENTO, FORMAPAGO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBFORMAPAGO_DETPAGO_FK                               */
/*==============================================================*/
create index LIBFORMAPAGO_DETPAGO_FK on LIBDETPAGO (
   CIA ASC,
   FORMAPAGO ASC
);

/*==============================================================*/
/* Index: LIBFACTURA_DETPAGO_FK                                 */
/*==============================================================*/
create index LIBFACTURA_DETPAGO_FK on LIBDETPAGO (
   CIA ASC,
   SUCURSAL ASC,
   DOCUMENTO ASC
);

/*==============================================================*/
/* Table: LIBESTUDIANTE                                         */
/*==============================================================*/
create table LIBESTUDIANTE  (
   CIA                  CHAR(3)                         not null,
   CARNE                VARCHAR2(15)                    not null,
   NOMBRE               VARCHAR2(50)                    not null,
   DIRECCION            VARCHAR2(100),
   PADRE                VARCHAR2(50),
   MADRE                VARCHAR2(50),
   FECHANAC             DATE                            not null,
   TELHAB               VARCHAR2(15),
   TELCEL               VARCHAR2(15),
   TELOFI               VARCHAR2(15),
   EMAIL                VARCHAR2(50),
   BECA                 VARCHAR2(30),
   ESTADO               CHAR(1)                         not null
      constraint LIBESTUDIANTE_ESTADO_CK check (ESTADO in ('E','I','M')),
   constraint LIBESTUDIANTE_PK primary key (CIA, CARNE)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: GENCOMPANIA_ESTUDIANTE_FK                             */
/*==============================================================*/
create index GENCOMPANIA_ESTUDIANTE_FK on LIBESTUDIANTE (
   CIA ASC
);

/*==============================================================*/
/* Table: LIBFACTURA                                            */
/*==============================================================*/
create table LIBFACTURA  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   DOCUMENTO            NUMBER(10)                      not null,
   CAJA                 CHAR(3)                         not null,
   CARNE                VARCHAR2(15),
   NOMBRE               VARCHAR2(50)                    not null,
   MONEDA               VARCHAR2(3)                     not null,
   TIPOCAMBIO           NUMBER(14,4)                    not null,
   CAMBIOBASE           NUMBER(14,4)                    not null,
   OBSERVACION          VARCHAR2(60),
   FECHA                DATE                            not null,
   FECHA_APLIC          DATE,
   VUELTO               NUMBER(14,2)                    not null,
   ESTADO               CHAR(1)                        default 'P' not null
      constraint LIBFACTURA_ESTADO_CK check (ESTADO in ('P','A','N')),
   constraint LIBFACTURA_PK primary key (CIA, SUCURSAL, DOCUMENTO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: GENSUCURSAL_FACTURA_FK                                */
/*==============================================================*/
create index GENSUCURSAL_FACTURA_FK on LIBFACTURA (
   CIA ASC,
   SUCURSAL ASC
);

/*==============================================================*/
/* Index: LIBCAJA_FACTURA_FK                                    */
/*==============================================================*/
create index LIBCAJA_FACTURA_FK on LIBFACTURA (
   CIA ASC,
   CAJA ASC
);

/*==============================================================*/
/* Table: LIBFAMILIARES                                         */
/*==============================================================*/
create table LIBFAMILIARES  (
   CIA                  CHAR(3)                         not null,
   CARNE                VARCHAR2(15)                    not null,
   PARIENTE             VARCHAR2(15)                    not null,
   PARENTESCO           VARCHAR2(10)                    not null,
   constraint LIBFAMILIARES_PK primary key (CIA, CARNE, PARIENTE)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBESTUDIANTE_FAMILIARES_FK                           */
/*==============================================================*/
create index LIBESTUDIANTE_FAMILIARES_FK on LIBFAMILIARES (
   CIA ASC,
   CARNE ASC
);

/*==============================================================*/
/* Index: LIBESTUDIANTE_PARIENTE_FK                             */
/*==============================================================*/
create index LIBESTUDIANTE_PARIENTE_FK on LIBFAMILIARES (
   CIA ASC,
   PARIENTE ASC
);

/*==============================================================*/
/* Table: LIBFORMAPAGO                                          */
/*==============================================================*/
create table LIBFORMAPAGO  (
   CIA                  CHAR(3)                         not null,
   FORMAPAGO            VARCHAR2(3)                     not null,
   CLASE                CHAR(1)                         not null
      constraint LIBFORMAPAGO_CLASE_CK check (CLASE in ('E','T','C','D','O')),
   NOMBRE               VARCHAR2(50)                    not null,
   MONEDA               VARCHAR2(3)                     not null,
   constraint LIBFORMAPAGO_PK primary key (CIA, FORMAPAGO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Table: LIBGRUPO                                              */
/*==============================================================*/
create table LIBGRUPO  (
   CIA                  CHAR(3)                         not null,
   GRUPO                NUMBER(7)                       not null,
   SUCURSAL             CHAR(3)                         not null,
   CURSO                VARCHAR2(5)                     not null,
   HORARIO              VARCHAR2(50)                    not null,
   DESCRIPCION          VARCHAR2(50)                    not null,
   FECHAINICIO          DATE                            not null,
   FECHAFINAL           DATE                            not null,
   FECHACIERRE          DATE,
   CUPO                 NUMBER(2)                       not null,
   PROFESOR             VARCHAR2(15)                    not null,
   CLASES               NUMBER(2)                       not null,
   ESTADO               CHAR(1)                         not null
      constraint LIBGRUPO_ESTADO_CK check (ESTADO in ('M','A','C')),
   constraint LIBGRUPO_PK primary key (CIA, GRUPO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBCURSO_GRUPO_FK                                     */
/*==============================================================*/
create index LIBCURSO_GRUPO_FK on LIBGRUPO (
   CIA ASC,
   CURSO ASC
);

/*==============================================================*/
/* Table: LIBMENSUALIDAD                                        */
/*==============================================================*/
create table LIBMENSUALIDAD  (
   CIA                  CHAR(3)                         not null,
   DOCUMENTO            NUMBER(9)                       not null,
   CARNE                VARCHAR2(15)                    not null,
   GRUPO                NUMBER(7)                       not null,
   FECHA                DATE                            not null,
   PAGOHASTA            DATE                            not null,
   MONTO                NUMBER(14,2)                    not null,
   DESCTXT              VARCHAR2(40),
   ESTADO               CHAR(1)                        default 'P' not null
      constraint LIBMENSUALIDAD_ESTADO_CK check (ESTADO in ('P','N','C')),
   constraint LIBMENSUALIDAD_PK primary key (CIA, DOCUMENTO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBCURSOESTUDIANTE_MENSUAL_FK                         */
/*==============================================================*/
create index LIBCURSOESTUDIANTE_MENSUAL_FK on LIBMENSUALIDAD (
   CIA ASC,
   CARNE ASC,
   GRUPO ASC
);

/*==============================================================*/
/* Table: LIBPRECIO                                             */
/*==============================================================*/
create table LIBPRECIO  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   SERVICIO             VARCHAR2(5)                     not null,
   MONEDA               VARCHAR2(3)                     not null,
   MONTO                NUMBER(14,2)                    not null,
   constraint LIBPRECIO_PK primary key (CIA, SERVICIO, SUCURSAL)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: LIBSERVICIO_PRECIO_FK                                 */
/*==============================================================*/
create index LIBSERVICIO_PRECIO_FK on LIBPRECIO (
   CIA ASC,
   SERVICIO ASC
);

/*==============================================================*/
/* Table: LIBPROFESOR                                           */
/*==============================================================*/
create table LIBPROFESOR  (
   CIA                  CHAR(3)                         not null,
   PROFESOR             VARCHAR2(15)                    not null,
   NOMBRE               VARCHAR2(50)                    not null,
   TELHAB               VARCHAR2(15),
   TELCEL               VARCHAR2(15),
   TELOFI               VARCHAR2(15),
   DIRECCION            VARCHAR2(100),
   EMAIL                VARCHAR2(50),
   constraint LIBPROFESOR_PK primary key (CIA, PROFESOR)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: GENCOMPANIA_PROFESOR_FK                               */
/*==============================================================*/
create index GENCOMPANIA_PROFESOR_FK on LIBPROFESOR (
   CIA ASC
);

/*==============================================================*/
/* Table: LIBSERVICIO                                           */
/*==============================================================*/
create table LIBSERVICIO  (
   CIA                  CHAR(3)                         not null,
   SERVICIO             VARCHAR2(5)                     not null,
   TIPO                 CHAR(1)                         not null
      constraint LIBSERVICIO_TIPO_CK check (TIPO in ('M','O','P','E','T','C','A')),
   NOMBRE               VARCHAR2(50)                    not null,
   IMPUESTO             VARCHAR2(5),
   constraint LIBSERVICIO_PK primary key (CIA, SERVICIO)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

/*==============================================================*/
/* Index: GENCOMPANIA_CURSO_FK                                  */
/*==============================================================*/
create index GENCOMPANIA_CURSO_FK on LIBSERVICIO (
   CIA ASC
);

/*==============================================================*/
/* Index: GENIMPUESTO_SERVICIO_FK                               */
/*==============================================================*/
create index GENIMPUESTO_SERVICIO_FK on LIBSERVICIO (
   CIA ASC,
   IMPUESTO ASC
);

/*==============================================================*/
/* Table: LIBSUCPARAMETRO                                       */
/*==============================================================*/
create table LIBSUCPARAMETRO  (
   CIA                  CHAR(3)                         not null,
   SUCURSAL             CHAR(3)                         not null,
   CANTIDADBLOQUE       NUMBER(5)                       not null,
   DESCPRONTOPAGO       VARCHAR2(3),
   DESCCLASEPERDIDA     VARCHAR2(3),
   DESCFAMILIAR         VARCHAR2(3),
   DESCPAGOADELANTADO   VARCHAR2(3),
   MINIMO_FACTURA       NUMBER(4)                       not null,
   IVI                  CHAR(1)                         not null
      constraint LIBSUCPARAMETRO_IVI_CK check (IVI in ('S','N')),
   constraint LIBSUCPARAMETRO_PK primary key (CIA, SUCURSAL)
)
initrans 1
                        storage
                        (
                         initial 10K
                         next 10K
                        );

alter table LIBBLOQUE
   add constraint LIBCONSECUTIVO_BLOQUE_FK foreign key (CIA, TIPO)
      references LIBCONSECUTIVO (CIA, TIPO);

alter table LIBCLASEPERDIDA
   add constraint LIBGRUPO_CLASEPERDIDA_FK foreign key (CIA, GRUPO)
      references LIBGRUPO (CIA, GRUPO);

alter table LIBCUENTA
   add constraint LIBBANCO_CUENTA_FK foreign key (CIA, BANCO)
      references LIBBANCO (CIA, BANCO);

alter table LIBCURSOESTUDIANTE
   add constraint LIBCURSO_ESTUDIANTE_FK foreign key (CIA, GRUPO)
      references LIBGRUPO (CIA, GRUPO);

alter table LIBDEPOSITO
   add constraint LIBCAJA_DEPOSITO_FK foreign key (CIA, CAJA)
      references LIBCAJA (CIA, CAJA);

alter table LIBDEPOSITO
   add constraint LIBCUENTA_DEPOSITO_FK foreign key (CIA, BANCO, CUENTA)
      references LIBCUENTA (CIA, BANCO, CUENTA);

alter table LIBDESCPA
   add constraint LIBSUCPARAMETRO_DESCPA_FK foreign key (CIA, SUCURSAL)
      references LIBSUCPARAMETRO (CIA, SUCURSAL);

alter table LIBDESCPP
   add constraint LIBSUCPARAMETRO_DESCPP_FK foreign key (CIA, SUCURSAL)
      references LIBSUCPARAMETRO (CIA, SUCURSAL);

alter table LIBDETFACTURA
   add constraint LIBFACTURA_DETFACUTRA_FK foreign key (CIA, SUCURSAL, DOCUMENTO)
      references LIBFACTURA (CIA, SUCURSAL, DOCUMENTO);

alter table LIBDETPAGO
   add constraint LIBFACTURA_DETPAGO_FK foreign key (CIA, SUCURSAL, DOCUMENTO)
      references LIBFACTURA (CIA, SUCURSAL, DOCUMENTO);

alter table LIBDETPAGO
   add constraint LIBFORMAPAGO_DETPAGO_FK foreign key (CIA, FORMAPAGO)
      references LIBFORMAPAGO (CIA, FORMAPAGO);

alter table LIBESTUDIANTE
   add constraint GENCOMPANIA_ESTUDIANTE_FK foreign key (CIA)
      references GEN_COMPANIA (CIA);

alter table LIBFACTURA
   add constraint GENSUCURSAL_FACTURA_FK foreign key (CIA, SUCURSAL)
      references GEN_SUCURSAL (CIA, sucursal);

alter table LIBFACTURA
   add constraint LIBCAJA_FACTURA_FK foreign key (CIA, CAJA)
      references LIBCAJA (CIA, CAJA);

alter table LIBFAMILIARES
   add constraint LIBESTUDIANTE_FAMILIARES_FK foreign key (CIA, CARNE)
      references LIBESTUDIANTE (CIA, CARNE);

alter table LIBFAMILIARES
   add constraint LIBESTUDIANTE_PARIENTE_FK foreign key (CIA, PARIENTE)
      references LIBESTUDIANTE (CIA, CARNE);

alter table LIBGRUPO
   add constraint LIBCURSO_GRUPO_FK foreign key (CIA, CURSO)
      references LIBSERVICIO (CIA, SERVICIO);

alter table LIBMENSUALIDAD
   add constraint LIBCURSOESTUDIANTE_MENSUAL_FK foreign key (CIA, CARNE, GRUPO)
      references LIBCURSOESTUDIANTE (CIA, CARNE, GRUPO);

alter table LIBPRECIO
   add constraint LIBSERVICIO_PRECIO_FK foreign key (CIA, SERVICIO)
      references LIBSERVICIO (CIA, SERVICIO);

alter table LIBPROFESOR
   add constraint GENCOMPANIA_PROFESOR_FK foreign key (CIA)
      references GEN_COMPANIA (CIA);

alter table LIBSERVICIO
   add constraint GENCOMPANIA_CURSO_FK foreign key (CIA)
      references GEN_COMPANIA (CIA);

alter table LIBSERVICIO
   add constraint GENIMPUESTO_SERVICIO_FK foreign key (CIA, IMPUESTO)
      references GEN_IMPUESTO (CIA, impuesto);

alter table LIBSUCPARAMETRO
   add constraint GENSUCURSAL_PARAMETRO_FK foreign key (CIA, SUCURSAL)
      references GEN_SUCURSAL (CIA, sucursal);

