调用下推服务后,如何拿到目标单数据包?

问题描述
默认的下推操作会将上游数据保存到目标单的数据库表里,请问要怎么控制这个规则,先不存进数据库,在拿到这些数据并处理完毕后才存进数据库呢?
解决方法
下推操作,默认不保存数据。
参考如下语句在下推后获取目标单数据包
Java
PushArgs pushArgs = new PushArgs();
pushArgs.setSourceEntityNumber(this.sourceBill);
pushArgs.setTargetEntityNumber(this.targetBill);
pushArgs.setRuleId(this.ruleId);
pushArgs.setBuildConvReport(true);
// 下推参数,设置所选数据项
List<ListSelectedRow> rows = new ArrayList<>();
for(DynamicObject obj : objs){
ListSelectedRow row = new ListSelectedRow(obj.getPkValue(), true);
rows.add(row);
}
pushArgs.setSelectedRows(rows);
// 执行下推服务
ConvertOperationResult pushResult = ConvertServiceHelper.push(pushArgs);
// 提取下推生成的目标单
MainEntityType targetMainType = EntityMetadataCache.getDataEntityType(this.getTargetBill());
List<DynamicObject> targetBillObjList = pushResult.loadTargetDataObjects(buildRefLoader(), targetMainType, true);
DynamicObject[] targetBillObjs = targetBillObj
调用下推服务后,如何拿到目标单数据包?
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



