tJavaRowの標準プロパティ
これらのプロパティは、標準ジョブのフレームワークで実行されているtJavaRowを設定するために使われます。
標準のtJavaRowコンポーネントは、カスタムコードファミリーに属しています。
このフレームワーク内のコンポーネントは、すべてのTalend製品で使用できます。
基本設定
[Schema] (スキーマ)と[Edit Schema] (スキーマを編集) |
スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。 このコンポーネントは、ダイナミックスキーマ機能の利点を備えているので、ソースファイルから不明なカラムを取得したり、各カラムを個別にマッピングしなくてもソースからカラムを一括してコピーしたりできます。ダイナミックスキーマの詳細は、ダイナミックスキーマをご覧ください。 ダイナミックスキーマ機能は、テーブルの不明なカラムを取得するしくみになっており、その他の目的には使用しないことをお勧めします。テーブルの作成には推奨しません。 |
|
[Built-in] (組み込み): そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。 |
|
[Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。 再使用するスキーマに整数またはファンクションのデフォルト値が指定されている場合は、これらのデフォルト値を引用符で囲まないようにご注意ください。引用符で囲まれている場合は手動で削除します。 詳細は、テーブルスキーマを取得をご覧ください。 |
スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。
ジョブで接続している先行コンポーネントからスキーマを取得するためには、[Sync columns] (カラムを同期)をクリックします。 |
|
[Generate code] (コードの生成) |
[Code] (コード)フィールド内にコードを自動生成するには、このボタンをクリックして、入力スキーマのカラムを出力スキーマのカラムにマッピングします。この生成によって、スキーマの内容は何も変更されません。 このマッピングの原則は、同じカラム名を持つカラムを関連付けることです。次に、生成されたコードを、必要とする実際のマップに応じて変更できます。 |
[Code] (コード) |
データフローの各行に適用するJavaコードを入力します。 |
詳細設定
[Import] (インポート) |
インポートするJavaコード、および必要に応じて[Basic settings] (基本設定)ビューの[Code] (コード)フィールドで使用されている外部ライブラリーを入力します。 |
[tStatCatcher Statistics] (tStatCatcher統計) |
このチェックボックスをオンにすると、コンポーネントレベルでログデータを収集できます。 |
グローバル変数
グローバル変数 |
NB_LINE: 入力コンポーネントによって読み取られた行の数、または出力コンポーネントに転送された行の数。これはAfter変数で、整数を返します。 ERROR_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。 Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。 フィールドまたは式に変数を入力する場合は、Ctrl + スペースを押して変数リストにアクセスし、使用する変数を選択します。 変数の詳細は、コンテキストと変数を使用をご覧ください。 グローバル変数(tFileRowCountのCOUNTなど)を[Code] (コード)ボックスに入力するには、コード全体、つまり、((Integer)globalMap.get("tFileRowCount_COUNT"))を手動で入力する必要があります。 |
使用方法
使用ルール |
このコンポーネントは、2つの他のコンポーネントの中間として使用されます。これは、入力と出力の両方のコンポーネントにリンクする必要があります。 |
ファンクション |
tJavaRowでは、Talendプログラムに統合できるカスタムコードを入力できます。tJavaRowを使用して、フローの各行に適用するJavaコードを入力できます。 |
目的 |
tJavaRowでは、Java言語を使用して Talend ジョブの機能を拡張できます。 |
[Limitation] (制限事項) |
Java言語の知識が必要です。 |