[]
        
(Showing Draft Content)

Tableを使ったレポート

概要

テーブル形式のレポートは、データを最も簡単に表示できる方法です。基本的なテーブル形式のレポートは、複数列および複数行の書式で構成されていて、列に項目が並べられ、行にそれぞれの一致するレコードが表示されます。また、テーブル形式のレポートでは、事前定義された条件またはユーザー入力に基づいてデータをグループ化、並べ替え、およびフィルタできます。テーブル形式のレポートの例として、在庫リスト、商品カタログ、アクティビティレポートなどがあります。


このチュートリアルでは、「商品一覧」レポートを作成する手順を説明します。

  • 新しいレポートを作成する

  • レポートをデータ連結しデータセットを追加する

  • Tableを追加する

  • 列の書式を設定する

  • テーブルヘッダにレポートタイトルを表示する

  • テーブルをグループ化する

  • 複数のデータセットのフィールドを表示する

  • 列ヘッダを表示する

  • 集計フィールドを表示する

  • テーブルデータをフィルタする

  • データ行に条件付き書式を設定する

  • 対話的な並べ替えを設定する

前提条件

次の内容は、デザイナアプリを使用することを前提としています。また、データソースとして利用するGrapeCity Data Serviceにアクセスするには、インターネット接続環境が必要です。

新しいレポートを作成する

デザイナアプリにて、[ファイル]メニューをクリックし、 [RDLレポート] を選択して、新しいレポートを作成します。デザイン面の周囲にあるグレーの領域をクリックし、表示されるより、 [余白] セクションの [スタイル]「狭い」 を設定し、余白を設定します。

新しいレポートの作成方法


レポートをデータ連結しデータセットを追加する

レポートとデータの接続を行うため、データ連結を行います。このチュートリアルでは、データソースとして「GrapeCity Data Service」のNorthWind Data Serviceを使用します。

  • データソースを追加する


    データに接続するため、「NorthWind Data Service」のWebAPIを使用します。このチュートリアルではProductsテーブルCategoriesテーブルを使用します。このようにデータベースに接続するためのレポートデータソースを作成するには、次の手順を実行します。

    • データタブを開き、 [データソース] の横の [+ 追加] アイコンをクリックします。

    • [データソースの編集] ダイアログで、 [名前]「Northwind」 と入力し、 [エンドポイント]「https://demodata-jp.grapecity.com/northwind/api/v1」 と入力します。

    • [変更を保存] ボタンをクリックします。

データソースを追加する方法


  • データセットを追加する


    データセットは、データソースの1つ以上のエンドポイントを表します。このチュートリアルでは「商品一覧」を作成するため、先ずProductsテーブルの値を取得します。以下の手順に従って Products データセットを追加します。

    • データタブをクリックし、 「Northwind」 データソースの横の [+ 追加] アイコンをクリックします。

    • [新規データセット] ダイアログで、 [名前]「Products」 と入力、 [URI/パス]「/Products」 と入力し、 [JSONパス]「$.*」 と入力します。

    • [検証] ボタンをクリックします。

    • [データベースフィールド][10項目] というテキストが表示されていることを確認します。

    • [変更を保存] ボタンをクリックします。

    続いてCategoriesテーブルの値を取得します。以下の手順に従って Categories データセットを追加します。

    • データタブをクリックし、 「Northwind」 データソースの横の [+ 追加] アイコンをクリックします。

    • [新規データセット] ダイアログで、 [名前]「Categories」 と入力、 [URI/パス]「/Categories」 と入力し、 [JSONパス]「$.*」 と入力します。

    • [検証] ボタンをクリックします。

    • [データベースフィールド][3項目] というテキストが表示されていることを確認します。

    • [変更を保存] ボタンをクリックします。

データセットを追加する方法


Tableを追加する

テーブル形式のレポートでデータを視覚化する最も簡単な方法は、Tableコントロールを使用することです。

  • [データ] タブで、 Products データセットをクリックして展開します。

  • Products データセットの横の [フィールドを選択] アイコンをクリックします。

  • productNameunitPriceunitsInStockunitsOnOrderreorderLevel のフィールドを選択します。

  • 選択したフィールドをレポートのデザイン面の左上隅にドラッグ&ドロップします。

