【经验】Oracle Reports中隐藏布局对象的方法及区别

本文介绍了在Oracle Reports中通过FormatTrigger(格式触发器)和ConditionalFormatting(条件格式化)两种方式来实现布局对象的显示与隐藏。前者允许通过编程方式动态控制布局对象的可见性,而后者则提供了一个界面,用于根据条件决定对象的显示状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求描述

在某些特定需求的报表中,可能要求某些布局对象在一定的条件下显示或隐藏。在Oracle reports builder里开发报表时大致有两种方法以供开发者使用。

  1. 使用Format Trigger(格式触发器)以编程的方式进行控制
  2. 使用Conditional Formatting(条件格式化)进行控制

二者使用场景不同,下面对这两种方法进行详述。

 

Format Trigger(格式触发器)

格式触发器是一个在布局对象被最后设定格式之前执行的一个PLSQL函数。该触发器可用来动态地改变布局对象的格式数属性。函数返回值为BOOLEAN类型。若函数返回TRUE,则显示布局对象;FALSE则隐藏该布局对象。

注意:隐藏布局对象,但并不会释放该对象在报表设计模板上所占据的空间

举例:

1 FUNCTION Object1FormatTrigger RETURN BOOLEAN
2 IS
3 BEGIN
4 IF :OBJECT2 IS NULL THEN
5 RETURN FALSE;
6 END IF;
7 RETURN TRUE;
8 END;


Conditional Formatting(条件格式)

条件格式是一个设置界面,根据开发者在界面上所添加的各种条件所返回的真假来判断对应的布局对象是否显示。

进入条件格式的不走如下:

  1. 选中布局对象,按快捷键F4进入属性面板,选择图中的Conditional Formatting选项
  2. 打开后可以添加、编辑和删除判断条件

 

注意:利用条件格式隐藏的布局对象,其在设计模板上所占据的空间也一并被释放

 

二者对比如下:

方法可设条件否?可编程?是否释放布局空间?
Format Trigger
Conditional Formatting

 

Enjoy~

转载于:https://www.cnblogs.com/objectorl/archive/2011/12/29/show-hide-objects-in-oracle-reports.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值