2
私はすべての行をバッファリングした後、何らかの処理を行い、出力行を作成したい場所にスクリプトコンポーネントを持っています。私はPostExecuteでOutput Bufferオブジェクトにアクセスしようとしましたが、明らかにそれは不可能ですか? AddRow()にヒットすると、 "オブジェクト参照がオブジェクトのインスタンスに設定されていません"というエラーが返されます。これを行う方法はありますか?PostExecuteのSSISスクリプトコンポーネントの出力バッファにローを追加できますか?
public override void PostExecute()
{
base.PostExecute();
//processing
foreach(ChartValue cv in chartValues)
{
Output0Buffer.AddRow();
Output0Buffer.usedcl = cv.Centerline;
//etc
}
}
はい、 'Input0_ProcessInputRow(Input0Buffer Row)'の出力行にしかアクセスできません。これは問題のように思えるかもしれませんが、常にその周りには方法があります。あなたのコードで何をするつもりか分かりませんでした。 – TheEsnSiavashi
同期モード(デフォルト)ですか、それとも非同期モードにしましたか?スクリプトが変換または作成されましたか? – billinkc
これは変換であり、非同期モードです。 PostExecuteの出力に追加することができれば、それほど簡単になるでしょう。たぶん私は行の数を事前に取得する場合、私は最後の行にして、最終的な処理を行うProcessInputRowで知っていると思います。 – Kelly