Tip

このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください

日付計算

Workflow: 日付計算ノードCommunity Edition+

はじめに

日付計算ノードは、期間の追加、期間の減算、日付文字列のフォーマット出力、期間単位の変換など、9種類の計算関数を提供します。各関数には特定の入力値タイプと出力値タイプがあり、他のノードの結果をパラメーター変数として受け取ることもできます。設定された関数の計算結果をパイプライン方式で連結し、最終的に期待される出力を得ることができます。

ノードの作成

ワークフロー設定画面で、フロー内のプラス(「+」)ボタンをクリックして、「日付計算」ノードを追加します。

日付計算ノード_ノード作成

ノード設定

日付計算ノード_ノード設定

入力値

入力値は変数または日付の定数を選択できます。変数には、このワークフローをトリガーしたデータや、このワークフローの上流ノードの結果を指定できます。定数としては、任意の日付を選択できます。

入力値タイプ

入力値のタイプを指し、2つの値を取ります。

  • 日付タイプ:入力値が最終的に日時タイプに変換できるタイプを指します。例えば、数値タイプのタイムスタンプや、時間を表す文字列などです。
  • 数値タイプ:入力値のタイプは、その後の時間計算ステップの選択に影響するため、入力値タイプを正しく選択する必要があります。

計算ステップ

各計算ステップは、1つの計算関数とそのパラメーター設定で構成されます。パイプライン設計を採用しており、前の関数の計算結果が次の関数の入力値として引き続き計算に用いられます。この方法により、一連の時間計算と変換を完了できます。

各計算ステップの後、出力タイプも固定されており、次の計算で使用できる関数に影響します。タイプが一致する場合にのみ計算を続行できます。そうでない場合、そのステップの結果が最終ノードの出力結果となります。

計算関数

期間を追加

  • 入力値タイプ:日付
  • パラメーター
    • 追加する数量。数値を入力するか、ノードに組み込まれた変数を選択できます。
    • 時間単位。
  • 出力値タイプ:日付
  • 例:入力値が 2024-7-15 00:00:00、数量が 1、単位が「日」の場合、計算結果は 2024-7-16 00:00:00 となります。

期間を減算

  • 入力値タイプ:日付
  • パラメーター
    • 減算する数量。数値を入力するか、ノードに組み込まれた変数を選択できます。
    • 時間単位。
  • 出力値タイプ:日付
  • 例:入力値が 2024-7-15 00:00:00、数量が 1、単位が「日」の場合、計算結果は 2024-7-14 00:00:00 となります。

他の日付との差を計算

  • 入力値タイプ:日付
  • パラメーター
    • 差を計算する日付。日付の定数を選択するか、ワークフローコンテキスト内の変数を選択できます。
    • 時間単位。
    • 絶対値を取るかどうか。
    • 丸め操作:小数点を保持、四捨五入、切り上げ、切り捨てを選択できます。
  • 出力値タイプ:数値
  • 例:入力値が 2024-7-15 00:00:00、比較対象が 2024-7-16 06:00:00、単位が「日」、絶対値を取らず、小数点を保持する場合、計算結果は -1.25 となります。
ヒント

絶対値と丸めを同時に設定した場合、最初に絶対値が取られ、その後で丸めが適用されます。

特定の単位での日付の値を取得

  • 入力値タイプ:日付
  • パラメーター
    • 時間単位。
  • 出力値タイプ:数値
  • 例:入力値が 2024-7-15 00:00:00、単位が「日」の場合、計算結果は 15 となります。

日付を特定の単位の開始時間に設定

  • 入力値タイプ:日付
  • パラメーター
    • 時間単位。
  • 出力値タイプ:日付
  • 例:入力値が 2024-7-15 14:26:30、単位が「日」の場合、計算結果は 2024-7-15 00:00:00 となります。

日付を特定の単位の終了時間に設定

  • 入力値タイプ:日付
  • パラメーター
    • 時間単位。
  • 出力値タイプ:日付
  • 例:入力値が 2024-7-15 14:26:30、単位が「日」の場合、計算結果は 2024-7-15 23:59:59 となります。

閏年を判定

  • 入力値タイプ:日付
  • パラメーター
    • パラメーターなし
  • 出力値タイプ:ブール
  • 例:入力値が 2024-7-15 14:26:30 の場合、計算結果は true となります。

文字列としてフォーマット

  • 入力値タイプ:日付
  • パラメーター
  • 出力値タイプ:文字列
  • 例:入力値が 2024-7-15 14:26:30、フォーマットが the time is YYYY/MM/DD HH:mm:ss の場合、計算結果は the time is 2024/07/15 14:26:30 となります。

単位を変換

  • 入力値タイプ:数値
  • パラメーター
    • 変換前の時間単位。
    • 変換後の時間単位。
    • 丸め操作。小数点を保持、四捨五入、切り上げ、切り捨てを選択できます。
  • 出力値タイプ:数値
  • 例:入力値が 2、変換前の単位が「週」、変換後の単位が「日」、小数点を保持しない場合、計算結果は 14 となります。

日付計算ノード_例

プロモーションイベントがあるとします。各商品が作成された際に、商品のフィールドにプロモーションイベントの終了時間を追加したいとします。この終了時間は、商品作成日の翌週の最終日の23:59:59です。そこで、2つの時間関数を作成し、それらをパイプライン方式で実行できます。

  • 翌週の時間を計算
  • 得られた結果を、その週の最終日の23:59:59にリセット

これにより、期待する時間値が得られ、それを次のノード(例えばコレクション変更ノード)に渡して、プロモーションイベントの終了時間をコレクションに追加できます。