手册
出现的错误跟补丁没关系。
1.10.7 ORA-06501: PL/SQL: program error
这个问题的原因通常是数据库中package的版本和文件系统中不一致。
最简单的方法是用文本编辑器打开报错的.pll文件,并在其中搜索错误信息中的function/procedure,然后就可以发现不同步的package。 通过下面方法检查package的版本
? 在数据库中的版本 SQL> select text from dba_source where name = upper('
? 文件系统上定义文件的版本
使用上一步select出来的路径,检查文件系统中定义文件的版本: adident Header $PROD_TOP/patch/115/sql/……..s.pls adident Header $PROD_TOP/patch/115/sql/……..b.pls Example adident Header $AS_TOP/patch/115/sql/asxacacs.pls adident Header $AS_TOP/patch/115/sql/asxacacb.pls
如果发现数据库中的版本和文件系统中定义文件的版本不一致,可以使用apps用户登录sqlplus,然后执行下面命令重新创建包: @$PROD_TOP/patch/115/sql/……..s.pls @$PROD_TOP/patch/115/sql/……..b.pls Oracle support会发布一个补丁将package和form同步。
1.10.8 补丁已经更新完,如何手工重新生成library
重要提示!如果adadmin不能正常生成library文件,手工执行通常也会失败!
手工生成library并没有特别的神奇之处!
手工生成之前,一定要先执行下面的设置: export FORMS_PATH=$AU_TOP/resource:$AU_TOP/forms/US:$AU_TOP/resource/US 手册
手工生成library的命令是:
$ORACLE_HOME/bin/frmcmp_batch module=$APPL_TOP/au/12.0.0/resource/
注意:使用batch=NO才能在屏幕上看到错误消息
针对11i版本的命令:
export FORMS60_PATH=$AU_TOP/resource:$AU_TOP/forms/US:$AU_TOP/resource/US f60gen (Windows ifcmp60.exe) f60gen userid=APPS/ module=$AU_TOP/resource/
1.11 如何解决英文form(.fmb)编译报错
补丁日志中可能会看到下面错误:
The following Oracle Forms objects did not generate successfully
1.11.1 确保已经安装补丁所有的前置条件
可以使用下面的查询查找系统中是否已经安装补丁的前置条件
手册
SQL> select bug_number from ad_bugs where bug_number in ('&patch_number1','&patch_number2',...); 1.11.2 确保先解决library的报错
如果library有问题的话,form编译会失败
1.11.3 查看adwork日志
在adpatch的日志中可以看到执行出错的job是分配在哪个worker上运行的,在adwork的日志中查看错误的详细信息。
也可以使用adadmin重新生成form。参考Note 178722.1 How to Generate a Specific Form Through AD utility adadmin.
注意:详细的错误信息没有记录在adpatch或adadmin日志中,需要在对应的adwork日志中查找真正的错误。
运行adadmin的时候选择: Enter list of products ('all' for all products) [all] : Generate specific forms objects for each selected product [No] ? Yes Enter list of languages ('all' for all of the above)[all]: Choose form:
根据结果的不同,需要使用不同的方法继续调查: 1. .fmb和.fmx文件的版本一样,可以正常编译。 说明问题已经解决。
2. 英文的.fmb和.fmx文件版本不同 需要继续使用下面的步骤调查
手册
1.11.4 在MOS中使用下面条件搜索
?
? adwork日志中的错误
1.11.5 查看对应的产品模块是否有无效对象
可以使用下面SQL: SQL> SELECT object_name, object_type, owner FROM dba_objects WHERE status ='INVALID' AND object_name like '
1.11.6 问题可能原因是OS中缺少rpm包
可能的原因是缺少操作系统rpm包
使用Note 250262.1 RDA 4 - Health Check / Validation Engine Guide中的脚本可以自动检查操作系统的一些前提需求。
先参考“Installation Instructions”,然后参考“Instructions for UNIX type operating systems” 运行:
[applmgr@soatest rda]$ ./rda.sh -T hcve Choose: Oracle E-Business Suite Release 12 (11.5.10.2) Preinstall 运行完成会生成一个html格式的report,在报告中可以查看问题。
手册
1.11.7 form版本和package版本不一致
这个问题的原因通常是数据库中package的版本和form中不一致。
最简单的方法是用文本编辑器打开报错的.fmb文件,并在其中搜索错误信息中的function/procedure,然后就可以发现不同步的package。 通过下面方法检查package的版本
? 在数据库中的版本 SQL> select text from dba_source where name = upper('
? 文件系统上定义文件的版本
使用上一步select出来的路径,检查文件系统中定义文件的版本: adident Header $PROD_TOP/patch/115/sql/……..s.pls adident Header $PROD_TOP/patch/115/sql/……..b.pls Example adident Header $AS_TOP/patch/115/sql/asxacacs.pls adident Header $AS_TOP/patch/115/sql/asxacacb.pls Oracle support会发布一个补丁将package和form同步。
1.11.8 手工生成form
重要提示!如果adadmin不能正常编译form,手工执行通常也会失败!
手工编译form并没有特别的神奇之处!
手工编译form之前,记得设置下面环境变量:
export FORMS_PATH=$AU_TOP/resource:$AU_TOP/forms/US:$AU_TOP/resource/US 编译from的脚本是: frmcmp_batch module=$AU_TOP/forms/US/
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库10. adpatch 补丁应用指南(常见问题处理)(6)在线全文阅读。
相关推荐: