IPFBusiAction 流程平台进行的单据动作处理
动作执行前的工作流处理(弃审或删除)
- 进行动作约束检查
- 执行动作脚本
- 判断返回值 是否直接返回
- 判断动作是否为最后一个动作,执行动作驱动
- 动作执行后的工作流处理,启动审批流
//进行推单操作
IPFBusiAction busiAction=(IPFBusiAction)NCLocator.getInstance().lookup(IPFBusiAction.class);
//保存
ArriveVO[] save_arrs=(ArriveVO[])busiAction.processBatch("SAVEBASE", "23", arriveVOS, null, null,null);
IplatFormEntry 流程平台进行的单据动作处理的入口类.
- 数据加锁和一致性检查
- 动作执行IPFBusiAction
- 该接口是远程public接口,无事务,为了保证锁和事务的一致性,特提供该接口
- 平台默认调用该接口
private ArriveVO approveArrive(ArriveVO arrvo) {
try{
//审批
IplatFormEntry iIplatFormEntry = (IplatFormEntry) NCLocator.getInstance().lookup(
IplatFormEntry.class.getName());
Object obj = iIplatFormEntry.processAction("APPROVE", "23", null, arrvo, null, null);
if(obj!=null && obj instanceof ArriveVO[] && ((ArriveVO[])obj).length>0){
return ((ArriveVO[])obj)[0];
}
}catch(Exception e){
ExceptionUtils.wrappException(e);
}
return arrvo;
}
1、动作脚本对应的表名;
select * from pub_busiclass p
select * from pub_busitrans
select * from pub_billaction where pk_billtypeid = (select pk_billtypeid from bd_billtype where pk_billtypecode = ‘单据类型编号,如4I’)
2、根据单据类型 查询动作
select * from pub_busiclass p WHERE p.pk_billtype=‘4I’;
/VO转换工具类/
CollectionAggVO aggVO = (CollectionAggVO)PfUtilTools.runChangeData(“F1”, “E25”, aggPayableBillVO);
原文链接:https://blog.csdn.net/Cc_Rain0624/article/details/80614342