百分比数据,或者是比率数据是一个比较难处理的字段,难点并不在于单条记录之中,而是在于汇总和分类汇总的时候。先来看看我系统中的一个模块中的一个比率字段:上图中的 已支付比例,这个字段是 已支付金额 / 结算金额,这个字段在此合同模块中可以作为一个计算字段来保存在数据库中,甚至可以不保存在数据库中,直接在bean里作为一个计算的属性。现在问题就来了,如果要计算所有合同的已支付比例,那么就不是简单加起来的问题了,要把分子和分母分别加起来再除才会得到总计的已支付比例。下面看看综合查询中的截图:
综合查询中,有一个总计数,上面显示共有24条合同,这24个合同的平均已支付比例为27%,这个数字就是用上面的方法做出来的。在分类汇总之中更加能显示出效果。
在上面的例子中,我选择了二级分类汇总,第一级为预算类型,第二级为发包方式,可以看到在总计下面,是第一级的分组,然后缩进显示的是第二级的分类汇总。对于已支付比例这个字段的值,都是根据下级的数据汇总到上级以后再进行计算的。现在来说一下我对于这个百分比字段的设计。
在字段的设置中,又增加了二个属性,分别是百分比分子和百分比分母,如果在综合查询中加入这个百分比字段,那么就会自动加入分子字段和分母字段,在总计和分类汇总的进修对分子和分母分别进行汇总,然后再生成汇总的百分比的值。当前的百分比只支持单个的分子字段和分母字段,以后我会考虑加入自定义字段,可以自己定义一个组合字段,可以用组合字段来做为分子或分母。根据以上的定义,再经过前后台的解释执行,百分比或比率的汇总和分类汇总基本解决了。下面贴一张数据打印的pdf 的截图。
模块管理常规功能自定义系统的设计与实现(52--功能更新[2] 对百分比字段的操作),布布扣,bubuko.com
模块管理常规功能自定义系统的设计与实现(52--功能更新[2] 对百分比字段的操作)
原文:http://blog.csdn.net/jfok/article/details/28593823