Tableを追加する方法


新しく作成されたTabkeには、5つのデータフィールドのフィールド名を表示する ヘッダ行 、および値を表示する 詳細行 があります。レポートをプレビューすると、詳細行にはデータセットのすべての商品に対して選択されたフィールド値が表示され、各ページにテーブルのヘッダが表示されます。

列の書式を設定する

レポートのデザイン面へ戻り、テーブル内の任意の列や行をクリックして、グループエディタを表示します。

最初の列をクリックし、プロパティタブより [幅]「2.5in」 に設定します。同様に2番目の列の [幅]「1.1in」 に設定し、残りの列の [幅]「1.3in」 に設定します。これでテーブルの幅は 7.5in になり、レポートのページサイズと余白によって定義されたレポートの印刷可能領域に適合します。


「unitPrice」 を表示するセルをクリックし、プロパティから [表示形式]「通貨」 に設定します。

最後の列の幅と「unitPrice」セルの書式を設定する方法


レポートをプレビューすると、最初の列の商品名が1行に収まり、列の書式設定により、単価が通貨として表示されます。

テーブルヘッダにレポートタイトルを表示する

デフォルトでは、テーブルヘッダ行には列ヘッダが表示されます。これをレポートタイトルに置き換え、後で列ヘッダを追加します。

  • レポートのデザイン面へ戻り、テーブル内の任意の場所をクリックして、列と行ハンドラを表示します。

  • 最初の行ハンドラをクリックし、プロパティで [高さ] プロパティを 「0.6in」 に設定します。

  • [TEXTBOX] タブに切り替え、選択した行のすべてのセルのプロパティを変更できます。

  • [値] プロパティの右側にある緑色のボックスをクリックし、 [リセット] を選択します。これにより、テーブルセルのデフォルトのテキストが削除されます。

  • [垂直方向の整列] プロパティを 「Middle」 に設定します。

  • テーブルの左上のセルをダブルクリックして、 「商品一覧」 と入力します。

  • プロパティでは、 [テキスト] セクションの [色] プロパティを 「#3da7a8」 に、 [サイズ] プロパティを 「22pt」 に設定します。

テーブルヘッダを変更する方法


レポートをプレビューすると、各ページに 「商品一覧」 タイトルが表示されます。

テーブルをグループ化する

Northwindデータベースには、飲料、魚介類、肉類など、複数の商品カテゴリがあります。 Products データセットの各レコードには、 categoryId フィールドがあります。したがって、商品をカテゴリ別にグループ化できます。テーブルデータをグループするには、2つの方法があります。このチュートリアルでは、最も簡単な方法を紹介します。

  • レポートのデザイン面へ戻り、[データ]パネルで Products データセットをクリックして展開します。

  • テーブル内の任意の場所をクリックして、グループエディタを表示します。

  • categoryId フィールドをグループエディタの <新規グループ> 領域にドラッグ&ドロップします。

  • 新しく表示された Table1_categoryId を選択します。

  • プロパティに移動します。

  • [グループ] セクションの [改ページ] プロパティを 「Between」 に設定します。これにより、各グループは新しいページで開始されます。

グループ化を設定する方法


これで、テーブルにグループヘッダとグループフッタの2つの追加行が表示されます。グループヘッダでは最初の列に {categoryId} 値が表示され、グループフッタは空白で表示されるが、後で集計値を表示します。


レポートをプレビューすると、8ページが生成されます。各ページは商品カテゴリを表し、最初にIDを印刷し、その後に商品を表示します。

複数のデータセットのフィールドを表示する

categoryIdはあまり情報を提供しないので、代わりにカテゴリ名を表示します。 Products データセットには categoryName フィールドが含まれないが、 Categories データセットに含まれます。次のようにLookup関数を使用して、IDによってカテゴリ名を表示します。

  • レポートのデザイン面へ戻り、テーブル内の任意の場所をクリックして、列と行ハンドラを表示します。

  • 2番目の行ハンドラをクリックし、プロパティで [高さ] プロパティを 「0.6in」 に設定します。

  • [TEXTBOX] タブに切り替え、選択した行のすべてのセルのプロパティを変更できます。

  • [値] プロパティの右側にある緑色のボックスをクリックし、 [リセット] を選択します。これにより、テーブルセルのデフォルトのテキストが削除されます。

  • [テキスト] セクションの [サイズ] プロパティを 「16pt」 に、 [太さ] プロパティを 「Bold」 に、 [垂直方向の整列] プロパティを 「Middle」 に設定します。

