2、清算子系统-清算框架>软件设计说明书V0.1机密目录1前言51.1目的和范围51.2背景51.3术语和定义51.4参考资料52清算框架设计62.1清算数据准备62.1.1查询未完成清算的TA或产品62.1.2数据采集准备62.1.3查询需采集数据62.1.4数据采集过程62.1.5数据采集结束处理62.1.6数据导入准备过程62.1.7查询需导入数据72.1.8数据导入过程72.1.9数据导入结束处理72.2清算预处理72.2.1查询可清算批次72.2.2查询清算数据状态72.2.3预处理准备72.3下账处理82.3.
3、1查询可导出数据82.3.2数据导出过程82.3.3查询数据导出状态82.3.4查询可下发数据82.3.5数据下发过程8第23页共23页软件设计说明书V0.1机密2.3.6查询数据下发状态83数据结构设计94接口设计95后台类设计105.1清算数据准备105.1.1设计说明105.2清算预处理115.2.1设计说明115.3簿记处理125.3.1设计说明125.4下账处理135.4.1设计说明13第23页共23页软件设计说明书V0.1机密1前言1.1目的和范围
4、本文对OTC清算子系统的清算框架的概要设计和详细设计进行了描述说明,将作为清算框架编码的依据。1.2背景1.3术语和定义1.4参考资料l金证股份《OTC-清算概要设计说明书.docx》l金证股份《KBSS_OTC_SETT_ORACLE.pdm》l金证股份《OTC_清算框架详细设计_OOM.oom》第23页共23页软件设计说明书V0.1机密1清算框架设计1.1清算数据准备1.1.1数据采集准备1.1.1.1处理流程1.检查入参数据的合法性:检查数据字典,登记公司及产品代码是否存在;2.调用
5、COtcSettDataPrepare::FetchProvisionBegin方法;3.输出执行结果给前台。相关SQL:当前清算日是否有清算记录:SELECTCOUNT(*)FROMOTC_SETT_STATWHERESETT_DATE=@SETT_DATE存在状态为‘0’、‘1’取该记录批次号:SELECTDISTINCT(SETT_BAT_NO)FROMOTC_SETT_STATWHERESETT_DATE=@SETT_DATEANDSETT_STATIN('0','1')存在状态不为‘0’、‘1’取该最大批次号
6、+1:SELECTMAX(SETT_BAT_NO)+1FROMOTC_SETT_STATWHERESETT_DATE=@SETT_DATEANDSETT_STATNOTIN('0','1')1.1.2查询需采集数据1.1.2.1处理流程1.调用COtcSettFetchStat::ListFetchData方法;2.输出查询结果给前台。相关SQL:SELECTA.TABLE_CODE,A.TABLE_NAME,A.SRC_SUBSYS,A.FETCH_WAY,A.SQL_COND,A.SQL_CHECK,A.EARLI
7、EST_FETCH_TIME,A.LATEST_FETCH_FLAG,A.DUP_FETCH_FLAG,COALESCE(B.SETT_DATE,0),COALESCE(B.SETT_BAT_NO,0),COALESCE(B.LAST_FETCH_第23页共23页软件设计说明书V0.1机密TIMESTAMP,NULL),COALESCE(B.FETCH_TIMES,0),COALESCE(B.FETCH_REC_CNT,0),COALESCE(B.SRC_REC_CNT,0),COALES
8、CE(B.DEST_REC_CNT,0),COALESCE(B.FETCH_STAT,''),COALESCE(B.CHECK_STAT,''),COALESCE(B.REMARK,''),COALESCE(B.FETCH_OPER,0)FROMOTC_SETT_FETCH_CONFIGA,OTC_SETT_FETCH_STATB