Van toepassing op
Dynamics NAV 2009

Dit artikel wordt een probleem beschreven wanneer u een verkoopfactuur met ongerealiseerde btw en negatieve regel naar een creditnota in de Italiaanse versie van Microsoft Dynamics NAV 2009. Dit probleem doet zich nog steeds na implementatie van de correctie van KB 2882952.Volg de stappen in de sectie codewijzigingen oplossen van dit probleem. Dit probleem treedt op in de volgende producten:

  • De Italiaanse versie van Microsoft Dynamics NAV 2009 R2

  • De Italiaanse versie van Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

Oplossing

Informatie over de hotfix

Een ondersteunde hotfix is nu beschikbaar bij Microsoft. Het is echter alleen bedoeld om het probleem dat wordt beschreven in dit artikel. Pas deze alleen toe op systemen waarop dit specifieke probleem zich voordoet. Deze hotfix moet wellicht extra worden getest. Als u geen ernstige problemen ondervindt, is het daarom raadzaam te wachten op het volgende servicepack voor Microsoft Dynamics NAV 2009 of de volgende Microsoft Dynamics NAV versie waarin deze hotfix is opgenomen.Opmerking In speciale gevallen kunnen kosten die verbonden zijn aan ondersteuningsoproepen ondersteuning worden geannuleerd als een medewerker van Technical Support voor Microsoft Dynamics en verwante producten bepaalt dat een specifieke update de oplossing van uw probleem. De normale ondersteuningskosten blijven gelden voor extra ondersteuningsvragen die niet in aanmerking voor de specifieke update in kwestie komen.

Informatie over de installatie

Microsoft verstrekt programmeervoorbeelden uitsluitend ter illustratie, zonder expliciete of impliciete garantie. Dit omvat, maar is niet beperkt tot, de impliciete garanties van verkoopbaarheid of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend met de programmeertaal die wordt aangetoond en met de hulpprogramma's die worden gebruikt bent voor het maken van en naar procedures voor foutopsporing. Ondersteuningstechnici van Microsoft kunnen voor uitleg over de functionaliteit van een bepaalde procedure. Zij zal deze voorbeelden bieden extra functionaliteit of desgewenst uw specifieke vereisten echter niet wijzigen.Opmerking Voordat u deze hotfix hebt geïnstalleerd, controleert u of dat alle gebruikers van Microsoft Dynamics NAV-clients zijn afgemeld bij het systeem. Dit omvat services voor Microsoft Dynamics NAV Application Server (NAS). U moet de alleen clientgebruiker die is aangemeld wanneer u deze hotfix gaat implementeren.Als u deze hotfix gaat implementeren, hebt u een ontwikkelaarslicentie voor.Is raadzaam dat de gebruikersaccount in het venster Windows-aanmeldingen of Databaseaanmeldingen de rol-id 'SUPER'. Als de gebruikersaccount kan worden toegewezen als de ID 'SUPER' rol, moet u controleren of de gebruikersaccount de volgende machtigingen heeft:

  • De machtiging wijzigen voor het object dat u wijzigt.

  • De machtiging uitvoeren voor het object System Object ID 5210 en voor de System Object ID 9015-object.

Opmerking Er geen rechten voor de opgeslagen gegevens hebben, tenzij u gegevens herstellen.

Codewijzigingen

Opmerking Altijd test code worden opgelost in een testomgeving voordat u de correcties in de productieomgeving.U kunt dit probleem oplossen door de volgende stappen uit te voeren:

  1. De code in de sleutels in de tabel BTW-post (254) als volgt wijzigen:Bestaande code

    ...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;...

    Nieuwe code

    ...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;...
  2. De code in de functie GetUnRealizedVATPart in de tabel BTW-post (254) als volgt wijzigen:Bestaande code 1

    ...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...

    Nieuwe code 1

    ...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...

    Bestaande code 2

    ...(("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...

    Vervangende code 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...
  3. De code in de functie SalesInvInclPrepmt in de tabel BTW-post (254) als volgt wijzigen:Bestaande code

    ...EXIT(RemainingAmount - SettledAmount);        EXIT(RemainingAmount - (SettledAmount / CurrencyFactor));      END;      BEGIN      END.    }  }...

    Nieuwe code

    ...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.    }  }...
  4. Wijzig de code in de functie CustUnrealizedVAT in Alg. verz.-regel Codeunit boeken (12) als volgt:Bestaande code 1

    ...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.");...

    Nieuwe code 1

    ...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.");...

    Bestaande code 2

    ...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",...

    Vervangende code 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",...

    Bestaande code 3

    ...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;...

    Vervangende code 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;...
  5. Wijzig de code in de functie VendUnrealizedVAT in Alg. verz.-regel Codeunit boeken (12) als volgt:Bestaande code 1

    ...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.");...

    Nieuwe code 1

    ...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.");...

    Bestaande code 2

    ...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...

    Vervangende code 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...

    Bestaande code 3

    ...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;...

    Vervangende code 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;...

Vereisten

Hebt u een van de volgende producten geïnstalleerd om deze hotfix:

  • De Italiaanse lokalisatie van Microsoft Dynamics NAV 2009 R2

  • De Italiaanse lokalisatie van Microsoft Dynamics NAV 2009 SP1

Informatie over verwijderen

U kunt deze hotfix niet verwijderen.

Status

Microsoft heeft bevestigd dat dit probleem kan optreden in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op'.

Opmerking Dit is een 'Snel publiceren' artikel dat rechtstreeks door het ondersteuningsteam van Microsoft is gemaakt. De informatie wordt geleverd zoals het is in reactie op de opkomende problemen. Omdat het artikel snel beschikbaar moest zijn, kunnen de materialen typografische fouten bevatten en op elk gewenst moment zonder voorafgaande kennisgeving worden gewijzigd. Zie de Gebruiksvoorwaardenvoor andere overwegingen.

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.