目标单据保存反写到源单,实现单据体增行原创
491次浏览
编辑于2023年10月17日 15:20:35
实现功能:
源单下推目标单据后,目标单据保存时反写相关信息到源单的单据体,通过增行填充数据
思路方案:
目标单新增隐藏字段记录源单id
在目标单据的保存操作上注册操作插件,通过源单id查询源单信息,实现增行操作
具体实现:
public class billSaveOp extends AbstractOperationServicePlugIn { @Override public void onPreparePropertys(PreparePropertysEventArgs e) { super.onPreparePropertys(e); List<String> fieldKeys = e.getFieldKeys(); fieldKeys.add("billno"); fieldKeys.add("bizdate"); fieldKeys.add("sourcebillid");//记录源单id } @Override public void beginOperationTransaction(BeginOperationTransactionArgs e) { super.beginOperationTransaction(e); DynamicObject[] datas = e.getDataEntities(); for(DynamicObject obj:datas){ //获取源单信息 Long sourcebill = obj.getLong("sourcebillid"); if(!sourcebill.equals("0")){ DynamicObject load = BusinessDataServiceHelper.loadSingle(sourcebill,"testsourcebill"); DynamicObjectCollection entryentity = load.getDynamicObjectCollection("entryentity"); //新增行,记录目标单据信息 DynamicObject newRow = new DynamicObject(entryentity.getDynamicObjectType()); newRow.set("bill",obj.getString("billno")); newRow.set("bizdate",obj.getDate("bizdate")); entryentity.add(newRow); SaveServiceHelper.save(new DynamicObject[]{load}); } } } }
赞 0
0人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读
您的鼓励与嘉奖将成为创作者们前进的动力,如果觉得本文还不错,可以给予作者创作打赏哦!
请选择打赏金币数 *
10金币20金币30金币40金币50金币60金币
可用金币: 0