Saturday, July 8, 2023

Fehlermeldung „Die Tabelle „Vorauszahlungs-Inv.-Zeilenpuffer“ ist leer“, wenn Sie versuchen, den Wert im Feld „Vorauszahlung %“ auf einem Kundenauftrag in der osteuropäischen Version von Microsoft Dynamics NAV 2009 zu ändern – Microsoft-Support

Dieser Artikel gilt für Microsoft Dynamics NAV für das Sprachgebietsschema Osteuropa (EE).

Symptome

Betrachten Sie das folgende Szenario in der osteuropäischen Version von Microsoft Dynamics NAV 2009 Service Pack 1 (SP1) und von Microsoft Dynamics NAV 2009 R2:

  • Sie haben einen Kundenauftrag, der eine Vorauszahlung verwendet.

  • Sie erstellen ein Vorabschreiben. Anschließend buchen Sie das Vorabschreiben und stellen es in Rechnung.

  • Sie öffnen den Kundenauftrag erneut und versuchen dann, den Wert im Feld „Vorauszahlung %" in der Kopfzeile zu ändern.

In diesem Szenario erhalten Sie die folgende Fehlermeldung:

Die Vorauszahlungsinv. Die Zeilenpuffertabelle ist leer.


Dieses Problem tritt auf, nachdem Sie die Hotfixes in den folgenden KBs angewendet haben: KB2543219, KB2546451, KB2546490 und KB2546498.
Für weitere Informationen klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

2543219 Überbezahlte Vorauszahlungen können in der osteuropäischen Version von Microsoft Dynamics NAV 2009 R2 nicht wie erwartet verarbeitet werden. Klicken Sie für weitere Informationen auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

2546451 Fehlermeldung „Es gibt keinen Kundenposten im Filter", wenn Sie versuchen, die verbleibende Menge eines Kundenauftrags in der osteuropäischen Version von Microsoft Dynamics NAV 2009 zu buchen. Klicken Sie für weitere Informationen auf die folgende Artikelnummer, um den Artikel anzuzeigen in der Microsoft Knowledge Base:

2546490 Fehlermeldung „Kundenposten-Eintrag Nr. „[Nummer]" ist bereits vorhanden", wenn Sie versuchen, einen Kundenauftrag zu buchen, der eine Vorauszahlung mit Vorauszahlung in der osteuropäischen Version von Microsoft Dynamics NAV 2009 verwendet. Klicken Sie für weitere Informationen auf Folgendes Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

2546498 Die gebuchte Vorauszahlung bleibt offen, nachdem Sie die endgültige Einkaufsrechnung in der osteuropäischen Version von Microsoft Dynamics NAV 2009 gebucht haben

Auflösung

Hotfix-Informationen

Ein unterstützter Hotfix ist jetzt von Microsoft verfügbar. Es dient jedoch lediglich der Behebung des in diesem Artikel beschriebenen Problems. Wenden Sie es nur auf Systeme an, bei denen dieses spezielle Problem auftritt. Dieser Hotfix wird möglicherweise weiteren Tests unterzogen. Wenn Sie von diesem Problem nicht schwerwiegend betroffen sind, empfehlen wir Ihnen daher, auf das nächste Microsoft Dynamics NAV 2009 Service Pack oder die nächste Microsoft Dynamics NAV-Version zu warten, die diesen Hotfix enthält.

Hinweis: In besonderen Fällen können die Gebühren, die normalerweise für Supportanrufe anfallen, storniert werden, wenn ein Mitarbeiter des technischen Supports für Microsoft Dynamics und verwandte Produkte feststellt, dass ein bestimmtes Update Ihr Problem lösen wird. Für zusätzliche Supportfragen und Probleme, die für das jeweilige Update nicht in Frage kommen, fallen die üblichen Supportkosten an.



Installationsinformationen

Microsoft stellt Programmierbeispiele nur zur Veranschaulichung zur Verfügung, ohne ausdrückliche oder stillschweigende Gewährleistung. Dazu gehören unter anderem stillschweigende Garantien der Marktgängigkeit oder Eignung für einen bestimmten Zweck. In diesem Artikel wird davon ausgegangen, dass Sie mit der demonstrierten Programmiersprache und den Tools vertraut sind, die zum Erstellen und Debuggen von Prozeduren verwendet werden. Microsoft-Supporttechniker können dabei helfen, die Funktionalität einer bestimmten Prozedur zu erläutern, sie werden diese Beispiele jedoch nicht ändern, um zusätzliche Funktionalität bereitzustellen oder Prozeduren zu erstellen, die Ihren spezifischen Anforderungen entsprechen.

Hinweis Bevor Sie diesen Hotfix installieren, stellen Sie sicher, dass alle Benutzer des Microsoft Navision-Clients vom System abgemeldet sind. Dazu gehören Clientbenutzer von Microsoft Navision Application Services (NAS). Sie sollten der einzige Clientbenutzer sein, der angemeldet ist, wenn Sie diesen Hotfix implementieren.

Um diesen Hotfix zu implementieren, benötigen Sie eine Entwicklerlizenz.

Wir empfehlen, dem Benutzerkonto im Fenster „Windows-Anmeldungen" oder im Fenster „Datenbank-Anmeldungen" die Rollen-ID „SUPER" zuzuweisen. Wenn dem Benutzerkonto nicht die Rollen-ID „SUPER" zugewiesen werden kann, müssen Sie überprüfen, ob das Benutzerkonto über die folgenden Berechtigungen verfügt:

  • Die Änderungsberechtigung für das Objekt, das Sie ändern möchten.

  • Die Ausführungsberechtigung für das Systemobjekt-ID-5210-Objekt und für das Systemobjekt-ID-9015-Objekt.



Hinweis Sie müssen keine Rechte an den Datenspeichern haben, es sei denn, Sie müssen eine Datenreparatur durchführen.

Codeänderungen

