Este artigo descreve um problema ao aplicar uma fatura de venda contendo o IVA não realizado e linha negativa para um memorando de crédito na versão italiana do Microsoft Dynamics NAV 2009. Esse problema ainda ocorre depois de implementar a correção do KB 2882952.Siga as etapas na seção alterações de código para resolver o problema. Esse problema ocorre nos seguintes produtos:
-
A versão em italiano do Microsoft Dynamics NAV 2009 R2
-
A versão em italiano do Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
Resolução
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 2009 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. Os engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento. No entanto, 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 do cliente do Microsoft Dynamics NAV estiver desconectados do sistema. Isso inclui os serviços do Microsoft Dynamics NAV 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 5210 de identificação de objeto de sistema e o sistema 9015 de identificação de objetoobjeto.
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, execute as seguintes etapas:
-
Altere o código nas chaves na tabela entrada de IVA (254) da seguinte forma:Código existente
...KeyGroups=SalesTax } { ;Type,Country/Region Code,VAT Registration No.,VAT Bus. Posting Group,VAT Prod. Posting Group,Posting Date; SumIndexFields=Base,Additional-Currency Base; KeyGroups=VIES_EC }// Delete the following line. { ;Document No.,Posting Date }// End of the deleted line. { ;Transaction No. } { ;Tax Jurisdiction Code,Tax Group Used,Tax Type,Use Tax,Posting Date; KeyGroups=SalesTax } { ;Type,Closed,VAT Bus. Posting Group,VAT Prod. Posting Group,Tax Jurisdiction Code,Use Tax,Tax Liable,VAT Period,Operation Occurred Date,Activity Code;...
Código de substituição
...KeyGroups=SalesTax } { ;Type,Country/Region Code,VAT Registration No.,VAT Bus. Posting Group,VAT Prod. Posting Group,Posting Date; SumIndexFields=Base,Additional-Currency Base; KeyGroups=VIES_EC }// Add the following line. { ;Document No.,Posting Date ;SumIndexFields=Remaining Unrealized Base,Remaining Unrealized Amount }// End of the added line. { ;Transaction No. } { ;Tax Jurisdiction Code,Tax Group Used,Tax Type,Use Tax,Posting Date; KeyGroups=SalesTax } { ;Type,Closed,VAT Bus. Posting Group,VAT Prod. Posting Group,Tax Jurisdiction Code,Use Tax,Tax Liable,VAT Period,Operation Occurred Date,Activity Code;...
-
Altere o código na função GetUnRealizedVATPart na tabela entrada de IVA (254) da seguinte forma:1 de código existente
...END; EXIT(GLSetup."Additional Reporting Currency"); END;// Delete the following line. PROCEDURE GetUnRealizedVATPart@2(SettledAmount@1003 : Decimal;Paid@1005 : Decimal;Full@1001 : Decimal;TotalUnrealVATAmountFirst@1006 : Decimal;TotalUnrealVATAmountLast@1007 : Decimal;Type2@1130000 : 'Sale,Purchase';DocType@1130001 : ' ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund,,,,Dishonored';LedgEntryOpen@1130002 : Boolean;LedgEntryAmount@1130003 : Decimal;LedgEntryRemAmt@1130004 : Decimal;TotalPayments@1130005 : Decimal) : Decimal;// End of the deleted line. VAR UnrealizedVatType@1000 : ' ,Percentage,First,Last,First (Fully Paid),Last (Fully Paid)'; BEGIN IF (Type <> 0) AND...
1 código de substituição
...END; EXIT(GLSetup."Additional Reporting Currency"); END;// Add the following line. PROCEDURE GetUnRealizedVATPart@2(SettledAmount@1003 : Decimal;Paid@1005 : Decimal;Full@1001 : Decimal;TotalUnrealVATAmountFirst@1006 : Decimal;TotalUnrealVATAmountLast@1007 : Decimal;Type2@1130000 : 'Sale,Purchase';DocType@1130001 : ' ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund,,,,Dishonored';LedgEntryOpen@1130002 : Boolean;LedgEntryAmount@1130003 : Decimal;LedgEntryRemAmt@1130004 : Decimal;TotalPayments@1130005 : Decimal;VATPart@1130006 : Decimal;VAR TransactionInclPrepmt@1130007 : Boolean) : Decimal;// End of the added line. VAR UnrealizedVatType@1000 : ' ,Percentage,First,Last,First (Fully Paid),Last (Fully Paid)'; BEGIN IF (Type <> 0) AND...
2 de código existente
...(("Remaining Unrealized Amount" = 0) AND ("Remaining Unrealized Base" = 0)) THEN EXIT(0);// Delete the following lines. //IF ABS(Paid) = ABS(Full) THEN // EXIT(1); CASE UnrealizedVatType OF UnrealizedVatType::Percentage: BEGIN IF Type2 = Type2::Purchase THEN BEGIN IF (DocType = DocType::"Credit Memo") THEN BEGIN IF (TotalPayments - ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) <= 0 THEN EXIT(1) END ELSE BEGIN IF (TotalPayments - ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) < 0 THEN EXIT(CalcVatPart(GetCurrencyCode(), 1.0, TotalPayments, ("Remaining Unrealized Amount" + "Remaining Unrealized Base"))) ELSE EXIT(1) END; END ELSE BEGIN IF (DocType = DocType::"Credit Memo") THEN BEGIN IF (-TotalPayments + ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) <= 0 THEN EXIT(1) END ELSE BEGIN IF (-TotalPayments + ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) < 0 THEN EXIT(CalcVatPart(GetCurrencyCode(), 1.0, TotalPayments, ("Remaining Unrealized Amount" + "Remaining Unrealized Base"))) ELSE EXIT(1) END; END;// End of the deleted lines. END; UnrealizedVatType::First,UnrealizedVatType::"First (Fully Paid)": BEGIN IF NOT LedgEntryOpen OR ("VAT Calculation Type" = "VAT Calculation Type"::"Reverse Charge VAT") THEN...Código de substituição 2
...(("Remaining Unrealized Amount" = 0) AND ("Remaining Unrealized Base" = 0)) THEN EXIT(0);// Add the following lines. IF (ABS(GetRemainingUnrealizedAmount("Document No.","Posting Date")) = ABS(Paid)) AND NOT IsPrepaymentIncluded(Type2,DocType,"Document No.") THEN BEGIN VATPart := 1; EXIT(VATPart); END; CASE UnrealizedVatType OF UnrealizedVatType::Percentage: IF Type2 = Type2::Purchase THEN BEGIN TransactionInclPrepmt := FALSE; IF DocType = DocType::"Credit Memo" THEN BEGIN IF PurchCrMemoInclPrepmt("Document No.") THEN BEGIN TransactionInclPrepmt := TRUE; IF VATPart = 0 THEN BEGIN IF (ABS(TotalPayments) >= ABS(GetTransactionRemainingAmount("Transaction No."))) OR (ABS(Paid) = ABS(Full)) THEN VATPart := 1 ELSE VATPart := CalcVatPart( GetCurrencyCode,1.0,TotalPayments, GetTransactionRemainingAmount("Transaction No.")); END; EXIT(VATPart); END ELSE IF (TotalPayments - ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) <= 0 THEN EXIT(1) END ELSE BEGIN IF PurchInvInclPrepmt("Document No.") THEN BEGIN TransactionInclPrepmt := TRUE; IF VATPart = 0 THEN BEGIN IF (ABS(TotalPayments) >= ABS(GetTransactionRemainingAmount("Transaction No."))) OR (ABS(Paid) = ABS(Full)) THEN VATPart := 1 ELSE VATPart := CalcVatPart( GetCurrencyCode,1.0,TotalPayments, GetTransactionRemainingAmount("Transaction No.")); END; EXIT(VATPart); END ELSE IF (TotalPayments - ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) < 0 THEN EXIT( CalcVatPart( GetCurrencyCode,1.0,TotalPayments, ("Remaining Unrealized Amount" + "Remaining Unrealized Base"))); EXIT(1); END; END ELSE BEGIN TransactionInclPrepmt := FALSE; IF DocType = DocType::"Credit Memo" THEN BEGIN IF SalesInvInclPrepmt("Document No.") THEN BEGIN TransactionInclPrepmt := TRUE; IF VATPart = 0 THEN BEGIN IF (ABS(TotalPayments) >= ABS(GetTransactionRemainingAmount("Transaction No."))) OR (ABS(Paid) = ABS(Full)) THEN VATPart := 1 ELSE VATPart := CalcVatPart( GetCurrencyCode,1.0,TotalPayments, GetTransactionRemainingAmount("Transaction No.")); END; EXIT(VATPart); END; IF (-TotalPayments + ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) <= 0 THEN EXIT(1); EXIT(TotalPayments / ("Remaining Unrealized Amount" + "Remaining Unrealized Base")); END; IF SalesInvInclPrepmt("Document No.") THEN BEGIN TransactionInclPrepmt := TRUE; IF VATPart = 0 THEN BEGIN IF (ABS(TotalPayments) >= ABS(GetTransactionRemainingAmount("Transaction No."))) OR (ABS(Paid) = ABS(Full)) THEN VATPart := 1 ELSE VATPart := CalcVatPart( GetCurrencyCode,1.0,TotalPayments, GetTransactionRemainingAmount("Transaction No.")); END; EXIT(VATPart); END ELSE IF (-TotalPayments + ("Remaining Unrealized Amount" + "Remaining Unrealized Base")) < 0 THEN EXIT( CalcVatPart( GetCurrencyCode,1.0,TotalPayments, ("Remaining Unrealized Amount" + "Remaining Unrealized Base"))); EXIT(1);// End of the added lines. END; UnrealizedVatType::First,UnrealizedVatType::"First (Fully Paid)": BEGIN IF NOT LedgEntryOpen OR ("VAT Calculation Type" = "VAT Calculation Type"::"Reverse Charge VAT") THEN... -
Altere o código na função SalesInvInclPrepmt na tabela entrada de IVA (254) da seguinte forma:Código existente
...EXIT(RemainingAmount - SettledAmount); EXIT(RemainingAmount - (SettledAmount / CurrencyFactor)); END; BEGIN END. } }...
Código de substituição
...EXIT(RemainingAmount - SettledAmount); EXIT(RemainingAmount - (SettledAmount / CurrencyFactor)); END;// Add the following lines. LOCAL PROCEDURE SalesInvInclPrepmt@1130019(DocNo@1130000 : Code[20]) : Boolean; VAR SalesInvLine@1130001 : Record 113; BEGIN SalesInvLine.SETRANGE("Document No.",DocNo); SalesInvLine.SETRANGE("Prepayment Line",TRUE); EXIT(NOT SalesInvLine.ISEMPTY); END; LOCAL PROCEDURE SalesCrMemoInclPrepmt@1130101(DocNo@1130000 : Code[20]) : Boolean; VAR SalesCrMemoLine@1130001 : Record 115; BEGIN SalesCrMemoLine.SETRANGE("Document No.",DocNo); SalesCrMemoLine.SETRANGE("Prepayment Line",TRUE); EXIT(NOT SalesCrMemoLine.ISEMPTY); END; LOCAL PROCEDURE PurchInvInclPrepmt@1130021(DocNo@1130000 : Code[20]) : Boolean; VAR PurchInvLine@1130001 : Record 123; BEGIN PurchInvLine.SETRANGE("Document No.",DocNo); PurchInvLine.SETRANGE("Prepayment Line",TRUE); EXIT(NOT PurchInvLine.ISEMPTY); END; LOCAL PROCEDURE PurchCrMemoInclPrepmt@1130020(DocNo@1130000 : Code[20]) : Boolean; VAR PurchCrMemoLine@1130001 : Record 125; BEGIN PurchCrMemoLine.SETRANGE("Document No.",DocNo); PurchCrMemoLine.SETRANGE("Prepayment Line",TRUE); EXIT(NOT PurchCrMemoLine.ISEMPTY); END; LOCAL PROCEDURE GetTransactionRemainingAmount@1130016(TransactionNo@1130000 : Integer) TransactionAmount : Decimal; VAR VATEntry@1130001 : Record 254; BEGIN WITH VATEntry DO BEGIN SETRANGE("Transaction No.",TransactionNo); IF FINDSET THEN REPEAT TransactionAmount += "Remaining Unrealized Base" + "Remaining Unrealized Amount"; UNTIL NEXT = 0; END; END; LOCAL PROCEDURE GetRemainingUnrealizedAmount@1130017(DocumentNo@1130000 : Code[20];PostingDate@1130001 : Date) : Decimal; VAR VATEntry@1130002 : Record 254; BEGIN VATEntry.SETCURRENTKEY("Document No.","Posting Date"); VATEntry.SETRANGE("Document No.",DocumentNo); VATEntry.SETRANGE("Posting Date",PostingDate); VATEntry.CALCSUMS("Remaining Unrealized Base","Remaining Unrealized Amount"); EXIT(VATEntry."Remaining Unrealized Base" + VATEntry."Remaining Unrealized Amount"); END; LOCAL PROCEDURE IsPrepaymentIncluded@1130023(VATType@1130002 : 'Sale,Purchase';DocumentType@1130000 : ' ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund,,,,Dishonored';DocumentNo@1130001 : Code[20]) : Boolean; BEGIN CASE VATType OF VATType::Purchase: IF DocumentType = DocumentType::"Credit Memo" THEN EXIT(PurchCrMemoInclPrepmt(DocumentNo)) ELSE EXIT(PurchInvInclPrepmt(DocumentNo)); VATType::Sale: IF DocumentType = DocumentType::"Credit Memo" THEN EXIT(SalesInvInclPrepmt(DocumentNo)) ELSE EXIT(SalesCrMemoInclPrepmt(DocumentNo)); END; END;// End of the added lines. BEGIN END. } }...
-
Alterar o código de função CustUnrealizedVAT em geral Jnl.-lançar linha Codeunit (12) da seguinte maneira:1 de código existente
...SalesVATUnrealAccount@1010 : Code[20]; LastConnectionNo@1011 : Integer; TotalPayments@1130000 : Decimal; Type2@1130001 : 'Sale,Purchase'; BEGIN PaidAmount := CustLedgEntry2."Amount (LCY)" - CustLedgEntry2."Remaining Amt. (LCY)"; VATEntry2.RESET; VATEntry2.SETCURRENTKEY("Transaction No.");...
1 código de substituição
...SalesVATUnrealAccount@1010 : Code[20]; LastConnectionNo@1011 : Integer; TotalPayments@1130000 : Decimal; Type2@1130001 : 'Sale,Purchase';// Add the following line. TransactionInclPrepmt@1130002 : Boolean;// End of the added line. BEGIN PaidAmount := CustLedgEntry2."Amount (LCY)" - CustLedgEntry2."Remaining Amt. (LCY)"; VATEntry2.RESET; VATEntry2.SETCURRENTKEY("Transaction No.");...
2 de código existente
...InsertSummarizedVAT; LastConnectionNo := VATEntry2."Sales Tax Connection No."; END;// Delete the following lines. VATPart := VATEntry2.GetUnRealizedVATPart( ROUND(SettledAmount / CustLedgEntry2.GetOriginalCurrencyFactor), PaidAmount, CustLedgEntry2."Original Amt. (LCY)", TotalUnrealVATAmountFirst, TotalUnrealVATAmountLast, Type2::Sale, CustLedgEntry2."Document Type", CustLedgEntry2.Open, CustLedgEntry2.Amount, CustLedgEntry2."Remaining Amount", TotalPayments);// End of the deleted lines. IF VATPart > 0 THEN BEGIN CASE VATEntry2."VAT Calculation Type" OF VATEntry2."VAT Calculation Type"::"Normal VAT",...
Código de substituição 2
...InsertSummarizedVAT; LastConnectionNo := VATEntry2."Sales Tax Connection No."; END;// Add the following lines. VATPart := VATEntry2.GetUnRealizedVATPart( ROUND(SettledAmount / CustLedgEntry2.GetOriginalCurrencyFactor), PaidAmount, CustLedgEntry2."Original Amt. (LCY)", TotalUnrealVATAmountFirst, TotalUnrealVATAmountLast, Type2::Sale, CustLedgEntry2."Document Type", CustLedgEntry2.Open, CustLedgEntry2.Amount, CustLedgEntry2."Remaining Amount", TotalPayments, VATPart, TransactionInclPrepmt);// End of the added lines. IF VATPart > 0 THEN BEGIN CASE VATEntry2."VAT Calculation Type" OF VATEntry2."VAT Calculation Type"::"Normal VAT",...
3 de código existente
...VATEntry2."Add.-Curr. Rem. Unreal. Base" * VATPart, AddCurrency."Amount Rounding Precision"); END;// Delete the following line. TotalPayments := TotalPayments - (VATEntry2."Remaining Unrealized Amount" + VATEntry2."Remaining Unrealized Base");// End of the deleted line. IF VATAmount <> 0 THEN BEGIN InitGLEntry(SalesVATUnrealAccount,-VATAmount,0,FALSE,TRUE); GLEntry."Additional-Currency Amount" := -VATAmountAddCurr;...
Código de substituição 3
...VATEntry2."Add.-Curr. Rem. Unreal. Base" * VATPart, AddCurrency."Amount Rounding Precision"); END;// Add the following lines. IF TransactionInclPrepmt THEN TotalPayments := TotalPayments - ROUND(TotalPayments * VATPart) ELSE TotalPayments := TotalPayments - (VATEntry2."Remaining Unrealized Amount" + VATEntry2."Remaining Unrealized Base");// End of the added lines. IF VATAmount <> 0 THEN BEGIN InitGLEntry(SalesVATUnrealAccount,-VATAmount,0,FALSE,TRUE); GLEntry."Additional-Currency Amount" := -VATAmountAddCurr;...
-
Alterar o código de função VendUnrealizedVAT em geral Jnl.-lançar linha Codeunit (12) da seguinte maneira:1 de código existente
...PurchReverseUnrealAccount@1012 : Code[20]; LastConnectionNo@1013 : Integer; Type2@1130000 : 'Sale,Purchase'; TotalPayments@1130001 : Decimal; BEGIN VATEntry2.RESET; VATEntry2.SETCURRENTKEY("Transaction No."); VATEntry2.SETRANGE("Transaction No.",VendLedgEntry2."Transaction No.");...
1 código de substituição
...PurchReverseUnrealAccount@1012 : Code[20]; LastConnectionNo@1013 : Integer; Type2@1130000 : 'Sale,Purchase'; TotalPayments@1130001 : Decimal;// Add the following line. TransactionInclPrepmt@1130002 : Boolean;// End of the added line. BEGIN VATEntry2.RESET; VATEntry2.SETCURRENTKEY("Transaction No."); VATEntry2.SETRANGE("Transaction No.",VendLedgEntry2."Transaction No.");...
2 de código existente
...IF LastConnectionNo <> VATEntry2."Sales Tax Connection No." THEN BEGIN InsertSummarizedVAT; LastConnectionNo := VATEntry2."Sales Tax Connection No."; END;// Delete the following lines. IF (TotalPayments <= 0) AND (VendLedgEntry2."Document Type" = VendLedgEntry2."Document Type"::Invoice) THEN EXIT; VATPart := VATEntry2.GetUnRealizedVATPart( ROUND(SettledAmount / VendLedgEntry2.GetOriginalCurrencyFactor), PaidAmount, VendLedgEntry2."Original Amt. (LCY)", TotalUnrealVATAmountFirst, TotalUnrealVATAmountLast, Type2::Purchase, VendLedgEntry2."Document Type", VendLedgEntry2.Open, VendLedgEntry2.Amount, VendLedgEntry2."Remaining Amount", TotalPayments);// End of the deleted lines. IF VATPart >= 0 THEN BEGIN IF VATPart <> 0 THEN BEGIN CASE VATEntry2."VAT Calculation Type" OF...
Código de substituição 2
...IF LastConnectionNo <> VATEntry2."Sales Tax Connection No." THEN BEGIN InsertSummarizedVAT; LastConnectionNo := VATEntry2."Sales Tax Connection No."; END;// Add the following lines. IF ((TotalPayments <= 0) AND (NOT TransactionInclPrepmt)) AND (VendLedgEntry2."Document Type" = VendLedgEntry2."Document Type"::Invoice) THEN EXIT; VATPart := VATEntry2.GetUnRealizedVATPart( ROUND(SettledAmount / VendLedgEntry2.GetOriginalCurrencyFactor), PaidAmount, VendLedgEntry2."Original Amt. (LCY)", TotalUnrealVATAmountFirst, TotalUnrealVATAmountLast, Type2::Purchase, VendLedgEntry2."Document Type", VendLedgEntry2.Open, VendLedgEntry2.Amount, VendLedgEntry2."Remaining Amount", TotalPayments, VATPart, TransactionInclPrepmt);// End of the added lines. IF VATPart >= 0 THEN BEGIN IF VATPart <> 0 THEN BEGIN CASE VATEntry2."VAT Calculation Type" OF...
3 de código existente
...PurchVATUnrealAccount := TaxJurisdiction."Unreal. Tax Acc. (Purchases)"; END; END;// Delete the following lines. VATAmount := ROUND((VATEntry2."Remaining Unrealized Amount" * VATPart),GLSetup."Amount Rounding Precision"); VATBase := ROUND((VATEntry2."Remaining Unrealized Base"* VATPart),GLSetup."Amount Rounding Precision"); TotalPayments := TotalPayments - (VATEntry2."Remaining Unrealized Amount" + VATEntry2."Remaining Unrealized Base");// End of the deleted lines. IF VATAmount <> 0 THEN BEGIN InitGLEntry(PurchVATUnrealAccount,-VATAmount,0,FALSE,TRUE); GLEntry."Additional-Currency Amount" := -VATAmountAddCurr;...
Código de substituição 3
...PurchVATUnrealAccount := TaxJurisdiction."Unreal. Tax Acc. (Purchases)"; END; END;// Add the following lines. VATAmount := ROUND(VATEntry2."Remaining Unrealized Amount" * VATPart,GLSetup."Amount Rounding Precision"); VATBase := ROUND(VATEntry2."Remaining Unrealized Base" * VATPart,GLSetup."Amount Rounding Precision"); IF TransactionInclPrepmt THEN TotalPayments := TotalPayments - ROUND(TotalPayments * VATPart) ELSE TotalPayments := TotalPayments - (VATEntry2."Remaining Unrealized Amount" + VATEntry2."Remaining Unrealized Base");// End of the added lines. IF VATAmount <> 0 THEN BEGIN InitGLEntry(PurchVATUnrealAccount,-VATAmount,0,FALSE,TRUE); GLEntry."Additional-Currency Amount" := -VATAmountAddCurr;...
Pré-requisitos:
Você deve ter um dos seguintes produtos instalados para aplicar esse hotfix:
-
A localização de italiana do Microsoft Dynamics NAV 2009 R2
-
A localização do Microsoft Dynamics NAV 2009 SP1 italiana
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 usopara outras considerações.