You are on page 1of 14

D n Cng thanh ton ECPay Payment Gateway

PH LC 01 - NG B S LIU TRONG CMIS 2.0


1. Yu cu bi ton Thng nht d liu CMIS 2 trong cng cng ty theo cc im trin khai khc nhau, nhm phc v tt nht cho qu trnh khai thc d liu, cung ng dch v gi tr gia tng. p ng tt quy trnh nghip v kinh doanh in nng. 2. Mc tiu p ng c cho nhiu m hnh trin khai khc nhau ca CMIS 2(bn tp trung, phn tn d liu). Tch hp thnh module trong h thng CMIS2. X l tt ng b d liu vi s liu ln, thi gian ng b s liu p ng c quy trnh d liu thc t ca n v. m bo tnh ton vn d liu khi chy song song, x l c vn b rowlock khi chy ng b nhiu in lc. ng b s liu theo tng bng d liu config trong file xml, h tr c ch tch ring cc phn d liu cng n, ha n. ng b s liu theo tng nhm bng, theo l, song song gia cc n v. 3. Nghip v ca bi ton ng b s liu 3.1. Cc cng vic ca chi nhnh(in lc) a. Cc chc nng phi thc hin Nhp thng tin bin ng khch hng: Pht trin khch hng mi, thay i gi, treo tho cng t, thay i tn, a ch, .... Nhp ch s, tnh ho n Xc nhn s liu in ho n ng b s liu ln cng ty in ho n Sau khi nhn ho n t b phn in n ca cng ty, thc hin cng tc giao thu chm n, quyt ton hng ngy. Hng ngy ng b s liu ln cng ty cng ty theo di, lm bo co.

b. i sot s liu Sau mi bc thc hin, cn thc hin kim tra, i sot li cc cng vic lm. C th nh sau: Hng ngy trc khi nhp ch s, tnh ho n phi thc hin kim tra cc thng tin bin ng ca khch hng c cp nht y cha bng cc chc nng mc "Bo co thng k" ca phn "Qun l thng tin v dch v khch hng"
Trang 1 / 14

D n Cng thanh ton ECPay Payment Gateway Sau khi nhp ch s, in cc bng kim sot ch s, bng k theo tnh trng ch s (Mc "Ch s" phn "Nhp ch s v lp ho n") theo di, pht hin cc ch s sai. Sau khi tnh ton ho n, c th kim tra thm bng cc chc nng nh: xem chi tit ho n, in bng k pht sinh, bng k chi tit gi, in bng tng hp giao nhn ho n, bng k tnh hnh khai thc ho n. Sau khi thc hin xc nhn s liu trc khi in, Gi bng tng hp giao nhn ho n hoc bng k tnh hnh khai thc ho n km vi file d liu ng b. Trong trng hp khng gi th phi gi in thng bo cho b phn in ho n trn cng ty thng tin cc s cn in sau khi gi file ng b.

3.2. Cc cng vic do cng ty(in lc) ph trch: a. Cc chc nng phi thc hin: Thc hin ng b cc file s liu do chi nhnh gi ln In ho n, bng k Thc hin chuyn s liu pht sinh cc ho n in Thc hin ng b s liu cho cc chi nhnh Sau khi thc hin ng b file d liu do chi nhnh gi, thc hin in bng tng hp giao nhn ho n, bng k tnh hnh khai thc ho n kim tra xem d liu ng b chnh xc cha. Sau khi in ho n, kim tra s lng ho n in ra vi s lng ho n c thng bo.

b. Cng tc i sot

Kt lun H tr trin khai theo m hnh phn tn, c phn thnh 3 cp (Cng ty, in lc, chi nhnh) hoc phn 2 cp(in lc - chi nhnh; cng ty in lc) Theo nghip v yu cu, mi cp c phn quyn thc hin cc cng vic ring. Cn c quy nh c th bng vn bn mi cp thc hin C s lin quan, nh hng gia cc cp v mt d liu, tc nghip H thng cn c ng b d liu gia cc cp thc hin cng vic

Trang 2 / 14

D n Cng thanh ton ECPay Payment Gateway

3.3. S

Cng ty
Nhp bin ng khch hng: Pht trin mi, treo tho,...

Chi nhnh(in lc)

Nhp ch s, tnh ho n

Xc nhn s liu in ho n

ng b s liu ln cng ty

Nhn s liu t chi nhnh

In ho n, in bng k

Chuyn s liu pht sinh

Nhn s liu ng b sau khi chuyn pht sinh Pht hnh ho n

ng b s liu cho cc chi nhnh

Giao thu, chm n

ng b s liu ln cng ty theo di

Nhn s liu ng b lm bo co

4. Cc chc nng ca chng trnh ng b s liu. 4.1 Trch s liu gi n v cp trn


Trang 3 / 14

D n Cng thanh ton ECPay Payment Gateway D liu pht sinh mi ca n v cp di c nh du trong cc file MLOG. Khi thc hin trch s liu, cc d liu thay i c chc nng thu thp, a ra ngoi theo nh dng file c sn, gi ln pha n v cp trn. Ghi nhn file d liu c kt xut. 4.2 Nhn s liu t n v cp trn Khi nhn c file s liu do n v cp trn chuyn v, chc nng nhn s liu thc hin phn tch file, a ni dung file c kim tra tnh hp l vo CSDL n v. Ghi nhn li thng tin v file d liu cp nht vo h thng. 4.3 Trch s liu gi n v cp di D liu c pht sinh mi ca n v cp trn c nh du trong cc file MLOG. Khi thc hin trch s liu, tt c cc d liu i theo n v c chn trch s c kt xut ra theo nh dng file quy c sn. Sau file c gi v n v cp di. 4.4 Nhn s liu t n v cp di. Khi nhn c file s liu do n v cp di chuyn ln, chc nng nhn s liu thc hin phn tch file, a ni dung file c kim tra tnh hp l vo CSDL cp trn. Ghi nhn li thng tin v file d liu cp nht vo h thng. 4.5 Cu hnh mi trng ng b s liu 4.5.1. Config cc file cu hnh ng b s liu: Xut, nhn d liu. Cho php hiu chnh, son tho ni dung ca cc file cha thng tin v cc user xut, nhn s liu. Thng tin user thc hin vic ng b s liu. Cc thng tin v ng dn th mc, nhm th mc cha file. Thng tin cu hnh thi gian thc hin, ln thc hin. Thng tin v cc ng dn ti log file ghi nhn cc qu trnh ng b. 4.5.2. Config cc file cha bng d liu cn ng b Cho php son tho, thm, sa xa danh mc cc bng d liu cn ng b. Cu hnh bng d liu c php ng b hay khng. To cc bng MLOG tng ng vi bng chnh thc hin ng b 4.5.3. Config file gi nhn file s liu gia cc my. Cho php hiu chnh, son tho ni dung file, ng dn th mc gi nhn file gia cc my trong mng Lan, Wan 4.5.4 Config cc user phc v nhn, xut s liu. t cu hnh cc user lm trung gian nhn, xut s liu. Sinh cc script to bng, to index, chun ha cu trc cho cc user tm. 4.5.5. Xem log qu trnh thc hin

Trang 4 / 14

D n Cng thanh ton ECPay Payment Gateway Theo di qu trnh thc hin, ghi vt li phc v cng tc h tr ngi dng. Chc nng t ng refresh trong khong thi gian 30 giy. 5. S xut, nhn s liu ng b. 5.1 S trch d liu gi

Trang 5 / 14

D n Cng thanh ton ECPay Payment Gateway

S THC HiN NG B D LIU CHO N V CP DI (TRN)


(Trch d liu gi n v cp trn)

Bt u

Kim tra xem c tin trnh no (Exp) ang chy khng (1)

C Khng Thng bo c tin trnh ang thc hin Kt thc

Delete d liu CMIS03 theo n v ng b

Gi th tc INSERT_DATA.Delete_CMIS03_data Hin ti l xo tt c d liu ca CMIS03 i theo n v ng b

Thc hin trch d liu t CMIS01 v y vo CMIS03

