-
tMapコンポーネントをダブルクリックして、[Map Editor] (マップエディター)を開きます。
メインの入力テーブルからidStateカラムをルックアップテーブルのidStateカラムにドロップして、結合を作成します。
[tMap settings] (tMap設定)ボタンをクリックし、[Join Model] (結合モデル)を[Inner Join] (内部結合)に設定します。
-
入力エリアの上部にある[Property Settings] (プロパティ設定)ボタンをクリックして[Property Settings] (プロパティ設定)ダイアログボックスを開き、実行エラーを処理するために[Die on error] (エラー発生時に強制終了)チェックボックスをオフにします。
ErrorRejectテーブルが自動的に作成されます。
-
入力テーブルでid 、idState、RegTime、およびRegisterTimeを選択し、それらをErrorRejectテーブルにドラッグします。
-
エディターの右上にある[+]ボタンをクリックして、出力テーブルを追加します。表示されるダイアログボックスで、[New output] (新しい出力)を選択します。その隣のフィールドに、テーブルの名前out1を入力します。[OK]をクリックします。
-
次のカラムを入力テーブルからout1テーブルにドラッグします: id、CustomerName、idState、およびLabelState。
RegTimeおよびRegisterTimeという2つのカラムをout1テーブルの末尾に追加し、日付形式をそれぞれ"dd/MM/yyyy HH:mm"および"yyyy-MM-dd HH:mm:ss.SSS"に設定します。
-
RegTimeカラムの[Expression] (式)フィールドをクリックし、[Ctrl]+[Space]を押してオートコンプリートリストを表示します。TalendDate.parseDateを見つけてダブルクリックします。パターンを("dd/MM/yyyy HH:mm",row1.RegTime)に変更します。
-
RegisterTimeカラムに対して同じことを行いますが、パターンを("yyyy-MM-dd HH:mm:ss.SSS",row1.RegisterTime)に変更します。
-
出力エリアの上部にある[+]ボタンをクリックして、出力テーブルを追加します。表示されるダイアログボックスで[Create join table from] (結合テーブルの作成]を選択し、Out1を選び、rejectInnerという名前を付けます。[OK]をクリックします。
-
[tMap settings] (tMap設定)ボタンをクリックし、リジェクトを処理するために[Catch lookup inner join reject] (ルックアップ内部結合リジェクト収集)をtrueに設定します。
-
カラムid、CustomerName、およびidStateを入力テーブルからrejectInnerテーブルの対応するカラムにドラッグします。
LabelStateカラムの[Expression] (式)フィールドをクリックし、"UNKNOWN"と入力します。
-
RegTimeカラムの[Expression] (式)フィールドをクリックし、[Ctrl]+[Space]を押して、TalendDate.parseDateを選択します。パターンを("dd/MM/yyyy HH:mm",row1.RegTime)に変更します。
-
RegisterTimeカラムの[Expression] (式)フィールドをクリックし、[Ctrl]+[Space]を押して、TalendDate.parseDateを選択します。ただし、パターンを("yyyy-MM-dd HH:mm:ss.SSS",row1.RegisterTime)に変更します。
row1のデータのパターンが間違っている場合は、ErrorRejectフローによって返されます。
[OK]をクリックして変更を確定し、エディターを閉じます。
-
最初のtLogRowコンポーネントをダブルクリックして、[Component] (コンポーネント)ビューを開きます。
[Sync columns] (カラムを同期)をクリックして、必要に応じてマッパーからスキーマストラクチャーを取得します。
[Mode] (モード)エリアで[Table] (テーブル)を選択します。
2番目のtLogRowでも同じことを行います。