SSRS 单个字符串值中的两种字体颜色

SSRS Two font colors in a single string value

我正在尝试修改我的值中特定单词的字体颜色。我可以写什么样的表达式来定位这个词并将字体样式设置为红色?我听说修改占位符以接受 HTML 但我不确定这是否有帮助。

该值由数据集中的一个案例组成,该案例来自两个具有性别的表:“(消费者性别)|(看守者性别)”

可能的值是:男性 |男性,男性 |女性,失踪 |男性,失踪 |女性,失踪 |缺少……等等

我想要做的只是针对 "Missing" 值并将字体颜色更改为红色。有什么办法吗?我试过修改字体颜色表达式,但只能想出修改整个字符串的方法,而不是仅仅修改那个词。

你可以这样做,但有点痛苦..

我使用了一个快速数据集来演示从以下 SQL

构建的结果
DECLARE @t TABLE (textData varchar(20))
INSERT INTO @t VALUES
('Male | Male'), ('Male | Female'), ('Missing | Male'), ('Missing | Female'), ('Missing | Missing')

SELECT * FROM @t

我们将使用的列名为 textData

从一个空单元格开始。 在空单元格中,双击以获取光标,在单元格内右键单击并选择 "Create Placeholder" 右键单击占位符并将其表达式设置为类似...

=TRIM(LEFT(Fields!textData.Value, InStr(Fields!textData.Value, "|") -1))

这将从管道符号的左侧获取文本。单击“确定”返回设计器。在新占位符之后单击并键入管道符号(如果需要,可以使用空格)。

下一步在管道符号后右击并添加另一个占位符。这次我们将使用表达式来获取管道符号的右侧。

=TRIM(MID(Fields!textData.Value, InStr(Fields!textData.Value, "|")+1 ))

现在我们已经得到数据显示,select 第一个占位符并将其 color 属性 设置为

=IIF(TRIM(LEFT(Fields!textData.Value, InStr(Fields!textData.Value, "|") -1)) = "Missing", "Red", Nothing)

这次使用此表达式重复第二个占位符。

=IIF(TRIM(MID(Fields!textData.Value, InStr(Fields!textData.Value, "|")+1 )) = "Missing", "Red", Nothing)

在我的简单设计中,左列显示数据集中原始未更改的数据,右列包含两个带颜色的占位符。 最终输出如下所示。