なにかのきろく

ひっそりと戻ってきて自分のためになるべく頑張る・・・

Talendでデータ結合を考える 後編

もう結合を考えるって言うか
結合しなかった時どうするのかを考える回になってますww
ごめんなさい。

f:id:seyoshinori:20160711145443j:plain

 ぱくたそ-フリー写真素材・無料ダウンロード

 

ではでは、十二分に癒されたところで。

JOBの形はこれです。

f:id:seyoshinori:20160711145112p:plain

さて、1データ上(1レコード上)に存在するエラーを全て検出したい!って
処理を実現させようと思います。
ここで、
「変数」を使用してデータを処理することが必要になる。
(使用しなくても出来るかもしれないけど、

 私にはわかりませんでした。ごめんなさい。)


では、さっそくtMap_1を見ていこう!!

f:id:seyoshinori:20160711145210p:plain

良くわからないので、右枠、真ん中、左枠で見ていく。

・左枠
今までと同じです。
Joinの仕方はLeft Outer Joinだということを忘れぬよう。

f:id:seyoshinori:20160711145148p:plain


・真ん中

ここに今回の主役である「変数」が設定されてます。
変数Var1~4まで用意しました。

Var1:店舗マスタとの紐付きをチェックする。紐付かなければエラーメッセージをセットする。
Var2:店舗コードの1桁目が"C"だったら抽出対象外にします。"C"ほげほげならエラーメッセージをセットする。
Var3:商品マスタとの紐付きをチェックする。紐付かなければエラーメッセージをセットする。
Var4:日付マスタとの紐付きをチェックする。紐付かなければエラーメッセージをセットする。

f:id:seyoshinori:20160711145248p:plain


私の理解では、

ここに設定してある変数の評価を全レコードで行いデータが流れることになります。


・右枠

ただ変数の中にエラーメッセージがあるかないかを評価しているだけ。

f:id:seyoshinori:20160711145312p:plain

エラーメッセージも適当に出力する。
データがRejectした理由が分かればいいから・・・、ごめんなさい。

 

そして実行結果はこちら。

正常なデータを出力

f:id:seyoshinori:20160711145339p:plain


チェックで引っかかるレコードはリジェクト!

f:id:seyoshinori:20160711145354p:plain

オレンジ色の枠内に注目です。
1レコードで発生している複数のエラーを拾っています。
これで形にはなりました。めでたしめでたし。

f:id:seyoshinori:20160711145527p:plain

 

 

 

End