[firebase-br] SP_movcaixa

Fausto Cintra Junior fcintrajr em yahoo.com.br
Qua Nov 3 11:23:19 -03 2004


É asim mesmo que funciona.
Se vc não zerar o valor da variável ela vai manter o valor que tinha antes.
Os valores das variáveis de output não são apagados a cada suspend.

[]'s,
Fausto

----- Original Message ----- 
From: "Marcio Neves" <marcio_manhaes em uol.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, November 02, 2004 4:51 PM
Subject: [firebase-br] SP_movcaixa


Amigos.

A SP  abaixo funciona , mas repete o último valor dos débitos para cada
lançamento de crédito qdo deveria ficar Null:

CREATE PROCEDURE SP_MOVCAIXA (

    INI DATE,

    FIM DATE

     )

RETURNS (

    DATA    DATE,

    MOV     VARCHAR(30) CHARACTER SET ISO8859_1,

    VALP   DOUBLE PRECISION,
/* valores de crédito)

    VALN   DOUBLE PRECISION
/* valores de débito)

    )

AS

Begin



      FOR  SELECT DATA,MOV,VAL

      FROM MOVI

      WHERE ((DATA BETWEEN :INI AND :FIM) AND (VAL<0))

      INTO  :DATA,:MOV,:VALN

        DO  BEGIN

        SUSPEND;

        END





  FOR SELECT   DATA,MOV,VAL

      FROM MOVI

      WHERE ((DATA BETWEEN :INI AND :FIM) AND (VAL>0) )

      INTO  :DATA,:MOV,:VALP

    DO

  BEGIN

  SUSPEND;

   end



 SUSPEND;

 END



Executando-a  o  resultado  vem , resumidamente assim:




(CRÉDITO)              (DÉBITO )

DATA                                  MOV
VALP                      VALN



10/10/2004           DESPESAS
       -3.000,00

12/10/2004           DESPESAS
           -5.000,00

14/10/2004          RECEITA EM DINHEIRO
 10.0000,00                -5.000,00 ( valor indevido, deveria ser null  )

 15/10/2004         RECEITA  EM CARTÃO
      8.000,00                -5.000,00       idem



 Como podem ver necessito da ajuda dos amigos, pois já tentei tudo e não
consegui que haja essa tal indesejada repetição.



Desde já agradeço a atenção que por certo receberei. Abs. Márcio
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br





Mais detalhes sobre a lista de discussão lista