Files
ctg-app-cap/cap/etc/batch/BAT_GETBILLSP_TIMER_CTL.XML
2022-06-29 14:06:43 +08:00

74 lines
2.8 KiB
XML

<?xml version='1.0' encoding='UTF-8'?>
<Tran>
<Transaction code="BAT_GETBILLSP_TIMER" log_switch='1' timeout="3600" desc="人工申请明细对账单定时发起">
<Attributes>
<Attribute name="nodatabase" value="2"/> <!--数据库长连接-->
</Attributes>
<DynSentence name="QRY_CAPPRINTTASK_LST">
<Sentence>
SELECT * FROM (
SELECT TASK_ID,PRT_ID FROM CAPPRINTTASK WHERE PRT_STS='1' AND PRT_DAT &gt;=? AND (SND_TM &lt;=?))
ORDER BY PRT_DAT,TASK_ID
</Sentence>
<Fields>CHECK_DATE|C_SND_TIME|</Fields>
</DynSentence>
<FlowCtrl>
<Quote name="Init_CAP01"/> <!--交易初始化-->
<If condition="ISNULL($CHECK_DATE)">
<Set>CHECK_DATE=CALCDATE(GETDATE(),-,d,3)</Set>
</If>
<If condition="ISNULL($SND_TIME_INTERVAL)">
<Set>SND_TIME_INTERVAL=2</Set>
</If>
<Set>C_SND_TIME=CALCTIME(GETDATETIME(MMDDHHMISS),-,m,$SND_TIME_INTERVAL)</Set>
<Exec func="PUB:OpenCursor" error="IGNORE">
<Arg name="SqlCmd" value="QRY_CAPPRINTTASK_LST"/>
<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=GET_CMBBILL_SPECIAL</Set>
<Exec func="PUB:CallThirdService" error="IGNORE">
<Arg name="HTxnCd" value="$TTXN_CD" />
<Arg name="ObjSvr" value="OFRTCAP3" />
<Arg name="In" value="TASK_ID|PRT_ID|" />
</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>
</Tran>