SSRS Color literal在变量表达式中不起作用

时间:2014-01-30 16:54:44

标签: variables reporting-services background-color

我正在尝试创建自定义模板报告,以便从中继承的报告将使用颜色和字体的公司标准。我想为这些创建报告变量,以便在报告的不同部分使用相同的颜色。

例如,在报表标题属性中,我设置了BackgroundColor属性的RGB值,当我保存更改时,我在属性文本框中看到了一个文字值。如果我再次打开该属性的下拉列表,然后单击“表达式...”链接,我会看到一个数字文字 - 在这种情况下,#006a4d ,这是一个深绿色。 (我对SSRS表达式有点新,但显然表示数字常量的表达式在开头不需要“=”符号。)

这告诉我代表我想要的RGB组合的常量。现在,我进入Report Properties对话框的Variables选项卡,创建一个名为“BckndClr”的变量,其变量值与其值相同。

如果我然后返回BackgroundColor属性并将其设置为表达式:

=Variables!BckndClr.Value

并保存,我发现,设计选项卡中的报表标题背景颜色已更改为自动默认(白色),而不是继续为深绿色。

如果Visual Studio属性对话框显示文字颜色表达式的值,为什么我不能在用户定义的变量中使用相同的值并将属性表达式设置为该变量?

1 个答案:

答案 0 :(得分:3)

您所谓的“文字颜色表达”(#006a4d)是颜色的十六进制值。您可以使用this website将RGB值转换为十六进制。不确定您使用的SSRS版本。我使用适用于VS 2012的SQL Server数据工具复制了SQL Server 2012 SP1的步骤。

  1. 在报告属性中创建了一个变量。叫它测试。将十六进制值直接粘贴到值框中,而不单击表达式按钮。 enter image description here

  2. 转到标题属性,单击填充,然后单击填充颜色旁边的表达式按钮。输入=Variables!test.Value作为表达式。单击确定。 enter image description here

  3. 预览报告。并验证标题的颜色是深绿色。 enter image description here