[firebase-br] problema gravissimo com procedure + trigger - HELP

Chico chico em auditecmatao.com.br
Qui Jan 3 12:15:22 -03 2008


Esse seu banco foi criado nessa versão do FB?
Caso ele tenha sido criado em uma versão anterior, você fez 
backup/restore para esta versão mais atual ?

Murilo >> CPR Sistemas escreveu:
> Ahh sim esquecei, usamos FB 2.0.3
>
> Murilo >> CPR Sistemas escreveu:
>   
>> tenho uma procedure que faz o seguinte update:
>>
>> update ITEMMOVIMENTO
>> set id_subnivel_localitem = :id_subnivel_localitem
>> where id_item = :id_item and
>>        id_empresa = 1;
>>
>>
>>
>>
>> Na tabela ITEMMOVIMENTO tenho a seguinte trigger
>>
>> CREATE OR ALTER TRIGGER TR_ITEMMOVIMENTO FOR ITEMMOVIMENTO
>> ACTIVE AFTER UPDATE POSITION 0
>> as
>> begin
>> 	if (new.id_subnivel_localitem is not null)
>> 	     execute procedure PROC_ATUALIZAITEMESTOQUE(new.id_item, new.id_empresa, 
>> new.id_itemgrade, new.id_subnivel_localitem, (new.qt_movimento - 
>> old.qt_movimento), 0);
>> end
>>
>>
>>
>> e na procedure PROC_ATUALIZAITEMESTOQUE eu tenho isso:
>>
>> CREATE OR ALTER PROCEDURE PROC_ATUALIZAITEMESTOQUE(
>>      ID_ITEM INTEGER,
>>      ID_EMPRESA INTEGER,
>>      ID_GRADEITEM INTEGER,
>>      ID_LOCALITEM INTEGER,
>>      QT_FISICO DOUBLE PRECISION,
>>      QT_RESERVADO DOUBLE PRECISION)
>> AS
>> begin
>>
>> 	if (ID_LOCALITEM is null)
>> 		exception EXP_TESTE 'Ahhhhhhhhhhhhhhhhh';
>> ....
>> end
>>
>>
>>
>> Acontece que o meu id_subnivel_localitem na tabela ITEMMOVIMENTO é not null, e 
>> eu tenho certeza que não existe nenhum registro com null, mas por algum motivo 
>> ele passa dentro do if "if (ID_LOCALITEM is null)" e dispara a exceção 
>> EXP_TESTE, o que pode estar acontecendo??? pois o só está indo nulo neste campo, 
>> e antes que falem, já recompilei todas as dependências, já restartei o banco, 
>> até a máquina já reiniciei no desespero. A posição do campo também já mudei e 
>> também já fiz verificação dos outros campos, ele é o único que está indo nulo 
>> (detalhe é que é o mais importante.... o único que nunca pode ser nulo).
>>
>>
>> Agluém faz idéia do que seja? Problema de BIOS, bug,................ Já não sei 
>> mais o que tentar, até mesmo já substituí a variável por um valor FIXO e 
>> adivinha o que aconteceu.... NULOOOOOOOOOOooooooooooooooooooooooo
>>
>> :(
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>     
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>   

-- 
Abraços
Chico




Mais detalhes sobre a lista de discussão lista