Oracle EBS Form 发布到Server端的注意事项
前段时间在本地XP系统上测试了一些整合javabean的Form例子,想着发布到服务器段去看看能否运行正常,一开始以为会和本地XP系统一样,部署到相关的目录下进行一些配置就可以了,但实际过程却和想象的大相径庭,部署到服务器上可称得上是一波三折。下面将Oracle EBS Form 发布到Server端的若干注意事项阐述如下:
1、确定EBS版本
由于不同版本EBS配置jar文件和发布javabean jar包的位置存在一些差异,所以必须要知道EBS版本,这样遇到问题才好搜索对应的解决方案。可以通过SQLPlus连接EBS数据库来查看服务器上的EBS版本:
SQL*Plus: Release 10.1.0.4.2 - Production on 星期二 11月 17 11:10:46 2015
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select RELEASE_NAME from fnd_product_groups;
RELEASE_NAME
--------------------------------------------------------------------------------
12.1.1
SQL>
可以看到本地是12.1.1的版本。
2、确定服务器的操作系统
据了解,EBS在不同操作系统上,javabean jar包配置和上传的目录也存在一些差异,例如我的本地环境是XP,服务器是Linux(Redhat),配置环境就不一样,这也是我一开始安装本地配置总是找不到相应的javabean jar包的原因。XP(windows)系统上传jar包的位置为/forms/java/下,配置文件为form/server/formsweb.cfg.但是Linux为appsweb.cfg!!!
3、确定部署位置
由上面可知待发布的服务器是Linux操作系统,EBS版本为12.1.1。Oracle EBS 中的appsweb.cfg有两个位置,分别是:
1. $OA_HTML/bin and (此配置文件供R11用)
2. $ORA_CONFIG_HOME/10.1.2/forms/server/ (此配置文件供R12用)
在服务器的终端输入一下命令查看$ORA_CONFIG_HOME/10.1.2/forms/server/的实际目录,然后编辑其目录下的appsweb.cfg
[appldev@erp ~]$ $ORA_CONFIG_HOME/10.1./forms/server/
-bash: /u01/oracle/VIS/inst/apps/VIS_erp/ora/10.1./forms/server/: is a director
[appldev@erp ~]$
在appsweb.cfg中找到archive节点(需要追加javahost.jar =>/OA_JAVA/oracle/apps/fnd/jar/javahost.jar,注意是逗号分隔):
archive=/OA_JAVA/oracle/apps/fnd/jar/fndforms.jar,/OA_JAVA/oracle/apps/fnd/jar/fndformsi18n.jar,/OA_JAVA/oracle/apps/fnd/jar/fndewt.jar,/OA_JAVA/oracle/apps/fnd/jar/fndswing.jar,/OA_JAVA/oracle/apps/fnd/jar/fndbalishare.jar,/OA_JAVA/oracle/apps/fnd/jar/fndaol.jar,/OA_JAVA/oracle/apps/fnd/jar/fndctx.jar,/OA_JAVA/oracle/apps/fnd/jar/javahost.jar
这里看到OA_JAVA为虚拟目录,到终端查看其实际目录为:
[appldev@erp ~]$ $OA_JAVA/oracle/apps/fnd/jar/
-bash: /u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar/: is a
directory
[appldev@erp ~]$
因此将javahost.jar上传到/u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar/下,这个和$COMMON_TOP/java/classes/oracle/apps/fnd/jar一致。
[appldev@erp ~]$ $COMMON_TOP/java/classes/oracle/apps/fnd/jar
-bash: /u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar: is a
directory
[appldev@erp ~]$
至此,部署到服务器的文件上传和配置工作完成,然后上传Form到对应的目录,配置菜单即可(客户端和服务器的SSH工具为Bitvise SSH Client)。
4、其他
想在打开javabean窗体时,启用一个进程,打开网址:(苹果系统用open) cmd /c start www.baidu.com?uid=username^&pwd=pwd (此处^可以转义&符号)
执行按钮WHEN-BUTTON-PRESSED触发器代码为:
:BL.RESULT := '' ;
--Set_Custom_Property( 'BL.BEAN', 1, 'SET_PROG', :BL.CMD ) ;
-- use ^ to escape & in teh command line like this:
Set_Custom_Property( 'BL.BEAN',1, 'SET_PROG','cmd /c start www.microstarsoft.com?uid=username__pwd^&pwd=2') ;
然后用代码模拟用户单击,在窗体激活时(WHEN-WINDOW-ACTIVATED)触发按钮事件:
--自动执行单击事件
--GO_ITEM('<block_name>.<button_name>');
--EXECUTE_TRIGGER('WHEN-BUTTON-PRESSED');
GO_ITEM('BL.EXECUTE');
EXECUTE_TRIGGER('WHEN-BUTTON-PRESSED');
默认情况下,Oracle窗体加载后单击关闭按钮无效,在窗体的KEY-EXIT下:
exit_form(no_validate);

