A análise do problema indicou que quando há uma falha na integração multithread, os registros submetidos a integração na thread com ocorrência de erro não possuem seu processamento finalizado, pois a execução da thread é abortada devido ao erro. Estes registros ficam represados na tabela TAFST2 com o status "2", indicando que o registro está em processamento, mas como a thread já foi abortada, ele não será mais submetido a integração novamente.
Para solucionar o problema, os ajustes abaixo foram disponibilizados:
- Parametrização para execução da integração em monothread ou multithread:
A avaliação é de que esta situação de falha na integração de registros ocorre apenas em processamentos multithread. Desta forma, foi disponibilizado a possibilidade de escolha pelo tipo de integração desejado.
Para selecionar o tipo de integração, acesse o módulo Configurador ( SIGACFG ), selecione Ambiente → Cadastros → Parâmetros e busque pelo parâmetros MV_TAFQTTH.
Para selecionar o tipo monothread, preencha o conteúdo do parâmetro com valor 0.
Para selecionar o tipo multithread, preencha o conteúdo do parâmetro com o valor da quantidade de threads desejadas para processamento. Leve em consideração que ao preencher um volume grande para a quantidade de threads, o resultado esperado no processamento pode não ser alcançado, pois é preciso ser observado a limitação da capacidade computacional direcionada para a sua aplicação TAF.
- Tratamento para restaurar os dados não processados devido a ocorrência de erro na integração multithread:
Foi realizado um tratamento para restaurar os registros que ficaram represados na tabela TAFST2 com o status "2" ( Em processamento ).
Esta restauração consiste em voltar o status para "1" ( Aguardando processamento ) os registros das threads identificadas com erro no processamento, quando se tratar de integração multithread.
Esta restauração ocorre apenas ao final do processamento. Uma mensagem indicativa será exibida, orientando ações a serem tomadas:
- Mensagem indicativa no Gerenciador de Integração orientando que o Ticket ainda não foi processado:
Há situações nas quais o Ticket é apresentado no Gerenciador de Integração, pois já foi enviado pelo ERP ao TAF, mas ainda não foram submetidos a integração.
Esta é uma situação de comportamento normal, e para não causar confusão com a ocorrência de erro no processamento multithread, foi inserido uma mensagem indicando a pendência de processamento.
- Tratamento para evitar criação de ID duplicado durante a integração para registros diferentes:
Aplicado ajuste para evitar a criação de ID duplicado na base de dados para registros ( ou eventos ) diferentes, durante o processamento da integração.