注意:上記の手順は、 「テーブルヘッダにレポートタイトルを表示する」 で説明した手順と同じです。

  • グループヘッダ行の最初のセルをクリックします。 Ctrl (Windows)または Cmd (Mac OS)キーを押しながら、右側にある4つのセルを選択します。

  • 選択範囲を右クリックして、コンテキストメニューから [セル]>[セルの結合] の順に選択します。詳細については、セルの結合を参照してください。

  • 結合されたセルをダブルクリックして、「 {Lookup(categoryId, categoryId, categoryName, "Categories")} 」と入力します。この関数は、現在のスコープで最初の引数として categoryId を受け取り、 Categories データセットで同じ categoryId の値を持つ行を検索し、対応する categoryName の値を返します。

セルの結合およびLookup関数の使用方法


レポートをプレビューすると、各ページにカテゴリ名が表示され、商品行とは視覚的に異なります。

列ヘッダを表示する

以前のセクションでデフォルトのテーブルヘッダを削除したので、テーブルには列ヘッダが表示されません。以下は、列ヘッダに対して追加のグループヘッダ行を使用します。

  • レポートのデザイン面へ戻り、テーブル内の任意の場所をクリックして、列と行ハンドラを表示します。

  • 2番目の行ハンドラ(グループヘッダ)を右クリックし、コンテキストメニューから [行]>[下] の順に選択します。グループヘッダに2つの行が追加されました。

  • 新しく追加された行のハンドラをクリックし、プロパティで [高さ] プロパティを 「0.5in」 に設定します。

  • [TEXTBOX] タブに切り替え、選択した行のすべてのセルのプロパティを変更できます。

  • [罫線] セクションの [幅] プロパティを 「0.25pt」 に設定します。

  • [罫線] セクションの [スタイル] プロパティの右側にあるアイコンをクリックし、下罫線のスタイルを 「Solid」 に設定します。

  • [罫線] セクションの [色] プロパティを 「Gainsboro」 に設定します。

  • [テキスト] セクションの [色] プロパティを 「#3da7a8」 に、 [太さ] プロパティを 「Bold」 に、 [垂直方向の整列] プロパティを 「Middle」 に設定します。

  • 新しく追加された行の最初のセルをダブルクリックし、 「商品名」 と入力します。

  • 2番目のセルをダブルクリックし、 「単価」 と入力して、ツールバーの [右揃え] ボタンをクリックします。

  • 3番目のセルをダブルクリックし、 「在庫数」 と入力して、ツールバーの [右揃え] ボタンをクリックします。

  • 4番目のセルをダブルクリックし、 「注文数量」 と入力して、ツールバーの [右揃え] ボタンをクリックします。

  • 5番目のセルをダブルクリックし、 「再注文ポイント」 と入力して、ツールバーの [右揃え] ボタンをクリックします。

レポートをプレビューすると、各ページに正確に配置された列ヘッダが表示されます。

集計フィールドを表示する

Tableデータ領域は、さまざまな集計フィールドをサポートします。集計フィールドを使用して、 「商品一覧」 レポートではグループフッタに在庫数および注文数量フィールドの合計を表示できます。

  • レポートのデザイン面へ戻り、テーブル内の任意の場所をクリックして、列と行ハンドラを表示します。

  • 最後の行のハンドラをクリックし、プロパティで [高さ] プロパティを 「0.5in」 に設定します。

  • [TEXTBOX] タブに切り替え、選択した行のすべてのセルのプロパティを変更できます。

  • [罫線] セクションの [幅] プロパティを 「0.25pt」 に設定します。

  • [罫線] セクションの [スタイル] プロパティの右側にあるアイコンをクリックし、上罫線のスタイルを 「Solid」 に設定します。

  • [罫線] セクションの [色] プロパティを 「Gainsboro」 に設定します。

  • [テキスト] セクションの [太さ] プロパティを 「Bold」 に、 [垂直方向の整列] プロパティを 「Middle」 に設定します。

  • グループフッタ行の最初のセルをダブルクリックし、 「合計」 と入力します。

  • 3番目のセルをダブルクリックし、 「{Sum(unitsInStock)}」 と入力します。

  • 4番目のセルをダブルクリックし、 「{Sum(unitsOnOrder)}」 と入力します。

