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"
}