oracle EBS 报表outofmemory错误及解决方案(压缩下载)

在Oracle EBS系统中,使用XML Publish方式生成大型Excel或PDF报表时,可能会遇到outofmemory错误。解决方法包括安装patch 7306874,并通过缩短XML TAG大小、报表拆分及压缩成zip文件来减少内存消耗。具体操作包括创建Shell脚本,建立软链接,创建out目录,以及配置压缩并发请求参数。

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

问题:使用XML Publish方式进行报表输出,输出的结果为Excel或者PDF格式,使用中遇到的主要问题是,当要生成的报表文件太大时,EBS无法形成所需的文件,并且会导致其他请求也都出现无法输出,查看java日志可见出现outofmemory错误。

方案:

安装补丁patch 7306874。

同时为了避免XML输出文件太大导致FNDCPOPP内存溢出,建议减小输出文件大小:

1、  建议缩短XML TAG的大小(按经验,通常XML文件中TAG占其中三分之二内容左右)。

2、  将报表拆解多个,然后压缩成zip文件,提供给用户下载。


1) 创建Shell脚本

 #!/bin/ksh
header_string="$Header: zip_conc_out.sh_V1.0 by ACS SC 2013-8-14  $"
prog_version=`echo "$header_string" | awk '{print $2}'`
program=`basename $0`
usage="\t$program <OutputFile> <ConcReqID1[:ConcReqID2]>"


if [ $# -lt 2 ];
then
   printf "\n$program: too few arguments specified.\n\n"
   printf "$usage\n\n"
   exit 1;
fi
 


#
# arguments appear in the order:  <output file name> <ConcRequestID1[:ConcRequestID2]>
#
RETURN_FILE=$5
ARG=$6
EXT=$7


# 1.Delete files 7 days ago
find $OA_HTML/out -name "*" -ctime +7 | xargs r
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值