【问题标题】:Executing a SSIS child package with different input from Parent package使用与父包不同的输入执行 SSIS 子包
【发布时间】:2013-09-26 10:01:49
【问题描述】:

这可能是一个已经有解决方案的问题,但我只是无法得到它。 我正在使用 VS 2012、Sql Server 2012 BI。所以,这就是场景。

我有一个名为 P1.dtsx 的包。这个包包含一个脚本组件作为源。 我还有另一个包 P2.dtsx,其中已经有很多组件。

现在,我想做的是在 P2 的两个地方从 P2 调用 P1。当我从 P2 的两个地方调用它时,我想在 P1 中设置一个具有不同值的用户变量。

所以,我在 P1 中创建了一个名为 T(字符串类型和范围为 P1)的变量,并在 P1 的脚本组件中使用它。现在,我必须从 P2 设置这个变量两次。所以,我去了 P2 并制作了两个用户变量 T1 和 T2(字符串类型和范围都为 P2)。接下来我到 P1 并打开 Package Configuration 向导并配置 Parent Package 变量 T1 和 T2 以设置变量值 T。 到目前为止一切顺利。

这是我无法做到的一点点 - 在 P2 中我使用执行包任务调用 P1 的两个地方,我无法设置参数绑定。我不能说这次通话使用 T1,下一次通话使用 T2。 为什么我无法做到这一点?因为参数绑定编辑器中的“添加”按钮被禁用(下图)。

我确定我错过了一些非常琐碎的事情。

有什么想法或建议吗?

期待中的感谢

【问题讨论】:

  • P1包中添加参数了吗?
  • 不,我刚刚将我的变量添加到 P1。参数是怎么加的?

标签: ssis sql-server-data-tools


【解决方案1】:

您需要在 P2 包中添加参数。在设计窗格中:

在这里添加一个参数。然后在您的 P2 包中转到您的变量并将变量的值设置为参数的值。

【讨论】:

  • 我也无法添加参数。单击“添加”参数按钮不会执行任何操作。事实上,我认为它没有启用。
  • @Kumar 您在 P2 包的设计窗格中,对吧?不是执行包任务组件。
  • 好的,我在 VS 中收到一条小消息 - “当前部署模式不支持使用参数。要使用参数,请将项目转换为项目部署模式”
  • 是的,巴里,我在设计窗格中
  • @KumarVaibhav 是的,它是 SSIS 2012 中的新功能,您需要将项目转换为新模型。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-10
  • 1970-01-01
  • 2013-10-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多