我正在考虑在文件夹中使用ssis读取excel文件。
通过将新文件放入,而不删除任何旧文件,每天更新文件夹。
我现在使用'for each'容器来循环所有文件并将它们加载到统一表中。
但是,老板只想将最新的文件加载到表中,而他不想要增量表。
可以使用ssis中的某些函数检查文件创建日期,只加载最新的函数吗?
答案 0 :(得分:2)
ou can use this script:
public void Main()
{
// TODO: Add your code here
var directory= new DirectoryInfo(Dts.Variables["User::VarFolderPath"].Value.ToString());
FileInfo[] files = directory.GetFiles();
DateTime lastModified = DateTime.MinValue;
foreach (FileInfo file in files)
{
if (file.LastWriteTime > lastModified)
{
lastModified = file.LastWriteTime;
Dts.Variables["User::VarFileName"].Value = file.ToString();
}
}
MessageBox.Show(Dts.Variables["User::VarFileName"].Value.ToString());
Dts.TaskResult = (int)ScriptResults.Success;
}
您也可以点击以下链接:
http://sqlage.blogspot.in/2013/12/ssis-how-to-get-most-recent-file-from.html