Sql server SSIS中的动态平面文件连接字符串

Sql server SSIS中的动态平面文件连接字符串,sql-server,ssis,Sql Server,Ssis,我正在SSIS包中使用平面文件连接源。文件名具有以下命名约定,即,。示例-sample201703291515.txt。文件名将附加不同的时间,因为文件创建时间不同。我已经在连接字符串中创建了表达式来获取当前日期的名称 "c:\source\sample"+(DT_STR,4,1252)YEAR( DATEADD( "dd", -1, getdate() ))+DT_STR,4,1252)MONTH( DATEADD( "dd", -1, getdate() ))+(DT_STR,4,1252)

我正在SSIS包中使用平面文件连接源。文件名具有以下命名约定,即,
。示例-
sample201703291515.txt
。文件名将附加不同的
时间
,因为文件创建时间不同。我已经在连接字符串中创建了表达式来获取当前日期的名称

"c:\source\sample"+(DT_STR,4,1252)YEAR( DATEADD( "dd", -1, getdate() ))+DT_STR,4,1252)MONTH( DATEADD( "dd", -1, getdate() ))+(DT_STR,4,1252)DAY( DATEADD( "dd", -1, getdate() ))+".txt"

但是由于时间的变化,是否有可能动态获取文件名,或者是否有任何表达式可以添加?请提供帮助。

处理此问题的正常方法是使用foreach循环,该循环遍历文件夹中的所有文件。然后使用脚本任务查看文件名,并将其与一些已知模式进行比较。因此,如果您知道您想要“sample20170329xxxx.txt”,其中xxxx是未知的时间字符串,那么您可以在脚本任务中使用正则表达式,也可以只比较文件名的子字符串,只查看名称时间部分之前的字符,以确定它是否是您想要的文件

然后,如果它是您想要的文件,则将连接字符串设置为使用该文件名,否则,循环到下一个文件