Ir para conteúdo
Fórum Script Brasil
  • 0

Function que retorna extrato com saldo


Alison Wolf

Pergunta

Salve a todos...

Tenho um pequeno sistema financeiro, onde tenho uma tabela com a seguinte estrutura:
Table extrato (id integer, data date, tipo char(1), valor real);
estou tentando criar uma função no PostgreSQL, que me traga os registros, ordenado por data, e calculando o saldo progressivo.

ex:

id, data, tipo, valor, saldo

1, 01-03-2018, C, 100, 100
2, 01-03-2018, D, 50, 50
3, 02-03-2018, C, 500, 550
4, 02-03-2018, D, 300, 250
5, 03-03-2018, D, 300, -50

Criei esta função
CREATE OR REPLACE FUNCTION public.retorna_resumo(date,date)
RETURNS SETOF extrato_financeiro
LANGUAGE 'plpgsql'
COST 100
VOLATILE
ROWS 1000
AS $BODY$

DECLARE resumo extrato_financeiro;
BEGIN
FOR resumo IN select id, data, tipo, valor from extrato where data between $1 and $2 order by data, id
LOOP
IF resumo.tipo = 'C' THEN
resumo.saldo:= resumo.saldo + resumo.valor;
END IF;
IF resumo.tipo = 'D' THEN
resumo.saldo:= resumo.saldo - resumo.valor;
END IF;

RETURN NEXT resumo;
END LOOP;
RETURN;
END;

$BODY$;

A função, até retorna as informações, mas não calcula o SALDO...

Peço ajuda, pois estou travado nisto.

Agradeço

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...