2014-02-25 44 views
0

我試圖在我的SSIS包中更改一些變量的範圍。他們依靠在數據庫中的配置表,此前他們得到了與數據庫中的以下值設置其值:SSIS配置表中的變量範圍

\Package.Variables[User::EmailAddress].Properties[Value] 

而對於該值將在ConfigurationValue列設置。

此工作就像一個魅力,除了一旦我改變了變量的範圍從包裝到一個特定的foreach循環容器,我已經得到下面的錯誤:

Warning: The package path referenced an object that cannot be found: "\Package.Variables[User::EmailAddress].Properties[Value]". This occurs when an attempt is made to resolve a package path to an object that cannot be found.

另,globally-範圍變量沒有這個問題。這個字符串中是否有一些值告訴SSIS查看包級別,而不是整個包中?

回答

1

你可以去兩種方式之一 - 無論是使用嚮導重建DTSConfig,或更改文件的路徑,包括ForEach Loop

\Package\ForEachLoopName.Variables[User::EmailAddress].Properties[Value] 
+0

編輯值沒有工作。現在錯誤如下:警告:程序包路徑引用了無法找到的對象:「\ Package.DownloadFiles.Variables [User :: EmailAddress] .Properties [Value]」。當嘗試將包路徑解析爲找不到的對象時,會發生這種情況。 – GGMG

+0

在這種情況下,請重命名舊的DTSConfig,然後使用所需的變量從軟件包中創建一個新的DTSConfig。然後將路徑複製到原始文件,並交換它們。 –

+0

Raj在第二種方法的正確軌道上。這只是確定變量適當範圍的問題。調出屬性窗口(F4),然後指向有問題的變量。你應該可以訪問'PackagePath'屬性,只要你不漏掉任何外殼,它應該可以正常工作 – billinkc