加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

EAS BOS webservices 开发 之 形成EAS单据中的问题

发布时间:2020-12-16 21:44:47 所属栏目:安全 来源:网络整理
导读:1. EAS中业务单据通常有很多F7,一般我是通过对象的ID 去查询这个对象然后赋值到单据对应的属性中, 比如: //付款方式 ? ? purInWarehs.setPaymentType(PaymentTypeFactory.getLocalInstance(ctx) ? ? .getPaymentTypeInfo(new ObjectUuidPK("2fa35444-5a23-

1. EAS中业务单据通常有很多F7,一般我是通过对象的ID 去查询这个对象然后赋值到单据对应的属性中,

比如:

//付款方式 ? ?

purInWarehs.setPaymentType(PaymentTypeFactory.getLocalInstance(ctx)
? ? .getPaymentTypeInfo(new ObjectUuidPK("2fa35444-5a23-43fb-99ee-6d4fa5f260da6BCA0AB5")));


? ? ? ? ? 其实可以换成:

PaymentTypeInfo paymentType = ?new ?PaymentTypeInfo ();

paymentType?.setId(new ObjectUuidPK(("2fa35444-5a23-43fb-99ee-6d4fa5f260da6BCA0AB5"));//类似这样的写法

2.有一些单据,比如采购入库单,在调用接口的方法时候,需要设置下以下的Context 里面的一些组织,之前测试的时候没设置这些属性,系统都甚至没有抛出异常,单据提交保存 都没有问题但是数据就是没法进去,设置这些属性以后,异常就出来了

OrgUnitInfo ou =new OrgUnitInfo();
ou.setId(BOSUuid.read(getDefaultCU(ctx)));//组织ID

AdminOrgUnitInfo adminUnit=new AdminOrgUnitInfo();
adminUnit.setId(ou.getId());
ContextUtil.setCurrentAdminUnit(ctx,adminUnit);

SaleOrgUnitInfo saleUnit=new SaleOrgUnitInfo();
saleUnit.setId(ou.getId());
ContextUtil.setCurrentSaleUnit(ctx,saleUnit);

StorageOrgUnitInfo storageUnit=new StorageOrgUnitInfo();
storageUnit.setId(ou.getId());
ContextUtil.setCurrentStorageUnit(ctx,storageUnit);

3. 在对业务单据进行保存后,数据存到了数据库中,但是不会再列表界面显示,这个问题的解决方法就是去找一条正确的数据(能在列表界面显示的数据),然后数据库里面对比这两条数据的字段即可, 主要是一些组织的字段 ,


4. 接口传递过来的单据可以保存后,点击提交提示 无法将NUll 插入到一张表中,

这个问题解决办法:首先先给这个字段赋值,如果确认有值的话,你在保存后提交之前再将这个数据查询出来然后提交。

比如:

//保存 IObjectPK pk = PurInWarehsBillFactory.getLocalInstance(ctx).save(purInWarehs); purInWarehs = PurInWarehsBillFactory.getLocalInstance(ctx) .getPurInWarehsBillInfo(pk); PurInWarehsBillFactory.getLocalInstance(ctx).submit(pk,purInWarehs)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读