次の方法で共有


GetItemParameters メソッド

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

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

構文

'宣言
<SoapHeaderAttribute("TrustedUserHeaderValue")> _
<SoapHeaderAttribute("ServerInfoHeaderValue", Direction := SoapHeaderDirection.Out)> _
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetItemParameters", RequestNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",  _
    ResponseNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",  _
    Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function GetItemParameters ( _
    ItemPath As String, _
    HistoryID As String, _
    ForRendering As Boolean, _
    Values As ParameterValue(), _
    Credentials As DataSourceCredentials() _
) As ItemParameter()
'使用
Dim instance As ReportingService2010
Dim ItemPath As String
Dim HistoryID As String
Dim ForRendering As Boolean
Dim Values As ParameterValue()
Dim Credentials As DataSourceCredentials()
Dim returnValue As ItemParameter()

returnValue = instance.GetItemParameters(ItemPath, _
    HistoryID, ForRendering, Values, _
    Credentials)
[SoapHeaderAttribute("TrustedUserHeaderValue")]
[SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)]
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetItemParameters", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", 
    ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public ItemParameter[] GetItemParameters(
    string ItemPath,
    string HistoryID,
    bool ForRendering,
    ParameterValue[] Values,
    DataSourceCredentials[] Credentials
)
[SoapHeaderAttribute(L"TrustedUserHeaderValue")]
[SoapHeaderAttribute(L"ServerInfoHeaderValue", Direction = SoapHeaderDirection::Out)]
[SoapDocumentMethodAttribute(L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetItemParameters", RequestNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", 
    ResponseNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", 
    Use = SoapBindingUse::Literal, ParameterStyle = SoapParameterStyle::Wrapped)]
public:
array<ItemParameter^>^ GetItemParameters(
    String^ ItemPath, 
    String^ HistoryID, 
    bool ForRendering, 
    array<ParameterValue^>^ Values, 
    array<DataSourceCredentials^>^ Credentials
)
[<SoapHeaderAttribute("TrustedUserHeaderValue")>]
[<SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)>]
[<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetItemParameters", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", 
    ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)>]
member GetItemParameters : 
        ItemPath:string * 
        HistoryID:string * 
        ForRendering:bool * 
        Values:ParameterValue[] * 
        Credentials:DataSourceCredentials[] -> ItemParameter[] 
public function GetItemParameters(
    ItemPath : String, 
    HistoryID : String, 
    ForRendering : boolean, 
    Values : ParameterValue[], 
    Credentials : DataSourceCredentials[]
) : ItemParameter[]

パラメーター

  • ItemPath
    型: System. . :: . .String
    ファイル名と拡張子 (SharePoint モードの場合) を含む、アイテムの完全修飾 URL です。
  • HistoryID
    型: System. . :: . .String
    アイテム履歴スナップショットの ID です。アイテム履歴スナップショットのパラメーター プロパティを取得するには、ForRendering パラメーターに値 true を設定します。アイテム履歴スナップショットでないアイテムのパラメーターを取得する場合は、値に NULL (Visual Basic では Nothing) を設定します。
  • ForRendering
    型: System. . :: . .Boolean
    パラメーター値をどのように使用するかを示す Boolean 式です。値 true が設定された場合、アイテムの実行中に使用されたパラメーター データに基づくパラメーター プロパティが返されます。

戻り値

型: array<ReportService2010. . :: . .ItemParameter> [] () [] []
アイテムのパラメーターの一覧を表す ItemParameter オブジェクトの配列です。

説明

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

SOAP ヘッダーの使用方法

(In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue

ネイティブ モードで必要な権限

ReadProperties

SharePoint モードで必要な権限

ViewListItems()()()()

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

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

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

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

指定したアイテムにパラメーターが存在しない場合、空の ItemParameter 配列が返されます。

使用例

このコード例をコンパイルするには、Reporting Services の WSDL を参照し、特定の名前空間をインポートする必要があります。詳細については、「Compiling and Running Code Examples」を参照してください。次のコード例では、GetItemParameters メソッドを使用してレポートのパラメーター メタデータの一覧を取得し、次に各パラメーター名を表示します。

Imports System
Imports System.Web.Services.Protocols

Class Sample
   Public Shared Sub Main()
      Dim rs As New ReportingService2010()
      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 ItemParameter() = Nothing

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

         If Not (parameters Is Nothing) Then
            Dim rp As ItemParameter
            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()
   {
      ReportingService2010 rs = new ReportingService2010();
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

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

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

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

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