需求描述在某些特定需求的报表中,可能要求某些布局对象在一定的条件下显示或隐藏。在Oracle reports builder里开发报表时大致有两种方法以供开发者使用。
- 使用Format Trigger(格式触发器)以编程的方式进行控制
- 使用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(条件格式)条件格式是一个设置界面,根据开发者在界面上所添加的各种条件所返回的真假来判断对应的布局对象是否显示。进入条件格式的不走如下:
- 选中布局对象,按快捷键F4进入属性面板,选择图中的Conditional Formatting选项
- 打开后可以添加、编辑和删除判断条件
注意:利用条件格式隐藏的布局对象,其在设计模板上所占据的空间也一并被释放。二者对比如下:
| 方法 | 可设条件否? | 可编程? | 是否释放布局空间? |
| Format Trigger | 是 | 是 | 否 |
| Conditional Formatting | 是 | 否 | 是 |
Orcale and 逻辑运算符的特殊情况Oracle Forms开发手札:特殊的默认值 $$variables$$相关资讯 oracle数据库教程
- Oracle raw数据类型介绍 (01/29/2013 10:05:53)
- 监听器注册与ORA-12514 错误分析 (11/13/2012 14:30:08)
- Oracle SQL的cursor理解 (11/13/2012 14:16:17)
| - Oracle 如何强制刷新Buffer Cache (01/29/2013 10:02:46)
- dblink致Oracle库的SCN变成两库的 (11/13/2012 14:24:41)
- Linux操作系统下完全删除Oracle数 (11/13/2012 08:25:52)
|
本文评论 查看全部评论 (0)