Este artigo se aplica ao Microsoft Dynamics NAV para os seguintes países e idiomas.

  • Inglês (Canadá) (en-ca)

  • Inglês (Estados Unidos) (en-us)

  • Espanhol (México) (es-mx)

  • Francês (Canadá) (fr-ca)

Sintomas

Suponha que você lança um diário de recebimento de dinheiro que usa uma conta bancária de moeda estrangeira na versão norte-americana do Microsoft Dynamics 2009. Você pode criar um ajuste para o diário de recebimento à Vista executando a função de Ajustar taxas de câmbio... . Nessa situação, quando você cria uma reconciliação bancária na conta bancário de moeda estrangeira, o saldo do razão geral na linha sugerida é calculado incorretamente. O cálculo de reconciliação bancária não inclui o ganho ou a perda realizada da conta bancária.
Esse problema ocorre nos seguintes produtos:

  • A versão norte-americana do Microsoft Dynamics NAV 2009 R2

  • A versão norte-americana do Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

Resolução

Importante O hotfix (2548309) retornou o código original e deve ser removido de qualquer banco de dados onde essa alteração foi aplicada. Se você tiver feito alterações de código que são descritas na seção "Alterações de código", você pode alterar o código de volta para que seu código corresponde ao voltar para a seção "Código existente". Se o código não é revertido, você pode fazer uma diferença na guia Geral da reconciliação bancária e, em seguida, você não pode fazer uma postagem.
O problema com um desequilíbrio de contabilidade (G/L) o banco de dados na América do Norte de reconciliação bancária no cenário de recriar original deste artigo foi revisto e examinado. Através de uma análise mais detalhada, gestão de produtos e desenvolvimento de determinado que o problema foi relatado com o desequilíbrio não é o resultado do código padrão incorreto para o cálculo de reconciliação bancária, mas um problema de dados é causado pela configuração inicial da conta bancária. A configuração inicial incorreta da conta bancária consistiu em quebrar o vínculo entre a entrada contábil de conta bancária e a conta contábil mov. As etapas de configuração de conta bancária de moeda estrangeira incorreto podem incluir algo que se parece com o seguinte procedimento:

  1. Lançar um diário razão conta do razão da conta bancária para saldo inicial, por exemplo conta G/L 11650.

    Observação: Esta transação pode normalmente ser incluída como parte da configuração inicial do balancete G/L.

  2. Postar uma entrada de diário de recebimento de dinheiro para a conta bancária, no qual o grupo de lançamentos de conta bancária tem uma conta temporária G/L, por exemplo 11000, atribuído, e quaisquer transações não reconciliadas abertas, como abrir cheques e recibos, para a conta bancária. A conta de saldo também é definida para a mesma conta, por exemplo 11000, para gerar uma entrada de banho.

  3. A conta bancária conta do grupo de lançamento for alterada da conta do razão temporária conta G/L 11650. Portanto, a entrada original foi lançada para estabelecer o programa de instalação detalhadas da conta bancária na etapa 2 era uma outra conta de razão. Portanto, o link para as entradas de razão não é estabelecido.

Uma configuração incorreta adicional para uma conta bancária de moeda estrangeira seria semelhante ao seguinte:

  1. Lançar um diário razão conta do razão da conta bancária para saldo inicial, por exemplo conta G/L 11650.

  2. Em seguida, lançar um diário geral para a conta bancária, com a conta de saldo definido para a mesma conta de razão conforme especificado dentro do grupo de lançamento conta bancária, como nesse caso a conta de razão 11650.

Novamente, há um link entre a entrada de razão lançados na etapa 1 e a entrada contábil de conta bancária lançada na etapa 2.

Essas etapas são a maneira incorreta de processar o início de uma nova conta bancária externa. Se você executar esse processo incorreto, você poderá encontrar o problema descrito neste artigo (2548309). Esse hotfix (2548309) foi adicionada para corrigir um cenário específico foi causado pela configuração semelhante no cenário anterior. No entanto, cenários de lançamento diferente resultaram em problemas com desequilíbrios contínuos se você configurar uma conta bancária, mas, em seguida, não manter a conta do razão do grupo de lançamentos de banco, ou se não houver nenhum vínculo direto entre as entradas de conta bancária e as entradas do razão.

Recomendação: O processo recomendado para configurar um banco de moeda estrangeira seria semelhante à seguinte (supondo um valor de moeda local para o GL é US $10.000).

Observação : a seguir baseia-se em uma taxa de câmbio da moeda de 1:1. Valores de razão são atualizados na moeda local. Portanto, cálculos manuais são necessárias para a conta bancária para que o GL é atualizado com o valor correto da moeda local.

  1. Ao fazer lançamentos no GL balancetes início, lançar GL saldo do banco em uma conta temporária G/L, como conta de razão 11000, de r $10.000.

  2. Lançar um diário geral para a conta bancária, que possui a conta bancária do grupo de lançamentos definido para a conta de razão desejado, nesta conta de razão caso 11650. Aqui você definiria a conta de saldo da conta do razão 11000, que é a conta de pagamento à vista temporário inicial foi lançada originalmente como parte da instalação do balancete início.

    -Esta entrada de r $10.000 de lançamento irá atualizar a conta bancária externa e a conta de razão 11650 de r $10.000. Também reduzirá temporário conta G/L 11000 a $0 devido a compensação balanceamento de conta da transação. Pelo lançamento dessa maneira, há um link direto entre a entrada contábil de banco e da conta contábil mov. É a maneira correta de processar e lidar com a configuração de uma conta bancária externa.


