- はじめに
- 基本情報
- BPMN を使用したプロセス モデリング
- ケース管理を使用したプロセス モデリング
- フローを使用したプロセス モデリング
- プロセスの実装
- プロセスの操作
- プロセスの監視
- プロセスの最適化
- 参考情報
コレクションをフィルター処理、マッピング、グループ化するためのデータ変換操作。
さまざまな操作を使用してデータを変換します。データ変換ノードとその個々の操作ノード ([フィルター]、[マッピング]、[グループ化]) は、ノード パレットで個別の選択可能なノードとして使用できます。
データ変換を使用すべき状況とスクリプトを使用すべき状況
データ変換操作は、変換がコレクションに対するフィールド レベルの操作である場合に使用します。使用可能な操作には以下が含まれます。
- フィルター処理
- マッピング
- グループ
スクリプト は 、変換で条件ロジック、算術演算、または文字列の操作が必要な場合、またはケースをカバーする専用の操作がない場合に使用します。両方を組み合わせることができます。データ変換操作でコレクションをフィルター処理または再形成し、結果をスクリプト ノードに渡すことができます。
出力
データ変換操作のすべてのノードは、結果を として出力 output、下流で $vars.<nodeName>.outputとしてアクセスできます。
フィルター
条件に一致するエントリのみをコレクション内に保持します。
構成
| フィールド | Required | 説明 |
|---|---|---|
| 入力 | はい | フィルター処理するコレクション (配列) です。$vars.<nodeName>.outputとして参照します。 |
| 条件 | はい | 1 つ以上の条件エントリは、すべての条件が満たされた場合にのみ保持されます。 |
例
statusが "completed"の注文のみを保管します。
- 入力:
$vars.fetchOrders1.output.body - 条件:
statusに等しいcompleted
$vars.filter1.outputとして出力できます。
Map
コレクション内の各エントリのフィールドを変更または再形成することで、そのエントリを変換します。
構成
| フィールド | Required | 説明 |
|---|---|---|
| 入力 | はい | 変換するコレクション (配列) です。 |
| フィールド マッピング | はい | ターゲット フィールドごとに名前とソース フィールドまたは式を定義します。 |
例
[ firstName ] フィールドと [ lastName ] フィールドの名前を「 first 」と「 last」に変更します。
| ターゲット フィールド | ソース マッピング |
|---|---|
first | firstName |
last | lastName |
$vars.map1.outputとして出力できます。
グループ化
コレクションを共有フィールドでグループ化し、合計、平均、カウントなどの値を集計します。
構成
| フィールド | Required | 説明 |
|---|---|---|
| 入力 | はい | グループ化するコレクション (配列) です。 |
| グループ化のフィールド | はい | 値によってグループを決定するフィールドです。 |
| 集計 | いいえ | グループごとの追加計算フィールド (カウント、合計、平均、最小、最大、最初、最後、収集)。 |
例
注文のリストを region でグループ化し、リージョンごとに注文数をカウントします。
- 入力:
$vars.fetchOrders1.output.body - グループ化:
region - 集計:
orderCount= カウント
$vars.groupBy1.outputとして出力できます。
一般的な問題
| 問題 | 解決方法 |
|---|---|
| フィルター処理後に出力が空である | 条件はどのエントリとも一致しません。実行トレースで入力コレクションを調べて、フィールドの名前と値を確認します。 |
マップ出力には undefined フィールドがあります | ソース フィールドのパスが入力エントリに存在しません。実行トレースを使用して、入力構造を確認します。 |