ワークアイテムのステータス更新
ワークアイテムのステータスを更新する方法は、大きく次の二通りあります。
- ステータスを直接更新する
- 進捗率を更新することで間接的にステータスを更新する
ステータスを直接更新する
ワークアイテムのステータスを直接更新する場合は、ワークアイテムの更新の API で StatusTypeId
フィールドに更新後のステータスの ID を指定します。
PUT /workitem/workitems/{workitemId}
{
"fields": {
"StatuTypeId": "3"
}
}
アイテムタイプで使用可能なステータスはプロファイルで定義され、同じアイテムタイプであってもプロファイルが異なれば使用可能なステータスも異なります。 そのため、ステータスの ID はプロファイルから取得する必要があります。プロジェクトのプロファイルの取得の API を使用することで、アイテムタイプごとの使用可能なステータスを取得できます。
GET /project/projects/{projectId}/profile?includes=ItemTypes
アイテムタイプごとの使用可能なステータスは、プロジェクトのプロファイルの itemTypes[].statusTypes
から取得できます。
進捗率を更新することで間接的にステータスを更新する
プロファイルではステータスごとに対応する進捗率を設定することができます。 ステータスに進捗率が設定されている場合、ワークアイテムの進捗率を更新すると進捗率の値に連動してステータスも自動的に更新されます。
例えば、ステータスの進捗率がプロファイルで次のように設定されているとします。このとき、進捗率を 90% に更新するとステータスはレビュー中になります。また、進捗率を 20% に更新した場合は、ステータスは未着手ではなく作業中になります。
ステータス | 進捗率 |
---|---|
未着手 | 0% |
作業中 | 50% |
レビュー中 | 80% |
完了 | 100% |
進捗率を更新すると、その進捗率の値以下で最も大きい値が設定されたステータスになります。 ただし、ワークアイテムの進捗率が 0 より大きく、ステータスの進捗率の値が 0 の場合は、0 以外で一番小さい値が設定されたステータスになります。
進捗率の更新は、ワークアイテムの更新の API で ActualProgress
フィールドに数値を指定します。進捗率を 50% に更新する場合は ActualProgress
に 50
を指定します。
PUT /workitem/workitems/{workitemId}
{
"fields": {
"ActualProgress": 50
}
}