🧭 Resumo
Antes de migrações ou cargas de dados, é essencial garantir que não existam chaves duplicadas nas tabelas. A rotina CheckDupl (Configurar > Wizard de Verificação de Duplicidade) identifica e auxilia na eliminação de duplicidades com segurança, gravando os registros removidos em tabelas de backup com sufixo _UNQ
.
🧩 Aplicabilidade
Migração/upgrade de release do Protheus
Carga inicial ou saneamento de base
Pré-validação de integrações entre ambientes
Verificação periódica de qualidade de dados
✅ Pré-requisitos
Acesso ao Portal do Cliente TOTVS para baixar o pacote CHECKUNIQUE/CheckDupl correspondente à sua versão/base
Backup da base de dados (obrigatório)
Permissão para aplicar patch e alterar menus no SIGACFG
Ambiente com baixa concorrência (preferencialmente sem usuários)
Permissão no banco para criar/alterar tabelas (devido ao sufixo
_UNQ
)
Observação — Gestão de Frotas: em ambientes com MV_NGMNTFR = S, siga a documentação específica de Frotas antes de utilizar o CheckDupl (links em Referências).
🛠️ Passo a passo
1) Instalação e menu no Configurador
Baixe o pacote no Portal do Cliente (suporte.totvs.com → Downloads → Linha Protheus → pesquise por CHECKUNIQUE).
Aplique o patch no seu ambiente (conforme a sua versão/DB).
No Configurador (SIGACFG): Ambiente → Cadastros → Menus.
Edite o menu do Configurador e inclua um item:
Descrição: Verificar Duplicidade
Programa:
CheckDupl
Status: Habilitado
Módulo: Configurador
Tipo: Função Protheus
Gerar informando SIGACFG para salvar no menu existente (confirme a inclusão).
2) Execução da verificação
No Configurador, acesse Verificar Duplicidade.
Avance o Wizard e informe o caminho do arquivo
SX2.UNQ
(o sistema carrega as tabelas do SX2).Selecione as tabelas que deseja avaliar.
Clique em Finalizar e confirme a busca por duplicidades (o tempo varia conforme volume).
Ao término, será exibida a lista de chaves duplicadas.
Selecione os registros a remover (analise criteriosamente):
Dica: a opção Marcar registros sugere exclusões, mas revise antes de confirmar.
Clique em Eliminar Duplicidades.
Os registros saem da tabela original e vão para uma tabela de backup com sufixo
_UNQ
(ex.:SA1010_UNQ
).
(Opcional) Visualizar o registro completo; Salvar (TXT) duplicidades; Imprimir relatório.
Execute novamente a verificação para validar que não restaram duplicidades.
Regra de ouro: para cada chave duplicada, mantenha apenas uma ocorrência — a que representa o registro válido/atual.
🧯 Erros comuns e como resolver
A função não aparece no menu / “Programa inexistente”
✔️ Reaplique o patch CHECKUNIQUE/CheckDupl para a mesma release do AppServer/DBAccess; gere novamente o menu do SIGACFG.“Arquivo SX2.UNQ não localizado”
✔️ Verifique o caminho informado e a permissão de leitura; confirme se a base possui SX2 consistente.Desempenho lento / travamento
✔️ Execute fora do horário de pico, limite a verificação a lotes de tabelas (por módulo), aumente TEMP/TMP do SO e margem de log do banco.Tabela
_UNQ
já existe
✔️ Revise se já houve execução anterior; audite o conteúdo da_UNQ
e renomeie/arquive conforme sua política antes de nova execução.Registros “sumiram” após limpeza
✔️ Consulte a tabela<tabela>_UNQ
(backup) e seu log de mudanças; planeje restore granular se necessário.
❓ FAQ
Posso rodar em produção?
Idealmente não. Execute em homologação e planeje uma janela controlada na produção, com backup e validação de negócio.O que é
SX2.UNQ
?
Arquivo que referencia as tabelas e chaves únicas definidas para validação no Wizard.O CheckDupl corrige tudo sozinho?
Não. Ele indica duplicidades e move os registros excluídos para_UNQ
. A decisão de permanência de cada ocorrência é do analista/negócio.Consigo exportar as duplicidades?
Sim, via opção Salvar (TXT) ou Imprimir (relatório).Impacta integrações?
Pode. A remoção de duplicidades altera cardinalidade. Coordene com times de integração e republique caches/índices quando aplicável.Há rollback?
Não automático. Utilize a tabela_UNQ
para restaurar dados específicos ou recorra ao backup da base.
📎 Referências
Portal do Cliente TOTVS (Downloads → Linha Protheus → CHECKUNIQUE/CheckDupl)
UPDNGMNTFR — Chave para correta migração do SIGAMNT (Frotas) – TDN
Link: http://tdn.totvs.com.br/pages/releaseview.action?pageId=59441499Procedimento para Migração de Frotas – TDN
Link: http://tdn.totvs.com.br/pages/releaseview.action?pageId=185750221