1

SSRSの条件付き書式設定に問題があります。Switch&IIFステートメント(下記)を試しました。レポートは実行されますが、期待どおりに色が返されません。今日<=である日付を赤で強調表示しようとしていますが、それ以外はすべて黒になります。このフィールドが日付フィールドであるかどうかは重要ですか?私はここで同じ問題を抱えているが解決策がない他の質問を見てきました。今日が答えを見つけるための私の幸運な日になることを望んでいました。これが私が試したことです。ご意見をお寄せいただきありがとうございます。

        =Switch( Fields!Decision_Must_Be_Made.Value <= today(), "Red",  
         Fields!Decision_Must_Be_Made.Value > today(),  "Black")

        =IIF( Fields!Decision_Must_Be_Made.Value <=today(), "Red",  "Black")
4

2 に答える 2

1

はい、フィールドが日時フィールドであるかどうかは間違いなく重要です。文字列の場合は、最初に日時に変換する必要があります。それをどのように行うかは、文字列の形式によって異なります。ただし、データベースの日時フィールドを使用できると、はるかに優れています。(SQLクエリの選択で日付を文字列にフォーマットする場所を見てきました。そうしないでください。できるだけ遅くフォーマットしてください:SSRSでは、テキストボックスレベルで。)

dateTimeの場合は、数式を分割して、期待どおりに機能していないものを見つけ、デバッグの場合のみ、より見やすくします。これをセルの式に入れます。次に例を示します。

=IIF( Fields!Decision_Must_Be_Made.Value <=today(), "Old",  "New")

色の数式を追加する場所に関する情報を追加するために編集しました。

適切な場所で色を指定するIIFがないようです。これを指定できる場所はいくつかあります。テキストボックスまたはプレースホルダーのいずれかのプロパティにある必要があります。これらの値は単に日付フィールド(=Fields.Decision_Must_Be_Made.Value)である必要がありますが、フォントの色は個別に指定する必要があります。これを行う1つの場所は、[テキストボックスのプロパティ]ダイアログです。フォントペインで、フォントの色を指定する必要があります。Fx記号は、数式を指定できることを示します。'= iif ...'式を入力する場所については、このボタンをクリックしてください。

テキストボックスのプロパティフォントペイン

于 2012-04-04T22:39:19.040 に答える
0

確かに、これはあなたのシナリオに答えませんが、他の誰かを助けるかもしれません。レコードがないか、レコードが重複しているときにエラーメッセージを表示したいというシナリオを使用して、スタンドアロンのテキストボックスで問題が発生しました。私の数式"=IIf(IsNothing(First(Fields!MyField.Value))またはFirst(Fields!MyField.Value)<> Last(Fields!MyField.Value)、" Red "、" SomeOtherColorButNotBlack ")正しい前色(「黒」になりました)、ただし、TablixまたはMatrixでTrueまたはFalseに相当する同様の式を実行すると、問題なく機能します。MSが解決する別の式です。色を常にに設定することで、独自の回避策を見つけました。赤になり、エラーがない場合はテキストの式が空白になります。

于 2017-09-18T00:58:10.310 に答える