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 di un database del 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
URL completo della cartella da cercare. Per eseguire ricerche nel database del server di report intero, specificare la cartella radice (/).
- BooleanOperator
- BooleanOperatorEnum
Operatore logico applicato per collegare le condizioni di ricerca. I valori possibili sono AND
e OR
. Il valore predefinito è AND
.
- Conditions
- SearchCondition[]
Matrice di oggetti SearchCondition che definisce i nomi e i valori delle proprietà da cercare.
Restituisce
Matrice di oggetti CatalogItem contenuti nel database del server di report che corrispondono ai criteri di ricerca specificati.
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 ricercato il database del server di report per 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
Nella tabella seguente vengono mostrate le informazioni sull'intestazione e sulle autorizzazioni relative a questa operazione.
Intestazioni SOAP | (Out) ServerInfoHeaderValue |
Autorizzazioni necessarie | Se non una ricerca di componenti: ReadProperties Vengono restituiti solo gli elementi con la rispettiva ReadProperties autorizzazione. |
La lunghezza del parametro non può superare i 260 caratteri. In caso contrario, viene generata un'eccezione SOAP con il codice di Folder
errore rsItemLengthExceeded.
Il Folder
parametro non può essere null o vuoto o contenere i caratteri riservati seguenti: : ? ; @ & = + $ , \ * > < | . "
. È possibile usare il carattere barra in avanti (/) per separare gli elementi nel nome completo del percorso della cartella, ma non è possibile usarlo alla fine del nome della cartella.
Il server di report non supporta caratteri jolly al centro della condizione di ricerca. I caratteri jolly includono %, _, [, ], ^e -. Se è presente un carattere jolly, il server di report tratta il carattere letteralmente.
È possibile specificare solo un'istanza di un nome di proprietà nel set di condizioni di ricerca.
La funzionalità di ricerca di FindItems è senza distinzione tra maiuscole e minuscole.
Le applicazioni che usano FindItems in genere accettano l'input utente per proprietà e valori di proprietà specifici. Le proprietà ricercabili sono Name, , DescriptionCreatedByCreationDate, , ModifiedBye ModifiedDate. Gli elementi restituiti sono solo quelli per i quali un utente dispone Read Properties
dell'autorizzazione.