Files
2021-01-12 23:30:48 +08:00

267 lines
7.6 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
订阅发布配置
日期 编号 修改人 修改原因
2006.04.23 liang_wj 创建
-->
<!--
980001 IP地址非法
980002 端口非法
980003 目录非法
980004 EMAIL地址非法
980005 记录不存在
980006 查找对照表失败
980007 加锁失败
980008 参数检查错
980009 FTP文件传输失败
-->
<Application name="TRA" code="991">
<BusDefDeclare>
<Busdef name="MAX_TMS" value="3"></Busdef><!--订阅发布模块发起最大次数 超过该次数停止发送 最大次数为99-->
<Busdef name="ITV" value="16"></Busdef><!--时间间隔-->
<Busdef name="MAX_FLX" value="60"></Busdef><!--事务订阅发布共用最大流量-->
</BusDefDeclare>
<TableDeclare>
<Table name="pubmsginf" value="pubmsginf" />
<Table name="pubmsgjnl" value="pubmsgjnl" />
<Table name="pubpuber" value="pubpuber" />
<Table name="pubsndjnl" value="pubsndjnl" />
<Table name="pubsubinf" value="pubsubinf" />
<Table name="pubsuber" value="pubsuber" />
<!--Table name="pubtra2sev" value="pubtra2sev"/-->
</TableDeclare>
<ConfigDeclare>
<Config name="TRACSW" value="etc/TRA_CSW.XML" />
</ConfigDeclare>
<Define>
<Macro name="ErrorProc"><!--错误处理-->
<If condition="~RetCod=0">
<Set>MSG_TYP=N</Set>
<Set>RSP_CD=000000</Set>
</If>
<Else>
<Set>MSG_TYP=E</Set>
<Return />
</Else>
</Macro>
<Macro name="ChkIP">
<Set>IP_LEN=STRLEN($IP)</Set>
<If condition="INTCMP(IP_LEN,6,15)">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980001</Set>
<Return />
</If>
<If condition="INTCMP(STRGETCOUNT($IP,.),4,3)">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980001</Set>
<Return />
</If>
<Set>TMP_IP=DELCHAR($IP,.)</Set>
<If condition="INTCMP(ISNUMBER($TMP_IP),4,0)">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980001</Set>
<Return />
</If>
<Set>IP1=GETWORDDELIMITER($IP,.,1)</Set>
<Set>IP2=GETWORDDELIMITER($IP,.,2)</Set>
<Set>IP3=GETWORDDELIMITER($IP,.,3)</Set>
<Set>IP1_LEN=STRLEN(IP1)</Set>
<Set>IP2_LEN=STRLEN(IP2)</Set>
<Set>IP3_LEN=STRLEN(IP3)</Set>
<If condition="OR(INTCMP(IP1_LEN,6,3),INTCMP(IP1_LEN,1,1))">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980001</Set>
<Return />
</If>
<If condition="OR(INTCMP(IP2_LEN,6,3),INTCMP(IP2_LEN,1,1))">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980001</Set>
<Return />
</If>
<If condition="OR(INTCMP(IP3_LEN,6,3),INTCMP(IP3_LEN,1,1))">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980001</Set>
<Return />
</If>
<Set>IP4LEN=SUB(SUB(SUB(IP_LEN,IP1_LEN),IP2_LEN),IP3_LEN)</Set>
<If condition="OR(INTCMP(IP4LEN,6,3),INTCMP(IP4LEN,1,1))">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980001</Set>
<Return />
</If>
</Macro>
<Macro name="ChkPORT">
<If condition="INTCMP(ISNUMBER($PORT),4,0)">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980002</Set>
<Return />
</If>
</Macro>
<Macro name="ChkEMAIL">
<If
condition="INTCMP(GETCHARPOS($EMAIL,STRLEN($EMAIL),a),3,-1)">
<Set>MSG_TYP=E</Set>
<Set>RSP_CD=980004</Set>
<Return />
</If>
</Macro>
</Define>
<!--订阅者信息登记-->
<!--
必需输入域:Name|Type|Addr|RCV_TYP|
选择输入域:Para|
正常输出域:MSG_TYP|RSP_CD|
错误信息域:MSG_TYP|RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/RegisterSubscriber.XML"/>
<!--订阅者信息查询-->
<!--
必需输入域:Name|
选择输入域:
正常输出域:NAME|TYPE|ADDR|RCV_TYP|PARA|MSG_TYP|RSP_CD|
错误信息域:MST_TYP|RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/QuerySubscriber.XML"/>
<!--订阅者信息删除-->
<!--
必需输入域:Name|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
错误信息域:MSG_TYP|RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/DelSubscriber.XML"/>
<!--主题表登记-->
<!--
必需输入域:NAME|CNT_TYP|CNT_TYP|CLASS|
选择输入域:|
正常输出域:MSG_TYP|RSP_CD|
错误信息域:MSG_TYP|RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/RegisterMessage.XML"/>
<!--主题表信息查询-->
<!--
必需输入域:Name|
选择输入域:
正常输出域:NAME|CNT_TYP|CNT_TYP|CLASS|
错误信息域:MST_TYP|RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/QueryMessage.XML"/>
<!--主题表记录删除-->
<!--
必需输入域:Name|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
错误信息域:MSG_TYP|RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/DelMessage.XML"/>
<!--订阅-->
<!--
必需输入域:Message|subscriber|rule|key|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/Subscribe.XML"/>
<!--发布接入-->
<!--
消息接入时,就该判断出消息所属消息定义
一般根据接入方式,接收地址(IP+端口)可判断出所属消息定义
不同的消息会使用不同的接入方式,接收地址?
-->
<Include file="app/base/etc/OFRTTRA1/FtpGet.XML"/>
<!--接收发布-->
<!--
必需输入域:Message|Publisher|Head|Body|
选择输入域:file|
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<!--输入参数:publisher msg-->
<Include file="app/base/etc/OFRTTRA1/Publish.XML"/>
<!--轮询发送-->
<!--
必需输入域:
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/send.XML"/>
<!--ftp put 接出服务-->
<!--
必需输入域:addr|file|para|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/ftp.XML"/>
<!--email接出服务-->
<!--
必需输入域:MSG_NO|message|addr|body|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/email.XML"/>
<!--报文接出服务-->
<!--
必需输入域:head|body|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<!--
输入:ETF业务数据
输出:MsgTyp
功能:报文组包 通讯接出
-->
<Include file="app/base/etc/OFRTTRA1/msg.XML"/>
<!--
必需输入域:head|body|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/tcp.XML"/>
<!--响应处理-->
<!--
必需输入域:Receiver|MSG_NO|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/PubsubReply.XML"/>
<!--发送成功响应处理-->
<!--
必需输入域:Receiver|MSG_NO|
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/SuccReply.XML"/>
<!--统计-->
<!--
必需输入域:
选择输入域:
正常输出域:MSG_TYP|RSP_CD|
出错输出域:RSP_CD|
-->
<Include file="app/base/etc/OFRTTRA1/statis.XML"/>
</Application>