このセクションには、ColdFusionレポートでのチャートの作成方法を学習するために実行できる作業手順の例が含まれています。この例は、直前のチュートリアル「ColdFusion Report Builderの使用—パート1:レポートおよびサブレポートの作成」の例を拡張したものです。最初の演習を完了することにより、次の演習に必要なCFRファイルを取得できます。最初の記事のサンプルファイルにバンドルされたレポートを使用することもできます。
このチュートリアルでは、ColdFusion MX 7とともにサンプルアプリケーションをインストールしているものとします。cfdocexamplesデータベースを指定するcfdocexamplesデータソースを使用します。ColdFusionサンプルアプリケーションをインストールしていない場合は、ColdFusionインストーラをもう一度実行し、サンプルアプリケーションをインストールするオプションを選択してください。
ColdFusion MX 7 Report Builderには、チャートコンポーネントがツールボックスに含まれるので、チャートを簡単に作成できます。図4のReport Builderのツールボックスで選択されているチャートコンポーネントを参照してください。
図4.チャートコンポーネントが選択されたReport Builderのツールボックス
チャートコンポーネントを選択し、ステージの上にドラッグすると、チャートウィザードが表示されます。ここで次の内容を設定できます。
次の手順に従って、例を使用してチャートを設定します。
ColdFusionサーバサンプルアプリケーションをインストールしたら、次の手順に従ってチャートを作成します。
heightプロパティをハイライト表示します。heightプロパティに5と入力して、高さ5インチを指定します。図4に示すチャートコンポーネントをクリックします。レポートセクションの左上から右下までカーソルをドラッグします(この時点では、コンポーネントのサイズは気にしないでください)。チャートウィザードが表示されます。図5を参照してください。
図5.Report Builderのチャートウィザード
cfdocexamplesデータソースに移動し、「テーブル」セクションを開きます(複数のテーブルリストが表示される)。「Dept_Name」フィールドをダブルクリックします(SQLコードを入力する必要がある)。「Salary」フィールドをダブルクリックします。「Dept_ID」フィールドをダブルクリックします。クエリーグリッドの「Condition」列の「Dept_Name」行で、ポップアップリストから「Group By」を選択します。この結果、次のような正しい形式のSQLステートメントが作成されます。
SELECT Departmt.Dept_Name, SUM(Employee.Salary) AS Sum_Salary FROM Employee, Departmt WHERE (Departmt.Dept_ID = Employee.Dept_ID) GROUP BY Departmt.Dept_Name
「Dept_Name」を選択します。「Value Column」ドロップダウンリストの「Sum_Salary」を選択します。SELECT節をコピーして、新しいコードでSELECT節を上書きします。これは、「SELECT」から「FROM」までの語のすべてです(または、オプションでこのコードを入力することもできます。正しく機能することが実証されているコードをコピーして貼り付けると簡単なことが経験によりわかっています。新しいコードを入力すると、エラーが発生することがあります)。
SELECT Departmt.Dept_Name & ' ' & round((SUM(Employee.Salary)/(select sum(Employee.Salary) from Employee)) * 100, 1) & '%' as sal, SUM(Employee.Salary) AS Sum_Salary
この新しいSELECT節は、シリーズラベルに意味を追加するための単なる想像上の方法です。サブクエリーと呼ばれる技術をいくつかの単純なSQLの算術と組み合わせて、部署ごとのパーセンテージのグループを(適切なラベルとともに)生成できます。このクエリーは、ROUND関数を使用して読みやすいフォーマットを生成しています。Microsoft Accessでアンパサンドを使用して、レコードセットの文字列リテラルを結合することができます。クエリービルダは図6のように表示されます。
図6.最終的なSQLクエリー
salを選択します。
図7.最終的なチャート
これで完成です。レポートから最初のColdFusionチャートを正しく作成できました。
この記事を読み終えると、ColdFusion Report Builderのチャートコンポーネントの使用方法を学ぶことができます。チャートウィザードと最小限のコードおよび設定を使用して、さまざまなタイプのチャートをすばやく簡単に作成できるようになります。ここでは、クエリービルダーを使用してSQLコードを簡単に生成し、変更する方法について説明してきました。Report Builderウィザードのチャートオプションに慣れるまでに時間はかかりません。クエリーを管理できるだけではなく、チャートの美的特性も制御できます。ほとんどのColdFusionの開発と同様に、レポートとチャートの作成が比較的簡単な作業になることがわかります。