segunda-feira, 14 de março de 2011

Erros na Rotina Automática

Alguns erros que ocorrem nas rotinas automáticas podem ser exibidos através do comando MostraErro(). Porém alguns erros não são detectados e a rotina roda como se estivesse tudo certo, ou seja, como se a gravação tivesse ocorrido com sucesso. Mas quando vamos procurar o registro, ele não se encontra. Passei várias vezes por isso, principalmente em cadastro que tem uma série de validações como por exemplo o cadastro de clientes. O primeiro problema foi quando eu estava fazendo a integração do Protheus com outro sistema e o CPF vinha em branco ou errado. O controle de erro da rotina automática não era acionado e eu não sabia o motivo pelo qual o cliente não estava sendo inserido até que resolvi olhar o CPF e pronto... primeiro problema resolvido. Verifiquei se o sistema mandava todos os campos obrigatórios para o Protheus e criei um log que avisava carro algum estivesse em branco. Para isso usei a função X3Obrigat(cCampo).
Só que não parou por aí pois alguns clientes continuavam a chegar e não eram gravados. Investiguei e descobri que o número do IBGE estava vindo '0000' em muitos.. ou seja.... o sistema que mandava as informações deixava muito a desejar em algumas validações. Mais uma vez isso foi corrigido. Funcionou por um bom tempo até que em alguns clientes de pessoa Jurídica o erro de não gravar continuava. De novo, investigando, descobri que o sistema mandava de forma incorreta a inscrição estadual, ou seja, não vazia a validação antes de mandar para o Protheus e em alguns casos a inscrição vinha nula ou com números digitados de forma aleatória. Depois de corrigido, até o momento a integração de clientes funciona muito bem.

Nenhum comentário:

Postar um comentário