当前位置:  数据库>oracle

Oracle EBS Form CUSTOM.PLL详解

    来源: 互联网  发布时间:2017-04-07

    本文导语: 编写CUSTOM 库     CUSTOM库是一个OracleForms Developer  PL/SQL 库,它允许你充分使用Oracle Forms Developer直接整合你的代码到Oracle 应用程序而不必改变Oracle Application 的代码。  什么时候使用CUSTOM库      在一些主要的情况下,可以使...

编写CUSTOM 库
     CUSTOM库是一个OracleForms Developer  PL/SQL 库,它允许你充分使用Oracle Forms Developer直接整合你的代码到Oracle 应用程序而不必改变Oracle Application 的代码。
  什么时候使用CUSTOM库
      在一些主要的情况下,可以使用CUSTOM库。
       Zoom  Zoom 通常会打开另一个form并且可以传递参数到达开的form中。
       通用事件的逻辑  在确定的通用form事件中,增强Oracle 应用程序的逻辑例如:
   WHEN-NEW-FORM-INSTANCE 或WHEN-VALIDATE-RECORD你可以使用通用事件来改变区域的提示和其他的属性,隐hide区域,添加验证和其它
    产品特殊事件的逻辑 在确定的产品特殊事件中增强或替换Oracle 应用程序逻辑实现业务逻辑。
     客户定义菜单  在Oracle 应用程序form中添加条目到special菜单中,例如一个打开客户化form的条目。
     设置视觉属性  使用CUSTOM库在运行时来改变视觉属性,使用Oracle Forms内建程序 SET_VA_PROPERTY 来设置CUSTOM1 – CUSTOM5的视觉属性,并使用APP_ITEM_PROPERTY2.SET_PROPERTY在运行时来应用视觉属性。
 
编写Zoom
 Zoom允许用户调用在每一个块中调用逻辑,例如,你可能希望在输入采购订单form时打开供应商form,你可以在这一个块上使用Zoom并且当用户调用它,你可以打开供应商form
  11i版本Zoom的行为:
    Oracle 应用程序提供一个菜单项和工具栏中的一个按钮,用户可以调用Zoom,只有当这个块在CUSTOM库Zoom逻辑定义后,菜单项和按钮才可用。
     当光标在form中改变到不同的块中,form调用CUSTOM库中的ZOOM_AVALIABLE 方法。如果这个方法返回TRUE,ZOOM条目和按钮可用,如果返回FALSE不可用。
     如果Zoom条目是可用的,这是当用户调用Zoom时调用CUSTOM中的ZOOM方法。你基于当前form和块编写这个事件的方法。
  在CUSTOM库中编写Zooms
1.      添加一个CUSTOM.ZOOM_AVALIABLE方法只是form 和块什么时候可以启用Zoom
2.      添加在ZOOM事件中添加CUSTOM.EVENT过程。
  支持一个块中的多Zoom时间。
     11i版中Oracle应用程序为Zoom提供一个LOV和相应的参数:
u     LOV:APPCORE_ZOOM
u     参数:APPCORE_ZOOM_VALUE
使用LOV和参数当这个块含有多余1个的ZOOM时提供给用户一个LOV。
编写ZoomLOV到CUSTOM库中。
在CUSTOM库中(包括Zoom事件代码)
1.     创建一个记录组合,并填充可用的Zoom名字和值
2.     添加记录组到APPCORE_ZOOM LOV中
3.     调用show_lov来显示LOV给用户
4.     如果用户选择一个Zoom,将返回值给APPCORE_ZOOM_VALUE参数
5.     得到参数的值选择不同的Zoom
编写通用Form事件
          你可以编写逻辑,在特别的form并在块的特别的事件中触发,你可以编写逻辑在一下的事件中:
• WHEN–FORM–NAVIGATE
• WHEN–NEW–FORM–INSTANCE
• WHEN–NEW–BLOCK–INSTANCE
• WHEN–NEW–RECORD–INSTANCE
• WHEN–NEW–ITEM–INSTANCE
• WHEN–VALIDATE–RECORD
• SPECIALn (n 是1 到 45之间的一个数)
• ZOOM
• EXPORT
• KEY–Fn (n 是1 到 8之间的一个数)
一些Oracle 应用程序forms例如多数的Oracle人力资源模块的form可能提供附加的事件调用CUSTOM库,这些附加事件被列在拥有这个form的产品的文档中。你可以编写逻辑在CUSTOM库中以相同的方法在通用时间中编写逻辑。
  在CUSTOM库中为通用的form时间编写逻辑:
1.      在CUSTOM.EVENT过程中为特别的事件添加一个分支。
在分支内部,指定你希望你的逻辑触发的form 和 块并添加逻辑到你希望发生的事件到这些块中。
编写产品指定的事件:
    为了编写产品指定的事件逻辑到CUSTOM库中:
1.     为特殊的产品的指定的事件添加分支到CUSTOM.EVENT过程中
在分支中添加逻辑。
2.     如果要支持客户化的执行类型,添加分支到CUSTOM.STYLE方法来指定执行类型。
添加客户化条目到special菜单中。
     为了在CUSTOM 库中添加逻辑到special菜单中的条目
1.     在CUSTOM.EVENT过程中添加分支事件WHEN-NEW-FORM-INSTANCE
在这个分支中指定你希望添加逻辑的form和块,添加逻辑到Special菜单中
2.     将特别的SPECIALn事件添加分支到CUSTOM.EVENT过程。
在这个分支中,指定逻辑发生的form和块。添加逻辑到你的Special菜单中。如果是你开发的form你应该添加逻辑到用户命名的SPECIALn触发器中。
Oracle应用对象库中产品特别的事件。
     Oracle 应用对象库提供可以使用CUSTOM库使用的产品特别事件。
 WHEN-LOGON-CHANGED 事件
     使用WHEN-LOGON-CHANGED事件在用户使用”File-> Log On as a Different User”立即触发来验证。这个方法是只是对基于Oracle Forms Developer开发的form有效。而对基于HTML或Java 的from是无用的。
    你可以使用FND_PROFILE.GET方法得到新的用户名和其他预置文件值
    如果因为一些原因在这个时间中的代码抛出form_trigger_failure的异常,用户将返登录界面。
WHEN-RSPONSIBILITY-CHANGED 事件
   使用WHEN-RESPONSIBILITY-CHANGED事件当用户使用“Fiel->SwitchResponsibility”来切换职责时触发进行验证。这个方法只对基于Oracle  Forms Developer 开发的forms有效。
   你可以通过FND_PROFILE.GET 方法得到新的职责名称和其他预置文件的值。如果因为一些原因在这个事件中的代码抛出 form_trigger_failure的异常,用户将返回如同选择了一个错误的职责的值列表界面。
CUSTOM 包
  CUSTOM包包含了下列的方法和过程
     CUSTOM.ZOOM_AVALIABLE
     CUSTOM.STYLE
      CUSTOM.EVENT
CUSTOM.ZOOM_AVAILABLE
    function custom.zoom_available return BOOLEAN;
     如果对于这个块Zoom是可用的,则返回TRUE,否则返回FALSE,通常用于测试form和块。
     通常这个方法返回FALSE
      CUSTOM.STYLE
     function custom.style(event_name varchar2) return integer;
     这个方法允许你决定执行的类型。你可以选择代码的执行为,之前,之后,或替代。注意的是一些产品特定事件是不支持所有的执行类型的CUSTOM.STYLE不对通用form事件或Zoom起作用。
     下列的包变量以用作返回值:
        Custom.before
        Custom.after
        Custom.override
        Custom.standard
   作为默认值,这个方法返回custom.standard
CUSTOM.EVENT
    procedurecustom.event(event_name varchar2);
    这个方法允许你在指定的事件中执行你的代码。通常测试事件名称然或测试form和块。
    作为默认这个方法应该返回null;

























































































    
 
 

您可能感兴趣的文章:

  • Oracle 数据库(oracle Database)性能调优技术详解
  • Oracle 数据库开发工具 Oracle SQL Developer iis7站长之家
  • oracle修改scott密码与解锁的方法详解
  • 求.bash_profile配置oracle详解
  • Oracle数据库中分区功能详解
  • oracle指定排序的方法详解
  • 详解如何应用改变跟踪技术加速Oracle递增备份
  • oracle合并列的函数wm_concat的使用详解
  • oracle select执行顺序的详解
  • 使用Oracle数据挖掘API方法详解[图文]
  • Oracle多表级联更新详解
  • 安装Linux与Oracle数据库步骤详解
  • oracle求同比,环比函数(LAG与LEAD)的详解
  • 详解Linux平台下的Oracle数据库编程
  • oracle中去掉回车换行空格的方法详解
  • Oracle中job的使用详解
  • [Oracle] Data Guard 之 Redo传输详解
  • oracle用户权限管理使用详解
  • 深入ORACLE变量的定义与使用的详解
  • 详解Oracle的几种分页查询语句
  • oracle SQL递归的使用详解
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • ORACLE日期相关操作
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE数据库常用字段数据类型介绍
  • Linux系统下Oracle的启动与Oracle监听的启动
  • Oracle 12c的九大最新技术特性介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • ORACLE中DBMS_RANDOM随机数生成包
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3