Estou com um problema de calculos em uma função, abaixo:
CREATE OR REPLACE FUNCTION calcular(IN v_entrada numeric DEFAULT 0, IN v_mes integer DEFAULT 1, IN v_ano integer DEFAULT 2013, OUT v_soma numeric)
RETURNS numeric AS
$BODY$
DECLARE
vlSalAnt numeric := 0;
BEGIN
SELECT
coalesce(sum(con_saldo), 0)
INTO vlSalAnt
FROM
contabilizacoes
WHERE
con_mes = v_mes AND con_ano = v_ano;
if vlSalAnt >= 0 then
v_soma := (v_entrada + vlSalAnt);
else
v_soma := (v_entrada - vlSalAnt);
end if;
END
$BODY$
LANGUAGE plpgsql VOLATILE;
Como podem ver quando o valor da variável vlSalAnt é positivo está fazendo correto o cálculo,
mas quando entra no else ao invéz de fazer (500 - 100) está fazendo (500 +100), o que estou fazendo errado nesta função.
Pergunta
Alphak
Olá,
Estou com um problema de calculos em uma função, abaixo:
Como podem ver quando o valor da variável vlSalAnt é positivo está fazendo correto o cálculo,
mas quando entra no else ao invéz de fazer (500 - 100) está fazendo (500 +100), o que estou fazendo errado nesta função.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.