在 SSIS 2012 的集成服务目录中设置 "Execute Package Task" 中的包路径

Set package path in "Execute Package Task" From Integration Service Catalog in SSIS 2012

我想根据各种包的配置动态调用SSIS包。我已经在集成服务目录上部署了 SSIS 2012 解决方案。

在 运行 时,我有包名称但无法从集成目录设置 SSIS 包的路径。我可以从文件位置执行此操作,但由于我使用的是 2012,因此需要使用集成服务。

您必须使用表达式来实现此目的。

例子

假设:

  1. 包位于以下目录中:

    MSDB\MyPackages\Import\
    
  2. 包名称存储在变量中@[User::Variable]

解决方案

首先,创建一个 OLEDB Connection manager 以连接到与 Integration Services Catalog 相关的 SQL 服务器实例。

添加执行包任务并将其配置为来自 SQL 服务器的 运行 包,并使用您创建的连接。

Execute Package Task (只需单击任务并按 F4 显示属性选项卡) 转到表达式。

将包名称表达式设置为:

"\MyPackages\Import\" + @[User::Variable]

旁注:我假设所有包都存储在 MSDB\MyPackages\Import\ 中,否则你必须将完整路径存储在变量