我正在开发一个通用SSIS包,它接收一个平面文件,向其添加新列,并生成一个新的平面文件。
我遇到的问题是新列的数量因存储过程XML参数而异。我尝试使用“执行进程任务”来调用BCP,但XML参数对于命令行来说太长了。
我在网上搜索,发现你无法在运行时动态更改SSIS包,而且我必须使用脚本任务来生成输出。我开始走这条路,发现你仍然需要让脚本组件知道列的接收方式,这正是我在设计时不知道的。
我从CozyRoc找到了第三方SSIS扩展程序,但我想这样做而没有任何扩展。
有人做过这样的事吗?
谢谢!
答案 0 :(得分:1)
如果在运行时未知列数,则必须动态执行某些操作,这意味着使用脚本任务和/或脚本组件。
工作流程可能是:
这很可能使用脚本任务,但如果没有涉及数据流,可能更容易在外部Perl脚本或C#程序中完成整个操作,只需从包中调用它。