次の方法で共有


ReportingService2005.GetReportParameters メソッド

指定したレポートのレポート パラメーター プロパティを返します。 GetReportParameters メソッドは、レポートのパラメーターで指定したパラメーター値を検証するために使用することもできます。

名前空間:  ReportService2005
アセンブリ:  ReportService2005 (ReportService2005.dll)

構文

'宣言
Public Function GetReportParameters ( _
    Report As String, _
    HistoryID As String, _
    ForRendering As Boolean, _
    Values As ParameterValue(), _
    Credentials As DataSourceCredentials() _
) As ReportParameter()
'使用
Dim instance As ReportingService2005 
Dim Report As String 
Dim HistoryID As String 
Dim ForRendering As Boolean 
Dim Values As ParameterValue()
Dim Credentials As DataSourceCredentials()
Dim returnValue As ReportParameter()

returnValue = instance.GetReportParameters(Report, _
    HistoryID, ForRendering, Values, _
    Credentials)
public ReportParameter[] GetReportParameters(
    string Report,
    string HistoryID,
    bool ForRendering,
    ParameterValue[] Values,
    DataSourceCredentials[] Credentials
)
public:
array<ReportParameter^>^ GetReportParameters(
    String^ Report, 
    String^ HistoryID, 
    bool ForRendering, 
    array<ParameterValue^>^ Values, 
    array<DataSourceCredentials^>^ Credentials
)
member GetReportParameters : 
        Report:string * 
        HistoryID:string * 
        ForRendering:bool * 
        Values:ParameterValue[] * 
        Credentials:DataSourceCredentials[] -> ReportParameter[] 
public function GetReportParameters(
    Report : String, 
    HistoryID : String, 
    ForRendering : boolean, 
    Values : ParameterValue[], 
    Credentials : DataSourceCredentials[]
) : ReportParameter[]

パラメーター

  • Report
    型: System.String
    レポートの完全なパス名です。
  • HistoryID
    型: System.String
    レポート履歴スナップショットの ID です。 レポート履歴スナップショットのパラメーター プロパティを取得するには、ForRendering パラメーターに値 true を設定します。 レポート履歴スナップショットでないレポートのパラメーターを取得する場合は、値に nullNULL 参照 (Visual Basic では Nothing) (Visual Basic では Nothing) を設定します。
  • ForRendering
    型: System.Boolean
    パラメーター値をどのように使用するかを示す Boolean 式です。 値 true が設定された場合、レポートの実行中に使用されたパラメーター データに基づくパラメーター プロパティが返されます。
  • Values
    型: array<ReportService2005.ParameterValue[]
    レポート サーバーによって管理されるレポートのパラメーターに対して検証されるパラメーター値 (ParameterValue オブジェクト) です。

戻り値

型: array<ReportService2005.ReportParameter[]
レポートのパラメーターの一覧を表す ReportParameter オブジェクトの配列です。

説明

次の表に、この操作に関連するヘッダーおよび権限の情報を示します。

SOAP ヘッダー

(Out) ServerInfoHeaderValue

必要な権限

ReadProperties

レポートの実行設定が Snapshot の場合は、レポート履歴スナップショットが作成されたときに使用されたデータがパラメーター メタデータとして返されます。 レポートの実行設定が Live の場合、返されるパラメーター メタデータは、指定したレポートに関連付けられたパラメーター データを表します。

HistoryID パラメーターに値を指定し、ForRendering パラメーターの値が true に設定されている場合、返されるパラメーター メタデータは、レポート履歴スナップショットが作成されたときに使用されたパラメーター データを表します。 ForRendering が false に設定されている場合、HistoryID で指定した値は無視されます。ForRendering が false の場合、返されるパラメーター メタデータは、指定したレポートに現在関連付けられているパラメーター データを表します。

任意のパラメーター値がクエリに基づいており、クエリに基づいたパラメーターの有効な値の一覧を取得する場合は、ForRendering を true に設定します。 また、クエリに基づいたパラメーターには、クエリ パラメーターを返すために必要なすべての資格情報を渡す必要があります。

GetReportParameters メソッドを使用してパラメーターを検証する場合は、Values パラメーターが必須です。

指定したレポートにレポート パラメーターが存在しない場合、空の ReportParameter 配列が返されます。

使用例

このコード例をコンパイルするには、Reporting Services の WSDL を参照し、特定の名前空間をインポートする必要があります。 詳細については、「Compiling and Running Code Examples」を参照してください。 次のコード例では、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()); 
      }
   }
}

関連項目

参照

ReportingService2005 クラス

ReportService2005 名前空間