Re: [firebase-br] Dúvida com Procedure com Datas

Mr.Mothman mr.mothman em gmail.com
Qui Jul 14 11:59:38 -03 2005


Caro Fellipe,

  Sinceramente eu não consigo ver pra que isso seria interessante, but...

  Como você não tem (aparentemente) uma coluna para índice destas
linhas, creio que o mais coerente seja simular um CURSOR do Oracle com
o comando FOR.

  Creio que uma procedure como esta abaixo seja genérica o bastante
para atender o seu caso.

  Obs.: O parâmetro de entrada é do tipo Varchar. Basta informar uma
data no formato 'MÊS/DIA/ANO' que ele localiza a anterior. Caso
queira, reescreva a mesma da maneira que lhe atenda e poste sua
solução posteriormente.

  Para testá-la, use uma linha de comando como:

  execute procedure sel_data ('1/28/2005');

  Abaixo o código:

  CREATE PROCEDURE SEL_DATA
  (
    DATA VARCHAR(10)
  )
  RETURNS
  (
    NEW_DATA DATE,
    NEW_VALUE NUMERIC(10,2)
  )
  AS
  BEGIN

    FOR SELECT DATA, VALOR FROM CAIXA
            WHERE DATA < CAST (:DATA AS DATE)
            INTO :NEW_DATA, :NEW_VALUE
    
    DO
            NEW_VALUE=NEW_VALUE;

  END

  Espero ter podido ajudá-lo.

  [ ]'s

  Mr.Mothman




Mais detalhes sobre a lista de discussão lista