2
我有一个缓冲所有行的脚本组件,然后做一些处理,然后我想创建输出行。我试图访问PostExecute中的输出缓冲区对象,但显然这不可能?当它遇到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