次の方法で共有


サーバー ファイルへのバインド(VS .NET 2003)

オブジェクト モデル

このレポートをバインドするシナリオでは CrystalReportViewer を使用しています(「CrystalReportViewer オブジェクト モデルによるレポートのバインド」を参照してください)。

レポートの場所

レポートはローカル ファイル ディレクトリのレポート フォルダにあります(「サンプル レポートのディレクトリ」を参照)。この場所からのレポートは、レポート Web サービスとして公開されます。

Crystal サービス 概要

このレポートをバインドするシナリオは、サーバー エクスプローラの Crystal サービス サーバー ノードからアクセスするレポートに適用されます。

Note

Crystal サービスの概要については、「Crystal サービスの使用」を参照してください。

このセクションでは、Visual Studio .NET 2003 に含まれる Crystal サービスのサーバー ファイル サブ ノードについて説明します。

[SERVERNAME]

  • Crystal サービス
    • サーバー ファイル

説明

サーバー ファイル サブ ノードは、ローカル ファイル ディレクトリからレポート Web サービスとして公開されているレポートにアクセスしてこれを表示します。これらのレポートは、レポート Web サービス プロトコルを使用して公開されます。Visual Studio .NET 2003 では、[Crystal サービス]ノードの下に表示される[サーバー ファイル]ノードをクリックしてサーバー ファイルにアクセスします。

Crystal サービスの機能を比較する表については、「Crystal サービスを使用して CrystalReportViewer をバインドするシナリオ」「Crystal サービスを使用して ReportDocument をバインドするシナリオ(VS .NET 2002 および 2003)」を参照してください。

Crystal Reports 9 および 10 では、Crystal サービスのサーバー ファイル サブ ノードは、レポート Web サービス プロトコルを使用せずに、「Report Application Server(RAS)」 サーバーに直接接続する Crystal サービス サブ ノードに置き換えられます。

長所

  • レポートへの中央集中型アクセス:サンプル レポート ディレクトリ(「サンプル レポートのディレクトリ」を参照)にあるすべてのレポートに 1 つのアクセス ポイントからアクセスできます。これにより、ユーザーのハード ディスク ドライブに効率的なレポート リポジトリが作成されます。

短所

  • Crystal Reports 9 および 10 では、アンマネージド RAS Crystal サービス ノードに置き換えられています。詳細については、上記の「説明」を参照してください。
  • 制限されたオブジェクト モデル:このシナリオは、CrystalReportViewerに含まれる、制限されたオブジェクト モデルだけを提供します。詳細については、「適切なオブジェクト モデルの選択」を参照してください。

サーバー ファイルを設定する

Crystal Reports for Visual Studio 2003 では、サーバー ファイルは Crystal サービス ノードとして提供されます。Crystal Reports 9 または 10(フル バージョン)を Visual Studio 2003 に含まれるバージョンに重ねてインストールすると、サーバー ファイル ノードは表示ノードとして削除されます。

「Crystal Reports for Visual Studio について」 の各エディションは、引き続き SDK のサーバー ファイルをサポートします。ただし、このバージョンのサーバー ファイルを操作するには、手動でコード化する必要があります。

サーバー ファイルの設定手順の詳細については、「Crystal サービスでのサーバー ファイルの設定」を参照してください。

Crystal サービスをインストールする

Crystal Reports for Visual Studio .NET 2003 がインストールされている必要があります。

Visual Studio .NET 2003 のインストール時には、Crystal サービスはデフォルトでインストールされません。この手順では、Visual Studio .NET 2003 インストール CD から Crystal サービスをインストールします。

  1. Microsoft Visual Studio .NET のインストール用 CD で、[Crystal Reports]を探します。
  2. [Crystal Web サービス]を選択します。
  3. [更新]ボタンをクリックします。

[Crystal サービス]の下の[サーバー ファイル]ノードを使用する

  • Crystal Reports for Visual Studio .NET 2003 がインストールされ、正しく動作する。
  • または、Crystal Reports 9 またはそれ以降のバージョンがインストールされ、正しく動作する。
    Note

    Crystal Reports 9 および 10 では、サーバー ファイルは置き換えられており、[Crystal サービス]の下にノードとして表示されません。ただし、手動でサーバー ファイルをコード化できます。

Note