(2)

Gi EXP ca Oracle, export ra file theo ng dn. Nn file kt xut

Kt thc

Chi tit bc 2

(2)

Gi th tc DONGBO_SL.DELETE_LOG xo ht d liu c TTHAI_DB l Y, O trn MLOG$_ ca CMIS01

Xo log

Max sequence

Gi th tc INSERT_DATA.BEGIN_DONGBO ly Max sequence a vo RHETHONG

Chun b Gi th tc INSERT_DATA.Prepare_syschronous cp nht li TTHAI_DB ca MLOG$ trn CMIS01 dng d liu X, O --> N

Ly d liu

Gi th tc INSERT_DATA.get_data_insert th tc ny gi th tc get_data_insert2 lp qua tng bng MLOG$ CMIS01(N) -->CMIS03 Cp nht X --> Y

Trang 6 / 14

D n Cng thanh ton ECPay Payment Gateway

5.2. S nhn d liu


S THC HiN NG B D LIU CHO N V CP DI (TRN)
(Nhn d liu t n v cp trn)

Bt u

Kim sot tnh hp l ca file

Ly theo cch x l c

Set_NLS_LANG

Xo d liu CMIS03

IMP vo CMIS03

Gi th tc INSERT_DATA.Delete_CMIS03_data Hin ti l xo tt c d liu ca CMIS03 i theo n v ng b

y d liu CMIS03 vo CMIS01

(1)

Kt thc

(1)

Ly d liu t CMIS03

Gi th tc INSERT_DATA.merge_data(M n v ng b)

Gi th tc INSERT_DATA.SaveLostData (M n v ng b) xo d liu trn CMIS01 m DMLTYPE=D trn CMIS03

Ly d liu cn delete trn CMIS01

Ly d liu cn Update, Insert CMIS01

Gi th tc INSERT_DATA.merge_data2(M n v ng b) y l th tc lp qua cc bng Sau khi Merge d liu xong cn cp nht li TTHAI_DB d liu trn MLOG$ ca CMIS01 m cng tn ti trn CMIS03 X -->Y

Trang 7 / 14

D n Cng thanh ton ECPay Payment Gateway

KIN TRC H THNG NG B S LIU


I. Nguyn tc lu tr nhng d liu thay i.
Nguyn tc ng b ny da trn MATERIALIZED VIEW LOG. Cc MATERIALIZED VIEW LOG ny c to trn cc bng s liu c nhim v ghi nhn ton b thng tin thay i trong bng . Da vo cc nguyn tc ny ca h thng Oracle ta c th kim sot c cc d liu thay i thc hin ng b gia cc Serrver vi nhau. Ngoi ra cc MATERIALIZED VIEW LOG ny c th to thm cc ct gip ta d dng trong vic x l cc bn ghi thay i. Trong h thng ng b ny, cc ct c to thm mch ch v ngha ca cc bng s liu. Cc MATERIALIZED VIEW LOG c cu trc nh sau: HDONCTIET_ID, MA_DVIQLY, SEQUENCE$$, SNAPTIME$$, DMLTYPE$$, OLD_NEW$$, CHANGE_VECTOR$$, DATE_CHANGE, TTHAI_DB, STATUS y l cu trc MATERIALIZED VIEW LOG ca bng HHDON_CTIET. Trong : HDONCTIET_ID, MA_DVIQLY l key ca bng HHDON_CTIET. Field SEQUENCE$$ l field cha th t thay i ca d liu log. Field DMLTYPE$$ l Field cha loi ca lnh DML tc ng ln d liu. U : update I : Insert D : Delete. (O l gi tr c, N l gi tr mi)

OLD_NEW$$

Cc Field DATE_CHANGE, TTHAI_DB, STATUS l c thm vo vi cc ngha nh sau:


Trang 8 / 14

