Ocorrência
Ao utilizar a rotina Integração Smart Schedule TAFA621, é apresentado um erro no arquivo Dbacess.log.
"Error : 2627 (23000) (RC=-1) - [Microsoft][SQL Server Native Client 11.0][SQL Server] Violation of PRIMARY KEY constraint 'C0A010_PK'. Cannot insert duplicate key in object 'dbo.C0A010'. The duplicate key value is (0)."
Ambiente
Cross Segmento - TOTVS BackOffice (Linha Protheus) - TAF - REINF - A partir da versão 12.1.2510
Solução
Esse problema ocorre porque o campo R_E_C_N_O_ da tabela não está habilitado o auto incremento (Identity), que é uma configuração padrão do DbAccess para as tabelas do Protheus.
Para confirmar se o campo perdeu a propriedade, execute a query abaixo no banco de dados (substituindo C0A010 pelo nome da tabela informada na mensagem de erro do seu ambiente):
SELECT
name AS Nome_Coluna,
is_identity AS Tem_Identity
FROM sys.columns
WHERE object_id = OBJECT_ID('dbo.C0A010')
AND name = 'R_E_C_N_O_'
Se o resultado da coluna Tem_Identity for 0, confirma-se que a tabela não está com a configuração de auto incremento habilitada.
Para solucionar o problema, siga os passos abaixo:
Realize o backup da tabela afetada (exemplo:
C0A010).Apague o conteúdo do parâmetro MV_VAUTCON.
Drope a tabela que apresentou o incidente.
-
Execute novamente o processamento das rotinas autocontidas do TAF. Esse procedimento recriará a tabela e reativará a propriedade de auto incremento no campo
R_E_C_N_O_.
O mesmo procedimento deve ser replicado para todas as tabelas em que ocorrer o alerta de chave duplicada no RECNO = 0.
IMPORTANTE: É recomendada a realização do backup da tabela antes da execução do processo, e que o referido processo seja realizado por um consultor com conhecimento nas tabelas e rotinas do TAF.
Saiba Mais
FAQ - Integração de documentos fiscais Smart Schedule - Documentação de Apoio
#KCSBuilder
0 Comentários