共用方式為


第 1 課:定義 Reporting Services Web 服務的報表資料集

更新: 2006 年 4 月 14 日

請利用下列步驟,瞭解如何指定資料來源連接,以及如何從 Web 服務傳回 XML 資料。在這一課,您要透過呼叫報表伺服器 Web 服務 ListChildren 方法建立資料集,此方法會傳回一份清單,內含報表伺服器資料庫根資料夾中的所有項目。您還要定義 ListChildren 方法所需的參數,並設定預設值為從根資料夾開始逐一查看階層。Web 服務所定義的項目屬性,在 [資料集] 視窗中會顯示為資料集的欄位。最後,您會將資料集欄位拖曳至報表配置中,以設計您的報表。當您預覽報表時,便會看到報表伺服器資料庫中的項目和項目屬性,例如報表、資料夾和資料來源。

定義 XML 資料來源、資料集和查詢

  1. 開啟瀏覽器視窗,然後輸入 https://localhost/reportserver/reportservice2005.asmx?wsdl,以取得報表伺服器 Web 服務的命名空間資訊。稍後您會在查詢中指定命名空間。

    ms345338.note(zh-tw,SQL.90).gif附註:
    如果當您嘗試這麼做時,在瀏覽器中未收到 XML WSDL 定義回應,請查閱<教學課程:在報表中使用 XML 資料>的需求部分。
    ms345338.note(zh-tw,SQL.90).gif附註:
    每個版次的命名空間版本資訊可能會不同。若要確認您所使用之報表伺服器的命名空間資訊,可以產生 WSDL,以確認您的 Web 服務參考正確無誤。命名空間的格式為 https://schemas.microsoft.com/sqlserver/<year>/<month>/<day>/reporting/reportingservices。
  2. 啟動報表設計師,並建立新的報表。如果您不知道如何建立報表,請參閱<教學課程:建立基本報表>。

  3. 在 [資料] 檢視中,選取 [新增資料集]。輸入資料集的名稱 (例如 XMLDataSet)。

  4. [資料集] 對話方塊的 [資料來源] 中,選取 [新增資料來源]。此時會出現 [資料來源] 對話方塊。

  5. 輸入資料來源的名稱 (例如 XMLDataSource)。

  6. [類型] 中,選取 [XML]

  7. [連接字串] 中,輸入下列報表伺服器 Web 服務的 URL:

    https://localhost/reportserver/reportservice2005.asmx
    

    此對話方塊應該看起來類似下圖:

    XML 資料來源類型的螢幕擷取畫面

    ms345338.note(zh-tw,SQL.90).gif附註:
    在 SQL Server 2005 Reporting Services (SSRS) Service Pack 2 (SP2) 和更新版本中,以 SharePoint 整合模式執行的報表伺服器應使用下列連接字串:http://<servername>/_vti_bin/ReportServer/ReportService2006.asmx
  8. [認證] 索引標籤中,選取 [使用 Windows 驗證 (整合式安全性)]

  9. 按一下 [確定] 以儲存您的變更,並關閉 [資料來源] 對話方塊。

  10. [資料集] 對話方塊中,利用您在步驟 1 驗證的命名空間版本資訊來輸入下列查詢:

    <Query>
    <SoapAction>https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/ListChildren</SoapAction>
    </Query>
    

    此對話方塊應該看起來類似下圖:

    顯示 XML 資料集的螢幕擷取畫面

  11. [資料集] 對話方塊的 [參數] 索引標籤中,輸入兩個參數。這些是 ListChildren 方法的參數,用來指定報表伺服器資料夾階層的開始位置,以及是否要包含所有的巢狀資料夾:

    Item

    Recursive

    ms345338.note(zh-tw,SQL.90).gif附註:
    在 SP2 和更新版本中只能使用 Item 參數。
  12. Item 設定為 /。移除報表設計師加入的「=」。/ 符號會指定報表伺服器資料夾命名空間的根節點。

    ms345338.note(zh-tw,SQL.90).gif附註:
    在 SP2 和更新版本中,如果 Reporting Services 是以 SharePoint 整合模式執行,則此參數必須是 SharePoint 頂層網站、資料夾或文件庫的 URL。例如,http://<servername>/<top level site>http://<servername>/<top level site>/<folder>http://<servername>/<top level site>/<document library>
  13. Recursive 設定為 1。移除報表設計師加入的「=」。

    此對話方塊應該看起來類似下圖:

    顯示含參數之 XML 資料集的螢幕擷取畫面

  14. 按一下 [確定]。資料集會加入 [資料集] 視窗中。

  15. 按一下 [執行 (!)],以檢視結果集。如果報表伺服器資料庫包含報表和其他項目,您應該看到每一個項目的資料列。

    ms345338.note(zh-tw,SQL.90).gif附註:
    如果收到「執行查詢時發生錯誤」的錯誤訊息,請檢查是否有按照步驟 11 中所描述的方式設定參數。ListChildren 方法需要有 ItemRecursive 參數。
  16. 按一下工具列上的 [重新整理欄位] (重新整理資料集欄位) 按鈕。這時就會儲存報表定義,並且更新 [報表資料集] 視窗中的欄位檢視,以顯示您可使用的所有欄位。

    此對話方塊應該看起來類似下圖:

    顯示資料集欄位和查詢結果的螢幕擷取畫面

後續的步驟

您已順利使用報表伺服器 Web 服務,為報表伺服器資料庫項目定義了報表資料集的中繼資料。當您處理報表時,就會從報表伺服器資料庫中擷取資料集中繼資料所代表的資料。下一步,您可以從傳回 XML System.Data.DataSet object 的 Web 服務建立報表資料集。請參閱<第 2 課:從 Web 服務定義 ADO.NET 資料集的報表資料集>。

請參閱

概念

Reporting Services 教學課程

其他資源

定義 XML 資料的報表資料集
連接到資料來源
定義報表資料集
如何:建立或編輯報表特定資料來源 (報表設計師)
如何:建立資料集 (報表設計師)
使用報表資料集中的欄位
如何:加入、編輯或刪除資料集視窗中的欄位 (報表設計師)
報表資料集 (報表設計師)

說明及資訊

取得 SQL Server 2005 協助