为什么在SSIS2012目录配置中,“使用环境变量”选项被禁用/灰显?

13

这可能听起来像是一个简单的问题,但网上的答案都指向了设置环境并在项目/包中引用基础知识。

我遇到的情况在任何地方都没有提到,所以我认为在这里记录下行为是很好的。

以下是重现问题的步骤:
1. 创建一个新的包: Package1.dtsx
2. 创建一个新的(包)参数:Test、Int32、Required
3. 部署项目。
4. 转到集成服务目录并导航到包。
5. 单击包上的右键,然后选择“配置...”
6. 单击包参数Test旁边的“...”
7. 您会发现"使用环境变量"选项处于禁用/灰显状态。

Set Parameter Value

为什么会这样呢?

3个回答

25

在您可以将它们映射在一起之前,您需要单击“引用”并添加为该程序包创建的环境,然后它就会为您启用。


2
Ben,这个回答确实对问题有所补充:如果一个环境没有与项目/包相关联,即使变量具有匹配的数据类型,“使用环境变量”选项也会变灰。 - bvgheluwe
这就是让我困惑的地方。我花了一些时间才弄清楚“链接”包与环境意味着什么。这是原始帖子中第5步和第6步之间的一个步骤。 - Joy Walker

12
大多数博客和论坛的答案都会说,你需要创建一个环境并将其链接到包,等等。然而,没有一个提到这个事实:为了使选项启用,你必须有与匹配的数据类型的变量! 允许我来演示一下。 1. 创建一个环境:Demo 2. 创建一个变量:Test, String 3. 注意环境变量的数据类型与包参数不同。 4. 将环境Demo链接到包Package1.dtsx。 5. 这是网络上大部分答案停止的地方。如果你按照我告诉你的做到现在,你的"使用环境变量"选项仍然被禁用/灰色显示。为什么?因为数据类型不匹配。重要提示-变量名可以不匹配,只有数据类型需要匹配。 6. 现在让我们完成它。回到环境中,创建另一个Int32变量:Aha,Int32,0 7. 回到配置…,点击包参数Test旁边的"..."。 8. 看看"使用环境变量"选项现在已经启用了吗?

1
我们需要先在包的引用中添加环境变量。

谢谢。您的解决方案对我很有效。 - Skaria Thomas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接