大量データのキーブレイク処理について

ASTERIA Warpでこんなことできる?…と思うことなど、ご遠慮なく...(^_-)

大量データのキーブレイク処理について

投稿記事by hkwi » 2014年12月17日(水) 15:16

ASTERIAを最近使い始めたものです。
よろしくお願いします。

インプットのデータ(FIXED LENGTH)を読み、特定項目で
数値項目を集計しアウトプットしたいと思っております。
RECORDSQLでは試してみたのですが、大量にインプットデータがある場合は
使えないとの記載がありました。RECORDSQlを使わずにブレイク処理する
フローがイメージできません。 キーブレイクのタイミングでアウトプット
するには、どういった流れになるのでしょうか。

簡単な例ですが以下のようなデータが大量(?)にある場合です。

注文番号 金額
a1111 10,000
a1111 5,000
b2222 30,000
b2222 20,000
    ↓
a1111 15,000
b2222 50,000

以上 お手数ですがご教示ください、よろしくお願いいたします。
hkwi
 
記事: 3
登録日時: 2014年10月31日(金) 15:18

Re: 大量データのキーブレイク処理について

投稿記事by ym » 2014年12月19日(金) 13:10

こんにちは.

・入力データのキーはソート済もしくは集計単位のグルーピングが前提
・変数(キーの前回値と集計)を用意して初期化する
・RecordGet コンポーネントで読む
・キー前回値と今回を比較して違う&初期値じゃなければ出力、集計クリアする
・集計加算、キー前回値更新
・データの最後まで繰り返す
・未出力分があれば出力する

でいけそうです.
ym
 
記事: 41
登録日時: 2009年5月30日(土) 12:07

Re: 大量データのキーブレイク処理について

投稿記事by itete » 2014年12月22日(月) 12:27

フローを作ってみましたので添付しました。
添付ファイル
test20141222.zip
プロジェクトファイル
(5.94 KiB) ダウンロード数: 327 回
itete
 
記事: 157
登録日時: 2007年1月09日(火) 12:15

Re: 大量データのキーブレイク処理について

投稿記事by hkwi » 2014年12月26日(金) 15:42

ymさん
iteteさん

回答いただきありがとうございます
返信が遅れまして申し訳ありませんでした

キーの入れ替えや、ブレイク時の初期化がロジックの
変数の扱いがわかりませんでした

ようやくコンポーネントの置き方(順番)が理解できました
これをベースに色々と考えられそうです

ありがとうございました
hkwi
 
記事: 3
登録日時: 2014年10月31日(金) 15:18


Return to ビギナールーム

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[2人]