 IF EXISTS(SELECT * FROM tempdb..sysobjects WHERE NAME LIKE '#AcuNiifAux%') 
 DROP TABLE #AcuNiifAux
 CREATE TABLE #AcuNiifAux ([Id] INT PRIMARY KEY IDENTITY (1,1),nAnno INT
,nMes INT,IdCia CHAR(2),nReg INT,IdCuenta VARCHAR(16),IdTercero VARCHAR(16)
,CodAgncia VARCHAR(16),IdCCosto VARCHAR(16),IdSubCos VARCHAR(16),SubAuxiliar VARCHAR(16)
,TipoAcum VARCHAR(4),SaldoAnterior MONEY,TotalDebitos MONEY,TotalCreditos MONEY,TipoAfiVehic INT)
INSERT INTO #AcuNiifAux (nAnno,nMes,IdCia,nReg,IdCuenta,IdTercero,CodAgncia,IdCCosto,IdSubCos,SubAuxiliar
,TipoAcum,SaldoAnterior,TotalDebitos,TotalCreditos,TipoAfiVehic)
SELECT nAnno,nMes,IdCia,nReg,IdCuenta,IdTercero,CodAgncia,IdCCosto,IdSubCos,SubAuxiliar
,TipoAcum,SaldoAnterior,TotalDebitos,TotalCreditos,TipoAfiVehic
FROM dbo.AcuNiifCuentasAux

DECLARE @TrnNombre VARCHAR(20)
SET @TrnNombre = 'TrnAcuNiif'
BEGIN TRANSACTION @TrnNombre
DROP TABLE AcuNiifCuentasAux

CREATE TABLE AcuNiifCuentasAux ( 
[Id] BIGINT IDENTITY ( 1,1 ) NOT NULL, 
nAnno INT DEFAULT (0) NOT NULL,
nMes INT DEFAULT (0) NOT NULL,
IdCia CHAR(2) DEFAULT ('01') NOT NULL,
nReg INT DEFAULT (0) NOT NULL,
IdCuenta VARCHAR(16) NOT NULL,
IdTercero VARCHAR(16) NOT NULL,
CodAgncia VARCHAR(16) NOT NULL,
IdCCosto VARCHAR(16) NOT NULL,
IdSubCos VARCHAR(16) NOT NULL,
SubAuxiliar VARCHAR(16) NOT NULL,
TipoAcum VARCHAR(4) NOT NULL,
SaldoAnterior MONEY DEFAULT (0) NOT NULL,
TotalDebitos MONEY DEFAULT (0) NOT NULL,
TotalCreditos MONEY DEFAULT (0) NOT NULL,
TipoAfiVehic INT DEFAULT ((0)) NOT NULL
 CONSTRAINT PK_AcuNiifCuentasAux PRIMARY KEY NONCLUSTERED ([Id]),
 CONSTRAINT CK_AcuNiifCuentasAuxCodAgncia CHECK ((len([CodAgncia]) > 0)),
 CONSTRAINT CK_AcuNiifCuentasAuxIdCCosto CHECK ((len([IdCCosto]) > 0)),
 CONSTRAINT CK_AcuNiifCuentasAuxIdCia CHECK ((len([IdCia]) > 0)),
 CONSTRAINT CK_AcuNiifCuentasAuxIdCuenta CHECK ((len([IdCuenta]) > 0)),
 CONSTRAINT CK_AcuNiifCuentasAuxIdSubCos CHECK ((len([IdSubCos]) > 0)),
 CONSTRAINT CK_AcuNiifCuentasAuxIdTercero CHECK ((len([IdTercero]) > 0)),
 CONSTRAINT CK_AcuNiifCuentasAuxnAnno CHECK (([nAnno] >= 1990 and [nAnno] <= 2050)),
 CONSTRAINT CK_AcuNiifCuentasAuxnMes CHECK (([nMes] >= 0 and [nMes] <= 13)),
 CONSTRAINT CK_AcuNiifCuentasAuxSubAuxiliar CHECK ((len([SubAuxiliar]) > 0)),
 CONSTRAINT CK_AcuNiifCuentasAuxTipoAcum CHECK ((len([TipoAcum]) > 0)))
ALTER TABLE AcuNiifCuentasAux ADD 
 CONSTRAINT FK_AcuNiifCuentasAux_Companias FOREIGN KEY (IdCia) REFERENCES [dbo].[Companias] (IdCia),
 CONSTRAINT FK_AcuNiifCuentasAux_PucNiif FOREIGN KEY (IdCuenta) REFERENCES [dbo].[PucNiif] (IdCuenta)
 CREATE CLUSTERED INDEX IX_AcuNiifCuentasAuxIdCuenta ON AcuNiifCuentasAux(nAnno,nMes,IdCia,IdCuenta,IdTercero,IdCCosto)
 CREATE NONCLUSTERED INDEX IX_AcuNiifCuentasAuxCodAgncia ON AcuNiifCuentasAux(CodAgncia)
 CREATE NONCLUSTERED INDEX IX_AcuNiifCuentasAuxIdSubCos ON AcuNiifCuentasAux(IdSubCos)

INSERT INTO AcuNiifCuentasAux (nAnno,nMes,IdCia,nReg,IdCuenta,IdTercero,CodAgncia,IdCCosto,IdSubCos,SubAuxiliar
,TipoAcum,SaldoAnterior,TotalDebitos,TotalCreditos,TipoAfiVehic)
SELECT nAnno,nMes,IdCia,nReg,IdCuenta,IdTercero,CodAgncia,IdCCosto,IdSubCos,SubAuxiliar
,TipoAcum,SaldoAnterior,TotalDebitos,TotalCreditos,TipoAfiVehic
FROM #AcuNiifAux
COMMIT TRANSACTION  @TrnNombre
