GoldenME V10 单据联查回写配置

GoldenME V10 单据联查回写配置


配置回写事例

回写有三种:直接回写,跨单据间接回写,通过自身单据间接回写


直接回写示例:入库通知回写-采购合同直接入库量

//同步回写采购合同直接入库量

#set($upbillinfoMap=$vs.util.newLinkedHashMap());

#set($upbillinfo=$proc.getInfoModel('opt'));

#set($upbillinfo.billtypecolumn='ENTRYINF_DETAIL_BILLTYPE')//业务单据类型(关联上级单据的单据类型)

#set($upbillinfo.billcodecolumn='ENTRYINF_DETAIL_OPTCODE')//业务单据号(关联上级单据的单据号)

#set($upbillinfo.billbatchcolumn='ENTRYINF_DETAIL_OPTBATCH')//业务单据批号(关联上级单据的批号)

#set($upbillinfo.updatename='入库通知回写采购合同直接入库量');// 回写名称。

//数据源表:按回写的单据批号汇总,将回写的值进行合计。查处的值需要别名和目标单据批号和更新的字段对应。

#set($upbillinfo.updatesorcetable="SELECT b.ENTRYINF_DETAIL_OPTBATCH as GOODS_CONTRACTBATCH,SUM(b.GOODS_NUM) AS CONTRACT_DETAIL_DNUM,SUM(b.GOODS_WEIGHT) AS CONTRACT_DETAIL_DWEIGHT,SUM(b.GOODS_INMONEY) AS CONTRACT_DETAIL_DMONEY FROM WAREHOUSE_ENTRYINF_DETAIL b where b.ENTRYINF_DETAIL_BILLTYPE='BT1139'

 and 2=2  GROUP BY b.ENTRYINF_DETAIL_OPTBATCH");//回写数据源表或查询

#set($upbillinfo.updatesorcewherecolumn="b.ENTRYINF_DETAIL_OPTBATCH")//加上别名。用于更新时,在数据源后面直接加上查询条件。如果此字段不为空,可以将updatesorcetable条件中的2=2替换成新的条件

#set($upbillinfo.updategoaltypecode='BT1139');//回写目标单据类型

#set($upbillinfo.updategoaltable='purchase_contract_detail');//回写目标表

#set($upbillinfo.updategoalcolumn='CONTRACT_DETAIL_DNUM,CONTRACT_DETAIL_DWEIGHT,CONTRACT_DETAIL_DMONEY');//需要回写更新的字段数组

#set($upbillinfo.updatetype=0);// 更新类型:0同步,1异步。

#set($upbillinfo.updateoperatortypecode='BT1142');// 操作的单据类型,当操作单据类型与此相同时触发回写。为空表示是本单据触发。

#set($upbillinfo.afterupdatecheck='detail_check,detail_all_check');// 执行数据数据检测。

$upbillinfoMap.put('BT1139', $upbillinfo);//采购合同

跨单据间接回写示例:采购合同-入库通知-入库验收(回写采购合同入库验收量)

#set($optInfo = $proc.getInfoModel('opt'))

//回写采购合同验收量

#set($upbillinfo_cghtys= $vs.util.mapClone($optInfo));

#set($upbillinfo_cghtys.billtypecolumn='')//业务单据类型

#set($upbillinfo_cghtys.billcodecolumn='GOODS_CONTRACT')//业务单据号

#set($upbillinfo_cghtys.billbatchcolumn='GOODS_CONTRACTBATCH')//业务单据批号

#set($upbillinfo_cghtys.updatename='入库验收回写采购合同入库验收量');// 回写名称。

#set($upbillinfo_cghtys.updatesorcetable="SELECT B.GOODS_CONTRACTBATCH AS GOODS_CONTRACTBATCH,SUM(B.ENTRYINF_DETAIL_OKNUM) AS CONTRACT_DETAIL_OKNUM ,SUM(B.ENTRYINF_DETAIL_OKWEIGHT) AS CONTRACT_DETAIL_OKWEIGHT FROM WAREHOUSE_ENTRYINF_DETAIL B where b.ENTRYINF_DETAIL_BILLTYPE in ('BT1139','BT1140','BT1141','BT1180','XT1022') and 2=2 GROUP BY B.GOODS_CONTRACTBATCH")//回写数据源表或查询

