這篇文章是以SSIS-如何接收web services的資料當做資料來源做轉檔這篇文章為基礎來說,所以本篇看不懂的,可以先看一下該篇文章 web services設定的部份,本篇文章就不再重覆說明

至於為什麼要做本篇文章呢!因為SSIS-如何接收web services的資料當做資料來源做轉檔這篇文章是直接在”指令碼元件”中設定,算是比較進階的部份,且不好除錯,因此先用”指令碼工作”做驗証資料抓下來對不對,有沒有問題!

 

先確認單純執行該web services的元件是成功的!

如下圖

image

接著從工具列拉出一個”指令碼工作”的元件

image

在”指令碼工作”中接滑鼠右鍵選編輯,圖中紅框的部份,請輸入接收你web services的object變數(我這裡自己定義的變數名稱為rs)

image

接下來,點”編輯指令碼”,在main()中輸入如下程式碼

image

'宣告一個xml物件
       Dim xmldoc As New Xml.XmlDataDocument
       '宣告一個MemoryStream接收web servies的資料變數,我是定義為rs
       Dim strm As New System.IO.MemoryStream(Text.UnicodeEncoding.Unicode.GetBytes(Dts.Variables("rs").Value.ToString()))
       '讀取stream的資料到dtaset
       xmldoc.DataSet.ReadXml(strm)
       '執行中秀出msgbox顯示資料表的第1列的第1欄資料--正式時執行後,要mark掉,不然的一個彈msgbox
       MsgBox(xmldoc.DataSet.Tables(0).Rows(0)(0).ToString)
       '執行中秀出總共抓出共筆--正式時執行後,要mark掉,不然的一個彈msgbox
       MsgBox(xmldoc.DataSet.Tables(0).Rows.Count)

 

 

接下來關閉這個編輯視窗,回到控制流程,執行看看,以下為執行結果,可以看到的我目前指令碼工作還在執行中,並且秀出一個msgbox出來

image

第二個msgbox秀出你的web serices共回傳幾筆給你

image

這樣你就可以知道你抓web services的資料是否是正確的

 

 

如果到這邊都沒有問題才能繼續進行SSIS-如何接收web services的資料當做資料來源做轉檔這篇文章的部份

這樣,客倌您看的懂嗎?

若有問題可以給我迴響,大家來討論看看囉!

arrow
arrow
    全站熱搜

    丫德 發表在 痞客邦 留言(15) 人氣()