2017-08-16 5 views
0

ケトルが使用している完全なリポジトリパスを取得するのに苦労します。変数(link)のヘルプを読むと、ジョブまたは変換であるかどうかに応じて、 "Internal.Transformation.Repository.Directory"または "$ {Internal.Job.Repository.Directory}"のいずれかを使用できます。これは実際に動作し、repoをrootとしてファイルへのパスを返します。
ファイル(またはレポ)に "フルパス"が必要なので - "$ {Internal.Job.Filename.Directory}"(および変換1)を試しましたが、これは文字列 "Parent Job File Directory " (下記参照)。
追加情報 - 私はレポに接続しています。ケトルのリポジトリパスを取得

Wanted the path :(

ミッション - ファイル(ジョブ/変換)への完全なパスを取得する方法は?

+0

私は正しく理解していますか? myTransというtransfoを呼び出すmyJobという名前のジョブがあるリポジトリに接続しています。 myTransfoには、myJobのフルパスを含む変数が必要ですか? – AlainD

+0

こんにちは - まあまあです。我々はkettle.propertiesに格納する2つの異なるdb接続を使用したいと考えています。これらを読んで、ジョブが正しい環境(prod/test)を使用するようにするには、db情報でファイルを読みたいと思います。ファイルを読むためには、パスが必要です - あなたは正しいです! – Pixelartist

+0

私は解決策を提案しましたが、変換ファイルを読み込む(広告解析する)のが、あなたのユースケースにとって最も簡単な解決策ではないかと思います。特定のユースケースについてサポートにお尋ねください。 – AlainD

答えて

0

変換の呼び出し側のディレクトリは$ {Internal.Entry.Current:Directory}です。これは、ジョブにジョブが含まれる可能性があるため、ジョブのエントリのディレクトリが重要なためです。

注:トランスフォームをジョブから呼び出すのではなく、直接実行すると、Internal.Job.Filename.Fileは汎用の「親ジョブファイル名」になります。

enter image description here

+0

こんにちは、あなたの回答提案のおかげで - 私はそれが(レポに接続されているかどうかのように)それ以上あると思います。私はコンポーネント "Get Parameter"を使用し、実際のパスをパラメータとしてシェルにアタッチしました。今私はそれを読むトランザクションを通ってアクセスすることができます。 – Pixelartist

関連する問題