ReportingService2005.FindItems Método

Definição

Retorna os itens de um banco de dados de servidor de relatório que correspondem aos critérios de pesquisa.

public:
 cli::array <ReportService2005::CatalogItem ^> ^ FindItems(System::String ^ Folder, ReportService2005::BooleanOperatorEnum BooleanOperator, cli::array <ReportService2005::SearchCondition ^> ^ Conditions);
public ReportService2005.CatalogItem[] FindItems (string Folder, ReportService2005.BooleanOperatorEnum BooleanOperator, ReportService2005.SearchCondition[] Conditions);
member this.FindItems : string * ReportService2005.BooleanOperatorEnum * ReportService2005.SearchCondition[] -> ReportService2005.CatalogItem[]
Public Function FindItems (Folder As String, BooleanOperator As BooleanOperatorEnum, Conditions As SearchCondition()) As CatalogItem()

Parâmetros

Folder
String

A URL totalmente qualificada da pasta a ser pesquisada. Para pesquisar todo o banco de dados de servidor de relatório, especifique a pasta raiz (/).

BooleanOperator
BooleanOperatorEnum

O operador lógico aplicado para conectar os critérios de pesquisa. Os valores possíveis são AND e OR. O valor padrão é AND.

Conditions
SearchCondition[]

Uma matriz de objetos SearchCondition que define os nomes e os valores de propriedades a serem pesquisados.

Retornos

Uma matriz de objetos CatalogItem no banco de dados de servidor de relatório que corresponde aos critérios de pesquisa especificados.

Exemplos

Para compilar esse exemplo de código, você deve referenciar o WSDL Reporting Services e importar determinados namespaces. Para obter mais informações, consulte Compilando e executando exemplos de código. O exemplo de código a seguir pesquisa o banco de dados do servidor de relatório para todos os relatórios cujos nomes contêm a palavra "Vendas":

Imports System  
Imports System.Web.Services.Protocols  

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

      Dim items As CatalogItem() = Nothing  
      Dim condition As New SearchCondition()  
      condition.Condition = ConditionEnum.Contains  
      condition.ConditionSpecified = True  
      condition.Name = "Name"  
      condition.Value = "Sales"  

      Dim conditions(0) As SearchCondition  
      conditions(0) = condition  

      Try  
         items = rs.FindItems("/", BooleanOperatorEnum.Or, conditions)  

         If Not (items Is Nothing) Then  
            Dim ci As CatalogItem  
            For Each ci In  items  
               Console.WriteLine("Item {0} found at {1}", ci.Name, ci.Path)  
            Next ci  
         End If  

      Catch e As SoapException  
         Console.WriteLine(e.Detail.InnerXml.ToString())  
      End Try  
   End Sub 'Main  
End Class 'Sample  
using System;  
using System.Web.Services.Protocols;  

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

      CatalogItem[] items = null;  
      SearchCondition condition = new SearchCondition();  
      condition.Condition = ConditionEnum.Contains;  
      condition.ConditionSpecified = true;  
      condition.Name = "Name";  
      condition.Value = "Sales";  

      SearchCondition[] conditions = new SearchCondition[1];  
      conditions[0] = condition;  

      try  
      {  
         items = rs.FindItems( "/", BooleanOperatorEnum.Or, conditions );  

         if ( items != null )  
         {  
            foreach ( CatalogItem ci in items)  
            {  
               Console.WriteLine( "Item {0} found at {1}", ci.Name, ci.Path );  
            }  
         }  
      }  

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

Comentários

A tabela a seguir mostra o cabeçalho e as informações de permissão sobre esta operação.

Cabeçalhos SOAP (Out) ServerInfoHeaderValue
Permissões necessárias Se não for uma pesquisa de componentes: ReadProperties

Somente os itens com a respectiva ReadProperties permissão são retornados.

O comprimento do Folder parâmetro não pode exceder 260 caracteres; caso contrário, uma exceção SOAP é gerada com o código de erro rsItemLengthExceeded.

O Folder parâmetro não pode ser nulo ou vazio ou conter os seguintes caracteres reservados: : ? ; @ & = + $ , \ * > < | . ". Você pode usar o caractere de barra (/) para separar itens no nome do caminho completo da pasta, mas não pode usá-lo no final do nome da pasta.

O servidor de relatório não dá suporte a caracteres curinga no meio da condição de pesquisa. Os caracteres curinga incluem %, _, [, ], ^e -. Se um caractere curinga estiver presente, o servidor de relatório tratará o caractere literalmente.

Somente uma instância de um nome de propriedade pode ser fornecida no conjunto de condições de pesquisa.

A funcionalidade de pesquisa de FindItems não diferencia maiúsculas de minúsculas.

Os aplicativos que usam FindItems normalmente aceitam a entrada do usuário para propriedades específicas e valores de propriedade. As propriedades pesquisáveis são Name, Description, CreatedBy, CreationDate, ModifiedBye ModifiedDate. Os itens retornados são apenas aqueles para os quais um usuário tem Read Properties permissão.

Aplica-se a