SSIS中的Foreach循环容器

时间:2012-10-25 15:14:18

标签: sql-server for-loop ssis

我在ssis中使用每个循环容器。我需要从我的文件夹中提取excel文件。 示例文件名: - 2012年1月,2012年3月等。我的问题是我只需要提取当前月份文件(即2012年10月)。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

如果您正在处理单个文件,则无需循环。您只需要一个可以将日期转换为英语(天或月)的表达式。

此处显示了解释这两种情况的一个示例:http://sqlage.blogspot.ch/2011/03/monthname-and-day-name-in-ssis.html

解决问题的表达方式是:

   (MONTH(getdate()) == 1 ? "January" :
    MONTH(getdate()) == 2 ? "February" :
    MONTH(getdate()) == 3 ? "March" :
    MONTH(getdate()) == 4 ? "April" :
    MONTH(getdate()) == 5 ? "May" :
    MONTH(getdate()) == 6 ? "Jun" :
    MONTH(getdate()) == 7 ? "July" :
    MONTH(getdate()) == 8 ? "August" :
    MONTH(getdate()) == 9 ? "September" :
    MONTH(getdate()) == 10 ? "October" :
    MONTH(getdate()) == 11 ? "November" :
    MONTH(getdate()) == 12? "December":"") + " " + 
    (DT_WSTR,4)YEAR(getdate()) + ".xlsx"

结果是(目前):2012年10月xlsx