8

レポートにプッシュできるローカル データ ソースが 2 つあります。問題なく動作します。しかし、レポートをどのように設定すればよいでしょうか。1 つのデータ ソースには、従業員のリストと従業員に関する情報が含まれています。もう 1 つは、各従業員の一連の労働時間を含みます。

従業員のリストにテーブルを使用し、各従業員の下に勤務時間 (勤務時間) の別のテーブルを作成したいと考えています。

これは可能ですか?サブレポートを使用する必要がありますか? それらを 1 つのデータソースにマージする必要がありますか? =/

4

4 に答える 4

5

新しい回答を追加して、通知が送信されるようにします。

サブレポートを使用するのが最も簡単な方法です。サブレポートを表のセルにドラッグ アンド ドロップするだけで、そのセルのコンテンツ領域に表示されます。サブレポートを右クリックすると、サブレポートのパラメーターを編集できます。SSRS のほとんどの値と同様に、パラメーターはテーブル内のフィールドを使用する式に設定できます。

サブレポート内で結果をフィルター処理して、パラメーターとして渡された従業員に関連付けられたレコードのみを表示します。

もう 1 つの方法は、結合を使用して 2 つのデータソースを結合することです。これにより、次のようなデータが得られます。

employee1 time1.1
employee1 time1.2
employee1 time1.3
employee1 time1.4
employee2 time2.1
employee2 time2.2
employee2 time2.3

次に、繰り返される列 (この例では従業員) にグループを作成し、それらの列で HideDuplicates プロパティを有効にすることができます。結果は次のようになります。

employee1 time1.1
          time1.2
          time1.3
          time1.4
employee2 time2.1
          time2.2
          time2.3
于 2009-05-04T15:10:47.793 に答える
5

私が知る限り、サブレポートを使用せずに 1 つのデータセットを別のデータセット内にネストすることは不可能です。

これは、次の 2 つのいずれかを行う必要があることを意味します。

  1. 2 つのデータソースを 1 つのデータソースにリファクタリングします。たとえば、従業員と各従業員の勤務時間を結合します。次に、Table オブジェクトのグループ化プロパティを使用して、リストを希望どおりに書式設定できます。

  2. 2 つのデータ ソースを結合することが実際的でない場合は、サブレポートを使用して目的を達成できます。勤務時間のデータ ソースを含むサブレポートを作成し、現在の従業員のパラメーターを指定します。このパラメータで勤務時間をフィルタリングします。

    親レポートでは、サブレポートをリストに配置し、現在の行の従業員 ID をパラメーターとして渡すことができます。

    サブレポートの使用には、いくつかの形式上の癖があることに注意してください。ほとんどの場合、それらを回避することができましたが、推奨される方法は間違いなく上記の 1 番です。

于 2009-05-01T15:55:38.647 に答える
1

複数のデータソースを設定するには...レポートに 2 つの個別のリスト オブジェクトを配置する必要があります。デザイナーに移動すると、ツールボックスに新しい「リスト」を入れることができます。その後、別のレポートを作成できます。その 2 番目のリストを、セカンダリ データソースを通じて実装するセカンダリ データセットにリンクします。

少し大袈裟ですが、基本的な考え方は、レポート内の各リスト オブジェクトは 1 つのデータ ソースにしかリンクできないということです。

于 2009-04-28T12:49:26.403 に答える
0

レポート ドキュメント クラスには、テーブルのコレクションを持つ「データベース」というプロパティがあります。オブジェクトの個別のリストをレポートに配置するために、これらのテーブルのそれぞれで「SetDataSource」を使用できます。

于 2010-06-01T16:11:24.563 に答える