ALTER TABLE Trn_FinRecibos ADD VrPagoCuotas MONEY DEFAULT(0) NOT NULL,VrPagoAportes MONEY DEFAULT(0) NOT NULL,VrPagoConvenio MONEY DEFAULT(0) NOT NULL
,VrAboCuotas MONEY DEFAULT(0) NOT NULL,VrAboAportes MONEY DEFAULT(0) NOT NULL,VrAboConvenio MONEY DEFAULT(0) NOT NULL
,VrAntPrestamo MONEY DEFAULT(0) NOT NULL,VrAntAportes MONEY DEFAULT(0) NOT NULL,VrAntConvenio MONEY DEFAULT(0) NOT NULL
GO
CREATE TABLE Trn_FinAportes ( 
TipLiq VARCHAR(3) DEFAULT ('APO') NOT NULL,
NumLiquida INT DEFAULT ((0)) NOT NULL,
IdCia CHAR(2) DEFAULT ('01') NOT NULL,
Fecha SMALLDATETIME NOT NULL,
FecLiquida SMALLDATETIME NOT NULL,
CodCia CHAR(2),
CodGrupo VARCHAR(4),
CodTipoTerc VARCHAR(4),
ValorTotal MONEY DEFAULT ((0)) NOT NULL,
BaseApo MONEY DEFAULT ((0)) NOT NULL,
TipCom VARCHAR(3) NOT NULL,
Comprobante INT DEFAULT ((0)) NOT NULL,
IdCiaCom CHAR(2) NOT NULL,
Observacion VARCHAR(2000),
IdEstado VARCHAR(4) NOT NULL,
Anulado BIT DEFAULT ((0)) NOT NULL,
NumDev INT DEFAULT ((0)) NOT NULL,
FecDev SMALLDATETIME,
FechaCrea SMALLDATETIME NOT NULL,
IdCiaCrea CHAR(2) DEFAULT ('01') NOT NULL,
OrigenAdd VARCHAR(10) NOT NULL,
IdUsuario VARCHAR(11) NOT NULL
 CONSTRAINT PK_Trn_FinAportes PRIMARY KEY CLUSTERED (TipLiq,NumLiquida,IdCia),
 CONSTRAINT CK_Trn_FinAportesIdCia CHECK ((len([IdCia])>(0))),
 CONSTRAINT CK_Trn_FinAportesIdCiaCom CHECK ((len([IdCiaCom])>(0))),
 CONSTRAINT CK_Trn_FinAportesIdCiaCrea CHECK ((len([IdCiaCrea])>(0))),
 CONSTRAINT CK_Trn_FinAportesIdEstado CHECK ((len([IdEstado])>(0))),
 CONSTRAINT CK_Trn_FinAportesIdUsuario CHECK ((len([IdUsuario])>(0))),
 CONSTRAINT CK_Trn_FinAportesOrigenAdd CHECK ((len([OrigenAdd])>(0))),
 CONSTRAINT CK_Trn_FinAportesTipCom CHECK ((len([TipCom])>(0))),
 CONSTRAINT CK_Trn_FinAportesTipLiq CHECK ((len([TipLiq])>(0))))
CREATE TABLE Trn_FinAportesDet ( 
TipLiq VARCHAR(3) DEFAULT ('APO') NOT NULL,
NumLiquida INT DEFAULT ((0)) NOT NULL,
IdCia CHAR(2) DEFAULT ('01') NOT NULL,
Item INT DEFAULT ((0)) NOT NULL,
FecVence SMALLDATETIME NOT NULL,
IdCliente VARCHAR(16) NOT NULL,
IdAgencia VARCHAR(16) DEFAULT ('0') NOT NULL,
BaseAporte MONEY DEFAULT ((0)) NOT NULL,
TarifaApo DECIMAL(16,6) DEFAULT ((0)) NOT NULL,
VrAporte MONEY DEFAULT ((0)) NOT NULL,
CdTarifApo VARCHAR(4),
Descripcion VARCHAR(500),
FecUltPago SMALLDATETIME,
FecUltLiq SMALLDATETIME,
DctoNom BIT DEFAULT ((0)) NOT NULL,
CodConcNom VARCHAR(4),
PeriodoNom VARCHAR(8),
NumCuota INT DEFAULT ((0)) NOT NULL
 CONSTRAINT PK_Trn_FinAportesDet PRIMARY KEY CLUSTERED (TipLiq,NumLiquida,IdCia,Item),
 CONSTRAINT CK_Trn_FinAportesDetIdAgencia CHECK ((len([IdAgencia])>(0))),
 CONSTRAINT CK_Trn_FinAportesDetIdCia CHECK ((len([IdCia])>(0))),
 CONSTRAINT CK_Trn_FinAportesDetIdCliente CHECK ((len([IdCliente])>(0))),
 CONSTRAINT CK_Trn_FinAportesDetTipLiq CHECK ((len([TipLiq])>(0))))
