Erro "Violação da restrição DE CHAVE PRIMÁRIA 'PK##0671112'" ao fazer a rotina de fechamento de fim de ano no Razão Geral

Este artigo fornece uma resolução para o problema de que você não pode fazer a rotina de fechamento de fim de ano no General Ledger no Microsoft Dynamics GP devido ao erro violação da restrição PRIMARY KEY 'PK##0671112' .

Aplica-se a: Microsoft Dynamics GP
Número de KB original: 950019

Sintomas

Ao tentar executar a rotina de fechamento de fim de ano no General Ledger no Microsoft Dynamics GP, você recebe a seguinte mensagem de erro:

[Microsoft] [ODBC SQL Server Driver][SQL Server]Violação da restrição PRIMARY KEY 'PK##0671112'. Não é possível inserir a chave duplicada no objeto '##0671112'

Motivo

As transações de fechamento de fim de ano contêm uma moeda que não é atribuída a uma conta.

Resolução

Para resolve esse problema, atribua a moeda à conta apropriada. Para fazer isso, siga estas etapas:

  1. Fazer com que todos os usuários saiam do Microsoft Dynamics GP.

  2. Restaure um backup do banco de dados da empresa que foi feito antes de você tentar executar a rotina de fechamento de fim de ano do Razão Geral.

  3. Inicie o Console do Administrador de Suporte, o Analisador de Consultas SQL da Microsoft ou SQL Server Management Studio. Para fazer isso, use um dos métodos a seguir, dependendo do programa que você está usando.

    Método 1: Para SQL Server Mecanismo de Área de Trabalho

    Se você estiver usando SQL Server Mecanismo de Área de Trabalho (também conhecido como MSDE 2000), inicie o Console de Administrador de Suporte. Para fazer isso, selecione Iniciar, aponte para Todos os Programas, aponte para o Console do Administrador da Microsoft e selecione Console de Administrador de Suporte.

    Método 2: para SQL Server 2000

    Se você estiver usando SQL Server 2000, inicie o SQL Query Analyzer. Para fazer isso, selecione Iniciar, aponte para Todos os Programas, aponte para Microsoft SQL Server e selecione Analisador de Consultas.

    Método 3: para SQL Server 2005

    Se você estiver usando SQL Server 2005, inicie SQL Server Management Studio. Para fazer isso, selecione Iniciar, aponte para Todos os Programas, aponte para o Microsoft SQL Server 2005 e selecione SQL Server Management Studio.

  4. Execute o seguinte script no banco de dados da empresa:

    Select CURNCYID FROM GL20000
    
  5. Anote todas as moedas exibidas na coluna CURNCYID .

  6. Inicie o Microsoft Dynamics GP e entre como usuário 'sa'.

  7. No menu Cartões , aponte para Financeiro e selecione Conta.

  8. No campo Conta , digite o número da conta de ganhos retido.

  9. Selecione Conversor de Moedas.

  10. Na janela Selecionar Moedas de Conta, selecione as caixas de marcar de ID Conversor de Moedas que você observou na etapa 5.

  11. Execute a rotina de fechamento de fim de ano no Razão Geral.