1:如何通过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);
2:如何通过实体对象的id获取实体对象
//如下代码,通过应收单的id号,获取应收单表体实体
String entityID ="dsfarlewkrjewrojafad"; //BOSUuid uid = BOSUuid.create(entityID); IObjectPK opk = new ObjectUuidPK(entityID); OtherBillentryInfo obi = OtherBillentryFactory.getRemoteInstance().getOtherBillentryInfo(opk);
3:BOTP自定义公式解决方案
注意:只适用于EASBOS530或以上版本
一、业务场景: 运行时BOTP的公式平台提供的函数较少,如果要实现比较复杂的逻辑,譬如通过物料编码从其他单据取出对应数量,运行时的公式平台就显得捉襟见肘了。对于客户开发的单据,可以通过写代码实现。但是对于标准产品的单据,如果反编译代码,则升级时相当麻烦。而自定义公式方案正是为了解决此难题而生。它可以通过写代码在BOTP公式平台挂上自定义的公式,公式内容由程序员自由决定,而不会受升级影响。
二、原理:(业务人员只需重点关注步骤3、4、5)
1.在BOS自定义一个类,实现com.kingdee.bos.service.formula.api.IFormulaFunctions
接口。(该类必须位于com.kingdee.bos.service.formula.api
此包下,因为要引用此包里的非公共类) 类的定义参考如下&#