intra-mart Accel Platform IM-LogicDesigner仕様書 第27版 2025-10-01

5.2.1.18.9. エンティティデータの削除[ロックあり]

IM-Repositoryの楽観的排他制御に対応したエンティティデータの削除を行うタスクです。
楽観的排他制御により、ロックキー optimisticLockKey に指定した値とデータ削除時の値が一致しない場合はエラーが発生します。
エンティティに楽観的排他制御の設定がない場合は、通常のエンティティデータの削除タスクと同様に動作します。

5.2.1.18.9.1. プロパティ

項目名 必須/任意 初期値 説明
エンティティID 必須 text なし 検索アイコンをクリックし、「エンティティ検索」ダイアログで対象のエンティティを選択してください。

5.2.1.18.9.2. 入力値

im_repositoryEntityDataDeleteWithLock <object> *
  ├─ deleteKeys <imr_entity> *
  │    └─ %primary keys%
  └─ optimisticLockKey <imr_entity>
       └─ %optimistic lock key%
項目名 必須/任意 配列/リスト 説明
im_repositoryEntityDataDeleteWithLock 必須 object なし  
deleteKeys 必須 imr_entity なし -
%主キー項目のLogicDesignerの変数名% 任意 %主キー項目のLogicDesignerのデータ型% なし プロパティで指定したエンティティの主キー項目が自動的に生成されます。
optimisticLockKey エンティティに楽観的排他制御設定がある場合は必須 imr_entity なし -
%排他制御項目のLogicDesignerの変数名% 任意 %排他制御項目のLogicDesignerのデータ型% なし エンティティの排他制御項目が自動的に生成されます。

5.2.1.18.9.3. 出力値

im_repositoryEntityDataDeleteWithLock <object>
  └─ count <integer>
項目名 配列/リスト 説明
im_repositoryEntityDataDeleteWithLock object なし -
count integer なし 削除件数

コラム

楽観的排他制御エラー発生時は、処理結果情報のエラーメッセージ errorMessage に以下のメッセージが設定されます。
[E.IWP.LOGIC.FLOW.00251] 他のユーザによってエンティティデータが更新されています。(entityId=%entityId%)

例外処理で楽観的排他制御エラーかどうかを判定する場合は、処理結果情報のエラーメッセージによる条件判定を行います。
条件式: ${ $task_result.errorMessage.startsWith( ‘[E.IWP.LOGIC.FLOW.00251]’ ) }