[firebase-br] Problema c/ SP e/ou IBExpert!!!!

Carlos H. Cantu (TeamFB) listas em warmboot.com.br
Qua Abr 16 16:01:50 -03 2008


A mensagem de erro é clara: em alguma situação especifica, o comando
dinâmico que foi montado está retornando um dado de tipo diferente
da variável onde está sendo atribuído.

O execute statment não pode ser validado no momento de compilação da
procedure, pois o comando a ser executado pode mudar a cada execução.

[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br
Blog - http://blog.firebase.com.br

CSF> bah, ninguem?????

CSF> Roger escreveu:
>> A Stored procedure abaixo está compilada e tudo mais, só que as vezes, 
>> conforme a data que passo por parâmetro dá o seguinte erro:
>> 
>> 
>> Unsuccessful execution caused by an unavailable resource
>> Variable type (position 0) in EXECUTE STATEMENT 'SELECT 
>> AREA_ID,OPERACAO_ID,INTO does not match returned column type.
>> At procedure 'CONSULTA_TIP'.
>> 
>> 
>> A tabela PROCESSADOS tem 800 mil registros.
>> 
>> ______
>> 
>> 
>> SET TERM ^ ;
>> 
>> CREATE PROCEDURE CONSULTA_TIP (
>>     turno varchar(5),
>>     inicio timestamp,
>>     fim timestamp)
>> returns (
>>     id_operacao varchar(10),
>>     limite bigint,
>>     transporte bigint,
>>     total bigint,
>>     minutos bigint,
>>     excedidos bigint,
>>     ciclos bigint,
>>     id_area bigint)
>> as
>> BEGIN
>>   FOR EXECUTE STATEMENT
>>     'SELECT AREA_ID,OPERACAO_ID,
>>            AVG(DURACAO) TOTAL,
>>            AVG(TRANSPORTE) TRANSPORTE,
>>            AVG(LIMITE) LIMITE,
>>            CASE WHEN COUNT(1) > 1 THEN COUNT(1) ELSE 0 END CICLOS,
>>            SUM(CASE WHEN EXCEDIDO > 0 THEN 1 ELSE 0 END) EXCEDIDOS,
>>            SUM(EXCEDIDO) MINUTOS
>> 
>>     FROM PROCESSADOS
>>     WHERE ((INICIO >= ''' || :INICIO || ''') AND (TERMINO <= ''' || :FIM || 
>> ''')) AND TURNO IN (' || :TURNO || ')
>> 
>>     GROUP BY AREA_ID,OPERACAO_ID'
>>     INTO :ID_AREA,
>>          :ID_OPERACAO,
>>          :TOTAL,
>>          :TRANSPORTE,
>>          :LIMITE,
>>          :CICLOS,
>>          :EXCEDIDOS,
>>          :MINUTOS
>>   DO
>>   BEGIN
>>     SUSPEND;
>>   END
>> END^
>> 
>> SET TERM ; ^
>> 
>> GRANT EXECUTE ON PROCEDURE CONSULTA_TIP TO SYSDBA; 
>> 
>> 
>> 
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>> 


CSF> ______________________________________________
CSF> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
CSF> Para saber como gerenciar/excluir seu cadastro na lista, use:
CSF> http://www.firebase.com.br/fb/artigo.php?id=1107
CSF> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista