Crystal Reports でMySQL データに連携して帳票を作成

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

MySQL JDBC Driver

MySQL 互換データベースエンジンを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。



レポートウィザードを使って、最新のMySQL 連携データを使った帳票を作成。



Crystal Reports には、JDBC 標準向けのサポートが組み込まれています。この記事では、MySQL の機能を持つ帳票を作成するレポート作成ウィザードの使い方を説明します。

MySQL JDBC Driver のインストール

CData JDBC Driver for MySQL を、ドライバーのJAR をCrystal Reports のクラスパスに含めてインストール:DataDriverCommonElement の下のClassPath element のパスに、 .jar を含むファイルのフルパスを追加します。

CRConfig.xml は通常C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\java に配置されます。— パスはインストールによって若干異なる場合があります。ドライバーのJAR はインストールディレクトリの[lib]サブフォルダ内にあります。

ClassPath にJAR を追加したら、Crystal Reports を再起動します。

MySQL データに接続

下記の手順に従って、レポート作成ウィザードを使ってMySQL 接続を作成します。

  1. 新しい空の帳票で、[Create New Connection]>[JDBC (JNDI)]をクリックします。
  2. ウィザードでJDBC 接続URL を選択します。

    jdbc:mysql:User=myUser;Password=myPassword;Database=NorthWind;Server=myServer;Port=3306;
  3. ドライバーのクラス名を設定:

    cdata.jdbc.mysql.MySQLDriver

    Server およびPort プロパティがMySQL への接続には必須です。IntegratedSecurity をFALSE に設定した場合、User、Password も必須になります。 オプションで、Database を設定することもできます。Database は設定がない場合すべてのデータベースを使えるようになります。

    パスワード方式によるSSH 接続

    パスワード方式によるSSH接続時に必要なプロパティ一覧を以下に示します。

    • User: MySQL のユーザ
    • Password: MySQL のパスワード
    • Database: MySQL の接続先データベース
    • Server: MySQL のサーバー
    • Port: MySQL のポート
    • UserSSH: "true"
    • SSHAuthMode: "Password"
    • SSHPort: SSH のポート
    • SSHServer: SSH サーバー
    • SSHUser: SSH ユーザー
    • SSHPassword: SSH パスワード

    接続文字列形式では以下のようになります。User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Password;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHPassword=sshpasswd;

    公開鍵認証方式方式によるSSH 接続

    公開鍵認証によるSSH接続時に必要なプロパティ一覧を以下に示します。

    • User: MySQL のユーザ
    • Password: MySQL のパスワード
    • Database: MySQL の接続先データベース
    • Server: MySQL のサーバー
    • Port: MySQL のポート
    • UserSSH: "true"
    • SSHAuthMode: "Public_Key"
    • SSHClientCertType: キーストアの種類
    • SSHPort: SSH のポート
    • SSHServer: SSH サーバー
    • SSHUser: SSH ユーザー
    • SSHClientCert: 秘密鍵ファイルのパス

    接続文字列形式では以下のようになります。User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Public_Key;SSHClientCertType=PUBLIC_KEY_FILE;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHClientCert=C:\Keys\key.pem;

帳票をデザイン

JDBC 接続をMySQL に追加したら、レポート作成ウィザードを使ってMySQL を帳票に追加できます。

  1. 帳票に必要なテーブルやフィールドを選択して、データソースを設定します。この例では、Orders テーブルのShipName およびFreight カラムを使います。

  2. チャートの種類を設定 ウィザードを完了すると、Crystal Reports はMySQL data に実行されるSQL クエリをビルドします。ドライバーは、ライブMySQL data に対してクエリを実行します。

  3. 必要に応じて、ほかのフィルタや帳票テンプレートを設定します。
  4. データのインポートが終わったら、データをサマライズもしくはソートするチャートやレポートオブジェクトを作成できます。[Insert]>[Chart]をクリックして、チャートエキスパートを開きます。Total Freight by ShipName を表すグラフを作成するには、ShipName を[On Change Of]メニューセレクションの下のボックスに追加してからFreight を[Show Values]の下のボックスに追加します。

完成した帳票をプレビューして、チャートにデータが入っていることを確認します。Null 値を取り除きたい場合は、SelectionFormula を使います。