0

我有一个包,其中有一个包含标题行的输入文件

钛,2

和看起来像这样的细节线

YP,302,,0000000000000061.00,20170714,CHK #9999,R04,9999

我必须对细节行进行一些处理。文件名位于名为 User::FileName 的变量中

在我的数据流中,我有一个条件拆分,我将标题记录拍摄到一个路径,在该路径中我创建一个只有标题记录的文件(它不会改变)。

我处理所有的详细记录。我必须进入 SQL 来执行此操作并将结果写到一个逗号分隔的平面文件中,该文件与输入文件的名称相同(使用变量)。

所以现在我有一个具有固定名称的头文件和一个名称在变量中的详细文件。我需要把这些结合起来。我正在尝试创建一个 .BAT 上面写着

复制 /y /d /b header.txt + User::FileName User::Filename (用适当的值替换变量),然后使用执行进程任务执行此操作。

我正在使用数据流任务执行此操作。源是包含 2 列的平面文件 (copy.bat)。第 0 列有副本 /y /d /b。我有一个名为 Rest_of_Copy 的派生列,它具有 header.txt + User::FileName + " " + User::Filename

在输出文件 Destination 我也有 2 列。我将第 0 列(副本 /y /d /b)映射到输出文件的第 0 列和派生列 Rest_of_Copy(应包含 header.txt + User::FileName + " " + User::Filename 的结果)。目标文件的连接管理器是 Copyout.bat

当我运行包 Copyout.bat 是空的。

我不知道为什么。有人可以帮忙吗?

4

1 回答 1

0

我找到了一种不同的方法。我将 2 个文件写成固定名称,因此 COPY 命令是固定的,然后使用文件系统任务将输出文件重命名为 SSIS 变量。

谢谢,

迪克

于 2017-09-22T13:16:39.107 回答