Skip to content

条件式の使い方

分析の各APIでは、条件式で集計対象を決定します。 ここでは、その条件式の使い方について紹介します。

条件式について

条件式とは、真(true)または偽(false)の結果を返す式であり、演算子とオペランド(条件式の判定対象となる値)から構成されます。

例:分析のAPIにてフィルタ条件に条件式を指定する(演算子「Eq」を使用)

 "filterBy": { 
      "type": "Eq",
      "left": {
          "type": "field",
          "name": "projectId"
      }, 
      "right": {
          "type": "value",
          "value": "4"
      }
}

left と right がそれぞれ左オペランド・右オペランドです。

左オペランドでは「type」に「フィールド(field)」を指定します。さらに「name」に演算対象のフィールドの名前を指定します。 右オペランドでは「type」に「値 (value)」を指定します。さらに「value」に演算対象の値を指定します。

演算子

TimeTracker NX Web APIにおいて利用可能な演算子は以下のとおりです。

比較演算子

演算子 左オペランド 右オペランド 説明
Eq フィールド Equal (true: 左右のオペランドが等しい)
Ne Not Equal (true: 左右のオペランドが等しくない)
Lt Less Than (true: 左オペランドが右オペランドより小さい)
Le Less Than or Equal (true: 左オペランドが右オペランドより小さいもしくは等しい)
Gt Greater Than (true: 左オペランドが右オペランドより大きい)
Ge Greater Than or Equal (true: 左オペランドが右オペランドより大きいもしくは等しい)
Like Like (true: 左オペランドが右オペランドを含む=部分一致する)
NotLike NotLike (true: 左オペランドが右オペランドを含まない)
In 値(カンマ区切りで複数指定可能) In (true: 左オペランドが右オペランドのいずれかに等しい)
NotIn Not In (true: 左オペランドが右オペランドのいずれにも等しくない)
Bw 値(カンマ区切りで複数指定可能) In (true: 左オペランドが右オペランドの1番目の要素以上かつ2番目の要素以下の場合)
NotBw Not In (true: 左オペランドが右オペランドの1番目の要素より小さいまたは2番目の要素より大きい場合)
Sw Start With (true: 左オペランドが右オペランドで始まる=前方一致する)
NotSw Not Start With (true: 左オペランドが右オペランドで始まらない)
Ew End With (true: 左オペランドが右オペランドで終わる=後方一致する)
NotEw Not End With true: 左オペランドが右オペランドで終わらない)

Note

左右のオペランドを比較する際、データ型が一致しない場合は同じデータ型になるように変換を行います。一致するデータ型へのデータ変換が不可能な場合はエラーになります。

論理演算子

演算子 オペランド 説明
And Condition[] true: すべての Condition が true (Condition の要素数が0の場合は true)
Or Condition[] true: いずれかの Condition が true (Condition の要素数が0の場合は false)

条件式で使用可能なフィールド

分析APIの条件式において使用可能なフィールドは以下のとおりです。 「対象」列が「共通」のものは、工数分析・アイテム件数分析のいずれでも使用可能です。

対象 名前 説明
共通 year 年単位の日付 (YYYY-01-01)
month 月単位の日付 (YYYY-MM-01)
week 週単位の日付 (YYYY-MM-DD)
date 日単位の日付 (YYYY-MM-DD)
projectId プロジェクトID
projectName プロジェクト名
folderId フォルダのワークアイテムID
folderName フォルダ名
treePath フォルダのツリーパス
projectCategory1~50 プロジェクトカテゴリ1~50
itemTypeId アイテムタイプID
itemTypeName アイテムタイプ名
processCategoryId 工程分類ID
processCategoryName 工程分類名
processCategoryGroupId 工程分類グループID
processCategoryGroupName 工程分類グループ名
timeEntryCategoryId 作業分類ID
timeEntryCategoryName 作業分類名
timeEntryCategoryGroupId 作業分類グループID
timeEntryCategoryGroupName 作業分類グループ名
工数分析 userId ユーザーID
userName ユーザー名
organizationId ユーザーの所属組織ID
organizationName ユーザーの所属組織名
アイテム件数分析 leaderId リーダーのユーザーID
leaderName リーダーのユーザー名
organizationId プロジェクトの組織ID
organizationName プロジェクトの組織名
statusTypeId ステータスタイプID
statusTypeName ステータスタイプ名
statusTypeGroupId ステータスタイプグループID
statusTypeGroupName ステータスタイプグループ名

Note

folderID, folderName: 指定フォルダとその配下のフォルダを対象に条件を判定します。