Oracle EBS Form 发布到Server端的注意事项的更多相关文章
- Oracle EBS Form Builder使用Java beans创建窗体
最近有个项目,需要研究一下Oracle的E-Business Sutie(EBS),对于以前没接触此套件的我来说,简直太痛苦了.在网上找了一堆资料,试着进行Form二次开发,也遇到各类奇葩问题.目前遇 ...
- 如何启用Oracle EBS Form监控【Z】
前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...
- 如何启用Oracle EBS Form监控
前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...
- Oracle EBS - Form DEV Env
1. 创建文件夹resource与forms, 以便存放pll与forms(主要用到APSTAND.fmb, APPSTAND.fmb, TEMPLATE.fmb)文件; 2. 修改注册表 HKEY_ ...
- oracle ebs form开发总结
item的布局千万不要去乱动,只要调好长宽和y轴的坐标就好了.form内部集成了很多代码对布局进行动态的调整,而且有一些代码的长宽什么的还是写死了的,我们一动,form可能就识别不了了,然后就显示出来 ...
- Oracle EBS FORM 更改记录状态
get到一个新的思路. 因为validate触发器是无法做go_block或者loop操作的,因此可以尝试修改数据块属性,将状态更新为改动的,触发 ON-UPDATE 触发器,将循环或者跳转语句加入到 ...
- How to set window title name on Oracle EBS Form?
--1. 置換掉原來Winodw Property上的Title String ex. SET_WINDOW_PROPERTY('XXDII_INV_MISC_TXN_V',TITLE,:misc_t ...
- ORACLE EBS FORM 二次开发常用小技巧
1.锁住当前行 Set_Item_Instance_Property('main.import_flag', CURRENT_RECORD, UPDATE_ALLOWED, PROPERTY_OFF) ...
- Oracle EBS FORM lov
存在一种情况: 一个LOV的值当前有效,因此填入保存.但突然无效后,当查询该界面时就会弹出LOV框使其修改. 解决方案: 1. 非常粗暴,不设置校验,在LOV对应的item强行将校验设置为NO. 2. ...
随机推荐
- ASP.NET和IIS工作原理
图为iis6.0运行asp.net的原理. browser向iis发送HTTP请求,HTTP.SYS将其分发给W3SVC(World Wide Web Publishing Service),后者解析 ...
- [git]merge和rebase的区别
前言 我从用git就一直用rebase,但是新的公司需要用merge命令,我不是很明白,所以查了一些资料,总结了下面的内容,如果有什么不妥的地方,还望指正,我一定虚心学习. merge和rebase ...
- springmvc学习笔记--mybatis--使用插件自动生成实体和mapper
由于表对象在开发过程中会增删字段,有时候需要重新生成实体和对应的mapper,这时候可以通过mybatis的插件的生成. 优点是快速简洁,缺点同样很明显:覆盖.因此,通常是在第一次搭建框架的时候使用, ...
- Java实现过滤中文乱码
最近在日志数据清洗时遇到中文乱码,如果只要有非中文字符就将该字符串过滤掉,这种方法虽简单但并不可取,因为比如像Xperia™主題.天天四川麻将Ⅱ这样的字符串也会被过滤掉. 1. Unicode编码 U ...
- Javascript动画效果(一)
Javascript动画效果(一) 前面我们介绍了Javascript的回到顶部效果,今天呢,我们对Javascript动画做进一步的研究.在这篇博文中我们只介绍简单的匀速运动.简单的缓冲运动和简单的 ...
- 使用Python将Excel中的数据导入到MySQL
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...
- 在DevExpress中使用WizardControl控件构建多步向导界面
利用好的界面控件,往往能做成比较界面体验效果.在一些界面操作里面,我们可能把它拆分为几部进行处理,这个时候引入WizardControl向导控件应该是比较不错的选择了.多步的处理方式,可以让用户避免一 ...
- [DBW]一个小巧的Class方案
(function(){ function Extend(func,proto){ func.prototype.__proto__=proto.prototype; Object.definePro ...
- 【SQL】找出行数与自增标识值不相等的表(即有缺行)
环境:mssql ent 2k8 r2 原理:遍历所有含自增列的用户表,用sp_spaceused过程分别获取每张表的行数并写入临时表,然后使用IDENT_CURRENT函数获取表的最大标识值,比较二 ...
- C#遍历Dictionary
C#遍历Dictionary方法 Dictionary<string, int> d = new Dictionary<string, int>(); foreach (Key ...