◆閆明明 王亞星 馬玉潔
商業(yè)銀行核心聯(lián)機(jī)交易開(kāi)發(fā)技術(shù)的應(yīng)用分析
◆閆明明 王亞星 馬玉潔
(山東省農(nóng)村信用社聯(lián)合社 山東 250001)
商業(yè)銀行在上世紀(jì)80年代末已經(jīng)使用IBM公司的核心系統(tǒng)CBOD,現(xiàn)如今全國(guó)多數(shù)農(nóng)村商業(yè)銀行的核心系統(tǒng)也在沿用CBOD。其中農(nóng)村商業(yè)銀行的大部分交易依賴(lài)的是核心聯(lián)機(jī)交易的開(kāi)發(fā)。如何幫助商業(yè)銀行隨時(shí)代需求的變化使得系統(tǒng)運(yùn)行效率大大提高,這就需要商業(yè)銀行金融科技人員對(duì)核心聯(lián)機(jī)交易開(kāi)發(fā)技術(shù)不斷探索和研究,構(gòu)建更創(chuàng)新、更完整、更靈活的核心聯(lián)機(jī)交易開(kāi)發(fā)技術(shù)。而且在保證滿(mǎn)足商業(yè)銀行業(yè)務(wù)的發(fā)展、管理及內(nèi)控需要,在承接現(xiàn)有業(yè)務(wù)功能的基礎(chǔ)上,對(duì)部分功能進(jìn)行優(yōu)化,這也需要對(duì)聯(lián)機(jī)交易技術(shù)科學(xué)合理地應(yīng)用和研究分析。
商業(yè)銀行;CBOD;聯(lián)機(jī)交易開(kāi)發(fā)技術(shù)
隨著金融科技的發(fā)展,客戶(hù)群體對(duì)新興銀行服務(wù)的需求的增加,對(duì)于現(xiàn)代商業(yè)銀行來(lái)說(shuō),構(gòu)建更卓越的核心系統(tǒng),提升客戶(hù)辦理業(yè)務(wù)的體驗(yàn)度,降低系統(tǒng)維護(hù)的難度和工作量是至關(guān)重要的。
農(nóng)村商業(yè)銀行的CBOD核心系統(tǒng)的聯(lián)機(jī)模塊主要分為五類(lèi):交易處理的主體模塊(TX),賬務(wù)處理模塊(KB),涉及數(shù)據(jù)處理和計(jì)算的不可包含賬務(wù)處理的共用函數(shù)模塊(CF),記賬銷(xiāo)記憑證等的通用業(yè)務(wù)處理模塊(AP SERVER),以及進(jìn)行輸入流的重組、交易前處理、交易成功后處理、交易失敗后處理的主體程序之外的出口子程序模塊(EXIT ROUTING)。聯(lián)機(jī)程序的編碼結(jié)構(gòu)一般包括主段名、交易初始化設(shè)定、輸入檢查、數(shù)據(jù)庫(kù)讀取、數(shù)據(jù)檢查、數(shù)據(jù)處理、輸出準(zhǔn)備、賬務(wù)處理、交易結(jié)束處理。
核心應(yīng)用聯(lián)機(jī)程序根據(jù)系統(tǒng)架構(gòu)和模塊設(shè)計(jì)定位可分為三大類(lèi),第一類(lèi)為聯(lián)機(jī)交易類(lèi),第一類(lèi)為核心子程序類(lèi),第三類(lèi)為聯(lián)機(jī)預(yù)約報(bào)表類(lèi)程序。聯(lián)機(jī)交易從業(yè)務(wù)角度可分為賬務(wù)性交易,維護(hù)類(lèi)交易,查詢(xún)類(lèi)交易,聯(lián)機(jī)報(bào)表請(qǐng)求交易,從應(yīng)用程序模式可分為一般聯(lián)機(jī)交易類(lèi),二段式聯(lián)機(jī)交易類(lèi),維護(hù)類(lèi)聯(lián)機(jī)交易和多頁(yè)式查詢(xún)交易(如圖1)。
圖1 聯(lián)機(jī)交易分類(lèi)
核心子程序可分為業(yè)務(wù)模塊KB(Knowledge Block)和公用函數(shù)CF(ComonFunction),KB一般為某種特定的業(yè)務(wù)功能,如銀行卡扣款,存款,活期扣款,存款,貸款發(fā)放,貸款還款等。因此KB是可以處理賬務(wù)的核心子程序,可以連動(dòng)記會(huì)計(jì)分錄。CF是公用功能的集成,如對(duì)特定對(duì)象的查詢(xún),如客戶(hù)信息查詢(xún),匯率查詢(xún),代碼表查詢(xún);對(duì)特定對(duì)象及其操作,如中心額度功能集成,可用的功能有查詢(xún),使用額度保留,保留沖回,使用沖回等。CF不能處理賬務(wù),因此KB可以調(diào)用CF,CF不可調(diào)用KB,從應(yīng)用模塊設(shè)計(jì)來(lái)看可將聯(lián)機(jī)交易,KB和CF自上而下的分為三層結(jié)構(gòu)。
聯(lián)機(jī)預(yù)約報(bào)表類(lèi)程序可分為報(bào)表數(shù)據(jù)檢查類(lèi)程序和報(bào)表數(shù)據(jù)生成類(lèi)程序。從聯(lián)機(jī)報(bào)表生成整個(gè)流程可分為報(bào)表請(qǐng)求,報(bào)表數(shù)據(jù)檢查和報(bào)表數(shù)據(jù)生成。報(bào)表請(qǐng)求可通過(guò)聯(lián)機(jī)交易完成。
聯(lián)機(jī)多筆交易大事務(wù)處理(TCCD):一個(gè)TUXEDO事物中包含多筆聯(lián)機(jī)交易處理過(guò)程,其所有交易的處理結(jié)果保持一致性, 即所有交易全部成功或任何一筆失敗導(dǎo)致全部失敗,在同一個(gè)數(shù)據(jù)庫(kù)事物中完成提交或回滾處理。采用TCCM模式可將多個(gè)后臺(tái)聯(lián)機(jī)交易按順序組成一個(gè)交易組,一次提交完成。
從柜面及各服務(wù)請(qǐng)求渠道的角度來(lái)分,又分為標(biāo)準(zhǔn)聯(lián)機(jī)服務(wù)和快速聯(lián)機(jī)服務(wù)。對(duì)于標(biāo)準(zhǔn)聯(lián)機(jī)服務(wù)將順序執(zhí)行聯(lián)機(jī)主控平臺(tái)內(nèi)的全部功能組件,處理來(lái)自柜面、各渠道的查詢(xún)類(lèi)、維護(hù)類(lèi)、賬務(wù)類(lèi)服務(wù)請(qǐng)求;對(duì)于快速聯(lián)機(jī)服務(wù)則是簡(jiǎn)化版的標(biāo)準(zhǔn)聯(lián)機(jī)服務(wù),在聯(lián)機(jī)主控平臺(tái)的功能組件時(shí),將簡(jiǎn)化執(zhí)行部分功能組件,處理來(lái)自柜面、各渠道的查詢(xún)服務(wù)請(qǐng)求。
本文主要著重介紹商業(yè)銀行核心應(yīng)用程序中常用的幾種聯(lián)機(jī)交易:
一般聯(lián)機(jī)交易即柜員在前端界面直接輸入交易所需要素,前端系統(tǒng)將此交易提交CBOD核心系統(tǒng)。一般聯(lián)機(jī)交易可以是非賬務(wù)性交易也可以是賬務(wù)性交易,典型應(yīng)用為單筆查詢(xún)交易和單筆入賬交易(如活期存入)。對(duì)于賬務(wù)性交易與非賬務(wù)性交易的區(qū)別:一是需要記會(huì)計(jì)賬,二是需要支持沖正處理。
記會(huì)計(jì)賬是賬務(wù)性交易重要處理,該功能是通過(guò)連動(dòng)核心平臺(tái)提供的三個(gè)AP SERVER完成。賬務(wù)性交易也可以通過(guò)調(diào)用KB組合完成記會(huì)計(jì)賬務(wù)處理。
在沖正處理中,核心平臺(tái)提供TX-LOG功能。TX-LOG主要功能是程序在正交易過(guò)程中將一些重要信息寫(xiě)入TX-LOG,平臺(tái)將TX-LOG數(shù)據(jù)區(qū)記錄在流水中。在發(fā)生沖正交易時(shí),平臺(tái)會(huì)將流水中TX-LOG區(qū)傳遞給應(yīng)用程序完成沖正處理。
定義輸入流時(shí),一般聯(lián)機(jī)交易定義子交易代碼為‘00’,外圍系統(tǒng)獲得的服務(wù)碼的格式為Gaabnnnn00,其中aa為子系統(tǒng)代號(hào),b為序號(hào),nnnn為4位交易代號(hào)。
柜員在交易之前需要查詢(xún)CBOD核心系統(tǒng)現(xiàn)有業(yè)務(wù)數(shù)據(jù)狀態(tài),再進(jìn)行業(yè)務(wù)處理。因此二段式交易分成第一個(gè)交易為查詢(xún),第二個(gè)交易為實(shí)際業(yè)務(wù)處理。典型應(yīng)用為賬戶(hù)靜態(tài)資料維護(hù)和貸款還款。靜態(tài)資料維護(hù)需先查詢(xún)賬戶(hù)現(xiàn)在的資料情況再輸入新的資料。貸款還款需要先查詢(xún)賬戶(hù)應(yīng)還本金和利息,再輸入實(shí)際還款本金和利息。
對(duì)于二段式交易,因在第二個(gè)交易發(fā)送CBOD核心系統(tǒng)前,需要柜員輸入交易要素,兩個(gè)交易之間有時(shí)間間隔,在此時(shí)間間隔中如發(fā)生其他柜員修改了該賬戶(hù)的信息,則會(huì)發(fā)生柜員在實(shí)際提交交易時(shí),屏幕上數(shù)據(jù)已非數(shù)據(jù)庫(kù)現(xiàn)有狀態(tài)。系統(tǒng)需要通過(guò)特定機(jī)制來(lái)保證數(shù)據(jù)修改的正確性。
該機(jī)制需要前端系統(tǒng),CBOD核心系統(tǒng)平臺(tái)和CBOD核心系統(tǒng)應(yīng)用三方協(xié)作完成。在第一個(gè)查詢(xún)交易時(shí),應(yīng)用程序修改數(shù)據(jù)庫(kù)的TIMESTAMP,并通知CBOD核心平臺(tái)將該TIMESTAMP發(fā)送給前端,前端收到此TIMETAMP 后在第二個(gè)交易發(fā)送時(shí)同步上送該IMESTAMP應(yīng)用程序則將此TMESTAMP和數(shù)據(jù)庫(kù)中TIMESTAMP比較,如相等則表明在此時(shí)間間隔數(shù)據(jù)庫(kù)沒(méi)有發(fā)生任何變化,如不相等說(shuō)明在此期間數(shù)據(jù)庫(kù)發(fā)生修改,此時(shí)程序報(bào)錯(cuò)退出,需要柜員重新提交查詢(xún)。
定義輸入流時(shí),二段式交易一般定義兩個(gè)子交易代碼,‘01’子交易代碼為查詢(xún)交易,‘02’子交易代碼為實(shí)際業(yè)務(wù)處理。
維護(hù)類(lèi)交易一般分為四個(gè)功能,新增,查詢(xún),修改和刪除,每個(gè)功能號(hào)對(duì)應(yīng)一個(gè)子交易代碼。柜員在執(zhí)行修改和刪除時(shí),前端系統(tǒng)自動(dòng)發(fā)起查詢(xún)交易。先查詢(xún),再執(zhí)行修改或刪除處理,該查詢(xún)?yōu)橛小靶薷囊鈭D的查詢(xún)”,前端需將修改意圖標(biāo)志發(fā)送CBOD核心系統(tǒng),TIMESTAMP處理機(jī)制等同二段式查詢(xún)交易。單獨(dú)的查詢(xún)子交易是無(wú)修改意圖的查詢(xún)。
定義輸入流時(shí),維護(hù)類(lèi)聯(lián)機(jī)交易一般每個(gè)功能號(hào)對(duì)應(yīng)一個(gè)子交易代碼,‘01’子交易代碼為新增功能,‘02’子交易代碼為查詢(xún)功能,‘03’為修改功能,‘04’為刪除功能。
多頁(yè)式查詢(xún)交易是查詢(xún)時(shí)輸出信息記錄條數(shù)太多,無(wú)法一次顯示,需要多屏并通過(guò)上翻和下翻來(lái)完成查詢(xún)。翻屏的實(shí)現(xiàn)需要前端,CBOD核心系統(tǒng)平臺(tái)和CBOD核心系統(tǒng)應(yīng)用三方配合完成。多頁(yè)式查詢(xún)需要特別處理的是:一個(gè)是翻屏的控制處理,另一個(gè)是統(tǒng)計(jì)查詢(xún)記錄總條數(shù)和本頁(yè)條數(shù)。
翻屏實(shí)現(xiàn)方式是CBOD核心系統(tǒng)應(yīng)用把每屏輸出記錄的START-KEY和END-KEY通過(guò)CBOD核心系統(tǒng)平臺(tái)發(fā)送給前端,前端將每頁(yè)的START-KEY和END-KEY記錄下來(lái)。當(dāng)柜員上翻時(shí),前端把上頁(yè)的START-KEY上送CBOD核心系統(tǒng),CBOD核心系統(tǒng)應(yīng)用查詢(xún)大于等于START-KEY的記錄。當(dāng)柜員下翻時(shí),前端把當(dāng)前頁(yè)END-KEY上送CBOD核心系統(tǒng),CBOD核心系統(tǒng)應(yīng)用查詢(xún)大于END-KEY的記錄。在WORKING-STORAGE SECTION定義首次查詢(xún)和上下翻常量。
記錄條數(shù)統(tǒng)計(jì)是CBOD核心系統(tǒng)應(yīng)用將計(jì)數(shù)器值發(fā)送給平臺(tái)SPA數(shù)據(jù)區(qū),平臺(tái)會(huì)把此數(shù)據(jù)保存到終端數(shù)據(jù),在下次上下翻查詢(xún)時(shí),將此數(shù)據(jù)傳給CBOD核心系統(tǒng)應(yīng)用程序。在WORKING-STORAGE SECTIO定義SPA區(qū)的當(dāng)前頁(yè)記錄數(shù)和總記錄數(shù)。
查詢(xún)時(shí)滿(mǎn)頁(yè)記錄需比每頁(yè)記錄數(shù)多一條,即查詢(xún)時(shí)多查一條,以便于判斷本頁(yè)是否是最后一頁(yè)。把START-KEY,END-KEY,未頁(yè)標(biāo)志通過(guò)CBOD 核心系統(tǒng)平臺(tái)發(fā)前端,如果OPM-PAGE-NO-DATA的值為0/ NULL,均表示還有下一頁(yè);如果值為1,表示最后一頁(yè)。
本文對(duì)農(nóng)村商業(yè)銀行核心應(yīng)用程序中常用的幾種聯(lián)機(jī)交易技術(shù)進(jìn)行了詳細(xì)分析,這幾種交易機(jī)制嚴(yán)格遵循模塊的獨(dú)立性和原子性、數(shù)據(jù)改變的一致性和持續(xù)性、程序的可維護(hù)性和可讀性、低耦合可復(fù)用性等原則。農(nóng)村商業(yè)銀行核心系統(tǒng)的開(kāi)發(fā)依賴(lài)于這幾種交易模式,所以對(duì)聯(lián)機(jī)交易開(kāi)發(fā)技術(shù)發(fā)展的研究是從事金融業(yè)的科技工作者長(zhǎng)期奮斗的課題。
[1]向紅.打造銀行全新“心臟”提升核心競(jìng)爭(zhēng)能力[N].中國(guó)城鄉(xiāng)金融報(bào),2012.
[2]程彥博.銀行應(yīng)該更靈活[N].中國(guó)計(jì)算機(jī)報(bào),2014.
[3]邢帆.核心銀行系統(tǒng)面臨轉(zhuǎn)型再突破[J].中國(guó)信息化,2014.
[4]劉爽.互聯(lián)網(wǎng)金融對(duì)商業(yè)銀行的沖擊及應(yīng)對(duì)措施研究[J].現(xiàn)代經(jīng)濟(jì)信息,2016.
[5]竇婷婷.互聯(lián)網(wǎng)金融對(duì)傳統(tǒng)商業(yè)銀行業(yè)務(wù)的影響研究[J].中國(guó)管理信息化,2017.