0

私はかなり単純な問題を抱えていますが、これを理解するのに十分なほど SSRS とスコープを理解しているとは思いません。

私が持っているのは、複数の予定 (別のエンティティ) を持つことができるケース (1 つのエンティティ) です。予定には、日付とステータスがあります。直近の予約日とその状況を表示したい。使用している日付を表示するには

=Min(IIf(Fields!appt_start.Value > Globals!ExecutionTime, Fields!appt_start.Value, Nothing))

アイデアは、最初に将来発生する予定のみを選択し、次に最も早い予定を取得するというものです。それはうまくいくようです。

ここで、同じフィルタリング ロジックを適用する必要がありますが、日付ではなく予定のステータスを表示します。私の理解では、これがスコープの出番です。スコープを必要な予定だけに制限し、そのステータスを表示することができます。しかし、私はそれを行う方法を理解していません。

4

1 に答える 1

0

この特定の問題に対処する 1 つの方法は、フィルターを First 関数と組み合わせて使用​​することです。テーブルにフィルターを追加して、現在より後の日付のみを表示します。グループ化されていないテーブル行を使用し、次のような式を使用します。

=First(Fields!appt_start.Value)
=First(Fields!appt_status.Value)

もう 1 つのオプションは、計算フィールドをデータセットに追加して、日付が現在の日より後のステータスなどの値のみを入力することです。これは、後でより多くの情報を表示する必要がある場合に便利です。

編集:はい、First 関数が正しく機能するように、日付でデータを並べ替える必要があります。SSRS では、実際には 3 つの異なるレベルでフィルター処理できます。データセットを右クリックし、[データセット プロパティ] に移動します。[フィルター] をクリックします。[追加] をクリックします。必要に応じて式、演算子、および値を入力します。これは、グループ プロパティまたはテーブル プロパティでも実行できます。

于 2013-06-07T03:54:14.313 に答える