[firebase-br] Erro em execute block

Levy Moreira levymoreira.ce em gmail.com
Seg Jul 4 10:55:34 -03 2011


Pessoal quando executo o seguinte código:

execute block
returns (CODFAT integer, TIPFAT char(2))
as
begin
  FOR select  FAT.TIPFAT, FAT.CODFAT From fat where fat.datfat =
'17.06.2011'
  INTO :TIPFAT, :CODFAT
  DO
  BEGIN
    SELECT * FROM  SP_PGMTO_CAIXA (:TIPFAT, :CODFAT)
    WHEN ANY do
    begin
      SUSPEND;
    end
  END
end


o mesmo me retorna o seguinte erro:

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 11, column 5.
WHEN.


Mas se faço assim:

execute block
returns (CODFAT integer, TIPFAT char(2))
as
begin
  FOR select  FAT.TIPFAT, FAT.CODFAT From fat where fat.datfat =
'17.06.2011'
  INTO :TIPFAT, :CODFAT
  DO
  BEGIN
  --  SELECT * FROM  SP_PGMTO_CAIXA (:TIPFAT, :CODFAT)
    SUSPEND;
    WHEN ANY do
    begin
      SUSPEND;
    end
  END
end

Ele roda blz, já verifiquei a linha 'SELECT * FROM  SP_PGMTO_CAIXA (:TIPFAT,
:CODFAT)'
e ela esta ok, se eu roda somente assim:

SELECT * FROM  SP_PGMTO_CAIXA ('VV', 100)

ela funciona beleza...

O que estou tentando fazer é dar um suspend somente quando houver algum erro
para isso uso o
WHEN ANY do
que achei aqui na lista.

Alguém tem uma pista do que pode ser?

Obrigado a todos desde já.

-- 
Levy Moreira - Programador
Sistech Informática - Juazeiro do Norte - CE

...........................................................................
"Aviso de confidencialidade profissional" - Esta mensagem eletrônica e
seus anexos são destinados exclusivamente ao(s) destinatário(s) acima e
podem conter informações confidenciais sujeitas a restrição legal de
comunicação entre as partes. Caso tenha recebido esta mensagem por engano,
fica V.S.ª ciente de que a distribuição, divulgação ou disseminação das
informações aqui contidas ou anexadas é terminantemente proibida, sujeitando
o responsável às penalidades aplicáveis. Assim, solicitamos a gentileza
de retorná-la de imediato ao remetente, eliminando-a definitivamente de
seu sistema. Em caso de dúvida, queira por favor entrar em contato."

"Confidentiality notice" - This message and its attachments are
addressed solely to the persons above and may contain privileged and
confidential
communication. If you have received the message in error, the
distribution or dissemination of the content hereof is prohibited. Please
return it
immediately to the sender and please delete the message from your system
on a permanent basis. Should you have any questions, please contact."

...........................................................................



Mais detalhes sobre a lista de discussão lista