我们大家都知道Oracle reports工具是用于Oracle的数据统计与图形化报表,Oracle reports工具提供六种风格不同的报表格式,以下内容就是对Oracle reports其中一种即matrix风格的报表的介绍。
对于matrix风格的报表,可利用视图实现定长与定宽输出,其思路是:当行记录数和列记录少于实际报表的行数和列数时,均以空记录补齐。下面举例说明。
假设有一物资资金消耗去向统计月报,该表横向显示本期消耗去向,纵向显示物资类别,由于每月物资消耗去向和消耗物资均不定,所以此类报表即为一矩阵报表。该报表的数据存放在基表t—zjxhqx中,其数据结构如下:
字段名 含义 长度 类型
lbmc 类别名称 20 c
dwmc 单位名称 20 c
je 金额 14,2 n
要求:按定长定宽输出物资资金消耗去向统计月报,并且每页均输出x行y列(行数和列数可根据实际情况而定)。
1.首先建一基表t—kjl,用来存放空记录,其数据结构为:
字段名 含义 长度 类型
no 序号 2 n
建完该数据表后,再往其中插入记录,记录数可根据实际情况而定,一般为一页所能打印的***行数,这里假设为z条,即no的值为1,2,3…z。
2.建视图,其过程如下:
- create view v—tjbb as
- select dwmc,lbmc,je from t—zjxhqx
- union
- select dwmc,null,to—number(null) from
t—zjxhqx,t—kjl- where no-(z-x)〉(select mod
(count(distinct lbmc)-1,x)+1 from t—zjxhqx)- union
- select null,lbmc,to—number(null)
from t—zjxhqx,t—kjl- where no-(z-y)〉(select mod
(count(distinct dwmc)-1,y)+1 from t—zjxhqx);
3. 启动Oracle reports,建立矩阵报表查询时直接引用视图v—tjbb即可。这样运行时输出的报表每页都是x行y列,即实现了定长和定宽输出。
以上的相关内容就是对matrix风格的报表的介绍,望你能有所收获。
【编辑推荐】