レポートをプレビューすると、各グループに在庫数と注文数量の合計がフッタに表示されます。

テーブルデータをフィルタする

Products データセットにはいくつかの商品が生産中止とマークされており、Northwindデータベースでは各商品に対応するフラグがあります。以下は、生産中止になった商品をフィルタして、テーブルに表示されないようにします。

  • レポートのデザイン面へ戻り、テーブル内の任意の場所をクリックして、コントロールを選択します。

  • プロパティタブにテーブルのプロパティを表示します。

  • [データ] セクションの [フィルタ] プロパティの横の [+ 追加] アイコンをクリックします。

  • [+ 追加] ボタンをクリックし、リストから [discontinued] を選択します。

  • 「=」 記号の右側にあるテキスト領域をクリックして、 「False」 と入力します。

フィルタを追加する方法


レポートをプレビューすると、いくつかの商品が表示されません。

データ行に条件付き書式を設定する

Northwindデータベースでは、特定の商品を補充するために必要な注文数量を示す reorderLevel フィールドがあります。作成したテーブルの最後の列には、各商品の reorderLevel の値が表示されます。以下は、再注文ポイントに達した商品を、警告に関連する背景色で強調表示します。

  • レポートのデザイン面へ戻り、テーブル内の任意の場所をクリックして、列と行ハンドラを表示します。

  • 4番目の行ハンドラをクリックし、プロパティで [高さ] プロパティを 「0.4in」 に設定します。

  • [TEXTBOX] タブに切り替え、選択した行のすべてのセルのプロパティを変更できます。

  • [背景色] プロパティを「 {IIF(unitsInStock <= reorderLevel, "MistyRose", "Transparent")} 」に設定します。この式は、IIF関数を使用して、選択した行のすべてのテーブルセルに条件付き書式で背景色を適用します。

  • [垂直方向の整列] プロパティを 「Middle」 に設定します。

レポートをプレビューすると、再注文ポイントに達した商品がMistyRose色で強調表示されます。

対話的な並べ替えを設定する

Tableデータ領域は、次の2種類の並べ替え方法をサポートしています。

  • 設計時の並べ替え: レポートの作成者がデータの並べ替え方法を決定します。

  • 対話的な並べ替え: プレビュー時にデータを並べ替える方法を決定します。

以下は、作成したテーブルで 「再注文ポイント」 列を除いてすべての列に対話的な並べ替えを追加します。

  • レポートのデザイン面へ戻ります。

  • 「商品名」 テキストを表示する3番目の行の最初のセルをクリックし、プロパティで [ユーザー定義の並べ替え] セクションの [並べ替え] プロパティの隣にあるラジオボタンをクリックして、 「productName」 を選択します。

  • 同様に、 「単価」 テキストを表示する2番目のセルをクリックし、プロパティで [ユーザー定義の並べ替え] セクションの [並べ替え] プロパティの隣にあるラジオボタンをクリックして、 「unitPrice」 を選択します。

  • 「在庫数」 テキストを表示する3番目のセルをクリックし、プロパティで [ユーザー定義の並べ替え] セクションの [並べ替え] プロパティの隣にあるラジオボタンをクリックして、 「unitsInStock」 を選択します。

  • 「注文数量」 テキストを表示する4番目のセルをクリックし、プロパティで [ユーザー定義の並べ替え] セクションの [並べ替え] プロパティの隣にあるラジオボタンをクリックして、 「unitsOnOrder」 を選択します。

「商品名」列に対話的な並べ替えを追加する方法


レポートをプレビューすると、列ヘッダに [並べ替え] アイコンが表示されます。このアイコンをクリックすると、商品名、単価、在庫数、注文数量で商品を並べ替えることができます。各グループ内のデータは、他のグループから独立して並べ替えられます。