Os códigos do centro de custos não estão refletindo nas entradas de razão geral postadas quando você posta uma fatura sem uma atribuição de centro de custos na versão finlandesa do Microsoft Dynamics NAV 2013

Aplica-se a
Dynamics NAV 2013

Este artigo se aplica ao Microsoft Dynamics NAV para a região finlandesa (fi).

Sintomas

Suponha que a configuração automática da linha de contabilidade contenha uma alocação de menos na versão finlandesa do Microsoft Dynamics NAV 2013. Quando você posta uma fatura sem uma atribuição de centro de custos, os códigos do centro de custos não estão refletindo nas entradas de razão geral postadas.

Resolução

Informações sobre o hotfix

Um hotfix com suporte agora está disponível na Microsoft. No entanto, ele destina-se apenas a corrigir o problema descrito neste artigo. Aplique-o somente a sistemas que estão enfrentando esse problema específico. Esse hotfix pode receber testes adicionais. Portanto, se você não for severamente afetado por esse problema, é recomendável aguardar o próximo pacote de serviços do Microsoft Dynamics NAV 2013 ou a próxima versão do Microsoft Dynamics NAV que contém esse hotfix.

Observação Em casos especiais, os encargos que normalmente são incorridos para chamadas de suporte podem ser cancelados se um profissional de suporte técnico do Microsoft Dynamics e produtos relacionados determinar que uma atualização específica resolve seu problema. Os custos de suporte em geral aplicam-se a questões e problemas de suporte adicionais que não se enquadrem na atualização específica em questão.

Informações de instalação

A Microsoft fornece exemplos de programação apenas para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não se limita a, as garantias implícitas de comercialização ou adequação a uma finalidade específica. Este artigo pressupõe que você esteja familiarizado com a linguagem de programação que está sendo demonstrada e com as ferramentas usadas para criar e depurar procedimentos. Os engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um procedimento específico. No entanto, eles não modificarão esses exemplos para fornecer funcionalidade adicional ou procedimentos de construção para atender aos seus requisitos específicos.

Observação Antes de instalar esse hotfix, verifique se todos os usuários cliente do Microsoft Dynamics NAV estão conectados ao sistema. Isso inclui serviços do NAS (Microsoft Dynamics NAV Application Server). Você deve ser o único usuário cliente que está conectado ao implementar esse hotfix.

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

Recomendamos que a conta de usuário na janela Logons do Windows ou na janela Logons de Banco de Dados seja atribuída à ID da função "SUPER". Se a conta de usuário não puder ser atribuída à ID da 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 você estará alterando.

  • A permissão Executar para o objeto System Object ID 5210 e para a ID do Objeto do Sistema 9015

    Objeto.

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

Alterações de código

Observação Sempre teste correções de código em um ambiente controlado antes de aplicar as correções aos computadores de produção.

Para resolve esse problema, altere o código na função PostAutoAcc no Gen. Jnl.-Post Line Codeunit (12) da seguinte maneira:

Código 1 existente

...
OrigGenJnlLine@1070006 : Record 81;
        NoOfAutoAccounts@1070003 : Decimal;
        TotalAmount@1070002 : Decimal;
        AccLine@1070001 : Integer;
        GLEntryAutoAccExist@1070000 : Boolean;
      BEGIN
        // NTR Start
        GLSetup.GET;
...

Código de substituição 1

...
OrigGenJnlLine@1070006 : Record 81;
        NoOfAutoAccounts@1070003 : Decimal;
        TotalAmount@1070002 : Decimal;
        AccLine@1070001 : Integer;

// Add the following line.
       DimensionSetIDArr@1070004 : ARRAY [10] OF Integer;
// End of the added line.

        GLEntryAutoAccExist@1070000 : Boolean;
      BEGIN
        // NTR Start
        GLSetup.GET;
...

Código 2 existente

...
END ELSE
                  GenJnlLine.VALIDATE(
                    Amount,ROUND("VAT Base Amount" * AutoAccLine."Allocation %" / 100,GLSetup."Amount Rounding Precision"));
                GenJnlLine.VALIDATE("Auto. Acc. Group",'');
                GenJnlLine."Dimension Set ID" := "Dimension Set ID";

// Delete the following lines.
               GenJnlLine."Shortcut Dimension 1 Code" := "Shortcut Dimension 1 Code";
               GenJnlLine."Shortcut Dimension 2 Code" := "Shortcut Dimension 2 Code";
// End of the deleted lines.

                AccLine := AccLine + 1;
                TotalAmount := TotalAmount + GenJnlLine.Amount;
                IF (AccLine = NoOfAutoAccounts) AND (TotalAmount <> 0) THEN
...

Código de substituição 2

...
END ELSE
                  GenJnlLine.VALIDATE(
                    Amount,ROUND("VAT Base Amount" * AutoAccLine."Allocation %" / 100,GLSetup."Amount Rounding Precision"));
                GenJnlLine.VALIDATE("Auto. Acc. Group",'');
                GenJnlLine."Dimension Set ID" := "Dimension Set ID";

// Add the following lines.
               IF AutoAccLine."Dimension Set ID" <> 0 THEN
                 IF GenJnlLine."Dimension Set ID" = 0 THEN BEGIN
                   GenJnlLine."Dimension Set ID" := AutoAccLine."Dimension Set ID";
                   GenJnlLine."Shortcut Dimension 1 Code" := AutoAccLine."Shortcut Dimension 1 Code";
                   GenJnlLine."Shortcut Dimension 2 Code" := AutoAccLine."Shortcut Dimension 2 Code";
                 END ELSE BEGIN
                   DimensionSetIDArr[1] := GenJnlLine."Dimension Set ID";
                   DimensionSetIDArr[2] := AutoAccLine."Dimension Set ID";
                   GenJnlLine."Dimension Set ID" :=
                     DimMgt.GetCombinedDimensionSetID(
                       DimensionSetIDArr,GenJnlLine."Shortcut Dimension 1 Code",GenJnlLine."Shortcut Dimension 2 Code");
                 END
               ELSE BEGIN
                 GenJnlLine."Shortcut Dimension 1 Code" := "Shortcut Dimension 1 Code";
                 GenJnlLine."Shortcut Dimension 2 Code" := "Shortcut Dimension 2 Code";
               END;
// End of the added lines.

                AccLine := AccLine + 1;
                TotalAmount := TotalAmount + GenJnlLine.Amount;
                IF (AccLine = NoOfAutoAccounts) AND (TotalAmount <> 0) THEN
                  GenJnlLine.VALIDATE(Amount,GenJnlLine.Amount - TotalAmount);
...

              

Pré-requisitos

Você deve ter a versão finlandesa do Microsoft Dynamics NAV 2013 instalada para aplicar esse hotfix.

Informações sobre remoção

Você não pode remover esse hotfix.

Status

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Observação Este é um artigo "FAST PUBLISH" criado diretamente na organização de suporte da Microsoft. As informações contidas aqui são fornecidas como resposta aos problemas possíveis. Como resultado da prontidão de disponibilizá-lo, os materiais pode conter erros tipográficos e podem ser revisados a qualquer momento são aviso prévio. Consulte Termos de Uso para obter outras considerações.