ActiveReports for .NET 18.0J
並べ替え
ActiveReportsユーザーガイド > 概念 > 対話的な機能 > 並べ替え

並べ替えの機能を使用し、実行時にレポートのデータを並べ替えることができます。この機能により、データをアルファベット順、または数値を昇順、降順で並べ替えることができます。

ページレポート/RDLレポートでの並べ替え

ページレポート、またはRDLレポートでは、データ領域、グループ化されたデータに対して並べ替えを適用することができます。ページレポートの場合は、ページ全体に対して並べ替えを適用することも可能です。また、SQLクエリでデータを直接並べ替えることができます。TextBoxコントロールに対して、対話的な並べ替えも設定可能です。

レポートの異なる範囲で並べ替える

並べ替えは、レポートの異なる範囲に対して設定することができます。ActiveReportsでは、データ領域、グループ化されたデータ、ページのダイアログに[並べ替え]ページを提供しています。

データ領域での並べ替え

Table、またはListデータ領域内のデータを並べ替えることができます。並べ替えを設定するには、データ領域の[並べ替え]ページへ移動し、並べ替えを設定します。

Tablix、BandedListChartの各データ領域では、グループ化されたデータに対してのみ並べ替えを設定することができます。したがって、これらのデータ領域独自の[並べ替え]のページはありません。

グループ化されたデータの並べ替え

[並べ替え]タブは、すべてのデータ領域のダイアログの[グループ]ページと、[List]ダイアログの[詳細行のグループ化]ページで用意されています。また、グループ化されたデータのソート順も変更することができます。このオプションは、データ領域内にグループが設定されている場合に有効になります。

ページでの並べ替え

ページレポートでは、動的な値に基づきグループ化されたページ上で並べ替えを設定することができます。ページで設定した並べ替えは、レポート形式のレイアウトで配置されているすべてのデータ領域に適用されますが、データ領域に並べ替えを設定すると、データ領域のデータのみが並べ替えられます。詳細については、「データの並べ替え」を参照してください。

SQLクエリで並べ替えを設定する

レポートのデータを取得するには、データソースに接続し、データセットを作成して、クエリを定義する必要があります。クエリの「ORDER BY」キーワードを使用し、データを昇順、または降順に並べ替えることができます。

デフォルトでは、「ORDER BY」キーワードは昇順にデータを並べ替えますが、クエリに「DESC」キーワードを使用してデータを降順に並べ替えることができます。たとえば、以下のようなクエリを指定することで、ReelsデータベースのMovieテーブルにあるTitleフィールドのデータを並べ替えることができます。
SELECT * FROM Movie ORDER BY Title
または
SELECT * FROM Movie ORDER BY Title ASC

以下のようにクエリを指定することで、Titleフィールドのデータを降順に並べ替えることができます。
SELECT * FROM Movie ORDER BY Title DESC

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

データ領域内にあるTextBoxコントロールに対して、対話的な並べ替えを設定することにより、ユーザーがViewer上でデータを並べ替えることができます。

対話的な並べ替えを設定するには、[並べ替え]ページにある[対話的な並べ替えを有効にする]オプションを選択する必要があります。

TextBoxコントロールに対して、対話的な並べ替えを設定すると、ビューワ、またはプレビュータブで並べ替えのアイコンが表示されます。このアイコンをクリックし、ユーザーがTextBox内のデータを昇順、または降順に並べ替えることができます。

対話的な並べ替えのページでは、次のオプションが用意されています。

詳細については、「対話的な並べ替え」を参照してください。

セクションレポートでの並べ替え

セクションレポートでは、並べ替えは明示的に用意されていませんが、データベースからデータを取得する際に使用するSQLクエリを変更し、並べ替えを実現することができます。

SQLクエリで並べ替えを設定する

レポートをデータソースに接続し、データの取得に指定するクエリで「ORDER BY」キーワードを追加し、データを並べ替えることができます。

デフォルトでは、「ORDER BY」キーワードは昇順にデータを並べ替えますが、クエリに「DESC」キーワードを使用してデータを降順に並べ替えることができます。たとえば、以下のようなクエリを指定することで、NWindデータベースのCustomersテーブルにあるCompanyNameフィールドのデータを並べ替えることができます。
SELECT * FROM Customers ORDER BY CompanyName
または
SELECT * FROM Customers ORDER BY CompanyName ASC

以下のようなクエリを指定することで、CompanyNameフィールドのデータを降順に並べ替えることができます。
SELECT * FROM Customers ORDER BY CompanyName DESC

関連トピック