SSIS动态地将rowcount放在平面文件目标表达式名称中

时间:2015-12-18 19:35:33

标签: ssis

我试图动态创建文件名。 我能够获取日期,但我需要从odbc源读取的数据的行数。

我创建了一个名为' rowcount'的int32变量。并且在平面文件连接管理器的表达式'连接字符串'财产我有以下内容:

"E:\\path\\" + (DT_WSTR,4)DATEPART("yyyy",GetDate()) + RIGHT("0" + (DT_WSTR,2)DATEPART("mm",GetDate()) ,2) + RIGHT("0" + (DT_WSTR,2)DATEPART("dd",GetDate()),2) + "_" + (DT_WSTR, 20) @[User::rowcount]  +".csv" 

给出:

  

E:\ FOLDERPATH \ 20151218_0.csv

但是当我运行项目时,它创建的文件名为0而不是行数。

任何帮助将不胜感激。 感谢。

1 个答案:

答案 0 :(得分:1)

好的,问题是您的平面文件是在DataFlow运行之前创建的(因此,已命名),当您的rowcount变量仍为零时,因为它尚未填充。

处理此问题的唯一方法是在填充平面文件并获得rowcount后重命名该文件。唯一的方法是使用在DataFlow任务之后运行的脚本任务。