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

CREATE FUNCTION dbo.CF_Localidades_Totales(@pId_Sector SMALLINT)
RETURNS INT
AS
BEGIN
DECLARE @Cantidad_Localidades_Totales		INT
DECLARE @Cantidad_Productos_Del_Sector		INT
-------------------------------------------------------------------------------------------------------------------------------------

SET @Cantidad_Productos_Del_Sector = ISNULL((SELECT COUNT(*) FROM Productos WHERE Tipo = 'L' AND Activo = 1 AND Id_Sector = @pId_Sector), 0)

IF @Cantidad_Productos_Del_Sector = 1
BEGIN
	--Es un solo producto (Ej. Popular sin numerar) que tiene la cantidad maxima de ocupacion
	SET @Cantidad_Localidades_Totales = ISNULL((SELECT ISNULL(Estiba_Max, 0) FROM Productos WHERE Tipo = 'L' AND Activo = 1 AND Id_Sector = @pId_Sector), 0)
END
ELSE
BEGIN
	--Son todos los productos (Asientos) que pertenecen al Id_Sector
	SET @Cantidad_Localidades_Totales = ISNULL((SELECT COUNT(*) FROM Productos WHERE Tipo = 'L' AND Activo = 1 AND Id_Sector = @pId_Sector), 0)
END

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

RETURN ISNULL(@Cantidad_Localidades_Totales, 0)
END