1

レポートのバイナリ BLOB とそのメタデータを格納するテーブルがいくつかあります。これらの表の内容をまとめたレポートを作成したいと思います。テーブルごとに変換を作成しましたが、それらはすべて同じ変数を出力します。次に、値を読み取り、フォーマットして XML ファイルに書き出す変換を行います。

各テーブル変換は、出力変換とは独立して機能します。ただし、それらすべてを出力変換に向けると、そのうちの1つだけが機能し、結果は1つのテーブルのみを反映しているように見えます(それぞれが実行されると仮定していますが、互いに上書きすると仮定しています)。

したがって、どうにかしてストリームをマージする必要があると思います。これをテーブル変換にハードコーディングしたくはありません。なぜなら、それらを再利用可能にして分離したままにしたいからです。また、テーブルのサブセットのみについてレポートを作成する必要があるときはいつでも、それをいじる必要があるため、これをレポート ライターにハード コードしたくありません。

「Join\Merge Rows」または「Flow\Append」ストリームを使用しようとしましたが、これらはジョブ レベルでは利用できないようで、他の変換内に変換を埋め込むことができないようです。

これはケトルでも可能ですか?バージョン 4.1 ではどうですか? そうでない場合、それは新しいバージョンですか?

私の仕事のダイグラムは次のようになります。私のすべてのテーブル変換は現在、「行を結果にコピー」を使用しており、ライターは「結果から行を取得」を使用しています。

      Table1
      /    \
     /      \
 Start      Output Report
     \      /
      \    /
      Table2
4

1 に答える 1

1

ジョブでストリームをマージすることはできません。ジョブは実際には並列処理を意図したものではなく、あなたのようにストリームを分割したときに何が起こるかさえわかりません (ジョブでいくつかの基本的な分岐を行うことはできますが、それだけです)。変換を呼び出すステップを含むラッパー ジョブを作成するだけであっても、変換でこれを行う必要があります。

于 2013-03-02T13:56:12.350 に答える