Histórico da Página
...
Portuguese | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
FAQ: Por que é exibida a mensagem de não conformidade: Chave Duplicada SC2?
Solução Passos para análise: 1) Em ambiente de testes padrão e atualizado, baseado no Portal do Cliente, sem a presença de customizações, faça o teste de inclusão a partir de base de dados vazia, efetuando inclusões e verificando se é gerado o mesmo erro, visando validar o comportamento da rotina. 2) Após backup, a partir da base de dados replicada para o ambiente de testes, apague fisicamente todos os registros marcados como deletados logicamente (D_E_L_E_T_=*) para a tabela SC2; 3) Analisar na base de dados da tabela SC2, com registros que atendam à mesma chave presente no X2_UNICO, o qual no momento da inclusão causa tentativa de duplicidade por já existir registro com a mesma chave gravado na base: X2_UNICO DA TABELA SC2: C2_FILIAL+C2_NUM+C2_ITEM+C2_SEQUEN+C2_ITEMGRD. Exemplo de registro posicionado para análise (localizar no arquivo error.log: " ***"): Campo 1: C2_FILIAL(C) :01 Campo 2: C2_NUM(C) :045091 Campo 3: C2_ITEM(C) :01 Campo 4: C2_SEQUEN(C) :002 Campo 6: C2_PRODUTO(C) :0229 Campo 7: C2_LOCAL(C) :99 4) Ao utilizar os arquivos SXE/SXF para controle de numeração, analise se os números gravados para a tabela SC2 os quais serão usados como sugestão na próxima gravação estão corretos, onde neste caso, efetue a correção para numeração que não cause tentativa de duplicidade. Através do programa APCFG110, é possível validar as numerações envolvidas. Após realizar backup, faça uma cópia do menu SIGACFG.XNU e adicione no menu a rotina APCFG110, caso ele não esteja presente no seu menu. Exemplo: APCFG110 1 xxxxxxxxxx 99 0 . Através dessa rotina é possível selecionar nos campos Próximos e Números em Uso/Liberados a tabela SC2, onde é possível alterar a numeração presente para o campo C2_NUM. Após essa alteração as tabelas SXE.dbf / SXF.dbf serão atualizadas automaticamente, como também o controle via Hardlock. 5) Validar se o inicializador padrão presente no campo C2_NUM corresponde ao padrão da rotina: Inic. Padrão: GETNUMSC2(). 6) Para validar os registros que já estão em duplicidade na sua base, pode-se também utilizar o programa CheckDupl. A exemplo do programa APCFG110, faça a inclusão no menu do Configurador: - Título: Verificar Integridade - Programa: CheckDupl - Abrir o Configurador e executar a nova opção: Verificar Integridade, onde é possível selecionar a tabela SC2, para validar registros em duplicidade. 7) Validar o processo sem a presença de customizações, visando avaliar o comportamento da rotina sem tais customizações. |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas