ACSD-45424: Falsche Reservierungsentschädigung nach teilweiser Rückerstattung

Der Patch ACSD-45424 behebt das Problem, dass nach einer teilweisen Rückerstattung eine falsche Reservierungsentschädigung entsteht. Dieser Patch ist verfügbar, wenn das Quality Patches Tool (QPT) 1.1.17 installiert ist. Die Patch-ID lautet ACSD-45424. Bitte beachten Sie, dass das Problem in Adobe Commerce 2.4.6 behoben sein soll.

Betroffene Produkte und Versionen

Der Patch wird für die Adobe Commerce-Version erstellt:

  • Adobe Commerce (alle Bereitstellungsmethoden) 2.4.1

Kompatibel mit Adobe Commerce-Versionen:

  • Adobe Commerce (alle Bereitstellungsmethoden) 2.3.4 - 2.4.4
NOTE
Der Patch kann für andere Versionen mit den neuen Versionen des Quality Patches Tool angewendet werden. Um zu überprüfen, ob der Patch mit Ihrer Adobe Commerce-Version kompatibel ist, aktualisieren Sie das Paket magento/quality-patches auf die neueste Version und überprüfen Sie die Kompatibilität auf der Seite Quality Patches Tool: Suchen nach Patches. Verwenden Sie die Patch-ID als Suchschlüsselwort, um den Patch zu finden.

Problem

Nach einer teilweisen Rückerstattung wird eine falsche Reservierungsentschädigung erstellt.

Zu reproduzierende Schritte:

  1. Aktivieren Sie die Versandmethode für den In-Store-Versand.

  2. Erstellen Sie drei Inventarquellen und stellen Sie sicher, dass der Erfassungsort in jedem (Quelle1, Quelle2, Quelle3) aktiv ist.

  3. Erstellen Sie ein neues Lager und weisen Sie dem neuen Lager die drei Quellen zu.

    • Dieser Bestand sollte der Haupt-Website zugewiesen werden.
  4. Erstellen Sie ein einfaches Produkt, P3, und weisen Sie ihm alle Quellen zu.

  5. Fügen Sie die folgenden Mengen für die Quellen des einfachen Produkts hinzu und aktivieren Sie Backorder:

    • Standardquelle - 100
    • source1 - 0
    • source2 - 10
    • source3 - 0
  6. Fügen Sie das einfache Produkt vom Frontend zum Warenkorb hinzu und fahren Sie mit dem Versandformular fort.

  7. Wählen Sie "source1"als Versandort aus.

  8. Führen Sie die Bestellung aus und führen Sie die folgende Abfrage in der Datenbank aus:

    code language-sql
    SELECT * FROM inventory_reservation WHERE sku = 'P3';
    

    Sie erhalten den aufgegebenen Bestelldatensatz in der Tabelle inventory_reservation. Die Menge ist 10, was richtig ist.

  9. Invotieren Sie diese Bestellung vom Backend aus.

  10. Erstellen Sie nun ein Kreditmemo für nur ein Produkt. Aktivieren Sie NICHT das Kontrollkästchen Zurück auf Lager .

  11. Führen Sie dieselbe Abfrage aus Schritt 8 aus.

Erwartete Ergebnisse:

Wenn Sie die Zurück auf Lager während der Erstellung des Kreditmemos nicht ausgewählt haben, enthält die Tabelle inventory_reservation keinen Datensatz, der dem Kreditmemo entspricht.

Tatsächliche Ergebnisse:

Auch wenn Sie während der Erstellung des Credit Memos die Option Zurück auf Lager nicht ausgewählt haben, wird der Tabelle inventory_reservation ein Datensatz mit dem Ereignistyp creditmemo_created hinzugefügt. Außerdem hat der in der Tabelle inventory_reservation hinzugefügte Credit Memo-Datensatz eine Menge von 10, obwohl Sie das Credit Memo für nur eine Menge erstellt haben.

Wenden Sie den Patch an

Verwenden Sie je nach Bereitstellungsmethode die folgenden Links, um einzelne Patches anzuwenden:

Verwandtes Lesen

Weitere Informationen zum Werkzeug für Qualitätsmuster finden Sie unter:

Weitere Informationen zu anderen in QPT verfügbaren Patches finden Sie unter Patches, die in QPT verfügbar sind, in unserer Entwicklerdokumentation.

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a