Bagikan melalui


ReportingService2006.CreateReport Metode

Definisi

Menambahkan laporan baru ke pustaka SharePoint.

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

Nama laporan baru termasuk nama file dan ekstensi nama file .rdl.

Parent
String

URL yang sepenuhnya memenuhi syarat untuk folder induk yang akan berisi laporan.

Overwrite
Boolean

Ekspresi Boolean yang menunjukkan apakah laporan yang sudah ada yang memiliki nama yang sama di lokasi yang ditentukan harus ditimpa.

Definition
Byte[]

Definisi laporan untuk diterbitkan ke server laporan, yang merupakan konten file .rdl. Data XML ditentukan oleh http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition/ Bahasa Definisi Laporan .

Properties
Property[]

Array Property objek yang berisi nama dan nilai properti yang akan diatur untuk laporan.

Warnings
Warning[]

[out] Array Warning objek yang menjelaskan peringatan apa pun yang terjadi saat definisi laporan divalidasi.

Mengembalikan

Objek CatalogItem untuk laporan yang baru dibuat.

Contoh

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  

Keterangan

Tabel di bawah ini memperlihatkan informasi header dan izin pada operasi ini.

Header SOAP (Dalam) TrustedUserHeaderValue

(Keluar) ServerInfoHeaderValue
Memerlukan izin Membuat laporan baru: <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems> di Parent AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> pada sumber data dan himpunan data yang ditentukan dalam Definition

Memperbarui laporan yang ada: <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> pada Report AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> pada sumber data dan himpunan data yang ditentukan dalam Definition

Panjang Parent parameter tidak boleh melebihi 260 karakter; jika tidak, pengecualian SOAP dilemparkan dengan kode kesalahan rsItemLengthExceeded.

Parameter Parent tidak boleh null atau kosong atau berisi karakter khusus berikut: : ? ; @ & = + $ , \ * > < | . ". Anda dapat menggunakan karakter garis miring (/) untuk memisahkan item dalam nama jalur lengkap folder, tetapi Anda tidak dapat menggunakannya di akhir nama folder.

Jika terjadi kesalahan, laporan tidak dibuat.

Menambahkan laporan ke pustaka SharePoint memodifikasi ModifiedBy properti dan ModifiedDate folder induk.

Jika ekstensi nama file .rdl dikecualikan dari nama laporan, kesalahan rsFileExtensionRequired akan dikembalikan.

Berlaku untuk