ReportingService2006.GetReportParameters Method

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

名前空間: ReportService2006
アセンブリ: ReportService2006 (reportservice2006.dll 内)

構文

'宣言
Public Function GetReportParameters ( _
    Report As String, _
    HistoryID As String, _
    Values As ParameterValue(), _
    Credentials As DataSourceCredentials() _
) As ReportParameter()
public ReportParameter[] GetReportParameters (
    string Report,
    string HistoryID,
    ParameterValue[] Values,
    DataSourceCredentials[] Credentials
)
public:
array<ReportParameter^>^ GetReportParameters (
    String^ Report, 
    String^ HistoryID, 
    array<ParameterValue^>^ Values, 
    array<DataSourceCredentials^>^ Credentials
)
public ReportParameter[] GetReportParameters (
    String Report, 
    String HistoryID, 
    ParameterValue[] Values, 
    DataSourceCredentials[] Credentials
)
public function GetReportParameters (
    Report : String, 
    HistoryID : String, 
    Values : ParameterValue[], 
    Credentials : DataSourceCredentials[]
) : ReportParameter[]

パラメータ

  • Report
    ファイル名と .rdl ファイル名拡張子を含む、レポートの完全修飾 URL です。
  • HistoryID
    レポート履歴スナップショットの ID です。レポート履歴スナップショットのパラメータ プロパティを取得するには、ForRendering パラメータに値 true を設定します。レポート履歴スナップショットでないレポートのパラメータを取得する場合は、値に NULL (Visual Basic では Nothing) を設定します。
  • Values
    レポートのパラメータに対して検証できるパラメータ値 (ParameterValue オブジェクト) です。
  • Credentials
    クエリ パラメータを検証するために使用するデータ ソース資格情報 (DataSourceCredentials オブジェクト) です。

戻り値

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

解説

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

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

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

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

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

使用例

using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;

class Sample
{
    static void Main(string[] args)
    {
        ReportingService2006 rs = new ReportingService2006();
        rs.Url = "http://<Server Name>/_vti_bin/ReportServer/" +
            "ReportService2006.asmx";
        rs.Credentials = 
            System.Net.CredentialCache.DefaultCredentials;

        string report = "http://<Server Name>/Docs/Documents" +
            "/AdventureWorks Sample Reports/" +
            "Employee Sales Summary.rdl";
        string historyID = null;
        ParameterValue[] values = null;
        DataSourceCredentials[] credentials = null;
        ReportParameter[] parameters = null;

        try
        {
            parameters = rs.GetReportParameters(report, historyID, 
                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());
        }
    }
}
Imports System
Imports System.IO
Imports System.Text
Imports System.Web.Services
Imports System.Web.Services.Protocols

Class Sample

    Public Shared Sub Main()

        Dim rs As New ReportingService2006()
        rs.Url = "http://<Server Name>/_vti_bin/" + _
            "ReportServer/ReportService2006.asmx"
        rs.Credentials = _
            System.Net.CredentialCache.DefaultCredentials

        Dim report As String = "http://<Server Name>" + _
            "/Docs/Documents/AdventureWorks Sample Reports" + _
            "/Employee Sales Summary.rdl"
        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, _
                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

End Class

スレッド セーフ

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

プラットフォーム

開発プラットフォーム

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

対象プラットフォーム

Windows 98, Windows 2000, Windows 2000 Server, Windows CE, Windows Server 2008, Windows 98 Second Edition, Pocket PC, Smart Phone, Windows Server 2003, Windows XP Professional with Service Pack 2 (SP2), Windows 2000 Professional, Windows 2000 Advanced Server, Windows XP Home Edition, サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。, Windows Vista, Windows Mobile 5.0, Windows Mobile 2003 for Pocket PC, Windows CE 5.0

参照

関連項目

ReportingService2006 Class
ReportingService2006 Members
ReportService2006 Namespace