SSIS将配置加载到自定义脚本的最佳方法

时间:2014-01-03 15:48:08

标签: ssis

我正在使用SSIS 2012,我需要找出加载多个配置文件以在自定义脚本中使用的最佳方法。

这就是它的方式:

  • 我需要使用自定义脚本来访问NoSQL数据库
  • 在这种情况下,NoSQL数据库没有严格的架构,因此属性从文档更改为文档
  • 我想使用配置文件来说明如何重命名列,并配置其他基本规则。

上述任务很容易在c#中完成,但是如果可能,我想使用SSIS组件读取配置文件(读取平面文件,excel文件或数据库规则)。因此,我想知道如何使用流中的数据提供自定义脚本,scipt使用流(流包含配置),并且在使用整个流之后,脚本组件生成行。

一个例子是:

  1. 脚本读取整个数字流。
  2. 脚本命令流上的数字
  3. 脚本丢弃重复脚本
  4. 输出有序的数字序列,没有重复。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,NoSql数据库和配置文件只是问题的背景和你真正需要的是异步 脚本组件从管道读取所有内容,然后做一些事情,最后将结果发送回管道? 如果是这样,那么你需要的是创建一个脚本组件,其输出缓冲区设置为SynchronousInputId = None。 然后,可以使用以下伪代码解决您发布的要重复和排序的数字的示例 (假设您在脚本组件的输出缓冲区中创建一个名为“numberout”的输出列 和输出缓冲区属性SynchronousInputId设置为None):

...
public override void PreExecute()
 {
     base.PreExecute();

    CREATE ARRAY TO HOLD NUMBERS
 }

 public override void PostExecute()
 {
     base.PostExecute();

    SORT AND DEDUPE ARRAY

    FOR EACH N IN ARRAY:
        output0buffer.addrow()
        output0byffer.numberout=N

 }

 public override void Input0_ProcessInputRow(Input0Buffer Row)
 {
    INSERT NUMBER TO ARRAY
 }