BOS开发部分问题解决办法

问题8:UI类常用方法说明
方法:onLoad()
说明:UI 第一次加载时调用,通常用于单据第一次初始化时对单据进行相关属性的操作,注意,当在UI 界面打开后,再点“新增按钮”,此时是不执行此方法的。
方法:actionAddNew_actionPerformed(ActionEvent arg0)
说明:点击单据上的“新增”按钮时触发的事件。
方法:verifyInput(ActionEvent e)
说明:验证输入内容
方法:applyDefaultValue(IObjectValue iobjectvalue)
说明:对表头的字段设置默认值时,重写此方法
方法:getSelectors()
说明:
方法:*_dataChanged(DataChangeEvent e)
说明:单据上某一字段的值改变时,触发此方法
方法:storeFields()
说明:
方法:actionRec_actionPerformed(ActionEvent e)
说明:
方法:applyDefaultValue(IObjectValue iobjectvalue)
说明:

问题 9:关于BOS设计开发透视图下行目录结构说明:
在BOS 设计开发视图下,项目的目录结构如下图:
在MMEAS 项目下,分两大目录:
basemetas 目录,存放EAS 标准产品的所有元数据
metadata 目录,存放二次开发的所有元数据
说明:
1、当对标准产品的元数据进行修改时,BOS 会自动将要修改的元数据从
basemetas 目录复制到metadata 目录,系统运行时会优化使用metadata 目录
下的元数据。
2、对 metadata 目录下会元数据进行发布会,BOS 会在Java 透视图生成相应的
Java 代码文件,实体(.entity)和界面(.UI)是分开发布的。

问题12:如何修改F7 字段所关联的基础档案
在一般情况下,在BIM 视图对单据新增F7 字段时,就可以关联到想要的基础档案或其它视图。但是,当需要关联一些不存在业务单元(即*.bizunit 文件)的基础档案时(如:自定义核算项目)。此时就只能通过以下步骤来处理:
1.在BIM 里加一个F7 字段,关联物料或其他可以选到的基础资料。保存后先别发布;
2.切换到BOS 透视图,打到对应的.relation 文件,修改supplierEntity,原来是指定物料的实体,改成自定义核算项目的实体;
3.打开XXXEditUI.ui,修改F7 字段的queryInfo,原来是指向物料的query,改成自定义核算项目的query

问题15:如何通过IObjectPK pk获取实体对象
IObjectPK 是一个表示实体对象id 的对象,在日常开发工作中,经常需要通过它来获取实体对象。以下是通过IObjectPK 获取实体对象代码的模版:
I*Info i*Info = *Factory.getLocalInstance(ctx);
*Info info = i*Info.get*Info(pk);
以下示例,通过IObjectPK 获取成本对象实体:CostObjectInfo
ICostObject iCostInfo = CostObjectFactory.getLocalInstance(ctx);
CostObjectInfo coi = iCostInfo.getCostObjectInfo(pk);

问题16:如何通过实体对象的id获取实体对象
//如下代码,通过应收单的id 号,获取应收单表体实体
String entityID = “=dsfarlewkrjewrojafad”;
BOSUuid uid = BOSUuid.create(entityID);
IObjectPK opk = new ObjectUuidPK(uid);
OtherBillentryInfo obi = OtherBillentryFactory.getRemoteInstance().getOtherBillentryInfo(opk);

问题 23:如何获取当前用户
1、在UI 扩展类中,获取当前用户可通过工具类SysContext
如:SysContext.getSysContext().getCurrentUserInfo()
2、在ControlerBean 的扩展类中,获取当前用户可通过工具类ContextUtil
如:ContextUtil.getCurrentUserInfo(ctx)
关于 SysContext 和ContextUtil 这两个工具类中方法的介绍: 这两个类是 EAS 的全局工具类,用于获取当前用户信息,当前组织单元信息、客户端IP、客户端名字等信息。SysContext 用于客户端,如UI 扩展类中;而ContextUtil 用于服务端,如ControllerBean 扩展类中。

24:标准产品如何扩展类以便重写方法

对于客户端的UI类,无论是listUI,还是EditUI,都可以在通过追加后缀名CTEx的方式来扩展。如要重写标准产品采购订单的保存方法: com.kingdee.eas.scm.sm.pur.client.PurorderEditUI,在实际二次开发中,发布之后只会生成com.kingdee.eas.scm.sm.pur.client.AbstractPurorderEditUI,如果要重写保存的方法,则可以在com.kingdee.eas.scm.sm.pur.client包下新建PurorderEditUICTEx,此类继承PurorderEditUI类即可,然后在PurorderEditUICTEx重写保存方法。
服务端的扩展,主要是对bean的扩展,有两种方法
方法1.
1、在bim里面找到对应的业务单据XXX,打开“业务单元->功能”,新建一功能,然后发布。
2、切换到java视图,可以找到刚才的业务单据的XXXControllerBeanEx。
3、在XXXControllerBeanEx中覆盖对应的方法即可。
方法2.
新建一扩展类如:TestControllerBeanEx,然后在文本打开实体元数据,增加一扩展属性

<rs key="entityObject[com.kingdee.eas.custom.app.Test].extendedProperty.controllerBeanEx">  
<lang locale="en_US" value="com.kingdee.eas.custom.app.TestControllerBeanEx" />
<lang locale="zh_CN" value="com.kingdee.eas.custom.app.TestControllerBeanEx" />
<lang locale="zh_TW" value="com.kingdee.eas.custom.app.TestControllerBeanEx" />
</rs>

注意上面的写法[com.kingdee.eas.custom.app.Test]中的”Test”是TestControllerBeanEx的controllerBeanEx前面的Test,可以参考该实体文件的其他的属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值