Files
2021-01-12 22:04:24 +08:00

131 lines
5.3 KiB
XML

<?xml version='1.0' encoding='UTF-8'?>
<Tran>
<Transaction code="204065" desc="工商银行拨款文件清单" log_switch="1">
<DynSentence name="QRY_TOT">
<Sentence>
SELECT COUNT(*) ALL_CNT ,SUM(a.TO_MERC_STL_AMT) ALL_AMT
FROM CAPSTLREG a,URMTMSTL b
WHERE a.MERC_ID = b.MERC_ID AND a.ORD_TYP='%s'
AND %s
</Sentence>
<Fields>ORD_TYP|SqlStr|</Fields>
</DynSentence>
<DynSentence name="QRY">
<Sentence>
SELECT ROWNUM NUM,c.STL_OPN_LBNK_NM CSTL_OPN_LBNK_NM,c.STL_OAC CSTL_OAC,c.STL_AC_NM CSTL_AC_NM,
b.OPN_BNK_DESC OPN_BNK_DESC,
(SELECT PROV_NM FROM CMMTPCOP WHERE PROV_CD=b.OPN_BNK_PROV) OPN_BNK_PROV,
(SELECT PROV_NM FROM CMMTPCOP WHERE VGOP_PROV =b.OPN_BNK_CITY) OPN_BNK_CITY,
b.STL_OAC STL_OAC,b.BNK_ACNM BNK_ACNM,a.STL_DT,a.TO_MERC_STL_AMT
FROM CAPSTLREG a,URMTMSTL b,CMMTORGN c
WHERE a.MERC_ID = b.MERC_ID AND c.CORP_ORG='%s' AND a.ORD_TYP='%s'
AND %s
</Sentence>
<Fields>CORG_NO|ORD_TYP|SqlStr|</Fields>
</DynSentence>
<FlowCtrl>
<Exec func="PUB:InitGWA" /> <!--交易初始化-->
<Set>AC_DT=$GWA.AC_DT</Set>
<Exec func="PUB:DumpETF"/>
<Set>REC_NUM=1</Set>
<Set>SqlStr=STRCAT("((",$SqlStr)</Set>
<While condition="INTCMP($REC_NUM,2,$REC_SUM)">
<Exec func="PUB:GetValue">
<Arg name="SourName" value="STRCAT(ROOT.REC_,$REC_NUM,.MERC_ID)"/>
<Arg name="DestName" value="MERC_ID"/>
</Exec>
<Exec func="PUB:GetValue">
<Arg name="SourName" value="STRCAT(ROOT.REC_,$REC_NUM,.STL_DT)"/>
<Arg name="DestName" value="STL_DT"/>
</Exec>
<If condition="INTCMP($REC_NUM,3,$REC_SUM)">
<Set>SqlStr=STRCAT($SqlStr,"a.MERC_ID='",$MERC_ID,"' AND ","a.STL_DT='",$STL_DT,"'))")</Set>
</If>
<Else>
<Set>SqlStr=STRCAT($SqlStr,"a.MERC_ID='",$MERC_ID,"' AND ","a.STL_DT='",$STL_DT,"') OR (")</Set>
</Else>
<Set>REC_NUM=ADD($REC_NUM,1)</Set>
</While>
<Set>RPT_KND=RPT_MERC_MONEY_FIL_ICBC</Set>
<Set>raqname=STRCAT($RPT_KND,-,$AC_DT,.bpt)</Set>
<Set>WORKDIR=GETENV(HWORKDIR)</Set>
<Set>RPTNAME=STRCAT($WORKDIR,/rptdata/,$raqname)</Set>
<Set>RPTNAME1=STRCAT($WORKDIR,/rptdata/ICBC/1.txt)</Set>
<Set>RPTNAME2=STRCAT($WORKDIR,/rptdata/ICBC/2.txt)</Set>
<Set>RPTNAME5=STRCAT($WORKDIR,/rptdata/5.txt)</Set>
<Set>RPTNAM=STRCAT($WORKDIR,/rptdata/ICBC/6.txt)</Set>
<Set>RPT_FIL_NM=STRCAT("工商银行拨款文件清单-",FMTDATE($AC_DT,0,5),.bpt)</Set>
<Exec func="PUB:ReadRecord" error="IGNORE">
<Arg name="SqlCmd" value="QRY_TOT"/>
</Exec>
<If condition="~RetCod=2">
<Set>Rsp_Cd=25</Set>
<Set>Rsp_Msg=查找失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod!=0">
<Set>Rsp_Cd=80</Set>
<Set>Rsp_Msg=内部错误</Set>
<Return/>
</ElseIf>
<!--导出文件-->
<Exec func="PUB:ExportFromDB">
<Arg name="FormatName" value="MERCTOQFMT"></Arg>
<Arg name="FileName" value="$RPTNAME5"></Arg>
<Arg name="TableName" value="CAPSTLREG"></Arg>
<Arg name="SqlName" value="QRY"></Arg>
</Exec>
<If condition="~RetCod=-1">
<Set>Rsp_Cd=20499</Set>
<Set>Rsp_Msg=失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod=0">
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
</ElseIf>
<Exec func="PUB:CopyFile">
<Arg name="SrcFil" value="$RPTNAME1"/>
<Arg name="ObjFil" value="$RPTNAM"/>
</Exec>
<Exec func="PUB:WriteFile">
<Arg name="FileName" value="$RPTNAME"/>
<Arg name="OpenMode" value="a"/>
<Arg name="Data" value="$tmp"/>
</Exec>
<Set>HEAD=STRCAT(RMB|,$AC_DT,|1|,$ALL_AMT,|,$ALL_CNT,|,\n)</Set>
<Set>FLG=|ls</Set>
<Exec func="PUB:WriteFile">
<Arg name="FileName" value="$RPTNAM"/>
<Arg name="OpenMode" value="a"/>
<Arg name="Data" value="$HEAD"/>
</Exec>
<Exec func="PUB:SystemAndWait">
<Arg name="cmd" value="cat"/>
<Arg name="file1" value="$RPTNAM"/>
<Arg name="file3" value="$RPTNAME2"/>
<Arg name="file4" value="$RPTNAME5"/>
<Arg name="file5" value=">"/>
<Arg name="file6" value="$RPTNAME"/>
<Arg name="file7" value="$FLG"/>
</Exec>
<Exec func="PUB:SystemAndWait">
<Arg name="cmd" value="echo '*'"/>
<Arg name="file5" value=">>"/>
<Arg name="file5" value="$RPTNAME"/>
<Arg name="file6" value="$FLG"/>
</Exec>
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
</FlowCtrl>
</Transaction>
</Tran>