新增流水重新获取交易
This commit is contained in:
@@ -0,0 +1,611 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<Tran>
|
||||
<Transaction code="BAT_REQRYTXNJNL_TIMER" log_switch='1' timeout="3600" desc="获取交易明细定时发起">
|
||||
<Attributes>
|
||||
<Attribute name="nodatabase" value="2"/> <!--数据库长连接-->
|
||||
</Attributes>
|
||||
|
||||
<DynSentence name="QRY_CAPACCOUNTINF_INF"> <!--查询付款方账户-->
|
||||
<Sentence>
|
||||
SELECT BR_NO BBK_NBR,ACCT_NO ACC_NBR,ACCT_TYPE,ACCT_NAME ACC_NAM,BANK_CODE FROM CAPRECEIPTACCT
|
||||
WHERE BANK_CODE=? AND ENABLED='Y' AND (ACCT_NO=? or '%s'='NO')
|
||||
</Sentence>
|
||||
<Fields>BANK_CODE|CHK_ACCT_NO|CHK_ACCT_NO|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<FlowCtrl>
|
||||
|
||||
<Quote name="Init_CAP01"/> <!--交易初始化-->
|
||||
|
||||
<Set>BANK_CODE=$BANK_CODE</Set>
|
||||
<Set>CHK_ACCT_NO=$CHK_ACCT_NO</Set>
|
||||
<Set>TRS_DAT=$TRS_DAT</Set>
|
||||
|
||||
<If condition="ISNULL($CHK_ACCT_NO)">
|
||||
<Set>CHK_ACCT_NO=NO</Set>
|
||||
</If>
|
||||
|
||||
<Exec func="PUB:OpenCursor" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="QRY_CAPACCOUNTINF_INF"/>
|
||||
<Arg name="CursorName" value="CURSOR_1"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=数据库错误</Set>
|
||||
<Return/>
|
||||
</If>
|
||||
<While>
|
||||
<Exec func="PUB:FetchCursor" error="IGNORE">
|
||||
<Arg name="CursorName" value="CURSOR_1"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=2">
|
||||
<Exec func="PUB:CloseCursor" error="IGNORE"> <!-- 关闭游标 -->
|
||||
<Arg name="CursorName" value="CURSOR_1"/>
|
||||
</Exec>
|
||||
<Break/>
|
||||
</If>
|
||||
<ElseIf condition="~RetCod!=0">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=循环游标失败</Set>
|
||||
<Return/>
|
||||
</ElseIf>
|
||||
<Set>TTXN_CD=STRCAT(QRY_,$BANK_CODE,RETXNJNL)</Set>
|
||||
|
||||
<Exec func="PUB:CallThirdService" error="IGNORE">
|
||||
<Arg name="HTxnCd" value="$TTXN_CD" />
|
||||
<Arg name="ObjSvr" value="OFRTCAP3" />
|
||||
<Arg name="In" value="BBK_NBR|ACC_NBR|ACCT_TYPE|ACC_NAM|TRS_DAT|" />
|
||||
</Exec>
|
||||
<If condition="~RetCod!=0">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=发送批次失败</Set>
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
</While>
|
||||
<Exec func="PUB:CloseCursor" error="IGNORE"> <!-- 关闭游标 -->
|
||||
<Arg name="CursorName" value="CURSOR_1"/>
|
||||
</Exec>
|
||||
<Exec func="PUB:CommitWork"/>
|
||||
|
||||
<Set>Rsp_Cd=00</Set>
|
||||
<Set>Rsp_Msg=交易成功</Set>
|
||||
</FlowCtrl>
|
||||
</Transaction>
|
||||
|
||||
|
||||
<!-- 交易明细查询 -->
|
||||
<Transaction code="QRY_CMBRETXNJNL" log_switch='1' timeout="3600" desc="招行交易明细查询">
|
||||
<Attributes>
|
||||
<Attribute name="nodatabase" value="2"/> <!--数据库长连接-->
|
||||
</Attributes>
|
||||
|
||||
<DynSentence name="QRY_CAPCMBJNLTOT">
|
||||
<Sentence>
|
||||
SELECT 'Y' YN FROM CAPCMBJNLTOT WHERE ACC_NBR=? AND TRS_DAT=?
|
||||
</Sentence>
|
||||
<Fields>ACC_NBR|TRS_DAT|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<DynSentence name="UPD_CAPCMBJNLTOT">
|
||||
<Sentence>
|
||||
UPDATE CAPCMBJNLTOT SET TOT_CNT=? WHERE ACC_NBR=? AND TRS_DAT=?
|
||||
</Sentence>
|
||||
<Fields>TOT_CNT|ACC_NBR|TRS_DAT|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<DynSentence name="DEL_CAPCMBHIJNLTMP">
|
||||
<Sentence>
|
||||
DELETE FROM CAPCMBHIJNLTMP WHERE ACC_NBR=? AND TRS_DAT=?
|
||||
</Sentence>
|
||||
<Fields>ACC_NBR|TRS_DAT|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
|
||||
<DynSentence name="INS_CAPCMBHIJNL_RE">
|
||||
<Sentence>
|
||||
INSERT INTO CAPCMBHIJNL
|
||||
SELECT * FROM CAPCMBHIJNLTMP A
|
||||
WHERE A.ACC_NBR=? AND A.TRS_DAT=?
|
||||
AND NOT EXISTS(SELECT 'YN' FROM CAPCMBHIJNL B WHERE B.ACC_NBR=A.ACC_NBR AND B.TRS_DAT=A.TRS_DAT AND B.REF_NBR=A.REF_NBR AND B.ACC_NBR=? AND B.TRS_DAT=?)
|
||||
</Sentence>
|
||||
<Fields>ACC_NBR|TRS_DAT|ACC_NBR|TRS_DAT|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<DynSentence name="UPD_CAPCMBHIJNL_DSKNO"> <!--更新流水批次信息 -->
|
||||
<Sentence>
|
||||
UPDATE CAPCMBHIJNL A
|
||||
SET
|
||||
DSK_NAM
|
||||
=
|
||||
NVL((SELECT DSK_NAM
|
||||
FROM CAPBATINF B
|
||||
WHERE B.ORD_DT=A.TRS_DAT AND B.CORG_DSK_NO=A.YUR_REF
|
||||
),' '),
|
||||
L_POSTSCRIPT
|
||||
=
|
||||
NVL((SELECT C.POSTSCRIPT
|
||||
FROM CAPBATINF B,CAPDSKINF C
|
||||
WHERE B.ORD_DT=A.TRS_DAT AND B.CORG_DSK_NO=A.YUR_REF AND B.DSK_NAM=C.DSK_NAM
|
||||
),' ')
|
||||
WHERE ACC_NBR=? AND TRS_DAT=? AND A.YUR_REF!=' '
|
||||
</Sentence>
|
||||
<Fields>ACC_NBR|TRS_DAT|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<DynSentence name="UPD_CAPCMBHIJNL_RFDSKNO"> <!--更新7日内隔日退款流水批次信息 -->
|
||||
<Sentence>
|
||||
UPDATE CAPCMBHIJNL A
|
||||
SET
|
||||
DSK_NAM
|
||||
=
|
||||
NVL((SELECT DSK_NAM
|
||||
FROM CAPBATINF B
|
||||
WHERE B.CORG_DSK_NO=A.YUR_REF
|
||||
),' ')
|
||||
WHERE ACC_NBR=? AND TRS_DAT BETWEEN ? AND ? AND A.YUR_REF!=' ' AND TRS_COD='AGRD' AND DSK_NAM=' '
|
||||
</Sentence>
|
||||
<Fields>ACC_NBR|RF_TRS_DAT|TRS_DAT|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<DynSentence name="QRY_CAPCMBHIJNL_TOTCNT">
|
||||
<Sentence>
|
||||
SELECT COUNT(1) tot_cnt FROM CAPCMBHIJNLTMP
|
||||
WHERE ACC_NBR=? AND TRS_DAT=?
|
||||
</Sentence>
|
||||
<Fields>ACC_NBR|TRS_DAT|</Fields>
|
||||
</DynSentence>
|
||||
<FlowCtrl>
|
||||
<Delete>TRSP_CD</Delete>
|
||||
<Delete>TRSP_MSG</Delete>
|
||||
<Delete>rep_num</Delete>
|
||||
<Delete>ntagdrfdz1_NUM</Delete>
|
||||
<!--读取参数配置 -->
|
||||
<!--读取参数配置 -->
|
||||
<Quote name="Batch_Cfg_CMB"/>
|
||||
|
||||
<Set>userid=$PARA.USERID</Set>
|
||||
<Set>bbknbr=$bbk_nbr</Set>
|
||||
<Set>accnbr=$acc_nbr</Set>
|
||||
<Set>trsdat=$trs_dat</Set>
|
||||
<Set>TAC_TYP=$ACCT_TYPE</Set>
|
||||
<Set>CHK_DAT=GETDATE()</Set>
|
||||
<If condition="ISNULL($trsdat)">
|
||||
<Set>trsdat=CALCDATE($CHK_DAT,-,d,1)</Set>
|
||||
<Set>trs_dat=$trsdat</Set>
|
||||
</If>
|
||||
<ElseIf condition="CHECKDATE($trsdat)!=0">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=查询日期不合法</Set>
|
||||
<Return/>
|
||||
</ElseIf>
|
||||
<ElseIf condition="INTCMP($trsdat,5,$CHK_DAT)">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=查询日期大于当前日期</Set>
|
||||
<Return/>
|
||||
</ElseIf>
|
||||
|
||||
<Exec func="PUB:ExecSql" error="IGNORE"> <!--删除临时表数据-->
|
||||
<Arg name="SqlCmd" value="DEL_CAPCMBHIJNLTMP"/>
|
||||
</Exec>
|
||||
|
||||
<Set>NUM=0</Set>
|
||||
<Set>cotflg=Y</Set>
|
||||
<Set>trsseq=0</Set>
|
||||
<Set>dbt_nbr=0</Set>
|
||||
<Set>dbt_amt=0</Set>
|
||||
<Set>crt_nbr=0</Set>
|
||||
<Set>crt_amt=0</Set>
|
||||
|
||||
<While condition="IS_EQUAL_STRING($cotflg,Y)">
|
||||
|
||||
<Delete>REC_NUM</Delete>
|
||||
<Delete>RESULTCODE</Delete>
|
||||
<Delete>dbtnbr</Delete>
|
||||
<Delete>dbtamt</Delete>
|
||||
<Delete>crtamt</Delete>
|
||||
<Exec func="PUB:DeleteGroup" error="IGNORE">
|
||||
<Arg name="GroupName" value="NTQACTRSZ2"/>
|
||||
</Exec>
|
||||
|
||||
<Set>cotflg=N</Set>
|
||||
<Set>NUM=ADD($NUM,1)</Set>
|
||||
<Set>CHK_NUM=ADDCHAR($NUM,6,0,1)</Set>
|
||||
<Set>reqid=STRCAT(GETDATETIME(),$CHK_NUM)</Set>
|
||||
<Set>TM_SMP=GETDATETIME()</Set>
|
||||
<Set>TX_COD=DCTRSINF</Set>
|
||||
|
||||
<!--调用查询接口-->
|
||||
<Exec func="PUB:CallThirdComm" error="IGNORE">
|
||||
<Arg name="HTxnCd" value="DCTRSINF"/>
|
||||
<Arg name="ObjSvr" value="SCMBPAY2"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod !=0">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=查询失败</Set>
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
<Set>RESULTCODE=$RESULTCODE</Set>
|
||||
<If condition="ISNULL($RESULTCODE)">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=$RESULTMSG</Set>
|
||||
<Return/>
|
||||
</If>
|
||||
<ElseIf condition="IS_NOEQUAL_STRING($RESULTCODE,SUC0000)">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=$RESULTMSG</Set>
|
||||
<Return/>
|
||||
</ElseIf>
|
||||
|
||||
|
||||
<If condition="AND(IS_EQUAL_STRING($COTFLG,N),IS_EQUAL_STRING($trsseq,0))"> <!-- 当天无数据 无需插入明细表 -->
|
||||
<Set>tot_cnt=0</Set>
|
||||
<Break/>
|
||||
</If>
|
||||
|
||||
|
||||
<Set>cotflg=$cotflg</Set>
|
||||
<Set>tot_cnt=$trsseq</Set>
|
||||
<Set>trsseq=ADD($trsseq,1)</Set>
|
||||
<Set>dbt_nbr=ADD($dbt_nbr,$dbtnbr)</Set>
|
||||
<Set>dbt_amt=FADD($dbt_amt,$dbtamt,2)</Set>
|
||||
<Set>crt_nbr=ADD($crt_nbr,$crtnbr)</Set>
|
||||
<Set>crt_amt=FADD($crt_amt,$crtamt,2)</Set>
|
||||
|
||||
<Exec func="PUB:InsertRecord" error="IGNORE"><!--登记招行临时表-->
|
||||
<Arg name="TblNam" value="CAPCMBHIJNLTMP"/>
|
||||
<Arg name="GrpNam" value="NTQACTRSZ2"/>
|
||||
<Arg name="FldLst" value="acc_nbr|trs_dat|ACC_NAM|TM_SMP|"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod!=0">
|
||||
<Exec func="PUB:RollbackWork"/>
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
</While>
|
||||
|
||||
<If condition="IS_NOEQUAL_STRING($tot_cnt,0)">
|
||||
<Exec func="PUB:ReadRecord" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="QRY_CAPCMBHIJNL_TOTCNT"/>
|
||||
</Exec>
|
||||
<If condition='~RetCod!=0'>
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=数据库错误</Set>
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
<Exec func="PUB:ExecSql" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="INS_CAPCMBHIJNL_RE"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=登记明细信息表失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
<!--根据小批号关联流水更新大批号-->
|
||||
<Exec func="PUB:ExecSql" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="UPD_CAPCMBHIJNL_DSKNO"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=更新代发交易明细发放批次信息失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
<Set>RF_TRS_DAT=CALCDATE($TRS_DAT,-,d,7)</Set>
|
||||
<!--根据小批号关联流水更新隔日退款交易大批号-->
|
||||
<Exec func="PUB:ExecSql" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="UPD_CAPCMBHIJNL_RFDSKNO"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=更新代发交易明细发放批次信息失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
</If>
|
||||
|
||||
<Set>CRE_TM=GETDATETIME()</Set>
|
||||
|
||||
<!--查询该账号当天是否已经获取到明细-->
|
||||
<Exec func="PUB:ReadRecord" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="QRY_CAPCMBJNLTOT"/>
|
||||
</Exec>
|
||||
<If condition='~RetCod=2'>
|
||||
|
||||
<Exec func="PUB:ReadRecord" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="QRY_CAPCMBHIJNL_INF"/>
|
||||
</Exec>
|
||||
<If condition='~RetCod=0'>
|
||||
<!--登记明细汇总表-->
|
||||
<Exec func="PUB:InsertRecord" error="IGNORE">
|
||||
<Arg name="TblNam" value="CAPCMBJNLTOT" />
|
||||
</Exec>
|
||||
<If condition="~RetCod!=0">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=登记汇总信息表失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
</If>
|
||||
</If>
|
||||
<ElseIf condition='~RetCod=0'>
|
||||
<Exec func="PUB:ExecSql" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="UPD_CAPCMBJNLTOT"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=更新汇总信息失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
</ElseIf>
|
||||
<Else>
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=数据库查询错误</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</Else>
|
||||
|
||||
<Exec func="PUB:CommitWork"/>
|
||||
<Exec func="PUB:ExecSql" error="IGNORE"> <!--删除临时表数据-->
|
||||
<Arg name="SqlCmd" value="DEL_CAPCMBHIJNLTMP"/>
|
||||
</Exec>
|
||||
<Exec func="PUB:CommitWork" error="IGNORE"/>
|
||||
<!-- 交易成功 -->
|
||||
<Set>RSP_CD=00</Set>
|
||||
<Set>RSP_MSG=交易成功</Set>
|
||||
</FlowCtrl>
|
||||
</Transaction>
|
||||
|
||||
|
||||
|
||||
<!-- 交易明细查询 -->
|
||||
<Transaction code="QRY_ICBCRETXNJNL" log_switch='1' timeout="3000" desc="工行交易明细查询">
|
||||
<Attributes>
|
||||
<Attribute name="nodatabase" value="2"/> <!--数据库长连接-->
|
||||
</Attributes>
|
||||
|
||||
<DynSentence name="QRY_CAPICBCJNLTOT">
|
||||
<Sentence>
|
||||
SELECT 'Y' YN FROM CAPICBCJNLTOT WHERE ACCOUNT_NO=? AND TRS_DATE=?
|
||||
</Sentence>
|
||||
<Fields>ACCOUNT_NO|TRS_DATE|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<DynSentence name="UPD_CAPICBCJNLTOT">
|
||||
<Sentence>
|
||||
UPDATE CAPICBCJNLTOT SET TOT_CNT=? WHERE ACCOUNT_NO=? AND TRS_DATE=?
|
||||
</Sentence>
|
||||
<Fields>TOT_CNT|ACCOUNT_NO|TRS_DATE|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
<DynSentence name="DEL_CAPICBCHIJNLTMP">
|
||||
<Sentence>
|
||||
DELETE FROM CAPICBCHIJNLTMP WHERE ACCOUNT_NO=? AND TRS_DATE=?
|
||||
</Sentence>
|
||||
<Fields>ACCOUNT_NO|TRS_DATE|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
|
||||
<DynSentence name="INS_CAPICBCHIJNL_RE">
|
||||
<Sentence>
|
||||
INSERT INTO CAPICBCHIJNL
|
||||
SELECT * FROM CAPICBCHIJNLTMP A
|
||||
WHERE A.ACCOUNT_NO=? AND A.TRS_DATE=?
|
||||
AND NOT EXISTS(SELECT 'YN' FROM CAPICBCHIJNL B WHERE B.ACCOUNT_NO=A.ACCOUNT_NO AND B.TRS_DATE=A.TRS_DATE AND B.ONLY_SEQUENCE=A.ONLY_SEQUENCE AND B.ACCOUNT_NO=? AND B.TRS_DATE=?)
|
||||
</Sentence>
|
||||
<Fields>ACCOUNT_NO|TRS_DATE|ACCOUNT_NO|TRS_DATE|</Fields>
|
||||
</DynSentence>
|
||||
|
||||
|
||||
<DynSentence name="UPD_CAPICBCHIJNL_DSKNO"> <!--更新流水批次信息 -->
|
||||
<Sentence>
|
||||
UPDATE CAPICBCHIJNL A
|
||||
SET
|
||||
DSK_NAM
|
||||
=
|
||||
NVL((SELECT C.DSK_NAM
|
||||
FROM CAPDSKINF C
|
||||
WHERE C.ORD_DT=A.TRS_DATE AND SUBSTR(A.POST_SCRIPT,1,9)=C.DSK_NAM
|
||||
),' '),
|
||||
L_POSTSCRIPT
|
||||
=
|
||||
NVL((SELECT C.POSTSCRIPT
|
||||
FROM CAPDSKINF C
|
||||
WHERE C.ORD_DT=A.TRS_DATE AND SUBSTR(A.POST_SCRIPT,1,9)=C.DSK_NAM
|
||||
),' ')
|
||||
WHERE A.ACCOUNT_NO=? AND A.TRS_DATE=? AND A.POST_SCRIPT!=' '
|
||||
</Sentence>
|
||||
<Fields>ACCOUNT_NO|TRS_DATE|</Fields>
|
||||
</DynSentence>
|
||||
<FlowCtrl>
|
||||
<Delete>TRSP_CD</Delete>
|
||||
<Delete>TRSP_MSG</Delete>
|
||||
<Delete>rep_num</Delete>
|
||||
<Delete>next_tag</Delete>
|
||||
<!--读取参数配置 -->
|
||||
<Set>TXN_DT=GETDATE()</Set>
|
||||
<Set>TXN_TM=GETDATETIME(HHMISS)</Set>
|
||||
|
||||
<!--读取参数配置 -->
|
||||
<Quote name="Batch_Cfg_ICBC" />
|
||||
<Set>@MSG.className=com.icbc.api.request.MybankEnterpriseTradeQhisdRequestV1</Set>
|
||||
<Set>@MSG.uri=mybank/enterprise/trade/qhisd/V1</Set>
|
||||
|
||||
<!--新接口第三方数据拼接 -->
|
||||
<Set>TAC_TYP=$ACCT_TYPE</Set>
|
||||
<Set>account_no=$ACC_NBR</Set> <!--查询账户 -->
|
||||
<Set>trs_date=$trs_dat</Set>
|
||||
<Set>CHK_DAT=GETDATE()</Set>
|
||||
<If condition="ISNULL($trs_date)">
|
||||
<Set>trs_date=CALCDATE($CHK_DAT,-,d,1)</Set>
|
||||
</If>
|
||||
<ElseIf condition="CHECKDATE($trs_date)!=0">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=查询日期不合法</Set>
|
||||
<Return/>
|
||||
</ElseIf>
|
||||
<ElseIf condition="INTCMP($trs_date,5,$CHK_DAT)">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=查询日期大于当前日期</Set>
|
||||
<Return/>
|
||||
</ElseIf>
|
||||
|
||||
|
||||
|
||||
<Exec func="PUB:ExecSql" error="IGNORE"> <!--删除临时表数据-->
|
||||
<Arg name="SqlCmd" value="DEL_CAPICBCHIJNLTMP"/>
|
||||
</Exec>
|
||||
<Set>NUM=0</Set>
|
||||
<Set>cotflg=Y</Set>
|
||||
<Set>next_tag=$next_tag</Set>
|
||||
|
||||
|
||||
|
||||
<While condition="IS_EQUAL_STRING($cotflg,Y)">
|
||||
|
||||
<Delete>REC_NUM</Delete>
|
||||
<Exec func="PUB:DeleteGroup" error="IGNORE">
|
||||
<Arg name="GroupName" value="RD"/>
|
||||
</Exec>
|
||||
|
||||
<Set>total_num=0</Set>
|
||||
<Set>cotflg=N</Set>
|
||||
<Set>NUM=ADD($NUM,1)</Set>
|
||||
<Set>CHK_NUM=ADDCHAR($NUM,6,0,1)</Set>
|
||||
<Set>tran_date=$TXN_DT</Set>
|
||||
<Set>trans_code=QHISD</Set>
|
||||
<Set>tran_time=STRCAT(GETDATETIME(),000)</Set>
|
||||
<Set>f_seqno=STRCAT(JNL,GETDATETIME(),$CHK_NUM)</Set>
|
||||
<Set>cis=$GRP_CIS</Set>
|
||||
<Set>language=zh_CN</Set>
|
||||
<Set>bank_code=102</Set>
|
||||
|
||||
<Set>begin_date=$trs_date</Set> <!--起始时间 -->
|
||||
<Set>end_date=$trs_date</Set> <!--结束时间 -->
|
||||
|
||||
|
||||
<Exec func="PUB:CallThirdComm" error="IGNORE">
|
||||
<Arg name="HTxnCd" value="$trans_code"/> <!-- 交易发往银行 -->
|
||||
<Arg name="ObjSvr" value="SCAICBC2"/><!-- 服务名 -->
|
||||
</Exec>
|
||||
<Switch expression="~RetCod">
|
||||
<Case value="0"> <!--查询成功-->
|
||||
<Set>Rsp_Cd=000000</Set>
|
||||
<Break/>
|
||||
</Case>
|
||||
<Default>
|
||||
<!--第三方失败-->
|
||||
<Set>RSP_CD=80</Set>
|
||||
<Set>Rsp_Msg=$TRsp_Msg</Set>
|
||||
<Return/>
|
||||
</Default>
|
||||
</Switch>
|
||||
|
||||
<Set>tot_cnt=$total_num</Set>
|
||||
<If condition="AND(IS_EQUAL_STRING($COTFLG,N),IS_EQUAL_STRING($tot_cnt,0))"> <!-- 当天无数据 无需插入明细表 -->
|
||||
<Set>tot_cnt=0</Set>
|
||||
<Break/>
|
||||
</If>
|
||||
|
||||
|
||||
<Set>next_tag=$next_tag</Set>
|
||||
<If condition="NOT(ISNULL($next_tag))"> <!-- 如果 翻页标志部位空则继续查询-->
|
||||
<Set>cotflg=Y</Set>
|
||||
</If>
|
||||
|
||||
<Exec func="PUB:InsertRecord" error="IGNORE"><!--登记招行临时表-->
|
||||
<Arg name="TblNam" value="CAPICBCHIJNLTMP"/>
|
||||
<Arg name="GrpNam" value="RD"/>
|
||||
<Arg name="FldLst" value="account_no|trs_date|ACC_NAM|TM_SMP|"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod!=0">
|
||||
<Exec func="PUB:RollbackWork"/>
|
||||
<Return/>
|
||||
</If>
|
||||
<Exec func="PUB:CommitWork"/>
|
||||
</While>
|
||||
|
||||
<If condition="IS_NOEQUAL_STRING($total_num,0)">
|
||||
<Exec func="PUB:ExecSql" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="INS_CAPICBCHIJNL_RE"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=登记明细信息表失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
<!--根据小批号关联流水更新大批号-->
|
||||
<Exec func="PUB:ExecSql" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="UPD_CAPICBCHIJNL_DSKNO"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=更新代发交易明细发放批次信息失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
</If>
|
||||
|
||||
|
||||
<!--查询该账号当天是否已经获取到明细-->
|
||||
<Exec func="PUB:ReadRecord" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="QRY_CAPICBCJNLTOT"/>
|
||||
</Exec>
|
||||
<If condition='~RetCod=2'>
|
||||
<!--登记明细汇总表-->
|
||||
<Exec func="PUB:InsertRecord" error="IGNORE">
|
||||
<Arg name="TblNam" value="CAPICBCJNLTOT" />
|
||||
</Exec>
|
||||
<If condition="~RetCod!=0">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=登记汇总信息表失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
|
||||
</If>
|
||||
<ElseIf condition='~RetCod=0'>
|
||||
<Exec func="PUB:ExecSql" error="IGNORE">
|
||||
<Arg name="SqlCmd" value="UPD_CAPICBCJNLTOT"/>
|
||||
</Exec>
|
||||
<If condition="~RetCod=-1">
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=更新汇总信息失败</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</If>
|
||||
</ElseIf>
|
||||
<Else>
|
||||
<Set>Rsp_Cd=80</Set>
|
||||
<Set>Rsp_Msg=数据库查询错误</Set>
|
||||
<Exec func="PUB:RollbackWork" />
|
||||
<Return/>
|
||||
</Else>
|
||||
|
||||
|
||||
|
||||
<Exec func="PUB:CommitWork"/>
|
||||
|
||||
<Exec func="PUB:ExecSql" error="IGNORE"> <!--删除临时表数据-->
|
||||
<Arg name="SqlCmd" value="DEL_CAPICBCHIJNLTMP"/>
|
||||
</Exec>
|
||||
<Exec func="PUB:CommitWork"/>
|
||||
<!-- 交易成功 -->
|
||||
<Set>RSP_CD=00</Set>
|
||||
<Set>RSP_MSG=交易成功</Set>
|
||||
</FlowCtrl>
|
||||
</Transaction>
|
||||
|
||||
|
||||
|
||||
</Tran>
|
||||
@@ -2,7 +2,7 @@
|
||||
<Tran>
|
||||
|
||||
<!-- 交易明细查询 -->
|
||||
<Transaction code="QRY_ICBCTXNJNL" log_switch='1' timeout="300" desc="工行交易明细查询">
|
||||
<Transaction code="QRY_ICBCTXNJNL" log_switch='1' timeout="3000" desc="工行交易明细查询">
|
||||
<Attributes>
|
||||
<Attribute name="nodatabase" value="2"/> <!--数据库长连接-->
|
||||
</Attributes>
|
||||
@@ -251,6 +251,11 @@
|
||||
|
||||
<Exec func="PUB:CommitWork"/>
|
||||
|
||||
<Exec func="PUB:ExecSql" error="IGNORE"> <!--删除临时表数据-->
|
||||
<Arg name="SqlCmd" value="DEL_CAPICBCHIJNLTMP"/>
|
||||
</Exec>
|
||||
<Exec func="PUB:CommitWork"/>
|
||||
|
||||
<!-- 交易成功 -->
|
||||
<Set>RSP_CD=00</Set>
|
||||
<Set>RSP_MSG=交易成功</Set>
|
||||
@@ -258,7 +263,7 @@
|
||||
</Transaction>
|
||||
|
||||
<!-- 交易明细查询 -->
|
||||
<Transaction code="QRY_ICBCCURTXNJNL" log_switch='1' timeout="300" desc="工行交易明细实时查询">
|
||||
<Transaction code="QRY_ICBCCURTXNJNL" log_switch='1' timeout="3000" desc="工行交易明细实时查询">
|
||||
<Attributes>
|
||||
<Attribute name="nodatabase" value="2"/> <!--数据库长连接-->
|
||||
</Attributes>
|
||||
|
||||
Reference in New Issue
Block a user