メインコンテンツまでスキップ

ワークアイテムの更新


説明

指定した ID のワークアイテムを更新します。
更新する fieldsパラメータの詳細は、次のリンクを参照ください。:「ワークアイテムAPIのフィールドについて

必要権限

プロジェクトの編集

URL

PUT /workitem/workItems/{workItemIds}

パスパラメーター

名前必須か説明
workItemIdsstringワークアイテムID

リクエストボディ

名前必須か説明
moveScheduleDaysint×期間を移動させる日数

正の数値の場合、期間を後ろに移動します。負の数値の場合、期間を前に移動します。
clearScheduleboolean×期間をクリアするか

true:開始日、終了日をクリアし、リンクを削除します。
false:何もしません。
assignmentChangeAssignmentChange×割り当ての変更
moveParentTostring×移動先の親アイテムID
changeItemTypeTostring×変更後のアイテムタイプID
setCompletedboolean×進捗管理対象のアイテムを完了にするか

true:対象アイテムとその子アイテムを完了(進捗率を100%)にする
false:対象アイテムとその子アイテムを未完了(進捗率を0%)にする

setTimeEntryLockedboolean×実績工数のロックするか

true:対象アイテムとその子孫アイテムの実績入力をロックする
false:対象アイテムとその子孫アイテムの実績入力のロックを解除する
fields<string, object>×更新対象フィールド
詳細情報のリンク:「ワークアイテムAPIのフィールドについて
fieldCalcTypes<string, string>×フィールドの決定方法

【注意事項】計算式は設定できません。

[Standard エディションの制約事項]
ActualProgress 以外のフィールドを設定した場合はエラーになります。
propagateToChildrenPropagateToChildrenField×末端のサブアイテムまで、コピーするフィールド
clearFieldCalcTypesstring×決定方法のクリア対象フィールド
clearAllFieldCalcTypesboolean×true:すべてのフィールドの決定方法をクリアする
restoreboolean×ワークアイテムを復元するか

trueを指定すると、他のパラメータは無視されます。
restoreToParentstring×復元先のフォルダ
metadata<string, string>×キーと値のコレクション
- 追加時 : 値が null の項目を除いて設定する
- 更新時 : キーが指定されなかった項目は変更しない。値が null に指定された項目は削除する
orderBeforestring×指定したアイテムの直前に挿入される
※orderBefore=0の場合、末尾に挿入
orderAfterstring×指定したデータの直後に挿入される
※orderAfter=0の場合、先頭に挿入
orderFirstboolean×true の場合、先頭に移動する
true でない場合は何もしない
orderLastboolean×true の場合、末尾に移動する
true でない場合は何もしない

レスポンス

名前説明
なし

エラーケース

  • 名前が空
  • 名前が256文字を超える
  • コードが256文字を超える
  • 指定したユーザーが存在しない
  • 終了日が開始日より過去の日付
  • 期間移動の結果、開始日が値域外となる
  • 期間移動の結果、終了日が値域外となる
  • ステータスタイプが利用可能でない
  • 工程分類が利用可能でない
  • 作業分類が利用可能でない
  • アイテムタイプが利用可能でない
  • アイテムタイプをフォルダのアイテムタイプに変更するとき、親アイテムがフォルダでない
  • アイテムタイプをフォルダでないアイテムタイプに変更するとき、子にフォルダであるアイテムが存在する
  • プロジェクトのメンバーでないユーザーをリーダーに指定した
  • プロジェクトのメンバーでないユーザーを割り当てに指定した
  • フィールドの決定方法が値域外
  • 移動先の親アイテムに実績が入力されている
  • 移動先の親アイテムがフォルダでなく、移動するアイテムがフォルダである
  • 移動先の親アイテムが16階層目である
  • 移動先のパラメータ(orderAfter, orderBefore, orderFirst, orderLast)のいずれかを同時に指定した
  • 移動先のパラメータ(orderAfter, orderBefore, orderFirst, orderLast)のいずれかを指定した場合に、移動先の親アイテムが未指定
  • 移動先のパラメータで指定したアイテムが同じプロジェクトのアイテムでない
  • 移動先のパラメータで指定したアイテムが存在しないか削除されている
  • 復元対象がフォルダであるときに、復元先に指定したアイテムがフォルダでない
  • 復元先に指定したフォルダが削除されている
  • 別のプロジェクトのフォルダを復元先に指定した
  • 復元先のアイテムが16階層に存在する
  • システムで許可されていないアイテムタイプのアイテムを復元した

