ACSD-48627: configureerbaar product buiten voorraad veroorzaakt een fout

De ACSD-48627-patch verhelpt het probleem waarbij het configureerbare product van buiten de voorraad een fout veroorzaakt bij het verzenden van een GraphQL-aanvraag om kaartgegevens op te halen. Deze pleister is beschikbaar wanneer de Quality Patches Tool (QPT) 1.1.25 is geïnstalleerd. De patch-id is ACSD-48627. Het probleem wordt volgens de planning opgelost in Adobe Commerce 2.4.6.

Betrokken producten en versies

De patch wordt gemaakt voor Adobe Commerce-versie:

  • Adobe Commerce (alle implementatiemethoden) 2.4.5-p1

Compatibel met Adobe Commerce-versies:

  • Adobe Commerce (alle implementatiemethoden) 2.4.5 - 2.4.5-p1
NOTE
De patch kan van toepassing worden op andere versies met nieuwe Quality Patches Tool lozingen. Als u wilt controleren of de patch compatibel is met uw Adobe Commerce-versie, werkt u de magento/quality-patches het pakket aan de recentste versie en controleer verenigbaarheid op Quality Patches Tool: Pagina met patches zoeken. Gebruik de patch-id als een zoekwoord om de patch te zoeken.

Probleem

Het configureerbare product van buiten de voorraad veroorzaakt een fout wanneer het verzenden van een GraphQL verzoek om kartdetails te krijgen.

