ReportingService2006.GetReportDefinition(String) Método

Definición

Recupera la definición de informe para un informe.

public:
 cli::array <System::Byte> ^ GetReportDefinition(System::String ^ Report);
public byte[] GetReportDefinition (string Report);
member this.GetReportDefinition : string -> byte[]
Public Function GetReportDefinition (Report As String) As Byte()

Parámetros

Report
String

Dirección URL completa del informe, incluidos el nombre y la extensión de nombre de archivo .rdl.

Devoluciones

Byte[]

Definición de informe como matriz de bytes codificada en Base 64. Para obtener más información acerca de este tipo de datos, vea "Estructura de bytes" en la documentación de Microsoft .NET Framework.

Ejemplos

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);  
        }  
    }  
}  
Imports System  
Imports System.IO  
Imports System.Text  
Imports System.Web.Services  
Imports System.Web.Services.Protocols  

Class Sample  

    Public Shared Sub Main()  

        Dim rs As New ReportingService2006()  
        rs.Url = "http://<Server Name>" + _  
            "/_vti_bin/ReportServer/ReportService2006.asmx"  
        rs.Credentials = _  
            System.Net.CredentialCache.DefaultCredentials  

        Dim reportName As String = "http://<Server Name>" + _  
            "/Docs/Documents/AdventureWorks Sample Reports" + _  
            "/Sales Order Detail.rdl"  
        Dim reportDefinition As Byte() = Nothing  
        Dim doc As New System.Xml.XmlDocument  

        Try  
            reportDefinition = rs.GetReportDefinition(reportName)  
            Dim stream As New MemoryStream(reportDefinition)  

            Dim myDocumentsFolder As String = _  
                My.Computer.FileSystem.SpecialDirectories.MyDocuments  
            doc.Load(stream)  
            doc.Save(Path.Combine(myDocumentsFolder, _  
                "Sales Order Detail.rdl"))  

        Catch e As SoapException  
            Console.WriteLine(e.Detail.InnerXml.ToString())  
        Catch e As IOException  
            Console.WriteLine(e.Message)  
        End Try  

    End Sub  

End Class  

Comentarios

En la siguiente tabla se muestra la información de encabezado y de permisos de esta operación.

Encabezados SOAP (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
Permisos necesarios <xref:Microsoft.SharePoint.SPBasePermissions.OpenItems>

Se aplica a