以下は私が作成したレポートです。画像の赤い線で描かれているように、すべてのグループの後に線を引きたいのですが。
テキストボックスのプロパティ>ボーダースタイル式を使用して干渉を試みました。しかし、いったん閉じて再び開くと、それは残りません。
グループ全体に境界線を設定すると、グループ内の不要な行ごとに線が繰り返されます。
何か助けは?
View
]タブをクリックします。Properties
チェックボックスがオンになっていることを確認して、[プロパティ]ウィンドウを表示します。ProductionCountry
には、グループ行全体を選択します。行のプロパティが表示されます。Border
-> BorderStyle
-> Top
まで掘り下げます。値はおそらく空白です。Top
フィールドに、上部の境界線について以下の式を入力します。トップフィールド値:
=IIF(Fields!ProductionCountry.Value = Previous(Fields!ProductionCountry.Value) OR Fields!ProductionCountry.Value = First(Fields!ProductionCountry.Value, "mydataset"),"None","Solid")
上記のmydataset
の値を、レポートのデータセット名と一致するように変更します。
注:
現在の行が前の行と同じグループに属している場合OR現在のグループ行はデータセットの最初であり、境界線をなしに設定し、境界線を実線に設定します。
詳細行全体を選択し、この式をBorderStyle-Topプロパティに追加します。
=IIF((Previous(Fields!ProductionCountry.Value) <> Fields!ProductionCountry.Value)
OR (Previous(Fields!IndustryName.Value) <> Fields!IndustryName.Value)
OR (Previous(Fields!ProductGroup.Value) <> Fields!ProductGroup.Value),
"Solid",
"None")
@niktrsの答えを改善するために、私は次のことを提案します。
=Iif(Fields!ProductionCountry.Value = Previous(Fields!ProductionCountry.Value) OR IsNothing(Previous(Fields!ProductionCountry.Value)),"None","Solid")
これには、最初のグループ行に行を追加しないという利点があります。たとえば、並べ替えやフィルタリングが行われている場合など、表示される最初のグループがデータセットの最初のグループではない場合でもです。
私が本当に簡単だと思ったのは、グループの上枠を定義することです。このようにして、新しいグループごとに、前のグループの最後の行と新しいグループの最初の行の間に境界線が追加されます。また、ヘッダーの後に境界線を追加します。
このソリューションは、最後の行の終わりに境界線を描画しません。その境界線も必要な場合は、グループを含むTablixの下の境界線を定義できます。
=Iif(Fields!ProductionCountry.Value ="","None","Solid")
また、境界線のデフォルトを変更します上記の式の上、左、左、右、右、下、上、なし。長方形のプロパティを変更して、ブート順を変更します。
私は上枠にこのようにしてみましたが、うまくいきました...
私の場合、集約値があるため、前の関数を使用できません。そのため、グループの最初の値がそのグループの最初の値になることがわかっているグループの最初の値をハードコーディングしました。次にBorder Styleこの表現を使った
Top =iif(Fields!Group_Name.Value="Hard Corded(first value)","Solid","None")
ボーダーカラーでもこの表現を使用しました
=iif(Fields!Group_Name.Value="Hard Corded(first value)",,"Black","LightGrey")