関連アイテムの更新(トランザクション)
関連するアイテムを同時に更新するトランザクションには、次のAPIが利用できます。
ここでは、ExecuteAction APIを例にして、関連アイテムを同時に更新する方法を説明します。
ExecuteAction APIの概要
- ExecuteAction:指定アクションを実行する
- Method:POST
- Request URL Format:/api/v0/applications/:app-id/datastores/:datastore-id/items/action/:item-id/:action-id
使い方
複数の関連するデータベース内のItem値を更新するには、ExecuteAction APIで、payloadに related_ds_items : [ ... ] という子供Itemへの追加、更新、削除リクエストを埋め込んでPOSTします。
item が親データ(estimate)
"item": {
"5e256923aeae8e212cb2e03b": "value", // text tyepe
"58bbaa27fbfcba6098746061": "5d4c058baa39555618ac9e98", // select type
"58bbaa27fbfcba6098746067" : [ "58bbaa27fbfcba6098746015", "596e2327fbfcbab8283dde09"] // checkbox type
},
related_ds_items に関連する明細データを含めます
"related_ds_items" : {
"estimateDetail" : [{明細行 },{ },{ },{ }... ]
},
トランザクション処理
ensure_transaction : true を指定すると、ヘッダー明細のデータ更新がトランザクション管理(成功 or すべてロールバック)されます。