--Hash:3F06E1C42B8BE52774FA860C77A8A66F
SET XACT_ABORT ON
BEGIN TRANSACTION;

GO

SET DATEFORMAT mdy;

--Validar que no existan scripts que no se hayan ejecutado
--//
IF EXISTS
(
	SELECT a.NumVersion + 1 AS HuecoInicio
	FROM ZiurVersiones a
	LEFT JOIN ZiurVersiones b ON a.NumVersion + 1 = b.NumVersion
	WHERE a.NumVersion>830 AND b.NumVersion IS NULL
	AND a.NumVersion + 1 < 972
)
RAISERROR('Error : hay un script que no se ejecuto , debe ejecutarlo manualmente.', 20, -1) with log
--//

--Colocar contenido de script diferencial aqui (Ziur.Database.publish.sql)

GO
/*
 Plantilla de script anterior a la implementación							
--------------------------------------------------------------------------------------
 Este archivo contiene instrucciones de SQL que se ejecutarán antes del script de compilación	
 Use la sintaxis de SQLCMD para incluir un archivo en el script anterior a la implementación			
 Ejemplo:      :r .\miArchivo.sql								
 Use la sintaxis de SQLCMD para hacer referencia a una variable en el script anterior a la implementación		
 Ejemplo:      :setvar TableName miTabla							
               SELECT * FROM [$(TableName)]					
--------------------------------------------------------------------------------------
*/

GO
/*
La columna Emisor de la tabla [dbo].[DocElectronicos] debe cambiarse de NULL a NOT NULL. Si la tabla contiene datos, puede que no funcione el script ALTER. Para evitar esta incidencia, debe agregar valores en todas las filas de esta columna, marcar la columna de modo que permita valores NULL o habilitar la generación de valores predeterminados inteligentes como opción de implementación.

El tipo de la columna Emisor en la tabla [dbo].[DocElectronicos] es  NVARCHAR (200) NULL, pero se va a cambiar a  NVARCHAR (50) NOT NULL. Si la columna contiene datos no compatibles con el tipo  NVARCHAR (50) NOT NULL, podrían producirse pérdidas de datos y errores en la implementación.
*/

GO
PRINT N'Modificando Tabla [dbo].[DocElectronicos]...';


GO
ALTER TABLE [dbo].[DocElectronicos] ALTER COLUMN [Emisor] NVARCHAR (50) NOT NULL;

ALTER TABLE [dbo].[DocElectronicos] ALTER COLUMN [TipoDoc] NVARCHAR (100) NOT NULL;


GO
PRINT N'Actualizando Procedimiento [dbo].[GenerarDocumentos]...';


GO
EXECUTE sp_refreshsqlmodule N'[dbo].[GenerarDocumentos]';


GO
	/*
	Plantilla de script posterior a la implementación							
	--------------------------------------------------------------------------------------
	 Este archivo contiene instrucciones de SQL que se anexarán al script de compilación.		
	 Use la sintaxis de SQLCMD para incluir un archivo en el script posterior a la implementación.			
	 Ejemplo:      :r .\miArchivo.sql								
	 Use la sintaxis de SQLCMD para hacer referencia a una variable en el script posterior a la implementación.		
	 Ejemplo:      :setvar TableName miTabla							
				   SELECT * FROM [$(TableName)]					
	--------------------------------------------------------------------------------------
	*/

	
GO

GO
PRINT N'Actualización completada.';


GO



--Actualizar datos de la version

INSERT INTO ZiurVersiones (IdVersion, NumVersion, Descripcion)
VALUES (382,972,'AMPLIACION DE CARACTERES EN COLUMNA TipoDoc EN LA TABLA DocElectronicos')
GO


COMMIT
GO
