大数跨境

inventorySetQuantities 突变的新比较并交换语法

inventorySetQuantities 突变的新比较并交换语法 Shopify电商独立站
2025-12-12
2
导读:此更新日志涉及并发保护功能。

此更新日志涉及并发保护功能。

我们正在将 changeFromQuantity 于2026-01中引入的 在 2026-01 变更设为必填,并移除库存 Set Quantities 变体中的 compare Quantity 和 ignore Compare Quantity 字段。 compareQuantity 和 ignoreCompareQuantity 用于 inventorySetQuantities 变体。

这是一项破坏性变更。请注意,尽管changeFromQuantity字段在模式层面未显示为必填,但在调用这些突变时若不传入null或传入当前实际数量,将在运行时导致错误。

您需要执行的操作

在迁移到版本2026-04之前,请更新您的应用程序逻辑以包含changeFromQuantity参数:

  • 要启用并发检查(推荐):传递预期的当前数量。
  • 要选择退出(跳过检查):显式传递 changeFromQuantity: null

此外,在迁移之前,您必须从突变调用中移除ignoreCompareQuantity参数和compareQuantity参数。

如何使用该字段

以前,为了绕过比较检查,您将ignoreCompareQuantity设置为true。

现在,为了绕过比较检查,您需要向changeFromQuantity字段显式传递null;若要启用检查,请传递一个整数,该整数表示更新到期望值之前的初始数量。

在以下示例中,仅当当前可用数量为 5 时,操作才能成功将新的可用数量设置为 12。如果在此期间其他进程修改了数量,您将收到错误,并且可以使用更新后的值重试。

mutation { inventorySetQuantities( input: { quantities: [ { quantity: 12, inventoryItemId: "gid://shopify/InventoryItem/2", locationId: "gid://shopify/Location/1", changeFromQuantity: 5 } ], reason: "correction", name: "available" } ) { inventoryAdjustmentGroup { id } userErrors { code message } } }

移除旧版字段

compareQuantity和ignoreCompareQuantity字段将在版本2026-04中被移除。

有关比较和交换以及何时应选择不进行比较检查的更多信息,请参阅我们的文档。我们鼓励用户除非其用例有正当理由,否则避免选择不进行对比检查。

【声明】内容源于网络
0
0
Shopify电商独立站
1234
内容 7163
粉丝 0
Shopify电商独立站 1234
总阅读95.5k
粉丝0
内容7.2k