MDVA-36572: Neue Lagerreservierung erstellt nach Aktualisierung des Kreditprotokolls
Betroffene Produkte und Versionen
Der Patch wird für die Adobe Commerce-Version erstellt:
Adobe Commerce in Cloud-Infrastruktur 2.4.1
Kompatibel mit Adobe Commerce-Versionen:
Adobe Commerce (alle Bereitstellungstypen) 2.3.5-2.4.2-p1
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
Der Aktualisierungsbeobachter der Credit Memo-Reservierung wird jedes Mal ausgelöst, wenn das Kreditmemo aktualisiert wird. Gemäß der Vereinbarung mit PO änderte sich die Logik der Reservierungsaktualisierung, sodass nur bei der Erstellung des Kreditmemo ausgelöst werden. Die Möglichkeit der Bearbeitung von Kreditkarten über API wird von PO sowie im Rahmen von separaten Tickets geprüft.
Zu reproduzierende Schritte:
-
Kundenkonto erstellen.
-
Erstellen Sie ein einfaches Produkt.
-
Erstellen Sie ein neues Bestellformular, eine neue Rechnungsadresse und ein neues Kreditprotokoll für die Bestellung.
-
Erstellen Sie eine neue Integration.
-
Überprüfen Sie die Tabelle inventory_reserve :
code language-sql select * from inventory_reservation; +----------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------------+ | reservation_id | stock_id | sku | quantity | metadata | +----------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------------+ | 1 | 1 | simple_1 | -1.0000 | {"event_type":"order_placed","object_type":"order","object_id":"","object_increment_id":"000000001"} | | 2 | 1 | simple_1 | 1.0000 | {"event_type":"creditmemo_created","object_type":"order","object_id":"1","object_increment_id":"000000001"} | +----------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec)
-
GET-Anfrage senden an:
../rest/default/V1/creditmemo/3
-
Antwort kopieren (Beispiel):
code language-json { "adjustment": 0, "adjustment_negative": 0, "adjustment_positive": 0, "base_adjustment": 0, "base_adjustment_negative": 0, "base_adjustment_positive": 0, "base_currency_code": "USD", "base_discount_amount": 0, "base_grand_total": 105, "base_discount_tax_compensation_amount": 0, "base_shipping_amount": 5, "base_shipping_incl_tax": 5, "base_shipping_tax_amount": 0, "base_subtotal": 100, "base_subtotal_incl_tax": 100, "base_tax_amount": 0, "base_to_global_rate": 1, "base_to_order_rate": 1, "billing_address_id": 2, "created_at": "2021-04-05 23:43:45", "discount_amount": 0, "entity_id": 1, "global_currency_code": "USD", "grand_total": 105, "discount_tax_compensation_amount": 0, "increment_id": "000000001", "order_currency_code": "USD", "order_id": 1, "shipping_address_id": 1, "shipping_amount": 5, "shipping_incl_tax": 5, "shipping_tax_amount": 0, "state": 2, "store_currency_code": "USD", "store_id": 1, "store_to_base_rate": 0, "store_to_order_rate": 0, "subtotal": 100, "subtotal_incl_tax": 100, "tax_amount": 0, "updated_at": "2021-04-05 23:43:45", "items": [ { "base_cost": null, "base_discount_tax_compensation_amount": 0, "base_price": 100, "base_price_incl_tax": 100, "base_row_total": 100, "base_row_total_incl_tax": 100, "base_tax_amount": 0, "base_weee_tax_row_disposition": 0, "entity_id": 1, "discount_tax_compensation_amount": 0, "name": "simple_1", "order_item_id": 1, "parent_id": 1, "price": 100, "price_incl_tax": 100, "product_id": 1, "qty": 1, "row_total": 100, "row_total_incl_tax": 100, "sku": "simple_1", "tax_amount": 0, "weee_tax_applied": "[]", "weee_tax_applied_row_amount": 0, "weee_tax_row_disposition": 0 } ], "comments": [] }
-
POST-Anfrage senden an:
../rest/default/V1/creditmemo
code language-json { "entity": --paste full response from previous step here-- }
note note NOTE Diese Payload wird nur zur Vereinfachung der Reproduktion verwendet. Kunden erhalten dasselbe Problem nach der Aktualisierung ihres benutzerdefinierten Attributs -
Überprüfen Sie die Tabelle inventory_reserve :
Tatsächliche Ergebnisse:
select * from inventory_reservation;
+----------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------------+
| reservation_id | stock_id | sku | quantity | metadata |
+----------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------------+
| 1 | 1 | simple_1 | -1.0000 | {"event_type":"order_placed","object_type":"order","object_id":"","object_increment_id":"000000001"} |
| 2 | 1 | simple_1 | 1.0000 | {"event_type":"creditmemo_created","object_type":"order","object_id":"1","object_increment_id":"000000001"} |
| 3 | 1 | simple_1 | 1.0000 | {"event_type":"creditmemo_created","object_type":"order","object_id":"1","object_increment_id":"000000001"} |
+----------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)
Erwartete Ergebnisse:
Es wird keine zweite Reservierung für dasselbe Kreditmemo erstellt.
Wenden Sie den Patch an
Verwenden Sie je nach Bereitstellungstyp die folgenden Links, um einzelne Patches anzuwenden:
- Adobe Commerce oder Magento Open Source vor Ort: Handbuch für Softwareaktualisierungen > Patches anwenden in unserer Entwicklerdokumentation.
- Adobe Commerce für die Cloud-Infrastruktur: Upgrades und Patches > Patches anwenden in unserer Entwicklerdokumentation.
Verwandtes Lesen
Weitere Informationen zum Werkzeug für Qualitätsmuster finden Sie unter:
- Qualitätspatches-Tool veröffentlicht: ein neues Tool zur Selbstbedienung von Qualitätspatches.
- Überprüfen Sie mithilfe des Qualitätssicherungswerkzeugs, ob für Ihr Adobe Commerce-Problem ein Patch verfügbar ist.
Weitere Informationen zu anderen in QPT verfügbaren Patches finden Sie im Abschnitt In QPT verfügbare Patches.