ReportingService2005.FindItems Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Restituisce elementi da un database server di report che corrispondono ai criteri di ricerca.
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()
Parametri
- Folder
- String
L'URL completamente qualificato della cartella per la ricerca. Per cercare nell'intero database del server di report, specifica la cartella radice (/).
- BooleanOperator
- BooleanOperatorEnum
L'operatore logico applicato per collegare le condizioni di ricerca. I valori possibili sono AND e OR. Il valore predefinito è AND.
- Conditions
- SearchCondition[]
Un array di SearchCondition oggetti che definisce i nomi e i valori delle proprietà per cui cercare.
Valori restituiti
Un array di CatalogItem oggetti nel database del server di report che corrispondono ai criteri di ricerca specificati.
Esempio
Per compilare questo esempio di codice, devi fare riferimento al WSDL di Reporting Services e importare determinati namespace. Per maggiori informazioni, vedi Compiling and Conducting Code Examples. Il seguente esempio di codice cerca nel database del server di report tutti i report i cui nomi contengono la parola "Sales":
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() );
}
}
}
Commenti
La tabella sottostante mostra informazioni sull'intestazione e sui permessi di questa operazione.
| Intestazioni SOAP | (Fuori) ServerInfoHeaderValue |
| Autorizzazioni necessarie | Se non è una ricerca per componenti: ReadProperties Solo gli oggetti con il rispettivo ReadProperties permesso vengono restituiti. |
La lunghezza del Folder parametro non può superare i 260 caratteri; altrimenti, viene lanciata un'eccezione SOAP con il codice di errore rsItemLengthExceeded.
Il Folder parametro non può essere nullo o vuoto né contenere i seguenti caratteri riservati: : ? ; @ & = + $ , \ * > < | . ". Puoi usare il carattere a barra avanzata (/) per separare gli elementi nel nome completo del percorso della cartella, ma non puoi usarlo alla fine del nome della cartella.
Il server di report non supporta i caratteri jolly nel mezzo della condizione di ricerca. I caratteri jolly includono %, _, [, ], ^ e -. Se è presente un personaggio jolly, il server di report tratta il personaggio letteralmente.
Solo un'istanza di nome di proprietà può essere fornita nell'insieme delle condizioni di ricerca.
La funzionalità di ricerca di FindItems è indistinta a maiuscole e minuscole.
Le applicazioni che utilizzano FindItems generalmente accettano input da parte dell'utente per proprietà e valori specifici. Le proprietà ricercabili sono Name, Description, CreatedBy, CreationDate, ModifiedBy, e ModifiedDate. Gli elementi restituiti sono solo quelli per i quali l'utente ha Read Properties il permesso.