金蝶EAS常见问题解答工具及框架应用.docx
《金蝶EAS常见问题解答工具及框架应用.docx》由会员分享,可在线阅读,更多相关《金蝶EAS常见问题解答工具及框架应用.docx(47页珍藏版)》请在冰豆网上搜索。
金蝶EAS常见问题解答工具及框架应用
1BOS工具
1.1bos启动测试,服务端启动就绪,但是客户端起不来
1问题描述
拷贝过来的bos解决方案,启动测试一直停留在服务器就绪步骤。
BOS业务建模工具启动测
试后一直停留在2011-03-0111:
46:
08信息[apusic.server.Main]服务器就绪。
无法启动服务器。
2解决方法
拷贝过来的解决方案,其解决方案\runtime\apusic\config\server.xml中的内容为空。
拷贝一个能正常启动测试的该配置文件,替换即可。
.
3适用版本
EAS703.
1.2测试启动的服务器端自动关闭并报错
1问题描述
EAS7.0.3,bos6.1.0
bos导入703的demo帐套,服务器端为703.启动测试后,测试启动的服务器端自动关闭并报错。
但是如果用控制台启动,则没有问题。
尝试过更新bos工具,更新解决方案,重新构建等均无法解决。
2解决方法
现场更新补丁:
PT054300。
.
3适用版本
EASV7.0.3
1.360老版本工作流连接,版本不匹配问题
1问题描述
步骤160老版本工作流连接,版本不匹配。
2解决方法
解决方法:
步骤1步骤1更新BOS工具,确保BOS工具版本和服务端的版本一致。
步骤2步骤2安装补丁PT028007。
将PT028007下载到本地,然后在bos工具“工具-更新BOS工具”中进行安装,解决插件下载不下来的问题。
步骤3步骤3检查服务器路径“$EAS_HOME\eas\server\lib\sp”目录下面是否存在“sp-metadata.jar”文件。
如果存在,则把“$EAS_HOME\eas\server\lib\sp”目录下面的“sp-metadata.jar”改名为“metadata.jar”并替换“$EAS_HOME\eas\server\deploy\\easWebClient\BOSModular\boscommon\eclipse\plugins\com.kingdee.bos.metadata_6.1.0”目录下的“metadata.jar”(替换前备份一下);这样建模工具再连接的时候就可以直接更新该目录下的“metadata.jar”包。
如果不存在,则执行下一步。
步骤4步骤4无法连接工作流,可能是元数据不一致导致,可以将服务端的四个jav包拷贝到供本地BOS下载的服务器路径下,需要拷贝服务端“$EAS_HOME\eas\server\lib\common\bos”目录下的四个文件:
common.jar
ormrpc.jar
bosframework.jar
metadata.jar
将这四个文件覆盖服务器“$EAS_HOME\eas\server\deploy\\easWebClient\BOSModular\boscommon\eclipse\plugins”路径下的如下文件:
mon_6.1.0(对应common.jar)
com.kingdee.bos.metadata_6.1.0(对应metadata.jar)
com.kingdee.bos.ormrpc_6.1.0(对应ormrpc.jar)
以及“BOSModular\bosruntime\eclipse\plugins”路径下的“com.kingdee.bos.bosframework_6.1.0”(对应bosframework.jar)。
步骤5步骤5打开本地BOS的时候先清除缓存,路径是本地BOS安装目录“BOSModular\clear_bosmodular_env.bat”。
步骤6步骤6重新进行工作流连接操作。
。
.
3适用版本
EASV6.0.1
1.4BOS快测服务器终止
1问题描述
BOS快测启动EAS登陆过程中,快测服务器终止,报错详情见附件
2012-08-2816:
44:
09错误[apusic.server.Main]启动'apusic:
name=J2EEDeployer,j2eeType=Service'服务失败。
java.lang.NoClassDefFoundError:
org/operamasks/faces/render/common/AjaxRendererBase
atjava.lang.ClassLoader.defineClass1(NativeMethod)
atjava.lang.ClassLoader.defineClass(ClassLoader.java:
620)。
2解决方法
请检查现场bos工具使用的jdk版本是否1.5版本。
如果jdk版本确认没有问题,根据异常提示:
找不到web相关的类
java.lang.NoClassDefFoundError:
org/operamasks/faces/render/common/AjaxRendererBase,怀疑更新方案部分引用的类没有更新完整,需要现场参考其他正常环境中的类所在的包,手工同步类所在的jar包,AjaxRendererBase类所在jar:
eas\server\deploy\easweb.ear\eas_web.war\WEB-INF\lib,需要拷贝到开发环境解决方案目录:
解决方案\web\webRoot\WEB-INF\lib目录下。
请现场参考处理。
1.5BOS主菜单管理打开,所有标准产品菜单无法显示
1问题描述
701bos开发工具,主菜单管理打开,所有标准产品菜单无法显示。
2解决方法
根据分析,本机验证,通过服务端控制台新建的数据中心,查看数据库表T_pm_mainmenuitem,其中flevel字段有记录为null或者为0,导致在bos开发工具中无法正常显示“主菜单”内容。
应该是创建数据中心的脚本中,初始化T_pm_mainmenuitem表数据的某些脚本,没有提供flevel字段的初始化。
后续的补丁中应该有对相关记录的修复脚本(每个记录属于不同业务领域提供,因此,修复的脚本应该也是不同业务领域的补丁提供),需要现场更新相关的业务领域的最新补丁,并正确执行相关补丁中的数据库脚本。
75版本bos工具最新补丁已经可以进行提示指导
或者手工进行修复:
修复思路:
如果flevel为null或者为0,需要参考其flongnumber字段,将flevel字段手工修复.
修复方法:
flongnumber字段中的!
号有多少个,flevel就等于,!
号的总数+1
可以参考flevel字段不为空的记录,其flevel和flongnumber的关系。
或者使用以下脚本处理:
updatet_pm_mainmenuitemmmsetflevel=(selectflevelfromt_bas_sysmenuitemsmwheresm.flevelisnotnullandsm.flongnumber=mm.flongnumber)whereflevelisnullandexists(select*fromt_bas_sysmenuitemsmwheresm.flevelisnotnullandsm.flongnumber=mm.flongnumber)
如果仍有问题,请检查flevelisnull的记录,然后删除。
1.6eas控制台bim服务启动异常
1问题描述
eas控制台bim服务启动异常。
2解决方法
修改eas/admin/upater/updater.sh文件(小型机AIX系统而言,windows下的是eas/admin/upater/updater.bat)中的“CLASSPATH=$EAS_HOME/admin/updater/boot/tl_launcher.jar”,在文件中CLASSPATH后增加如下信息:
CLASSPATH=$EAS_HOME/admin/updater/boot/tl_launcher.jar:
$EAS_HOME/admin/updater/server/lib/jetty.jar:
$EAS_HOME/admin/updater/server/lib/commons-logging.jar:
$EAS_HOME/admin/updater/server/lib/log4j-1.2.6.jar:
$EAS_HOME/admin/updater/server/lib/servlet.jar”
各个jar之间连续,不要有任何空格或者换行,unix、Linux环境下多个路径之间使用“:
”分隔;Windows环境下多个路径使用“;”分隔。
1.7BOS启动测试,点击任何单据或基础资料报错
1问题描述
EAS应用及bos相应的补丁打到最新,bos工具更新,然后导入新的解决方案,bos下启动运行调试,客户登录后点击任何单据或基础资料报错。
报错信息:
错误信息:
java.lang.IllegalStateException:
ConfigServiceNOTinited.
错误详细堆栈信息:
com.kingdee.bos.rpc.RPCException:
java.lang.IllegalStateException:
ConfigServiceNOTinited。
2解决方法
请检查解决方案\runtime\server\profiles\server1\config\listenerconfig.data
该文件中是否有如下监听配置:
如果该配置文件中没有,请手工加入,或者从服务器上拷贝:
server\profiles\server1\config\listenerconfig.data
然后重启bos工具验证。
1.8设置快捷键
1问题描述
使用bos设计开发工具设置快捷键。
2解决方法
使用bos设计开发工具设置快捷键,参考如下步骤:
1、在设计开发工具中,打开对应的listUI或者editUI,在“大纲”视图中找到对应的“Actions”,找到需要设置快捷键的action,在该action的“属性”窗口中,找到“快捷键”的属性,设置需要的快捷键,如“F9”,具体设置可以参考标准产品已经设置过快捷键的action;
2、设置过的快捷键的action,需要“大纲-MenuBar”中,新增对应的MenuItem,该menuItem中的“action”属性需要绑定上面设置过快捷键的action;
3、然后发布测试;。
1.9更新bos工具方法
1问题描述
更新bos工具方法。
2解决方法
bos工具更新方法(任选一种即可):
1、使用建模工具视图下的“工具”-“更新BOS工具”更新进行更新,所连接的服务器需要正常运行状态。
然后执行BOSModular/clear_bosmodular_env.bat清除工具缓存。
2、手工更新bosIDE:
拷贝eas/server/deploy/,覆盖bos工具的安装目录BOSModular,然后执行BOSModular/clear_bosmodular_env.bat清除工具缓存。
3适用版本
版本不限
1.10网络互斥
1问题描述
网络互斥。
2解决方法
该功能使用较少,没有相关的详细文档介绍,咨询研发相关人员,对涉及“网络互斥”开发内容做一汇总:
1、现场701版本bos开发工具,可以在“建模工具视图”下,左边“业务单元管理”中,右键对应业务单据,弹出菜单中有“网络互斥管理”功能,(即常用的“发布业务单元”的右键菜单中),如果没有此“网络互斥管理”功能,建议更新701补丁:
PT068336
然后在“建模工具视图”,双击打开业务单据,在菜单“业务单元”-“功能定义”中编辑对应功能,绑定互斥项目。
2、另外,在设计开发视图下,打开ui元数据,“大纲”视图下,找到对应action,在其“属性”窗口中,有服务绑定和扩展属性可以设置网络互斥和数据互斥。
3、最后,网络搜索“eas客户端常用代码”,参考其中“网络互斥功能手工控制”相关章节。
上述操作本机未进行验证,现场自行参考、验证。
3适用版本
版本不限
1.11元数据升级、合并
1问题描述
元数据升级
元数据合并。
2解决方法
对于打补丁,在二次开发的元数据合并步骤出现异常中断,则补丁安装的后续步骤:
执行补丁脚本以及生成子系统树都会取消执行,为保证补丁正确安装,需要手工执行“补丁脚本以及生成子系统树”(2个操作均在eas服务端控制台上有提供相应功能)。
而合并步骤出现异常,最终受影响的会是部署到EAS服务器上的二次开发的内容。
对此异常的处理参考以下方法:
方法一、根据提示具体异常,调整(项目二次开发通过BOS开发工具)已经部署到服务器上的二次开发相关的元数据,然后重新在EAS服务端执行元数据合并,如有仍有异常,继续分析,再调整,再合并,直至合并没有错误为止;
方法二、对于二次开发内容参考《元数据升级指南》,由二次开发在BOS开发工具中完成元数据合并,并重新发布、测试,最后重新部署到服务器验证即可;
方法三、根据具体异常,如异常不影响正常功能(包括标准产品以及二次开发功能,需要在该EAS环境上测试验证)使用,可以忽略。
3适用版本
版本不限
1.12导入菜单的步骤出现异常(卡住)
1问题描述
bos工具导入解决方案,在导入菜单的步骤出现异常(卡住),或者bos开发环境中,对解决方案的主菜单进行设置,主菜单中无法看见任何菜单项。
2解决方法
根据分析,本机验证,通过服务端控制台新建的数据中心,查看数据库表T_pm_mainmenuitem,其中flevel字段有记录为null或者为0,导致在bos开发工具中无法正常显示“主菜单”内容。
应该是创建数据中心的脚本中,初始化T_pm_mainmenuitem表数据的某些脚本,没有提供flevel字段的初始化。
后续的补丁中应该有对相关记录的修复脚本(每个记录属于不同业务领域提供,因此,修复的脚本应该也是不同业务领域的补丁提供),需要现场更新相关的业务领域的最新补丁,并正确执行相关补丁中的数据库脚本。
75版本bos工具最新补丁已经可以进行提示指导
或者手工进行修复:
修复思路:
如果flevel为null或者为0,需要参考其flongnumber字段,将flevel字段手工修复.
修复方法:
flongnumber字段中的!
号有多少个,flevel就等于,!
号的总数+1
可以参考flevel字段不为空的记录,其flevel和flongnumber的关系。
或者使用以下脚本处理:
updatet_pm_mainmenuitemmmsetflevel=(selectflevelfromt_bas_sysmenuitemsmwheresm.flevelisnotnullandsm.flongnumber=mm.flongnumber)whereflevelisnullandexists(select*fromt_bas_sysmenuitemsmwheresm.flevelisnotnullandsm.flongnumber=mm.flongnumber)
如果仍有问题,请检查flevelisnull的记录,然后删除。
3适用版本
版本不限
1.13只能看见一级菜单,而无法看见二级以下的菜单
1问题描述
bos工具导入解决方案,在导入菜单的步骤出现异常(卡住),只能看见一级菜单,而无法看见二级以下的菜单。
2解决方法
现场数据库中的t_pm_mainmenuitem表,有fparent字段为空的记录,且记录为空的记录对应的目录层级为2,导致后续层级的也无法正常显示。
可以根据select*fromt_pm_mainmenuitemwherefparentisnullandflevel>?
来查看对应层级父级菜单为空记录,删除或者找对应的领域的研发提供修复脚本。
针对问题答复:
根据现场提供的t_pm_mainmenuitem数据表,分析发现其中有部分2级菜单的fparent字段为空。
导致生成菜单树出现空指针异常。
根据检查的结果,出现问题的2级别以上菜单的fparent记录为空的菜单,均是“营销服务管理_售楼管理”一系列的菜单。
现场可以通过以下sql查询:
select*fromt_pm_mainmenuitemwherefparentisnullandflevel>1;
至于上述有问题的的记录出现原因:
有可能是现场更新了房地产相关的补丁(补丁脚本有缺陷),或者人工增加了相关的有问题的菜单数据。
处理方法:
方法1、联系房地产售楼管理相关的研发,提供正确的数据脚本(如果上面的问题确认是房地产补丁导致)进行修复;
方法2、人工修复,根据实际菜单上下级情况,将fparent字段修复;
方法3、删除上面有问题的菜单记录,后续如使用到,则通过EAS客户端添加。
3适用版本
版本不限
1.14解决方案目录中没有任何元数据
1问题描述
导入解决方案,提示成功,但是解决方案目录中没有任何元数据,lib包等内容。
2解决方法
跟研发讨论,现场下载过程中,有server/properties/multilanguage_sql.jar包无法下载。
估计是该jar包太大导致。
处理方法:
方法一:
服务器上临时删除或者剪切该jar包到其他目录,待导完解决方案后,再恢复jar包。
方法二:
修改配置文件:
BOSModular\bim\eclipse\plugins\com.kingdee.bos.bim_6.1.0\plugin.xml,将其中:
节点中的filter_rule属性,其后面,追加“;multilanguage_sql.jar”(注意大小写),以过滤掉上述无法下载的jar包。
(该jar包跟多语言相关,可以不用下载)
并执行BOSModular\clear_bosmodular_env.bat环境清理缓存,重启bos工具验证。
3适用版本
版本不限
1.15单据序时簿界面左下角统计的行数跟实际显示的不一致
1问题描述
客户端运行时候,单据序时簿界面左下角统计的行数跟实际显示的不一致。
2解决方法
此问题一般出现在包含有分录业务单据中,而没有分录的基础资料,基本不会出现。
在BOS解决方案中,找到此序时簿listui对应的query,然后查看下此query的“其他”页签,
确认此页签中“主键定义”栏目是否只有id一项,如果没有entrys.id的话,需要加上。
.
3适用版本
版本不限
1.16单据头进行合计的字段,在序时簿中合计错误
1问题描述
单据头字段进行合计,在序时簿界面,合计的结果不正确,对于单据有N条分录的情况,单
据头合计字段对此条单据记录会得到N倍实际值的结果。
2解决方法
找到此单据序时簿界面listui对应的query,在“字段”页签中,找到要合计的单据头字段,
然后在下面的扩展属性栏中增加一个PKNameGroupBy,并将此扩展属性都应的值修改为id,
然后重新发布即可。
1.17BOSTYPE如何查询
1问题描述
需要获取实体的bosType,请问如何查找到。
2解决方法
相应实体的BOSTYPE。
可在表T_SYS_EntityRef中查找对应实体的BOSTYPE,或者在bos下工具下相应的实体文件*.entity的源代码中找到标签,标签内为对于的BOSTYPE。
1.18升级上来环境的BOS报错
1问题描述
从服务器更新bos工具,新建业务单元或编辑业务单元,保存扔出异常。
2解决方法
common.jar更新到2013年10月17号后,从服务器更新bos工具,新建业务单元或编辑业务单元,保存扔出异常,经过分析,是Context类中添加了getOriginLocale接口导致工具调用异常。
更新BOS补丁:
PT094186
3适用版本
750
1.19列表界面显示异常,列表界面无法显示超过30行
1问题描述
列表界面无法显示超过30行,实际有50多行,部分行无法选中。
2解决方法
现场开发的单据应该有分录,请查看数据源-其他-主键信息中是否添加了分录的id,如果没有请尝试添加单据id和分录.id
3适用版本
版本不限
1.20BOS7.50导入解决方案时,选择从远程服务器导入,报错
1问题描述
BOS7.50导入解决方案时,选择从远程服务器导入,报错。
java.lang.Exception:
连接BIM服务器超时,请确认服务器地址是否正确,如果服务器上有多个IP/网卡,请使用绑定IP的功能并重试,
如果服务器启用了防火墙,建议使用被动模式连接并开放10166、10167、10168三个端口或尝试关闭防火墙后重试
atcom.kingdee.bos.bim.project.remote.UpdateErrorUtil.wrapUpdateException(UpdateErrorUtil.java:
100)
atcom.kingdee.bos.bim.project.remote.UpdateErrorUtil.wrapUpdateException(UpdateErrorUtil.java:
104)
atcom.kingdee.bos.bim.project.remote.Updater.downloadFiles(Updater.java:
293)。
2解决方法
系相关端口被封引起,服务器需开放相关端口10166、10167、10168。
3适用版本
EASV7.5
1.21新安装BOS工具无法打开
1问题描述
安装BOS工具无法打开
2解决方法
问题为将BOS安装在EAS服务器目录或者BOS安装包所在目录引起,在新的文件夹重新安装后问题解决。
3适用版本
版本不限
1.22BIM服务器启动卡死
1问题描述
管理控制台启动BIM服务器,一直卡在那,无日志输出。
手动启动Kingdee\eas\admin\updater\updater.bat闪退,命令控制台启动updater.bat,提示系统找不到指定路径。
2解决方法
一般来说,脚本启动不会有报错日志,一般是通过通过命令窗口执行updater.bat或者updater.sh,查看异常信息的。
比如上面这个找不到文件,进一步分析问题后发现为updater.bat引用JDK文件不存在引起,可打开updater.bat文件,查看其引用的jdk是否存在。
如果不存在,可从别的环境拷贝或者修改updater.bat引用JDK引用路径。
3适用版本
EASV7.5
1.23BOS部署时提示版本号不一致
1问题描述
BOS部署时提示版本号不一致,BOS环境为新安装且已从服务器环境更新BOS工具,依然会报错。
2解决方法
相关问题为8.1版本服务器的版本号与BOS版本号位数格式不一致导致,