Utilizar a opção de debug contida no IBExpert é de grande ajuda para identificar determinados erros que ocorrem ao executar algum procedimento no banco de dados quando a mensagem do erro não está muito clara.

O exemplo adotado no FAQ é de uma sincronização de TABELAS DE PREÇO, no qual está faltando um PRODUTO no banco de destino e nós iremos identificar qual produto é este através do debug. Lembrando que para corrigir essa situação normalmente não precisa debugar, basta verificar se a tabela de produtos do banco de origem está diferente da de destino e sincronizar ela, mas para ter um exemplo simples para o FAQ, foi adotada essa simulação.

Lembrando que para executar as sincronização direto pelas procedures elas devem ser executadas no banco que RECEBE as informações, ou seja o banco de destino.

Primeiro abra a procedure ou o script que deseja executar (para executar script utilize a opção F12) e mande executar:

Executando Procedure

Executando Procedure/Script

Será retornada o erro que o script apresenta no resumo das informações abaixo, normalmente indicando a procedure, ou tabela ou campo que apresenta erro:

Erro

Erro

Até o momento nos executamos a procedure/script e vimos o retorno do erro, o processo de debugar começa agora. Para acessar opção de debug click no botão a seguir:

Botão de Debug

Botão Debug

Com isso deve ser preenchido os parâmetros exigidos pela procedure/script e de acordo com a necessidade você pode mandar executar (F9) que vai executar até apresentar o erro, ou executar passo a passo (F8), que vai ser executado linha por linha de código.

Execução de Debug

Execução de Debug

Após preencher os parâmetros e mandar executar, deve ser retornada a mensagem de erro na aba Menssages, porem agora temos a opção de clicar na aba Parameters and Variables para podermos identificar qual é o problema da mensagem de erro.

Debugando

Debugando

Com base na mensagem de erro retornada e na parte do código que acontece o erro, você está apto a deduzir qual pode ser o problema na execução da procedure/script. No caso deste exemplo é o fato do código não conseguir encontrar o produto de código ID 547 na hora de inserir ele na tabela ITENS_TABELAS_PRECOS, o que significa que ele não está na tabela de PRODUTOS.

Idenfiticando variabeis no Debug

Idenfiticando variabeis no Debug

Comparando com a tabela de Produtos

Comparando com a tabela de Produtos

Neste caso para corrigir, basta executar a procedure de sincronizar produtos.

Sincronização erro debugar
Este artigo ajudou você?
 0
 0