CREATE TABLE LogFinNomina ( 
TipoProc VARCHAR(10) NOT NULL,
Numero INT DEFAULT ((0)) NOT NULL,
Fecha SMALLDATETIME NOT NULL,
FechaPago SMALLDATETIME NOT NULL,
Periodo VARCHAR(8) NOT NULL,
IdNomPre VARCHAR(4),
IdNomApo VARCHAR(4),
IdNomCnv VARCHAR(4),
ValorTotal MONEY DEFAULT ((0)) NOT NULL,
TipDoc VARCHAR(3) NOT NULL,
NumInicial INT DEFAULT ((0)) NOT NULL,
NumFinal INT DEFAULT ((0)) NOT NULL,
IdCia CHAR(2),
IdConcepto VARCHAR(4),
FecVenInicial SMALLDATETIME,
FecVenFinal SMALLDATETIME,
TipoCartera VARCHAR(10) NOT NULL,
CriteriosSel VARCHAR(500),
EstadoReg INT DEFAULT ((0)) NOT NULL,
Observacion VARCHAR(500),
FechaCrea SMALLDATETIME NOT NULL,
IdUsuario VARCHAR(11) NOT NULL,
Nombre VARCHAR(50),
ConNomPre VARCHAR(50),
ConNomApo VARCHAR(50),
ConNomConv VARCHAR(50),
Compania VARCHAR(50)
 CONSTRAINT PK_LogFinNomina PRIMARY KEY CLUSTERED (TipoProc,Numero),
 CONSTRAINT CK_LogFinNominaIdUsuario CHECK ((len([IdUsuario])>(0))),
 CONSTRAINT CK_LogFinNominaPeriodo CHECK ((len([Periodo])>(0))),
 CONSTRAINT CK_LogFinNominaTipDoc CHECK ((len([TipDoc])>(0))),
 CONSTRAINT CK_LogFinNominaTipoCartera CHECK ((len([TipoCartera])>(0))),
 CONSTRAINT CK_LogFinNominaTipoProc CHECK ((len([TipoProc])>(0))))
CREATE TABLE LogFinNominaVce ( 
TipoProc VARCHAR(10) NOT NULL,
Numero INT DEFAULT ((0)) NOT NULL,
Item INT DEFAULT ((0)) NOT NULL,
TipDoc VARCHAR(3) DEFAULT ('PR1') NOT NULL,
IdPrestamo INT DEFAULT ((0)) NOT NULL,
IdCia CHAR(2) DEFAULT ('01') NOT NULL,
ItemVce INT DEFAULT ((1)) NOT NULL,
NumCuota INT DEFAULT ((0)) NOT NULL,
Fecha SMALLDATETIME NOT NULL,
FechaVence SMALLDATETIME NOT NULL,
VrTotal MONEY DEFAULT ((0)) NOT NULL,
VrAbonado MONEY DEFAULT ((0)) NOT NULL,
IdCliente VARCHAR(16) NOT NULL,
IdAgencia VARCHAR(16),
Concepto VARCHAR(10) NOT NULL,
TipoCausac VARCHAR(3) DEFAULT ('CAU'),
NumCausacion INT DEFAULT ((0)) NOT NULL,
IdCiaCau CHAR(2) DEFAULT ('00'),
Detalle VARCHAR(500),
FecUltPago SMALLDATETIME,
CodLinCred VARCHAR(4),
TipoCartera VARCHAR(10) NOT NULL,
NumFactura VARCHAR(20),
Estado INT DEFAULT ((0)) NOT NULL,
TipNcr VARCHAR(3) NOT NULL,
NumNota INT DEFAULT ((0)) NOT NULL,
IdCiaNota CHAR(2),
VrPagado MONEY DEFAULT ((0)) NOT NULL,
IdTipoTerc VARCHAR(4),
IdVend VARCHAR(16),
CodCCosto VARCHAR(16),
CodSubCosto VARCHAR(16),
NomCliente VARCHAR(150),
NomAgencia VARCHAR(150),
LineaCred VARCHAR(50)
 CONSTRAINT PK_LogFinNominaVce PRIMARY KEY CLUSTERED (TipoProc,Numero,Item),
 CONSTRAINT CK_LogFinNominaVceConcepto CHECK ((len([Concepto])>(0))),
 CONSTRAINT CK_LogFinNominaVceIdCia CHECK ((len([IdCia])>(0))),
 CONSTRAINT CK_LogFinNominaVceIdCliente CHECK ((len([IdCliente])>(0))),
 CONSTRAINT CK_LogFinNominaVceTipDoc CHECK ((len([TipDoc])>(0))),
 CONSTRAINT CK_LogFinNominaVceTipNcr CHECK ((len([TipNcr])>(0))),
 CONSTRAINT CK_LogFinNominaVceTipoCartera CHECK ((len([TipoCartera])>(0))),
 CONSTRAINT CK_LogFinNominaVceTipoProc CHECK ((len([TipoProc])>(0))))
