3

有没有一种方法可以在不使用脚本任务的情况下在 SSIS 执行期间动态创建目标文件夹,例如。我有代码 123、133、143,如果不存在,我想在下面创建一个文件夹位置

D:\Outbox\ACI\123
D:\Outbox\ACI\133
D:\Outbox\ACI\143

D:\Outbox\ACI 是静态的,而 123、133、143 只是由于执行 SQL 查询组件而脱落。

请问有人吗?

4

1 回答 1

6

您需要编写expression以获取文件夹名称的动态值。假设您有一个如下所示的包裹

在此处输入图像描述

第一个组件是execute SQL Task从表值中检索 ID,例如123, 133, 143

ForEach component枚举这些值并传递individual IDFile System Task(创建文件夹)以创建具有动态名称的文件夹。

第 1 步:在 SSIS 中创建 3 个变量

Name        DataType  Expression
ID           Int32
FolderPath   String   "D:\\Outbox\\ACI\\" + (DT_WSTR, 10) @[User::ID] 
FileID       Object  

对于变量 FolderPath 设置EvaluateAsExpression为 True

第 2 步:配置执行 SQL 任务以从表中获取 ID

在此处输入图像描述

第 3 步:将 ID 存储到FileID变量中

在此处输入图像描述

第 4 步:配置ForEach组件

在此处输入图像描述

在此处输入图像描述

步骤 5:配置文件系统任务以创建一个directory

在此处输入图像描述

于 2013-04-08T12:04:49.707 回答