D n Cng thanh ton ECPay Payment Gateway DATE_CHANGE c gi tr default l sysdate s lu thi gian thay i d liu. c s dng trong mc ch kim sot s liu ti n v. TTHAI_DB c ba gi tr l N, Y, O, ngoi ra trong qu trnh thc hin th cn c cc trng thi khc l: R,X l cc trng thi trung gian. N c ngha l d liu log ny cha c ng b. X l trng thi trung gian ca cc bn ghi sn sng ly s liu. R c ngha l update cc dng ly d liu ri sang trng thi trung gian. Y c ngha l d liu log ny c ng b. O c ngha l d liu log ny c ng b t in lc hoc chi nhnh ch khng do thao tc ti n v pht sinh. Khi d liu ny s khng tham gia vo qu trnh ng b ngc. STATUS c hai gi tr l 0,1 c ngha nh sau: 0 s liu cha c ng b ln cng ty. 1 s liu c ng b ln cng ty.

II. Chc nng trch s liu ti in lc II.1. Lung x l thng tin ca chc nng trch s liu in lc

Trang 9 / 14

D n Cng thanh ton ECPay Payment Gateway

Bt u Max(sequence) MLOG&_
RHE_THONG

(TRANSACTION) Bt u DB

MLOG_

Xo Log c

File Config XML

c DS bng cn DB Bng A N DS vn cn Y c S liu

read_data_delete_rownum_dv read_data_update_rownum_dv Bang A read_col read_key MLOG_A

<File XML data ca bng A> gm: Update Delete Col Key File DS cc bng c xut ra
(ds_table_ db.xml) LOG_TRICHSL

C s liu Y Xut s liu

MLOG A Cn SL mi N
Insert

Ghi nht k Nn File

ZIP file

Trang 10 / 14

Kt thc

D n Cng thanh ton ECPay Payment Gateway

II.2. M t chi tit


Bt u ng b. C nhim v ly Max ca sequence trong tt c cc bng MLOG c trng TTHAI_DB=N v INSERT vo bng RHE_THONG. Gi tr ny c s dng trong ton b transaction lm gi tr gii hn trong mt ln ng b. Xo log c. Xo ton b d liu thay i trong cc bng MLOG c TTHAI_DB=Y. Sau qu trnh ng b tt c cc bn ghi trong MLOG u c cp nht TTHAI_DB=Y d phng trong trng hp qu trnh ng b gp s c.C ch ng b ny cho php khi phc li MLOG ca ln ng b trc . c DS bng cn DB Tt c cc bng sau khi to MLOG u c th ng b. Cc bng ny s c lu trong mt file xml vi tnh trng c ng b hay khng c php ng b.N c nhim v ly ln danh sch cc bng c ng b.Qu trnh ng b kt thc khi tt c cc bng trong danh sch ny c ng b. c s liu V d trn bng A.T bng MLOG&_A v bng s liu A thng qua cc th tc di y ly ra cc bn ghi cn xo trong bng Delete v cc bn ghi cn update lu trong bng Update , Ngoi ra i vi bng s liu A chng hn n cn phi lu tn cc ct trong bng A vo bng Col v tn cc key trong bng A vo bng Key. Cc bng Delete,Update,Col,Key c lu trong mt dataset. ng vi mt key A c lu trn log s lun lun ly dng m c cha key A ng vi max ca SEQUENCE$$. Nh vy ng vi mt key A qua nhiu ln Insert, Update, Delete th ch xt s thay i d liu ca ln cui cng. read_data_delete_rownum_dv: c bng MLOG vi cc bn ghi c DMLTYPE$$ = D read_data_update_rownum_dv

c bng MLOG vi cc bn ghi c DMLTYPE$$ =U hoc I, Ring i vi bng HNHATKI_GCS c thm trng lock_status mc ch ca trng ny iu khin cc chc nng cng tc ng n trng thi quyn trong bng ny. C ngha l ti mt thi im th c mt User c thc hin chc nng m c tc ng lm thay i d liu ca mt bn ghi no . Trng ny cc chc nng c hai pha client v server u tc ng vo cng mt bn ghi. Chnh v vy sinh ra trng hp update vng. gii quyt tnh trng ny gii php l khng ly cc bn ghi m ch thay i trng Lock_status. Bn c th nhn thy trong th ny cch x l cho bng HNHATKI_GCS c khc so vi cc bng khc.
Trang 11 / 14

