ReportingService2006.CreateReport Method

新しいレポートを SharePoint ライブラリに追加します。

名前空間: ReportService2006
アセンブリ: ReportService2006 (reportservice2006.dll 内)

構文

'宣言
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
public CatalogItem CreateReport (
    string Report,
    string Parent,
    bool Overwrite,
    byte[] Definition,
    Property[] Properties,
    out Warning[] Warnings
)
public:
CatalogItem^ CreateReport (
    String^ Report, 
    String^ Parent, 
    bool Overwrite, 
    array<unsigned char>^ Definition, 
    array<Property^>^ Properties, 
    [OutAttribute] array<Warning^>^% Warnings
)
public CatalogItem CreateReport (
    String Report, 
    String Parent, 
    boolean Overwrite, 
    byte[] Definition, 
    Property[] Properties, 
    /** @attribute OutAttribute() */ /** @ref */ Warning[] Warnings
)
JScript は、値と型の引数の参照渡しをサポートしていません。

パラメータ

  • Report
    ファイル名と .rdl ファイル名拡張子を含む、新しいレポートの名前です。
  • Parent
    レポートを格納する親フォルダの完全修飾 URL です。
  • Overwrite
    指定された場所に同じ名前のレポートが既に存在する場合に上書きするかどうかを示す Boolean 式です。
  • Definition
    レポート サーバーにパブリッシュするレポート定義です。
  • Properties
    レポートに設定するプロパティの名前と値を含む Property オブジェクトの配列です。
  • Warnings
    [out] レポート定義の検証時に発生したすべての警告を表す Warning オブジェクトの配列です。

戻り値

新しく作成されたレポートの CatalogItem オブジェクトです。

解説

エラーが発生すると、レポートは作成されません。

SharePoint ライブラリにレポートを追加すると、親フォルダの ModifiedBy プロパティと ModifiedDate プロパティが変更されます。

レポート名に .rdl 拡張子を含めない場合、rsFileExtensionRequired エラーが返されます。

使用例

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

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

Windows 98, Windows 2000, Windows 2000 Server, Windows CE, Windows Server 2008, Windows 98 Second Edition, Pocket PC, Smart Phone, Windows Server 2003, Windows XP Professional with Service Pack 2 (SP2), Windows 2000 Professional, Windows 2000 Advanced Server, Windows XP Home Edition, サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。, Windows Vista, Windows Mobile 5.0, Windows Mobile 2003 for Pocket PC, Windows CE 5.0

参照

関連項目

ReportingService2006 Class
ReportingService2006 Members
ReportService2006 Namespace