Oracle reports工具的使用


  本文标签:Oracle reports

  我们大家都知道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.建视图,其过程如下:

  

  1. create view v—tjbb as  
  2. select dwmc,lbmc,je from t—zjxhqx  
  3. union  
  4. select dwmc,null,to—number(null) from 
    t—zjxhqx,t—kjl  
  5. where no-(z-x)〉(select mod
    (count(distinct lbmc)-1,x)+1 from t—zjxhqx)  
  6. union  
  7. select null,lbmc,to—number(null) 
    from t—zjxhqx,t—kjl  
  8. where no-(z-y)〉(select mod
    (count(distinct dwmc)-1,y)+1 from t—zjxhqx);  

  

  3. 启动Oracle reports,建立矩阵报表查询时直接引用视图v—tjbb即可  。这样运行时输出的报表每页都是x行y列,即实现了定长和定宽输出  。

  以上的相关内容就是对matrix风格的报表的介绍,望你能有所收获  。