ReportingService2005.FindItems(String, BooleanOperatorEnum, SearchCondition[]) 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 al Reporting Services WSDL e importare determinati spazi dei nomi. Per ulteriori informazioni, vedere compilazione ed esecuzione di esempi di codice. Nell'esempio di codice seguente viene eseguita la ricerca nel database del server di report di 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 si tratta di una ricerca di componenti: ReadProperties Vengono restituiti solo gli elementi con la rispettiva ReadProperties autorizzazione. |
La lunghezza del Folder parametro non può superare i 260 caratteri. in caso contrario, viene generata un'eccezione SOAP con il codice di errore rsItemLengthExceeded.
Il Folder parametro non può essere null o vuoto o contenere i caratteri riservati seguenti: : ? ; @ & = + $ , \ * > < | . " . È possibile utilizzare il carattere barra (/) per separare gli elementi nel nome percorso completo della cartella, ma non è possibile utilizzarlo alla fine del nome della cartella.
Il server di report non supporta i caratteri jolly al centro della condizione di ricerca. I caratteri jolly sono%, _, [,], ^ e-. Se è presente un carattere jolly, il carattere viene considerato letteralmente dal server di report.
Nel set di condizioni di ricerca è possibile specificare una sola istanza di un nome di proprietà.
La funzionalità di ricerca di non FindItems fa distinzione tra maiuscole e minuscole.
Le applicazioni che usano FindItems in genere accettano l'input dell'utente per proprietà e valori di proprietà specifici. Le proprietà ricercabili sono Name , Description , CreatedBy , CreationDate , ModifiedBy e ModifiedDate . Gli elementi restituiti sono solo quelli per cui un utente dispone dell' Read Properties autorizzazione.