一种动态显示Matrix中Total背景颜色的方法

来源:互联网 发布:淘宝店铺保证金计划 编辑:程序博客网 时间:2024/05/16 16:03
在Microsoft SQL Server 2005 Reporting Services平台下,Matrix是使用得很频繁的一个组件,如何设置Matrix中Total背景(字体)颜色在各类资料中罕有介绍,本文主要讨论该“悬而未决”的问题。

      入手点思考:Matrix中的分组与其对应的Total是有区别的,可以基于这个区别来设置Total的背景颜色。
关键函数:InScope()
语法大致如下:InScope (“Group/DataSet/DataArea”),””所引用的是报表项的分组或数据集或数据区域。函数的具体用法请参见SQL Server 2005的联机帮助。

      下面还是通过举例来说明具体是如何动态显示Total背景颜色的,本文所采用的案例是SQL Server 2005中自带的AdventureWorks Sample Reports,报表为“Company Sales.rdl”。打开原报表,对“=Fields!SubCat.Value”字段设置小计,并修改名称为“Total”,对“=Fields!ProdCat.Value”字段设置小计,并修改名称为“Grand Total”,如图1所示。


对“=Sum(Fields!Sales.Value)”字段区域设置背景颜色,代码如下:
=ii f(InScope("ProductSubCategory"),"White",ii f(InScope
("ProductCategory"),"#cccccc","#aaaaaa"))

其中,“=Fields!SubCat.Value”字段对应的分组为:
“ProductSubCategory”,“=Fields!ProdCat.Value”字段对应的分组为:“ProductCategory”。
预览结果如图2所示。

原创粉丝点击