Galera, tenha a seguinte procedure no IBExpert e ela não esta gravando o valor do saldo na tabela SIGFSALD. O que pode estar errado ?
O engraçado é que ela funcionava antes perfeitamente. (Foi um amigo meu quem a fez, pois eu não entendo nada de procedure e já estou deseperado) CREATE PROCEDURE GRAVA_SALDO ( CD_MATERIA INTEGER, CD_UNIDADE INTEGER, CD_PROGRAMA INTEGER, QT_PRODUTO NUMERIC(15,2), VR_UNITARIO NUMERIC(15,2), TP_TIPO CHAR(1), TP_MODO CHAR(1)) AS DECLARE VARIABLE NR_COUNT INTEGER; DECLARE VARIABLE QT_SALDO NUMERIC(15,2); begin NR_COUNT = 0; SELECT COUNT(*) FROM SIGFSALD WHERE CD_MATERIAL = :CD_MATERIA AND CD_UNIDADE = :CD_UNIDADE AND CD_PROGRAMA = :CD_PROGRAMA INTO :NR_COUNT; IF ( :TP_TIPO = 'E' ) THEN QT_SALDO = :QT_SALDO + :QT_PRODUTO; ELSE QT_SALDO = :QT_SALDO - :QT_PRODUTO; IF ( :NR_COUNT = 0 ) THEN BEGIN INSERT INTO SIGFSALD ( CD_MATERIAL, CD_UNIDADE, CD_PROGRAMA, QT_SALDO ) VALUES ( :CD_MATERIA, :CD_UNIDADE, :CD_PROGRAMA, :QT_SALDO ); END ELSE BEGIN UPDATE SIGFSALD SET QT_SALDO = :QT_SALDO WHERE CD_MATERIAL = :CD_MATERIA AND CD_UNIDADE = :CD_UNIDADE AND CD_PROGRAMA = :CD_PROGRAMA; END if ( (:TP_MODO = 'I') and (:TP_TIPO = 'E') and ( :VR_UNITARIO <> 0 ) )then begin FOR SELECT COUNT(*) FROM SIGFSALD WHERE CD_MATERIAL = :CD_MATERIA INTO :NR_COUNT DO BEGIN UPDATE SIGFSALD SET VR_UNITARIO =:VR_UNITARIO WHERE CD_MATERIAL = :CD_MATERIA; END END suspend; end _ __________________________________ _ / )| |( \ / / | Eduardo de Almeida Silva | \ \ _( (_ | _ * [EMAIL PROTECTED] _ | _) )_ (((\ \)|_/ )__________________________( \_|(/ /))) (\\\\ \_/ / \ \_/ ////) \ / \ / \ _/ \_ / / / \ \ [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html