Metoda ReportingService2010.CreateCatalogItem
Dodaje nowy element, aby baza danych serwer raportów lub w bibliotece programu SharePoint.Niniejsza metoda stosowana do raport, Model, Dataset, składnika, zasobów, i DataSource element typów.
Przestrzeń nazw: ReportService2010
Zestaw: ReportService2010 (w ReportService2010.dll)
Składnia
'Deklaracja
<SoapHeaderAttribute("TrustedUserHeaderValue")> _
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateCatalogItem", RequestNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", _
ResponseNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", _
Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
<SoapHeaderAttribute("ServerInfoHeaderValue", Direction := SoapHeaderDirection.Out)> _
Public Function CreateCatalogItem ( _
ItemType As String, _
Name As String, _
Parent As String, _
Overwrite As Boolean, _
Definition As Byte(), _
Properties As Property(), _
<OutAttribute> ByRef Warnings As Warning() _
) As CatalogItem
'Użycie
Dim instance As ReportingService2010
Dim ItemType As String
Dim Name As String
Dim Parent As String
Dim Overwrite As Boolean
Dim Definition As Byte()
Dim Properties As Property()
Dim Warnings As Warning()
Dim returnValue As CatalogItem
returnValue = instance.CreateCatalogItem(ItemType, _
Name, Parent, Overwrite, Definition, _
Properties, Warnings)
[SoapHeaderAttribute("TrustedUserHeaderValue")]
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateCatalogItem", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)]
public CatalogItem CreateCatalogItem(
string ItemType,
string Name,
string Parent,
bool Overwrite,
byte[] Definition,
Property[] Properties,
out Warning[] Warnings
)
[SoapHeaderAttribute(L"TrustedUserHeaderValue")]
[SoapDocumentMethodAttribute(L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateCatalogItem", RequestNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse::Literal, ParameterStyle = SoapParameterStyle::Wrapped)]
[SoapHeaderAttribute(L"ServerInfoHeaderValue", Direction = SoapHeaderDirection::Out)]
public:
CatalogItem^ CreateCatalogItem(
String^ ItemType,
String^ Name,
String^ Parent,
bool Overwrite,
array<unsigned char>^ Definition,
array<Property^>^ Properties,
[OutAttribute] array<Warning^>^% Warnings
)
[<SoapHeaderAttribute("TrustedUserHeaderValue")>]
[<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateCatalogItem", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)>]
[<SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)>]
member CreateCatalogItem :
ItemType:string *
Name:string *
Parent:string *
Overwrite:bool *
Definition:byte[] *
Properties:Property[] *
Warnings:Warning[] byref -> CatalogItem
public function CreateCatalogItem(
ItemType : String,
Name : String,
Parent : String,
Overwrite : boolean,
Definition : byte[],
Properties : Property[],
Warnings : Warning[]
) : CatalogItem
Parametry
- ItemType
Typ: System.String
Typ element.
- Name
Typ: System.String
Nazwa nowego element, łącznie z rozszerzeniem w trybie SharePoint.
- Parent
Typ: System.String
Pełni kwalifikowany adres URL folderu nadrzędnego, który będzie zawierał element.
- Overwrite
Typ: System.Boolean
A logiczna wyrażenie, która wskazuje, czy istniejące element czy ma taką samą nazwę w lokalizacji określona powinny zostać zastąpione.
- Definition
Typ: array<System.Byte[]
Definicja raportu .rdl, definicja model raportu lub zawartość zasób do publikowania serwer raportów.
- Properties
Typ: array<ReportService2010.Property[]
Tablica Property obiektów, które zawiera nazwy właściwość i wartości do zestaw dla elementu.
- Warnings
Typ: array<ReportService2010.Warning[]%
[Brak] Tablica Warning obiektów, które opisano wszystkie ostrzeżenia, które wystąpiły podczas element został sprawdzony.
Wartość zwracana
Typ: ReportService2010.CatalogItem
A CatalogItem obiektu dla nowo utworzonego element.
Uwagi
W poniższej tabela przedstawiono informacje nagłówka i uprawnienia na tej operacji.
Użycie nagłówek protokołu SOAP |
(Ruch wychodzący)ServerInfoHeaderValue |
Tryb macierzysty wymagane uprawnienia |
Zależy od typu element:
|
Tryb programu SharePoint wymagane uprawnienia |
Zależy od typu element:
|
Tej metoda można utworzyć elements wszystkich obsługiwanych element typów.Aby zobaczyć, jak element są obsługiwane, użyj ListItemTypes metoda.
Model typ element nie można zastąpić.Dlatego Overwrite parametr musi być False Jeśli ItemType jest Model.W przeciwnym razie rsInvalidParameterCombination jest wyjątek.
Jeśli ItemType jest raport, a następnie danych XML jest zdefiniowany przez Report Definition Language.Jeśli ItemType jest Model, a następnie danych XML jest zdefiniowany przez Semantic Model Definition Language.
Jeśli wystąpią błędy, element nie zostanie utworzony.
Dodawanie element do baza danych serwera raportów lub modyfikuje biblioteki programu SharePoint ModifiedBy i ModifiedDate Właściwości folderu nadrzędnego.
Jeśli rozszerzenie nazwy pliku stosowane (na przykład .rdl) są wyłączone z nazwa element rsFileExtensionRequired zostanie zwrócony błąd.
Długość Parent parametr nie może przekraczać 260 znaków; w przeciwnym razie SOAP jest wyjątek z kodem błędu rsItemLengthExceeded.
Parent 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.
Przykłady
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