ACP2E-4799: GraphQL クエリ requisition_listsがページネーションで正しくないtotal_countを返す
ACP2E-4799 パッチは、requisition_lists GraphQL クエリが、クエリ条件に一致する要件リストエンティティの合計数ではなく、現在のページの項目数のみを反映する誤ったtotal_count値を返す問題を修正します。 このパッチは、Quality Patches Tool (QPT) 1.1.82がインストールされている場合に利用できます。 パッチ IDはACP2E-4799です。 この問題は、Adobe Commerce B2B 1.5.4で修正される予定です。
影響を受ける製品とバージョン
パッチはAdobe Commerceのバージョン用に作成されました
- Adobe Commerce(すべてのデプロイメント方法) B2B 1.5.2-p4
Adobe Commerceのバージョンとの互換性:
- Adobe Commerce(すべてのデプロイメント方法) B2B >=1.5.0 <1.5.3
magento/quality-patches パッケージを最新バージョンに更新し、Quality Patches Tool:パッチの検索ページ で互換性を確認します。 パッチ IDを検索キーワードとして使用して、パッチを検索します。イシュー
顧客がページネーション付きの購買リストをクエリする場合、total_count フィールドには、一致する購買リストの総数が反映されません。 代わりに、現在のページに対して返されるアイテムの数のみをレポートします。これにより、ページネーションのメタデータが不正確になります。
前提条件:
Adobe Commerce B2Bでは、リクエストリストが有効になっています。
複製する手順:
-
管理者で、Stores > 設定 > 設定に移動します。
-
一般の下の左側のパネルで、B2B機能を選択します。
-
Enable Requisition Listを Yes に設定し、Save Configを選択します。
-
顧客としてストアフロントにログインします。
-
My Requisition Listsを選択し、6つの購買リストを作成します。
-
顧客が正確に6つの購買リストを持ち、各リスト名に
ABCが含まれていることを確認し、6つのリストがすべてフィルターされたクエリと一致するようにします。 -
pageSizeが2に、currentPageが1に設定された次のGraphQL クエリを実行します。code language-graphql query { customer { requisition_lists( pageSize: 2 currentPage: 1 ) { items { uid name } total_count page_info { current_page page_size total_pages } } } } -
次の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 } } } }
期待される結果:
requisition_listsクエリは、pageSizeとcurrentPageとは独立して、顧客が所有する購買リストの合計数に等しいtotal_countを返します。- ページネーション データは、完全に一致する結果セットと一致したままになります。
実際の結果:
total_countは、現在のページの項目数のみを返します。例えば、6個ではなく2個です。
パッチを適用する
個別のパッチを適用するには、デプロイメント方法に応じて次のリンクを使用します。
- Adobe CommerceまたはMagento Open Source オンプレミス:Quality Patches Tool ガイドのQuality Patches Tool >使用状況
- クラウドインフラストラクチャ上のAdobe Commerce:「 アップグレードとパッチ > Commerce クラウドインフラストラクチャ上のパッチを適用」ガイド
関連トピックス
Quality Patches Toolについて詳しくは、次を参照してください。
- Quality Patches Tool: ツール ガイドの品質パッチ のセルフサービス ツール