このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
計算ノードは、式を評価し、その結果を対応するノードの結果として保存します。この結果は、後続の他のノードで利用できます。計算ノードは、データの計算、処理、変換を行うためのツールであり、プログラミング言語における値の関数呼び出しや変数への代入といった機能をある程度代替することが可能です。
ワークフローの設定画面で、フロー内のプラス(「+」)ボタンをクリックし、「計算」ノードを追加します。


計算エンジンは、式がサポートする構文を定義します。現在サポートされている計算エンジンは、Math.js と Formula.js です。各エンジンには、多数の一般的な関数とデータ操作メソッドが組み込まれていますので、具体的な使用方法については、それぞれの公式ドキュメントをご参照ください。
注意点として、配列のインデックスアクセスにおいて、エンジンによって違いがあります。Math.js のインデックスは 1 から始まり、Formula.js は 0 から始まります。
また、簡単な文字列の結合が必要な場合は、「文字列テンプレート」を直接使用できます。このエンジンは、式中の変数を対応する値に置き換え、結合された文字列を返します。
式とは、計算式の文字列表現のことで、変数、定数、演算子、およびサポートされている関数などで構成されます。フローコンテキストの変数、例えば計算ノードの先行ノードの結果や、ループのローカル変数などを使用できます。
式の入力が構文に準拠していない場合、ノード設定でエラーが通知されます。また、実際の実行時に変数が存在しない、型が一致しない、あるいは存在しない関数が使用された場合、計算ノードはエラー状態となり、途中で終了します。
通常、1つの注文には複数の商品が含まれる場合があり、各商品の価格と数量は異なります。注文の合計金額は、すべての商品の価格と数量の積の合計を計算する必要があります。注文明細リスト(多対多リレーションシップのデータセット)を読み込んだ後、計算ノードを使用して注文の合計金額を計算できます。

ここで、Formula.js の SUMPRODUCT 関数は、同じ長さの2つの配列の各行の積の合計を計算でき、これにより注文の合計金額が得られます。