Hinweis: Testen Sie Codekorrekturen immer in einer kontrollierten Umgebung, bevor Sie die Korrekturen auf Ihren Produktionscomputern anwenden.
Um dieses Problem zu beheben, führen Sie die folgenden Schritte aus:

  1. Ändern Sie den Code in der Funktion „UpdateVATOnLines" in der Codeunit „Sales-Post Prepaids" (442) wie folgt:
    Vorhandener Code

     ...
    ROUND(NewAmountInclusionVAT,Currency."Amount Rounding Precision");
    „Vorläufiger MwSt.-Grundbetrag." := NewVATBaseAmount;

    // Folgende Zeilen löschen.
    WENN SalesHeader. „Preise inklusive Mehrwertsteuer" DANN
    "Prepmt. Line Amount" := "Prepmt. Amt. Incl. MwSt."
    ANDERS
    „Prepmt. Line Amount" :=
    RUNDEN(
    „Prepmt. Amt. Incl. VAT" / (1 + „VAT %" / 100),
    Währung."Betragsrundungsgenauigkeit");
    // Ende der gelöschten Zeilen.

    IF (VATAmountLine."Line Amount" - VATAmountLine."Invoice Discount Amount") = 0 THEN
    MwSt.Differenz := 0
    ANDERS
    ...

    Ersatzcode

     ...
    ROUND(NewAmountInclusionVAT,Currency."Amount Rounding Precision");
    „Vorläufiger MwSt.-Grundbetrag." := NewVATBaseAmount;

    IF (VATAmountLine."Line Amount" - VATAmountLine."Invoice Discount Amount") = 0 THEN
    MwSt.Differenz := 0
    ANDERS
    ...
  2. Ändern Sie den Code in der Funktion UpdateVATOnLines in der Codeunit Purchase-Post Prepaids (444) wie folgt:
    Vorhandener Code

     ...
    ROUND(NewAmountInclusionVAT,Currency."Amount Rounding Precision");
    „Vorläufiger MwSt.-Grundbetrag." := NewVATBaseAmount;

    // Folgende Zeilen löschen.
    WENN PurchHeader."Preise inklusive Mehrwertsteuer" DANN
    "Prepmt. Line Amount" := "Prepmt. Amt. Incl. MwSt."
    ANDERS
    „Prepmt. Line Amount" :=
    RUNDEN(
    „Prepmt. Amt. Incl. VAT" / (1 + „VAT %" / 100),
    Währung."Betragsrundungsgenauigkeit");
    // Ende der gelöschten Zeilen.

    IF (VATAmountLine."Line Amount" - VATAmountLine."Invoice Discount Amount") = 0 THEN
    MwSt.Differenz := 0
    ANDERS
    ...

    Ersatzcode

     ...
    ROUND(NewAmountInclusionVAT,Currency."Amount Rounding Precision");
    „Vorläufiger MwSt.-Grundbetrag." := NewVATBaseAmount;

    IF (VATAmountLine."Line Amount" - VATAmountLine."Invoice Discount Amount") = 0 THEN
    MwSt.Differenz := 0
    ANDERS
    ...
  3. Ändern Sie den Code in der PostInvoiceCorrection-Funktion in der Codeunit „Sales-Post Advances" (26585) wie folgt:
    Löschen Sie die folgende globale Variable:

    • Name: SumAmountToApply

    • Datentyp: Dezimal


    Fügen Sie die folgende globale Variable hinzu:

    • Name: TempLineRelation

    • Datentyp: TEMPORÄRER Datensatz (26592)

    :
    Vorhandener Code

     ...
    GLSetup.GET;
    SalesSetup.GET;
    LinkedAdvanceEntry.DELETEALL;

    SalesLine.RESET;
    SalesLine.SETRANGE("Dokumenttyp",SalesHeader."Dokumenttyp");
    ...

    Ersatzcode

     ...
    GLSetup.GET;
    SalesSetup.GET;
    LinkedAdvanceEntry.DELETEALL;

    // Fügen Sie die folgende Zeile hinzu.
    TempLineRelation.DELETEALL;

    SalesLine.RESET;
    SalesLine.SETRANGE("Dokumenttyp",SalesHeader."Dokumenttyp");
    ...
  4. Ändern Sie den Code in der PostInvLineCorrection-Funktion in der Codeunit „Sales-Post Advances" (26585) wie folgt:
    Vorhandener Code

     ...
    LineRelation."Abgezogener Betrag" := LineRelation."Abgezogener Betrag" + AmountToDeduct;
    LineRelation.MODIFY;

    // Folgende Zeile löschen.
    CalcLinkedPmtAmountToApply(LetterLine,AmountToDeduct,LinkedAdvanceEntry);
    IF LetterLine."VAT Amount" <> 0 THEN // KEINE Mehrwertsteuerabwicklung
    PostVATKorrektur(
    LetterLine,SalesInvHeader,AmountToDeduct,DocNoForVATCorr,VATAmount,GenJnlPostLine,TempJnlLineDim);
    ...

    Ersatzcode

     ...
    LineRelation."Abgezogener Betrag" := LineRelation."Abgezogener Betrag" + AmountToDeduct;
    LineRelation.MODIFY;

    // Fügen Sie die folgenden Zeilen hinzu.
    CalcLinkedPmtAmountToApply(
    LetterLine,
    AmountToDeduct,
    LinkedAdvanceEntry,
    RetrieveSumAmountToApply(LineRelation,AmountToDeduct));
    //Ende der hinzugefügten Zeilen.

    IF LetterLine."VAT Amount" <> 0 THEN // KEINE Mehrwertsteuerabwicklung
    PostVATKorrektur(
    LetterLine,SalesInvHeader,AmountToDeduct,DocNoForVATCorr,VATAmount,GenJnlPostLine,TempJnlLineDim);
    ...
  5. Ändern Sie den Code in der Funktion CalcLinkedPmtAmountToApply in der Codeunit „Sales-Post Advances" (26585) wie folgt:
    Fügen Sie den folgenden Parameter hinzu:

    • Name: SumAmountToApply

    • Datentyp: Dezimal


    Vorhandener Code

     ...
    // Folgende Zeile löschen.
    SumAmountToApply := SumAmountToApply + TotalAmountToApply;

    WENN TotalAmountToApply = 0 DANN
    AUSFAHRT;
    SetCurrencyPrecision(LetterLine."Währungscode");
    ...

    Ersatzcode

     ...
    WENN TotalAmountToApply = 0 DANN
    AUSFAHRT;
    SetCurrencyPrecision(LetterLine."Währungscode");
    ...
  6. Ändern Sie den Code in der UpdateOrderLine-Funktion in der Codeunit „Sales-Post Advances" (26585) wie folgt:
    Vorhandener Code 1

     ...
    LineRelation.SETRANGE(Type,LineRelation.Type::Sale);
    LineRelation.SETRANGE("Order No.",SalesLine."Document No.");
    LineRelation.SETRANGE("Order Line No.",SalesLine."Line No.");
    // Folgende Zeile löschen
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag");

    SalesLine."Prepmt. Amount Inv. Incl. VAT" := LineRelation."Invoiced Amount";
    WENN Preise inkl. MwSt. DANN BEGINNEN
    ...

    Ersatzcode 1

     ...
    LineRelation.SETRANGE(Type,LineRelation.Type::Sale);
    LineRelation.SETRANGE("Order No.",SalesLine."Document No.");
    LineRelation.SETRANGE("Order Line No.",SalesLine."Line No.");
    // Fügen Sie die folgende Zeile hinzu
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag",Amount,"Angeforderter Betrag");

    SalesLine."Prepmt. Amount Inv. Incl. VAT" := LineRelation."Invoiced Amount";
    WENN Preise inkl. MwSt. DANN BEGINNEN
    ...

    Vorhandener Code 2

     ...
    SalesLine."Vorauszahlung MwSt. %" / (100 + SalesLine."Vorauszahlung MwSt. %"),
    Währung."Betragsrundungsgenauigkeit");
    ENDE SONST BEGINNEN
    // Folgende Zeilen löschen.
    SalesLine."Prepmt. Amt. Inv." :=
    ROUND(LineRelation."Rechnungsbetrag" / (1 + SalesLine."Vorauszahlung MwSt. %" / 100),
    Währung."Betragsrundungsgenauigkeit");
    // Ende der gelöschten Zeilen.
    SalesLine."Prepmt. MwSt.-Betrag Inv." :=
    SalesLine."Prepmt. Amount Inv. Incl. VAT" - SalesLine."Prepmt. Amt. Inv.";
    ENDE;
    ...

    Ersatzcode 2

     ...
    SalesLine."Vorauszahlung MwSt. %" / (100 + SalesLine."Vorauszahlung MwSt. %"),
    Währung."Betragsrundungsgenauigkeit");
    ENDE SONST BEGINNEN
    // Fügen Sie die folgenden Zeilen hinzu.
    IF LineRelation."Invoiced Amount" = LineRelation.Amount THEN
    SalesLine."Prepmt. Amt. Inv." := LineRelation."Angeforderter Betrag"
    ANDERS
    SalesLine."Prepmt. Amt. Inv." :=
    ROUND(LineRelation."Rechnungsbetrag" / (1 + SalesLine."Vorauszahlung MwSt. %" / 100),
    Währung."Betragsrundungsgenauigkeit");
    //Ende der hinzugefügten Zeilen.
    SalesLine."Prepmt. MwSt.-Betrag Inv." :=
    SalesLine."Prepmt. Amount Inv. Incl. VAT" - SalesLine."Prepmt. Amt. Inv.";
    ENDE;
    ...
  7. Ändern Sie den Code in der UpdateLineRelations-Funktion in der Codeunit „Sales-Post Advances" (26585) wie folgt:
    Vorhandener Code

     ...
    LineRelation.SETRANGE("Letter No.",LetterLine."Letter No.");
    LineRelation.SETRANGE("Letter Line No.",LetterLine."Line No.");
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag");
    ...

    Ersatzcode

     ...
    // Fügen Sie die folgende Zeile hinzu
    LineRelation.SETRANGE(Type,LineRelation.Type::Sale);

    LineRelation.SETRANGE("Letter No.",LetterLine."Letter No.");
    LineRelation.SETRANGE("Letter Line No.",LetterLine."Line No.");
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag");
    ...
  8. Erstellen Sie die RetrieveSumAmountToApply-Prozedur in der Codeunit „Sales-Post Advances" (26585) wie folgt:

     LOKALE VERFAHREN RetrieveSumAmountToApply@1470050(LineRelation@1470000 : Record 26592;AmountToDeduct@1470001 : Decimal) : Decimal;
    START
    MIT TempLineRelation BEGINNEN
    ZURÜCKSETZEN;
    SETRANGE("Order No.",LineRelation."Order No.");
    SETRANGE("Buchstabe Nr.",LineRelation."Buchstabe Nr.");
    WENN NICHT ZUERST FINDEN, DANN BEGINNEN
    DRIN;
    "Best.-Nr." := LineRelation."Order No.";
    „Brief Nr." := LineRelation."Buchstabe Nr.";
    Betrag := AmountToDeduct;
    EINFÜGUNG;
    ENDE SONST BEGINNEN
    Betrag := Betrag + AmountToDeduct;
    ÄNDERN;
    ENDE;
    EXIT(Betrag);
    ENDE;
    ENDE;
  9. Ändern Sie den Code in der PostInvoiceCorrection-Funktion in der Codeunit Purchase-Post Advances (26586) wie folgt:
    Löschen Sie die folgende globale Variable:

    • Name: SumAmountToApply

    • Datentyp: Dezimal


    Fügen Sie die folgende globale Variable hinzu:

    • Name: TempLineRelation

    • Datentyp: TEMPORÄRER Datensatz (26592)


    Vorhandener Code

     ...
    GLSetup.GET;
    PurchSetup.GET;
    LinkedAdvanceEntry.DELETEALL;

    PurchLine.RESET;
    PurchLine.SETRANGE("Dokumenttyp",PurchHeader."Dokumenttyp");
    ...

    Ersatzcode

     ...
    GLSetup.GET;
    PurchSetup.GET;
    LinkedAdvanceEntry.DELETEALL;
    // Fügen Sie die folgende Zeile hinzu
    TempLineRelation.DELETEALL;

    PurchLine.RESET;
    PurchLine.SETRANGE("Dokumenttyp",PurchHeader."Dokumenttyp");
    ...
  10. Ändern Sie den Code in der PostInvLineCorrection-Funktion in der Codeunit Purchase-Post Advances (26586) wie folgt:
    Vorhandener Code

     ...
    LineRelation."Abgezogener Betrag" := LineRelation."Abgezogener Betrag" + AmountToDeduct;
    LineRelation.MODIFY;
    // Folgende Zeile löschen.
    CalcLinkedPmtAmountToApply(LetterLine,AmountToDeduct,LinkedAdvanceEntry);
    IF LetterLine."VAT Amount" <> 0 THEN // KEINE Mehrwertsteuerabwicklung
    PostVATKorrektur(
    LetterLine,PurchInvHeader,AmountToDeduct,DocNoForVATCorr,VATAmount,GenJnlPostLine,TempJnlLineDim);
    ...

    Ersatzcode

     ...
    LineRelation."Abgezogener Betrag" := LineRelation."Abgezogener Betrag" + AmountToDeduct;
    LineRelation.MODIFY;
    // Fügen Sie die folgenden Zeilen hinzu.
    CalcLinkedPmtAmountToApply(
    LetterLine,
    AmountToDeduct,
    LinkedAdvanceEntry,
    RetrieveSumAmountToApply(LineRelation,AmountToDeduct));
    //Ende der hinzugefügten Zeilen.
    IF LetterLine."VAT Amount" <> 0 THEN // KEINE Mehrwertsteuerabwicklung
    PostVATKorrektur(
    LetterLine,PurchInvHeader,AmountToDeduct,DocNoForVATCorr,VATAmount,GenJnlPostLine,TempJnlLineDim);
    ...
  11. Ändern Sie den Code in der Funktion CalcLinkedPmtAmountToApply in der Codeunit Purchase-Post Advances (26586) wie folgt:
    Fügen Sie der Funktion den folgenden Parameter hinzu:

    • Name: SumAmountToApply

    • Datentyp: Dezimal


    Vorhandener Code

     ...
    WENN TotalAmountToApply = 0 DANN
    AUSFAHRT;
    // Folgende Zeilen löschen.
    SumAmountToApply := SumAmountToApply + TotalAmountToApply;
    // Ende der gelöschten Zeilen.

    SetCurrencyPrecision(LetterLine."Währungscode");
    Link.SETRANGE("Entry Type",Link."Entry Type"::"Link To Letter");
    ...

    Ersatzcode

     ...
    WENN TotalAmountToApply = 0 DANN
    AUSFAHRT;

    SetCurrencyPrecision(LetterLine."Währungscode");
    Link.SETRANGE("Entry Type",Link."Entry Type"::"Link To Letter");
    ...
  12. Ändern Sie den Code in der UpdateOrderLine-Funktion in der Purchase-Post Advances-Codeunit (26586) wie folgt:
    Vorhandener Code 1

     ...
    LineRelation.SETRANGE(Type,LineRelation.Type::Purchase);
    LineRelation.SETRANGE("Order No.",PurchLine."Document No.");
    LineRelation.SETRANGE("Order Line No.",PurchLine."Line No.");
    // Folgende Zeile löschen.
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag");

    PurchLine."Prepmt. Amount Inv. Incl. VAT" := LineRelation."Invoiced Amount";
    WENN Preise inkl. MwSt. DANN BEGINNEN
    ...

    Ersatzcode 1

     ...
    LineRelation.SETRANGE(Type,LineRelation.Type::Purchase);
    LineRelation.SETRANGE("Order No.",PurchLine."Document No.");
    LineRelation.SETRANGE("Order Line No.",PurchLine."Line No.");
    // Fügen Sie die folgende Zeile hinzu.
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag",Amount,"Angeforderter Betrag");

    PurchLine."Prepmt. Amount Inv. Incl. VAT" := LineRelation."Invoiced Amount";
    WENN Preise inkl. MwSt. DANN BEGINNEN
    ...


    Vorhandener Code 2

     ...
    PurchLine."Vorauszahlung MwSt. %" / (100 + PurchLine."Vorauszahlung MwSt. %"),
    Währung."Betragsrundungsgenauigkeit");
    ENDE SONST BEGINNEN
    // Folgende Zeilen löschen.
    PurchLine."Prepmt. Amt. Inv." :=
    ROUND(LineRelation."Rechnungsbetrag" / (1 + PurchLine."Vorauszahlung MwSt. %" / 100),
    Währung."Betragsrundungsgenauigkeit");
    // Ende der gelöschten Zeilen.
    PurchLine."Prepmt. MwSt.-Betrag Inv." :=
    PurchLine."Prepmt. Amount Inv. Incl. VAT" - PurchLine."Prepmt. Amt. Inv.";
    ENDE;
    ...

    Ersatzcode 2

     ...
    PurchLine."Vorauszahlung MwSt. %" / (100 + PurchLine."Vorauszahlung MwSt. %"),
    Währung."Betragsrundungsgenauigkeit");
    ENDE SONST BEGINNEN
    // Fügen Sie die folgenden Zeilen hinzu.
    IF LineRelation."Invoiced Amount" = LineRelation.Amount THEN
    PurchLine."Prepmt. Amt. Inv." := LineRelation."Angeforderter Betrag"
    ANDERS
    PurchLine."Prepmt. Amt. Inv." :=
    ROUND(LineRelation."Rechnungsbetrag" / (1 + PurchLine."Vorauszahlung MwSt. %" / 100),
    Währung."Betragsrundungsgenauigkeit");
    // Ende der hinzugefügten Zeilen.
    PurchLine."Prepmt. MwSt.-Betrag Inv." :=
    PurchLine."Prepmt. Amount Inv. Incl. VAT" - PurchLine."Prepmt. Amt. Inv.";
    ENDE;
    ...
  13. Ändern Sie den Code in der UpdateLineRelations-Funktion in der Purchase-Post Advances-Codeunit (26586) wie folgt:
    Vorhandener Code

     ...
    LineRelation.SETRANGE("Letter No.",LetterLine."Letter No.");
    LineRelation.SETRANGE("Letter Line No.",LetterLine."Line No.");
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag");
    ...

    Ersatzcode

     ...
    // Fügen Sie die folgende Zeile hinzu.
    LineRelation.SETRANGE(Type,LineRelation.Type::Purchase);
    // Ende der hinzugefügten Zeile.

    LineRelation.SETRANGE("Letter No.",LetterLine."Letter No.");
    LineRelation.SETRANGE("Letter Line No.",LetterLine."Line No.");
    LineRelation.CALCSUMS("Rechnungsbetrag","Abgezogener Betrag");
    ...
  14. Erstellen Sie die Prozedur „RetrieveSumAmountToApply" in der Codeunit „Purchase-Post Advances" (26586) wie folgt:

     LOKALE VERFAHREN RetrieveSumAmountToApply@1470048(LineRelation@1470000: Datensatz 26592;AmountToDeduct@1470001: Dezimal): Dezimal;
    START
    MIT TempLineRelation BEGINNEN
    ZURÜCKSETZEN;
    SETRANGE("Order No.",LineRelation."Order No.");
    SETRANGE("Buchstabe Nr.",LineRelation."Buchstabe Nr.");
    WENN NICHT ZUERST FINDEN, DANN BEGINNEN
    DRIN;
    "Best.-Nr." := LineRelation."Order No.";
    „Brief Nr." := LineRelation."Buchstabe Nr.";
    Betrag := AmountToDeduct;
    EINFÜGUNG;
    ENDE SONST BEGINNEN
    Betrag := Betrag + AmountToDeduct;
    ÄNDERN;
    ENDE;
    EXIT(Betrag);
    ENDE;
    ENDE;


Voraussetzungen

Um diesen Hotfix anwenden zu können, muss eines der folgenden Produkte installiert sein:

  • Die osteuropäische Version von Microsoft Dynamics NAV 2009 Service Pack 1

  • Die osteuropäische Version von Microsoft Dynamics NAV 2009 R2

Hinweis Um diesen Hotfix anzuwenden, müssen Sie die Hotfixes in der folgenden KB anwenden: KB2543219, KB2546451, KB2546490 und KB2546498.

Informationen zum Entfernen

Sie können diesen Hotfix nicht entfernen.

Status

Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Gilt für" aufgeführt sind.

Verweise

VSTF DynamicsNAV SE: 261669

Hinweis Dies ist ein „FAST PUBLISH"-Artikel, der direkt von der Microsoft-Supportorganisation erstellt wurde. Die hierin enthaltenen Informationen werden unverändert als Reaktion auf neu auftretende Probleme bereitgestellt. Aufgrund der schnellen Bereitstellung können die Materialien Tippfehler enthalten und jederzeit ohne Vorankündigung überarbeitet werden. Weitere Hinweise finden Sie in den Nutzungsbedingungen .

No comments:

Post a Comment