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