語言

ReportingService2005.GetReportParameters 方法

定義

回傳指定報告的參數屬性。 此 GetReportParameters(String, String, Boolean, ParameterValue[], DataSourceCredentials[]) 方法也可用於驗證參數值與指定報告的參數。

public:
 cli::array <ReportService2005::ReportParameter ^> ^ GetReportParameters(System::String ^ Report, System::String ^ HistoryID, bool ForRendering, cli::array <ReportService2005::ParameterValue ^> ^ Values, cli::array <ReportService2005::DataSourceCredentials ^> ^ Credentials);
public ReportService2005.ReportParameter[] GetReportParameters(string Report, string HistoryID, bool ForRendering, ReportService2005.ParameterValue[] Values, ReportService2005.DataSourceCredentials[] Credentials);
member this.GetReportParameters : string * string * bool * ReportService2005.ParameterValue[] * ReportService2005.DataSourceCredentials[] -> ReportService2005.ReportParameter[]
Public Function GetReportParameters (Report As String, HistoryID As String, ForRendering As Boolean, Values As ParameterValue(), Credentials As DataSourceCredentials()) As ReportParameter()

參數

Report
String

報告的完整路徑名稱。

HistoryID
String

報告歷史快照的識別碼。 將參數設 ForRendering 為 , true 以便取得報告歷史快照的參數屬性。 如果你要取得非報告歷史快照的報表參數,則在 Visual Basic 中將值設為 null (Nothing)。

ForRendering
Boolean

一個 Boolean 表示參數值應如何使用的表達式。 若設定為 true,回傳的參數屬性基於報告執行時所使用的參數資料。

Values
ParameterValue[]

可依照報告伺服器管理的報告參數進行驗證的參數值(ParameterValue 物件)。

Credentials
DataSourceCredentials[]

可用於驗證查詢參數的資料來源憑證(DataSourceCredentials 物件)。

傳回

一個物件陣列 ReportParameter ,列出報告的參數。

範例

要編譯此程式碼範例,您必須參考 Reporting Services WSDL 並匯入特定命名空間。 欲了解更多資訊,請參閱編 譯與執行程式碼範例。 以下程式碼範例使用此 GetReportParameters 方法,取得報告的參數元資料清單,並顯示每個參數的名稱:

Imports System  
Imports System.Web.Services.Protocols  

Class Sample  
   Public Shared Sub Main()  
      Dim rs As New ReportingService2005()  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials  

      Dim report As String = "/SampleReports/Employee Sales Summary"  
      Dim forRendering As Boolean = False  
      Dim historyID As String = Nothing  
      Dim values As ParameterValue() = Nothing  
      Dim credentials As DataSourceCredentials() = Nothing  
      Dim parameters As ReportParameter() = Nothing  

      Try  
         parameters = rs.GetReportParameters(report, historyID, forRendering, values, credentials)  

         If Not (parameters Is Nothing) Then  
            Dim rp As ReportParameter  
            For Each rp In parameters  
               Console.WriteLine("Name: {0}", rp.Name)  
            Next rp  
         End If  

      Catch e As SoapException  
         Console.WriteLine(e.Detail.InnerXml.ToString())  
      End Try  
   End Sub 'Main  
End Class 'Sample  
using System;  
using System.Web.Services.Protocols;  

class Sample  
{  
   public static void Main()  
   {  
      ReportingService2005 rs = new ReportingService2005();  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;  

      string report = "/SampleReports/Employee Sales Summary";  
      bool forRendering = false;  
      string historyID = null;  
      ParameterValue[] values = null;  
      DataSourceCredentials[] credentials = null;  
      ReportParameter[] parameters = null;  

      try  
      {  
         parameters = rs.GetReportParameters(report, historyID, forRendering, values, credentials);  

         if (parameters != null)  
         {  
            foreach (ReportParameter rp in parameters)  
            {  
               Console.WriteLine("Name: {0}", rp.Name);  
            }  
         }  
      }  

      catch (SoapException e)  
      {  
         Console.WriteLine(e.Detail.InnerXml.ToString());   
      }  
   }  
}  

備註

下表顯示此操作的標頭與權限資訊。

SOAP 標頭 (出局) ServerInfoHeaderValue
必要權限 ReadProperties

如果報告的執行設定是 Snapshot,回傳的參數元資料就是建立報告歷史快照時所使用的資料。 若報告的執行設定為 Live,回傳的參數元資料代表與指定報告相關的參數資料。

如果你為該參數提供一個值 HistoryID ,並將參數值設 ForRendering 為 true,回傳的參數元資料代表在建立報告歷史快照時所使用的參數資料。 若 ForRendering 設定為 false,則忽略 的值HistoryID。若ForRendering為 ,false則回傳的參數元資料代表目前與指定報告相關聯的參數資料。

如果任何參數值是基於查詢,且你想回傳查詢參數的有效值清單,請設 ForRendering 為 true。 此外,基於查詢的參數,你必須傳遞所有憑證資訊以回傳查詢參數。

使用 GetReportParameters 該方法驗證參數時,必須有參數 Values 。

若該報告不存在報表參數,則會回傳一個空 ReportParameter 陣列。

適用於