我创建了SSIS包,从文件夹中导入Excel文件。 Excel文件的名称根据月份而变化。 例如:I:\ Test \ User_09-05-2016.xlsx或 我:\ Test \ User_09-06-2016.xlsx等.....
我想创建SQL作业来运行包,因为我每个月都会得到一个新文件。 我想在成功执行包之后存档excel文件(一次只保留一个excel文件在文件夹中)。
如何自动化流程?
答案 0 :(得分:0)
只需在SSIS中使用ForEach容器。
导入该文件夹中的每个电子表格。
处理后删除(或移动)每个电子表格。
答案 1 :(得分:0)
FE循环的替代方法 - 在包运行中定义Excel文件的路径和文件名
如果您知道命名Excel文件的规则,请创建一个字符串变量 Excel_FilePath ,其中包含像[User::Folder Path]+"\\"+[User::Filename]+".xlsx"
这样的表达式的完整路径。然后使用Excel文件Connection Manager并将以下表达式添加到ConnectionString属性"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + @[User::Excel_FilePath] + ";Extended Properties=\"Excel 8.0;HDR=YES\";"
在包属性中 - 设置 DelayValidation = true
更多details on this approach with screenshots和exactly your question reviewed。