简单的场景。我有3个SSIS包。 套餐#1。执行以确定文件的存在。如果文件存在,则运行“执行包”任务以调用其他2个包运行 套餐#2。从一个源执行数据导入任务 套餐#3。从其他来源执行数据导入任务
所有软件包都启用了“软件包配置”选项,我使用存储在文件系统上单个共享位置的配置文件;并配置每个包以在运行时使用配置文件。
当我在VS中执行该过程时,一切都按预期工作。
所以我将包复制到服务器,创建一个SQL作业来调用主包。当我执行作业时,主程序包执行正常,并使用配置文件建立连接,利用配置文件中的其他设置。
但是当使用Execute Package任务在主包内进行调用以运行其他2个包(也驻留在文件系统上)时;其他包失败了。当我检查日志时,它表明子包失败,因为它们找不到我在配置文件中定义的连接和变量。
所以看起来配置文件没有被子包使用,尽管我在部署之前在这些包中定义了它们。
我相信主程序包找到了配置文件,因为我已经明确指出了SQL作业中的配置文件位置。
如何确保主程序包调用的程序包使用文件系统上的配置文件?
我正在使用Azure VM。