Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
MSDN Library

ReportingService2006.GetReportDefinition Method

Retrieves the report definition for a report.

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

public byte[] GetReportDefinition(
	string Report
)

Parameters

Report
Type: String
The fully qualified URL of the report including the file name and .rdl file name extension.

Return Value

Type: Byte[]
The report definition as a Base 64-encoded byte array. For more information about this data type, see "Byte Structure" in the Microsoft .NET Framework documentation.

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

SOAP Headers

(In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue

Required Permissions

OpenItems

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;

        string reportName = "http://<Server Name>/Docs/Documents" +
            "/AdventureWorks Sample Reports/Sales Order Detail.rdl";
        byte[] reportDefinition = null;
        System.Xml.XmlDocument doc = new System.Xml.XmlDocument();

        try
        {
            reportDefinition = rs.GetReportDefinition(reportName);
            MemoryStream stream = new MemoryStream(reportDefinition);

            string myDocumentsFolder = 
                Environment.GetFolderPath(
                    Environment.SpecialFolder.Personal);

            doc.Load(stream);
            doc.Save(Path.Combine(myDocumentsFolder, 
                "Sales Order Detail.rdl"));
        }
        catch (SoapException e)
        {
            Console.WriteLine(e.Detail.InnerXml.ToString());
        }
        catch (IOException e)
        {
            Console.WriteLine(e.Message);
        }
    }
}

Community Additions

Show:
© 2015 Microsoft