使用EAS BOS过程中常见问题 - 图文

发布时间 : 星期四 文章使用EAS BOS过程中常见问题 - 图文更新完毕开始阅读

还有一种情况是当前业务单元是由标准产品的元数据导过来的,不应该生成实现类,以免冲掉原有的实现类,请先把此业务单元生成的代码删掉,打开该单据,右键,在单据信息里不勾选“生成实现类”,再发布一次就可以了。 3.其他错误,比如元数据校验等

除了可以从控制台得到某些出错信息外,也可以打开控制台右上方的日志按钮,获取出错信息加以判断。

另外,还可以在studio中发布当前业务单元所对应的元数据,看看元数据本身是不是存在问题;还有一种常见情况是缓存导致的,可以通过清除缓存来解决。

另外一种常见错误是,此业务单元引用的基础资料没发布,请先发布该业务单元关联的

2、有的显示的菜单中缺少了发布等菜单项,如下图:

只有业务单元(后缀名为.bizunit)才能发布,图示的“采购申请单”应该是一个业务模板,业务模板只是供复制使用的,不能用于发布。

3、请问EASBOS解决方案目录下的deployed_metas文件夹里放的东西是做什么的?能否手工修改?我在BIM里删除了一个字段后运行报错,后来发现是这文件夹里的文件还存在相关信息

(注:metas是5.0以前的环境目录,相当于现在的metadata)

解决方案关于元数据一般有三个目录:metadata,deployed_metas,metas metadata里的元数据发布后,经由deployed_metas发布到metas目录中

metadata中的元数据在当前开发环境中可见

metas是eas运行环境依赖的元数据,由metadata目录中的元数据发布而来

deployed_metas相当于metadata到metas的中转站,记录metadata里元数据的发布过程 ---即相当于metasdata里的元数据先发布到deployed_metas目录中,成功后再发布到metas里。

deployed_metas里的文件一般情况下不建议修改,它只是做一个发布记录,这个记录在以后的bim部署中用到

bim删除字段后运行报错,跟deployed_metas应该没有关系,运行时依赖的元数据是在metas目录中

如果你想彻底改掉这个问题---这个问题也许是因为过去记忆的文件没被彻底覆盖造成的 可以在deployed_metas和metas里同时删掉这个元数据信息,然后再重新发布

4、在BIM里导入一个EAS5.1的方案,建了一张单据,发布就出现附件里的错误,请问得怎么解决? Caused by: java.sql.SQLException: MicrosoftSQLServer 2000 Driver for JDBCSQLServer列 'T_PM_User.FID' 与外键 'FK_TRA_TrnstBLUU5l' 中的引用列'T_TRA_TransitBill.FLastUpdateUserID' 的排序规则不同

EAS5.1的SQLServer库排序规则是大小写敏感的,5.0的则不是。这样EAS-BIM5.1发布出来的表的排序规则是大小写敏感的。 这样导致使用5.0的EAS帐套会出现排序规则不一致的错误

5、发布emp职员出现这样的:无法将 NULL 值插入列 'FNumber',表 'boc.dbo.T_BD_Person_TEMP'; 该列不允许空值。INSERT 失败

数据表'boc.dbo.T_BD_Person_TEMP'的字段FNumber不能为空,但是你导入的数据中有null值。这是因为原本可以为空的fnumber人为改成非空造成的。有两种方法: 1.将数据表boc.dbo.T_BD_Person_TEMP'的字段fnumber的值清空

2.将数据表boc.dbo.T_BD_Person_TEMP'的字段fnumber的属性设成可以为空

6、为什么在BOSStudio发布元数据后,BIM客户端还是取不到元数据?

BIM会在本地另外启用服务器进行单据测试,元数据进行了缓存,因此在BOSStudio发布元数据后,必须重新启动BIM。

7、在EAS业务管理平台发布设置完业务单元后,执行“发布业务单元”时出现错误 现象:

BIM 运行任务出错!

org.eclipse.core.runtime.CoreException:

D:\\EASProgram\\kingdee\\Utilities\\tools\\bim\\bimstudio\\plugins\\com.kingdee.bos.bim_4.1.0\\deploy.xml:35:

Compile failed; see the compiler error output for details.

