このチュートリアルでは、サンプル売上データに基づいて基本的なテーブル レポートを作成し、テーブル内のセルにスパークライン グラフを追加します。
このチュートリアルで作成するレポートの拡張バージョンは、サンプルの SQL Server 2014 レポート ビルダー レポートとして使用できます。 このサンプルレポートやその他のサンプルレポートのダウンロード方法については、レポートビルダーのサンプルレポートを参照してください。 次の図は、作成するレポートと同様のサンプル レポートを示しています。
「 方法: テーブルにスパークラインを作成する」ビデオ (レポート ビルダー ビデオ) では、スパークラインを含む同様のレポートを作成する方法を示しています。
学習する内容
このチュートリアルでは、次の操作を行う方法について説明します。
その他の省略可能な手順
このチュートリアルの推定所要時間:30 分。
要求事項
要件の詳細については、「 チュートリアルの前提条件 (レポート ビルダー)」を参照してください。
1. テーブルを含むレポートを作成する
レポートを作成するには
[ スタート] をクリックし、[ プログラム] をポイントし、 Microsoft SQL Server 2012 レポート ビルダーをポイントして、[ レポート ビルダー] をクリックします。
[ 作業の開始 ] ダイアログ ボックスが開きます。
注
[ 作業の開始 ] ダイアログ ボックスが表示されない場合は、[ レポート ビルダー ] ボタンから [ 新規] をクリックします。
左ペインで、 [新しいレポート] が選択されていることを確認します。
右側のウィンドウで、[ テーブル] または [マトリックス ウィザード] をクリックします。
[ データセットの選択 ] ページで、[ データセットの作成] を選択し、[ 次へ] をクリックします。 [データ ソースへの接続の選択] ページが開きます。
注
このチュートリアルでは、特定のデータは必要ありません。SQL Server 2014 データベースへの接続が必要です。 [データ ソース接続] の一覧に既にデータ ソース接続が表示されている場合は、データ ソース接続を選択して手順 10 に進みます。 詳細については、「 データ接続を取得する別の方法 (レポート ビルダー)」を参照してください。
新規 をクリックします。 [データ ソースのプロパティ] ダイアログ ボックスが表示されます。
[ 名前] に、データ ソースの名前である Product Sales と入力します。
[接続の種類の選択] で、 [Microsoft SQL Server] が選択されていることを確認します。
[ 接続文字列] に、次のテキストを入力します。
データソース=<servername>
式 <servername> (Report001 など) は、SQL Server データベース エンジンのインスタンスがインストールされているコンピューターを指定します。 レポート データは SQL Server データベースから抽出されないため、データベースの名前を含める必要はありません。 指定したサーバー上の既定のデータベースを使用して、クエリが解析されます。
[資格情報] をクリックします。 外部データ ソースへのアクセスに必要な資格情報を入力します。
OK をクリックします。
[ データ ソースへの接続の選択 ] ページに戻ります。
データ ソースに接続できることを確認するには、[ 接続のテスト] をクリックします。
"接続が正常に作成されました" というメッセージが表示されます。
OK をクリックします。
[次へ] をクリックします。
2. テーブル ウィザードでクエリを作成する
レポートでは、クエリが事前に定義された共有データセットを使用するか、そのレポートでのみ使用する埋め込みデータセットを作成できます。 このチュートリアルでは、埋め込みデータセットを作成します。
注
このチュートリアルのクエリにはデータ値が含まれているため、外部データ ソースを必要としません。 このため、クエリが非常に長くなっています。 ビジネス環境でクエリにデータを含めることはありません。 これは、学習に使用することのみを目的としています。
クエリを作成するには
[クエリのデザイン] ページでは、リレーショナル クエリ デザイナーが開きます。 このチュートリアルでは、テキスト ベースのクエリ デザイナーを使用します。
[ テキストとして編集] をクリックします。 テキスト ベースのクエリ デザイナーは、クエリ ペインと結果ペインで構成されています。
[クエリ] ボックスに次の Transact-SQL クエリを貼り付けます。
SELECT CAST('2010-01-04' AS date) as SalesDate, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(16996.60 AS money) AS Sales, 68 as Quantity UNION SELECT CAST('2010-01-05' AS date) as SalesDate, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(1350.00 AS money) AS Sales, 18 as Quantity UNION SELECT CAST('2010-01-10' AS date) as SalesDate, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(1147.50 AS money) AS Sales, 17 as Quantity UNION SELECT CAST('2010-01-04' AS date) as SalesDate, 'Accessories' as Subcategory, 'Budget Movie-Maker' as Product, CAST(1056.00 AS money) AS Sales, 44 as Quantity UNION SELECT CAST('2010-01-05' AS date) as SalesDate, 'Accessories' as Subcategory, 'Slim Digital' as Product, CAST(1380.00 AS money) AS Sales, 18 as Quantity UNION SELECT CAST('2010-01-05' AS date) as SalesDate,'Accessories' as Subcategory, 'Budget Movie-Maker' as Product, CAST(780.00 AS money) AS Sales, 26 as Quantity UNION SELECT CAST('2010-01-07' AS date) as SalesDate, 'Accessories' as Subcategory, 'Budget Movie-Maker' as Product, CAST(3798.00 AS money) AS Sales, 9 as Quantity UNION SELECT CAST('2010-01-08' AS date) as SalesDate, 'Camcorders' as Subcategory, 'Budget Movie-Maker' as Product, CAST(10400.00 AS money) AS Sales, 13 as Quantity UNION SELECT CAST('2010-01-09' AS date) as SalesDate, 'Camcorders' as Subcategory, 'Budget Movie-Maker' as Product, CAST(3000.00 AS money) AS Sales, 60 as Quantity UNION SELECT CAST('2010-01-10' AS date) as SalesDate, 'Digital' as Subcategory, 'Budget Movie-Maker' as Product, CAST(7234.50 AS money) AS Sales, 39 as Quantity UNION SELECT CAST('2010-01-06' AS date) as SalesDate, 'Digital' as Subcategory, 'Carrying Case' as Product, CAST(10836.00 AS money) AS Sales, 84 as Quantity UNION SELECT CAST('2010-01-07' AS date) as SalesDate, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(2550.00 AS money) AS Sales, 17 as Quantity UNION SELECT CAST('2010-01-04' AS date) as SalesDate, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(8357.80 AS money) AS Sales, 44 as Quantity UNION SELECT CAST('2010-01-08' AS date) as SalesDate, 'Digital SLR' as Subcategory, 'Slim Digital' as Product, CAST(18530.00 AS money) AS Sales, 34 as Quantity UNION SELECT CAST('2010-01-06' AS date) as SalesDate, 'Digital SLR' as Subcategory, 'Slim Digital' as Product, CAST(26576.00 AS money) AS Sales, 88 as Quantityクエリ デザイナーのツール バーで、[実行 ] (!) をクリックします。
SalesDate、 Subcategory、 Product、 Sales、および Quantityの各フィールドを取得するクエリが実行され、結果セットが表示されます。
[次へ] をクリックします。
[フィールドの配置] ページで、 Sales を [値] にドラッグします。
Sales は Sum 関数を使用して集計されます。 値は [Sum(Sales)] です。
Product を [行グループ] にドラッグします。
SalesDate を [列グループ] にドラッグします。
[次へ] をクリックします。
[レイアウトの選択] ページの [オプション] で、 [小計と総計を表示] が選択されていることを確認します。
ウィザードのプレビュー ペインに、3 行を含むテーブルが表示されます。 レポートを実行すると、各行は次のように表示されます。
最初の行は、列見出しを表示するテーブルに対して 1 回表示されます。
2 行目は製品ごとに 1 回繰り返され、製品名、1 日あたりの合計、および行の合計が表示されます。
テーブルに対して 3 番目の行が 1 回表示され、総計が表示されます。
[次へ] をクリックします。
[ スタイルの選択 ] ページの [ スタイル ] ウィンドウで、[ スレート] を選択します。
[プレビュー] ウィンドウには、そのスタイルのテーブルのサンプルが表示されます。
[完了] をクリックします。
テーブルがデザイン画面に追加されます。 テーブルには 3 列および 5 行が含まれています。
グループ化ペインを確認します。 [グループ化] ウィンドウが表示されない場合は、[ 表示 ] メニューの [ グループ化] をクリックします。 行グループ ペインには 1 つの行グループProduct が表示されます。 列グループ ペインには 1 つ列グループSalesDate が表示されます。 詳細データは、データセット クエリによって取得されるすべてのデータです。
[実行] をクリックして、レポートをプレビューします。
3. スパークラインを追加する
スパークライン グラフをテーブルに追加するには
[ デザイン ] をクリックしてデザイン ビューに戻ります。
テーブルの合計列を選択します。
右クリックして、挿入列を選択し、左をクリックします。
新しい列で、[製品] 行を右クリックし、[ 挿入 ] リボン タブをポイントし、[ スパークライン] をクリックします。
[列] 行の最初のスパークラインが選択されていることを確認し、[OK] をクリックします。
スパークラインをクリックすると、[グラフ データ] ペインが表示されます。
[値] ボックスでプラス記号 (+) をクリックし、[ Sales] をクリックします。
Sales フィールドの値がスパークラインの値になります。
[カテゴリ グループ] ボックスでプラス記号 (+) をクリックし、[ SalesDate] をクリックします。
[実行] をクリックして、レポートをプレビューします。
テーブルの各行にはスパークライン グラフがありますが、正しくありません。 グラフ内のバーは互いに並び合いません。 データの 2 行目のバーは 4 本しかないので、バーが 6 本ある最初の行のバーよりも太くなっています。 1 日あたりの各製品の値を比較できません。 彼らは互いに位置を揃える必要があります。
また、各行について、その行の最も高いバーがその行の高さであることに注意してください。 各行の最大値が等しくないため、これは誤解を招きます。Budget Movie-Maker の最大値は $10,400 ですが、Slim Digital の最大値は 26,576 ドル以上です。 ところが、これらの 2 つの行の最も高いバーはほぼ同じ高さになっています。 それも他のスパークラインと同様のスケールで表示される必要があります。
4. スパークラインを上下左右に揃える
スパークラインはすべて同じ測定値を使用していない場合、読みにくいです。 各スパークラインの縦軸と横軸は、残りのスパークラインと一致させる必要があります。
テーブル内のスパークラインの配置を設定するには
[ デザイン ] をクリックしてデザイン ビューに戻ります。
スパークラインを右クリックし、[ 縦軸のプロパティ] をクリックします。
[軸を整列する] チェック ボックスをオンにします。
Tablix1 が一覧に表示されます。 これが唯一のオプションです。 このオプションによって、各スパークラインのバーの高さが相対的に設定されます。
OK をクリックします。
スパークラインを右クリックし、[ 水平軸のプロパティ] をクリックします。
[軸を整列する] チェック ボックスをオンにします。
Tablix1 が一覧に表示されます。 これが唯一のオプションです。 このオプションによって、各スパークラインのバーの幅が相対的に設定されます。 一部のスパークラインのバー数が他のスパークラインよりも少ない場合、それらのスパークラインには、欠落しているデータの空白スペースが含まれます。
OK をクリックします。
[ 実行 ] をクリックして、レポートをもう一度プレビューします。
すべてのバーが、他の行のバーと一致している点に注意してください。
5. (省略可能) データを通貨として書式設定する
既定では、 Sales フィールドの集計データは通常の数値として表示されます。 このフィールドを書式設定して、数値を通貨として表示します。 書式設定したテキスト ボックスおよびプレースホルダー テキストのサンプル値を表示するには、 [プレースホルダーのスタイル] の設定を切り替えます。
通貨フィールドを書式設定するには
デザイン ビューに切り替えるには、[デザイン] をクリックします。
SalesDate 列の 2 番目の行 (列見出し行の下) のセルをクリックし、ドラッグして、
[Sum(Sales)]を含むすべてのセルを選択します。[ ホーム ] タブの [ 数値 ] グループで、[ 通貨 ] ボタンをクリックします。 書式設定された通貨を表示するようにセルが変化します。
地域設定が英語 (米国) の場合、既定のサンプル テキストは [$12,345.00] です。 通貨値の例が表示されない場合は、[数値] グループの [プレースホルダー スタイル] をクリックし、[サンプル値] をクリックします。
[実行] をクリックして、レポートをプレビューします。
売上の集計値は通貨として表示されます。
6. (省略可能) データを日付として書式設定する
既定では、 SalesDate フィールドには日付と時刻の情報が表示されます。 このフィールドを書式設定して、日付のみを表示できます。
日付フィールドを既定の書式として書式設定するには
[ デザイン ] をクリックしてデザイン ビューに戻ります。
[SalesDate]を含むセルをクリックします。リボンの [ ホーム ] タブの [ 数値 ] グループで、ドロップダウン リストから [日付] を選択 します。
セルに、日付の例として [2000/1/31] と表示されます。 日付の例が表示されない場合は、[数値] グループの [プレースホルダー スタイル] をクリックし、[サンプル値] をクリックします。
[実行] をクリックして、レポートをプレビューします。
SalesDate 値は、既定の日付形式で表示されます。
7. (省略可能) 列の幅を変更する
テーブルの各セルには、既定でテキスト ボックスが含まれます。 テキスト ボックスは、ページを表示するときにテキストに合わせて垂直方向に拡張されます。 表示されるレポートでは、各行がその行で最も高いテキスト ボックスの高さに拡張されます。 デザイン サーフェイスの行の高さは、表示されるレポートの行の高さに影響しません。
各行の垂直方向の領域を小さくするには、列の幅を広げ、列で想定されるテキスト ボックスの内容が 1 行に収まるようにします。
列の幅を変更するには
[ デザイン ] をクリックしてデザイン ビューに戻ります。
テーブルの上と横に列ハンドルと行ハンドルが表示されるように、テーブルをクリックします。
テーブルの上と横のグレーのバーは、列および行ハンドルです。
列ハンドルの間の罫線をポイントします。カーソルが 2 方向の矢印の形状に変化します。 列をドラッグして、目的のサイズに変更します。 たとえば、 Product の列を展開して、製品名が 1 行に表示されるようにします。
[実行] をクリックして、レポートをプレビューします。
8. (省略可能) レポート タイトルを追加する
レポート タイトルは、レポートの最上部に表示されます。 レポート タイトルは、レポート ヘッダーに配置することも、レポートが使用しない場合は、レポート本文の上部にあるテキスト ボックスに配置することもできます。 このチュートリアルでは、レポート本文の上部に自動的に配置されるテキスト ボックスを使用します。
テキストの語句や文字のフォントのスタイル、サイズ、および色を変更して、テキストをさらに強調することもできます。 詳細については、「 テキスト ボックス内のテキストの書式設定 (レポート ビルダーおよび SSRS)」を参照してください。
レポート タイトルを追加するには
デザイン画面で、クリックしてタイトルを追加します。
「 Product Sales」と入力し、テキスト ボックスの外側をクリックします。
Product Sales を含むテキスト ボックスを右クリックし、[テキスト ボックスのプロパティ] をクリックします。
[ テキスト ボックスのプロパティ ] ダイアログ ボックスで、[ フォント] をクリックします。
[サイズ] ボックスの一覧の [18pt] を選択します。
[色] ボックスの一覧で [マルーン] を選択します。
[太字] を選択します。
OK をクリックします。
9. レポートを保存する
レポートをレポート サーバーまたは自分のコンピューターに保存します。 レポート をレポート サーバーに保存しない場合、レポート パーツやサブレポートなど、多数の Reporting Services 機能は使用できません。
レポート サーバーにレポートを保存するには
[レポート ビルダー] ボタンで、[名前を付けて保存] をクリックします。
[ 最近使用したサイトとサーバー] をクリックします。
レポートを保存する権限があるレポート サーバーの名前を選択または入力します。
"レポート サーバーに接続しています" というメッセージが表示されます。 接続が完了すると、レポート サーバー管理者がレポートの既定の場所として指定したレポート フォルダーのコンテンツが表示されます。
[名前] に入力されている既定の名前を「 Product Sales」に置き換えます。
[保存] をクリックします。
レポートがレポート サーバーに保存されます。 接続するレポート サーバーの名前が、ウィンドウの下部にあるステータス バーに表示されます。
コンピューターにレポートを保存するには
[レポート ビルダー] ボタンで、[名前を付けて保存] をクリックします。
[ デスクトップ]、[ マイ ドキュメント]、または [マイ コンピューター] をクリックし、レポートを保存するフォルダーを参照します。
[名前] に入力されている既定の名前を「 Product Sales」に置き換えます。
[保存] をクリックします。
次のステップ
これで、スパークライン グラフを使用してテーブル レポートを作成するためのチュートリアルは終了です。 スパークラインの詳細については、「 スパークラインとデータ バー (レポート ビルダーおよび SSRS)」を参照してください。