Udostępnij za pośrednictwem


Metoda ReportingService2006.CreateReport

Dodaje nowy raport do biblioteki programu SharePoint.

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

Składnia

'Deklaracja
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices/CreateReport", RequestNamespace := "https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices",  _
    ResponseNamespace := "https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices",  _
    Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
<SoapHeaderAttribute("ServerInfoHeaderValue", Direction := SoapHeaderDirection.Out)> _
<SoapHeaderAttribute("TrustedUserHeaderValue")> _
Public Function CreateReport ( _
    Report 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 ReportingService2006
Dim Report 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.CreateReport(Report, _
    Parent, Overwrite, Definition, Properties, _
    Warnings)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices/CreateReport", RequestNamespace = "https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices", 
    ResponseNamespace = "https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)]
[SoapHeaderAttribute("TrustedUserHeaderValue")]
public CatalogItem CreateReport(
    string Report,
    string Parent,
    bool Overwrite,
    byte[] Definition,
    Property[] Properties,
    out Warning[] Warnings
)
[SoapDocumentMethodAttribute(L"https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices/CreateReport", RequestNamespace = L"https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices", 
    ResponseNamespace = L"https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices", 
    Use = SoapBindingUse::Literal, ParameterStyle = SoapParameterStyle::Wrapped)]
[SoapHeaderAttribute(L"ServerInfoHeaderValue", Direction = SoapHeaderDirection::Out)]
[SoapHeaderAttribute(L"TrustedUserHeaderValue")]
public:
CatalogItem^ CreateReport(
    String^ Report, 
    String^ Parent, 
    bool Overwrite, 
    array<unsigned char>^ Definition, 
    array<Property^>^ Properties, 
    [OutAttribute] array<Warning^>^% Warnings
)
[<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices/CreateReport", RequestNamespace = "https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices", 
    ResponseNamespace = "https://schemas.microsoft.com/sqlserver/2006/03/15/reporting/reportingservices", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)>]
[<SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)>]
[<SoapHeaderAttribute("TrustedUserHeaderValue")>]
member CreateReport : 
        Report:string * 
        Parent:string * 
        Overwrite:bool * 
        Definition:byte[] * 
        Properties:Property[] * 
        Warnings:Warning[] byref -> CatalogItem 
public function CreateReport(
    Report : String, 
    Parent : String, 
    Overwrite : boolean, 
    Definition : byte[], 
    Properties : Property[], 
    Warnings : Warning[]
) : CatalogItem

Parametry

  • Report
    Typ: System.String
    Nazwa nowego raportu, łącznie z nazwą i .rdl pliku rozszerzenie nazwy pliku.
  • Parent
    Typ: System.String
    Pełni kwalifikowany adres URL folderu nadrzędnego, który będzie zawierał raport.
  • Overwrite
    Typ: System.Boolean
    A wartość logiczna wyrażenie, która wskazuje, czy można zastąpić istniejący raport, który ma taką samą nazwę w określonej lokalizacji.
  • Warnings
    Typ: array<ReportService2006.Warning[]%
    [Brak] Tablica Warning obiektów, które opisano wszystkie ostrzeżenia, które wystąpiły podczas definicja raportu został sprawdzony.

Wartość zwracana

Typ: ReportService2006.CatalogItem
A CatalogItem obiektu dla nowo utworzonego raportu.

Uwagi

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

Nagłówki SOAP

(W)TrustedUserHeaderValue

(Ruch wychodzący)ServerInfoHeaderValue

Wymagane uprawnienia

Tworzenie nowego raportu: AddListItems()na Parent i ViewListItems() na źródła danych i zestawach danych określonych w Definition

Aktualizowanie istniejącego raportu: EditListItems()na Report i ViewListItems() na źródła danych i zestawach danych określonych w Definition

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.

Jeśli wystąpią błędy, nie zostanie utworzony raport.

Dodawanie raportu do biblioteki programu SharePoint modyfikuje ModifiedBy i ModifiedDate Właściwości folderu nadrzędnego.

Jeśli rozszerzenie nazwy pliku .rdl jest wykluczony z nazwa raportu rsFileExtensionRequired zostanie zwrócony błąd.

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)
    {
        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