新規イベント・フォーマット
Sterling Intelligent Promising では、 inventory serviceの新しいイベント・フォーマットが導入されています。 今後、新しいイベントは新しい形式で配信されます。
以下のリストでは、新しいフォーマットで配信されるイベントについて触れている:
イベントの変更
インベントリに何らかの変更が発生すると、指定したエンドポイントに以下のイベントがパブリッシュされる。
| Inventory Visibility のイベント ID | ペイロード内のイベント・コード |
|---|---|
|
|
| supplyChange.v2 | supplyChange.v2 |
| productAvailability.v2 | productAvailability.v2 |
| availableSupplyChange.v2 | availableSupplyChange.v2 |
| dgAvailabilityChange.v2 | dgAvailabilityChange.v2 |
| Demand.Change | demandChange |
スナップショット・イベント
以下のスナップショット・イベントを使用して、変更イベントを外部システムにパブリッシュできます。
| Inventory Visibility のイベント ID | ペイロード内のイベント・コード |
|---|---|
| productAvailabilitySnapshot.v2 | productAvailabilitySnapshot.v2 |
| dgAvailabilitySnapshot.v2 | dgAvailabilitySnapshot.v2 |
| demandSnapshot | demandSnapshot |
| supplySnapshot | supplySnapshot |
注:
- 2024年6月以前の需給記録、および2024年6月以降にデルタ調整が行われていない記録については、スナップショットイベントでそれらの記録を表示するには、再度同期を行う必要があります。
- 供給または需要の有効期限が到来すると、影響を受けるアイテムについて、ノードレベルおよびネットワークレベルのイベントが公開されます。これには、すべての可用性イベントおよび利用可能な供給イベントが含まれます。
Supply.Change- アイテムの供給が変更されると、
Supply.Changeイベントがトリガーされます。 このイベントのコードはsupplyChangeです。以下のサンプル JSON は、パブリッシュされたSupply.Changeイベントの例です。{ "eventbatch":[ { "channel":"Order Management", "identifiers":[], "events":[ { "code": "supplyChange", "timestamp": "2020-01-18T06:00:00.021Z", "attributes": [ { "name":"tenantId", "type":"String", "value":"tenant1" }, { "name":"productID", "type":"String", "value":"SKU1024" }, { "name":"unitOfMeasure", "type":"String", "value":"EACH" }, { "name":"productClass", "type":"String", "value":"NEW" }, { "name":"shipNode", "type":"String", "value":"Matrix-Store-001" }, { "name":"shipByDate", "type":"dateTime", "value":"2500-01-01T00:00:00.000Z" }, { "name":"lineReference", "type":"String", "value":"" }, { "name":"reference", "type":"String", "value":"" }, { "name":"referenceType", "type":"String", "value":"" }, { "name":"segment", "type":"String", "value":"" }, { "name":"segmentType", "type":"String", "value":"" }, { "name":"quantity", "type":"Number", "value":"1.0" }, { "name":"changedQuantity", "type":"Number", "value":"1.0" }, { "name":"type", "type":"String", "value":"ONHAND_BACKROOM_01" }, { "name":"baseType", "type":"String", "value":"ONHAND" }, { "name":"tagNumber", "type":"String", "value":"|||" }, { "name":"updatedTs", "type":"dateTime", "value":"IGNORE_VALUE" }, { "name":"eta", "type":"dateTime", "value":"1900-01-01T00:00:00.000Z" }, { "name":"adjustmentReason", "type":"String", "value":"ADJUSTMENT"}, ] }, { "code":"supplyChange", "timestamp":"2020-01-03T15:48:02Z", "attributes":[ { "name":"tenantId", "value":"tenant1", "type":"String"}, { "name":"productID", "value":"SKU1024", "type":"String"}, { "name":"unitOfMeasure", "value":"EACH", "type":"String"}, { "name":"productClass", "value":"NEW", "type":"String"}, { "name":"lineReference", "value":" ", "type":"String"}, { "name":"shipNode", "value":"Matrix-Store-002", "type":"String"}, { "name":"shipByDate", "value":"2500-01-01T00:00:00Z", "type":"dateTime"}, { "name":"reference", "value":" ", "type":"String"}, { "name":"referenceType", "value":" ", "type":"String"}, { "name":"quantity", "value":"200.0", "type":"Number"}, { "name":"segment", "value":" ", "type":"String"}, { "name":"segmentType", "value":" ", "type":"String"}, { "name":"type", "type":"String", "value":"ONHAND_BACKROOM_01" }, { "name":"baseType", "type":"String", "value":"ONHAND" }, { "name":"tagNumber", "type":"String", "value":"|||" }, { "name":"updatedTs", "value":"2020-01-03T15:47:48Z", "type":"dateTime"}, { "name":"eta", "value":"1900-01-01T00:00:00Z", "type":"dateTime"}, { "name":"adjustmentReason", "type":"String", "value":"ADJUSTMENT"}, ]} ] }] }updatedTsフィールドは、この供給のためにデータベースが更新された時刻を示します。 データベース・レコードが存在しない場合、forcePublishの間は NULL になります。 デフォルトでは、供給同期が実行されると、供給変更イベントは、供給同期の一部としてアップサートする必要があるレコードに対してのみパブリッシュされます。 ただし、供給同期でforcePublishが true として渡されると、供給同期の一部であるすべての供給レコードに対してイベントがパブリッシュされます。 これにより、供給レコードの受信による可用性の変化に関係なく、ノードとネットワークの可用性変化イベントも公表される。 供給レコードがシステムに存在せず、同期プロセスの一部として無視される場合、このレコードのイベントに対してupdatedTsは NULL になります。注: このパラメータはproductAvailability.v2,availableSupplyChange.v2,dgAvailabilityChange.v2に適用される。
supplyChange.v2- アイテムの供給が変更されると、
supplyChange.v2イベントがトリガーされます。 このイベントのコードはsupplyChange.v2です。以下のサンプル JSON は、パブリッシュされたsupplyChange.v2イベントの例です。{ "type": "supplyChange.v2", "datacontenttype": "application/json", "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ec5", "specversion": "1.0", "time": "2023-08-30T10:20:31.102Z", "data": { "tenantId": "tenant1", "itemId": "SKU1024", "unitOfMeasure": "EACH", "productClass": "NEW", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "shipNode": "Matrix-Store-001" "shipByDate": "2500-01-01T00:00:00.000Z", "lineReference":null, "reference":null, "referenceType":null, "segment": null, "segmentType": null, "quantity": 1, "changedQuantity": 1, "customAttributes" : [ { "double" : 10.1, "key" : "futureQuantity" }, { "key" : "adjustmentReasonText", "string" : "returnDamaged" }, { "date" : "2023-01-01T00:00:00.000Z", "key" : "manufacturingDate" }], "type": "ONHAND_BACKROOM_01", "baseType": "ONHAND", "tagNumber": "|||", "updatedTs": "2023-08-30T10:20:31.102Z", "eta": "1900-01-01T00:00:00.000Z", "adjustmentReason": "ADJUSTMENT", } }updatedTsフィールドは、この供給のためにデータベースが更新された時刻を示します。 データベース・レコードが存在しない場合、forcePublishの間は NULL になります。 デフォルトでは、供給同期が実行されると、供給変更イベントは、供給同期の一部としてアップサートする必要があるレコードに対してのみパブリッシュされます。 ただし、供給同期でforcePublishが true として渡されると、供給同期の一部であるすべての供給レコードに対してイベントがパブリッシュされます。 これにより、供給レコードの受信による可用性の変化に関係なく、ノードとネットワークの可用性変化イベントも公表される。 供給レコードがシステムに存在せず、同期プロセスの一部として無視される場合、このレコードのイベントに対してupdatedTsは NULL になります。
productAvailability.v2productAvailability.v2イベントにおけるノードの可用性は、利用可能な数量に変更があるたびに、アイテム・ノード単位で公表される。 この変更は、供給、需要、安全在庫、フルフィルメント・オプション、キャパシティ・レベルが更新された場合にトリガーされる。以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。- SHP配信方法
{ "type": "productAvailability.v2", "datacontenttype": "application/json", "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ec5", "specversion": "1.0", "time": "2021-03-10T00:00:00.288Z", "data": { "itemAttributes" : { "color": ["red", "black"], "material": ["cotton"], "size": ["L", "M"] }, "computeTs": "2021-03-10T00:00:00.097Z", "tenantId": "tenant1", "productId": "SHIRT", "productClass": "CLASS_1", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "deliveryMethod": "SHP", "segment": null, "segmentType": null, "shipNode": "store-BostonMA", "unitOfMeasure": "EACH", "shipNodeAvailabilities": [ { "shipNode": "store-BostonMA", "shipNodeDetails": { "shipNode": "store-BostonMA", "type": "STORE", "country": "US" }, "currentAvailability": { "demandQuantity": 0, "supplyQuantity": 5, "toTs": "2021-04-01T00:00:00.000Z", "availableQuantity": 35, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "thresholdLevel": 0, "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "segmentedQuantity": 5.0, "unsegmentedQuantity": 25.0, "consumptionDemandQuantity": 0.0, "consumptionReservedQuantity": 0.0 "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } }, "futureAvailability": [ { "demandQuantity": 0, "supplyQuantity": 5, "fromTs": "2021-04-01T00:00:00.000Z", "toTs": "2500-01-01T00:00:00.000Z", "availableQuantity": 45, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "segmentedQuantity": 5.0, "unsegmentedQuantity": 35.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0, "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } } ] } } - 配送方法を選択
{ "type": "productAvailability.v2", "datacontenttype": "application/json", "id": "2a8d36a3-485b-3fc0-bd15-d530625a6ed6", "specversion": "1.0", "time": "2021-03-10T00:00:00.288Z", "data": { "itemAttributes" : { "color": ["red", "black"], "material": ["cotton"], "size": ["L", "M"] }, "computeTs": "2021-03-10T00:00:00.097Z", "tenantId": "tenant1", "productId": "SHIRT", "productClass": "CLASS_1", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "deliveryMethod": "PICK", "segment": null, "segmentType": null, "shipNode": "store-BostonMA", "unitOfMeasure": "EACH", "shipNodeAvailabilities": [ { "shipNode": "store-BostonMA", "shipNodeDetails": { "shipNode": "store-BostonMA", "type": "STORE", "country": "US" }, "currentAvailability": { "demandQuantity": 0, "supplyQuantity": 5, "toTs": "2021-04-01T00:00:00.000Z", "availableQuantity": 35, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "thresholdLevel": 0, "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "segmentedQuantity": 5.0, "unsegmentedQuantity": 25.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0, "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } }, "futureAvailability": [ { "demandQuantity": 0, "supplyQuantity": 5, "fromTs": "2021-04-01T00:00:00.000Z", "toTs": "2500-01-01T00:00:00.000Z", "availableQuantity": 45, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability:" 1.0, "segmentedQuantity": 5.0, "unsegmentedQuantity": 35.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0, "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } } ] } }
注:- ここに記載されている数値はあくまで一例であり、参考情報として提供されているものです。
shortaeQuantityは、過剰需要、過剰予約、および過剰安全在庫のためにシステムで発生した不足です。consumedSafetyQuantityは、在庫状況に応じて調整された安全数量です。fulfillmentAllowedフィールドには、フルフィルメントが許可されているかどうかが示されます。demandShortageは、供給で調整できなかった超過需要数量を示します。reservationShortageは、予約の超過分の値を示します。safetyShortageは、使用可能なサプライ用品で調整できなかった安全在庫数量を示します。shortageQuantity=demandShortage+reservationShortage+safetyShortage.SegmentedQuantityは、セグメント化された在庫に由来する可用性である。 セグメントがセグメント化されていない在庫を消費する場合にのみ計算され、イベントがセグメント化されていない可用性を示す場合は、 0.0。UnsegmentedQuantityは、セグメント化されていない在庫に由来する可用性である。 セグメントがセグメント外の在庫を消費する場合にのみ計算される。- イベントがセグメント化されていない可用性のために公開されている場合、計算のために以下のパラメータを考慮してください:
consumptionDemandQuantityは、セグメント化されていない可用性に割り当てられる追加のセグメント化された需要量である。 これは、消費が有効で、セグメント化されていない在庫に対してイベントが発生した場合にのみ計算される。consumptionReservedQuantityは、セグメント化されていない予約可能な状態で配置された、追加のセグメント化された予約数量である。 これは、消費が有効で、セグメント化されていない在庫に対してイベントが発生した場合にのみ計算される。
currentAvailabilityの計画外数量は既存在庫の売れすぎを示し、futureAvailabilityの数量はサプライヤーによる補充が必要であることを意味する。- このタグ付きリソース
consumedByUntaggedは、タグのない要求によって消費される利用可能リソースです。 これは、タグによる在庫管理が有効になっている場合にのみ計算され、タグ付き在庫はタグなしの需要に対して考慮され、タグ付き在庫に対してイベントが発生します。 - は、タグ付けされた在庫に基づく
taggedAvailability利用可能量を算出します。 これは、タグによる在庫管理が有効になっている場合にのみ計算され、タグ付き在庫はタグなしの需要に対して考慮され、タグなし在庫に対してイベントが発生します。
- SHP配信方法
- availableSupplyChange.v2
availableSupplyChange.v2イベントは、供給、需要、予約、または安全在庫で変更が発生した場合に、供給日に基づいて在庫状況ピクチャーを提供します。 このイベントのコードはavailableSupplyChange.v2です。availableSupplyChange.v2イベントのトリガー・ポイントは、productavailability.v2のトリガー・ポイントと同じです。詳しくは、 ノードで使用可能なサプライ用品を参照してください。
以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。- SHP配信方法
{ "specversion": "1.0", "type": "availableSupplyChange.v2", "id": "515aa404-4411-38d8-9855-b6ab093a451e", "time": "2023-12-05T23:35:56.616Z", "datacontenttype": "application/json", "data":{ "tenantId":"us-b5d0aae5", "productId":"SHIRT", "segment":null, "segmentType":null, "unitOfMeasure":"EACH", "productClass":"NEW", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "deliveryMethod":"SHP", "shipNode": "store-BostonMA", "computeTs": "2023-12-05T23:35:56.584Z", "thresholdLevel": "0", "availableSupplies":[{ "availableQuantity" : 8.0, "consumedSafetyQuantity" : 0.0, "demandQuantity" : 4.0, "fromTs" : "2023-12-01T00:00:00.000Z", "fulfillmentAllowed" : true, "reservedQuantity" : 0.0, "shortageQuantity" : 0.0, "supplyQuantity" : 12.0, "toTs" : "2023-12-30T00:00:01.000Z", "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, }, { "availableQuantity" : 15.0, "consumedSafetyQuantity" : 0.0, "demandQuantity" : 0.0, "fromTs" : "2023-12-10T00:00:00.000Z", "fulfillmentAllowed" : true, "reservedQuantity" : 0.0, "shortageQuantity" : 0.0, "supplyQuantity" : 10.0, "toTs" : "2024-01-10T00:00:01.000Z", "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, }], "unsegmentedAvailableSupplies":[{ "availableQuantity" : 90.0, "consumedSafetyQuantity" : 0.0, "demandQuantity" : 0.0, "fromTs" : "1900-01-01T00:00:00.000Z", "fulfillmentAllowed" : true, "reservedQuantity" : 0.0, "shortageQuantity" : 0.0, "supplyQuantity" : 90.0, "toTs" : "2500-01-01T00:00:00.000Z", "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0 }], "itemAttributes" : { "color": ["red", "black"], "material": ["cotton"], "size": ["L", "M"] } } } - 配送方法を選択
{ "specversion": "1.0", "type": "availableSupplyChange.v2", "id": "515aa404-4411-38d8-9855-b6ab093a462f", "time": "2023-12-05T23:35:56.616Z", "datacontenttype": "application/json", "data":{ "tenantId":"us-b5d0aae5", "productId":"SHIRT", "segment":null, "segmentType":null, "unitOfMeasure":"EACH", "productClass":"NEW", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "deliveryMethod":"PICK", "shipNode": "store-BostonMA", "computeTs": "2023-12-05T23:35:56.584Z", "thresholdLevel": "0", "availableSupplies":[{ "availableQuantity" : 13.0, "consumedSafetyQuantity" : 0.0, "demandQuantity" : 4.0, "fromTs" : "2023-12-01T00:00:00.000Z", "fulfillmentAllowed" : true, "reservedQuantity" : 0.0, "shortageQuantity" : 0.0, "supplyQuantity" : 12.0, "toTs" : "2023-12-30T00:00:01.000Z", "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, }, { "availableQuantity" : 10.0, "consumedSafetyQuantity" : 0.0, "demandQuantity" : 0.0, "fromTs" : "2023-12-10T00:00:00.000Z", "fulfillmentAllowed" : true, "reservedQuantity" : 0.0, "shortageQuantity" : 0.0, "supplyQuantity" : 10.0, "toTs" : "2024-01-10T00:00:01.000Z", "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, }], "unsegmentedAvailableSupplies":[{ "availableQuantity" : 90.0, "consumedSafetyQuantity" : 0.0, "demandQuantity" : 0.0, "fromTs" : "1900-01-01T00:00:00.000Z", "fulfillmentAllowed" : true, "reservedQuantity" : 0.0, "shortageQuantity" : 0.0, "supplyQuantity" : 90.0, "toTs" : "2500-01-01T00:00:00.000Z", "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0 }], "itemAttributes" : { "color": ["red", "black"], "material": ["cotton"], "size": ["L", "M"] } } }
注: 詳しくは、shortageQuantity、consumedSafetyQuantity、およびfulfillmentAllowedの定義を参照してください。- SHP配信方法
- dgAvailabilityChange.v2
dgAvailabilityChange.v2イベントは、ディストリビューション・グループのネットワーク全体の可用性を表します。 1つまたは複数の含まれるノードが可用性量またはタイムスタンプの変更を経験するたびに、新しいイベントが発行されます。 これらの変更は、供給、需要、安全在庫、フルフィルメント・オプション、キャパシティ・レベルの更新によって引き起こされる。以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。- SHP配信方法
{ "type": "dgAvailabilityChange.v2", "datacontenttype": "application/json", "id": "304746ba-4d53-3514-94d9-9353b8b14152", "specversion": "1.0", "time": "2021-03-10T00:00:00.283Z", "data": { "itemAttributes" : { "color": ["red", "black"], "material": ["cotton"], "size": ["L", "M"] }, "computeTs": "2021-03-10T00:00:00.119Z", "tenantId": "tenant1", "productId": "SHIRT", "productClass": "CLASS_1", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "deliveryMethod": "SHP", "segment" : "Platinum", "segmentType" : "B2B Accounts", "distributionGroupId": "WEB", "unitOfMeasure": "EACH", "currentAvailability": { "toTs": "2021-04-01T00:00:00.000Z", "availableQuantity": 35, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "thresholdLevel": 0, "demandShortage": 0, "reservationShortage": 0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "segmentedQuantity": 20.0, "unsegmentedQuantity": 10.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0, "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } }, "futureAvailability": [ { "fromTs": "2021-04-01T00:00:00.000Z", "toTs": "2500-01-01T00:00:00.000Z", "availableQuantity": 45, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "segmentedQuantity": 5.0, "unsegmentedQuantity": 35.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0 "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } } ] } } - 配送方法を選択
{ "type": "dgAvailabilityChange.v2", "datacontenttype": "application/json", "id": "515aa404-4411-38d8-9855-b6ab093a46df", "specversion": "1.0", "time": "2021-03-10T00:00:00.283Z", "data": { "itemAttributes" : { "color": ["red", "black"], "material": ["cotton"], "size": ["L", "M"] }, "computeTs": "2021-03-10T00:00:00.119Z", "tenantId": "tenant1", "productId": "SHIRT", "productClass": "CLASS_1", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "deliveryMethod": "PICK", "segment": null, "segmentType": null, "distributionGroupId": "WEB", "unitOfMeasure": "EACH", "currentAvailability": { "toTs": "2021-04-01T00:00:00.000Z", "availableQuantity": 35, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "thresholdLevel": 0, "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "segmentedQuantity": 5.0, "unsegmentedQuantity": 25.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0, "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } }, "futureAvailability": [ { "fromTs": "2021-04-01T00:00:00.000Z", "toTs": "2500-01-01T00:00:00.000Z", "availableQuantity": 45, "consumedSafetyQuantity": 0, "fulfillmentAllowed": true, "reservedQuantity": 0, "shortageQuantity": 0, "demandShortage": 0, "reservationShortage":0, "safetyShortage":0, "consumedByUntagged": 0.0, "taggedAvailability": 1.0, "segmentedQuantity": 20.0, "unsegmentedQuantity": 20.0, "consumptionDemandQuantity" : 0.0, "consumptionReservedQuantity" : 0.0 "unplanned": { "availableQuantity": 5.0, "demandQuantity": 3.0, "reserveQuantity": 2.0 } } ] } }
注: 「shortageQuantity」属性は、分配グループのすべてのノードにわたるノード・レベルの不足数量の集約を表します。 詳しくは、shortageQuantity、consumedSafetyQuantity、およびfulfillmentAllowedの定義を参照してください。- SHP配信方法
- Demand.Change
- inventory service では、分析のために需要変更データを外部システムに公開できます。 このようなデータにより、サプライ・チェーン (SC) 管理者は、在庫需要が急増した場合にアラートを受け取ることができます。 例えば、突然のハンド・サニタイザー需要スパイクが発生した場合、SC のマネージャーは、価値の高い一部の購入者に対する契約上の損害を軽減するために、フルフィルメント戦略を迅速に変更できます。
以下のサンプル・ペイロードは、パブリッシュされたイベントの例です。 Inventory Visibility イベント ID は
Demand.Changeで、ペイロード内のイベント・コードはdemandChangeです。{ "specversion" : "1.0", "datacontenttype" : "application/json", "type": "demandChange", "id": "<UUID>", "time": "<time ISO-8601 format>", "data": { "itemId": "SHIRT", "unitOfMeasure": "EACH", "productClass": "CLASS_1", "inventoryTag" : { "batchNo" : "B1", "identifiers" : [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber" : "L1", "revisionNo" : "R1", "tagNumber" : "B1|L1|R1" }, "tagNumber": "A|02", "shipNode": "store-BostonMA", "baseType": "OPEN_ORDER", "type": "CUSTOM_OPEN_ORDER", "segment": "Web", "segmentType": "Channel", "shipDate": "2020-05-29T13:00:00.000Z", "cancelDate": "2020-06-28T13:00:00.000Z", "minShipByDate": "2022-01-22T05:00:00.000Z", "quantity": 3.0, "changedQuantity": 2.0, "updatedTs": "2020-05-28T06:00:00.000Z", "adjustmentReason" : "PROCESS" } }注:updatedTsフィールドは、この需要に対してデータベースが更新された時刻を示します。
- productAvailabilitySnapshot.v2
productAvailabilitySnapshot.v2イベントを使用して、特定のノード、すべてのノード、または分配グループに属するノードの可用性のスナップショットを (オンデマンドで) 送信します。
以下のサンプルJSONは、SHPおよびPICK配信方法の公開イベントの例です。
- dgAvailabilitySnapshot.v2
- イベント
dgAvailabilitySnapshot.v2を使用して、可用性のスナップショットを(オンデマンドで)配布グループに送信します。
- demandSnapshot
Inventory Visibilityのシステム・インテグレーターは、分析のためにデマンド・システムのスナップショットを公開します。 フルフィルメント・マネージャーは、この情報を使用して需要システムに関するレポートを作成し、次の会計サイクルの前に検出された問題をトラブルシューティングします。 例えば、実行した商品のプロモーションの結果として、特定のノードで商品の需要が継続的に急増しているとします。 この増大する需要に対応するために、ロケーションで利用可能な供給を増やし、顧客が商品を見逃さないようにする必要があります。 需要システムを完全に可視化することで、顧客の需要に対応し続けることができます。
以下のサンプル JSON は、パブリッシュされたイベントの例です。 イベント・コードは
demandSnapshotです。{ "type": "demandSnapshot", "datacontenttype": "application/json", "id": "a1ae3dcd-8fd6-4f76-b7ed-7916c739ac5a", "specversion": "1.0", "time": "2023-11-28T00:00:00.000Z", "data": { "fetchTs": "2023-11-28T00:00:00.000Z", "tenantId": "tenant1", "snapshotId": "demandSnapshot-test", "productId": "SKU1024", "unitOfMeasure": "EACH", "productClass": "NEW", "inventoryTag" : { "batchNo" : "B1", "identifiers" : [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber" : "L1", "revisionNo" : "R1", "tagNumber" : "B1|L1|R1" }, "type": "OPEN_ORDER", "shipNode": "Matrix-Store-001", "tagNumber": null, "segment": "ONLINE", "segmentType": "Channel", "shipDate": "2023-12-05T00:00:00Z", "cancelDate": "2500-01-01T00:00:00Z", "referenceType": null, "reference": null, "minShipByDate": "2500-01-01T00:00:00Z", "quantity": 10 } }
supplySnapshot- Inventory Visibility の Systems Integrator として、あなたは分析のために供給システムのスナップショットを公開する。 Fulfillment Manager、早い段階で供給システムを把握することができるので、発見された不一致は次の財務サイクルの前に対処することができる。 例えば、最近販売を開始したばかりの新製品の売上が急上昇していることに気付きます。 より多くの売上を取り込むために、特定のノードでこの商品を中心に販売促進を実行することにします。 供給システムを完全に可視化することで、プロモーションの前に供給する必要がある商品の量を既に把握していることになります。 これにより、お客様の要求を正常に満たすことができます。
以下のサンプル JSON は、パブリッシュされたイベントの例です。 イベント・コードは
supplySnapshotです。{ "type": "supplySnapshot", "datacontenttype": "application/json", "id": "4075a47d-9227-432e-ab3e-c369e8802aa0", "specversion": "1.0", "time": "2023-11-28T00:00:00.000Z", "data": { "fetchTs": "2023-11-28T00:00:00.000Z", "tenantId": "tenant1", "snapshotId": "supplySnapshot-test", "itemId": "SKU1024", "unitOfMeasure": "EACH", "productClass": "NEW", "inventoryTag": { "batchNo": "B1", "identifiers": [ "revisionNo", "lotNumber", "batchNo" ], "lotNumber": "L1", "revisionNo": "R1", "tagNumber": "B1|L1|R1", "manufacturingDate": "2025-11-01T00:00:00Z", "msrp": 155.0, "lotKeyReference": "Ref1", "countryOfOrigin": "USA" "customAttributes": [ { "key": "futureQuantity", "double": 10.1 }, { "key": "VendorOrganization", "string": "matrix" }, { "key": "expiryDate", "date": "2028-01-01T00:00:00.000Z" } ] } "type": "ONHAND", "shipNode": "Matrix-Store-001", "tagNumber": null, "segment": "ONLINE", "segmentType": "Channel", "eta": "1900-01-01T00:00:00Z", "shipByDate": "2500-01-01T00:00:00Z", "referenceType": null, "reference": null, "lineReference": null, "quantity": 100 } }
注: レガシー・イベントでは、void 値は空ストリングとしてパブリッシュされます。 「。 一方、新規イベントは以下のように void 値をパブリッシュします。nullイベント・メッセージ内。