CREATE TABLE Trn_FinCanAportes ( 
TipDoc VARCHAR(3) DEFAULT ('CAP') NOT NULL,
NumNota INT DEFAULT ((0)) NOT NULL,
IdCia CHAR(2) DEFAULT ('01') NOT NULL,
Fecha SMALLDATETIME NOT NULL,
IdCliente VARCHAR(16) NOT NULL,
IdAgencia VARCHAR(16) DEFAULT ('0') NOT NULL,
ValorTotal MONEY DEFAULT ((0)) NOT NULL,
TipCom VARCHAR(3) NOT NULL,
Comprobante INT DEFAULT ((0)) NOT NULL,
IdCiaCom CHAR(2) NOT NULL,
Observacion VARCHAR(2000),
Anulado BIT DEFAULT ((0)) NOT NULL,
FecDev SMALLDATETIME,
FechaCrea SMALLDATETIME NOT NULL,
IdCiaCrea CHAR(2) DEFAULT ('01') NOT NULL,
OrigenAdd VARCHAR(10) NOT NULL,
IdUsuario VARCHAR(11) NOT NULL
 CONSTRAINT PK_Trn_FinCanAportes PRIMARY KEY CLUSTERED (TipDoc,NumNota,IdCia),
 CONSTRAINT CK_Trn_FinCanAportesIdAgencia CHECK ((len([IdAgencia])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesIdCia CHECK ((len([IdCia])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesIdCiaCom CHECK ((len([IdCiaCom])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesIdCiaCrea CHECK ((len([IdCiaCrea])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesIdCliente CHECK ((len([IdCliente])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesIdUsuario CHECK ((len([IdUsuario])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesOrigenAdd CHECK ((len([OrigenAdd])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesTipCom CHECK ((len([TipCom])>(0))),
 CONSTRAINT CK_Trn_FinCanAportesTipDoc CHECK ((len([TipDoc])>(0))))
GO
CREATE TABLE Trn_FinConvenios ( 
TipLiq VARCHAR(3) DEFAULT ('CVN') NOT NULL,
NumLiquida INT DEFAULT ((0)) NOT NULL,
IdCia CHAR(2) DEFAULT ('01') NOT NULL,
Fecha SMALLDATETIME NOT NULL,
IdConcepto VARCHAR(4) NOT NULL,
IdProveedor VARCHAR(16) NOT NULL,
NumFactura VARCHAR(15),
FecFactura SMALLDATETIME NOT NULL,
FecVence SMALLDATETIME NOT NULL,
ValorTotal MONEY DEFAULT ((0)) NOT NULL,
TipCom VARCHAR(3) NOT NULL,
Comprobante INT DEFAULT ((0)) NOT NULL,
IdCiaCom CHAR(2) NOT NULL,
Observacion VARCHAR(2000),
Anulado BIT DEFAULT ((0)) NOT NULL,
NumDev INT DEFAULT ((0)) NOT NULL,
FecDev SMALLDATETIME,
FechaCrea SMALLDATETIME NOT NULL,
IdCiaCrea CHAR(2) DEFAULT ('01') NOT NULL,
OrigenAdd VARCHAR(10) NOT NULL,
IdUsuario VARCHAR(11) NOT NULL
 CONSTRAINT PK_Trn_FinConvenios PRIMARY KEY CLUSTERED (TipLiq,NumLiquida,IdCia),
 CONSTRAINT CK_Trn_FinConveniosIdCia CHECK ((len([IdCia])>(0))),
 CONSTRAINT CK_Trn_FinConveniosIdCiaCom CHECK ((len([IdCiaCom])>(0))),
 CONSTRAINT CK_Trn_FinConveniosIdCiaCrea CHECK ((len([IdCiaCrea])>(0))),
 CONSTRAINT CK_Trn_FinConveniosIdConcepto CHECK ((len([IdConcepto])>(0))),
 CONSTRAINT CK_Trn_FinConveniosIdProveedor CHECK ((len([IdProveedor])>(0))),
 CONSTRAINT CK_Trn_FinConveniosIdUsuario CHECK ((len([IdUsuario])>(0))),
 CONSTRAINT CK_Trn_FinConveniosOrigenAdd CHECK ((len([OrigenAdd])>(0))),
 CONSTRAINT CK_Trn_FinConveniosTipCom CHECK ((len([TipCom])>(0))),
 CONSTRAINT CK_Trn_FinConveniosTipLiq CHECK ((len([TipLiq])>(0))))
GO

IF  EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[Trn_FinAfavor]') AND name = N'PK_Trn_FinAfavor')
ALTER TABLE [dbo].[Trn_FinAfavor] DROP CONSTRAINT [PK_Trn_FinAfavor]
GO
ALTER TABLE [dbo].[Trn_FinAfavor] ADD Concepto VARCHAR(10) DEFAULT('PRESTAMO') NOT NULL
GO
ALTER TABLE [dbo].[Trn_FinAfavor] ADD  CONSTRAINT [PK_Trn_FinAfavor] PRIMARY KEY CLUSTERED 
(
	[TipDoc] ASC,
	[Recibo] ASC,
	[IdCia] ASC,
    [Concepto] ASC
) ON [PRIMARY]
GO
INSERT INTO  adm_Opciones (IdOpc,Opcion,TipoDato,Valor,NivUp,nModulo)
 VALUES ('PAC','DISTRIBUCION DE PAGOS DE APORTES Y CONVENIOS','BOOLEAN','0',5,'PRESTAMOS')
GO
INSERT INTO Sys_ObjetosApp (IdObj,IdGrupo,SubModulo,IndObj,Nombre,Formulario,Permisos,NivelMinimo,NomArchivo)
 VALUES ('FRMDAPO','PREDOC','GEN',21,'Liquidación de Aportes','FRMDAPO','S',0,'')
INSERT INTO Sys_ObjetosApp (IdObj,IdGrupo,SubModulo,IndObj,Nombre,Formulario,Permisos,NivelMinimo,NomArchivo)
 VALUES ('FRMDCAP','PREDOC','GEN',22,'Cancelación de Aportes','FRMDCAP','S',0,'')
INSERT INTO Sys_ObjetosApp (IdObj,IdGrupo,SubModulo,IndObj,Nombre,Formulario,Permisos,NivelMinimo,NomArchivo)
 VALUES ('FRMDCVN','PREDOC','GEN',23,'Causación de Convenios','FRMDCVN','S',0,'')
GO
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDAPO','ADC','Modificar o Anular documento creado en otra compañía')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDAPO','FEC','Habilitar Fecha Abierta')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDAPO','MOD','Modificar Documento')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDAPO','CIA','Cambiar de Compañía')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCAP','ADC','Modificar o Anular documento creado en otra compañía')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCAP','FEC','Habilitar Fecha Abierta')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCAP','MOD','Modificar Documento')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCAP','CIA','Cambiar de Compañía')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCVN','ADC','Modificar o Anular documento creado en otra compañía')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCVN','FEC','Habilitar Fecha Abierta')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCVN','MOD','Modificar Documento')
INSERT INTO Sys_Roles (IdObj,IdRole,Funcion)
 VALUES ('FRMDCVN','CIA','Cambiar de Compañía')
GO

ALTER TABLE Trn_FinAportes ADD 
 CONSTRAINT FK_Trn_FinAportes_adm_Usuarios FOREIGN KEY (IdUsuario) REFERENCES [dbo].[adm_Usuarios] (IdUsuario),
 CONSTRAINT FK_Trn_FinAportes_Companias FOREIGN KEY (IdCia) REFERENCES [dbo].[Companias] (IdCia),
 CONSTRAINT FK_Trn_FinAportes_Companias1 FOREIGN KEY (IdCiaCrea) REFERENCES [dbo].[Companias] (IdCia),
 CONSTRAINT FK_Trn_FinAportes_EstadoDoc FOREIGN KEY (IdEstado) REFERENCES [dbo].[EstadoDoc] (IdEstado),
 CONSTRAINT FK_Trn_FinAportes_Sys_TiposDoc FOREIGN KEY (TipLiq) REFERENCES [dbo].[Sys_TiposDoc] (IdDoc)

 CREATE NONCLUSTERED INDEX IX_Trn_FinAportesFecLiquida ON Trn_FinAportes(FecLiquida)
 CREATE NONCLUSTERED INDEX IX_Trn_FinAportesFecha ON Trn_FinAportes(Fecha)

ALTER TABLE Trn_FinAportesDet ADD 
 CONSTRAINT FK_Trn_FinAportesDet_Terceros FOREIGN KEY (IdCliente) REFERENCES [dbo].[Terceros] (IdTercero),
 CONSTRAINT FK_Trn_FinAportesDet_Trn_FinAportes FOREIGN KEY (TipLiq,NumLiquida,IdCia) REFERENCES [dbo].[Trn_FinAportes] (TipLiq,NumLiquida,IdCia)

 CREATE NONCLUSTERED INDEX IX_Trn_FinAportesDetIdCliente ON Trn_FinAportesDet(IdCliente,IdAgencia)

ALTER TABLE Trn_FinCanAportes ADD 
 CONSTRAINT FK_Trn_FinCanAportes_adm_Usuarios FOREIGN KEY (IdUsuario) REFERENCES [dbo].[adm_Usuarios] (IdUsuario),
 CONSTRAINT FK_Trn_FinCanAportes_Companias FOREIGN KEY (IdCia) REFERENCES [dbo].[Companias] (IdCia),
 CONSTRAINT FK_Trn_FinCanAportes_Companias1 FOREIGN KEY (IdCiaCrea) REFERENCES [dbo].[Companias] (IdCia),
 CONSTRAINT FK_Trn_FinCanAportes_Sys_TiposDoc FOREIGN KEY (TipDoc) REFERENCES [dbo].[Sys_TiposDoc] (IdDoc),
 CONSTRAINT FK_Trn_FinCanAportes_Terceros FOREIGN KEY (IdCliente) REFERENCES [dbo].[Terceros] (IdTercero)

 CREATE NONCLUSTERED INDEX IX_Trn_FinCanAportesFecha ON Trn_FinCanAportes(Fecha)
 CREATE NONCLUSTERED INDEX IX_Trn_FinCanAportesIdCliente ON Trn_FinCanAportes(IdCliente,IdAgencia)

ALTER TABLE Trn_FinConvenios ADD 
 CONSTRAINT FK_Trn_FinConvenios_adm_Usuarios FOREIGN KEY (IdUsuario) REFERENCES [dbo].[adm_Usuarios] (IdUsuario),
 CONSTRAINT FK_Trn_FinConvenios_Companias FOREIGN KEY (IdCia) REFERENCES [dbo].[Companias] (IdCia),
 CONSTRAINT FK_Trn_FinConvenios_Companias1 FOREIGN KEY (IdCiaCrea) REFERENCES [dbo].[Companias] (IdCia),
 CONSTRAINT FK_Trn_FinConvenios_Conceptos FOREIGN KEY (IdConcepto) REFERENCES [dbo].[Conceptos] (IdConcepto),
 CONSTRAINT FK_Trn_FinConvenios_Sys_TiposDoc FOREIGN KEY (TipLiq) REFERENCES [dbo].[Sys_TiposDoc] (IdDoc),
 CONSTRAINT FK_Trn_FinConvenios_Terceros FOREIGN KEY (IdProveedor) REFERENCES [dbo].[Terceros] (IdTercero)

 CREATE NONCLUSTERED INDEX IX_Trn_FinConveniosIdProveedor ON Trn_FinConvenios(IdProveedor)
 CREATE NONCLUSTERED INDEX IX_Trn_FinConveniosFecha ON Trn_FinConvenios(Fecha)
 CREATE NONCLUSTERED INDEX IX_Trn_FinConveniosNumFactura ON Trn_FinConvenios(NumFactura)

