メイン コンテンツをスキップする 補完的コンテンツへスキップ

親ジョブに値を渡すための子ジョブを作成する

子ジョブはテキストファイルからデータを読み取り、行の総数を入力して、その行を親ジョブに渡します。

in.txtという名前の入力ファイルは次のとおりです。

id;name
			1;Shong
			2;Elise
			3;Sabrina

このジョブは、次のコンポーネントを使用します。

  • tFileInputDelimitedコンポーネント: テキストファイルからデータを読み取ります。tLogRowコンポーネント: データをコンソールに出力します。
  • tFixedFlowInputコンポーネント: tFileInputDelimitedコンポーネントによって読み取られた行の総数を取得します。tBufferOutputコンポーネント: 値をバッファリングします。

手順

  1. ジョブを作成し、childJobという名前を付けます。
  2. ワークスペースでtFileInputDelimitedコンポーネントとtLogRowコンポーネントを追加し、[Row] (行) > [Main] (メイン)接続を使ってそれらをリンクします。
  3. ワークスペースでtFixedFlowInputコンポーネントとtBufferOutputコンポーネントを追加し、[Row] (行) > [Main] (メイン)接続を使ってそれらをリンクします。
  4. [[Trigger] (トリガー) > On Subjob Ok接続を使って、最初のサブジョブを2番目のサブジョブにリンクします。
  5. tFileInputDelimitedコンポーネントをクリックして[Basic settings] (基本設定)ビューを開き、[File name/Stream] (ファイル名/ストリーム)in.txtファイルパスを、[Header] (ヘッダー)フィールドに1を入力します。
  6. [Edit schema] (スキーマを編集)の横にある[...]ボタンをクリックし、スキーマダイアログボックスを開き、整数型のidおよび文字列型のnameの2つのカラムを追加してスキーマを定義します。
  7. tFixedFlowInputコンポーネントをダブルクリックして、整数型のnb_lineという名前のカラムを作成します。
  8. [Mode] (モード)エリアで[Use Single Table] (単一テーブルの使用)を選択し、[Value] (値)セルに((Integer)globalMap.get("tFileInputDelimited_1_NB_LINE"))と入力します。

このページは役に立ちましたか?

このページまたはコンテンツに、タイポ、ステップの省略、技術的エラーなどの問題が見つかった場合は、お知らせください。改善に役立たせていただきます。