チュートリアル:レポートへのスパークラインの追加 (レポート ビルダー)
このチュートリアルでは、サンプルの売上データに基づいて基本的なテーブル レポートを作成してから、テーブルのセルにスパークライン グラフを追加します。
このチュートリアルで作成するレポートの拡張バージョンは、2014 Report Builder レポートSQL Serverサンプルとして使用できます。 このサンプル レポートやその他のダウンロードの詳細については、「サンプル レポートのReport Builder」を参照してください。 次の図に、ここで作成するレポートと同様のサンプル レポートを示します。
ビデオ「方法: テーブルにスパークラインを作成する (Report Builder ビデオ)」では、スパークラインを使用して同様のレポートを作成する方法を示しています。
学習する内容
このチュートリアルでは、次の方法を学習します。
その他のオプションの手順
このチュートリアルの推定所要時間:30 分。
必要条件
要件に関する詳細については、「チュートリアルの前提条件 (レポート ビルダー)」を参照してください。
1.テーブルを使用したレポートを作成する
レポートを作成するには
[スタート] ボタンをクリックし、[プログラム] をポイントし、[Microsoft SQL Server 2012 Report Builder] をポイントして、[Report Builder] をクリックします。
[作業の開始] ダイアログ ボックスが開きます。
Note
[はじめに] ダイアログ ボックスが表示されない場合は、[Report Builder] ボタンから [新規] をクリックします。
左ペインで、 [新しいレポート] が選択されていることを確認します。
右ペインで、 [テーブルまたはマトリックス ウィザード] をクリックします。
[データセットの選択] ページで [データセットを作成する] を選択し、 [次へ] をクリックします。 [データ ソースへの接続の選択] ページが開きます。
Note
このチュートリアルでは、特定のデータは必要ありません。SQL Server 2014 データベースへの接続が必要です。 [データ ソース接続] の一覧に既にデータ ソース接続が表示されている場合は、データ ソース接続を選択して手順 10 に進みます。 詳細については、「別の方法でデータ接続を取得する (レポート ビルダー)」を参照してください。
[新規作成] をクリックします。 [データ ソースのプロパティ] ダイアログ ボックスが表示されます。
[名前] に、データ ソースの名前として「 Product Sales」と入力します。
[接続の種類の選択] で、 [Microsoft SQL Server] が選択されていることを確認します。
[接続文字列] に次のテキストを入力します。
Data Source=<servername>
式<サーバー名> (Report001 など) は、SQL Server データベース エンジンのインスタンスがインストールされているコンピューターを指定します。 レポート データは SQL Server のデータベースから抽出されるのではないので、データベース名を含める必要はありません。 指定したサーバー上の既定のデータベースを使用して、クエリが解析されます。
[資格情報] をクリックします。 外部データ ソースへのアクセスに必要な資格情報を入力します。
[OK] をクリックします。
[データ ソースへの接続の選択] ページに戻ります。
データ ソースに接続できることを確認するために、 [接続テスト] をクリックします。
"接続が正常に作成されました" というメッセージが表示されます。
[OK] をクリックします。
[次へ] をクリックします。
2. テーブル ウィザードでクエリを作成する
レポートでは、クエリが事前に定義された共有データセットを使用するか、そのレポートでのみ使用する埋め込みデータセットを作成できます。 このチュートリアルでは、埋め込みデータセットを作成します。
Note
このチュートリアルのクエリにはデータ値が含まれているため、外部のデータ ソースを必要としません。 このため、クエリが非常に長くなっています。 ビジネス環境でクエリにデータを含めることはありません。 これは、学習に使用することのみを目的としています。
クエリを作成するには
[クエリのデザイン] ページでは、リレーショナル クエリ デザイナーが開きます。 このチュートリアルでは、テキスト ベースのクエリ デザイナーを使用します。
[テキストとして編集] をクリックします。 テキスト ベースのクエリ デザイナーは、クエリ ペインと結果ペインで構成されています。
[クエリ] ボックスに次の 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 行目はテーブルで 1 回表示され、列見出しを示します。
2 行目は製品ごとに 1 回表示され、製品名、1 日あたりの合計、および行の合計を示します。
3 行目はテーブルで 1 回表示され、総計を示します。
[次へ] をクリックします。
[スタイルの選択] ページの スタイル ペインで、 [スレート]を選択します。
プレビュー ペインにそのスタイルのテーブルのサンプルが表示されます。
[完了] をクリックします。
テーブルがデザイン画面に追加されます。 テーブルには 3 列および 5 行が含まれています。
グループ化ペインを確認します。 グループ化ペインが表示されない場合、 [表示] メニューの [グループ化] をクリックします。 行グループ ペインには 1 つの行グループProduct が表示されます。 列グループ ペインには 1 つ列グループSalesDate が表示されます。 詳細データは、データセット クエリによって取得されるすべてのデータです。
[実行] をクリックして、レポートをプレビューします。
3.スパークラインを追加する
テーブルにスパークライン グラフを追加するには
[デザイン] をクリックしてデザイン ビューに戻ります。
テーブルの合計列を選択します。
右クリックして表示される [列の挿入] を選択してから、 [左] をクリックします。
新しい列の [Product] 行を右クリックし、[ 挿入 ] リボン タブをポイントし、[ スパークライン] をクリックします。
[列] 行の最初のスパークラインが選択されていることを確認し、[OK] をクリックします。
スパークラインをクリックして、グラフ データ ペインを表示します。
[値] ボックスでプラス記号 (+) をクリックし、[ 売上] をクリックします。
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] です。 通貨値の例が表示されない場合は、[数値] グループの [プレースホルダー のスタイル] をクリックし、[サンプル値] をクリックします。
[実行] をクリックして、レポートをプレビューします。
Sales の集計値は通貨として表示されます。
6. (省略可能) データを日付として書式設定する
既定では、 SalesDate フィールドには日付と時刻の情報が表示されます。 このフィールドを書式設定して、日付のみを表示できます。
日付フィールドの書式を既定の書式に設定するには
[デザイン] をクリックしてデザイン ビューに戻ります。
[SalesDate]
が格納されたセルをクリックします。リボンの [ ホーム ] タブの [ 数値 ] グループで、ドロップダウン リストから [日付] を選択 します。
セルに、日付の例として [2000/1/31] と表示されます。 日付の例が表示されない場合は、 [数値] グループの [プレースホルダーのスタイル] をクリックし、 [サンプルの値] をクリックします。
[実行] をクリックして、レポートをプレビューします。
SalesDate 値は、既定の日付形式で表示されます。
7.(オプション) 列幅を変更する
テーブルの各セルには、既定でテキスト ボックスが含まれます。 テキスト ボックスは、ページを表示するときにテキストに合わせて垂直方向に拡張されます。 表示されるレポートでは、各行がその行で最も高いテキスト ボックスの高さに拡張されます。 デザイン画面の行の高さは、表示されるレポートの行の高さには影響しません。
各行の垂直方向の領域を小さくするには、列の幅を広げ、列で想定されるテキスト ボックスの内容が 1 行に収まるようにします。
列の幅を変更するには
[デザイン] をクリックしてデザイン ビューに戻ります。
テーブルをクリックし、列ハンドルおよび行ハンドルをテーブルの上部および横に表示します。
テーブルの上と横のグレーのバーは、列および行ハンドルです。
列ハンドルの間の罫線をポイントします。カーソルが 2 方向の矢印の形状に変化します。 列をドラッグして、目的のサイズに変更します。 たとえば、 Product の列を展開して、製品名が 1 行に表示されるようにします。
[実行] をクリックして、レポートをプレビューします。
8.(オプション) レポート タイトルを追加する
レポート タイトルは、レポートの最上部に表示されます。 レポート ヘッダーがあれば、そこにレポート タイトルを配置します。レポート ヘッダーを使用しない場合は、レポート本文の一番上のテキスト ボックスに配置します。 このチュートリアルでは、自動的にレポート本文の一番上に配置されるテキスト ボックスを使用します。
テキストの語句や文字のフォントのスタイル、サイズ、および色を変更して、テキストをさらに強調することもできます。 詳細については、「テキスト ボックス内のテキストの書式設定 (レポート ビルダーおよび SSRS)」を参照してください。
レポート タイトルを追加するには
デザイン画面で、 [クリックしてタイトルを追加] をクリックします。
「 Product Sales」と入力し、テキスト ボックスの外側をクリックします。
Product Sales が含まれているテキスト ボックスを右クリックし、 [テキスト ボックスのプロパティ] をクリックします。
[テキスト ボックスのプロパティ] ダイアログ ボックスで、 [フォント] をクリックします。
[サイズ] ボックスの一覧の [18pt] を選択します。
[ 色 ] ボックスの一覧 で [Maroon] を選択します。
[太字] を選択します。
[OK] をクリックします。
9.レポートを保存する
レポートをレポート サーバーまたは自分のコンピューターに保存します。 レポート サーバーに保存しない場合は、 Reporting Services のいくつかの機能 (レポート パーツ、サブレポートなど) が使用できなくなります。
レポート サーバーにレポートを保存するには
レポート ビルダー のボタンの [名前を付けて保存] をクリックします。
[最近使ったサイトとサーバー] をクリックします。
レポートを保存する権限があるレポート サーバーの名前を入力するか選択します。
"レポート サーバーに接続しています" というメッセージが表示されます。 接続が完了すると、レポート サーバー管理者がレポートの既定の場所として指定したレポート フォルダーのコンテンツが表示されます。
[名前] に入力されている既定の名前を「 Product Sales」に置き換えます。
[保存] をクリックします。
レポートがレポート サーバーに保存されます。 接続しているレポート サーバーの名前がウィンドウ下部のステータス バーに表示されます。
コンピューターにレポートを保存するには
レポート ビルダー のボタンの [名前を付けて保存] をクリックします。
[デスクトップ] 、 [マイ ドキュメント] 、または [マイ コンピューター] をクリックして、レポートを保存するフォルダーを参照します。
[名前] に入力されている既定の名前を「 Product Sales」に置き換えます。
[保存] をクリックします。
次の手順
これで、スパークライン グラフを使ったテーブル レポートを作成するチュートリアルを終了します。 スパークラインの詳細については、「スパークラインとデータ バー (Report Builderおよび SSRS)」を参照してください。