我有一個SSIS 2008包。執行進程任務的表達式中的SSIS 2008用戶變量
我在包中有3個用戶變量。一個是爲了環境,一個是可執行文件的路徑,另一個是電子郵件的一部分。
我有一個腳本任務,它根據環境變量設置路徑的變量(strAppPath)。
strAppPath用於執行進程任務的Executable屬性的表達式中。作業失敗,說明沒有設置執行進程任務的可執行路徑。
我假設它在腳本任務設置變量之前檢查此路徑。
有沒有辦法解決這個問題?
我有一個SSIS 2008包。執行進程任務的表達式中的SSIS 2008用戶變量
我在包中有3個用戶變量。一個是爲了環境,一個是可執行文件的路徑,另一個是電子郵件的一部分。
我有一個腳本任務,它根據環境變量設置路徑的變量(strAppPath)。
strAppPath用於執行進程任務的Executable屬性的表達式中。作業失敗,說明沒有設置執行進程任務的可執行路徑。
我假設它在腳本任務設置變量之前檢查此路徑。
有沒有辦法解決這個問題?
右鍵單擊您的執行過程任務並選擇屬性。在屬性窗口中,您將有一個DelayValidation
選項,該選項當前設置爲False
將其翻轉到True
。
發生的事情是,當軟件包啓動時,它會經歷一個驗證階段,以確保在開始之前每件事都是潔淨的(如果某件事情被破壞,無需開始處理)。在你的情況下,不需要完整的驗證,因爲執行進程任務在運行之前不會有效。驗證將發生,只是它被延遲,直到任務開始的時間。合理?
我以前試過,它沒有工作。來找出從未在服務器上得到更新的軟件包。我再次部署它,現在它工作。 – crimsonisland
難道你不能只爲它設置一個默認值,讓任務在運行時調整它嗎? – jymbo
如果你想要它完全動態沒有。 DelayValidation需要設置爲True,因爲如果您將其默認爲不存在的位置,它仍然無法通過驗證。 – crimsonisland