特記事項

  • コスト権限がない場合はコストの設定は無視します。
  • フィールド名の指定は大文字・小文字を区別します。
  • 関連するフィールドを同時に指定した場合、それぞれのフィールドを順に処理しますが、処理される順序は不定です。
  • 同時更新できるアイテムは1000件を上限とします。

[Standard エディションの制約事項]

  • 子を持つアイテムは名前、コード、説明以外のフィールドは変更できません。
  • Professional エディションで作成したアイテムタイプは利用できません。
  • Professional エディションで作成したアイテムタイプで作成されたアイテムの復元は、 Professional エディションでのみ使用可能です。

サンプル

リソースを割り当て、子アイテムに反映する

PUT /workitem/workitems/128
Request Body
{
"assignmentChange":{
"Adds":[{
"PartyId": "13",
"PlannedTime": 0,
"PartyType": "User"
}]
},
"propagateToChildren":{
"fields":"Assignments"
}
}
備考
  • 「propagateToChildren」にはフィールド名を入力してください。
    (フィールド名の詳細:ワークアイテムAPIのフィールドについて
  • 複数入力する場合は「,」で切って入力してください。
    例)"fields":"Assignments,LeaderId"
Response
200 OK

{
"items":[
{"assignments":[{"partyId": "13", "plannedTime": 0, "partyType": "User"}
],
"affectedItems":[
{"assignments":[{"partyId": "13", "plannedTime": 450, "partyType": "User"},
{"assignments":[{"partyId": "13", "plannedTime": 750, "partyType": "User"},
{"assignments":[{"partyId": "13", "plannedTime": 300, "partyType": "User"},
{"assignments":[{"partyId": "13", "plannedTime": 300, "partyType": "User"}
],
"addedTimeEntryIds":[],
"addedScheduleDependencyIds":[]
}

ワークアイテムを指定して進捗率と計画工数を更新する

PUT /workitem/workitems/128
Request Body
{
fields: {
"ActualProgress": 80,
"PlannedTime":3000
}
}
Response
200 OK

{
"items":[
{
"statusTypeId":"2",
"assignments":[
{
"partyId":"14",
"plannedTime":1500,
"partyType":"User"
},
{
"partyId":"21",
"plannedTime":1500,
"partyType":"User"
}
],
"plannedCost":225000.0,
"managedPlannedTime":3000,
"updatedAt":"2019-02-14T02:36:40",
"id":"128"
}
],
"affectedItems":[],
"addedTimeEntryIds":[],
"addedScheduleDependencyIds":[]
}

型定義

AssignmentChange

名前必須か説明
addsAssignmentAdd[]×追加割り当て情報
updatesAssignmentUpdate[]×更新割り当て情報
removesstring×割り当てから削除したいユーザー/プロジェクトグループID
removeUsersstring[]×ユーザー

ユーザーの割り当てとして、ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのIDを割り当てのユーザーIDとして削除処理を行います。
recalculatePlannedTimeByAssignmentboolean×アイテムの計画工数を割り当ての計画工数の合計で更新するか

true:割り当ての計画工数でアイテムの計画工数を更新します。
false:アイテムの計画工数で割り当ての計画工数を再分配します。

AssignmentAdd

名前必須か説明
partyTypestring×ユーザータイプ
User:ユーザーを指定する場合
UserGroup:ユーザーグループを指定する場合
userstring×ユーザー

・接頭辞「#」で始まらない場合はユーザーの割り当てとします。
ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのIDを割り当てのユーザーIDとして追加処理を行います。
partyIdstring×パーティID
plannedTimeint×計画工数

AssignmentUpdate

名前必須か説明
userstringユーザー

・接頭辞「#」で始まらない場合はユーザーの割り当てとします。
ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのIDを割り当てのユーザーIDとして処理を行います。
partyIdstring×パーティID
plannedTimeint×計画工数

PropagateToChildrenField

名前必須か説明
fieldsstring×サブアイテムへコピーするシステムフィールド名の一覧