使用EAS BOS过程中常见问题.docx
- 文档编号:30414095
- 上传时间:2023-08-14
- 格式:DOCX
- 页数:88
- 大小:3.11MB
使用EAS BOS过程中常见问题.docx
《使用EAS BOS过程中常见问题.docx》由会员分享,可在线阅读,更多相关《使用EAS BOS过程中常见问题.docx(88页珍藏版)》请在冰豆网上搜索。
使用EASBOS过程中常见问题
BOS工具常见问题集
一、功能点使用问题解答
1、业务建模工具所定义的单据是怎么调整顺序的?
在业务建模工具视图选中该单据,
菜单【业务单元】【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;
菜单【业务单元】【查询顺序】用来调整序时簿界面的显示顺序。
2、目前字段修改能修改什么属性?
业务建模工具里不能修改系统定义字段(可以切换到studio视图修改),只能修改自定义字段;
如果想要修改系统定义字段的显示标题,可通过属性里的“标签文字”进行修改;
在自定义字段未保存前,该字段所对应的所有属性都可以修改;
在自定义字段保存后,该字段只能修改字段标题,出现需要修改字段除了别名以外的属性的问题,比较快速的变通处理方法是删掉此字段再重建。
3、BIM中建的枚举只有整型吗?
可不可以定义其他类型的枚举?
目前都默认为String类型处理
4、在运行时,EditUI界面中点击复制并新增时,单据编号(已配置编码规则)同时也会复制过去,而不会产生新的单据编号,如何解决?
请重载setFieldsNull()方法,然后把你不想复制的字段set一个null值在里面就可以了
5、在我们开发单据中,每个单据都自定义了一个审核的字段(并没有使用框架的审核功能),每张单都需要用户手工审核操作的。
当我把已经审核的单据打开,在EditUI点击复制并新增时,审核状态也复制过去(变成已审核状态,本应该是未审核状态的),如何解决?
同上
6、请问复制并新增时,是哪里的数据复制到新的单据,界面上的数据还是editData里面的数据(两都有可能数据不一致)?
复制的是editData,editData总是与数据库中的记录保持一致的,所谓的不一致,只是因为加载或者保存等时候认为的改动了某些字段的值。
7、在业务建模工具中,发现新建的common目录找不到
业务建模工具对以下的通用目录作了过滤,自动滤掉了:
ui common tools upgrade dmc btp wfbase util framework portalmobilebim
如果想使用以上的目录,可以通过点击“业务建模工具”视图右上方的小三角形,选择“过滤”目录,在弹出的界面中,去掉不想滤掉的目录的名字即可。
二、环境使用类问题解答
1、BIM工具菜单的“启动EAS客户端”和“快速启动EAS测试”有何不同?
"快速启动EAS测试"是指同时启动EAS服务器和EAS客户端;
其实启动客户端时,如果EAS服务端没有启动会自动启动;
分这几种启动方式的好处是如果有些改动如果没有改变服务端的东西,就可以沿用原来启动的服务端,仅仅启动客户端就可以了。
2、BIM服务启动报错缺少类,请问如何配置修改?
这是由于在lib下缺少必须的EAS库文件,有可能是用户在使用过程中改变类加载目录造成的,出现这种问题,只需要把当前的解决方案先保留内容地从当前视图删掉,再重新打开一次就可以了,系统会自动寻找当前解决方案目录下的lib目录。
3、在studio中做的修改以及发布出来的代码同步到bim中,是否需要手工拷贝?
BIM和studio用的是同一套元数据,是实时同步的。
即用BOSStudio改了元数据后,打开BIM就可以看到变动了;
同样用BIM改动后,打开 BOSStudio也可以看到变动。
如果说需要拷贝元数据,可能是你建了不同的工程。
如果BIM和BOS操作的是同一工程,是不需要拷贝的。
使用BIM或BOS的发布功能都可以发布成Java代码
注意:
使用中常发现用户在bim和studio视图中所作的发布设置不一致,导致一些不必要的麻烦,建议使用前请到菜单【工具】【解决方案设置】,在弹出界面中选择“测试设置”,单击“拷贝设置至Studio”,用来使两种工具的设置保持一致。
如下图:
4、BIM的解决方案必须通过应用服务器导入吗?
也可以通过拷贝别人解决方案目录到自己本机,然后打开已有的解决方案。
5、怎样将BIM中的EAS测试启动模式设置为可调试?
请到菜单【工具】【解决方案设置】,在弹出界面中选择“测试设置”,再切换到“其他测试设置”页签,勾选“调试模式运行”即可。
如下图:
6、BIM中在哪里可以看到运行日志信息?
控制台的服务端、客户端,还有控制台右上方的日志按钮打开可以看到错误信息;
如果有编译错误,可以到解决方案根目录下看classes.log文件输出信息。
7、如何转换成繁体版?
在安装盘相对路径..\kingdee\eas\bos\BOSModular下,启动命令文件:
BOSModular_zh_TW.bat即可。
8、项目实施中需要在EAS 凭证录入界面上面增加“组织机构”,关联到基础资料里面的“组织机构”,并且设置成为必录项,是否能够实现,可以通过什么方法实现?
eas系统中已有的单据,可以通过向导导入已有业务单元来实现。
具体步骤如下:
选择凭证所在的目录,右键[新建]-->[导入业务单元或模板],
然后根据向导一步步可以把凭证导入到业务建模工具中,
然后在凭证这张单据中通过新增字段即可添加“组织机构”这个字段
把字段设为必录项可以通过定义事件来解决。
选中“组织结构”这个字段控件,在下面的属性页签里,选择“保存”这个
触发时刻来触发事件。
在弹出的“事件管理”界面中,新增事件,在“定义
事件”界面中,选择操作“单据合法性校验”;
具体的操作设置过程请参考bos自带的帮助系统:
金蝶业务建模工具帮助系统-->定义业务单元-->事件管理-->事件定义-->
各种操作的详细描述。
9、我的BIM运行测试时,有时会读到Jar包里面的代码,而不是先运行自己的代码。
有时候却正常。
请问是什么原因?
理论上是优先读取本地的class,然后才是库文件,如果出现了这种不正常的现象,请检查本地是否生成了class
10、bos在头一天还正常使用,第二天启动的时候就出现如下图所示问题,启动不起来,重新启动机器,将服务器控制台启动后,才能启动bos
bos工具能否正常启动,跟服务器控制台没有关系,应该是某些错误导致无法启动,遇到这种情况,请尝试删除工作空间d:
\workspace下的.metadata目录试试,打开bos工具后,切换到业务建模工具视图,再重新打开一次解决方案。
11、有一个开发人员在业务建模窗口中经常会出现下图所示的问题,然后bos关闭
此问题应该是有javaw.exe进程死在内存里,请在“任务管理器”里切换到“内存”页签,杀掉所有的javaw.exe进程,再重新打开bos工具即可。
12、修改元数据发布后,切换到java透视图中的时候经常出现如下图所示问题:
当服务器正在运行的时候,只能热替换代码体部分,如果有方法名更名或者新增方法,热替换无法进行,就会出现如图提示框。
三、事件类问题解答
1、定义了计算公式的事件,却发现并不起作用是怎么回事?
事件定义最经常犯的一个错误是把事件定义在错误的字段上面,导致产生不了预想的效果,
现举一个实际的例子供参考:
比如:
金额=数量x建议采购单价
则“金额”的值随着“数量”和“建议采购单价”的值的改变而改变。
由此可判断事件应该定义在公式右侧的字段“数量”和“建议采购单价”上;事件的触发时机在“更新”事件上。
2、创建了EditValueChange事件,目前在文本字段中触发了该事件,在数值字段中无法触发该事件
请用BIM里面字段的更新事件。
单据头的字段的更新事件选中字段后,在属性的“更新”事件里加事件就可以了,分录体的字段的更新事件需在大纲里,选中字段再进行更新事件定义。
发布后JAVA代码里有相应事件,在里面实现代码即可。
3、为什么一个单据在保存的时候,F7控件也会产生一个DataChange事件,一个单据在打开时,都会产生事件,不合理
当时升级支持的时候发现是事件定义在整个分录上,不合理,应该定义在分录的对应字段上。
四、发布类问题解答
1、请问发布出错通常是什么原因?
对外发布的bos版本,在正常情况下,一些很常用的功能,比如发布,基本上是不会出错的(当然不排除有些潜在的没注意到的bug引发的错误)。
如果出错了, 从控制台的输出可以判断存在以下三种错误:
1.connect错误
请到菜单【工具】【解决方案设置】,在弹出的界面中,选择“测试设置”,再切换到“测试帐套”页签,点击“测试帐套连接”,来确定当前的数据库连接是否正常。
pile错误
可以到解决方案根目录下面的classes.log文件中,检查当前项目工程的代码是否有问题;也可以把当前的项目转换为java工程,然后切换到java视图解决编译出错问题;
一般情况下原因是这样的:
可能在要发布的单据中引用了你新定义的某个基础资料/单据,但是该基础资料/单据没有发布过。
解决办法:
先发布引用的那个(可能不止一个)基础资料/单据
还有一种情况是当前业务单元是由标准产品的元数据导过来的,不应该生成实现类,以免冲掉原有的实现类,请先把此业务单元生成的代码删掉,打开该单据,右键,在单据信息里不勾选“生成实现类”,再发布一次就可以了。
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的方案,建了一张单据,发布就出现附件里的错误,请问得怎么解决?
Causedby:
java.sql.SQLException:
MicrosoftSQLServer2000DriverforJDBCSQLServer列 '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:
Compilefailed;seethecompilererroroutputfordetails.
org.eclipse.ant.core.AntRunner.handleInvocationTargetException(AntRunner.java:
424)
org.eclipse.ant.core.AntRunner.run(AntRunner.java:
356)
mon.BaseAntScriptJob._$2(UnknownSource:
185)
mon.BaseAntScriptJob._$1(UnknownSource:
142)
mon.BaseAntScriptJob.run(UnknownSource:
82)
org.eclipse.core.internal.jobs.Worker.run(Worker.java:
66)
一般情况下原因是这样的:
可能在要发布的单据中引用了你新定义的某个基础资料/单据,但是该基础资料/单据没有发布过。
解决办法:
先发布引用的那个(可能不止一个)基础资料/单据
还有一种情况是当前业务单元是由标准产品的元数据导过来的,不应该生成实现类,以免冲掉原有的实现类,请先把此业务单元生成的代码删掉,打开该单据,右键,在单据信息里不勾选“生成实现类”,再发布一次就可以了。
8、发布出错,报:
kingdee.bos.metadata.MetaDataNotFoundException:
CannotfoundBusinessObject!
可能是什么原因呢?
如果你曾经手工替换过元数据,可能会使这几个目录(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里发布其他的业务单元,系统会自动copydeployed_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、在部署数据的时经常出现了如下图所示问题:
部署的时候必须停止服务器。
六、集成模块----单据转换问题
1、单据转换规则定义中,分组与合并规则是什么意思?
为什么一定要分组?
要不保存不了
分组是groupby,合并是groupby以后的某些数值字段的合计。
现在的实现方案是根据分组的级次来逐级转换的,如果不分组,那么就不会有转换过程,而且业务上也是要求分组的。
2、分组的级次是什么?
是属性的级次。
比如单据上的company,是一级,而分录上的科目entries.account,是二级。
3、在某一张采购申请单关联生成采购订单以后,它是不准被删除的,怎样知道这张申请单是已经关联生成过采购订单的?
在com.kingdee.bos.metadata.bot.app下找t_bot_relation看它的数据库记录里fsrcentityid和fdescentityid对应的记录就可以看到单据关联生成的信息了。
4、在有分录的单据ListUI中,点击“关联生成”后,可不可以实现选中一条记录就生成包含所有分录的目标单据?
如果想根据单据头做botp转换,需要自己在单据的序时簿代码中添加 相关的代码设置,代码参考:
public void actionCreateTo_actionPerformed(ActionEvent e) throws Exception
{
setDAPTrans(true);
super.actionCreateTo_actionPerformed(e);
setDAPTrans(false);
}
5、如何手工关闭BOTP的源单据?
也就是说我的源单据不需要参考目标单据是否生成,也不需要参考目标单据反写到源单据的字段值。
我需要实现人为手工地关闭源单据,使其关闭后不能再生成目标单据。
在动态会计平台可以将关闭的枚举值赋给所需的单据
6、BOTP源单生成目标单时,能否设定规则,只将符合条件的源分录带到目标单据上?
可以,打开一个规则,在界面上侧的toolbar栏有规则过滤和数据过滤
规则过滤针对过滤规则本身的转换规则进行过滤
数据过滤针对单据的字段的具体值进行过滤
7、BOTP下推生成目标单据,如果想让已经生成下游单据的分录(不是单据)不可以再生成单据,应该如何处理?
是要手工在此分录上加个状态字段还是框架已经支持?
需要自己打上标签,然后在数据过滤里做过滤,使打上标签的单据不再参加botp
七、集成模块----权限问题
1、用业务建模工具新定义的单据如何跟权限管理集成起来?
新定义的单据,在没有做权限管理之前,是不受权限控制的。
将新单据跟权限管理集成起来,大致分为三个步骤:
1、【工具】【权限管理】,在此界面定义单据所在的目录及给单据设置各种权限项(查看、新增、修改、删除、审核等)。
如果没有新建某种权限项,则默认此种权限项不受控制,是可以在任何情况下 使用的。
-----这只是加了权限项,但是并没有应用到单据中。
2、要应用到单据中,必须在主菜单管理中给业务单元加上相应的权限项,然后发布,这是设计期要做的工作。
3、在运行期时,通过administrator登录,在“用户管理”里同步权限项分配相应的权限即可
八、集成模块----工作流问题
1、用业务建模工具新定义的单据如何跟工作流集成起来?
新建的单据通过【业务单元】【功能】将此单据中的相关功能同工作流进行绑定,发布后,运行【工具】【生成工作流和单据转换平台目录】生成工作流与业务建模工具同样的系统目录。
这样前提条件都准备好了。
再在业务建模工具里启动服务端,然后再工作流里进行工作流工具的连接,记得应用服务器地址的后面加上端口11036(192.168.19.176:
11036),另外设置元数据的路径是当前解决方案所对应的metadata目录(记得勾掉默认的元数据为jar包的类型),启动工作流成功后,业务建模工具和工作流已经集成起来。
2、业务单元新增了一个功能,上面怎么没有与工作流绑定的选项?
需要单据上的功能才行,基础资料不能与工作流绑定。
3、怎样集成工作流建模工具?
为何工作流建模工具不能连接BIM启动的服务器?
工作流连接服务器时可以设置连接端口号为11036(系统默认为11034)就可以了
4、bim与wfbuilder集成问题:
在bim中启动了apusic,打开wfbuilder时找不到已启动的apusic服务器,bim中apusic端口和ormrpc的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 使用EAS BOS过程中常见问题 使用 EAS BOS 过程 常见问题