Udostępnij za pośrednictwem


Metoda ReportingService2005.FindItems

Zwraca elementy z baza danych serwer raportów pasujące do kryteriów wyszukiwania.

Przestrzeń nazw:  ReportService2005
Zestaw:  ReportService2005 (w ReportService2005.dll)

Składnia

'Deklaracja
<SoapHeaderAttribute("ServerInfoHeaderValue", Direction := SoapHeaderDirection.Out)> _
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/FindItems", RequestNamespace := "https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices",  _
    ResponseNamespace := "https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices",  _
    Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function FindItems ( _
    Folder As String, _
    BooleanOperator As BooleanOperatorEnum, _
    Conditions As SearchCondition() _
) As CatalogItem()
'Użycie
Dim instance As ReportingService2005
Dim Folder As String
Dim BooleanOperator As BooleanOperatorEnum
Dim Conditions As SearchCondition()
Dim returnValue As CatalogItem()

returnValue = instance.FindItems(Folder, _
    BooleanOperator, Conditions)
[SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)]
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/FindItems", RequestNamespace = "https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", 
    ResponseNamespace = "https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public CatalogItem[] FindItems(
    string Folder,
    BooleanOperatorEnum BooleanOperator,
    SearchCondition[] Conditions
)
[SoapHeaderAttribute(L"ServerInfoHeaderValue", Direction = SoapHeaderDirection::Out)]
[SoapDocumentMethodAttribute(L"https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/FindItems", RequestNamespace = L"https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", 
    ResponseNamespace = L"https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", 
    Use = SoapBindingUse::Literal, ParameterStyle = SoapParameterStyle::Wrapped)]
public:
array<CatalogItem^>^ FindItems(
    String^ Folder, 
    BooleanOperatorEnum BooleanOperator, 
    array<SearchCondition^>^ Conditions
)
[<SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)>]
[<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/FindItems", RequestNamespace = "https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", 
    ResponseNamespace = "https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)>]
member FindItems : 
        Folder:string * 
        BooleanOperator:BooleanOperatorEnum * 
        Conditions:SearchCondition[] -> CatalogItem[] 
public function FindItems(
    Folder : String, 
    BooleanOperator : BooleanOperatorEnum, 
    Conditions : SearchCondition[]
) : CatalogItem[]

Parametry

  • Folder
    Typ: System.String
    W pełni kwalifikowana URL folderu wyszukiwania.Aby przeszukać cały baza danych serwera raportów, określ folder główny (/).
  • BooleanOperator
    Typ: ReportService2005.BooleanOperatorEnum
    Operator logiczny jest stosowane do połączenia warunków wyszukiwania.Możliwe wartości to i i lub.Wartością domyślną jest i.

Wartość zwracana

Typ: array<ReportService2005.CatalogItem[]
Tablica CatalogItem obiektów w baza danych serwera raportów odpowiadające kryteria wyszukiwania.

Uwagi

W poniższej tabela przedstawiono informacje nagłówka i uprawnienia na tej operacji.

Nagłówki SOAP

(Ruch wychodzący)ServerInfoHeaderValue

Wymagane uprawnienia

Jeśli nie wyszukiwania składnika: ReadProperties

Tylko elementy z odpowiednich ReadProperties uprawnienia są zwracane.

Długość Folder parametr nie może przekraczać 260 znaków; w przeciwnym razie SOAP jest wyjątek z kodem błędu rsItemLengthExceeded.

Folder Parametr nie może być null lub puste lub zawierać następujących znaków zarezerwowanych: : ? ; @ & = + $ , \ * > < | . ".Ukośnik (/) można używać do oddzielania elementów pełną nazwę ścieżka folderu, ale nie można go użyć na końcu nazwy folderu.

serwer raportów nie obsługuje symboli wieloznacznych w środku warunek wyszukiwania.Zawiera symbole wieloznaczne %, _, [,], ^ oraz -.Jeśli występuje symbol wieloznaczny serwer raportów traktuje znak dosłownie.

Tylko jedno wystąpienie nazwy właściwość mogą być dostarczane w zestaw warunków wyszukiwania.

Funkcje wyszukiwania FindItems jest przypadek-niewrażliwe.

Aplikacje używające FindItems zazwyczaj przyjmowania danych wejściowych użytkownika dla określonych właściwość i wartości właściwość.The searchable properties are Name, Description, CreatedBy, CreationDate, ModifiedBy, and ModifiedDate.Elementy, które są zwracane są tylko te, dla których użytkownik ma Odczyt właściwości uprawnienia.

Przykłady

Aby skompilować ten przykład kodu, należy odwołać WSDL usług Reporting i przywozu niektórych obszarów nazw.Aby uzyskać więcej informacji, zobacz temat Compiling and Running Code Examples.Następujący kod przykład wyszukiwania baza danych serwera raportów dla wszystkich raportów, których nazwy zawierają wyraz "Sprzedaż":

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() ); 
      }
   }
}