ReportingService2010.CreateCatalogItem 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 einer Berichtsserver-Datenbank oder einer SharePoint-Bibliothek ein neues Element hinzu. Diese Methode gilt für die Elementtypen Report
, Model
, Dataset
, Component
, Resource
und DataSource
.
public:
ReportService2010::CatalogItem ^ CreateCatalogItem(System::String ^ ItemType, System::String ^ Name, System::String ^ Parent, bool Overwrite, cli::array <System::Byte> ^ Definition, cli::array <ReportService2010::Property ^> ^ Properties, [Runtime::InteropServices::Out] cli::array <ReportService2010::Warning ^> ^ % Warnings);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateCatalogItem", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
public ReportService2010.CatalogItem CreateCatalogItem (string ItemType, string Name, string Parent, bool Overwrite, byte[] Definition, ReportService2010.Property[] Properties, out ReportService2010.Warning[] Warnings);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateCatalogItem", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
member this.CreateCatalogItem : string * string * string * bool * byte[] * ReportService2010.Property[] * Warning[] -> ReportService2010.CatalogItem
Public Function CreateCatalogItem (ItemType As String, Name As String, Parent As String, Overwrite As Boolean, Definition As Byte(), Properties As Property(), ByRef Warnings As Warning()) As CatalogItem
Parameter
- ItemType
- String
Der Elementtyp.
- Name
- String
Der Name des neuen Elements einschließlich der Dateierweiterung im SharePoint-Modus.
- Parent
- String
Die vollqualifizierte URL des übergeordneten Ordners, der das Element enthält.
- Overwrite
- Boolean
Ein Boolean
-Ausdruck, der angibt, ob ein vorhandenes Element mit dem gleichen Namen am angegebenen Speicherort überschrieben werden soll.
- Definition
- Byte[]
Der Inhalt der RDL-Berichtsdefinition, Berichtsmodelldefinition oder Ressource, der auf dem Berichtsserver veröffentlicht werden soll.
- Properties
- Property[]
Ein Array von Property-Objekten, das die Eigenschaftennamen und die Werte enthält, die für das Element festgelegt werden sollen.
- Warnings
- Warning[]
[out] Ein Array von Warning-Objekten, das alle Warnungen beschreibt, die bei der Validierung des Elements ausgegeben wurden.
Gibt zurück
Ein CatalogItem-Objekt für das neu erstellte Element.
- Attribute
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)
{
ReportingService2010 rs = new ReportingService2010();
rs.Url = "http://<Server Name>" +
"/_vti_bin/ReportServer/ReportService2010.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.CreateCatalogItem("Report", 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 ReportingService2010()
rs.Url = "http://<Server Name>" + _
"/_vti_bin/ReportServer/ReportService2010.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.CreateCatalogItem("Report", 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
In der folgenden Tabelle werden Header- und Berechtigungsinformationen zu diesem Vorgang dargestellt.
SOAP-Headerverwendung | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
Erforderliche Berechtigungen für den einheitlichen Modus | Hängt vom Elementtyp ab: - Report Erstellen eines neuen Berichts: CreateReport on Parent AND ReadProperties on the report's data sources AND ReadProperties on the report's datasetsAktualisieren eines vorhandenen Berichts: UpdateReportDefinition on Item (if Properties contains properties) AND UpdateProperties on Item AND on AND UpdateProperties on the report's data sources AND on UpdateProperties the report's datasets- DataSet Erstellen eines neuen freigegebenen Datasets: CreateReport on Parent AND ReadProperties on den Datenquellen des DatasetsAktualisieren eines vorhandenen freigegebenen Datasets: on AND on Item (if contains properties) AND on (if Properties contains properties) AND UpdateProperties on the dataset's UpdateProperties data sources Item UpdateReportDefinition- Resource , Component :Erstellen eines neuen Elements: CreateResource on Parent Aktualisieren eines vorhandenen Elements: UpdateContent on Item Aktualisieren von Elementeigenschaften: UpdateContent AND UpdateProperties on Item - DataSource :Erstellen einer neuen Datenquelle: CreateDatasource on Parent Aktualisieren einer vorhandenen Datenquelle: UpdateContent Aktualisieren der Datenquelleneigenschaften: UpdateContent AND UpdateProperties - Model : CreateModel |
Erforderliche Berechtigungen im SharePoint-Modus | Hängt vom Elementtyp ab: - Report Erstellen eines neuen Berichts: <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems> on Parent AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> on data sources and datasets defined in Definition Aktualisieren eines vorhandenen Berichts: <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> on Item AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> on für Datenquellen und Datasets, die in Definition AND Item <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> definiert sind (wenn Properties Eigenschaften enthält)- DataSet Erstellen eines neuen freigegebenen Datasets: <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems> on Parent AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> on data sources defined in Definition Aktualisieren eines vorhandenen freigegebenen Datasets: <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> on Item AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> on für datenquellendefiniert in<xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems>Definition on Item (wenn Properties Eigenschaften enthält)- Resource , DataSource , Component :Erstellen eines neuen Elements: <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems> on Parent Aktualisieren eines vorhandenen Elements: <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> on Item - Model : <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems> auf Parent |
Mit dieser Methode können Elemente aller unterstützten Elementtypen erstellt werden. Verwenden Sie die ListItemTypes -Methode, um zu sehen, welche Elementtypen unterstützt werden.
Der Model
Elementtyp kann nicht überschrieben werden. Daher muss der Overwrite
Parameter sein False
, wenn ItemType
ist Model
. Andernfalls wird eine rsInvalidParameterCombination-Ausnahme ausgelöst.
Wenn ItemType
ist Report
, werden die XML-Daten durch die Berichtsdefinitionssprache definiert. Wenn ItemType
ist Model
, werden die XML-Daten von der Definitionssprache des semantischen Modells definiert.
Wenn Fehler auftreten, wird das Element nicht erstellt.
Durch das Hinzufügen eines Elements zu einer Berichtsserver-Datenbank oder SharePoint-Bibliothek werden die ModifiedBy Eigenschaften und ModifiedDate des übergeordneten Ordners geändert.
Wenn die entsprechende Dateinamenerweiterung (z. B. .rdl) vom Elementnamen ausgeschlossen wird, wird ein rsFileExtensionRequired
Fehler zurückgegeben.
Die Länge des Parent
Parameters darf 260 Zeichen nicht überschreiten. Andernfalls wird eine SOAP-Ausnahme mit dem Fehlercode rsItemLengthExceeded ausgelöst.
Der Parent
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 ihn nicht am Ende des Ordnernamens verwenden.