- 印刷する
アナリティクス エディターで式エディターを使用する方法
Analytics Editorでより高度なクエリを記述する方法を説明します。
式エディタは数式を記述するための強力なツールです。式エディターは、ステップにトリガーを追加するときや、分析を作成するときに使用できます。
このツールは数学的な計算ができるように設計されており、Microsoft Excel の式に似た機能を備えています。アプリ エディターとアナリティクス エディターの両方で使用できます。
Expression Editorの演算子と関数の一覧は、こちらをご覧ください。
Tulip Analyticsでの式の作成と編集
アナリティクス・エディター内のコンテキスト・ペインの任意のフィールドに式を追加できます。
この式は、[集計関数]タブまたは[その他]見出しの[**関数]**タブで使用できます。**Aggregation Functions]**タブが使用可能な場合は、[Functions]ではなく[Expression Editor]を選択してください。
検索ボックスを使用して、どちらかを選択することができます。
式を追加したら、下のフッターに「Valid Expression(有効な式)」と表示されていれば、「Save(保存)」ボタンをクリックして式を保存できます。無効な式には、フッターに赤いメッセージが表示され、保存ボタンは無効になります。
同様に、既存の式を編集するには、式を変更し、Saveを押します。これで保存され、新しい分析が実行されます。
変更を破棄したい場合は、キャンセルボタンを押すと、編集前の状態に戻ります。
基本構文
他の数式と同じように式を書きます。 3 のような数値、+ のような演算子、AVERAGE() のような関数の呼び出し、( と ) を使って正しい順序で演算を行うことができます。簡単な式をいくつか紹介しよう:
- 3 + 5 は 8 を返す。
- 3 + AVERAGE(プロセス・サイクル時間) は、プロセス・サイクル時間の平均に 3 を足した値を返します (プロセス・サイクル時間などのフィールドを追加する方法については、次のセクションを参照してください)。
- AVERAGE(ステップ A サイクル時間 + ステップ B サイクル時間) は、指定された範囲内のすべてのアプリの完了におけるステップ A サイクル時間とステップ B サイクル時間の合計の平均を返します。
フィールドと値の追加
エクスプレッション・エディタは、プロセス・サイクル・タイムやフォーム入力の結果や変数など、アプリに関するデータにアクセスするために特別な構文を使用します。これらのデータポイントをまとめてフィールドと呼びます。
式にフィールドを追加するには、@記号を入力します。 これで、サジェスト領域がすべてのフィールドにフィルタリングされます:
アプリのフィールドの一般的な例
- アプリの変数
- ユーザー、ステーションなどのメタデータ
入力すると、フィールドのリストが動的にフィルタリングされます。 フィールドをクリックするか、矢印キーを使ってフィールドに移動し、Enterキーを押すことで、フィールドを式に追加できます。 式内のフィールドは青で表示されます。
特定のユーザーやドロップダウンの特定の値のように、個々の値を式に追加することもできます。 これらをまとめて値と呼びます。 式に値を追加するには、次のように入力します。
# 記号を入力してください。
値をクリックするか、矢印キーを使用して値を選択し、Enterキーを押して式に値を追加できます。 式の中の値は紫色で表示されます。
フィールドを同じデータ型に変換する
式を正しく保存するには、すべての変数が同じデータ型でなければなりません。
例えば、完成した部品の数をアプリに費やした時間の合計で割って、時間ごとに完成した部品の数を決定したいとします。
完成した部品の総数は、おそらく "number "型の変数に格納されるでしょう。
しかし、アプリに費やされた総時間は、"interval "データ型である "Process Cycle Time "フィールドに自動的に格納されます。
これを "数値 "データ型に変換するには、以下のようにPARSEFLOAT()式を使用します:
PARSEFLOAT(プロセス・サイクル時間)
その後、アプリに費やされた秒数が数値変数に格納されます。
複数のアプリ完了にわたってこの値を合計するには、外部でSUM()式を使用します:
SUM(PARSEFLOAT(Process Cycle Time))
次に、この値を3600で割って、アプリに費やした時間数を求めます。1時間は3600秒である。
SUM(PARSEFLOAT(プロセスサイクル時間)/3600)
最後に、完成した部品の総数をこの値で割って、1時間あたりの部品の総数を求めます。このようにする:
SUM(total_parts_completed) / SUM(PARSEFLOAT(Process Cycle Time)/3600)
例
例 1 - AVERAGEFILTERED()
フィルタを作成するために、フィールドと値で = を使用すると便利なことがよくあります。 例えば、以下の式は AVERAGEFILTERED() 関数を使用して、 ユーザ Alice のプロセス・サイクル・タイムの平均を求めます:
AVERAGEFILTERED(Process Cycle Time, User = Alice)
例 2 - IF()
Excel のように IF() 文を使うことができます。下の例では、アプリが完了するたびに変数に格納された温度値を評価します。
もし値が摂氏0度より大きければ、分析で "1 "と表示します。
摂氏0度より小さければ、0として保存します。
IF(@Temp/Humidity.tempC > 0, 1, 0)
例3- Date_Trunc()
DATE_TRUNC() を使用すると、指定した時間枠で日付を切り捨てることができます。これは、時間ベースの X 軸をよりきれいに表示するのに便利です。
この式は2つの引数を取ります。1つ目はdatetimeまたはdate変数で、2つ目は希望する切り捨て期間です。切り捨ては、すべてのdatetime値を選択された範囲(日、週、月、年など)に押し下げます。
以下の例では、毎週何台のツール/マシンが検査されたかを確認するために、Last Inspected datetimeを表示しています。
DATE_TRUNC(@Inspection Last Inspected, 'week')
さらに読む
お探しのものは見つかりましたか?
community.tulip.coに質問を投稿したり、他の人が同じような質問に直面していないか確認することもできます!