【高手区第二期报表作品】某地区月度统计综合报表

正在加载中...

试读已结束

继续阅读请 10 金币购买后下载

立即下载

资料简介:
某地区月度统计综合报表

一、        行业背景
对外贸易
二、        应用方向
业务综合报表因整合各项指标于一体,便于全面了解分析业务的整体运作状况,是领导层较为关注的一类报表。这类报表的底层数据库表链接复杂,表格页面计算密集,在制作时要倍加耐心细致。
三、        ETL工具
存储过程
四、        数据库
DB2 V9.5
五、        需求分析
以下是业务人员提供的报表模板,要求选择年月后生成本年累计金额及其他各项指标。

[url=/club/attachments/month_1005/1005171643dc98eb96142d9612.jpg]

[/url]


六、        元数据建模
报表数据来自底层数据库的8个事实表,实际建模时每二个事实表与共享时间维构成一个星型结构组(见下图),形成四个星型结构组(Star Schema Grouping)。这样处理有助于模型清晰简约,避免多事实表关联时可能出现的拼接错误。

[url=/club/attachments/month_1005/10051716439865377437a03c29.jpg]

[/url]


七、        报表的拆分与拼接
分析一下报表的总体结构可知,该报表属交叉表,行为度量(或度量计算),列为针对时间维的计算。制作的难点在于如何处理各行出现的多个度量,这也是综合统计报表常有的情况。本实例采取的解决方法是“化整为零、分而治之;无缝对接、形同一体。”

[url=/club/attachments/month_1005/1005171643e0ff043456458d39.jpg]

[/url]


如上图所示,根据度量所在的区域将报表拆分成6块,分别用6个交叉表实现所需计算,然后将各交叉表按顺序放置到一个1X6的表格中,通过设置边框,行高等参数,隐藏多余的行标题,使6个交叉表无缝地拼接到一起,以达到形同一表的效果。
八、        密集计算的实现
处理交叉表时,某些单元格会遇到来自行与列的多轮计算,如果计算顺序出现偏差,将无法得到预期结果。以Crosstab5为例,每个单元格隐含有四轮计算,即本年累计、累计同比、增速(本年累计同比与上年累计同比的差)、增速差(本地增速与全国增速的差)。为了便于理解单元所含的计算,制作时先罗列各轮计算的细项,正确设置求解顺序(Solve Order),然后剪除不用显示的行与列。需要说明的是,这里采用剪除(Cut)而不是删除(Delete)操作,目的在于使这些数据项仅从报表页面中剪裁出去,在查询中仍保留,因为这些数据项要被其他数据项直接或间接引用。
以下是Crosstab5的实战截图:

[url=/club/attachments/month_1005/1005171643e23e3f2db99c780c.jpg]

[/url]


为保证结果正确,求解计算细分为四轮:
1、        累计金额,包括:
[L0] -本年累计金额,
[L1] -上年累计金额,
[L2] -上二年累计金额,
数据项Solve Order设为1;
(注:公式中[mymonth]为通过下拉列表选择的统计月份)
2、        累计同比,包括:
[T0] -本年累计同比,
[T1] -上年同期累计同比,
数据项Solve Order 设为2;
3、        增速,即:
[Z0] -本年同比与上年同比之差,
数据项Solve Order 设为3;
4、增速差,即本地与全国之增速差,包括:
[ZI1] -项目1之增速差,
[ZI2] -项目2之增速差,
[ZI3] -项目3之增速差,
------
数据项Solve Order 设为4;
验证计算结果正确后,剪除多余的行与列,页面中仅保留的列为(Z0),行为(ZI1、ZI2、ZI3、------),隐藏行标题(Box Type设为None),抹去左边框(边框属性设为None),以避免与前一个交叉表(Crosstab4)的边框重复,取消自动换行(White Space设为No wrap)以确保各行边框横向对齐。最后几行无数据的单元格则用Crosstab Space代替,保证报表外形的完整性。

九、        实际效果展示
以下是报表最终运行效果,所示数据已作虚拟化处理。

[url=/club/attachments/month_1005/10051716434dcbe5568b0716c1.jpg]

[/url]

2010-05-17
页数8
浏览15013
下载129

已下载用户的评价7.71分

您还未下载该资料,不能发表评价;
查看我的 待评价资源
smallsirsmallsir软件开发工程师allcom2015-12-27
没用
这个思路要相当清晰,作者真的的设计很厉害,学习了。
蕙若蕙若软件开发工程师北京爱必克2014-07-23
没用
正要做此类型报表,学习学习。
prz06050prz06050软件开发工程师中国移动2014-02-08
没用
报表风格挺严谨正式的
tjwcjtjwcj软件实施顾问飞创2013-09-12
没用
太强了,学习学习
tjwcjtjwcj软件实施顾问飞创2013-09-10
没用
太强了,多谢分享
aduanqqaduanqq软件开发工程师成都农商银行2012-12-27
没用
学习了!!!!!
liujinhangliujinhang系统分析师ACT2012-11-15
没用
不错,虚心学习了
Notes_chenlongNotes_chenlong软件开发工程师everlasting2012-11-06
没用
这个看着给力,学习了。
sunbeamsunbeam软件开发工程师赤峰学院2012-11-02
没用
我喜欢的风格,设计严谨!
Notes_chenlongNotes_chenlong软件开发工程师everlasting2012-10-10
没用
ding yixia

贡献者

suxingzhi软件开发工程师,建设银行
X社区推广