CREATE FUNCTION dbo.SF_Seguro_Precio(@pid_producto VARCHAR(14) ,@pId_Cliente INT, @pFecha DATETIME) 
RETURNS DECIMAL(12,2)
AS
BEGIN
/*Declaracion Variables*/
DECLARE @Precio_Seguro			DECIMAL(12,2)
DECLARE @Porc_Aumento_x_Edad	DECIMAL(12,2)
DECLARE @Fecha_Nac				DATETIME
DECLARE @Edad					SMALLINT
/*FIN Declaracion Variables*/

/*10/04/2018 Victor dijo que saquemos el precio del producto y no el de la lista de precios*/
SET @Precio_Seguro = (SELECT ISNULL(Precio_Gravado, 0) FROM Productos WHERE Id_Producto = @pId_Producto)

/*Verifica si tiene aumento por edad*/
SET @Fecha_Nac = (SELECT ISNULL(Fecha_Nac, '19000101') FROM Clientes WHERE Id_Cliente = @pId_Cliente)

SET @Edad = (SELECT dbo.CF_Edad_Persona_A_UnaFecha(@Fecha_Nac, @pFecha))

IF(@Edad < 49)
BEGIN
	SET @Porc_Aumento_x_Edad = '1'
END

IF(@Edad >= 49 AND @Edad < 64)
BEGIN
	SET @Porc_Aumento_x_Edad = '1.08'
END

IF(@Edad >= 64 AND @Edad < 74)
BEGIN
	SET @Porc_Aumento_x_Edad = '1.24'
END

IF(@Edad >= 74 AND @Edad < 99)
BEGIN
	SET @Porc_Aumento_x_Edad = '1.40'
END

IF(@Edad >= 99)
BEGIN
	SET @Porc_Aumento_x_Edad = '1.60'
END

/*FIN Verifica si tiene aumento por edad*/

SET @Precio_Seguro = @Precio_Seguro * @Porc_Aumento_x_Edad

RETURN ISNULL(@Precio_Seguro, 0)
END