ReportingService2005.CreateReport(String, String, Boolean, Byte[], Property[]) ReportingService2005.CreateReport(String, String, Boolean, Byte[], Property[]) ReportingService2005.CreateReport(String, String, Boolean, Byte[], Property[]) Method


Adds a new report to the report server database.

 cli::array <ReportService2005::Warning ^> ^ CreateReport(System::String ^ Report, System::String ^ Parent, bool Overwrite, cli::array <System::Byte> ^ Definition, cli::array <ReportService2005::Property ^> ^ Properties);
public ReportService2005.Warning[] CreateReport (string Report, string Parent, bool Overwrite, byte[] Definition, ReportService2005.Property[] Properties);
Public Function CreateReport (Report As String, Parent As String, Overwrite As Boolean, Definition As Byte(), Properties As Property()) As Warning()


String String String

The name of the new report.

String String String

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

Boolean Boolean Boolean

A Boolean expression that indicates whether an existing report with the same name in the location specified should be overwritten.


The report definition to publish to the report server, which is the content of an .rdl file. The XML data is defined by the Report Definition Language .


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


An array of Warning objects that describes any warnings that occurred when the report definition was validated.


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 publishes a report in the form of a Report Definition Language (RDL) file to a report server database.

Imports System  
Imports System.IO  
Imports System.Web.Services.Protocols  
Class Sample  
   Public Shared Sub Main()  
      Dim rs As New ReportingService2005()  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials  
      Dim definition As [Byte]() = Nothing  
      Dim warnings As Warning() = Nothing  
      Dim name As String = "MyReport"  
         Dim stream As FileStream = File.OpenRead("MyReport.rdl")  
         definition = New [Byte](stream.Length - 1) {}  
         stream.Read(definition, 0, CInt(stream.Length - 1))  
      Catch e As IOException  
      End Try  
         warnings = rs.CreateReport(name, "/Samples", False, definition, Nothing)  
         If Not (warnings Is Nothing) Then  
            Dim warning As Warning  
            For Each warning In  warnings  
            Next warning  
            Console.WriteLine("Report: {0} created successfully with no warnings", name)  
         End If  
      Catch e As SoapException  
      End Try  
   End Sub 'Main   
End Class 'Sample  
using System;  
using System.IO;  
using System.Web.Services.Protocols;  
class Sample  
   public static void Main()  
      ReportingService2005 rs = new ReportingService2005();  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;  
      Byte[] definition = null;  
      Warning[] warnings = null;  
      string name = "MyReport";  
         FileStream stream = File.OpenRead("MyReport.rdl");  
         definition = new Byte[stream.Length];  
         stream.Read(definition, 0, (int) stream.Length);  
      catch(IOException e)  
         warnings = rs.CreateReport(name, "/Samples", false, definition, null);  
         if (warnings != null)  
            foreach (Warning warning in warnings)  
            Console.WriteLine("Report: {0} created successfully with no warnings", name);  
      catch (SoapException e)  


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

SOAP Headers (In) BatchHeaderValue

(Out) ServerInfoHeaderValue
Required Permissions Creating a new report: CreateReport on Parent AND ReadProperties on the report's data sources AND ReadProperties on the report's datasets

Updating an existing report: UpdateReportDefinition on Report AND UpdateProperties on Report (if Properties contains properties) AND UpdateProperties on the report's data sources AND UpdateProperties on the report's datasets

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

The Parent parameter 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.

If errors occur, the report is not created.

Adding a report to the report server database modifies the ModifiedBy and ModifiedDate properties of the parent folder.

Applies to