在SSIS…是否有可能从其脚本任务之一访问和更改包本身?如果是……你能举个例子吗?
例如,我想从位于循环外部(之前)的脚本任务以编程方式配置foreach循环内的任务。例如读取文件并根据其内容添加/删除/配置任务。
谢谢你的时间!
正如@Derek已经提到的,不可能更改包本身。但是,您可以使用优先约束/表达式根据变量中存在的值来改变Control Flow任务的行为,如果这就是您所说的更改包的意思。
这里有几个例子,我使用优先约束来重定向/限制基于表达式的控制流任务:
如何使用SSIS包只循环遍历目标中不存在的文件?
如何根据存储过程输出停止包的执行?
如何避免SSIS FTP任务在没有文件可下载时失败? (This example uses a script task followed by a Foreach Loop container.)
如何将SQL语句输出到CSV文件?
希望对你有帮助。
不,这是不可能的-然而,我通过使用我多次重用的第二个"子"包做了非常类似的事情。在脚本中,您可以简单地清除子包,将所需的所有项/容器/约束放入其中,然后执行它。