この手順は、「プロジェクトの設定」で作成されたプロジェクトにのみ有効です。「プロジェクトの設定」では、この手順で必要な特定の名前空間の参照とコード設定が説明されており、この設定は、この手順を完了するために必須です。したがって、この手順を始める前にまず、「プロジェクトの設定」の手順を実行しておく必要があります。

  1. [表示]メニューで、[その他のウィンドウ]、[サーバー エクスプローラ]の順にクリックします。

  2. [Crystal サービス]、[サーバー ファイル]の順に展開します。

  3. [サーバー ファイル]ツリーからレポートを選択して、使用しているフォーム上にドラッグします。

    Note

    サーバー ファイル レポートがフォーム上に置かれると、ServerFileReport クラスのインスタンスが、フォームのデザイナで生成されたコード領域に追加されます。

    System.ComponentModel.Componentを継承するクラス(ServerFileReport など)が、デザイナで生成されたコード領域でインスタンス化および設定されると、インスタンス化されたクラスのアイコンがフォーム デザイン ビューの下部に表示されます。

    フォーム デザイン ビューの下部に、serverFileReport1 オブジェクトが表示されます。

  4. コード ビューに切り替え、Web フォームまたは Windows のフォーム デザイナの生成コードの箇所を開きます。

    ServerFileReport クラスは、この領域でインスタンス化と設定が行われます。

  5. 「プロジェクトの設定」で作成した ConfigureCrystalReports() メソッドでは、ServerFileReport インスタンスを CrystalReportViewer コントロールの ReportSource プロパティに割り当てます。

    myCrystalReportViewer.ReportSource = serverFileReport1
    
    crystalReportViewer.ReportSource = serverFileReport1;
    

レポートを表示するには、プロジェクトをビルドおよび実行してください。

サーバー ファイルを手動でコード化する

  • Crystal Reports for Visual Studio .NET 2003 がインストールされ、正しく動作する。
  • または、Crystal Reports 9 またはそれ以降のバージョンがインストールされ、正しく動作する。
    Note

    Crystal Reports 9 および 10 では、サーバー ファイルは置き換えられており、[Crystal サービス]の下にノードとして表示されません。ただし、手動でサーバー ファイルをコード化できます。

Note

この手順は、「プロジェクトの設定」で作成されたプロジェクトにのみ有効です。「プロジェクトの設定」では、この手順で必要な特定の名前空間の参照とコード設定が説明されており、この設定は、この手順を完了するために必須です。したがって、この手順を始める前にまず、「プロジェクトの設定」の手順を実行しておく必要があります。

  1. 「プロジェクトの設定」で作成した ConfigureCrystalReports() メソッドで、ServerFileReport のインスタンスを宣言します。

    Dim myServerFileReport As CrystalDecisions.Shared.ServerFileReport = _
    New CrystalDecisions.Shared.ServerFileReport()
    
    CrystalDecisions.Shared.ServerFileReport serverFileReport = new CrystalDecisions.Shared.ServerFileReport();
    
  2. ServerFileReport の ObjectType プロパティを REPORT に設定します。

    myServerFileReport.ObjectType = CrystalDecisions.[Shared].EnumServerFileType.REPORT
    
    serverFileReport.ObjectType = CrystalDecisions.Shared.EnumServerFileType.REPORT;
    
  3. ServerFileReport の ReportPath プロパティをレポートとそのサブディレクトリに設定します。サンプル レポートについては、「サンプル レポートのディレクトリ」を参照してください。

    myServerFileReport.ReportPath = "\General Business\World Sales Report.rpt"
    
    serverFileReport.ReportPath = "\\General Business\\World Sales Report.rpt";
    
  4. ServerFileReport の WebServiceURL プロパティを、インストールされている Crystal Reports のバージョンの“ビューアの仮想ディレクトリ”に設定します。「ビューアの仮想ディレクトリ」を参照してください。

    Note

    このサンプル コードでは、ビューアの仮想ディレクトリを Crystal Reports 10 用に設定します。

    myServerFileReport.WebServiceUrl = "https://localhost/crystalreportviewers10/ServerFileReportService.asmx"
    
    serverFileReport.WebServiceUrl = "https://localhost/crystalreportviewers10/ServerFileReportService.asmx";
    
  5. CrystalReportViewer コントロールの ReportSource プロパティを ServerFileReport インスタンスに設定します。

    myCrystalReportViewer.ReportSource = myServerFileReport
    
    crystalReportViewer.ReportSource = serverFileReport1;
    

関連項目