2016-05-25 3 views
0

私の変換では、変更されたJavaスクリプトでvar(現時点はyyyy-mm-dd HH24mmssにフォーマットされています)を作成しました。次に、変数セットを使用してフィールドを変数に設定し、スコープはルートジョブで有効です。ケトルetl渡し変数

問題は、その変数を別の変換(同じジョブ内)でどのように使用するかです。変数を取得しようとしましたが、システム変数のみがあるようです。私がしたいことは、2番目の変換で日付をファイルに出力することです。その間にさらに多くの変換があります。そのため、最初の変換では出力できません。

または、ジョブに変数を作成してその値(現在の日付をyyyy-mm-dd HH24mmss)に設定してから変換で使用できますか?

EDIT:

答えは動作しますが、日付は私の予想形式(YYYY-MM-DD HH24mmss)ではありません、それは日付が何であるかのフォーマットは明らかではありません。例えば、私が変更されたJavaスクリプトでそれをフォーマットしようとすると、TypeErrorを得るためにgetFullYear関数を使用してみてください:オブジェクトgetFullYearを水曜日5月25日17:44:04 BST 2016で見つけることができません。日付はyyyy/mm/dd hh:mm:ssです。

私はそれを行う別の方法を見つけたので、テーブル入力を使用して、希望のフォーマットに日付を生成し、変数を設定します。残りは同じです。

答えて

0

最初の変換では、Get System Infoステップを使用してデータフローに現在の日付/時刻を挿入し、ジョブに定義された変数を設定するSet Variablesステップにそれを実行します。

CTRL-Spaceを実行すると、使用している変数がドロップダウンリストに表示されないことがあります。これは、変数が実行時にジョブによって割り当てられ、設計時には使用できないためです。デザイン時に '$ {VariableName}'と入力してください。その名前の変数を含むジョブから実行すると、うまくいくはずです。