D n Cng thanh ton ECPay Payment Gateway read_col: Tr v tn cc ct trong bng A read_key: Tr v tn cc kho chnh trong bng A

Xut s liu Sau khi ly xong s liu th chc nng ny c nhim v xut ra file XML, DMP. Trong file ny lu thng tin v bn bng trn. Sau t bn bng ny y s liu vo trong server cn li. Ghi nht k Nhim v l lu li s th t file thc hin ng b vo trong bng LOG_TRICHSL v cc thng tin khc nh th mc lu tr file,s lng bn ghi chch ra sau khi trch s liu. Nn file Ton b cc file xml sau khi xut ra c lu trong mt th mc c nn li thnh mt file nn kiu .RAR. File nn ny c truyn i theo cc phng thc truyn file.

III. Chc nng nhn s liu. III.1. Lung x l thng tin ca chc nng trch s liu in lc.

Trang 12 / 14

D n Cng thanh ton ECPay Payment Gateway

Bt u

File ZIP

Gii nn

File ng b l lin tc? Y


ds_table_db.xml

c DS bng cn DB Bng A DS vn cn Y
c S liu t File XML, Xo sl cn xo

(TRANSACTION)

File XML Data Update Delete Col Key

Delete, Col, Key

Delete

Update, Col, Key

c S liu t File XML, MERGE INTO bng A

Database
MERGE INTO

Key

Update MLOG$_A.TT HAI_DB=O

N DS bng cn DB ht? Y STT=STT+1


LOG_TRICHSL

Ghi nht k Kt thc

Trang 13 / 14

D n Cng thanh ton ECPay Payment Gateway

III.2 M t chi tit


Sau file ng b c chi nhnh gi ln vo mt th mc no .Chng trnh ng b gii nn file ng b vo trong mt th mc. Trong th mc ny c file danh sch cc bng c xut ra. Kim tra s th t cc file ng b vo c lin tc hay khng, bng cch so snh s th t ca file ng b v MAX(STT) trong bng LOG_DONGBOSL. Nu s th t file =v MAX(STT) trong bng LOG_DONGBOSL +1 th file ng b l lin tc cn khng th file truyn ln l khng lin tc. c danh sch file cn ng b trong file ds_table_db.xml.File ny cng nm trong thu mc vi cc file d liu ng b ln. Trong mi file d liu ng b ln bao gm 4 bng thng tin. Bng DELETE gm ton b cc bn ghi b xo i vi mt bng A trong c s d liu trong hai ln ng b k tip. Bng UPDATE l bng bao gm cc thng tin v cc bn ghi c Update v c Insert trong hai ln ng b k tip nhng l gi tr ng vi MAX(SEQUENCE) i vi mt key A no . Bng COL l bng lu li ton b tn cc ct trong bng A. Bng KEY l bng lu cc Key trong bng A v d Bng A c 5 ct l A1, A2, A3, A4, A5 v Key l A1, th bng KEY c mt row c gi tr l A Xo s liu: kim tra trong bng DELETE nu c s liu th kt hp vi cc bng COL v KEY xy dng mt cu lnh xo tng bn ghi theo gi tr key ca n. Update data: kim tra trong bng UPDATE s liu th kt hp vi cc bng COL v KEY xy dng mt cu lnh MERGE INTO tng bn ghi vo cc bng trong c s d liu. d liu c ly trong bng UPDATE. Lnh ny da trn nguyn tc l nu c d liu th thc hin update cn nu khng c th thc hin INSERT. Trong cc iu kin ca lnh MERGE INTO u da trn cc KEY v gi tr ca chng. Sau khi thc hin y s liu vo th thc hin UPDATE bng MLOG v trng thi ng b(TTHAI_DB=O) trnh trng hp Update vng. Khi TRANSACTION trn thc hin xong th thc hin ghi nht k vo trong bng LOG_DONGBOSL v tng s th t ca trng s th t ln mt n v.

Trang 14 / 14

You might also like