ワークアイテムの追加
説明
指定した ID のワークアイテムの直下にアイテムを追加します。
fieldsパラメータの詳細は「ワークアイテムAPIのフィールドについて」を参照してください。
必要権限
プロジェクトの編集
URL
POST /workitem/workItems/{workItemId}/subItems
パスパラメーター
名前 | 型 | 必須か | 説明 |
---|---|---|---|
workItemId | string | ○ | ワークアイテムID |
リクエストボディ
名前 | 型 | 必須か | 説明 |
---|---|---|---|
fields | <string, object> | ○ | ・追加時に設定するフィールド。 詳細は「ワークアイテムAPIのフィールドについて」を参照ください。 ・アイテムタイプIDの指定は必須です。 |
fieldCalcTypes | <string, string> | × | 追加時に設定するフィールドのフィールド決定方法 【注意事項】計算式は設定できません。 [Standard エディションの制約事項] ActualProgress 以外のフィールドを設定した場合はエラーになります。 |
subItems | AddWorkItemRequest[] | × | 同時に追加する子アイテム |
assignments | AssignmentAdd[] | × | 追加するアイテムの割り当て |
metadata | <string, string> | × | キーと値のコレクション - 追加時 : 値が null の項目を除いて設定する - 更新時 : キーが指定されなかった項目は変更しない。値が null に指定された項目は削除する |
orderBefore | string | × | 指定したアイテムの直前に挿入される ※orderBefore=0の場合、末尾に挿入 |
orderAfter | string | × | 指定したデータの直後に挿入される ※orderAfter=0の場合、先頭に挿入 |
orderFirst | boolean | × | true の場合、先頭に移動する true でない場合は何もしない |
orderLast | boolean | × | true の場合、末尾に移動する true でない場合は何もしない |
レスポンス
名前 | 型 | 説明 |
---|---|---|
items | <string, object>[] | 追加したワークアイテムのフィールド |
エラーケース
- プロジェクトがロックされている
- 指定したユーザーが存在しない
- 工程分類が利用可能でない
- 作業分類が利用可能でない
- アイテムタイプが利用可能でない
- ステータスタイプが利用可能でない
- フォルダでないアイテムに対して、フォルダのアイテムを追加した
- 実績入力済みアイテムに対して、アイテムを追加した
- プロジェクトメンバでないユーザーがリーダーに指定された
- プロジェクトメンバでないユーザーが割り当てに指定された
- プロジェクトメンバでないユーザーグループが割り当てに指定された
- 計画工数の粒度がシステム設定で定義された値と一致しない
- フィールド決定方法で指定した値が値域外である
特記事項
- ワークアイテムの積み上げは、遅延して処理されます。
- コスト権限がない場合は以下のフィールド設定は無視されます。
- 実績コスト(ActualCost)
- 計画コスト(PlannedCost)
[Standard エディションの制約事項]
- 子を持つアイテムは名前、コード、説明以外のフィールドは変更できません。
- 子を持たないアイテムに子を新規で作成した場合、以下のフィールドについては、値が設定されていなければ親のフィールド値を子に反映します。
- 工程分類、作業分類、色、マイルストーンか、計画工数、開始日、終了日、進捗率(決定方法が「ユーザー入力値」だった場合)、残り作業時間、計画成果量、実績成果量、規模単位、成果物情報、リーダー、期間が固定されているか、実績入力がロックされているか、完了日、チェックアイテム、割り当て
- Professional エディションで作成したアイテムタイプは利用できません。
サンプル
親のワークアイテムを指定して、そのワークアイテムに子アイテムを追加する
リクエスト
POST /workitem/workItems/708/subItems
{
fields:{
Id:"-1",
Name:"案件D",
ItemTypeId:"3"
},
subItems:[
{
parentId:"-1",
fields:{
Name:"基本設計",
ItemTypeId:"3"
}
},
{
parentId:"-1",
fields:{
Name:"詳細設計",
ItemTypeId:"3"
}
},
{
parentId:"-1",
fields:{
Name:"製作",
ItemTypeId:"3"
}
}
]
}
レスポンス
200 OK
{
"items":[
{
"id":"2058",
"itemNumber":653,
"treePath":"0/653/",
"displayOrder":0.9921875,
"progressCalcType":"ProgressWeightedAverage",
"treeDepth":0,
"createdAt":"2019-02-19T01:58:31",
"updatedAt":"2019-02-19T01:58:31",
"statusTypeId":"1",
"actualProgress":0.0,
"projectId":"20",
"aclId":null,
"hasSubItem":true,
"createdBy":"21",
"updatedBy":"21"
},
{
"id":"2059",
"itemNumber":654,
"treePath":"0/653/654/",
"displayOrder":0.5,
"progressCalcType":"UserInput",
"treeDepth":0,
"createdAt":"2019-02-19T01:58:31",
"updatedAt":"2019-02-19T01:58:31",
"statusTypeId":"1",
"actualProgress":0.0,
"projectId":"20",
"aclId":null,
"name":"基本設計",
"createdBy":"21",
"updatedBy":"21"
},
{
"id":"2060",
"itemNumber":655,
"treePath":"0/653/655/",
"displayOrder":0.75,
"progressCalcType":"UserInput",
"treeDepth":0,
"createdAt":"2019-02-19T01:58:31",
"updatedAt":"2019-02-19T01:58:31",
"statusTypeId":"1",
"actualProgress":0.0,
"projectId":"20",
"aclId":null,
"name":"詳細設計",
"createdBy":"21",
"updatedBy":"21"
},
{
"id":"2061",
"itemNumber":656,
"treePath":"0/653/656/",
"displayOrder":0.875,
"progressCalcType":"UserInput",
"treeDepth":0,
"createdAt":"2019-02-19T01:58:31",
"updatedAt":"2019-02-19T01:58:31",
"statusTypeId":"1",
"actualProgress":0.0,
"projectId":"20",
"aclId":null,
"name":"製作",
"createdBy":"21",
"updatedBy":"21"
}
],
"affectedItems":[
{
"updatedAt":"2019-02-19T01:58:31",
"id":"708"
}
],
"addedTimeEntryIds":[],
"addedScheduleDependencyIds":[]
}
型定義
AssignmentAdd
名前 | 型 | 必須か | 説明 |
---|---|---|---|
partyType | string | × | ユーザータイプ User:ユーザーを指定する場合 UserGroup:ユーザーグループを指定する場合 |
user | string | × | ユーザー ・接頭辞「#」で始まらない場合はユーザーの割り当てとします。 ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのIDを割り当てのユーザーIDとして追加処理を行います。 |
partyId | string | × | パーティID |
plannedTime | int | × | 計画工数 |
AddWorkItemRequest
名前 | 型 | 必須か | 説明 |
---|---|---|---|
subItems | AddWorkItemRequest[] | × | 追加子アイテム |
fields | <string, object> | × | 追加時に設定するフィールド アイテムタイプIDの指定は必須 |
assignments | AssignmentAdd[] | × | 追加割り当て |
parentId | string | 〇 | 追加先の親アイテムのID 追加するアイテムIDが存在しない(※1)場合、仮IDとしてマイナスの値(※2)を指定してください。 ※1 子アイテムを含めた階層構造のアイテムを一度に登録する場合が該当します。 ※2 1度のAPI呼び出し内で重複しない値としてください。 |
orderBefore | string | × | このアイテムIDの兄として追加 |
orderAfter | string | × | このアイテムIDの弟として追加 |
orderFirst | boolean | × | 先頭にアイテムを追加 |
orderLast | boolean | × | 最後尾にアイテムを追加 |
updateToTreeDepth | int | × | 連鎖更新上限のツリーの深さ |