org.eclipse.ant.core.AntRunner.handleInvocationTargetException(AntRunner.java:424)

org.eclipse.ant.core.AntRunner.run(AntRunner.java:356) com.kingdee.bos.bim.common.BaseAntScriptJob._$2(Unknown Source:185) com.kingdee.bos.bim.common.BaseAntScriptJob._$1(Unknown Source:142) com.kingdee.bos.bim.common.BaseAntScriptJob.run(Unknown Source:82)

org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)

一般情况下原因是这样的:可能在要发布的单据中引用了你新定义的某个基础资料/单据,但是该基础资料/单据没有发布过。

解决办法:先发布引用的那个(可能不止一个)基础资料/单据

还有一种情况是当前业务单元是由标准产品的元数据导过来的,不应该生成实现类,以免冲掉原有的实现类,请先把此业务单元生成的代码删掉,打开该单据,右键,在单据信息里不勾选“生成实现类”,再发布一次就可以了。

8、发布出错,报:kingdee.bos.metadata.MetaDataNotFoundException:Cannot found BusinessObject!可能是什么原因呢?

如果你曾经手工替换过元数据,可能会使这几个目录(deployed_metas,metadata,5.0有metadata)的某些pk属性文件不一致;请在解决方案下的metadata目录找到facade_pkmapping.properties,entity_pkmapping.properties两个文件,替换到解决方案下对应的deployed_metas,(5.0有metas)目录下。

9、facade从CVS上拉下来后,在pkmaping文件中没有相应的纪录,我记得5.0 中通过在发布一遍就可以了,现在5.1中我发布了还是没有记录,我只能手工增加,请问以后我们的facade都要这样做吗,而且怎么将每个人做的facade合并起来?

请问你是不是通过studio发布的?

如果在studio发布的,只会在metadata的目录中写相应的pkmapping记录;

如果是在bim里发布的,就会在metadata和deployed_metas里面都写相应的pkmapping记录;

如果是在studio发布过,再在bim里发布其他的业务单元,系统会自动copy deployed_metas里的文件到metadata里,这样deployed_metas里的pkmapping文件会覆盖metadata里的pkmapping文件,导致找不到相应的记录。

建议在bim发布有facade的业务单元 10、BOS中 TABLE 中导出到 ORACLE 数据库中出现错误, 但是在数据库中生成了相应的表 错误信息如下:Error in T_KD_QalFeedback,请问是怎么回事?

检查了table所引用的外键,发现t_kd_qalfeedback引用了另外两张表:t_kd_recbrdrflk和T_kd_recbrlrflk。

遇到这种问题,请先导出此表外键所关联的非系统定义的数据表, 如果被引用的数据表的外键仍然有关联非系统定义的数据表, 请按顺序导出被关联的数据表

五、部署类问题解答

1、部署业务单元的时候好像把整个解决方案都部署了,应该怎样才能只部署我想要部署的业务单元?

BIM目前的处理方式是,每次部署的时候,会把所有用BIM发布过的业务单元都部署上去

2、部署没有生成数据库表单和菜单吧(发布才会),是这样吗?

部署的时候,会把元数据、类文件部署到服务端,也会把主菜单、数据库表部署到所选择的帐套上。

3、部署后在单据转换平台上发现系统的目录为空?

这是业务建模工具的一个已知bug,标准的部署流程应该是:发布业务单元?生成工作流转换及botp目录?部署,但是因为有bug的原因,现在的流程为:发布业务单元—>生成工作流转换及botp目录?任何发布一个业务单元?部署

如果发现部署后目录为空的情况,也可以把测试环境下解决方案的metadata目录下所有的mdbview类型的文件copy到服务端..\\kingdee\\eas\\server\\deploy目录下的metas.jar文件中

4、部署是怎样的一个过程?

在本地测试通过以后,需要部署到服务端,以供所有的客户段能够自动更新使用。

部署是把本地经过发布的业务单元上传到服务端的..\\kingdee\\eas\\fileserver.ear\\easWebClient\\deploy\\client下的metas.jar的对应位置,本地的classes上传到服务端的..\\kingdee\\eas\\fileserver.ear\\easWebClient\\lib\\sp目录下。

5、在部署数据的时经常出现了如下图所示问题:

联系合同范文客服:xxxxx#qq.com(#替换为@)