Files
ctg-app-cap/cap/etc/batch/BAT_DSK_TIMEOUT_CTL.XML
2021-07-12 09:53:59 +08:00

41 lines
1.8 KiB
XML

<?xml version='1.0' encoding='UTF-8'?>
<Tran>
<Transaction code="BAT_DSK_TIMEOUT" log_switch='1' desc="">
<Attributes>
<Attribute name="nodatabase" value="2"/> <!--数据库长连接-->
</Attributes>
<DynSentence name="QryTimeout"> <!-- 接入批次长时间未处理完成 -->
<Sentence>
select listagg(DSK) WITHIN GROUP(ORDER BY DSK) DSK from
(select '['||DSK_NO||','||DSK_STS||']' DSK from CAPDSKINF where dsk_sts &lt;&gt; '4' and
TO_CHAR(TO_DATE(decode(RCV_DT||RCV_TM,' ',null,RCV_DT||RCV_TM), 'yyyymmddHH24MISS')+'%s'/24/60/60, 'yyyymmddHH24MISS')
between TO_CHAR(sysdate - %s/24/60/60,'yyyymmddHH24MISS') and TO_CHAR(sysdate,'yyyymmddHH24MISS'))
</Sentence>
<Fields>TIME_OUT|TIME_BEFER|</Fields>
</DynSentence>
<FlowCtrl>
<!--查询支付地账户-->
<Exec func="PUB:ReadRecord" error="IGNORE">
<Arg name="SqlCmd" value="QryTimeout"/>
</Exec>
<If condition="~RetCod!=0">
<Set>Rsp_Cd=80</Set>
<Set>Rsp_Msg=系统错误</Set>
<Return/>
</If>
<If condition="ISNULL($DSK)=0">
<Set>EVENT.DSK_NO=$DSK</Set>
<Set>EVT_TYP=EVT_DISK_PROC_TIMEOUT</Set>
<Exec func="PUB:InvokeService" error="IGNORE">
<Arg name="ServiceName" value="PUSH_EVENT" />
<Arg name='Mode' value='NOTIFY'/>
</Exec>
</If>
<Set>Rsp_Cd=00</Set>
<Set>Rsp_Msg=交易成功</Set>
</FlowCtrl>
</Transaction>
</Tran>