ReportingService2005.FindItems Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt die Elemente von einer Berichtsserver-Datenbanksuche zurück, die den angegebenen Suchkriterien entsprechen.
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()
Parameter
- Folder
- String
Die vollqualifizierte URL des Ordners, der gesucht werden soll. Geben Sie den Stammordner (/) an, um die ganze Berichtsserver-Datenbank zu durchsuchen.
- BooleanOperator
- BooleanOperatorEnum
Der logische Operator, der angewendet wird, um die Suchbedingungen zu verbinden. Mögliche Werte sind AND
und OR
. Standardwert: AND
.
- Conditions
- SearchCondition[]
Ein Array von SearchCondition-Objekten, das die Eigenschaftennamen und die Werte definiert, nach denen gesucht werden soll.
Gibt zurück
Ein Array von CatalogItem-Objekten in der Berichtsserver-Datenbank, die den angegebenen Suchkriterien entsprechen.
Beispiele
Um dieses Codebeispiel zu kompilieren, müssen Sie auf die Reporting Services WSDL verweisen und bestimmte Namespaces importieren. Weitere Informationen finden Sie unter Kompilieren und Ausführen von Codebeispielen. Im folgenden Codebeispiel wird die Berichtsserver-Datenbank nach allen Berichten durchsucht, deren Namen das Wort "Sales" enthalten:
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() );
}
}
}
Hinweise
In der folgenden Tabelle werden Header- und Berechtigungsinformationen zu diesem Vorgang dargestellt.
SOAP-Header | (Out) ServerInfoHeaderValue |
Erforderliche Berechtigungen | Falls nicht eine Komponentensuche: ReadProperties Nur die Elemente mit der entsprechenden ReadProperties Berechtigung werden zurückgegeben. |
Die Länge des Folder
Parameters darf 260 Zeichen nicht überschreiten. Andernfalls wird eine SOAP-Ausnahme mit dem Fehlercode rsItemLengthExceeded ausgelöst.
Der Folder
Parameter darf nicht NULL oder leer sein oder die folgenden reservierten Zeichen enthalten: : ? ; @ & = + $ , \ * > < | . "
. Sie können den Schrägstrich (/) verwenden, um Elemente im vollständigen Pfadnamen des Ordners zu trennen, aber sie können es nicht am Ende des Ordnernamens verwenden.
Der Berichtsserver unterstützt keine Feldhalterzeichen in der Mitte der Suchbedingung. Zu den Feldhalterzeichen gehören %, _, [, ], ^und -. Wenn ein Feldhalterzeichen vorhanden ist, behandelt der Berichtsserver das Zeichen wörtlich.
Im Satz der Suchbedingungen kann nur eine instance eines Eigenschaftennamens angegeben werden.
Bei der Suchfunktion von FindItems wird die Groß-/Kleinschreibung nicht beachtet.
Anwendungen, die verwenden FindItems , akzeptieren in der Regel Benutzereingaben für bestimmte Eigenschaften und Eigenschaftswerte. Die durchsuchbaren Eigenschaften sind Name, Description, CreatedBy, CreationDateund ModifiedDateModifiedBy. Die zurückgegebenen Elemente sind nur die Elemente, für die ein Benutzer über die Berechtigung verfügt Read Properties
.