ReportingService2010.ListChildren(String, Boolean) Método

Definición

Obtiene una lista de elementos secundarios de una carpeta especificada.

public:
 cli::array <ReportService2010::CatalogItem ^> ^ ListChildren(System::String ^ ItemPath, bool Recursive);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
public ReportService2010.CatalogItem[] ListChildren (string ItemPath, bool Recursive);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
member this.ListChildren : string * bool -> ReportService2010.CatalogItem[]
Public Function ListChildren (ItemPath As String, Recursive As Boolean) As CatalogItem()

Parámetros

ItemPath
String

Nombre de la ruta de acceso completa de la carpeta principal.

Recursive
Boolean

Expresión Boolean que indica si devolver el árbol completo de elementos secundarios por debajo del elemento especificado. El valor predeterminado es false.

Nota Establecer este parámetro true en en modo de SharePoint puede reducir significativamente el rendimiento de la aplicación.

Devoluciones

Matriz de objetos CatalogItem. Si no existe ningún elemento secundario, este método devuelve una matriz vacía.

Atributos

Ejemplos

Para compilar el ejemplo de código siguiente, debe hacer referencia al Reporting Services WSDL e importar determinados espacios de nombres. Para obtener más información, vea Compilar y ejecutar ejemplos de código. En el ejemplo de código siguiente se usa el ListChildren método para leer el contenido de la raíz del árbol de directorios del servidor de informes y, a continuación, se almacenan el primer elemento y sus propiedades como documento XML:

Imports System  
Imports System.IO  
Imports System.Text  
Imports System.Web.Services.Protocols  
Imports System.Xml  
Imports System.Xml.Serialization  

Class Sample  
   Public Shared Sub Main()  
      Dim rs As New ReportingService2010()  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials  

      Dim items As CatalogItem() = Nothing  

      ' Retrieve a list of all items from the report server database.   
      Try  
         items = rs.ListChildren("/", True)  

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

      ' Serialize the contents as an XML document and write the contents to a file.  
      Try  
         Dim fs As New FileStream("CatalogItems.xml", FileMode.Create)  
         Dim writer As New XmlTextWriter(fs, Encoding.Unicode)  

         Dim serializer As New XmlSerializer(GetType(CatalogItem()))  
         serializer.Serialize(writer, items)  

         Console.WriteLine("Server contents successfully written to a file.")  

      Catch e As Exception  
         Console.WriteLine(e.Message)  
      End Try  
   End Sub 'Main  
End Class 'Sample  
using System;  
using System.IO;  
using System.Text;  
using System.Web.Services.Protocols;  
using System.Xml;  
using System.Xml.Serialization;  

class Sample  
{  
   public static void Main()  
   {  
      ReportingService2010 rs = new ReportingService2010();  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;  

      CatalogItem[] items = null;  

      // Retrieve a list of all items from the report server database.   
      try  
      {  
         items = rs.ListChildren("/", true);  
      }  

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

      // Serialize the contents as an XML document and write the contents to a file.  
      try  
      {  
         FileStream fs = new FileStream("CatalogItems.xml", FileMode.Create);  
         XmlTextWriter writer = new XmlTextWriter(fs, Encoding.Unicode);   

         XmlSerializer serializer = new XmlSerializer(typeof(CatalogItem[]));  
         serializer.Serialize(writer, items);  

         Console.WriteLine("Server contents successfully written to a file.");  
      }  

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

Comentarios

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

Uso de encabezados SOAP (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
Permisos necesarios en modo nativo ReadProperties en Item
Permisos necesarios en modo de SharePoint <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems>

Este método devuelve solo elementos secundarios que el usuario tiene permiso para ver. Es posible que los elementos devueltos no representen una lista completa de elementos secundarios del elemento primario especificado.

Si se llama a este método en la raíz de la base de datos del servidor de informes con Mis informes habilitados, el método devuelve una matriz de CatalogItem objetos que contienen propiedades para la carpeta Mis informes. Si el usuario es anónimo y Mis informes está habilitado, las propiedades de Mis informes no se devuelven cuando se llama a este método en la raíz.

Este método puede devolver la VirtualPath propiedad de los elementos de la base de datos del servidor de informes que admite rutas de acceso virtuales. La ruta de acceso virtual es la ruta de acceso en la que un usuario espera ver el elemento. Por ejemplo, un informe denominado "Report1" ubicado en la carpeta mis informes personal del usuario tiene una ruta de acceso virtual igual a "/Mis informes". La ruta de acceso real del elemento es /Users/Username/My Reports.

La mayoría de las propiedades que devuelve este método son de solo lectura. Para obtener más información sobre las propiedades del elemento en Reporting Services, vea Propiedades del elemento del servidor de informes.

Se aplica a