oracle 怎么写报表,Oracle reports提供的六种风格报表格式

我们都知道Oracle reports是Oracle的数据统计和图形化报表的工具,Oracle reports提供了六种不同风格的报表格式,但是我们经常使用的两种,就是tabular与matrix,以下的文章就有相关的介绍。

无论用哪种风格生成的报表,打印出的表格数都是动态变化的。其中tabular风格的报表,列数固定,而行数不定;matrix风格的报表,行数和列数均不定。那么在Oracle reports中如何实现报表的定长与定宽输出呢?笔者在实际开发过程中对上述两种风格的报表各总结出一种行之有效的方法,供大家参考。

对于tabular风格的报表,可用报表触发子after parameter form和after report实现定长输出。其方法是:根据实际情况确定每页打印的行数,当***一页的记录数少于每页打印的行数时,则用空记录补齐。在触发子after parameter form插入空记录,在触发子after report中再将空记录删除,下面举例说明。

假设有一数据基表wzdm:存放物资代码信息,其数据结构为:

字段名 含义 长度 类型

wzdm 物资代码 9 c

wzmc 物资名称 20 c

xhgg 型号规格 20 c

jldw 计量单位 6 c

要求:按定长输出物资代码表,并且每页均输出x行(x可根据实际情况而定)。

1.启动Oracle reports,建立物资代码打印报表(略),然后在报表触发子after parameter form中加入以下代码:

declare

v—jls number(2);

i number(2):=1;

begin

select count() into v—jls from wzdm;

if mod(v—jls,x)〈〉0 then

loop

exit when i〉=(x-mod(v—jls,x))+1;

insert into wzdm(wzdm,wzmc,xhgg,jldw)

values(′′,′′,′′,′′);

ii:=i+1;

end loop;

commit;

end if;

end;

在报表触发子after report中分别加入以下代码:

begin

delete from wzdm where wzdm is null;

commit;

end;

2.运行报表后即可输出定长的物资代码表。

说明:对于其它tabular风格的报表,在编写上述两个触发子时只需将基表名与列名根据实际情况修改一下,并确定x的值即可。

以上的相关内容就是Oracle reports对Oracle的数据统计及图形化报表工具的介绍,望你能有所收获。

【编辑推荐】

【责任编辑:孙巧华 TEL:(010)68476606】

点赞 0

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值