我已經創建了從文件夾導入Excel文件的SSIS包。 Excel文件的名稱根據月份而改變。 例如:I:\ Test \ User_09-05-2016.xlsx或 I:\ Test \ User_09-06-2016.xlsx等.....SSIS包中的源文件名更改
我想創建SQL作業來運行包,因爲我每個月都會得到一個新文件。 我想在成功執行包後保存excel文件(一次只保留一個文件夾中的excel文件)。
我該如何自動化過程?
我已經創建了從文件夾導入Excel文件的SSIS包。 Excel文件的名稱根據月份而改變。 例如:I:\ Test \ User_09-05-2016.xlsx或 I:\ Test \ User_09-06-2016.xlsx等.....SSIS包中的源文件名更改
我想創建SQL作業來運行包,因爲我每個月都會得到一個新文件。 我想在成功執行包後保存excel文件(一次只保留一個文件夾中的excel文件)。
我該如何自動化過程?
只需在SSIS中使用ForEach容器即可。
導入該文件夾中的每個電子表格。
處理後刪除(或移動)每個電子表格。
FE循環的替代方法 - 在程序包運行時定義Excel文件的路徑和文件名。
如果您知道命名Excel文件的規則,請創建一個字符串變量Excel_FilePath包含完整路徑並使用表達式,如[User::Folder Path]+"\\"+[User::Filename]+".xlsx"
。然後把你的Excel文件連接管理器添加到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。
如果源文件名從I:\ Test \ User_09-05-2016.xlsx更改爲I:\ Test \ User_09-06-2016.xlsx – Apoorv
如何處理源文件名只需在SSIS中使用ForEach容器即可。 – BIDeveloper