ACP2E-4799 : la requête GraphQL requisition_lists renvoie une total_count incorrecte avec pagination

Le correctif ACP2E-4799 corrige le problème où la requête requisition_lists GraphQL renvoie une valeur de total_count incorrecte qui reflète uniquement le nombre d’éléments sur la page active au lieu du nombre total d’entités de liste de demandes d’approvisionnement correspondant aux critères de requête. Ce correctif est disponible lorsque la version 1.1.82 de Quality Patches Tool (QPT) est installée. L’ID du correctif est ACP2E-4799. Notez que ce problème doit être résolu dans la version 1.5.4 d’Adobe Commerce B2B.

Produits et versions concernés

Le correctif est créé pour la version Adobe Commerce :

  • Adobe Commerce (toutes les méthodes de déploiement) B2B 1.5.2-p4

Compatible avec les versions d’Adobe Commerce :

  • Adobe Commerce (toutes les méthodes de déploiement) B2B >=1.5.0 <1.5.3
NOTE
Le correctif peut s’appliquer à d’autres versions avec de nouvelles versions de Quality Patches Tool. Pour vérifier si le correctif est compatible avec votre version d’Adobe Commerce, mettez à jour le package magento/quality-patches vers la dernière version et vérifiez la compatibilité sur la page Quality Patches Tool : Rechercher des correctifs. Utilisez l’ID du correctif comme mot-clé de recherche pour localiser le correctif.

Problème

Lorsque les clients interrogent des listes de demandes d’approvisionnement avec pagination, le champ total_count ne reflète pas le nombre complet de listes de demandes d’approvisionnement correspondantes. Au lieu de cela, il signale uniquement le nombre d’éléments renvoyés pour la page en cours, ce qui rend les métadonnées de pagination inexactes.

Conditions préalables :

Les listes de demandes sont activées pour Adobe Commerce B2B.

Procédure à suivre :

  1. Dans Admin, accédez à Stores > Paramètres > Configuration.

  2. Dans le panneau de gauche, sous Général, choisissez Fonctionnalités B2B.

  3. Définissez Enable Requisition List sur Yes et sélectionnez Save Config.

  4. Connectez-vous au storefront en tant que client.

  5. Choisissez My Requisition Lists et créez six listes de demandes d’approvisionnement.

  6. Assurez-vous que le client possède exactement six listes de demandes d’approvisionnement et que chaque nom de liste contient des ABC, de sorte que les six listes correspondent à la requête filtrée.

  7. Exécutez la requête GraphQL suivante avec pageSize défini sur deux et currentPage défini sur un :

    code language-graphql
    query {
      customer {
        requisition_lists(
          pageSize: 2
          currentPage: 1
        ) {
          items {
            uid
            name
          }
          total_count
          page_info {
            current_page
            page_size
            total_pages
          }
        }
      }
    }
    
  8. Exécutez cette requête GraphQL :

    code language-graphql
    query {
      customer {
        requisition_lists(
          filter: { name: { match: "%ABC%" } }
          pageSize: 2
          currentPage: 1
        ) {
          items {
            uid
            name
          }
          total_count
          page_info {
            current_page
            page_size
            total_pages
          }
        }
      }
    }
    

Résultats attendus :

  • La requête requisition_lists renvoie total_count égal au nombre total de listes de demandes d’approvisionnement détenues par le client, indépendamment des pageSize et des currentPage.
  • Les données de pagination restent cohérentes avec le jeu de résultats correspondant complet.

Résultats réels :

total_count renvoie uniquement le nombre d’éléments dans la page active, par exemple deux au lieu de six.

Application du correctif

Pour appliquer des correctifs individuels, utilisez les liens suivants en fonction de votre méthode de déploiement :

Lecture connexe

Pour en savoir plus sur Quality Patches Tool, consultez :

recommendation-more-help
commerce-operations-help-tools