我正在使用Visual Studio 2012.我創建了一個使用序列容器的SSIS解決方案。SSIS序列容器不會失敗
SSIS包的一點是這樣的。每第3個和第5個工作日,我需要創建文件夾並將文件複製到其中。在第三個工作日文件被複制到相應的第三個工作日文件夾。同樣在第5個工作日。這些文件夾和文件位於名爲yyyymm的父文件夾中,即201411.兩者的文件夾結構有點奇怪,但這超出了我的控制範圍,而不是問題所在。
我找不出如何計算工作日,所以我希望設計SSIS包的方式,以便單個SSIS包可以完成這兩個工作,就是使用成功/失敗切換優先約束。
我設計了流程,以便第一次運行程序包時創建Day3文件夾,然後複製這些文件。第二次運行day3軟件包時會注意到Day3文件夾已經創建並失敗。這是失敗的意圖。我希望包的失敗影響父親序列容器和序列容器完全失敗。在發生這種故障之後,我希望軟件包繼續沿着故障約束,創建Day5文件夾並複製這些文件。
問題是任務失敗,但是這會完全停止包。該流程不會沿故障約束繼續並執行Day5功能。我嘗試過調整包中的屬性,順序容器以及調整傳播系統變量,正如我通過互聯網搜索所看到的那樣,但我無法獲得預期的工作流。
有可能是一個更好的方法來做這個整個過程,我接受建議,但這個查詢的真正目的是弄清楚如何讓序列容器作爲一個整體失敗,並讓包繼續執行Day5功能。
第3個工作日
5個工作天
SSIS包
期望的結果。如果子包在其中失敗,則順序容器將失敗。
針對下面的評論。我試圖設置一個布爾約束,但這也不起作用。不知道我是否正確做到了這一點。
我試圖將布爾邏輯添加到約束並切換AND/OR,但仍然無法使Sequence容器失敗。 – 2014-10-31 16:46:12
添加一個腳本任務(第3天容器之後)並明確地將布爾變量設置爲False。這兩個之間的優先約束應該是我相信的失敗。我會進一步調查並在一段時間內回覆您。同時,請嘗試此解決方案。 – rvphx 2014-10-31 17:14:34
如果你可以添加一個有用的圖像。我有點困惑什麼地方。 – 2014-10-31 17:41:21