SSIS 使用包部署模型使用项目参数部署带有变量的包

SSIS deploy package with variables using project parameters using package deployment model

有一个现有项目(比如 Project1)我正在处理 项目参数如

姓名 - Param_Local_Dir

值 - F:\Test\Company\Process\

在一个包中(比如 Package1)这个项目参数在包变量中用于标识值

姓名 - Pkg_Local_Dir

值 - 替换(@[$Project::Param_Local_Dir]、"Company"、"AA")

该项目已使用项目部署模型部署到 SQL 服务器,并且 运行 通过计划作业没有问题。 现在我需要将包部署到 SQL 服务器中,因为有一些更改(集成服务目录 -> project1 - 右键单击​​ -> 部署包)

当我 select 来自包部署 window 的包时,它给出以下错误 -

标题:SQL 服务器集成服务

警告: 在变量集合中找不到变量“$Project::Param_Local_Dir”。变量可能不在正确的范围内。

错误:

1。变量 "Pkg_Local_Dir" 的表达式求值失败。表达式有错误。

我们没有条件再次部署整个项目,因为有很多包,而且这是唯一更改的包。 有什么方法可以修复此错误以进行程序包部署?

项目部署模式和包部署是完全不同的东西。您不能在包部署模式下部署的包中引用 Project 参数。这就是您收到错误的原因。
在 SSIS 2016 中,您可以 deploy single package 从您的项目中保持项目模式,但不能在 SSIS 2012 或 2014 中。
在你的情况下,我将从服务器卸载项目,对包进行必要的修改并将更新的项目部署回来。