O erro "Cannot insert duplicate key row in object 'dbo.NNS010'" ao solicitar transferência entre filiais via MATA311 ocorre por duplicidade na numeração do License Server na tabela NNS. Para resolver, reinicie os serviços Appserver e License Server para sincronizar os contadores, e faça ajuste no SIGACFG junto ao seu time de infraestrutura, conforme detalhes no artigo. Se persistir, o suporte deve avaliar a causa da inserção duplicada no banco de dados em modalidade de consultoria.
Tempo aproximado para leitura: 00:02:00 min
Dúvida
Ao realizar uma solicitação de transferência entre filiais por meio da rotina MATA311, o sistema apresenta a seguinte mensagem de erro no banco de dados: "Cannot insert duplicate key row in object 'dbo.NNS010' with unique index 'NNS010_UNQ'."
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) - Estoque/Custos - Todas as versões.
Solução
O incidente ocorre devido a uma duplicidade ou inconsistência no controle de numeração do License Server para a tabela NNS (Solicitações de Transferência), fazendo com que o sistema tente inserir um registro utilizando um código que já existe no banco de dados. Para corrigir esse cenário, realize os seguintes passos:
- Reinicie os serviços do sistema (Appserver) e o License Server para garantir a correta sincronização e atualização dos contadores.
Caso a situação não surta o efeito necessário e o problema ainda ocorra, valide o seguinte passo a passo junto ao seu time de infraestrutura do ambiente primeiramente em homologação:
-
Execute uma consulta em seu Banco de Dados (por exemplo: SELECT * FROM NNS100) para verificar qual foi o último código efetivamente gravado e identificar quais numerações já estão ocupadas para a filial.
-
Acesse o módulo Configurador (SIGACFG).
-
Navegue pelo menu em Cadastros > Controle de Numeração.
-
Utilize o campo de busca para encontrar a chave NNS (tabela referente às transferências).
- Edite a linha correspondente à sua filial e altere a coluna do próximo número para um valor sequencial superior ao último registro encontrado no banco de dados (por exemplo, se os números até o final 3 já existem, altere a numeração para iniciar a partir do 4).
-
Salve a modificação e feche o Controle de Numeração.
-
Saia do Configurador e faça login novamente no ambiente do sistema (SIGAEST) para que a nova numeração seja atualizada e carregada no cache.
-
Acesse a rotina de Solicitação de Transferência e clique em incluir. Verifique se o sistema apresenta o novo número sequencial e siga com a gravação para confirmar a correção.
Saiba mais:
Clique aqui e veja mais artigos sobre Movimentações no Estoque
0 Comentários