2016-04-21 59 views
0

我有一個包含5個軟件包的SSIS項目。SSIS拒絕運行一些軟件包

+MyAwesomeProject 
-Package 
-CoolPackage 
-AwesomePackage 
-HyperPackage 
-FinalPackage 

啓動包是「包」和一個僅僅是一個持有人,將調用包按順序先冷靜,然後真棒等等。

如果我從Visual Studio運行該項目,它可以完美地工作,並完成我想做的所有事情......完美無缺。沒有錯誤,沒有問題,一切正常。

當我部署腳本時,使用正確的用戶運行作業並使用與Visual Studio作業完全相同的參數設置SQL作業,它將毫無錯誤地運行,但跳過CoolPackage,AwesomePackage和HyperPackage包。它將執行Package中的代碼,然後按照Package中定義的順序執行所有四個程序包,而不是直接執行FinalPackage。

由於在Visual Studio中一切都很完美,我甚至不知道從哪裏開始尋找。

+0

從SSIS錯誤日誌開始。最可能的原因是SQL代理的權限。 –

+0

我發現了原因,但它產生了另一個問題。它運行所有軟件包,但Cool,Awesome和Hyper軟件包中的第一件事是連接到FTP服務器,下載文件,然後遍歷這些文件。我沒有連接到存儲文件的地方,只使用\\ server \ folder \子文件夾指定存儲ftp文件的位置並進行迭代。 SQL作業沒有從那裏讀取的權限,因此它失敗了,但它產生了沒有錯誤。它只是說「將所有文件從ftp傳輸到本地磁盤」(即\\ server e.tc磁盤),然後「迭代爲空」 –

+0

作業是否有權連接,但不能查看這些文件?如果是這樣,那麼我認爲這不會是一個錯誤。您可能必須編寫一些自定義代碼,以便在找不到預期文件時引發錯誤。 –

回答

0

這實際上並不是包沒有運行的情況,這是包不能完美執行其內容的情況。

要檢查程序包是否正常運行,您需要導航到左側「對象資源管理器」中的MSSMS(SQL Studio)中的程序包。當您找到您的軟件包(在「集成服務目錄」 - >「SSISDB」 - >「[軟件包文件夾]」 - >「項目」 - >「[軟件包名稱]」下)右鍵單擊它並選擇「報告」 >「標準報告」 - >「所有執行」。這將產生一份報告,您可以深入瞭解並確切瞭解運行情況和未運行的情況。

這解決了我的問題。