183 lines
8.2 KiB
XML
183 lines
8.2 KiB
XML
<?xml version="1.0" encoding='UTF-8'?>
|
|
<Package>
|
|
<!--交通对账:对账文件入库-->
|
|
<Function name="CUP_IMPORT">
|
|
<Output>MSG_CD|</Output>
|
|
|
|
<!-- 更新对账总控表(文件入库) -->
|
|
<DynSentence name="UPD_PWMTCKCT_IMPORT">
|
|
<Sentence>
|
|
UPDATE PWMTCKCT
|
|
SET CHK_FIL_STS = ?
|
|
WHERE
|
|
CHK_BAT_NO=?
|
|
</Sentence>
|
|
<Fields>CHK_FIL_STS|CHK_BAT_NO|</Fields>
|
|
</DynSentence>
|
|
|
|
<!--查询商户基本信息表 -->
|
|
<DynSentence name="QRY_URMTMINF_1">
|
|
<Sentence>
|
|
SELECT MERC_ID
|
|
FROM URMTMINF
|
|
WHERE MERC_STS ='0' AND MERC_TYP = '12'
|
|
</Sentence>
|
|
<Fields></Fields>
|
|
</DynSentence>
|
|
|
|
<!--查询对账明细表-->
|
|
<DynSentence name="QRY_PWMTCKEBPP_1">
|
|
<Sentence>
|
|
SELECT COUNT(*) TotCnt
|
|
FROM PWMTCKEBPP
|
|
WHERE CHK_BAT_NO = ?
|
|
</Sentence>
|
|
<Fields>CHK_BAT_NO|</Fields>
|
|
</DynSentence>
|
|
<Process>
|
|
<!--文件轮询入库-->
|
|
<Exec func="PUB:OpenCursor"> <!-- 开启游标 -->
|
|
<Arg name="SqlCmd" value="QRY_URMTMINF_1" />
|
|
<Arg name="CursorName" value="CURSOR_3" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0"><!-- @msg 商户基本信息表,开启游标失败 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM22150" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<While>
|
|
<Exec func="PUB:FetchCursor"> <!-- 读取下一条记录 -->
|
|
<Arg name="CursorName" value="CURSOR_3" />
|
|
<Arg name="ObjectName" value="URM3_REC" />
|
|
</Exec>
|
|
<If condition="~RetCod=2"> <!-- 查无数据 -->
|
|
<Break />
|
|
</If>
|
|
<ElseIf condition="~RetCod!=0"><!-- @msg 获取游标失败 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM25806" />
|
|
</Exec>
|
|
<Return />
|
|
</ElseIf>
|
|
|
|
<Set>FIL_NM1=STRCAT(CUPS_,$URM3_REC.MERC_ID,_,$CHK_FIL_DT)</Set>
|
|
<Set>FIL_NM2=STRCAT(MC,$URM3_REC.MERC_ID,SUBSTR($CHK_FIL_DT,3,6),_,GNETE)</Set>
|
|
|
|
<Set>~FILE_PATH1=STRCAT(GETENV(HWORKDIR),/dat/cap/recv/EBPP/,$FIL_NM1)</Set> <!-- 对账文件所存放的目录 -->
|
|
<!-- 对账文件入库 -->
|
|
<Exec func="PUB:ImportToDB" error="IGNORE">
|
|
<Arg name="FormatName" value="CUPCHKFMT1" /> <!-- 文件格式 -->
|
|
<Arg name="TableName" value="PWMTCKEBPP" /> <!-- 目标数据库 -->
|
|
<Arg name="FileName" value="~FILE_PATH1" /> <!-- 对账文件所在目录 -->
|
|
</Exec>
|
|
|
|
<Set>~FILE_PATH2=STRCAT(GETENV(HWORKDIR),/dat/cap/recv/EBPP/,$FIL_NM2)</Set> <!-- 对账文件所存放的目录 -->
|
|
<!-- 对账文件入库 -->
|
|
<Exec func="PUB:ImportToDB" error="IGNORE">
|
|
<Arg name="FormatName" value="CUPCHKFMT2" /> <!-- 文件格式 -->
|
|
<Arg name="TableName" value="PWMTCKEBPP" /> <!-- 目标数据库 -->
|
|
<Arg name="FileName" value="~FILE_PATH2" /> <!-- 对账文件所在目录 -->
|
|
</Exec>
|
|
|
|
</While>
|
|
<Exec func="PUB:CloseCursor"> <!-- 关闭游标 -->
|
|
<Arg name="CursorName" value="CURSOR_3" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<!-- @msg 关闭游标失败 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM25804" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
|
|
|
|
<!--查询代付交易记录-->
|
|
<Set>CHK_BAT_NO=$PWMTCKCT.CHK_BAT_NO</Set>
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="QRY_PWMTCKEBPP_1" />
|
|
<Arg name="GrpNam" value="EBP_REC11" />
|
|
</Exec>
|
|
<!-- 对账文件没有交易记录,即当天无任何交易,此时直接修改CHK_FIL_STS为对账s+-成功状态 -->
|
|
<If condition="IS_EQUAL_STRING($EBP_REC11.TotCnt,0)">
|
|
<Set>CHK_FIL_STS=4</Set>
|
|
|
|
<!-- 更新对账总控表(获取文件) -->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="UPD_PWMTCKCT_IMPORT" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<!-- @msg 更新对账状态失败(银联)-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM22482" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<Else>
|
|
<!-- 对账控制表所对应的字段 -->
|
|
<Set>CHK_FIL_STS=2</Set> <!-- 更新对账状态为2:文件已入库 -->
|
|
|
|
<!-- 更新对账总控表(获取文件) -->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="UPD_PWMTCKCT_IMPORT" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<!-- @msg 更新对账状态失败(银联)-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM22482" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<Exec func="PUB:CommitWork" />
|
|
</Else>
|
|
|
|
<!--查询代付撤销交易记录-->
|
|
<Set>CHK_BAT_NO=$PWMTCKCT1.CHK_BAT_NO</Set>
|
|
<Exec func="PUB:ReadRecord" error="IGNORE">
|
|
<Arg name="SqlCmd" value="QRY_PWMTCKEBPP_1" />
|
|
<Arg name="GrpNam" value="EBP_REC13" />
|
|
</Exec>
|
|
<!-- 对账文件没有交易记录,即当天无任何交易,此时直接修改CHK_FIL_STS为对账s+-成功状态 -->
|
|
<If condition="IS_EQUAL_STRING($EBP_REC13.TotCnt,0)">
|
|
<Set>CHK_FIL_STS=4</Set>
|
|
|
|
<!-- 更新对账总控表(获取文件) -->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="UPD_PWMTCKCT_IMPORT" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<!-- @msg 更新对账状态失败(银联)-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM22482" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</If>
|
|
<Else>
|
|
<!-- 对账控制表所对应的字段 -->
|
|
<Set>CHK_FIL_STS=2</Set> <!-- 更新对账状态为2:文件已入库 -->
|
|
|
|
<!-- 更新对账总控表(获取文件) -->
|
|
<Exec func="PUB:ExecSql" error="IGNORE">
|
|
<Arg name="SqlCmd" value="UPD_PWMTCKCT_IMPORT" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<!-- @msg 更新对账状态失败(银联)-->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM22482" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<Exec func="PUB:CommitWork" />
|
|
</Else>
|
|
|
|
|
|
<!-- 交易成功 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM00000" />
|
|
</Exec>
|
|
</Process>
|
|
</Function>
|
|
</Package> |