Stappen om te reproduceren:

  1. Maak een klantenaccount.

  2. Voeg bepaalde producten aan de kar toe, met inbegrip van een configureerbaar product.

  3. Ga naar admin backend, en geef het configureerbare product uit door al kindproductenKwaliteit aan 0 te plaatsen.

  4. Het configureerbare product zal uit voorraad raken aangezien alle kindproducten uit voorraad zijn.

  5. Controleer de catalog_product_index_price tabel. De record met dit product is leeg.

  6. Voer een GraphQL-aanvraag in om de klanttoken op te halen.

    code language-graphql
    mutation {
        generateCustomerToken(
            email: "test@example.com"
            password: "xxxx"
            ) {
                token
                }
                }
    
  7. Voer een GraphQL-aanvraag in om cartId op te halen.

    code language-graphql
    Headers: Authentication => Bearer [customer token in step 6]
    
    code language-graphql
    {
        customerCart {
            id
            items {
                id
                product {
                    name
                    sku
                    }
                    quantity
                    }
                    }
                    }
    
  8. Voer een GraphQL-aanvraag in om de gegevens van het winkelwagentje op te halen.

    code language-graphql
    Headers: Authentication => Bearer [customer token in step 6]
    
    code language-graphql
    query GetCartDetails($cartId: String!) {
        cart(cart_id: $cartId) {
            id
            ...CartPageFragment
            __typename
            }
            }
            fragment CartPageFragment on Cart {
                id
                total_quantity
                ...AppliedCouponsFragment
                ...ProductListingFragment
                ...PriceSummaryFragment
                __typename
                }
                fragment AppliedCouponsFragment on Cart {
                    id
                    applied_coupons {
                        code
                        __typename
                        }
                        __typename
                        }
                        fragment ProductListingFragment on Cart {
                            id
                            items {
                                uid
                                product {
                                    uid
                                    name
                                    sku
                                    url_key
                                    url_suffix
                                    thumbnail {
                                        url
                                        __typename
                                        }
                                        small_image {
                                            url
                                            __typename
                                            }
                                            stock_status
                                            price_range {
                                                minimum_price {
    
                                                final_price {
                                                    currency
                                                    value
                                                    __typename
                                                    }
                                                    regular_price {
                                                        currency
                                                        value
                                                        __typename
                                                        }
                                                        __typename
                                                        }
                                                        __typename
                                                        }
                                                        stock_status
                                                        ... on ConfigurableProduct {
                                                            variants {
                                                                attributes {
                                                                    uid
                                                                    __typename
                                                                    }
                                                                    product {
                                                                        uid
                                                                        small_image {
                                                                            url
                                                                            __typename
                                                                            }
                                                                            stock_status
                                                                            __typename
                                                                            }
                                                                            __typename
                                                                            }
                                                                            __typename
                                                                            }
                                                                            __typename
                                                                            }
                                                                            prices {
                                                                                price {
                                                                                    currency
                                                                                    value
                                                                                    __typename
                                                                                    }
                                                                                    __typename
                                                                                    }
                                                                                    quantity
                                                                                    ... on
                                                                                    ConfigurableCartItem {
                                                                                        configurable_options {
                                                                                            id
                                                                                            configurable_product_option_uid
                                                                                            option_label
                                                                                            configurable_product_option_value_uid
                                                                                            value_label
                                                                                            __typename
                                                                                            }
                                                                                            __typename
                                                                                            }
                                                                                            __typename
                                                                                            }
                                                                                            __typename
                                                                                            }
                                                                                            fragment PriceSummaryFragment on Cart {
                                                                                                id
                                                                                                items {
                                                                                                    uid
                                                                                                    quantity
                                                                                                    __typename
                                                                                                    }
                                                                                                    ...ShippingSummaryFragment
                                                                                                    prices {
                                                                                                        ...TaxSummaryFragment
                                                                                                        ...DiscountSummaryFragment
                                                                                                        ...GrandTotalFragment
                                                                                                        subtotal_excluding_tax {
                                                                                                            currency
                                                                                                            value
                                                                                                            __typename
                                                                                                            }
                                                                                                            subtotal_including_tax {
                                                                                                                currency
                                                                                                                value
                                                                                                                __typename
                                                                                                                }
                                                                                                                __typename
                                                                                                                }
                                                                                                                __typename
                                                                                                                }
                                                                                                                fragment DiscountSummaryFragment on
                                                                                                                CartPrices {
                                                                                                                    discounts {
                                                                                                                        amount {
                                                                                                                            currency
                                                                                                                            value
                                                                                                                            __typename
                                                                                                                            }
                                                                                                                            label
                                                                                                                            __typename
                                                                                                                            }
                                                                                                                            __typename
                                                                                                                            }
                                                                                                                            fragment GrandTotalFragment on CartPrices {
                                                                                                                                grand_total {
                                                                                                                                    currency
                                                                                                                                    value
                                                                                                                                    __typename
                                                                                                                                    }
                                                                                                                                    __typename
                                                                                                                                    }
                                                                                                                                    fragment ShippingSummaryFragment on Cart {
                                                                                                                                        id
                                                                                                                                        shipping_addresses {
                                                                                                                                            selected_shipping_method {
                                                                                                                                                amount {
                                                                                                                                                    currency
                                                                                                                                                    value
                                                                                                                                                    __typename
                                                                                                                                                    }
                                                                                                                                                    __typename
                                                                                                                                                    }
                                                                                                                                                    street
                                                                                                                                                    __typename
                                                                                                                                                    }
                                                                                                                                                    __typename
                                                                                                                                                    }
                                                                                                                                                    fragment TaxSummaryFragment on CartPrices {
                                                                                                                                                        applied_taxes {
                                                                                                                                                            amount {
                                                                                                                                                                currency
                                                                                                                                                                value
                                                                                                                                                                __typename
                                                                                                                                                                }
                                                                                                                                                                __typename
                                                                                                                                                                }
                                                                                                                                                                __typename
                                                                                                                                                                }
    

Verwachte resultaten:

Nee Interne serverfout in de reactie.

Werkelijke resultaten:

Er is een Interne serverfout in de reactie.

De patch toepassen

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

Gerelateerde lezing

Meer informatie over Quality Patches Tool, zie:

Voor informatie over andere patches beschikbaar in QPT, verwijs naar Quality Patches Tool: Zoeken naar patches in de Quality Patches Tool hulplijn.

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