- 印刷する
イベントがいつ起こるかを理解することは、どこで起こるかを理解することと同じくらい重要です。Tulipは洞察を可能にする堅牢な時間機能を備えています。
目的
タイムゾーン、日付形式、希望する日付形式によって、時間を調整したり、時間を操作したりするのは難しいものです。Tulipは、アプリが既存の標準に準拠することを可能にします。時間を扱う方法を理解することは、すべてのアプリ構築者のツールキットに含まれるべきです。
このアプリの仕組み
この1ステップのアプリは、Tulipソリューションで必要となる最も一般的な日付操作のほとんどを示しています。
内蔵タイマー
アプリにはいくつかのタイマーが自動的に組み込まれています。これらのタイマーはトリガーで参照したり、テーブルに保存したりすることができます。
Time spent in appは、アプリが最後に再起動されてからの経過時間です。完了に関する詳細はこちらこの値は、組み立てやトレーニングプロセスを完了するのに必要な平均時間を追跡するのに便利です。
Time spent on stepは、ユーザーが特定のステップに費やした経過時間をトラッキングします。このデータを追跡することで、プロセスのどの部分にオペレータの時間が最もかかっているかを把握することができます。
現在時刻は、現在時刻を追跡します。この時刻は、異なるシフトのトリガーロジックを調整したり、いつアクティビティが発生したかを追跡したりするために使用することができます。
シンプルタイマー
シンプルタイマーは、独自のタイマーを作成する方法を示しています。このテクニックは内蔵タイマーの機能を拡張するのに便利です。例えば、ユーザーが1つのステップやアプリ全体ではなく、特定のステップを通過するまでの時間をトラッキングしたい場合などです。
このタイマーのロジックは全て各ボタンのトリガーの下に存在します。トリガーについて詳しくはこちらの記事をご覧ください。
STARTボタンは現在時刻を開始時刻変数に設定します。
STOPボタンは現在時刻をEnd time変数にセットし、スタート時刻とストップ時刻の間の経過時間を計算します。これは、トリガで初めて見る式です。式はトリガーの機能を拡張します。式の詳細については、こちらを参照してください。
RESET]ボタンは、[Start time]、[End time]、[*Duration]*変数をクリアします。
タイマーベースのトリガー
定期的にロジックを実行することで、Tulipアプリの使い方がさらに広がります。タイマーベースのトリガーはX秒毎に実行され、任意のトリガーロジックを実行することができます。
タイマーベースのトリガーはステップレベルで実行されます。つまり、タイマートリガーを作成/表示/編集するには、設定スライドアウトのSTEPタブを選択する必要があります。
この場合、タイマトリガは既存の変数値に1を加算するだけです。
時間トリガーの変形
時刻の表示方法の再フォーマット、2つの時刻の足し算、テキストから日付変数への変換は、すべて Tulip で日付変数を扱うための重要なテクニックです。
時間の足し算はシンプルで非常に強力です。例えば、現在時刻とリードタイムをもとに注文期限を計算したい場合や、最後に監査がいつ行われたかをもとに監査がいつ行われるべきかを計算したい場合などです。
このトリガでは、ユーザが入力した数値を、現在時刻に加算する前に、間隔に変換する必要があります。この変換をSECONDS_TO_INTERVAL関数で行います。この関数は、数値を入力し、それをインターバルに変換します。ユーザーが入力した日単位の時間を秒に変換する必要があるので、60*60*24で変換します。この間隔が現在の時刻に加算され、変数に格納されます。
日付を丸めることで、現在時刻を任意の間隔に丸めることができます。ROUNDDATETIMEを使用すると、現在時刻を切り捨て、その日の開始時刻を得ることができます。
以下のトリガーは現在時刻を取り、直近の日に切り捨てます。この式の'day'は、希望する期間で置き換えることができます。この関数の詳細については、こちらを参照してください。
テキストを日付に変換することは、生のテキストとしてTulipに転送される独自の日付フォーマットを持つ既存のシステムで作業する際に非常に強力です。
TEXTTODATETIME関数は、テキストとその日付のフォーマットを受け取り、入力テキストをdatetimeオブジェクトに変換します。この関数に'2022-03-01'を渡すとき、'YYYY-MM-DD'を使ってTEXTTODATETIME関数に月が03で日が01であることを伝えます。この文書では、さまざまな日付書式についてさらに詳しく説明しています。