Informações sobre o hotfix

Um hotfix suportado está disponível agora na Microsoft. No entanto, apenas destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico. Esta correção poderá ser submetida a testes adicionais. Portanto, se esse problema não o prejudicar, recomendamos que você aguarde o próximo service pack do Microsoft Dynamics NAV ou a próxima versão do Microsoft Dynamics NAV que contém esse hotfix.

Observação: Em alguns casos, as taxas cobradas para suporte a chamadas podem ser canceladas se um profissional de suporte técnico do Microsoft Dynamics e produtos relacionados determina que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados para questões de suporte adicionais e problemas que não se qualificam à atualização específica em questão.



Informações sobre a instalação

A Microsoft fornece exemplos de programação somente para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não está limitado a, garantias implícitas de comercialização ou adequação a um propósito específico. Este artigo presume que você esteja familiarizado com a linguagem de programação que está sendo demonstrada e com as ferramentas usadas para criar e depurar procedimentos. Engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento, mas eles não modificarão esses exemplos para fornecer funcionalidades adicionais ou construir procedimentos para atender às suas necessidades específicas.

Observação: Antes de instalar esse hotfix, verifique se todos os usuários de cliente do Microsoft Navision estiver desconectados do sistema. Isso inclui usuários de cliente do Microsoft Navision Application Server (NAS). Você deve ser o único usuário do cliente conectado ao implementar esse hotfix.

Para implementar esse hotfix, você deve ter uma licença de desenvolvedor.

É recomendável que a conta de usuário na janela de Logins do Windows ou na janela banco de dados seja atribuída a ID de função "SUPER". Se a conta de usuário não pode ser atribuída a ID de função "SUPER", você deverá verificar se a conta de usuário tem as seguintes permissões:

  • A permissão Modificar para o objeto que será alterado.

  • A permissão de execução para o objeto de sistema 5210 de identificação de objeto e do objeto de sistema 9015 de identificação de objeto .



Observação: Você não precisa ter direitos para os armazenamentos de dados, a menos que você precise executar o reparo de dados.

Alterações de código


Observação: Sempre teste código correções em um ambiente controlado antes de aplicar as correções para os computadores de produção.
Para resolver esse problema, altere o código na função CalculateBalance na tabela de cabeçalho de código de banco (10120) da seguinte forma:
Código existente

...          REPEAT
IF BankAccLedgEntry.GET(GLEntry."Entry No.") THEN BEGIN
IF "Currency Code" <> BankAccLedgEntry."Currency Code" THEN BEGIN
IF BankAccLedgEntry."Currency Code" <> '' THEN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtFCYToFCY("Statement Date",
BankAccLedgEntry."Currency Code",
"Currency Code",
BankAccLedgEntry.Amount),
Currency."Amount Rounding Precision")
ELSE
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
BankAccLedgEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END ELSE BEGIN

// Delete the folloiwng line.
"G/L Balance" += BankAccLedgEntry.Amount;

END;
END ELSE BEGIN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
GLEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END;
UNTIL GLEntry.NEXT = 0;
...

Código de substituição

...          REPEAT
IF BankAccLedgEntry.GET(GLEntry."Entry No.") THEN BEGIN
IF "Currency Code" <> BankAccLedgEntry."Currency Code" THEN BEGIN
IF BankAccLedgEntry."Currency Code" <> '' THEN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtFCYToFCY("Statement Date",
BankAccLedgEntry."Currency Code",
"Currency Code",
BankAccLedgEntry.Amount),
Currency."Amount Rounding Precision")
ELSE
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
BankAccLedgEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END ELSE BEGIN

// Add the following lines.
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
GLEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
// End of the lines.

END;
END ELSE BEGIN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
GLEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END;
UNTIL GLEntry.NEXT = 0;
...


Pré-requisitos:

Você deve ter um dos seguintes produtos instalados para aplicar esse hotfix:

  • A versão norte-americana do Microsoft Dynamics NAV 2009 R2

  • A versão norte-americana do Microsoft Dynamics NAV 2009 Service Pack 1

Informações sobre remoção

Você não pode remover esse hotfix.

Status

A Microsoft confirma que este é um problema em seus produtos listados na seção "Aplica-se a".

Observação: Este é um artigo de "PUBLICAÇÃO RÁPIDA" criado diretamente de dentro da organização de suporte da Microsoft. As informações contidas neste documento são fornecidas desta maneira, em resposta a problemas emergentes. Como um dos resultados da velocidade da publicação, os materiais podem incluir erros tipográficos e podem ser revisados a qualquer momento sem aviso prévio. Consulte os Termos de uso para outras considerações.

Precisa de mais ajuda?

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Microsoft Insider

Estas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade da tradução?
O que afetou sua experiência?

Obrigado por seus comentários!

×