2017-08-14 5 views
0

私のSSRSレポートのフィールドのいずれかの条件付きフォーマットを設定しようとしています。フォントの色を変更する基本的な書式設定。これは、レポートビルダでの私の元の表現されています。しかし、私は100種類の「ID_name」値がすべて共通の「デルタ」の値を超えるためにこれをしなければならないSQL "IN"句と同じSSRSフィルタを探しています

=IIf(Fields!delta.Value < 
      IIf("ex1"=Fields!ID_name.Value 
       ,0.95 
        ,IIf("ex2"=Fields!ID_name.Value 
         ,0.988 
         ,0 
        ) 
       ) 
,"Red" 
,"Black") 

SQLのIN句に似たものがあると、私は "( ''、 ''、 '')形式ですべての" ID_name "の値を貼り付けできるようになりました。このような何か:

=IIf(Fields!delta.Value < 
    IIF(Fields!ID_name.Value IN ('ex1','ex2','ex3','...') 
     ,0.95 
      ,IIF(Fields!ID_name.Value IN ('ex4','ex5','ex6','...') 
       ,0.988 
       ,0 
       ) 
       ) 
,"Red" 
,"Black") 

は、私はそう句は動作しません含まれている別のデルタ値を持っている他の人と式IIf(InStr関数()メソッドが、私の「ID_name」シェア類似した名前を試してみました

このことが可能です。 ?!任意およびすべての入力に感謝感謝!!

+0

ID名ex1、ex2などは、SQLでアクセス可能なものですか?これは、パラメータ化されたDataSetまたはDataSetとLookup関数を使用してこの問題に近づく可能性があるためです。 –

答えて

0

あなたはこれを行うことができますが、勝った区切り文字のいくつかの種類にテキスト値をラップする必要があります; tは...

[ex1][ex2]などのようにチェックするために自分の価値観に表示されます

あなたはcont ainsメソッドを使用しますが、通常のINステートメントとは逆の方法で処理する必要があります。このようなもの..

IIF ("[ex1][ex2][ex3]".Contains("[" & Fields!ID_name.Value & "]"), 0.95, FalseBitHere) 

勿論、カンマを使用することもできます。テストするために実際の値に表示されます。

+0

あなたのご意見ありがとうございます。心から感謝する。私はちょうど "デルタ"で "ID_name"をグループ化するケースを使用して別の列を追加することにしました。より簡単で簡単なオプションでした –

関連する問題