1

私の状況は

  1. パラメータがあります。これはリストであり、複数の値を許可します。つまり、リストの最初のレコードは「すべて選択」です

  2. ユーザーが [すべて] を選択すると、リストに一致するすべてのレコードと空白のレコードをレポートに含める必要があります。(私のデータセットはこれらを返します)

  3. ユーザーが 1 つまたは少数のみを選択した場合、これらのレコードのみを含めたいと思います。空白のものはありません

私の問題: データセットにリスト内のパラメーターを評価するフィルターがありますが、条件付きフィルターを追加して、選択が「すべて選択」になるときに空白のレコードを含める必要があります。式を使用しようとしましたが、これは機能しません。仕事

フィルター式 Fields!NAME.Value in = Parameters!List.Value !!!!!!!!!!!! よく働く

しかし、私はそれを次のように変更する必要があります

If Parameters!List.Value  =  'Select All' Then
   Fields!NAME.Value in = Parameters!List.Value  or Fields!NAME.Value = " "
Else
   Fields!NAME.Value in = Parameters!List.Value
End

解決できる人にアドバイスをお願いします!!!

私はSSRS R2で働いています

ありがとう!!

4

4 に答える 4

4

これは私のために働いた

式: =IIF(Parameters!pLocation.Value <> "すべての場所", Fields!LOCATION.Value, FALSE)
演算子: =
値: =IIF(Parameters!pLocation.Value <> "すべての場所", Parameters!pLocation.Value 、 間違い)

于 2013-05-29T20:54:10.347 に答える
2

データセットでフィルターを使用する場合は、次のことを試してください。

Expression: [NAME]
Operator: IN
Value (fx): =Split(Replace(Join(Parameters!List.Value, ","), "Select All", " "), ",")

この道に沿って作業してみてください。基本的に、Join()を使用して複数値の項目を文字列に再構築し、Split()を使用して配列に再構築できます。その間に、変更(たとえば、「すべて選択」を「」に変換)、追加(「OR」の模倣)、または余分なアイテムの削除のために、それらを操作できます。

于 2012-06-22T07:38:26.497 に答える
1

このようにすれば、ロジックを 1 か所に配置できます。すべての値でない限り、パラメーターをフィルター処理すると、フィルターは常に一致します。少しだけきれいに。

式: =IIF(Parameters!pLocation.Value <> "すべての場所", Fields!LOCATION.Value, "すべての場所")

演算子: =

値: =Parameters!pLocation.Value

于 2014-03-02T22:12:40.117 に答える
1

これには別の方法があります。

もう 1 つのアイテムをパラメーター データセット値に追加し、ラベルとして「利用できません」と言い、値を null にします。その後、ストアド プロシージャに変更はなく、データを取得できます。ユーザーが特定のアイテムを選択すると、それらの値のみが取得されます。彼がすべてを選択すると、ヌルのデータも他のすべてのデータとともに取得します。

これが役立つことを願っています

于 2012-05-16T12:09:43.340 に答える