質問

ASP.NETでActiveReportsを使用していますが、同様のレポートコンポーネントへの回答で十分だと思います。

次のように、単一のレポートにマージして表示する2つの結果セットがあります:

Table 1:

Name Job              Start End
Jack Some service     1992  1997
Jack Some Sales Exp   1998  2007
Jane Some programming 2000  2003

Table 2:

Name Training
Jack Shiny French Certificate
Jane Crappy database certificate
Jane Some courses in management

レポートは次のようになります。

Jack
  Job History:
    Some Corp, 1992-1997
    Some Sales Exp, 1998-2007
  Training History:
    Shiny French Certificate
Jane
  Job History:
    Some programming, 2000-2003
  Training History:
    Crappy database certificate
    Some courses in management

2つのテーブルをマージする方法と、与えられた例のレポートを達成するためにレイアウトを設計する方法は?

更新:

お気づきかもしれませんが、私は単一の選択でこれをしようとはしていません。ソースとして2つのデータテーブルがあり、それらを手動でマージして単一のデータソースを取得できます。グループ化を使用しようとしていますが、従業員ごとに2種類のグループが必要です。 1つは仕事用、もう1つはトレーニング用です。グループまたはサブレポート機能を使用してこの種のデータをバインドするにはどうすればよいですか(必要に応じてどのようにデータを処理する必要がありますか?)

役に立ちましたか?

解決

サブレポートを使用... 2つのサブレポートを持つメインレポートを作成します。ジョブ履歴用の1つのサブレポートとトレーニング履歴用の1つのサブレポート。メインレポートには、人のリストを返すクエリが必要です。次に、メインレポートの詳細の各人について、これらの2つのクエリを調整する各子サブレポートにパラメーターを設定し、親レポートに表示されている現在の人のみのジョブ履歴またはトレーニング履歴を一覧表示します。

この手順をステップごとに実行する方法を説明する詳細なチュートリアルは、Data Dynamics Webサイトこちら。一部の概要情報は、こちら

にもあります。

他のヒント

一般に、単一のSELECTステートメントでそれを行うことはできません。ほとんどのレポートツールは、ある種の「サブレポート」を提供します。または「内部セクション」別のSQL質問で実行され、メインレポートからいくつかのパラメーターが渡されます。 2つのサブレポートと1つのマスターレポートを使用できます。

" left-join"でこの2つのテーブルを選択し、" GroupHeader / Footer"を作成する必要があります。レポートのセクションと" DataField"の設定" GroupHeader"でグループ化として使用する必要があるフィールドへのセクション。

ActiveReportsのサンプルを見ると、グループ化のサンプルが確実にあります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top