#set($upbillinfo_cghtys.updatesorcewherecolumn="b.GOODS_CONTRACTBATCH")//加上别名。用于更新时,在数据源后面直接加上查询条件。如果此字段不为空,可以将updatesorcetable条件中的2=2替换成新的条件

#set($upbillinfo_cghtys.updategoaltypecode='BT1139')//回写目标单据类型

#set($upbillinfo_cghtys.updategoaltable='PURCHASE_CONTRACT_DETAIL')//回写目标表

#set($upbillinfo_cghtys.updategoalcolumn='CONTRACT_DETAIL_OKNUM,CONTRACT_DETAIL_OKWEIGHT')//需要回写更新的字段数组

#set($upbillinfo_cghtys.updatetype=1)// 更新类型:0同步,1异步。

#set($upbillinfo_cghtys.updateoperatortypecode='BT1143')// 操作的单据类型,当操作单据类型与此相同时触发回写。为空表示是本单据触发。

#if($optOne)

    #set($upbillinfo_cghtys.updateoperatortypecode='BT1142')

#end

$upbillinfoMap.put('BT1139-JJYS', $upbillinfo_cghtys);//采购合同

通过自身单据间接回写示例 采购合同-采购发货-入库通知(回写采购合同间接入库量)


//异步直接回写采购合同间接入库量 发货-入库 装运-入库 代理入库-入库

#set($upbillinfo_cghtjj=$proc.getInfoModel('opt'));

#set($upbillinfo_cghtjj.billtypecolumn='');//业务单据类型(关联上级单据的单据类型) 为空表示不是直接的。可以不创建联查数据

#set($upbillinfo_cghtjj.billcodecolumn='GOODS_CONTRACT');//业务单据号(关联上级单据的单据号)

#set($upbillinfo_cghtjj.billbatchcolumn='GOODS_CONTRACTBATCH');//业务单据批号(关联上级单据的批号)

#set($upbillinfo_cghtjj.updatename='入库通知回写采购合同间接入库量');// 回写名称。

//数据源表:按回写的单据批号汇总,将回写的值进行合计。查处的值需要别名和目标单据批号和更新的字段对应。

#set($upbillinfo_cghtjj.updatesorcetable="select b.GOODS_CONTRACTBATCH as GOODS_CONTRACTBATCH,sum(b.GOODS_NUM) as CONTRACT_DETAIL_ENUM,sum(b.GOODS_WEIGHT) as CONTRACT_DETAIL_EWEIGHT from WAREHOUSE_ENTRYINF_DETAIL b  where b.ENTRYINF_DETAIL_BILLTYPE in('BT1140','BT1141','XT1022')and 2=2  GROUP BY b.GOODS_CONTRACTBATCH");//回写数据源表或查询

#set($upbillinfo_cghtjj.updatesorcewherecolumn="b.GOODS_CONTRACTBATCH")//加上别名。用于更新时,在数据源后面直接加上查询条件。如果此字段不为空,可以将updatesorcetable条件中的2=2替换成新的条件

#set($upbillinfo_cghtjj.updategoaltypecode='BT1139');//回写目标单据类型

#set($upbillinfo_cghtjj.updategoaltable='purchase_contract_detail');//回写目标表

#set($upbillinfo_cghtjj.updategoalcolumn='CONTRACT_DETAIL_ENUM,CONTRACT_DETAIL_EWEIGHT');//需要回写更新的字段数组

#set($upbillinfo_cghtjj.updatetype=1);// 更新类型:0同步,1异步。

#set($upbillinfo_cghtjj.updategoalfield='GOODS_CONTRACTBATCH')//需要回写更新的单据查询字段

#set($upbillinfo_cghtjj.updateoperatortypecode='BT1142');// 操作的单据类型,当操作单据类型与此相同时触发回写。为空表示是本单据触发。

$upbillinfoMap.put('BT1139-JJRK', $upbillinfo_cghtjj);//采购合同-间接入库

页面列表

ITEM_HTML