GO
CREATE TABLE LogFinBancos ( 
TipoProc VARCHAR(10) NOT NULL,
Numero INT DEFAULT ((0)) NOT NULL,
Fecha SMALLDATETIME NOT NULL,
FechaApl SMALLDATETIME NOT NULL,
Secuencia VARCHAR(10),
NitEntidad VARCHAR(16) NOT NULL,
NomEntidad VARCHAR(150),
CodConvenio VARCHAR(20),
ValorTotal MONEY DEFAULT ((0)) NOT NULL,
Cantidad DECIMAL(14,4) DEFAULT ((0)) NOT NULL,
NomArchivo VARCHAR(250),
FecVenInicial SMALLDATETIME,
FecVenFinal SMALLDATETIME,
Referencia VARCHAR(150),
EstadoReg INT DEFAULT ((0)) NOT NULL,
Observacion VARCHAR(500),
FechaCrea SMALLDATETIME NOT NULL,
IdUsuario VARCHAR(11) NOT NULL,
Nombre VARCHAR(50)
 CONSTRAINT PK_LogFinBancos PRIMARY KEY CLUSTERED (TipoProc,Numero),
 CONSTRAINT CK_LogFinBancosIdUsuario CHECK ((len([IdUsuario])>(0))),
 CONSTRAINT CK_LogFinBancosNitEntidad CHECK ((len([NitEntidad])>(0))),
 CONSTRAINT CK_LogFinBancosTipoProc CHECK ((len([TipoProc])>(0))))
CREATE TABLE LogFinBancosDet ( 
TipoProc VARCHAR(10) NOT NULL,
Numero INT DEFAULT ((0)) NOT NULL,
Item INT DEFAULT ((0)) NOT NULL,
TipDoc VARCHAR(3) DEFAULT ('PR1') NOT NULL,
IdPrestamo INT DEFAULT ((0)) NOT NULL,
IdCia CHAR(2) DEFAULT ('01') NOT NULL,
ItemVce INT DEFAULT ((0)) NOT NULL,
NumCuota INT DEFAULT ((0)) NOT NULL,
FechaVence SMALLDATETIME NOT NULL,
VrTotal MONEY DEFAULT ((0)) NOT NULL,
VrAbonado MONEY DEFAULT ((0)) NOT NULL,
IdCliente VARCHAR(16) NOT NULL,
IdAgencia VARCHAR(16),
Concepto VARCHAR(10) NOT NULL,
TipoCartera VARCHAR(10) NOT NULL,
FecUltPago SMALLDATETIME,
CodLinCred VARCHAR(4),
CodBanco VARCHAR(10) NOT NULL,
NumCuenta VARCHAR(20),
TipoTrans VARCHAR(10),
VrPagado MONEY DEFAULT ((0)) NOT NULL,
Referencia1 VARCHAR(50),
Referencia2 VARCHAR(50),
FecAplica SMALLDATETIME,
Periodo VARCHAR(20),
CicloFact VARCHAR(20),
Estado INT DEFAULT ((0)) NOT NULL,
Descripcion VARCHAR(500),
NomCliente VARCHAR(150),
NomAgencia VARCHAR(150),
LineaCred VARCHAR(50)
 CONSTRAINT PK_LogFinBancosDet PRIMARY KEY CLUSTERED (TipoProc,Numero,Item),
 CONSTRAINT CK_LogFinBancosDetCodBanco CHECK ((len([CodBanco])>(0))),
 CONSTRAINT CK_LogFinBancosDetConcepto CHECK ((len([Concepto])>(0))),
 CONSTRAINT CK_LogFinBancosDetIdCia CHECK ((len([IdCia])>(0))),
 CONSTRAINT CK_LogFinBancosDetIdCliente CHECK ((len([IdCliente])>(0))),
 CONSTRAINT CK_LogFinBancosDetTipDoc CHECK ((len([TipDoc])>(0))),
 CONSTRAINT CK_LogFinBancosDetTipoCartera CHECK ((len([TipoCartera])>(0))),
 CONSTRAINT CK_LogFinBancosDetTipoProc CHECK ((len([TipoProc])>(0))))
GO
 CREATE NONCLUSTERED INDEX IX_LogFinNominaFecha ON LogFinNomina(Fecha)
 CREATE NONCLUSTERED INDEX IX_LogFinNominaNumInicial ON LogFinNomina(TipDoc,NumInicial,NumFinal)

 CREATE NONCLUSTERED INDEX IX_LogFinNominaVceIdPrestamo ON LogFinNominaVce(TipDoc,IdPrestamo,IdCia,ItemVce)
 CREATE NONCLUSTERED INDEX IX_LogFinNominaVceIdCliente ON LogFinNominaVce(IdCliente)

 CREATE NONCLUSTERED INDEX IX_LogFinBancosFecha ON LogFinBancos(Fecha)
 
CREATE NONCLUSTERED INDEX IX_LogFinBancosDetIdPrestamo ON LogFinBancosDet(TipDoc,IdPrestamo,IdCia)
 CREATE NONCLUSTERED INDEX IX_LogFinBancosDetIdCliente ON LogFinBancosDet(IdCliente)
