次の方法で共有


ReportingService2005.GetReportParameters Method

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

名前空間: Microsoft.WSSUX.ReportingServicesWebService.RSManagementService2005
アセンブリ: ReportService2005 (reportingservice2005.dll 内)

構文

'宣言
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/GetReportParameters", RequestNamespace:="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", ResponseNamespace:="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", Use:=SoapBindingUse.Literal, ParameterStyle:=SoapParameterStyle.Wrapped)> _
<SoapHeaderAttribute("ServerInfoHeaderValue", Direction:=SoapHeaderDirection.Out)> _
Public Function GetReportParameters ( _
    Report As String, _
    HistoryID As String, _
    ForRendering As Boolean, _
    Values As ParameterValue(), _
    Credentials As DataSourceCredentials() _
) As ReportParameter()
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/GetReportParameters", RequestNamespace="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", ResponseNamespace="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Wrapped)] 
[SoapHeaderAttribute("ServerInfoHeaderValue", Direction=SoapHeaderDirection.Out)] 
public ReportParameter[] GetReportParameters (
    string Report,
    string HistoryID,
    bool ForRendering,
    ParameterValue[] Values,
    DataSourceCredentials[] Credentials
)
[SoapDocumentMethodAttribute(L"https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/GetReportParameters", RequestNamespace=L"https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", ResponseNamespace=L"https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", Use=SoapBindingUse::Literal, ParameterStyle=SoapParameterStyle::Wrapped)] 
[SoapHeaderAttribute(L"ServerInfoHeaderValue", Direction=SoapHeaderDirection::Out)] 
public:
array<ReportParameter^>^ GetReportParameters (
    String^ Report, 
    String^ HistoryID, 
    bool ForRendering, 
    array<ParameterValue^>^ Values, 
    array<DataSourceCredentials^>^ Credentials
)
/** @attribute SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/GetReportParameters", RequestNamespace="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", ResponseNamespace="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Wrapped) */ 
/** @attribute SoapHeaderAttribute("ServerInfoHeaderValue", Direction=SoapHeaderDirection.Out) */ 
public ReportParameter[] GetReportParameters (
    String Report, 
    String HistoryID, 
    boolean ForRendering, 
    ParameterValue[] Values, 
    DataSourceCredentials[] Credentials
)
SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/GetReportParameters", RequestNamespace="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", ResponseNamespace="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Wrapped) 
SoapHeaderAttribute("ServerInfoHeaderValue", Direction=SoapHeaderDirection.Out) 
public function GetReportParameters (
    Report : String, 
    HistoryID : String, 
    ForRendering : boolean, 
    Values : ParameterValue[], 
    Credentials : DataSourceCredentials[]
) : ReportParameter[]

パラメータ

  • Report
    レポートの完全なパス名です。
  • HistoryID
    レポート履歴スナップショットの ID です。レポート履歴スナップショットのパラメータ プロパティを取得するには、ForRendering パラメータに値 true を設定します。レポート履歴スナップショットでないレポートのパラメータを取得する場合は、値に NULL (Visual Basic では Nothing) を設定します。
  • ForRendering
    パラメータ値をどのように使用するかを示す Boolean 式です。値 true が設定された場合、レポートの実行中に使用されたパラメータ データに基づくパラメータ プロパティが返されます。
  • Values
    レポート サーバーによって管理されるレポートのパラメータに対して検証されるパラメータ値 (ParameterValue オブジェクト) です。
  • Credentials
    クエリ パラメータを検証するために使用するデータ ソース資格情報 (DataSourceCredentials オブジェクト) です。

戻り値

レポートのパラメータの一覧を表す ReportParameter オブジェクトの配列です。

解説

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

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

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

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

指定したレポートにレポート パラメータが存在しない場合、空の 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()); 
      }
   }
}

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

ReportingService2005 Class
ReportingService2005 Members
Microsoft.WSSUX.ReportingServicesWebService.RSManagementService2005 Namespace