ReportingService2006.CreateReport 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.
Fügt einen neuen Bericht zu einer SharePoint Library hinzu.
public:
ReportService2006::CatalogItem ^ CreateReport(System::String ^ Report, System::String ^ Parent, bool Overwrite, cli::array <System::Byte> ^ Definition, cli::array <ReportService2006::Property ^> ^ Properties, [Runtime::InteropServices::Out] cli::array <ReportService2006::Warning ^> ^ % Warnings);
public ReportService2006.CatalogItem CreateReport(string Report, string Parent, bool Overwrite, byte[] Definition, ReportService2006.Property[] Properties, out ReportService2006.Warning[] Warnings);
member this.CreateReport : string * string * bool * byte[] * ReportService2006.Property[] * Warning[] -> ReportService2006.CatalogItem
Public Function CreateReport (Report As String, Parent As String, Overwrite As Boolean, Definition As Byte(), Properties As Property(), ByRef Warnings As Warning()) As CatalogItem
Parameter
- Report
- String
Der Name des neuen Berichts, einschließlich Dateiname und .rdl-Dateiendung.
- Parent
- String
Die vollständig qualifizierte URL für den übergeordneten Ordner, der den Bericht enthalten wird.
- Overwrite
- Boolean
Ein Ausdruck, der angibt, ob ein bestehender Bericht mit demselben Namen an der angegebenen Boolean Stelle überschrieben werden sollte.
- Definition
- Byte[]
Die Berichtsdefinition zur Veröffentlichung auf dem Berichtsserver ist der Inhalt einer .rdl-Datei. Die XML-Daten werden durch die http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition/ Report Definition Language definiert.
- Properties
- Property[]
Ein Array von Property Objekten, das die Eigenschaftsnamen und Werte enthält, die für den Bericht festgelegt werden.
- Warnings
- Warning[]
[aus] Ein Array von Warning Objekten, das alle Warnungen beschreibt, die bei der Validierung der Berichtsdefinition aufgetreten sind.
Gibt zurück
Ein CatalogItem Objekt für den neu erstellten Bericht.
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;
Byte[] definition = null;
Warning[] warnings = null;
string name = "MyReport.rdl";
try
{
FileStream stream = File.OpenRead("MyReport.rdl");
definition = new Byte[stream.Length];
stream.Read(definition, 0, (int)stream.Length);
stream.Close();
}
catch (IOException e)
{
Console.WriteLine(e.Message);
}
try
{
string parent = "http://<Server Name>/Docs/Documents/";
CatalogItem report = rs.CreateReport(name, parent,
false, definition, null, out warnings);
if (warnings != null)
{
foreach (Warning warning in warnings)
{
Console.WriteLine(warning.Message);
}
}
else
Console.WriteLine("Report: {0} created successfully " +
" with no warnings", 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 definition As [Byte]() = Nothing
Dim warnings As Warning() = Nothing
Dim name As String = "MyReport.rdl"
Try
Dim stream As FileStream = File.OpenRead("MyReport.rdl")
definition = New [Byte](stream.Length - 1) {}
stream.Read(definition, 0, CInt(stream.Length))
stream.Close()
Catch e As IOException
Console.WriteLine(e.Message)
End Try
Try
Dim parentPath As String = _
"http://<Server Name>/Docs/Documents/"
rs.CreateReport(name, parentPath, False, _
definition, Nothing, warnings)
If Not (warnings Is Nothing) Then
Dim warning As Warning
For Each warning In warnings
Console.WriteLine(warning.Message)
Next warning
Else
Console.WriteLine("Report: {0} created " + _
"successfully with no warnings", name)
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 | Erstellung eines neuen Berichts: über Parent UND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> zu Datenquellen und Datensätzen, <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems> definiert inDefinitionAktualisierung eines bestehenden Berichts: über Report UND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> zu Datenquellen und Datensätzen, <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> definiert inDefinition |
Die Länge des Parameters Parent darf 260 Zeichen nicht überschreiten; andernfalls wird eine SOAP-Ausnahme mit dem Fehlercode rsItemLengthExceeds ausgelöst.
Der Parameter Parent kann weder null noch leer sein oder die folgenden reservierten Zeichen enthalten: : ? ; @ & = + $ , \ * > < | . ". Du kannst das Forward-Schrägstrichzeichen (/) verwenden, um Elemente im vollständigen Pfadnamen des Ordners zu trennen, aber am Ende des Ordnernamens kannst du es nicht verwenden.
Wenn Fehler auftreten, wird der Bericht nicht erstellt.
Das Hinzufügen eines Berichts zu einer SharePoint Library verändert die ModifiedBy Eigenschaften und ModifiedDate Eigenschaften des übergeordneten Ordners.
Wenn die Dateiendung .rdl aus dem Berichtsnamen ausgeschlossen wird, wird ein rsFileExtensionRequired Fehler zurückgegeben.