Condividi tramite


ReportingService2005.GetReportDefinition(String) Metodo

Definizione

Recupera la definizione di un report.

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()

Parametri

Report
String

Nome e percorso completo del report.

Restituisce

Byte[]

Definizione del report come matrice di byte codificata in Base 64. Per ulteriori informazioni su questo tipo di dati, vedere l'argomento relativo alla struttura dei byte nella documentazione di Microsoft .NET Framework.

Esempio

Per compilare questo esempio di codice, è necessario fare riferimento alla Reporting Services WSDL e importare determinati spazi dei nomi. Per altre informazioni, vedere Compilazione ed esecuzione di esempi di codice. Nell'esempio di codice seguente viene usato il GetReportDefinition metodo per recuperare la definizione di un report e archiviarlo come documento XML nel file system locale:

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 reportName As String = "/SampleReports/Company Sales"  
      Dim reportDefinition As Byte() = Nothing  
      Dim doc As New System.Xml.XmlDocument  

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

         doc.Load(stream)  
         doc.Save("C:\Company Sales.rdl")  

      Catch e As SoapException  
         Console.WriteLine(e.Detail.InnerXml.ToString())  

      Catch e As IOException  
         Console.WriteLine(e.Message)  
      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;  

      string reportName = "/SampleReports/Company Sales";  
      byte[] reportDefinition = null;  
      System.Xml.XmlDocument doc = new System.Xml.XmlDocument();  

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

         doc.Load(stream);  
         doc.Save(@"C:\Company Sales.rdl");  
      }  

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

      catch (IOException e)  
      {  
         Console.WriteLine(e.Message);  
      }  
   }  
}  

Commenti

Nella tabella seguente vengono mostrate le informazioni sull'intestazione e sulle autorizzazioni relative a questa operazione.

Intestazioni SOAP (Out) ServerInfoHeaderValue
Autorizzazioni necessarie ReadReportDefinition

Si applica a