IF EXISTS ( SELECT * 
            FROM   sysobjects 
            WHERE  id = object_id(N'dbo.CF_Localidades_Disponibles') 
                   and type = 'FN')
BEGIN
    DROP FUNCTION dbo.CF_Localidades_Disponibles
END
GO

CREATE FUNCTION dbo.CF_Localidades_Disponibles(@pId_Sector SMALLINT, @pFecha DATETIME, @pId_Lista_Precio_Evento SMALLINT)
RETURNS INT
AS
BEGIN
DECLARE @Cantidad_Localidades_Disponibles	INT
DECLARE @Localidades_Totales				INT
DECLARE @Localidades_Reservadas				INT
DECLARE @Localidades_Ocupadas				INT

-------------------------------------------------------------------------------------------------------------------------------------

SET @Localidades_Totales = (dbo.CF_Localidades_Totales(@pId_Sector))

SET @Localidades_Reservadas = (dbo.CF_Localidades_Reservadas(@pId_Sector,@pFecha,@pId_Lista_Precio_Evento))

SET @Localidades_Ocupadas = (dbo.CF_Localidades_Ocupadas(@pId_Sector,@pFecha,@pId_Lista_Precio_Evento))

-------------------------------------------------------------------------------------------------------------------------------------

SET @Cantidad_Localidades_Disponibles = @Localidades_Totales - @Localidades_Reservadas - @Localidades_Ocupadas

-------------------------------------------------------------------------------------------------------------------------------------

RETURN ISNULL(@Cantidad_Localidades_Disponibles, 0)
END