次の方法で共有


データのグループ化

更新 : 2006 年 4 月 14 日

各データ領域 (テーブル、マトリックス、一覧、およびグラフ) 内のデータは、フィールドおよび式によってグループ化できます。テーブル内のグループを使用して、テーブルのデータの論理的なセクションを作成できます。また、グループ ヘッダーやグループ フッターに集計やその他の式を追加できます。マトリックスでは、グループは動的列または動的行として表示されます。グループを他のグループ内で入れ子にし、集計を追加することもできます。一覧を使用して、レポートに複数のグループを作成したり、一覧内で入れ子にされたグループの一覧を配置することもできます。

データ領域内のデータをグループ化する方法については、以下のトピックを参照してください。

再帰型階層

再帰型階層は、データにすべての親子リレーションシップが表現されているデータの階層です。たとえば、マネージャと従業員のリレーションシップを表示する組織図は、再帰型階層を使用して作成できます。このような階層では、テーブルに従業員 ID とマネージャ ID の列を追加します。マネージャ ID から他の従業員の従業員 ID を参照して、従業員の階層を作成します。

再帰型階層を構築するには、データ領域内のグループに特定のプロパティを設定する必要があります。グループ式として一意の ID (従業員 ID など) を保持するフィールドを使用し、Parent プロパティに親の ID (マネージャ ID など) を保持するフィールドを使用します。再帰型階層として定義されたグループ (Parent プロパティを使用しているグループ) には、グループ式は 1 つしか設定できません。

次のチュートリアルでは、AdventureWorks データベースの Employee テーブルを使用した再帰型階層を作成します。このチュートリアルでは、レポート、データセット、クエリ、およびテーブルの作成方法を理解していることを前提としています。これらの機能の詳細については、これらの機能についてのドキュメントを参照してください。

  1. [データ] ビューで、AdventureWorks データベースを基にデータセットを作成します。

  2. このデータセットで、次のクエリを使用します。

    SELECT FirstName, LastName, EmployeeID, ManagerID
    FROM   HumanResources.Employee E INNER JOIN
           Person.Contact C ON  E.ContactID=C.ContactID
    
  3. [レイアウト] ビューで、テーブル データ領域を作成します。

  4. テーブルの最初の詳細セルに、次の式を入力します。

    =Fields!FirstName.Value & " " & Fields!LastName.Value
    
  5. テーブルのコーナーを右クリックし、[プロパティ] をクリックします。

  6. [グループ] タブで、[グループ化の詳細] をクリックします。

  7. [全般] タブの [式] ボックスで、次の式を入力または選択します。

    =Fields!EmployeeID.Value
    
  8. [親グループ] ボックスで、次の式を入力または選択します。

    =Fields!ManagerID.Value
    

Level 関数

テキスト ボックスの余白に Level 関数を使用して、階層内のレベルに応じて従業員名をインデントできます。上の例のテーブルでこの操作を行うには、最初の詳細セルのテキスト ボックスを選択します。テキスト ボックスのプロパティ ウィンドウを開きます。[余白] ノードを展開して、[左] をクリックします。ドロップダウン リストから [<式>] を選択して、次の式を入力します。

=Convert.ToString(2 + (Level()*10)) + "pt"

余白のプロパティはすべて、nnxx 形式の文字列が必要です。ここで、nn は数、xx は単位です。既定では、テキスト ボックスの余白は 2 ポイントです。上の式では、Level 関数を使用する文字列が構築され、レベルに基づいて余白のサイズが増加されます。たとえば、レベルが 1 の行では余白は 12 ポイント (2 + (1*10)) に、レベルが 3 の行では 32 ポイント (2 + (3*10)) になります。

Level 関数の詳細については、「Level 関数 (Reporting Services)」を参照してください。

参照

概念

データ領域の処理
テーブル データ領域の処理
マトリックス データ領域の処理
一覧データ領域の処理
グラフ データ領域の処理

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 4 月 14 日

変更内容 :
  • AdventureWorks2000 ではなく AdventureWorks データベースを操作するクエリに変更しました。