一般情報
応答の形式
応答オブジェクト
応答でデータを返す場合、応答のデータは以下の種類のオブジェクトのオブジェクトのリストです。
| オブジェクト名 |
説明 |
| WorkitemEntry |
タスクを表すオブジェクト |
| ProcessInstanceEntry |
プロセスを表すオブジェクト |
以下に、これらのオブジェクトの属性を示します。
WorkitemEntry
ProcessInstanceEntry
処理一覧
検索APIで実行可能な処理は以下のとおりです。
URL中の<ContextRoot>は接続先のQuestetra BPM Suiteのコンテキストルートを代入してください。
| 操作 |
URL |
| タスクの検索 |
<ContextRoot>/API/OR/Workitem/list |
| 全ユーザのタスクの検索 |
<ContextRoot>/API/PIM/Workitem/list |
| 全ユーザのプロセス検索 |
<ContextRoot>/API/PIM/ProcessInstance/list |
| プロセス詳細情報取得 |
<ContextRoot>/API/PIM/ProcessInstance/view |
タスクの検索
認証されたユーザが処理した、または処理中のタスクを検索します。処理中のタスクには、オファーされているタスクおよび割り当てられているタスクを含みます。
導入バージョン
7.3.0
URL
<ContextRoot>/API/OR/Workitem/list
パラメータ
いずれも検索条件になります。
| パラメータ名 |
説明 |
| processModelInfoId |
プロセスモデルをIDで指定します。
指定しない場合、全プロセスモデルが検索対象になります。 |
| option |
検索オプションを指定します。以下のいずれかの値を指定します。
指定しなかった場合は、 ENDが指定されたものとみなされます。
- END
- 完了したタスクを検索します。中止したタスクは含みません。
- END_1WEEK
- この1週間以内に完了したタスクを検索します。中止したタスクは含みません。
- END_THIS_MONTH
- 今月完了したタスクを検索します。中止したタスクは含みません。
- END_LAST_MONTH
- 先月完了したタスクを検索します。中止したタスクは含みません。
- OPERATING
- 処理中のタスクを検索します。
- TIMELIMIT_PAST
- 処理中のタスクで、締め切りが既に現在時刻を過ぎているタスクを検索します。
- TIMELIMIT_1WEEK
- 処理中のタスクで、締め切りが次の1週間以内に来るタスクを検索します。締め切りが既に過ぎているものは含みません。
- PROCESS_STARTED
- 処理中であるプロセスに含まれるタスクを検索します。タスクの状態は無関係で、完了したタスクも処理中のタスクも対象です。
- PROCESS_FAILED
- 中止したプロセスに含まれるタスクを検索します。タスクの状態は無関係で、完了したタスクも処理中のタスクも対象です。
- ALL
- 7.4.0以降。全てのタスクを検索します。
|
| limit |
取得するタスクの最大件数を指定します。 最小値は0、最大値は1000です。
指定しなかった場合は、1が指定されたものとみなされます。 |
| start |
取得するタスクの開始位置を指定します。最小値は0、最大値は2147483647です。
指定しなかった場合は、0が指定されたものとみなされます。
検索結果の全件が100で、startに10、limitに50を指定した場合、100件のうち11件目から60件目を取得することになります。 |
| sort |
検索結果をソートする際のキーを指定します。以下のいずれかを指定します。
指定しなかった場合は、offerDatetimeが指定されたものとみなされます。
- offerDatetime
- タスクのオファー日時でソートします。
- endDatetime
- タスクの完了日時でソートします。
|
| dir |
昇順・降順のいずれでソートするかを指定します。指定しなかった場合は、降順が指定されたものとみなされます。
- ASC
- 昇順。時刻の場合、早い順、古い順です。
- DESC
- 降順。時刻の場合、遅い順、新しい順です。
|
応答
| オブジェクト名 |
説明 |
| count |
件数
|
| workitems |
タスクの一覧
WorkitemEntryのリスト |
応答例
{"count":2,
"workitems":[
{
//WorkitemEntry
"id":58399,
"allocateDatetime":"2010-08-18T14:03:18+0900",
...
}, {
//WorkitemEntry
"id":58400,
"allocateDatetime":"2010-08-18T14:03:18+0900",
...
}
]
}
発生する可能性のあるエラー
- InvalidStart(7.4.0以降)
- InvalidLimit(7.4.0以降)
全ユーザのタスクの検索
認証されたユーザがプロセス管理権限、プロセス閲覧権限、またはプロセスデータ閲覧権限を持っているプロセスモデルに関して、全ユーザのタスクを検索します。
導入バージョン
7.3.0
URL
<ContextRoot>/API/PIM/Workitem/list
パラメータ
タスクの検索と同じです。
応答
タスクの検索と同じです。
発生する可能性のあるエラー
- InvalidStart(7.4.0以降)
- InvalidLimit(7.4.0以降)
全ユーザのプロセスの検索
導入バージョン
7.4.0
URL
<ContextRoot>/API/PIM/ProcessInstance/list
パラメータ
| パラメータ名 |
説明 |
| criteria |
検索条件をXMLで指定します。検索条件XMLについては、検索条件XMLの節を参照してください。
指定しなかった場合は、権限を有している全プロセスモデルの全プロセスが対象になります。 |
| limit |
取得するタスクの最大件数を指定します。 最小値は0、最大値は1000です。
指定しなかった場合は、1が指定されたものとみなされます。 |
| start |
取得するタスクの開始位置を指定します。最小値は0、最大値は2147483647です。
指定しなかった場合は、0が指定されたものとみなされます。
検索結果の全件が100で、startに10、limitに50を指定した場合、100件のうち11件目から60件を取得することになります。 |
応答
| オブジェクト名 |
説明 |
| count |
件数
|
| processInstances |
プロセスの一覧
ProcessInstanceEntryのリスト |
応答例
{
"count":4,
"processInstances":[
{"processInstanceId":1319,
"data":
{"1":{
"dataType":"SELECT",
"id":560709,
"processDataDefinitionNumber":1,
"subType":null,
"value":[
{"display":"選択肢2",
"value":"選択肢2"}
],
"viewOrder":3
},
"0":{
"dataType":"STRING",
"id":560708,
"processDataDefinitionNumber":0,
"subType":null,
"value":"選択肢1\n選択肢2",
"viewOrder":1
}
},
...
},
{"processInstanceId":1284,
"data":
{"1":{
"dataType":"SELECT",
"id":542679,
"processDataDefinitionNumber":1,
"subType":null,
"value":null,
"viewOrder":3
},
"0":{
"dataType":"STRING",
"id":542678,
"processDataDefinitionNumber":0,
"subType":null,
"value":"選択肢1\n選択肢2\n選択肢3",
"viewOrder":1
}
},
...
}
]
}
発生する可能性のあるエラー
- InvalidStart
- InvalidLimit
検索条件XML
以下のようなXMLになります。この例では、
- プロセスモデルが「33」
- プロセス開始日時が「2011-01-01以降」
- 文字型データ項目に対して「値が入力されている」
- 数値型データ項目に対して「100以上」
で検索し、更に選択型を結果取得対象に加えています。詳細は表を参照してください。
<process-instance-criteria>
<process-model-info-id>33</process-model-info-id>
<start-date-from>2011-01-01</start-date-from>
<data>
<string>
<data-definition-number>0</data-definition-number>
<not-empty />
</string>
<decimal>
<data-definition-number>1</data-definition-number>
<greater-equals />
<value>100</value>
</decimal>
<select>
<data-definition-number>10</data-definition-number>
<view />
</select>
</data>
</process-instance-criteria>
| 要素名 / 属性名 (XPath式) |
|
説明 |
| /process-instance-criteria |
|
検索条件XMLのルート要素。
以下、/process-instance-criteria を省略。 |
| process-model-info-id |
数値 |
プロセスモデルID。
権限を持っている全プロセスモデルを検索対象とする場合は、指定しないでください。 |
| states |
|
検索対象のプロセスの状態を指定。
指定しない場合は、あらゆる状態のプロセスが検索対象となります。states/ |
| states/state |
文字列 |
検索対象のプロセスの状態を、以下から1つ指定。
複数の状態を検索対象とする場合は、その数だけ要素を並べます。
- STARTED
- 稼働中のプロセス。
- ENDED
- 正常終了したプロセス。
- FAILED
- キャンセル等で正常終了しなかったプロセス。
|
| title |
文字列 |
指定された場合は、値が件名の一部に含まれているプロセスを検索します。
|
| start-date-from |
日付 |
指定された場合は、プロセスの開始日時が指定された日付以降のプロセスを検索します。
指定された日に開始したプロセスも、検索結果に含まれます。 |
| start-date-to |
日付 |
指定された場合は、プロセスの開始日時が指定された日付以前のプロセスを検索します。
指定された日に開始したプロセスも、検索対象に含まれます。 |
| end-date-from |
日付 |
指定された場合は、プロセスの終了日時が指定された日付以降のプロセスを検索します。
指定された日に終了したプロセスも、検索結果に含まれます。
終了していないプロセスは、検索結果に含まれません。 |
| end-date-to |
日付 |
指定された場合は、プロセスの終了日時が指定された日付以前のプロセスを検索します。
指定された日に終了したプロセスも、検索結果に含まれます。
終了していないプロセスは、検索結果に含まれません。 |
| init-quser-id |
数値 |
ユーザID。
指定された場合は、プロセスの開始ユーザが指定されたユーザであるプロセスを検索します。 |
| init-qgroup-id |
数値 |
組織ID。
指定された場合は、プロセスの開始組織が指定された組織であるプロセスを検索します。 |
| sort-property |
文字列 |
検索結果をソートする際のキーを、以下から1つ指定します。
省略した場合は、プロセスの開始日時がキーになります。
processInstanceStartDatetime
プロセスの開始日時
processInstanceEndDatetime
プロセスの終了日時 |
| sort-direction |
文字列 |
検索結果をソートする際の昇順、降順を以下から指定します。
省略した場合は、降順でソートされます。
- ASC
- 昇順
- DESC
- 降順
|
| data |
|
プロセスデータを検索条件や結果取得対象に含める場合に指定。
ここで指定されたプロセスデータ項目のみ、検索結果に含まれます。 |
| data/*/data-definition-number |
数値 |
プロセスデータ定義番号。
検索対象や結果取得対象にするプロセスデータのプロセスデータ定義番号を指定します。
* 部分は、対象のデータ型によって異なります。 |
| data/*/value |
文字列 |
検索に使用する値を指定します。
検索の種類によって意味は変わります。指定不要な検索の種類もあります。
* 部分は、対象のデータ型によって異なります。 日時型については、「yyyy-MM-dd hh:mm」というフォーマットで指定してください。 |
| data/string |
|
文字型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/string/empty |
|
文字型のデータ項目で、「値が入力されていない」条件で検索する場合に指定します。
この検索の種類では、data/*/value の指定は不要です。 |
| data/string/not-empty |
|
文字型のデータ項目で、「値が入力されている」条件で検索する場合に指定します。
この検索の種類では、data/*/value の指定は不要です。 |
| data/string/contains |
|
文字型のデータ項目で、data/*/value で指定された文字列が、「値に含まれている」条件で検索する場合に指定します。 |
| data/discussion |
| 掲示板型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/discussion/empty |
|
掲示板型のデータ項目で、「値が入力されていない」条件で検索する場合に指定します。
この検索の種類では、data/*/value の指定は不要です。 |
| data/discussion/not-empty |
|
掲示板型のデータ項目で、「値が入力されている」条件で検索する場合に指定します。
この検索の種類では、data/*/value の指定は不要です。 |
| data/discussion/contains |
|
掲示板型のデータ項目で、data/*/value で指定された文字列が、「値に含まれている」条件で検索する場合に指定します。 |
| data/decimal | | 数値型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/decimal/equals |
|
数値型のデータ項目で、data/*/value で指定された数値と「等しい」条件で検索する場合に指定します。 |
| data/decimal/greater-equals |
|
数値型のデータ項目で、data/*/value で指定された数値「以上」で検索する場合に指定します。 |
| data/decimal/less-equals |
|
数値型のデータ項目で、data/*/value で指定された数値「以下」で検索する場合に指定します。 |
| data/date | | 日付型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/date/equals |
|
日付型のデータ項目で、data/*/value で指定された日付と「等しい」条件で検索する場合に指定します。 |
| data/date/after-equals |
|
日付型のデータ項目で、data/*/value で指定された数値「以降」で検索する場合に指定します。 |
| data/date/before-equals |
|
日付型のデータ項目で、data/*/value で指定された数値「以前」で検索する場合に指定します。 |
| data/datetime | | 日時型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/datetime/equals |
|
日時型のデータ項目で、data/*/value で指定された日時と「等しい」条件で検索する場合に指定します。 |
| data/datetime/after-equals |
|
日時型のデータ項目で、data/*/value で指定された日時「以降」で検索する場合に指定します。 |
| data/datetime/before-equals |
|
日時型のデータ項目で、data/*/value で指定された日時「以前」で検索する場合に指定します。 |
| data/select | | 選択型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/select/selected |
|
選択型のデータ項目で、data/*/value で指定された値を持つ選択肢が「選択されている」条件で検索する場合に指定します。 |
| data/file | | ファイル型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/file/contains |
|
ファイル型のデータ項目で、data/*/value で指定された文字列が、「ファイル名に含まれている」条件で検索する場合に指定します。 |
| data/quser | | ユーザ型のデータ項目を検索や結果取得対象に含める場合に指定します。 |
| data/quser/equals |
|
ユーザ型のデータ項目で、data/*/value で指定されたIDを持つユーザと「等しい」条件で検索する場合に指定します。 |
| data/table | | テーブルのデータ項目を結果取得対象に含める場合に指定します。 テーブル型では検索を行えないので、結果取得対象に含めることができるだけになります。 |
| data/*/view |
|
指定したデータ項目において検索条件は指定せず、結果取得対象にする場合に指定します。
* の部分は、対象のデータ型によって異なります。 |
プロセス詳細情報取得
プロセス詳細情報を取得します。対象のプロセスモデルに対してプロセスデータ/履歴閲覧権限を持っている場合、結果にプロセスデータを含みます。
導入バージョン
7.4.0
パラメータ
| パラメータ名 |
説明 |
| processInstanceId * |
プロセスのID
WorkitemEntryの processInstanceId 属性の値 |
応答
| オブジェクト名 |
説明 |
| processInstance |
ProcessInstanceEntry |
発生する可能性のあるエラー
- InvalidProcessInstanceId
- ProcessInstanceDoesNotExist
エラー一覧
| エラー種別 |
エラーコード |
説明 |
| Validation |
10000 |
特定のパラメータでバリデーションエラー。 |
| InvalidStart |
10012 |
不正なstartの指定。startは0~2147483647の整数。 |
| InvalidLimit |
10013 |
不正なlimitの指定。limitは0~1000の整数。 |
| InvalidProcessInstanceId |
10014 |
不正な processInstanceId の指定。processInstanceIdは0〜9223372036854775807の整数 |
| ProcessInstanceDoesNotExist |
20016 |
processInstanceId で指定したタスクが存在しない |