我正在开发自定义数据流组件。我定义的其中一个自定义属性包含一个字符串,其中包含有关输出列数的信息,更准确地说,它包含列的名称(可以是4,可以是5,但也可以是50)。数据流组件,输出列数取决于输入参数。 SSIS自定义数据流组件
因此输出列的数量是可变的。我无法弄清楚如何(或者即使有可能)拥有一个具有根据输入而变化的输出列数的组件。
有没有人有如何处理的想法? 感谢
UPDATE
确定。所以在设计时我会查看我的自定义属性并创建所需的列。我应该在哪种方法中做到这一点?
我ProvideComponentProperties试过这样:
this.fields_ = this.ComponentMetaData.CustomPropertyCollection["Fields"].Value.ToString().Split(new Char[] { ',' });
foreach (string _field in fields_)
{
IDTSOutputColumn100 _outputCol = ComponentMetaData.OutputCollection[0].OutputColumnCollection.New();
_outputCol.Name = _field;
_outputCol.SetDataTypeProperties(DataType.DT_STR, 20, 0, 0, 1252);
}
基本上fields_分裂了一个字符串,它是这样的:
PRVT_PLACE,OPT_IMPLIED_VOLATILITY_MID,OPT_IMPLIED_VOLATILITY_YEST
和每个领域我想创建一个输出列。
然后我将我的组件,并设置了fields_财产,但我得到以下信息:
The name for "output column" "(93)" is blank and names cannot contain blanks.
只有一列用空名称上面的例子...
创造了4,而不是我做错了什么?
好吧,我已经编辑我的问题表现出什么,我在设计时ATM unsucessfully尝试。谢谢你的帮助 – nche