本文为解http://topic.csdn.net/u/20101116/18/5e693956-ef80-4440-95ff-f518a393dda5.html所作。
这是我的测试数据及最后的效果(方案二的效果)
我这边给出两种方案:
一种是先把数据处理好,报表直接显示即可;
另一种则是在水晶报表内部处理数据。
关于如何在水晶报表中引用数据集,请参考http://topic.csdn.net/u/20100530/13/64b77d5f-94ed-42e0-9abc-b01a04fede22.html前半部分
我这边的数据集建了两个DataTable(根据方案选择其中一个即可),如图示:
这边每个列的数据类型都设为System.Double
方案一:
先在数据源头把数据处理好,再传给水晶报表。
先看报表的设计模板
这边有两个公式字段double1和double2(在字段资源管理器中右击公式字段,点新建),
其中double1的公式内容就是常数100.0(直接输入100.0即可);
double2的公式内容为:
{DataTable1.SumC1}+{DataTable1.AvgC2}+{DataTable1.MaxC3}+{@double1}
关键代码段:
方案二:
在报表内部处理数据(插入三个汇总字段)即可。
先看报表的设计模板
Col1,Col2,Col3三个字段可以根据你的需要是否要拖放到报表
好了,看完模板首先要知道如何插入汇总字段,这是最重要的,在报表空白处点右键,如图示
上图是对Col1汇总操作,所以汇总类型是求和,对Col2汇总时,汇总类型应是‘平均’,而对Col3汇总时,其类型应是‘最大’
这边也有两个公式,double1是常数和方案一 一样,double2的公式内容则是:
Sum ({DataTable2.Col1})+Average ({DataTable2.Col2})+Maximum ({DataTable2.Col3})+{@double1}
关键代码段:
仅供参考,有什么问题欢迎指正。。