このページの内容

式の概要

ProcessMindの式言語では、計算済み属性を作成し、ゲートウェイの条件を定義し、プロセスモデル内のデータを変換できます。元のデータを変更せずに、新しいインサイトを導き出せます。

式でできること

  • 計算済み属性:既存の列から新しいデータ列を作成します。たとえば、イベント間の処理時間を計算できます。

    dateDiff(StartTime, EndTime, "minute")
  • 条件ロジック:データの分類やプロセスフローの制御に使うビジネスルールを定義します。

    if(Amount > 10000, "High Value",
      if(Amount > 1000, "Medium", "Low")
    )
  • データ変換:テキストデータをクリーニング、書式設定、変換します。

    upper(trim(CustomerName))
  • 時間ベースの分析:時間の要素を抽出し、分析用の時間バケットを作成します。

    bucket(hour(StartTime), 6, "Night", 12, "Morning", 18, "Afternoon", "Evening")

式の構文

式では、スプレッドシートの数式に似た、なじみのある構文を使用します。

  • 関数は括弧を付けて呼び出します。

    round(3.14, 1)
  • 演算子は値の間で使用します。

    Amount * 1.1
  • 文字列は二重引用符で囲みます。

    "Hello"
  • 列名は直接使用できます。

    StartTime
    Amount
  • 括弧で評価の順序を指定します。

    (a + b) * c
  • 引用符付き識別子:列名に空白や特殊文字が含まれる場合は、バッククォートで囲みます。

    `Order Amount` * 0.1

簡単な例

  • 期間を時間単位で計算

    dateDiff(StartTime, EndTime, "hour")
  • 金額で分類

    if(Amount >= 10000, "Enterprise", 
       if(Amount >= 1000, "Business", "Consumer")
    )
  • 年と月を抽出

    concat(toString(year(Timestamp)), "-", padLeft(toString(month(Timestamp)), 2, "0"))
  • 欠損データを確認

    ifNull(Department, "Unassigned")
  • 全体に占める割合を計算

    divide(Amount, allSum(Amount), 0) * 100
  • ケース内のエラー数をカウント

    caseCountIf(Status == "Error")

関連トピック