MDVA-43862: klant kan winkelwagentjes niet bijwerken vanwege een mutatiefout in GraphQL UpdateCartItems

De MDVA-43862-patch lost het probleem op waarbij de klant geen winkelwagentjes kan bijwerken vanwege een GraphQL UpdateCartItems-mutatiefout. Dit flard is beschikbaar wanneer het Hulpmiddel van de Patches van de Kwaliteit (QPT)1.1.13 geïnstalleerd is. De patch-id is MDVA-43862. Het probleem wordt volgens de planning opgelost in Adobe Commerce 2.4.5.

Betrokken producten en versies

het flard wordt gecreeerd voor de versie van Adobe Commerce:

  • Adobe Commerce (alle implementatiemethoden) 2.4.3-p1, 2.4.2-p2

Compatibel met de versies van Adobe Commerce:

  • Adobe Commerce (alle implementatiemethoden) 2.3.3 - 2.4.4
NOTE
De patch kan van toepassing worden op andere versies met nieuwe versies van het Hulpprogramma voor kwaliteitspatches. Om te controleren of de patch compatibel is met uw Adobe Commerce-versie, werkt u het magento/quality-patches -pakket bij naar de meest recente versie en controleert u de compatibiliteit op de Quality Patches Tool : zoek naar patches op de pagina. Gebruik de patch-id als een zoekwoord om de patch te zoeken.

Probleem

De klant kan winkelwagentjes niet bijwerken vanwege een mutatiefout in GraphQL UpdateCartItems.

Stappen om te reproduceren:

  1. Creeer een configureerbaar product (MH01) door één eenvoudig (MH01-XL-Grijs) toe te wijzen.

  2. Ga naar Commerce Admin > Catalogus > Producten > SKU > MH01 > Aanpasbare Opties.

  3. Voeg een aangepaste optie aan het product toe.

    • Optietitel: Option1
    • Type optie: Veld
    • Vereist: Ja
    • Prijs: 10,00
    • Prijstype: Vast
    • SKU: MHC1
    • Max. tekens: 25
  4. Voer de onderstaande GraphQL-query uit om de winkelwagentje-id te genereren.

    code language-graphql
    mutation {
      createEmptyCart
    }
    
  5. Noteer de ID-code van het winkelwagentje.

  6. Voer de onderstaande query uit om configureerbaar product aan de winkelwagentje toe te voegen:

    code language-graphql
    mutation {
    addConfigurableProductsToCart(
    input: {
        cart_id: "<cart ID from above step>",
        cart_items: [{
        parent_sku: "MH01",
        data: {
            quantity: 1,
            sku: "MH01-XL-Gray"
            },
            customizable_options: {
                id: 1,
                value_string: "2"
                }
            }
        ]
    }
    )
    {
    cart {
      items {
        uid
        quantity
        product {
          name
          sku
        }
        ... on ConfigurableCartItem {
          configurable_options {
            option_label
          }
        }
      }
    }
    }
    }
    
  7. U zult opmerken dat de kar met het configureerbare punt wordt bevolkt.

  8. Noteer de geretourneerde uid.

  9. Voer opnieuw de onderstaande query uit om het winkelwagentje bij te werken.

    code language-graphql
    mutation {
      updateCartItems(
        input: {
          cart_id: "<cart ID from previous step>",
          cart_items: [
            {
              cart_item_uid: "<uid from previous step>"
              quantity: 3,
              customizable_options:[{
                  id: 1,
                  value_string: "67"
              }]
            }
          ]
        }
      ){
        cart {
          items {
            uid
            product {
              name
            }
            quantity
          }
          prices {
            grand_total{
              value
              currency
            }
          }
        }
      }
    }
    
  10. Neem de reactie waar.

Verwachte resultaten :

Het winkelwagentje wordt zonder problemen bijgewerkt.

Ware resultaten :

De volgende fout treedt op:

{
  "errors": [
    {
      "message": "Could not update cart item: You need to choose options for your item.",
      "extensions": {
        "category": "graphql-input"
      },
      "locations": [
        {
          "line": 2,
          "column": 3
        }
      ],
      "path": [
        "updateCartItems"
      ]
    }
  ],
  "data": {
    "updateCartItems": null
  }
}

De patch toepassen

Om individuele flarden toe te passen, gebruik de volgende verbindingen afhankelijk van uw plaatsingsmethode:

Gerelateerde lezing

Raadpleeg voor meer informatie over het gereedschap Kwaliteitspatches:

Voor info over andere flarden beschikbaar in QPT, verwijs naar die flarden beschikbaar in QPTin onze ontwikkelaarsdocumentatie.

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