ReportingService2006.ListReportSubscriptions(String) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
检索给定报表的用户已创建的订阅的列表。
public:
cli::array <ReportService2006::Subscription ^> ^ ListReportSubscriptions(System::String ^ Report);
public ReportService2006.Subscription[] ListReportSubscriptions (string Report);
member this.ListReportSubscriptions : string -> ReportService2006.Subscription[]
Public Function ListReportSubscriptions (Report As String) As Subscription()
参数
- Report
- String
报表的完全限定 URL,其中包括文件名和 .rdl 文件扩展名。
返回
一个 Subscription 对象的数组,该数组包含用户针对给定报表创建的订阅。
示例
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;
ExtensionSettings extSettings;
string desc;
ActiveState active;
string status;
string eventType;
string matchData;
ParameterValue[] values = null;
Subscription[] subscriptions = null;
ParameterValueOrFieldReference[] extensionParams = null;
try
{
subscriptions =
rs.ListReportSubscriptions("http://<Server Name>" +
"/Docs/Documents/AdventureWorks Sample Reports/" +
"Sales Order Detail.rdl");
if (subscriptions != null)
{
// Retrieve properties for the first
// subscription in the list.
rs.GetSubscriptionProperties(
subscriptions[0].SubscriptionID,
out extSettings, out desc, out active,
out status, out eventType, out matchData,
out values);
Console.WriteLine("Description: {0}", desc);
Console.WriteLine("Status: {0}", status);
Console.WriteLine("EventType: {0}", eventType);
Console.WriteLine("matchData: {0}", matchData);
Console.WriteLine("Extension: {0}",
extSettings.Extension);
extensionParams = extSettings.ParameterValues;
if (extensionParams != null)
{
foreach (ParameterValueOrFieldReference
extensionParam in extensionParams)
{
Console.WriteLine((
(ParameterValue)extensionParam).Name +
": " + ((ParameterValue)
extensionParam).Value);
}
}
if (values != null)
{
foreach (ParameterValue pv in values)
{
Console.WriteLine("Name: {0}", pv.Name);
Console.WriteLine("Value: {0}", pv.Value);
}
}
}
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.OuterXml);
}
}
}
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 extSettings As ExtensionSettings
Dim desc As String
Dim active As ActiveState
Dim status As String
Dim eventType As String
Dim matchData As String
Dim values As ParameterValue() = Nothing
Dim subscriptions As Subscription() = Nothing
Dim extensionParams As _
ParameterValueOrFieldReference() = Nothing
Try
Dim report As String = "http://<Server Name>/Docs/" + _
"Documents/AdventureWorks Sample Reports/" + _
"Sales Order Detail.rdl"
subscriptions = rs.ListReportSubscriptions(report)
If Not (subscriptions Is Nothing) Then
rs.GetSubscriptionProperties( _
subscriptions(0).SubscriptionID, extSettings, _
desc, active, status, eventType, _
matchData, values)
Console.WriteLine("Description: {0}", desc)
Console.WriteLine("Status: {0}", status)
Console.WriteLine("EventType: {0}", eventType)
Console.WriteLine("matchData: {0}", matchData)
Console.WriteLine("Extension: {0}", _
extSettings.Extension)
extensionParams = extSettings.ParameterValues
If Not (extensionParams Is Nothing) Then
Dim extensionParam As _
ParameterValueOrFieldReference
For Each extensionParam In extensionParams
Console.WriteLine(( _
CType(extensionParam, _
ParameterValue).Name + ": " + _
CType(extensionParam, _
ParameterValue).Value))
Next extensionParam
End If
If Not (values Is Nothing) Then
Dim pv As ParameterValue
For Each pv In values
Console.WriteLine("Name: {0}", pv.Name)
Console.WriteLine("Value: {0}", pv.Value)
Next pv
End If
End If
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
End Sub
End Class
注解
下表显示了有关此操作的标头和权限信息。
SOAP 标头 | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
所需的权限 | 无 |
如果用户具有 <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts> 权限,此方法将返回所有订阅。 如果用户具有 <xref:Microsoft.SharePoint.SPBasePermissions.CreateAlerts> 权限,该方法将返回用户拥有的所有定时订阅。
若要执行 ListReportSubscriptions 该方法,用户需要“读取任何订阅”权限。