11.5.28 条件に一致する作業の作業者割り当てと着手
指定したフィルター条件とソート条件を満たす作業群に対して,作業者を割り当てます。そして,最初に割り当てに成功した作業を,「実行開始可能」状態から「作業者実行」状態に変更して返します。このAPIを実行すると,BPMN連携ライブラリJava APIのCIWBPMNLib.allocateWIExインタフェースが呼び出されます。
メソッドとURL
PUT /v1/work-item/allocate
リクエストボディ
項番 |
名前 |
型 |
指定要否 |
内容 |
---|---|---|---|---|
1 |
UserDescription |
文字列 |
省略可 |
ユーザ記述子を指定します。省略した場合はデフォルト値が指定されます。空文字列は指定できません。 |
2 |
Participant |
文字列 |
必須 |
割り当てる作業者IDを指定します。 |
3 |
Filter |
文字列 |
省略可 |
作業を検索する場合のフィルター条件を指定します。フィルター条件には,次に示すようにレーン名を含めた条件を指定してください。
作業群がすべてユーザタスクの場合のような特殊なケースに限って,フィルター条件を省略しても正常に動作します。省略した場合はフィルター条件は指定されません。空文字列は指定できません。 このフィルター条件には,作業の状態が「実行開始可能」状態と一致する条件が自動的に追加されます。 |
4 |
Sort |
文字列 |
省略可 |
作業をソートする場合の条件を指定します。省略した場合はソート条件は指定されません。空文字列は指定できません。 |
5 |
FetchCount |
数値 |
必須 |
一度に取得する件数を指定します。すべてを取得する場合は,-1を指定します。-1未満の値は指定できません。 |
リクエストボディの構造を次に示します。
項番 |
名前 |
出現回数 |
|
---|---|---|---|
1 |
Parameter |
1 |
|
2 |
UserDescription |
0または1 |
|
3 |
Participant |
1 |
|
4 |
Filter |
0または1 |
|
5 |
Sort |
0または1 |
|
6 |
FetchCount |
1 |
リクエスト例
リクエストURL
PUT http://restserver/csciwws/v1/work-item/allocate
リクエストボディ(XMLの場合)
<?xml version="1.0" encoding="UTF-8" ?> <Parameter> <Participant>User1</Participant> <Filter>Participant='MyLane1'</Filter> <!-- Participant='MyLane1' --> <Sort>ID</Sort> <FetchCount>100</FetchCount> </Parameter>
リクエストボディ(JSONの場合)
{ "Participant" : "User1", "Filter" : "Participant='MyLane1'", "Sort" : "ID", "FetchCount" : "100" }
レスポンス
着手した作業を返します。作業のプロパティを次に示します。
項番 |
名前 |
型 |
内容 |
---|---|---|---|
1 |
ActivityInstanceID |
数値 |
作業が所属する業務ステップのID |
2 |
ClosedDate |
日付 |
作業の終了日時 |
3 |
CreationDate |
日付 |
作業の発生日時 |
4 |
Deadline |
日付 |
作業の処理期限の絶対日時 |
5 |
ID |
数値 |
作業のID |
6 |
Name |
文字列 |
作業の名称(作業キー) |
7 |
Participant |
文字列 |
作業の作業者ID |
8 |
Priority |
数値 |
作業の優先度 |
9 |
ProcessDefinitionID |
数値 |
作業が所属するビジネスプロセス定義のID |
10 |
ProcessInstanceID |
数値 |
作業が所属する案件のID |
11 |
ProcessInstanceName |
文字列 |
作業の案件名(案件キー) |
12 |
StartDate |
日付 |
作業の開始日時 |
13 |
StateCode |
文字列 |
作業の状態 |
14 |
WorkDefinitionID |
数値 |
作業定義のID |
15 |
WorkDefinitionName |
文字列 |
作業定義の名称 |
16 |
WorkTypeCode |
文字列 |
作業の種類 |
レスポンスの構造を次に示します。
項番 |
名前 |
出現回数 |
|
---|---|---|---|
1 |
WorkItem |
1 |
|
2 |
ActivityInstanceID |
1 |
|
3 |
ClosedDate |
1 |
|
4 |
CreationDate |
1 |
|
5 |
Deadline |
1 |
|
6 |
ID |
1 |
|
7 |
Name |
1 |
|
8 |
Participant |
1 |
|
9 |
Priority |
1 |
|
10 |
ProcessDefinitionID |
1 |
|
11 |
ProcessInstanceID |
1 |
|
12 |
ProcessInstanceName |
1 |
|
13 |
StartDate |
1 |
|
14 |
StateCode |
1 |
|
15 |
WorkDefinitionID |
1 |
|
16 |
WorkDefinitionName |
1 |
|
17 |
WorkTypeCode |
1 |
ステータスコード
項番 |
ステータスコード |
内容 |
---|---|---|
1 |
200 |
成功 |
2 |
400 |
リクエストパラメタの不正 |
3 |
404 |
データが見つからなかった |
4 |
500 |
内部処理エラー |
レスポンス例
レスポンス(XMLの場合)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <WorkItem> <ActivityInstanceID>10005</ActivityInstanceID> <ClosedDate></ClosedDate> <CreationDate>2016-12-09T15:54:55+09:00</CreationDate> <Deadline></Deadline> <ID>10005</ID> <Name></Name> <Participant>User1</Participant> <Priority>0</Priority> <ProcessDefinitionID>3001</ProcessDefinitionID> <ProcessInstanceID>5004</ProcessInstanceID> <ProcessInstanceName>案件20160609103256259</ProcessInstanceName> <StartDate>2016-12-09T15:58:52+09:00</StartDate> <StateCode>f</StateCode> <WorkDefinitionID>3001</WorkDefinitionID> <WorkDefinitionName>QuotationHandling_UTask1</WorkDefinitionName> <WorkTypeCode>0</WorkTypeCode> </WorkItem>
レスポンス(JSONの場合)
{ "ActivityInstanceID" : "10005", "ClosedDate" : "", "CreationDate" : "2016-12-09T15:54:55+09:00", "Deadline" : "", "ID" : "10005", "Name" : "", "Participant" : "User1", "Priority" : "0", "ProcessDefinitionID" : "3001", "ProcessInstanceID" : "5004", "ProcessInstanceName" : "案件20160609103256259", "StartDate" : "2016-12-09T15:58:52+09:00", "StateCode" : "f", "WorkDefinitionID" : "3001", "WorkDefinitionName" : "QuotationHandling_UTask1", "WorkTypeCode" : "0" }