我有一个脚本组件,我在其中缓冲所有行,然后进行一些处理,然后我想创建输出行。我尝试在 PostExecute 中访问输出缓冲区对象,但显然这是不可能的?当它点击 AddRow() 时给出“未将对象引用设置为对象的实例”错误。有没有办法做到这一点?
public override void PostExecute()
{
base.PostExecute();
//processing
foreach(ChartValue cv in chartValues)
{
Output0Buffer.AddRow();
Output0Buffer.usedcl = cv.Centerline;
//etc
}
}
最佳答案
感谢凯利的例子。但是就像 H B 所说的 base.Input0_ProcessInput()
为每一行调用 Input0_ProcessInputRow
。在我的情况下 Buffer.EndOfRowset()
总是假的。所以我做了更短的代码:
public override void Input0_ProcessInput(Input0Buffer Buffer)
{
base.Input0_ProcessInput(Buffer); // operate rows in while loop
//when done collecting all rows, do calculations
CalculateResults();
}
关于ssis - 我可以在 PostExecute 的 SSIS 脚本组件中向输出缓冲区添加行吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44806064/