810 lines
38 KiB
XML
810 lines
38 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<Package>
|
|
<Function name="CheckMercAndBankVerify">
|
|
<!-- 根据商户号、渠道标志、业务类型查询capmercdef表中,该商户支持卡类型-->
|
|
<!--DynSentence name="QRY_CAPMERCDEF">
|
|
<Sentence>
|
|
SELECT * FROM CAPMERCDEF WHERE MERC_ID=? AND TXN_CNL=? AND CAP_TYP=?
|
|
</Sentence>
|
|
<Fields>MERC_ID|TXN_CNL|CAP_TYP|</Fields>
|
|
</DynSentence -->
|
|
|
|
<!--查询商户端校验信息名称同时校验是否生效-->
|
|
<DynSentence name="QRY_CAPMERCEL_INFO">
|
|
<Sentence>
|
|
SELECT CAP_MERC_NM,IS_USED FROM CAPMERCREL WHERE MERC_ID=? AND TXN_CNL=? AND CAP_TYP=? AND IS_DEFAULT='Y'
|
|
</Sentence>
|
|
<Fields>MERC_ID|TXN_CNL|CAP_TYP|</Fields>
|
|
</DynSentence>
|
|
|
|
<!--查询商户端校验信息-->
|
|
<DynSentence name="QRY_CAPMERCCHK_INFO">
|
|
<Sentence>
|
|
SELECT IS_USED MERC_IS_USED,CHK_CUS_NM MERC_CHK_CUS_NM,CHK_CRD_NO MERC_CHK_CRD_NO,CHK_ID_TYP MERC_CHK_ID_TYP,CHK_ID_NO MERC_CHK_ID_NO,CHK_MOBLE MERC_CHK_MOBLE,CHK_PURPOSE MERC_CHK_PURPOSE,CHK_BAK_NO MERC_CHK_BAK_NO
|
|
FROM CAPMERCCHK WHERE TXN_CNL=? AND CAP_TYP=? AND CAP_MERC_NM=?
|
|
</Sentence>
|
|
<Fields>TXN_CNL|CAP_TYP|CAP_MERC_NM|</Fields>
|
|
</DynSentence>
|
|
|
|
<!--银行端校验信息查询-->
|
|
<DynSentence name="QRY_CAPBANKCHK_INFO">
|
|
<Sentence>
|
|
SELECT IS_USED BANK_IS_USED,CHK_CUS_NM BANK_CHK_CUS_NM,CHK_CRD_NO BANK_CHK_CRD_NO,CHK_ID_TYP BANK_CHK_ID_TYP,CHK_ID_NO
|
|
BANK_CHK_ID_NO,CHK_MOBLE BANK_CHK_MOBLE,CHK_PURPOSE BANK_CHK_PURPOSE,CHK_BAK_NO BANK_CHK_BAK_NO
|
|
FROM CAPBANKCHK WHERE CORG_NO=? AND CAP_TYP=?
|
|
</Sentence>
|
|
<Fields>CORG_NO|CAP_TYP|</Fields>
|
|
</DynSentence>
|
|
|
|
<Process>
|
|
<Exec func="PUB:DumpETF" />
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="QRY_CAPMERCEL_INFO" />
|
|
</Exec>
|
|
<If condition="~RetCod=-1">
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP99999" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<ElseIf condition="~RetCod=2">
|
|
<!-- @MSG 商户端校验信息不存在-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00028" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<If condition="IS_EQUAL_STRING($IS_USER,N)">
|
|
<!-- @MSG 商户端校验信息未生效-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00029" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="QRY_CAPMERCCHK_INFO" />
|
|
</Exec>
|
|
<If condition="~RetCod=-1">
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP99999" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<ElseIf condition="~RetCod=2">
|
|
<!-- @MSG 商户端校验信息不存在-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00028" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
|
|
<If condition="IS_EQUAL_STRING($MERC_IS_USER,N)">
|
|
<!-- @MSG 商户端校验信息未生效-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00029" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="QRY_CAPBANKCHK_INFO" />
|
|
</Exec>
|
|
<If condition="~RetCod=-1">
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP99999" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<ElseIf condition="~RetCod=2">
|
|
<!-- @MSG 银行端校验信息不存在-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00030" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
|
|
<If condition="IS_EQUAL_STRING($BANK_IS_USER,N)">
|
|
<!-- @MSG 银行端校验信息未生效-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00031" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
|
|
|
|
<!-- @MSG 校验户名判断-->
|
|
<If condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,Y),IS_EQUAL_STRING($BANK_CHK_CUS_NM,Y))">
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="CUS_NAM" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “CUS_NAM”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00032" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($CUS_NAM)">
|
|
<!--@MSG “CUS_NAM”是银行端必验字段,不可空。-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00032" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,Y),IS_EQUAL_STRING($BANK_CHK_CUS_NM,N))">
|
|
<!--@MSG 银行端不支持校验“CUS_NAM”-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00033" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,Y),IS_EQUAL_STRING($BANK_CHK_CUS_NM,O))">
|
|
<!--@MSG 商户送就校验,不送就不验证-->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,N),IS_EQUAL_STRING($BANK_CHK_CUS_NM,Y))">
|
|
<!--@MSG “CUS_NAM”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00032" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,N),IS_EQUAL_STRING($BANK_CHK_CUS_NM,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,N),IS_EQUAL_STRING($BANK_CHK_CUS_NM,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,O),IS_EQUAL_STRING($BANK_CHK_CUS_NM,Y))">
|
|
<!--@MSG “CUS_NAM”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="CUS_NAM" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “CUS_NAM”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00032" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($CUS_NAM)">
|
|
<!--@MSG “CUS_NAM”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00032" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,O),IS_EQUAL_STRING($BANK_CHK_CUS_NM,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CUS_NM,O),IS_EQUAL_STRING($BANK_CHK_CUS_NM,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
|
|
|
|
<!-- @MSG 校验卡号判断-->
|
|
<If condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,Y),IS_EQUAL_STRING($BANK_CHK_CRD_NO,Y))">
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="CRD_NO" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “CRD_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00035" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($CRD_NO)">
|
|
<!--@MSG “CRD_NO”是银行端必验字段,不可空。-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00035" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,Y),IS_EQUAL_STRING($BANK_CHK_CRD_NO,N))">
|
|
<!--@MSG 银行端不支持校验“CRD_NO”-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00036" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,Y),IS_EQUAL_STRING($BANK_CHK_CRD_NO,O))">
|
|
<!--@MSG 商户送就校验,不送就不验证-->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,N),IS_EQUAL_STRING($BANK_CHK_CRD_NO,Y))">
|
|
<!--@MSG “CRD_NO”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00035" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,N),IS_EQUAL_STRING($BANK_CHK_CRD_NO,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,N),IS_EQUAL_STRING($BANK_CHK_CRD_NO,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,O),IS_EQUAL_STRING($BANK_CHK_CRD_NO,Y))">
|
|
<!--@MSG “CRD_NO”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="CRD_NO" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “CRD_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00035" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($CRD_NO)">
|
|
<!--@MSG “CRD_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00035" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,O),IS_EQUAL_STRING($BANK_CHK_CRD_NO,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_CRD_NO,O),IS_EQUAL_STRING($BANK_CHK_CRD_NO,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<!-- @MSG 校验证件类型判断-->
|
|
<If condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,Y),IS_EQUAL_STRING($BANK_CHK_ID_TYP,Y))">
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="ID_TYP" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “ID_TYP”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00037" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($ID_TYP)">
|
|
<!--@MSG “ID_TYP”是银行端必验字段,不可空。-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00037" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,Y),IS_EQUAL_STRING($BANK_CHK_ID_TYP,N))">
|
|
<!--@MSG 银行端不支持校验“ID_TYP”-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00038" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,Y),IS_EQUAL_STRING($BANK_CHK_ID_TYP,O))">
|
|
<!--@MSG 商户送就校验,不送就不验证-->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,N),IS_EQUAL_STRING($BANK_CHK_ID_TYP,Y))">
|
|
<!--@MSG “ID_TYP”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00037" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,N),IS_EQUAL_STRING($BANK_CHK_ID_TYP,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,N),IS_EQUAL_STRING($BANK_CHK_ID_TYP,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,O),IS_EQUAL_STRING($BANK_CHK_ID_TYP,Y))">
|
|
<!--@MSG “ID_TYP”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="ID_TYP" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “ID_TYP”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00037" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($ID_TYP)">
|
|
<!--@MSG “ID_TYP”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00037" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,O),IS_EQUAL_STRING($BANK_CHK_ID_TYP,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_TYP,O),IS_EQUAL_STRING($BANK_CHK_ID_TYP,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
|
|
<!-- @MSG 校验证件号码判断-->
|
|
<If condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,Y),IS_EQUAL_STRING($BANK_CHK_ID_NO,Y))">
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="ID_NO" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “ID_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00039" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($ID_NO)">
|
|
<!--@MSG “ID_NO”是银行端必验字段,不可空。-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00039" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,Y),IS_EQUAL_STRING($BANK_CHK_ID_NO,N))">
|
|
<!--@MSG 银行端不支持校验“ID_NO”-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00040" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,Y),IS_EQUAL_STRING($BANK_CHK_ID_NO,O))">
|
|
<!--@MSG 商户送就校验,不送就不验证-->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,N),IS_EQUAL_STRING($BANK_CHK_ID_NO,Y))">
|
|
<!--@MSG “ID_NO”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00039" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,N),IS_EQUAL_STRING($BANK_CHK_ID_NO,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,N),IS_EQUAL_STRING($BANK_CHK_ID_NO,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,O),IS_EQUAL_STRING($BANK_CHK_ID_NO,Y))">
|
|
<!--@MSG “ID_NO”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="ID_NO" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “ID_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00039" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($ID_NO)">
|
|
<!--@MSG “ID_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00039" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,O),IS_EQUAL_STRING($BANK_CHK_ID_NO,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_ID_NO,O),IS_EQUAL_STRING($BANK_CHK_ID_NO,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
|
|
<!-- @MSG 校验手机号判断-->
|
|
<If condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,Y),IS_EQUAL_STRING($BANK_CHK_MOBLE,Y))">
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="MOBILE" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “MOBILE”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00041" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($MOBILE)">
|
|
<!--@MSG “MOBILE”是银行端必验字段,不可空。-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00041" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,Y),IS_EQUAL_STRING($BANK_CHK_MOBLE,N))">
|
|
<!--@MSG 银行端不支持校验“MOBILE”-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00042" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,Y),IS_EQUAL_STRING($BANK_CHK_MOBLE,O))">
|
|
<!--@MSG 商户送就校验,不送就不验证-->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,N),IS_EQUAL_STRING($BANK_CHK_MOBLE,Y))">
|
|
<!--@MSG “MOBILE”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00041" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,N),IS_EQUAL_STRING($BANK_CHK_MOBLE,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,N),IS_EQUAL_STRING($BANK_CHK_MOBLE,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,O),IS_EQUAL_STRING($BANK_CHK_MOBLE,Y))">
|
|
<!--@MSG “MOBILE”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="MOBILE" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “MOBILE”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00041" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($MOBILE)">
|
|
<!--@MSG “MOBILE”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00041" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,O),IS_EQUAL_STRING($BANK_CHK_MOBLE,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_MOBLE,O),IS_EQUAL_STRING($BANK_CHK_MOBLE,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
|
|
<!-- @MSG 校验开户行行号判断-->
|
|
<If condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,Y),IS_EQUAL_STRING($BANK_CHK_BAK_NO,Y))">
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="LBNK_NO" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “LBNK_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00043" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($LBNK_NO)">
|
|
<!--@MSG “LBNK_NO”是银行端必验字段,不可空。-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00043" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,Y),IS_EQUAL_STRING($BANK_CHK_BAK_NO,N))">
|
|
<!--@MSG 银行端不支持校验“LBNK_NO”-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00044" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,Y),IS_EQUAL_STRING($BANK_CHK_BAK_NO,O))">
|
|
<!--@MSG 商户送就校验,不送就不验证-->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,N),IS_EQUAL_STRING($BANK_CHK_BAK_NO,Y))">
|
|
<!--@MSG “LBNK_NO”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00043" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,N),IS_EQUAL_STRING($BANK_CHK_BAK_NO,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,N),IS_EQUAL_STRING($BANK_CHK_BAK_NO,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,O),IS_EQUAL_STRING($BANK_CHK_BAK_NO,Y))">
|
|
<!--@MSG “LBNK_NO”是银行端必验字段,不可空 -->
|
|
<Exec func="PUB:IsExistNode">
|
|
<Arg name="FieldName" value="LBNK_NO" />
|
|
</Exec>
|
|
<If condition="~RetCod=0"><!-- 节点不存在 -->
|
|
<!--@MSG “LBNK_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00043" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<If condition="ISNULL($LBNK_NO)">
|
|
<!--@MSG “LBNK_NO”是银行端必验字段,不可空-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="CAP00043" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,O),IS_EQUAL_STRING($BANK_CHK_MOBLE,N))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
<ElseIf condition="AND(IS_EQUAL_STRING($MERC_CHK_BAK_NO,O),IS_EQUAL_STRING($BANK_CHK_MOBLE,O))">
|
|
<!--@MSG 不用校验 -->
|
|
</ElseIf>
|
|
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="RRC00000" />
|
|
</Exec>
|
|
|
|
</Process>
|
|
</Function>
|
|
|
|
<!-- 批量接口校验 -->
|
|
<Function name="BatCheckMercFunc">
|
|
<Input>DSK_NAM|CORG_NO|ORD_DT|CORG_DSK_NO|</Input>
|
|
<Output>BAT_CNT|BAT_SUM|</Output>
|
|
<DynSentence name="QryMercChkInf"><!--查询需要接口校验的记录-->
|
|
<Sentence>
|
|
SELECT JRN_NO
|
|
FROM CAPTXNJNL
|
|
WHERE DSK_NAM=? AND ORD_DT=? AND CORG_NO=? AND CORG_DSK_NO = ? AND DSK_NAM_STS='0' AND TXN_STS='U'
|
|
</Sentence>
|
|
<Fields>DSK_NAM|ORD_DT|CORG_NO|CORG_DSK_NO|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="QryMercChkListInf"><!--查询需要接口校验的明细信息-->
|
|
<Sentence>
|
|
SELECT *
|
|
FROM CAPTXNJNL
|
|
WHERE JRN_NO=?
|
|
</Sentence>
|
|
<Fields>JRN_NO|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="UpdChkMercResult"> <!--更新接口校验结果-->
|
|
<Sentence>
|
|
UPDATE CAPTXNJNL
|
|
SET TTXN_ST=?,TXN_STS=?,
|
|
RSP_CD=? , RSP_MSG=? , DSK_NAM_STS = '4'
|
|
WHERE ORD_DT=? AND JRN_NO=?
|
|
</Sentence>
|
|
<Fields>TTXN_ST|TXN_STS|RSP_CD|RSP_MSG|ORD_DT|JRN_NO|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="CntMercChkPassInf"><!--统计校验通过记录-->
|
|
<Sentence>
|
|
SELECT COUNT(*) AS BAT_CNT , SUM(TXN_AMT) AS BAT_SUM
|
|
FROM CAPTXNJNL
|
|
WHERE DSK_NAM=? AND ORD_DT=? AND CORG_NO=? AND CORG_DSK_NO = ? AND DSK_NAM_STS='0' AND TXN_STS='U'
|
|
</Sentence>
|
|
<Fields>DSK_NAM|ORD_DT|CORG_NO|CORG_DSK_NO|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="Qry_BatLstInf"> <!--查询批次信息-->
|
|
<Sentence>
|
|
SELECT DSK_NAM ODSK_NAM,ORD_DT OORD_DT,CORG_MERC_ID OCORG_MERC_ID,CORG_NO OCORG_NO,CORG_DSK_NO OCORG_DSK_NO,
|
|
AC_DT OAC_DT,SND_DT OSND_DT,SND_TM OSND_TM,BAT_STS OBAT_STS,BAT_ORN_AMT OBAT_ORN_AMT,BAT_ORN_CNT OBAT_ORN_CNT,
|
|
BAT_TYP OBAT_TYP,CORG_FIL_NAM OCORG_FIL_NAM,SND_DT,SND_TM,MERC_ID OMERC_ID,TCORG_DSK_NO,'批量代收付' RMK
|
|
FROM CAPBATINF
|
|
WHERE DSK_NAM=? AND ORD_DT=? AND CORG_NO=? AND CORG_DSK_NO = ?
|
|
</Sentence>
|
|
<Fields>DSK_NAM|ORD_DT|CORG_NO|CORG_DSK_NO|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="Tot_Fai"> <!--统计失败笔数-->
|
|
<Sentence>
|
|
SELECT COUNT(*) BAT_FAL_CNT,NVL(SUM(TXN_AMT),0) BAT_FAL_AMT FROM CAPTXNJNL WHERE ORD_DT = ? AND CORG_NO = ? AND CORG_DSK_NO = ? AND TTXN_ST = 'F'
|
|
</Sentence>
|
|
<Fields>OORD_DT|CORG_NO|OCORG_DSK_NO</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="Tot_Suc"> <!--统计成功笔数-->
|
|
<Sentence>
|
|
SELECT COUNT(*) BAT_SUC_CNT,NVL(SUM(TXN_AMT),0) BAT_SUC_AMT FROM CAPTXNJNL WHERE ORD_DT = ? AND CORG_NO = ? AND CORG_DSK_NO = ? AND TTXN_ST = 'S'
|
|
</Sentence>
|
|
<Fields>OORD_DT|CORG_NO|OCORG_DSK_NO</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="Upd_DskInf">
|
|
<Sentence>
|
|
UPDATE CAPDSKINF SET
|
|
SUC_CNT=TO_NUMBER(NVL(TRIM(?),0)),SUC_AMT=TO_NUMBER(NVL(TRIM(?),0)),
|
|
FAL_CNT=TO_NUMBER(NVL(TRIM(?),0)),FAL_AMT=TO_NUMBER(NVL(TRIM(?),0))
|
|
WHERE DSK_NAM=?
|
|
</Sentence>
|
|
<Fields>SUC_CNT|SUC_AMT|FAL_CNT|FAL_AMT|ODSK_NAM</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="DskTot_Fai"> <!--统计大批次总失败笔数-->
|
|
<Sentence>
|
|
SELECT COUNT(*) FAL_CNT,NVL(SUM(TXN_AMT),0) FAL_AMT FROM CAPTXNJNL WHERE ORD_DT = ? AND DSK_NAM = ? AND TTXN_ST = 'F'
|
|
</Sentence>
|
|
<Fields>OORD_DT|ODSK_NAM|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="DskTot_Suc"> <!--统计大批次总成功笔数-->
|
|
<Sentence>
|
|
SELECT COUNT(*) SUC_CNT,NVL(SUM(TXN_AMT),0) SUC_AMT FROM CAPTXNJNL WHERE ORD_DT = ? AND DSK_NAM = ? AND TTXN_ST = 'S'
|
|
</Sentence>
|
|
<Fields>OORD_DT|ODSK_NAM|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="Upd_CUPS_DSK_NO">
|
|
<Sentence>
|
|
UPDATE CAPBATINF
|
|
SET BAT_STS=? ,END_TM=? ,END_DT=?,BAT_SUC_AMT='%s',BAT_SUC_CNT=?,BAT_FAL_AMT=?,
|
|
BAT_FAL_CNT=?,RSP_CD = ?,RSP_MSG = ?
|
|
WHERE ORD_DT=? AND CORG_NO=? AND CORG_DSK_NO=? AND AC_DT=? AND BAT_STS=?
|
|
</Sentence>
|
|
<Fields>BAT_STS|END_TM|END_DT|BAT_SUC_AMT|BAT_SUC_CNT|BAT_FAL_AMT|BAT_FAL_CNT|RSP_CD|RSP_MSG|OORD_DT|OCORG_NO|OCORG_DSK_NO|OAC_DT|OBAT_STS|</Fields>
|
|
</DynSentence>
|
|
<DynSentence name="Upd_BatErrMsg"> <!--更新批次错误信息-->
|
|
<Sentence>
|
|
UPDATE CAPBATINF SET RSP_CD=? ,RSP_MSG=?
|
|
WHERE ORD_DT=? AND CORG_NO=? AND CORG_DSK_NO=? AND AC_DT=?
|
|
</Sentence>
|
|
<Fields>RSP_CD|RSP_MSG|OORD_DT|OCORG_NO|OCORG_DSK_NO|OAC_DT</Fields>
|
|
</DynSentence>
|
|
<Process>
|
|
<!-- 取出RTR_IN节点参数 -->
|
|
<Set>CORG_NO=$CORG_NO</Set><!-- 合作机构号 -->
|
|
<Set>ORD_DT=$ORD_DT</Set>
|
|
<Set>CORG_DSK_NO=$CORG_DSK_NO</Set>
|
|
|
|
<!-- 接口校验 -->
|
|
<Exec func="PUB:OpenCursor" error="IGNORE">
|
|
<Arg name="SqlCmd" value="QryMercChkInf"/>
|
|
</Exec>
|
|
<If condition="~RetCod != 0">
|
|
<Set>Rsp_Cd=80</Set>
|
|
<Set>Rsp_Msg=打开游标失败</Set>
|
|
<Return/>
|
|
</If>
|
|
<While>
|
|
<Exec func="PUB:FetchCursor" error="IGNORE"/>
|
|
<If condition="~RetCod=2">
|
|
<Exec func="PUB:CloseCursor"/>
|
|
<Break/>
|
|
</If>
|
|
<ElseIf condition="~RetCod!=0">
|
|
<Set>Rsp_Cd=80</Set>
|
|
<Set>Rsp_Msg=循环游标失败</Set>
|
|
<Return/>
|
|
</ElseIf>
|
|
<!-- 接口校验 -->
|
|
<Set>JRN_NO=$JRN_NO</Set>
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="QryMercChkListInf"/>
|
|
</Exec>
|
|
|
|
<Call package="CHKMERC" function="CheckMercAndBankVerify">
|
|
</Call>
|
|
<If condition="IS_SUCC(@O.MSG_CD)=0">
|
|
<Set>RSP_CD=80</Set>
|
|
<Set>RSP_MSG=@O.MSG_INF</Set>
|
|
<Set>TXN_STS=F</Set>
|
|
<Set>TTXN_ST=F</Set>
|
|
<!--更新接口校验结果-->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="UpdChkMercResult"/>
|
|
</Exec>
|
|
<If condition="~RetCod != 0">
|
|
<Set>Rsp_Cd=80</Set>
|
|
<Set>Rsp_Msg=更新流水表失败</Set>
|
|
<Return/>
|
|
</If>
|
|
<Return />
|
|
</If>
|
|
</While>
|
|
<Exec func="PUB:CloseCursor" error="IGNORE"/>
|
|
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="CntMercChkPassInf" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<Set>Rsp_Cd=80</Set>
|
|
<Set>Rsp_Msg=查询数据库出错</Set>
|
|
<Return/>
|
|
</If>
|
|
|
|
<If condition="INTCMP($BAT_CNT,3,0)"><!--3等于-->
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="Qry_BatLstInf"/>
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<Set>Rsp_Cd=80</Set>
|
|
<Set>Rsp_Msg=查询数据库出错</Set>
|
|
<Return/>
|
|
</If>
|
|
<!--清理数据-->
|
|
<Delete>RSP_CD</Delete>
|
|
<Delete>RSP_MSG</Delete>
|
|
|
|
<Set>TACC_DT=GETDATE()</Set> <!--交易日期-->
|
|
<Set>TACC_TM=GETDATETIME(HHMISS)</Set> <!--交易时间-->
|
|
|
|
<Set>END_TM=GETDATETIME()</Set>
|
|
<Set>END_DT=GETDATE()</Set>
|
|
<Set>BAT_SUC_AMT=0</Set>
|
|
<Set>BAT_SUC_CNT=0</Set>
|
|
<Set>BAT_FAL_CNT=0</Set>
|
|
<Set>BAT_FAL_AMT=0</Set>
|
|
<Set>SUC_AMT=0</Set>
|
|
<Set>SUC_CNT=0</Set>
|
|
<Set>FAL_CNT=0</Set>
|
|
<Set>FAL_AMT=0</Set>
|
|
<Set>RSP_CD=STRCAT( , )</Set>
|
|
<Set>RSP_MSG=STRCAT( , )</Set>
|
|
|
|
<!--统计成功,失败笔数-->
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="Tot_Suc"/>
|
|
</Exec>
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="Tot_Fai"/>
|
|
</Exec>
|
|
|
|
<Set>BAT_SUC_AMT=$BAT_SUC_AMT</Set>
|
|
<Set>BAT_SUC_CNT=$BAT_SUC_CNT</Set>
|
|
<Set>BAT_FAL_AMT=$BAT_FAL_AMT</Set>
|
|
<Set>BAT_FAL_CNT=$BAT_FAL_CNT</Set>
|
|
|
|
<!--统计大批次成功,失败笔数-->
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="DskTot_Suc"/>
|
|
</Exec>
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="DskTot_Fai"/>
|
|
</Exec>
|
|
|
|
<Set>SUC_AMT=$SUC_AMT</Set>
|
|
<Set>SUC_CNT=$SUC_CNT</Set>
|
|
<Set>FAL_AMT=$FAL_AMT</Set>
|
|
<Set>FAL_CNT=$FAL_CNT</Set>
|
|
<!--更新文件信息-->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="Upd_DskInf"/>
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<Set>BAT_STS=5</Set>
|
|
<Set>Rsp_Cd=80</Set>
|
|
<Set>Rsp_Msg=累加更新接入批量信息表成功失败总笔数及总金额失败</Set>
|
|
<Break/>
|
|
</If>
|
|
<Set>Rsp_Cd=00</Set>
|
|
<Set>Rsp_Msg=交易成功</Set>
|
|
<Set>BAT_STS=4</Set> <!-- 接收处理完成 -->
|
|
<!--更新批次信息-->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="Upd_CUPS_DSK_NO"/>
|
|
</Exec>
|
|
<If condition="~RetCod != 0">
|
|
<Set>Rsp_Cd=80</Set>
|
|
<Set>Rsp_Msg=更新该批次为发送处理状态失败</Set>
|
|
<Break/>
|
|
<!--Exec func="PUB:RollbackWork"/-->
|
|
</If>
|
|
<Set>TXN_MOD_FLG=$OBAT_TYP</Set>
|
|
<If condition="IS_EQUAL_STRING($OBAT_TYP,01)">
|
|
<Set>CAP_TYP=CAP_RCV_BAT</Set>
|
|
</If>
|
|
<ElseIf condition="IS_EQUAL_STRING($OBAT_TYP,02)">
|
|
<Set>CAP_TYP=CAP_PAY_BAT</Set>
|
|
</ElseIf>
|
|
<Set>TX_AMT=$BAT_SUC_AMT</Set>
|
|
<Set>TX_JRN_NO=$OCORG_DSK_NO</Set>
|
|
<Set>CORG_NO=$OCORG_NO</Set>
|
|
<Set>BUS_CNL=BIS</Set>
|
|
<Call package="MERCACC" function="MERC_ACC_ALTER_CCRP10003">
|
|
<Input>OMERC_ID|TXN_MOD_FLG|OAC_DT|CAP_TYP|TX_AMT|TX_JRN_NO|CORG_NO|BUS_CNL|RMK|SYS_ID|TXN_CNL|</Input>
|
|
<Output>MSG_CD|</Output>
|
|
</Call>
|
|
|
|
<!--更新错误信息-->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="Upd_BatErrMsg"/>
|
|
</Exec>
|
|
|
|
<!--提交事务-->
|
|
<Exec func="PUB:CommitWork"/>
|
|
|
|
</If>
|
|
|
|
<Set>BAT_CNT=$BAT_CNT</Set>
|
|
<Set>BAT_SUM=$BAT_SUM</Set>
|
|
</Process>
|
|
</Function>
|
|
|
|
</Package>
|