2010-09-29 78 views
1

我已經改變了一個XML文件SSIS XML任務與每個循環

See this question for a complete description

我想知道的是藉此XML任務,有它在每個循環預製。我想要轉換特定目錄中的所有xml文件,並將生成的文件轉移到單獨的目錄。

它不工作。我收到以下錯誤messaes:

Error: 0xC002F304 at XML Task, XML Task: An error occurred with the following error message: "Data at the root level is invalid. Line 1, position 1.". 
Error: 0xC002928F at XML Task, XML Task: Property "New Source" has no source Xml text; Xml Text is either invalid, null or empty string. 

你能內每個循環執行XML轉換?

回答

4

問題是XML任務期望該變量包含我試圖轉換的XML數據。實際上,變量包含指向XML數據的文件名和路徑。

我的同事向我展示了修復。

在XML任務中選擇SourceType = File connection。

然後將源設置爲指向您的文件。

這裏是訣竅。在底部你會看到連接管理器,裏面將是你指定你的XML任務的文件名。點擊文件名稱(連接管理器內部),注意將顯示屬性窗口。

將ConnectionString更改爲任何字符串值(我使用「佔位符」)。

點擊旁邊的加號表達式,並添加這樣的ConnectionString的: @ [用戶::文件名]

在這種情況下,文件名是包含路徑xml文件包變量。

2

您應該能夠在Foreach循環中執行XML任務。錯誤消息似乎表明XML任務對源文件有問題。您可能需要查看Foreach循環中的文件名是如何應用於XML任務中的相應屬性的。當然,你應該確保Foreach Loop抓取正確的文件列表。

+0

會在每個循環中有XML Task嗎?是否需要另一個步驟? – codingguy3000 2010-09-29 19:24:00