2014-07-10 99 views
2

是否可以將像@inputfile,@packagepath等參數發送到將運行我的SSIS的sql作業?通過傳遞參數從SQL作業運行SSIS

目前,我正在配置我的路徑,工作屬性本身的包名稱來運行它。

我知道一個方法是定義一個命令

@command = EXEC my_stored_procedure @參數1,@ parameters2

,包括該作業。

但是我不能直接從作業調用存儲過程嗎?

+0

你正在使用什麼版本的sql server。你到目前爲止嘗試過什麼嗎?這非常簡單。 –

+0

sql server 2008 R2,嗯,事情是我有10個具有不同名稱和路徑的SSIS包,我想在工作中接受一個參數並運行它,而不用硬編碼任何東西。 –

回答

0
  1. 創建主包它要求所有要執行10個SSIS包。如果所有包都在同一個項目中使用Project Reference。如果軟件包不在同一項目中(或如您所說的不同路徑),請使用external reference類型來調用它們。

    enter image description here

  2. 如果你想打電話給所有的包動態不論名稱。創建一個for each loop enumerator並致電execute package task。在執行包中動態傳遞SSISDB的所有包。

  3. 致電master package在您的SQL Server agent Job,你就完成了。

    enter image description here

+0

如何將參數傳遞給此作業,可以說我有一個數字將另一個存儲過程傳遞給此作業,我在這裏如何接受它是我問的。 –

+0

你需要去'配置'選項卡來配置你的參數。您還可以在連接管理器中設置連接。 –

+0

查看關於配置的這篇文章http://msdn.microsoft.com/en-us/library/cc895212.aspx –

0

你可以有主包裹上面讀出的參數值,從表中&它們加載到SSIS變量與「執行SQL」任務。

然後,您可以使用SPROC在運行包之前填充表,如果這是您需要它運行的方式?

真的有點破事:-)

相關問題