ACSD-66120:カタログ価格に税が含まれている場合、GraphQL に誤った割引率と基本価格が表示される
ACSD-66120 パッチは、カタログ価格が税を含むように設定されてい GraphQL 場合に、割引率と基本価格が誤って表示される問題を修正しました。 この問題が原因で、想定される 20% のディスカウントではなく 19.99% のディスカウントが表示されるなど、丸めに関する不一致が発生しました。 このパッチは、Quality Patches Tool (QPT) 1.1.70 がインストールされている場合に使用できます。 パッチ ID は ACSD-66120 です。 この問題はAdobe Commerce 2.4.9 で修正される予定であることに注意してください。
影響を受ける製品とバージョン
Adobe Commerce バージョン用のパッチが作成されます。
- Adobe Commerce(すべてのデプロイメント方法) 2.4.6-p9
Adobe Commerce バージョンとの互換性:
- Adobe Commerce(すべてのデプロイメント方法) 2.4.4 - 2.4.8-p2
magento/quality-patches パッケージを最新バージョンに更新し、Quality Patches Tool: Search for patches page で互換性を確認します。 パッチ ID を検索キーワードとして使用して、パッチを見つけます。問題
カタログ価格に税が含まれるように設定されている場合、GraphQLで割引率と基本価格が誤って表示される。 丸めエラーにより、割引率は設定済みの 20% ではなく 19.99% と表示されます。
再現手順 :
-
Stores/Settings/Configuration/Catalog/Catalog/Price に移動します。
-
Catalog Price Scope を Web サイト に設定します。
-
Stores/Settings/Configuration/Sales/Tax/Calculation Settings に移動します。
- Tax Calculation Method Based On を 単価 に設定します。
- Catalog Prices を 税込 に設定します。
- Apply Discount On Prices を 税込 に設定します。
-
Stores/Settings/Configuration/Sales/Tax/Default Tax Destination Calculation に移動します。
- Default Country を フランス に設定します。
-
Stores/Tax Zones and Rates/Add new Tax Rate に移動します。
- Tax Identifier フィールドに任意の名前を入力します。
- Zip/Post Code フィールドにアスタリスク(*)を入力します。
- Country を フランス に設定します。
- 「」フィールドに「 20.000000 Rate Percent」と入力します。
- 「Save」をクリックします。
-
Stores/Tax Rules/Add New Tax Rule に移動します。
- Name フィールドに任意の名前を入力します。
- 前の手順で追加したレートに Tax Rate を設定します。
-
Catalog/Products/Add Product に移動します。
- フィールドに test Product Name と入力します。
- フィールドに test SKU と入力します。
- 「」フィールドに 82.65 Price と入力します。
- 「Tax Class」を「課税品」に設定します。
- 「」フィールドに 100 Quantity と入力します。
- 「Save」をクリックします。
-
範囲を デフォルトのストア表示 に変更します。
- [ 価格 ] の Use Default Value をオフにします。
- Price を 68.87 に設定します。
- 税クラスの Use Default Value の設定を解除します。
- Tax Class を 課税品 に設定します。
- 「Save」をクリックします。
-
Marketing/Promotions/Catalog Price Rule/Add New Rule に移動します。
- Rule Name フィールドに任意の名前を入力します。
- Active を はい に設定します。
- Website を メイン Web サイト に設定します。
- Customer Groups を all に設定します
- 「Actions」で、「Apply」を オリジナルに対する割合で適用 に設定します。
- 「」フィールドに「 20.000000 Discount Amount」と入力します。
- 「Save」をクリックします。
-
完全な再インデックスを実行します。
$ bin/magento index:reindex
- GraphQL を使用して、次の Store クエリを実行します。default ヘッダーに設定されています。
query{
products(filter: {sku: {eq: "test"}}, sort: {name: ASC}) {
items {
name
sku
price_range {
minimum_price {
regular_price {
value
currency
}
final_price {
value
currency
}
discount {
amount_off
percent_off
}
}
maximum_price {
regular_price {
value
currency
}
final_price {
value
currency
}
discount {
amount_off
percent_off
}
}
}
}
}
}
期待される結果 :
割引率は、カタログルールの 20% と一致する必要があります。
実際の結果 :
割引率が誤って 19.99% と表示されます。
パッチの適用
個々のパッチを適用するには、デプロイメント方法に応じて、次のリンクを使用します。
- Adobe CommerceまたはMagento Open Source オンプレミス:Quality Patches Tool > 使用状況 Quality Patches Tool ガイドに記載されています。
- クラウドインフラストラクチャー上のAdobe Commerce:クラウドインフラストラクチャー上のCommerce ガイドの アップグレードとパッチ / パッチの適用」を参照してください。
関連資料
Quality Patches Tool について詳しくは、以下を参照してください。
- Quality Patches Tool: 『ツールガイド』にあるクオリティパッチ セルフサービスツール。