使用 URL 存取整合 Reporting Services - Web 應用程式
Reporting Services 中的 URL 存取是設計來啟用透過網路存取個別報表。 這種類型的存取最適於將報表檢視與導覽整合到自訂 Web 應用程式。 若要在 Web 應用程式中使用 URL 存取,您可以:
從網站或是入口網站將 URL 定址到特定的報表伺服器。
使用表單 POST 方法,並使用表單欄位將查詢字串參數傳遞到報表伺服器 URL。
透過直接尋址的 URL 存取
若要使用 URL 存取報表伺服器或報表伺服器資料庫專案,請從網頁瀏覽器或應用程式內提供 URL 位址。 您也可以提供參數給 URL,這將可影響正在存取的報表或資源的外觀。 URL 可以透過網頁瀏覽器的位址列來鎖定報表伺服器,或者 URL 可以是較大的 Web 應用程式或是入口網站一部分之 IFrame 的來源。 您可以在入口網站的各種網頁上加入報表的超連結,並以報表的特定框架為目標,或在程序中開啟新的瀏覽器視窗。
在下列範例中,超連結會鎖定名為 "main" 的框架,這可能與包含超連結的框架不同。 超連結可能是 Web 入口網站的一部分。
<a href="https://server/reportserver?/SampleReports/Territory Sales
Drilldown&rs:Command=Render&rc:LinkTarget=main" target="main" >
Click here for the Territory Sales Drilldown sample report
</a>
在上一個範例中,LinkTarget 的裝置資訊設定會以URL查詢字串中的 「main」 值傳遞,這可確保報表中的任何鑽研超連結也會以名為 「main」 的框架為目標。
如需裝置資訊設定的詳細資訊,請參閱將裝置資訊設定傳遞至轉譯延伸模組。
許多伺服器和瀏覽器會限制 URL 中允許的字元數。 在某些情況下,會加諸 256 個字元的限制。 若要解決此限制,您可以使用表單提交來使用 POST 要求。
注意
Internet Explorer 最大的 URL 長度為 2,083 個字元。 這個限制適用於 POST 與 GET 要求 URL。 不過,在提交名稱/值組做為表單一部分時,POST 並未受到 URL 大小的限制,因為會在標頭中而不是 URL 中傳輸它們。
透過表單 POST 方法存取 URL
當使用者使用 URL 存取從報表伺服器要求資料時,HTTP 要求會使用 GET 方法。 此要求相當於 METHOD=“GET” 的表單提交。 使用 METHOD="GET" 的 URL 要求或是表單提交受限於伺服器或網頁瀏覽器可以處理的最大字元數目。
透過 POST 要求 (METHOD="POST" 與輸入欄位),會在標頭中而不是 URL 中傳輸名稱/值組。 因此,查詢字串的名稱/值組不是URL的一部分,因此可讓您提供較長且更複雜的參數清單。
用戶可以使用直接存取來查看報表伺服器的 URL。 使用者可以修改查詢字串,或記下特定 URL 要求和報表伺服器參數以供稍後使用。
下列範例 HTML 示範表單的使用,您可以透過特定的 URL 來使用目標報表伺服器,並將查詢字串參數以表單的輸入欄位之一部分來傳遞。
<FORM id="frmRender" action="https://server/reportserver?/SampleReports/
Territory Sales Drilldown" method="post" target="_self">
<INPUT type="hidden" name="rs:Command" value="Render">
<INPUT type="hidden" name="rc:LinkTarget" value="main">
<INPUT type="hidden" name="rs:Format" value="HTML4.0">
<INPUT type="submit" value="Button">
</FORM>
在上一個範例中,如果使用者選取窗體上的按鈕,報表伺服器會傳回以目前框架為目標的 HTML 轉譯報表。 下列範例是類似的 URL 存取字串:
https://server/reportserver?/SampleReports/Territory Sales
Drilldown&rs:Command=Render&rc:LinkTarget=main&rs:Format=HTML4.0