SSIS:如何从project.params值参数化foreach文件夹循环位置?

问题描述 投票:0回答:2

我有一个 SSIS 项目,我想对其进行参数化,以便能够拥有开发、登台、生产环境。

我开始缓慢,我想参数化一些硬编码的文件路径。

我有一个 foreach 循环容器,它迭代目录并对它包含的每个文件执行一些操作。

在 Visual Studio 中,我右键单击并单击“编辑”。有四个选项卡:常规、集合、变量映射和表达式。

在“Collection”下,有一个可变文件夹。目前这是硬编码的。我希望它至少是一个包参数,或者最好是一个项目参数,后跟一个后缀。

添加项目参数后,我该如何执行此操作?

为此目的,假设我有一个变量:SuperFolderLocation。

我是否可以将变量文件夹的目的地更改为@[$Project::SuperFolderLocation] +“\subdirectory”?我是否需要使用表达式来计算变量文件夹的目的地?如果是这样,我需要设置什么变量?您可以在文件夹目标中放入一个变量,它就会解释它吗?

ssis
2个回答
5
投票

您需要做的第一件事是创建项目参数:

enter image description here

然后在

foreach loop container
中选择
collection
并确保在下拉列表中选择“Foreach File Enumerator”。 单击
Expressions
并在
Property
下拉列表中选择“目录”。 单击
Expression
省略号,这将打开
Expression Builder
然后从
System Variables
选择参数并通过添加子文件夹来完成表达式。 您还可以单击按钮
Evaluate Expression
以确保正确评估路径。

enter image description here


0
投票

如何从 SQL SSMS 中提取包,其中我的包位于 msdb 文件夹中的集成服务中。我想要操纵来源。我做了上面所有的事情。你能给我配置“执行包实用程序”的建议吗?

© www.soinside.com 2019 - 2024. All rights reserved.