IF EXISTS ( SELECT * 
            FROM   sysobjects 
            WHERE  id = object_id(N'dbo.CP_SCA_ValidoTagsImportados') 
                   and OBJECTPROPERTY(id, N'IsProcedure') = 1 )
BEGIN
    DROP PROCEDURE dbo.CP_SCA_ValidoTagsImportados 
END
GO

CREATE PROCEDURE [dbo].[CP_SCA_ValidoTagsImportados]	@pTag		VARCHAR(20),
														@pId_Acceso SMALLINT,
														@Flag_TagHabilitado	TINYINT OUTPUT
AS
BEGIN
DECLARE @Puertas				VARCHAR(100)
DECLARE @SqlStr					NVARCHAR(1000)
DECLARE @Parametros				NVARCHAR(100)

SET @Puertas = (SELECT Puerta FROM CD_Tags WHERE Id_Tag = @pTag AND Id_Lista_Precio IN (SELECT Id_Lista_Precio FROM CD_Accesos_Eventos WHERE Id_Acceso = @pId_Acceso))

SET @SqlStr = N'SELECT @Flag_ExisteOUT = 1 ' +
			   'FROM CD_Tags ' +
			   'WHERE ' +
				'Id_Tag = ''' + @pTag + 
				''' AND Id_Lista_Precio IN (SELECT Id_Lista_Precio FROM CD_Accesos_Eventos WHERE Id_Acceso = ' + CONVERT(VARCHAR(10), @pId_Acceso) +')' +
				' AND ' + CONVERT(VARCHAR(10), @pId_Acceso) + ' IN (' + @Puertas + ')' 				

SET @Parametros = N'@Flag_ExisteOUT TINYINT OUTPUT';

EXECUTE sp_executesql @SqlStr, @Parametros, @Flag_ExisteOUT = @Flag_TagHabilitado OUTPUT;

RETURN ISNULL(@Flag_TagHabilitado, 0)

END