2012-07-27 83 views
4

我正嘗試在SSIS中使用WMI事件觀察程序任務執行自動程序包執行。我想要的功能是當excel文件被放入某個文件夾時自動執行包。但是,這些excel文件將成爲填充數據庫的連接管理器。帶有可變Excel連接管理器的SSIS

目前SSIS不會允許我這樣做,因爲我的excel連接管理器在運行程序時沒有路徑,只有在文件被刪除後才存在。

有沒有辦法讓變量的Excel連接管理器或連接字符串的值是一個變量?

另外,如何在表達式中實現此變量的使用?

回答

11

您可以使用一個變量的您在連接字符串Excel源:

  1. 點擊您的Excel源
  2. 在屬性窗口中的連接管理器,添加(1)的ConnectionString表達式(2)並分配一個變量(3)

enter image description here

有很多不同的事情,你可以通過使用變量做。它們與for each loop containersfile system tasks結合使用。你常做這樣的事情

  1. 創建變量窗口變量
  2. 將包裝過程中被改變了流動
  3. 變量映射到一個表達式

有一個靜態值或一個網上有很多howtos,也許看看這個吧:

http://www.simple-talk.com/sql/ssis/working-with-variables-in-sql-server-integration-services/

http://www.rafael-salas.com/2007/03/ssis-file-system-task-move-and-rename.html

+0

您能詳細說明表達式有什麼可能嗎?你也可能想看看我的下一個問題。 – CodeKingPlusPlus 2012-07-30 13:47:52

+0

@CodeKingPlusPlus請參閱我的編輯 – stb 2012-07-30 14:56:49

+0

如果我使用ExcelFilePath而不是連接字符串怎麼辦?什麼是高層次的過程?例如,我必須將連接管理器設置爲默認文件。一旦文件被放入文件夾,腳本將設置我的文件路徑變量的值。我的Excel連接管理器每個都有一個將ExcelFilePath與相應變量關聯的表達式。 **連接管理器如何使用ExcelFilePath **?它目前無法正常工作。 – CodeKingPlusPlus 2012-07-30 19:59:26

2

我知道達到這個目的最快的方法是創建一個excel連接管理器並通過一個變量設置連接字符串。爲了做到這一點,您需要先將連接器指向一個excel文件。因爲您將在運行時動態設置新文件,所以無關緊要。然後,選擇你的excel連接管理器並檢查它的屬性。您有一個ConnectionString屬性,您可以通過表達式設置該屬性。

enter image description here

但是,你必須確保你的包將僅使用Excel連接後,已經充滿了正確的連接字符串! 有關SSIS變量的更多信息,請查看此鏈接:Variables in SSIS

+0

我得到一個'CPakcage :: LoadFromXML'錯誤 – Si8 2014-04-17 20:22:42

相關問題