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
项的完全限定 URL,其中包括文件名(在 SharePoint 模式下,还有扩展名)。
- HistoryID
类型:System. . :: . .String
项历史记录快照的 ID。若要检索项历史记录快照的参数属性,请将 ForRendering 参数设置为值 true。如果要检索某个项的参数,而该项不是项历史记录快照,请将值设置为 nullNothingnullptrunitnull 引用(在 Visual Basic 中为 Nothing)(在 Visual Basic 中为 Nothing)。
- ForRendering
类型:System. . :: . .Boolean
一个指示将如何使用参数值的布尔值表达式。如果设置为值 true,则返回的参数属性基于项执行期间使用的参数数据。
- Values
类型:array<ReportService2010. . :: . .ParameterValue> [] () [] []
参数值(ParameterValue 对象),可以根据报表服务器管理的项的参数来验证这些参数值。
- Credentials
类型:array<ReportService2010. . :: . .DataSourceCredentials> [] () [] []
可用于验证查询参数的数据源凭据(DataSourceCredentials 对象)。
返回值
类型:array<ReportService2010. . :: . .ItemParameter> [] () [] []
一个 ItemParameter 对象的数组,该数组列出项的参数。
注释
The table below shows header and permissions information on this operation.
SOAP Header Usage |
(Out) ServerInfoHeaderValue |
Native Mode Required Permissions |
|
SharePoint Mode Required Permissions |
ViewListItems()()()() |
If the execution setting for the item is Snapshot, the parameter metadata that is returned is the data that was used when the item history snapshot was created. If the execution setting for the item is Live, the parameter metadata returned represents the parameter data that is associated with the specified item.
If you provide a value for the HistoryID parameter and set the ForRendering parameter value to true, the parameter metadata returned represents the parameter data that was used when the item history snapshot was created. The value supplied for HistoryID is ignored if ForRendering is set to false.If ForRendering is false, the parameter metadata returned represents the parameter data that is currently associated with the specified item.
If any parameters values are based on a query and you are interested in returning the query-based parameters' valid values list, set ForRendering to true. In addition, for query-based parameters, you must pass in all of the credential information required to return the query parameters.
When using the GetItemParameters method to validate parameters, the Values parameter is required.
If parameters do not exist for the given item, an empty ItemParameter array is returned.
示例
To compile this code example, you must reference the Reporting Services WSDL and import certain namespaces. For more information, see Compiling and Running Code Examples. The following code example uses the GetItemParameters method to retrieve a list of parameter metadata for a report and then displays the name of each parameter:
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());
}
}
}