水晶报表 分类统计之子报表法

本文为解http://topic.csdn.net/u/20100808/15/64b63191-d751-4061-8918-498493085839.html所作。

 

在项目中点右键添加新项,选择数据集xsd,进入数据集设计界面,新建两个DataTable,如图示

打开rpt设计界面,在字段资源管理器中右击数据库字段,进入“数据库专家”界面,
在 项目数据->ADO.NET数据集下会出现刚新建的数据集及数据表,把它“拉”到右边的“选定的表”中,然后在左上角切换到“链接”标签页,如图示

最后点右下角的确定按钮,此时我们会发现“数据库字段”下多出两个表(Dictionary和TableA)

接下来我们按DICTNAME分组,在报表空白处点右键->插入->组,在下拉框中选择"Dictionary.DICTNAME"

 

然后我们插入最最重要的子报表,同样在报表空白处点右键->插入->子报表,把它放在“组头”那一节,如图示继续操作:

右击子报表对象,选择更改子报表链接,操作如下

我们对子报表对象进行格式化一下,右击子报表对象,设置对象格式,如图示


然后我们在插入一个汇总,同样右击报表空白处->插入->汇总,操作如下

之后我们要对数据进行过滤,因为数据源头的数据是没有进行过滤的,方法依旧是在报表空白处点右键->报表->选择专家,在弹出的界面里点击“显示公式>>>”按钮,设置过滤条件,如图示

至此,主报表界面设计完毕,最后的设计界面应该是这样的(看起来也蛮单调的:)就一个子报表对象和一个汇总字段);

主报表设计完,还要设计子报表,右击子报表对象->编辑子报表,此时我们会发现和刚刚设计的主报表界面一样,这是正常的,因为我们刚才选的正是主报表的设计模板,我们把不需要的东西去掉,只留下组名和汇总字段,其余节也全部抑制显示,最后的子报表界面应该是这样的

在子报表右击公式字段,新建一公式,取名Condition,进入公式编辑器,编辑如下:
if {?Pm-Dictionary.DICTNAME} = '技术类' then
'10051001'
else if {?Pm-Dictionary.DICTNAME} = '产品类' then
'10051002'

公式编辑完后要记得点击左上角的“保存并关闭”按钮

同样我们要对子报表数据进行过滤,方法同主报表一样,只是过滤条件不一样,如图示

这样我们设计部分就到此,最后进入代码部分

最终运行效果如下

 

 

 

布局方面可以自己慢慢调整。。

 

呼(~ o ~)~zZ

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值