RecordGroup - レコードをグループ分けします

入力ストリームのレコード(Record, CSV, FixedLength)をフィールド名で指定したフィールドが同じ値を持つレコードにグループ分けします。そして、そのグループごとにループして出力します。

■ストリーム情報

入力フォーマットRecord,CSV,FixedLength
接続数1
出力フォーマットRecord,CSV,FixedLength
説明入力ストリームをグループごとに出力します。

■コンポーネントプロパティ

名前プロパティ型マッピング説明
モードchoice- 処理を行う方法を指定します。 オンメモリを指定した場合はFlowServiceのメモリを使用して処理を行うのでパフォーマンスが上がります。 RDBを指定した場合はオンメモリと比べて大量のレコードを処理することができます。
オンメモリ [OnMemory] - オンメモリで処理を行います。
RDB [RDB] - コネクション名 で指定されたRDBを使用して処理を行います。
コネクション名connection- 接続先のRDBを指定します。 コネクションペインまたは管理コンソールにて作成されたRDB接続名を選択します。 サポートされるRDBはHSQLDBです。
接続先のRDBとしてInternalDataStorageを使用することができます。 ただし、このコンポーネント以外ではInternalDataStorageは使用しないでください。
フィールド名inputField入力&出力 フィールド名を指定します。
このプロパティで指定したフィールドが同じ値を持つレコードにグループ分けします。
このプロパティはソートキーとしても使用します。
ソート順choice入力&出力 グループ分けされたレコードの出力順を昇順にするか降順にするかを指定します。
入力ストリームのフィールド名で指定したフィールドをソートキーとして使用します。
指定したフィールドにnullが含まれている場合には、そのレコードの順番はNullの順番で指定することができます。

昇順 [asc] - グループ分けされたレコードを昇順で出力します
降順 [desc] - グループ分けされたレコードを降順で出力します
Nullの順番choice入力&出力フィールド名で指定したフィールドの値がnullだった場合に、そのレコードの順番を最初にするか最後にするかを指定します。
最初 [first] - フィールド名で指定したフィールドの値がnullのレコードを最初にします
最後 [last] - フィールド名で指定したフィールドの値がnullのレコードを最後にします
精度int- フィールドの型がDecimalの場合に精度を指定します。
小数点以下の桁数int- フィールドの型がDecimalの場合に小数点以下の桁数を指定します。
末尾の0を削除boolean- フィールドの型がDecimalの場合に小数点以下の末尾の0を切り捨てるかどうかを指定します。
はい [true] - 小数点以下の末尾の0を切り捨てて出力します。
いいえ [false] - 小数点以下の末尾の0を切り捨てずに出力します。
インデックスを作成するboolean-フィールド名 に対してインデックスを作成するかどうかを指定します。
インデックスを作成することによってパフォーマンスが大幅に向上する場合があります。
はい [true] - インデックスを作成します。
いいえ [false] - インデックスを作成しません。

■ループ処理

このコンポーネントがループの起点となってグループに分けたレコードが出力されます。

■トランザクション処理

コミット何もしません。
ロールバック何もしません。

■エラー処理

タイプパラメーターエラー処理フロー
へのストリーム
エラー
コード
説明
汎用 なし コンポーネントの入力ストリーム1モード プロパティが「RDB」のときにHSQLDB以外のデータベースが設定された場合
3モード プロパティが「RDB」のときにコネクション名に値が設定されていない場合
4入力ストリームのフィールド定義が存在しなかった場合
8フィールド名で指定したフィールドが入力ストリームに存在しなかった場合
レコードが無い なし コンポーネントの入力ストリーム2出力ストリームのレコードが0件の場合

■制限事項

■実行例

入力ストリームのレコードが以下のような内容であったとします。(レコードの内容を表形式で記します)
顧客商品名
会社A商品1
会社B商品1
会社C商品2
会社A商品3
会社B商品2
会社A商品2

プロパティを以下のように設定します。
プロパティ名説明
フィールド名顧客グループ分けで使用するフィールド名
ソート順昇順グループ分けされたレコードの順番

出力ストリームは以下のようになります。
1ループ目
顧客商品名
会社A商品1
会社A商品3
会社A商品2
2ループ目
顧客商品名
会社B商品1
会社B商品2
3ループ目
顧客商品名
会社C商品2