-2

RaceDateRaceCourse、の 3 つのパラメータを持つレポートがありますSilksColoursSilksColoursパラメータはオプションです。

パラメータが選択されている場合SilksColours、レポートの行を黄色で強調表示し、他のすべての行は白のままにします。

これは可能ですか?

4

1 に答える 1

1

強調表示する行の TextBox ごとに、Background Color プロパティを式ベースに設定し、パラメーター値を行の値と比較する必要があります。たとえば、次のようになります。

=IIf(Fields!Colour.Value = Parameters!SilksColours.Value, "Yellow", "White")

コメントの後に編集:

OK、お気づきのように、ここには 2 つの質問があります。

デフォルトのパラメータ

特に値を指定しない機能を備えた多値パラメーターが必要です。値を受け入れるように複数値を設定することはできないNULLため、すべてをキャッチする値を DataSet に追加する必要があります。そのため、パラメータは次のような値に基づいています。

ここに画像の説明を入力

この DataSet を使用するようにパラメーターを設定し、既定値をNoneに設定します。

ここに画像の説明を入力

ここに画像の説明を入力

これで、どの行も強調表示されないデフォルトのパラメーターができたので、ユーザーは必要に応じて無視するか、必要に応じて値を選択できます。

ここで 1 つの小さな問題があります。ユーザーは [なし]やその他の値も選択できます。これらは相互に排他的ではありませんが、それで十分なはずです。

行の強調表示

次のステップは、必要なすべての TextBoxの背景色の値を設定することです。複数の色を選択できるため、次のように、複数値パラメーターを単一のものとは異なる方法で処理する必要があります。

=IIf(InStr(Join(Parameters!Colour.Value, ","), Fields!Colour.Value) > 0
    , "Yellow"
    , "White")

したがって、JOIN関数を使用して選択した値の文字列リストを作成し、行の値がそのリストのどこかにあるかどうかを確認する必要があります。すべてをまとめると、次のようになります。

パラメータにはデフォルト値があり、行が強調表示されていないため、レポートはすぐに読み込まれます。

ここに画像の説明を入力

1 つの色を選択すると、行が強調表示されます。

ここに画像の説明を入力

複数の行を強調表示するには、複数の色を選択します。

ここに画像の説明を入力

うまくいけば、これがあなたが求めているものです!

于 2013-04-26T13:17:07.597 に答える