0

レポートには2種類の日付があります:DateFrom, DateToEffDateFrom, EffDateTo ユーザーはどちらの日付を使用するかを選択できます。アクセス可能な 'IIF'がこの数の引数を受け入れないため、オーバーロードの解決に失敗しました。 SSRS 2012

enter image description here ここではチャートです。このチャートでは

enter image description here

私はBar LineLabelsのみがユーザによって選択された日付内に表示します。 したがって、ユーザーがDateFrom = '3/1/2017'とDateTo = '4/1/2017'を使用するように選択した場合、行とラベルは1ヶ月間のみ表示されます。 しかし、EffDateFrom = '3/1/2017'とEffDateTo = '4/1/2017'を使用するように選択した場合、行とラベルは有効日で1月間のみ表示されます。 だからLabelDateで、そのために私はこの表現を書いた:

=IIF(Fields!MonthNumber.Value>= MONTH(Parameters!DateFrom.Value) AND Fields!MonthNumber.Value<= MONTH(Parameters!DateTo.Value) 
OR 
Fields!MonthNumber.Value>= MONTH(Parameters!EffDateFrom.Value) AND Fields!MonthNumber.Value<= MONTH(Parameters!EffDateTo.Value) 
,(RunningValue(Fields!Premium.Value, sum,Nothing)/RunningValue(Fields!Total_Forcast.Value, sum, Nothing)) 
, Nothing) 

をしかし、それは私にこのエラー与える:なぜそれこの表現を受け入れるdoes notの

enter image description here

を? 使用する日付を確認するより効率的な式を書く方法はありますか?

おかげ

答えて

1

は、私は、これはいくつかのよく配置括弧を使用してコンパイルするようになった:

=IIF((Fields!MonthNumber.Value>= MONTH(Parameters!DateFrom.Value) And 
    Fields!MonthNumber.Value<= MONTH(Parameters!DateTo.Value)) 
    Or 
    (Fields!MonthNumber.Value>= MONTH(Parameters!EffDateFrom.Value) And 
    Fields!MonthNumber.Value<= MONTH(Parameters!EffDateTo.Value)), 
     (RunningValue(Fields!value.Value, Sum, Nothing)/RunningValue(Fields!value.Value, Sum, Nothing)) 
, Nothing) 

はそれに打撃を与えます。

+0

ありがとうございます! – Oleg

関連する問題