Ok Tiago... funcionou... muito obrigado...

Obrigado a todos pela ajuda e a atenção dispensada a mim.

Um abraço...

Tiago Athayde escreveu:
> desculpe,
> onde tem r é registros! ficaria assim
>
>
>       linha.emissao = registros.emissao;
>       linha.historico = registros.emissao;
>       linha.entrada = registros.entrada;
>       linha.saida = registros.saida;
>       linha.saldo = registros.saldo;
>
> Em 30/03/07, *Tiago Athayde* <[EMAIL PROTECTED] 
> <mailto:[EMAIL PROTECTED]>> escreveu:
>
>     Ola Ivan,
>
>     Primeiro vc tem que criar um tipo para o retorno da função
>
>     CREATE TYPE "public"."tipo_caixa" AS (
>       "emissao" Date,
>       "historico" VARCHAR(60),
>       "entrada" numeric(12,2),
>       "saida" numeric(12,2),
>       "saldo" numeric(12,2),
>     );
>
>     mude o tipo dos campos para o que vc usa!
>
>     Depois vc cria a função que vai retornar o tipo criado
>
>
>     CREATE OR REPLACE FUNCTION "public"."livrocaixa" (date, date) RETURNS
>     SETOF "public"."tipo_caixa" AS
>     $body$
>     declare
>       registros record;
>       linha tipo_caixa;
>     begin
>       for registros in
>         SELECT cx.emissao, cx.historico, cx.entrada , cx.saida,
>         (SELECT sum( x.entrada)-sum(x.saida) FROM caixa AS x WHERE
>              x.idcaixa <= cx.idcaixa) as saldo
>         FROM caixa as cx where cx.emissao between $1 and $2 ORDER BY
>              cx.idcaixa
>         loop
>           linha.emissao = r.emissao;
>           linha.historico = r.emissao;
>           linha.entrada = r.entrada;
>           linha.saida = r.saida;
>           linha.saldo = saldo;
>           return next linha;
>         end loop;
>         return;
>     end
>     $body$
>     LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
>
>     Espero ter ajudado
>     Abraços
>
>>>                     
>>> ------------------------------------------------------------------------
>>>
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a