CreateReport Method
TOC
Collapse the table of content
Expand the table of content

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

 

Adds a new report to a SharePoint library.

Namespace:   ReportService2006
Assembly:  ReportService2006 (in ReportService2006.dll)

public CatalogItem CreateReport(
	string Report,
	string Parent,
	bool Overwrite,
	byte[] Definition,
	Property[] Properties,
	out Warning[] Warnings
)

Parameters

Report
Type: System.String

The name of the new report including the file name and .rdl file name extension.

Parent
Type: System.String

The fully qualified URL for the parent folder that will contain the report.

Overwrite
Type: System.Boolean

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

Definition
Type: System.Byte[]

The report definition to publish to the report server, which is the content of an .rdl file. The XML data is defined by the http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition/ Report Definition Language .

Properties
Type: ReportService2006.Property[]

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

Warnings
Type: ReportService2006.Warning[]

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

Return Value

Type: ReportService2006.CatalogItem

A CatalogItem object for the newly created report.

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

SOAP Headers

(In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue

Required Permissions

Creating a new report: AddListItems on Parent AND ViewListItems on data sources and datasets defined in Definition

Updating an existing report: EditListItems on Report AND ViewListItems on data sources and datasets defined in Definition

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 a SharePoint library modifies the ModifiedBy and ModifiedDate properties of the parent folder.

If the .rdl file name extension is excluded from the report name, an rsFileExtensionRequired error will be returned.

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;

        Byte[] definition = null;
        Warning[] warnings = null;
        string name = "MyReport.rdl";

        try
        {
            FileStream stream = File.OpenRead("MyReport.rdl");
            definition = new Byte[stream.Length];
            stream.Read(definition, 0, (int)stream.Length);
            stream.Close();
        }
        catch (IOException e)
        {
            Console.WriteLine(e.Message);
        }

        try
        {
            string parent = "http://<Server Name>/Docs/Documents/";
            CatalogItem report = rs.CreateReport(name, parent,
                        false, definition, null, out warnings);

            if (warnings != null)
            {
                foreach (Warning warning in warnings)
                {
                    Console.WriteLine(warning.Message);
                }
            }

            else
                Console.WriteLine("Report: {0} created successfully " +
                                  " with no warnings", name);
        }
        catch (SoapException e)
        {
            Console.WriteLine(e.Detail.InnerXml.ToString());
        }
    }
}
Return to top
Show:
© 2016 Microsoft