【问题标题】:At what point are SSIS parent package variables read by the child package?子包在什么时候读取 SSIS 父包变量?
【发布时间】:2014-06-13 11:49:26
【问题描述】:

我找不到任何关于子包何时以及如何读取父包变量以及它们是否会遭受竞争条件的可靠信息。

我们的团队正在 SSIS 2008 系统中构建一个系统来处理大量文件。我们想要一个单一的入口点(父包)来获取文件,检查一些配置并有条件地调用几个子包之一来处理它。

一些值,比如文件名,需要传递给子包。我想知道的是,本质上,这些是通过引用传递还是通过值传递。

如果我为启动 ProcessXPackage 的文件 X.txt 运行 MainPackage,然后(当它仍在运行时)我为启动 ProcessYPackage 的文件 Y.txt 运行 MainPackage,是否存在 ProcessXPackage 可能随后可能出现的危险将文件名读取为 Y.txt?

或者是子包启动时读取的值并存储在本地,因此无法修改?

或者我什至不能在 ProcessXPackage 已经运行时再次运行 MainPackage,因为它在它的“堆栈”中?

【问题讨论】:

    标签: ssis bids


    【解决方案1】:

    通过父包变量配置的值是单向的,子包将使用父包变量来配置自己,但不同级别的两个变量之间没有联系。子进程只是在执行开始时从父变量中复制值。

    您是在开发中运行还是已将软件包部署到服务器?

    发展 您将只能运行 MainPackage 的一个实例,因此这不会成为问题

    已部署 部署后,您可以执行两次相同的包 (MainPackage),但只能在单独的进程中执行。由于执行相同包的不同实例不会相互影响(由于不同的进程),每个进程将使用自己的配置(对于文件 Y.txt 或文件 X.txt),因此您的包将正确执行这两种配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多