2017-10-20 110 views
1

我需要從我們的API獲取XML響應並在SSRS中進行查詢。在我的自定義代碼中,使用System.Net.Webclient,我查詢我們的API並獲得結果。這裏是通過VB代碼。將動態XML添加到SSRS中的數據源

Public Function getXML() As String 

    Dim client = New System.Net.WebClient() 

    client.Headers.Add("Authorization", "MY TOKEN HERE") 

    client.Headers.Add(System.Net.HttpRequestHeader.Accept, "text/xml") 
    Dim RestURL = "MY_URL_HERE" 
    Dim text = client.DownloadString(RestURL) 
Return text 
End Function 

正如你所看到的,這將返回一個字符串。我添加一個數據源並將其設置爲這個XML字符串,但這不起作用。我嘗試創建一個XElement和XDocument對象並將其傳遞,但​​這也不起作用。在處理ConnectString表達式期間出現錯誤任何幫助,將不勝感激。

我知道我的代碼返回一個XML字符串。我通過添加到文本框進行檢查。

+0

看看這個MSDN教程幫助:https://technet.microsoft.com/en-us/library/ aa964129(v = SQL.90)的.aspx – jdweng

回答

0

對於那些有興趣,我只喂線直接進入SQL服務器和查詢它有

declare @myDoc xml 


set @myDoc [email protected] --fed to a parameter first and then into the query 


;WITH XMLNAMESPACES(DEFAULT 'http://<custom namespace here>') 
SELECT x.v.value('name[1]', 'VARCHAR(MAX)') as name, 
     x.v.value('date[1]', 'date') as date, 
     x.v.value('ID[1]', 'VARCHAR(max)') as ID, 
     x.v.value('Title[1]', 'VARCHAR(max)') as Title 

FROM @myDoc.nodes('/root/xyz') x(v) 
相關問題