SSIS:如何从 project.params 值参数化 foreach 文件夹循环位置?
SSIS: How to parameterise foreach folder loop location from project.params value?
我有一个 SSIS 项目,我想对其进行参数化以便能够拥有开发、暂存和生产环境。
我开始比较慢,我想参数化一些硬编码的文件路径。
我有一个 foreach 循环容器,它遍历一个目录并对它包含的每个文件执行一些操作。
在Visual Studio中我右击并点击编辑。有四个选项卡:常规、Collection、变量映射和表达式。
在“Collection”下,有一个变量Folder。目前这是硬编码的。我希望它至少是一个包参数,或者最好是一个后跟后缀的项目参数。
添加项目参数后,我该怎么做?
为此,假设我有一个变量:SuperFolderLocation。
我是否可以将变量文件夹的目标更改为@[$Project::SuperFolderLocation] + "\subdirectory"?我是否需要使用表达式来计算变量文件夹的目的地?如果是这样,我需要设置的变量是什么?您可以直接在文件夹目标中放置一个变量,它会解释它吗?
您需要做的第一件事是创建项目参数:
然后在 foreach loop container
select collection
中确保“Foreach File Enumerator”在下拉列表中 selected。
在 Property
下拉列表中单击 Expressions
和 select“目录”。
单击 Expression
省略号,这将打开 Expression Builder
然后 select 来自 System Variables
的参数并通过添加子文件夹来完成表达式。
您还可以单击按钮 Evaluate Expression
以确保正确评估路径。
我有一个 SSIS 项目,我想对其进行参数化以便能够拥有开发、暂存和生产环境。
我开始比较慢,我想参数化一些硬编码的文件路径。
我有一个 foreach 循环容器,它遍历一个目录并对它包含的每个文件执行一些操作。
在Visual Studio中我右击并点击编辑。有四个选项卡:常规、Collection、变量映射和表达式。
在“Collection”下,有一个变量Folder。目前这是硬编码的。我希望它至少是一个包参数,或者最好是一个后跟后缀的项目参数。
添加项目参数后,我该怎么做?
为此,假设我有一个变量:SuperFolderLocation。
我是否可以将变量文件夹的目标更改为@[$Project::SuperFolderLocation] + "\subdirectory"?我是否需要使用表达式来计算变量文件夹的目的地?如果是这样,我需要设置的变量是什么?您可以直接在文件夹目标中放置一个变量,它会解释它吗?
您需要做的第一件事是创建项目参数:
然后在 foreach loop container
select collection
中确保“Foreach File Enumerator”在下拉列表中 selected。
在 Property
下拉列表中单击 Expressions
和 select“目录”。
单击 Expression
省略号,这将打开 Expression Builder
然后 select 来自 System Variables
的参数并通过添加子文件夹来完成表达式。
您还可以单击按钮 Evaluate Expression
以确保正确评估路径。