我有SSRS报告数据,在某些单元格中,我们将有两个不同的东西,例如: SourceDB中的旧值
FirstName LastName
Robin Son
BOB Alice
更新数据库值:
FirstName LastName
Robin S
BOB A
进行一些更新后,我们将在“审核表”中包含更改以及新旧值,因此将按以下方式创建报告。
FirstName LastName
Robin was: Son now: S
BOB Was: Allice now: A
是否可以将Was值设置为红色,将now值设置为绿色。 在最坏的情况下,如果不可能将整个单元格值变成红色。
感谢您的建议或答案,甚至反馈。
答案 0 :(得分:2)
如果您无法按照Ashiko的非常明智的建议更改Audit
表以将Was
和Now
值保留在单独的列中,则需要解析出您在报告中的字符串值。
您可以执行此操作的一种方法是通过具有基于表达式的值的placeholder
。在您的SSRS表中,向基于placeholder
数据集的表中添加4个Audit
,并使用以下表达式作为其Label
和Value
:
Was:
-="Was: "
Old Value
-=replace(left(Fields!LastName.Value,instr(Fields!LastName.Value," Now:")-1),"Was: ","")
Now:
-="Now: "
New Value
-=mid(Fields!LastName.Value,instrrev(Fields!LastName.Value,":")+2,99999)
然后,您可以像处理普通文本一样设置各个placeholder
项的格式,使用一种颜色,使用另一种颜色。
如果正确执行此操作,则应该得到如下内容:
但是请注意,如果您确实采取这种方式拆分字符串值,那么您正在搜索的模式(例如:旧值中的Now:
或新值中的:
值),您的报告中将得到不良结果。
如果这是出于监视目的的完全内部报告,则可能不是问题。但是,如果这是面向客户的,我强烈建议您在Audit
表中添加Old
和New
值的其他列,以使您能够绝对控制。
答案 1 :(得分:1)
您尝试过吗?
选择单元格
单击F4打开单元格属性,或右键单击属性
在“字体”标签中,选择“颜色”
4在表达式下选择
5写为
= iif(字段!ColumnName.Value =“ WAS”,“红色”,“绿色”)