首页 > 解决方案 > SSRS 特定字符串的颜色格式

问题描述

我需要在 SSRS 报告 (UI) 上显示选择语句。我想以粗体和蓝色显示选择、来源和位置。字段名称=“查询”,下面是一条记录

 select field1, field2 from table1 where field1='test'

我在“查询”字段的字体->表达式下都尝试了,但它不起作用。

 =Replace("SELECT",Fields!Query.Value," `<span style='color:red'>` " & Fields!Query.Value & "`</span>`")
 =Replace(Fields!Query.Value,"SELECT"," `<span style='color:red'>` " & Fields!Query.Value & "`</span>`")

标签: reporting-servicesssrs-2008ssrs-2012ssrs-2008-r2ssrs-tablix

解决方案


我这样做的方式如下 注意:我的专栏被称为sql,而不是Query你的

创建一个文本框(或编辑您现有的)

SELECT然后键入[space]

然后在您刚刚键入的内容右侧的文本框中单击鼠标右键并选择Create placeholder

value表达式设置为

=
MID(
    Fields!sql.Value,
    INSTR(Fields!sql.Value, "SELECT ", Compare:= Comparemethod.Text) + 7,
    INSTR(Fields!sql.Value, "FROM", Compare:= Comparemethod.Text) 
        - (INSTR(Fields!sql.Value, "SELECT ", Compare:= Comparemethod.Text) + 8)
    )

现在输入 a [space],然后输入“FROM”,使用以下表达式添加下一个占位符。

=
MID(
    Fields!sql.Value,
    INSTR(Fields!sql.Value, "FROM ", Compare:= Comparemethod.Text) + 5,
    INSTR(Fields!sql.Value, "WHERE", Compare:= Comparemethod.Text) 
        - (INSTR(Fields!sql.Value, "FROM ", Compare:= Comparemethod.Text) + 6)
    )

最后键入“WHERE”和最后一个占位符,将表达式设置为...

=
MID(
    Fields!sql.Value,
    INSTR(Fields!sql.Value, "WHERE ", Compare:= Comparemethod.Text) + 6
    )

您现在可以根据需要双击静态单词和格式。您可以对每个表达式执行相同的操作,因为所有占位符都有自己的字体属性。

最终的设计看起来像这样......

在此处输入图像描述

最终输出看起来像这样。 在此处输入图像描述


推荐阅读