Share via


ReportingService2005.CreateLinkedReport Method

Definition

Adds a new linked report to the report server database.

public:
 void CreateLinkedReport(System::String ^ Report, System::String ^ Parent, System::String ^ Link, cli::array <ReportService2005::Property ^> ^ Properties);
public void CreateLinkedReport (string Report, string Parent, string Link, ReportService2005.Property[] Properties);
member this.CreateLinkedReport : string * string * string * ReportService2005.Property[] -> unit
Public Sub CreateLinkedReport (Report As String, Parent As String, Link As String, Properties As Property())

Parameters

Report
String

The name of the new linked report.

Parent
String

The fully qualified URL of the parent folder to which to add the new report.

Link
String

The fully qualified URL of the report that will be used for the report definition.

Properties
Property[]

An array of Property objects that defines the property names and values to set for the linked report.

Examples

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 creates a linked report:

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 prop As New [Property]()  
      prop.Name = "Description"  
      prop.Value = "A new linked report"  
      Dim props(0) As [Property]  
      props(0) = prop  

      Try  
         rs.CreateLinkedReport("Employee Sales Report2", "/SampleReports", "/SampleReports/Employee Sales Summary", props)  

      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()  
   {  
      ReportingService2005 rs = new ReportingService2005();  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;  

      Property prop = new Property();  
      prop.Name = "Description";  
      prop.Value = "A new linked report";  
      Property[] props = new Property[1];  
      props[0] = prop;  

      try  
      {  
         rs.CreateLinkedReport("Employee Sales Report2", "/SampleReports",  
            "/SampleReports/Employee Sales Summary", props);  
      }  

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

Remarks

The table below shows header and permissions information on this operation.

SOAP Headers (In) BatchHeaderValue

(Out) ServerInfoHeaderValue
Required Permissions CreateReport on Parent AND ReadProperties on Report

The length of the Parent and Link parameters cannot exceed 260 characters; otherwise, a SOAP exception is thrown with the error code rsItemLengthExceeded.

The Parent and Link parameters cannot be null or empty or contain the following reserved characters: : ? ; @ & = + $ , \ * > < | . ". You can use the forward slash character (/) to separate items in the full path name of the folder, but you cannot use it at the end of the folder name.

A linked report has the same properties as a standard report, but it does not contain its own report definition. A linked report cannot reference another linked report.

The creator of a linked report must have permission to read the definition of the report that the linked report references; however, this level of permission is not required to run a linked report.

Using the CreateLinkedReport method changes the ModifiedBy and ModifiedDate properties of the parent folder.

Applies to