Sprache

ReportingService2006.GetReportParameters Methode

Definition

Die Rückgaben melden Parametereigenschaften für einen bestimmten Bericht. Die Methode GetReportParameters(String, String, ParameterValue[], DataSourceCredentials[]) kann auch verwendet werden, um Parameterwerte mit Parametern für einen bestimmten Bericht zu validieren.

public:
 cli::array <ReportService2006::ReportParameter ^> ^ GetReportParameters(System::String ^ Report, System::String ^ HistoryID, cli::array <ReportService2006::ParameterValue ^> ^ Values, cli::array <ReportService2006::DataSourceCredentials ^> ^ Credentials);
public ReportService2006.ReportParameter[] GetReportParameters(string Report, string HistoryID, ReportService2006.ParameterValue[] Values, ReportService2006.DataSourceCredentials[] Credentials);
member this.GetReportParameters : string * string * ReportService2006.ParameterValue[] * ReportService2006.DataSourceCredentials[] -> ReportService2006.ReportParameter[]
Public Function GetReportParameters (Report As String, HistoryID As String, Values As ParameterValue(), Credentials As DataSourceCredentials()) As ReportParameter()

Parameter

Report
String

Die vollständig qualifizierte URL des Berichts, einschließlich Dateiname und .rdl-Dateiendung.

HistoryID
String

Die ID des Berichtsverlaufs-Snapshots. Setzen Sie den Parameter ForRendering auf einen Wert von ein true , um Parametereigenschaften für einen Berichtsverlauf-Snapshot abzurufen. Setze den Wert auf null (Nothingin Visual Basic), wenn du Parameter für einen Bericht abrufst, der kein Berichtsverlauf-Snapshot ist.

Values
ParameterValue[]

Die Parameterwerte (ParameterValue Objekte), die gegen die Parameter eines Berichts validiert werden können.

Credentials
DataSourceCredentials[]

Die Datenquellenzugangsdaten (DataSourceCredentials Objekte), die zur Validierung von Abfrageparametern verwendet werden können.

Gibt zurück

Ein Array von ReportParameter Objekten, das die Parameter für den Bericht auflistet.

Beispiele

using System;  
using System.Collections.Generic;  
using System.IO;  
using System.Text;  
using System.Web;  
using System.Web.Services;  
using System.Web.Services.Protocols;  

class Sample  
{  
    static void Main(string[] args)  
    {  
        ReportingService2006 rs = new ReportingService2006();  
        rs.Url = "http://<Server Name>/_vti_bin/ReportServer/" +  
            "ReportService2006.asmx";  
        rs.Credentials =   
            System.Net.CredentialCache.DefaultCredentials;  

        string report = "http://<Server Name>/Docs/Documents" +  
            "/AdventureWorks Sample Reports/" +  
            "Employee Sales Summary.rdl";  
        string historyID = null;  
        ParameterValue[] values = null;  
        DataSourceCredentials[] credentials = null;  
        ReportParameter[] parameters = null;  

        try  
        {  
            parameters = rs.GetReportParameters(report, historyID,   
                values, credentials);  

            if (parameters != null)  
            {  
                foreach (ReportParameter rp in parameters)  
                {  
                    Console.WriteLine("Name: {0}", rp.Name);  
                }  
            }  
        }  
        catch (SoapException e)  
        {  
            Console.WriteLine(e.Detail.InnerXml.ToString());  
        }  
    }  
}  
Imports System  
Imports System.IO  
Imports System.Text  
Imports System.Web.Services  
Imports System.Web.Services.Protocols  

Class Sample  

    Public Shared Sub Main()  

        Dim rs As New ReportingService2006()  
        rs.Url = "http://<Server Name>/_vti_bin/" + _  
            "ReportServer/ReportService2006.asmx"  
        rs.Credentials = _  
            System.Net.CredentialCache.DefaultCredentials  

        Dim report As String = "http://<Server Name>" + _  
            "/Docs/Documents/AdventureWorks Sample Reports" + _  
            "/Employee Sales Summary.rdl"  
        Dim historyID As String = Nothing  
        Dim values As ParameterValue() = Nothing  
        Dim credentials As DataSourceCredentials() = Nothing  
        Dim parameters As ReportParameter() = Nothing  

        Try  
            parameters = rs.GetReportParameters(report, historyID, _  
                values, credentials)  

            If Not (parameters Is Nothing) Then  
                Dim rp As ReportParameter  
                For Each rp In parameters  
                    Console.WriteLine("Name: {0}", rp.Name)  
                Next rp  
            End If  

        Catch e As SoapException  
            Console.WriteLine(e.Detail.InnerXml.ToString())  
        End Try  

    End Sub  

End Class  

Hinweise

Die untenstehende Tabelle zeigt Header- und Berechtigungsinformationen zu dieser Operation.

SOAP-Überschriften (In) TrustedUserHeaderValue

(Aus) ServerInfoHeaderValue
Erforderliche Berechtigungen <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems>

Wenn die Ausführungseinstellung für den Bericht lautet Snapshot, sind die zurückgegebenen Parametermetadaten die Daten, die bei der Erstellung des Berichtsverlauf-Snapshots verwendet wurden. Wenn die Ausführungseinstellung für den Bericht lautet Live, repräsentieren die zurückgegebenen Parameter-Metadaten die Parameterdaten, die mit dem angegebenen Bericht verknüpft sind.

Wenn Sie einen Wert für den Parameter HistoryID angeben und den ForRendering Wert auf truesetzen, repräsentieren die zurückgegebenen Parameter-Metadaten die Parameterdaten, die bei der Erstellung des Berichtsverlauf-Snapshots verwendet wurden. Der für angegebene HistoryID Wert wird ignoriert, wenn ForRendering auf falsegesetzt ist. Wenn ForRendering , falserepräsentieren die zurückgegebenen Parameter-Metadaten die Parameterdaten, die derzeit mit dem angegebenen Bericht verknüpft sind.

Wenn irgendwelche Parameterwerte auf einer Abfrage basieren und Sie daran interessiert sind, die gültige Werteliste der fragebasierten Parameter zurückzugeben, setzen ForRendering Sie auf true. Zusätzlich müssen Sie bei fragebasierten Parametern alle erforderlichen Zugangsdaten zur Rückgabe der Abfrageparameter eingeben.

Bei der Verwendung der Methode GetReportParameters zur Validierung von Parametern ist der Parameter Values erforderlich.

Wenn für den gegebenen Bericht keine Berichtsparameter existieren, wird ein leeres ReportParameter Array zurückgegeben.

Gilt für: