ReportingService2005.ListSubscriptions(String, String) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns a list of subscriptions that a user has created for a given report. The list includes both standard and data-driven subscriptions.
public:
cli::array <ReportService2005::Subscription ^> ^ ListSubscriptions(System::String ^ Report, System::String ^ Owner);
public ReportService2005.Subscription[] ListSubscriptions (string Report, string Owner);
member this.ListSubscriptions : string * string -> ReportService2005.Subscription[]
Public Function ListSubscriptions (Report As String, Owner As String) As Subscription()
Parameters
- Report
- String
The full path name of the report.
- Owner
- String
The user name for which to retrieve the subscriptions.
Returns
An array of Subscription objects that represent the user's subscriptions for a given report.
Examples
To compile the following code example, you must reference the Reporting Services WSDL and import certain namespaces. For more information, see Compiling and Running Code Examples. The following example code uses the ListSubscriptions method to retrieve a list of subscriptions for the Employee Sales Summary report, which is owned by the user myDomain\myUserName:
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 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
subscriptions = rs.ListSubscriptions("/SampleReports/Employee Sales Summary", "myDomain\myUserName")
If Not (subscriptions Is Nothing) Then
' Retrieve properties for the first subscription in the list.
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.OuterXml)
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;
ExtensionSettings extSettings;
string desc;
ActiveState active;
string status;
string eventType;
string matchData;
ParameterValue[] values = null;
Subscription[] subscriptions = null;
ParameterValueOrFieldReference[] extensionParams = null;
try
{
subscriptions = rs.ListSubscriptions("/SampleReports/Employee Sales Summary",
@"myDomain\myUserName");
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);
}
}
}
Remarks
The table below shows header and permissions information on this operation.
SOAP Headers | (Out) ServerInfoHeaderValue |
Required Permissions | (ReadSubscription on the report AND the user is the subscription owner) OR ReadAnySubscription |
You can supply a null
(Nothing
in Visual Basic) value for the Owner
and Report
parameters. The information that the ListSubscriptions method returns varies depending on the parameters that are submitted:
If the values of both
Owner
andReport
arenull
, the method returns all subscriptions for all reports that the current user has permission to view.If only the
Owner
parameter is submitted, the method returns all subscriptions for all reports that the specified user has created and has permission to view.If only the
Report
parameter is submitted, the method returns all subscriptions for all users of the specified report that the current user has permission to view.If valid values are supplied for both the
Owner
parameter andReport
parameter, the method returns all subscriptions for the specified report that the specified user created and has permission to view.