Mu Observermôtcáchthitlpmiquanhnày.Cóhaiñit ưngthencht trongmunày,ñólà Subjectvà Observer.Mtñi tưng Subjectcóthcómthoc nhiu ñi tưng Observer ph thuc vào nó.. ñi tưng thuc lp Subject và c
Trang 2DANHMCCÁCHÌNHVVÀðTH 6
MðU 9
1.Cơskhoahcvàthctincañtài: 9
2.Mctiêuvàphmvinghiêncucalunvăn 11
3.Nidungnghiêncuvàthchincalunvăn 11
4.Tómttcutrúccalunvăn 12
CHƯƠNG1 13
TNGQUANVMÔHÌNHSDNGLI 13
1.1.Giithiuchung 13
1.2.Tngquanvcácmuthitk 13
1.2.1.Muthitklàgì? 13 1.2.1.1.Cácñnhnghĩavmuthitk[4,9]13 1.2.1.2.Cácthànhphncamuthitk[8,9] 14 1.2.2.Danhmccácmuthitkvàphânloi[9] 15
1.2.3.Sơñmiquanhgiacácmuthitk[9] 17 1.3.Mtsmuthitkñinhìnhtrongcácngd ngqunlý. 17
1.3.1.MuQuansát 18 1.3.2.MuThchinlnh 20 1.3.3.MuTrngthái 22 1.3.4.MuPhươngthctiêubn 23 1.3.5.MuChuicáctráchnhim 24 1.3.6.MuChinlưc 26 1.3.7.MuKchbnthaotác 28 1.3.8.MuMôhìnhlĩnhvc 29 1.3.9.MuCngdliucabng 31 1.3.10.Muðitưngchuynñidliu 33 CHƯƠNG2 36
Trang 3TNGQUANVHTHNGHOCHðNHNGUNLCDOANHNG HIP
ERP 36
2.1.Lchshìnhthành 36
2.2.ERMStíchhpERPvàNghipvsnxutkin hdoanh 40
2.3.LiíchcadanhnghipkhisdngERP 43
2.3.1Tipcnthôngtinquntrñángtincy 43
2.3.2Côngtácktoánchínhxáchơn 43
2.3.3Citinqunlýhàngtnkho 43
2.3.4Tănghiuqusnxut 43
2.3.5Qunlýnhânshiuquhơn 44
2.3.6Cácquitrìnhkinhdoanhñưcxácñnhrõràn ghơn 44
CHƯƠNG3 45
NGDNGCÁCMUTHITKðXÂYDNGCÁCPHÂNHT RONGH THNGQUNLÝDOANHNGHIP 45
3.1.Phânhchính:Cáclpcơs,qunlýbomt, báocáo 45
3.1.1.Bàitoánñtra 45
3.1.2.Phmvibàitoán 46
3.1.3.Phântíchyêucubàitoánvàxácñnhgii pháp 46
3.1.4.ThitkPhânhchính 47
3.1.4.1.Thitkcáclpxlý,truycpCSDL 48
3.1.4.2.ChcnăngQunlýbomtngdng 53
3.1.4.3.ChcnăngQunlýcutrúccácbngdli u 69
3.2.PhânhQunlýmuabánvttư–nguyênliu .74
3.2.1.Bàitoánñtra 74
3.2.2.Phmvibàitoán 75
3.2.3.Môtnghipvqunlý 75
3.2.3.1 Xác ñnh các thông tin chung v qun lý mu a bán vt tư, nguyênliu 75
3.2.3.2.Côngtácqunlýhotñngmuabánvttư nguyênliu 78
Trang 43.2.3.3.Sơñtintrìnhqunlýhotñngmuabán vttư 79
3.2.3.4.Cácyêucucaphânhqunlýmuabánv ttưnguyênliu80 3.2.3.5 CácchcnăngcaPhânhqunlýmuabán vttưnguyên liu 80
3.2.3.6.Tñindliuvàmôhìnhlĩnhvcnghip v 81
3.2.4.ðcththng 83
3.2.4.1.Cáctácnhâncahthng 83
3.2.4.2.Cáccasdngtiêubiucahthng 85
3.2.4.3.Môhìnhcasdngtngth 88
3.2.4.4.Môtchititcáccasdng 89
3.2.5.Phântíchhthng 95
3.2.5.1.Phântíchcáccasdng 95
3.2.5.1.Phântíchcáclp 101
3.2.6.Thitkhthng 105
3.2.6.1.Kintrúcvtlýcangdng 105
3.2.6.2.Xácñnhcácgóithitk 106
3.2.6.3.Thitkchotngcasdng 106
CHƯƠNG4 109
CÀIðTVÀTRINKHAIHTHNG 109
4.1.Cácyêucucàiñttrinkhaihthng 109
4.2.Giithiuchươngtrình 110
4.2.1.Cácmctiêumàhthngñtñưc 110
4.2.2.Cutrúcchươngtrình 110
4.2.3.Cácñitưngsdngchươngtrình 111
4.2.4.Giaodinmtschcnăngchính 112
4.3.Khnăngtrinkhaiápdng 114
KTLUN 115
1.Cácktquñtñưc 115
2.Nhngvnñtntivàhưngpháttrin 116
Trang 5TÀILIUTHAMKHO 117
TàiliutingVit 117
TàiliutingAnh 117
CáctrangWeb 118
Bcôngc 118
Trang 7Hình1.2:CutrúcmuObserver 18
Hình1.3:BiuñcngtáccamuObserver 19
Hình1.4:CutrúcmuCommand 20
Hình1.5:BiuñcngtáccamuCommand 21
Hình1.6:CutrúcmuState 22
Hình1.7:CutrúcmuTemplateMethod 23
Hình1.8.1:CutrúcmuChainofResponsibility 25
Hình1.8.2:CutrúcmuChainofResponsibility 25
Hình1.9:CutrúcmuStrategy 26
Hình1.10:CutrúcmuTransactionScript 28
Hình1.11:CutrúcmuTransactionScriptkthp vimuCommand 29
Hình1.12:CutrúcmuDomainModelsdngmuSt rategy 30
Hình1.13:CutrúcmuTableDataGateway 32
Hình1.14:CutrúcmuDataTransferObject 34
Hình2.1LchspháttrincaERP 37
Hình2.2ERM–StíchhpERPvànghipv 41
Hình2.3ðnhnghĩamôhìnhERM. 42
Hình3.1.KintrúchthngdatrênmuMVC 47
Hình3.2.KintrúccáclpgiaotipCSDLsdng muthitk 48
Hình3.3.SdngTableDefinitionñgimthiuth ayñi. 50
Hình3.4.Cutrúccácphânlpqunlýcácgóica miPhânhtronghthng 51
Hình3.5.LưcñlpxlýdliucañitưngN hânviên. 53
Hình3.6.Quátrìnhñăngnhphthng. 54
Hình3.7.Môhìnhtngthcáccasdngliênquan ñnbomt. 54
Hình3.8.Cáclpthcthicasdngðăngnhp 59
Hình3.9.Biuñcngtáccasdngðăngnhp. 60
Hình3.10.Cáclpthcthicasdngðimtkhu 60
Hình3.11.Biuñcngtáccasdngðimtkhu 61
Hình3.12.CáclptrongcasdngCpnhtnhómq uyn 61
Hình3.13.BiuñcngtáccasdngCpnhtnhó mquyn. 62
Trang 8Hình3.14.CáclptrongcasdngPhânquyn .62
Hình3.15.BiuñcngtáccasdngPhânquyn .63
Hình3.16.Lpthitkcasdngðăngnhpchưaá pdngmu 65
Hình3.17.Cáclpthitktrongcasdngðăngn hpápdngcácmuthitk 66
Hình3.18.Cáclpthitkcasdngðimtkhu chưaápdngmu 67
Hình3.19.Cáclpthitktrongcasdngðim tkhuápdngcácmuthitk 67
Hình3.20.Kintrúccáclpbomtngdng 68
Hình3.21.MôhìnhcasdngphnQunlýcutrúc bng 70
Hình3.22.CáclpcacasdngCpNhtNhómBn g 70
Hình3.23.BiuñcngtáccasdngCpNhtNhó mBng 71
Hình3.24.CáclpcacasdngCpNhtBng 71
Hình3.25.BiuñcngtáccasdngCpNhtBn g 72
Hình3.26.CáclpthitktrongcasdngCpnh tnhómbng 72
Hình3.27.Cáclpthitktrongcasdngcpnh tnhómbngápdngmu 73
Hình3.28.CáclpthitktrongcasdngCpnh tbng 73
Hình3.29.CáclpthitktrongcasdngCpnh tbngápdngmu 73
Hình3.30.KintrúclpcaphnQunlýcutrúc bng 74
Hình3.31.Môhìnhphâncpqunlýtrongdoanhngh ip 76
Hình3.32:SơñtintrìnhqunlýmuabánVTNL .79
Hình3.33:MôhìnhkháinimcachcnăngQunlý muabánVTNL 83
Hình3.34:MôhìnhcasdngtngthcaPhânh QunlýmuabánVTNL 88
Hình3.35:CáclpthcthicasdngLpphiuyê ucumua 95
Hình3.36:BiuñcngtáccáclpcasdngLp phiuyêucumua 96
Hình3.37:CáclpthcthicasdngLpyêucu báogiá 96
Hình3.38:BiuñcngtáccáclpcasdngLp yêucubáogiá 97
Hình3.39:CáclpthcthicasdngLpyêucu ñthàng 97
Hình3.40:BiuñcngtáccáclpcasdngLp yêucuñthàng 98
Hình3.41:CáclpphântíchthcthicasdngL pphiuNhnhàng 98
Hình3.42:BiuñcngtáccáclpcasdngLp phiunhnhàng 99
Hình3.43:CáclpphântíchthcthicasdngL pphiuyêucuthanhtoán 100
Hình3.44:BiuñcngtáccáclpcasdngLp phiunhnhàng 100
Trang 9Hình3.45:Kintrúcvtlýcangdng .105
Hình3.46:CáclpthitkcasdngLpyêucu muahàng 106
Hình3.47:CáclpthitkcasdngLpyêucu muahàngsdngmu 107
Hình3.48:CáclpthitkcasdngLpyêucu báogiá 107
Hình3.49:CáclpthitkcasdngLpyêucu báogiá 108
Hình3.50:Lpthitkyêucumuahàngápdngm uState 108
Hình4.1:Giaodinchínhcachươngtrình .112
Hình4.2:Giaodinqunlýthcñơn .112
Hình4.3:GiaodinqunlýBáocáo .113
Hình4.4:GiaodinqunlýKháchhàng .114
Trang 11nghiên cu và áp dng thành công vào thc t, dó ñó vic áp dng các mô hình s
qunlýthôngtincadoanhnghip
H thng ñưc xây dng s dng các công ngh k thu t mi như: ng dng
hưngtipcnápdngcácmuthitk,sdngcô ngcmôhìnhhoáUMLñphân
tíchvàthitkbàitoántheomôhìnhhưngñitư ng;ngdngcôngnghngdng
Trang 12chkhách(COM+)ñcpnhtvàxlýthôngtin.ð
kñcóthchyñưcctrênnnWeblndesktop
ngthihthngcũngñưcthitapplication
ông tin tng th cho các
– Xâydngchươngtrìnhvàtinhànhcàiñtthnghi m
Trang 13CHƯƠNG4 :Càiñt
Chương này nêu các yêu cu và môi trưng cài
ñt, t thiu mt s chc năng chính và ñưa ra mt s màn h
Trang 141.1.Giithiuchung
Thit k phn mm là mt công ñon quan trng
trong phát trin phn mm Cũng như vic thit k phn
Trong quá trình xâydng và phát trin phn mm,
Phươngpháplptrìnhhưngñitưngrañigópph
phnmmtrnênddàngvàlinhñnghơn.Thitk
dõivàqunlýñưcsphthucgiacácmôñuntr
ngiúpcho victhitkhưngñitưngchophéptheoongkintrúccahthng
Năm 1995, Erich Gamma, Richard Helm, Join Vlissides , và Ralph Johnson(GangofFour GOF)ñãcôngbcunsáchcah“E lementsofreusableObjectOrientedSoftware”ñánhdusrañica“ Muthitk ”.ðâylàmtbưctinvôcùngquantrngñivivicthitkphnmmhưn gñitưng
1.2.Tngquanvcácmuthitk
1.2.1.Muthitklàgì?
1.2.1.1.Cácñnhnghĩavmuthitk[4,9]
Muthitk( Design Pattern)làmtcpgiipháp/vnññưcñttêncóthá
dng trong nhng ng cnh mi và nhng hưng dn ñ áp dng nó trong
Trang 15dngnàoñó.Cácgiaiñonphnmmvnhoànchnh màkhôngcómuthitk,nhưngsgópmtca muthitksgiúpcho vicxácñnhbàitoáncngiiquytnhanhgnhơn,tñóñưaracáchgiiqu ythplý.[9]
Muthitkkhôngchñưcsdngñxácñnhbài toánvàcáchgiiquytmàcònñưcsdngnhmcôlpcácthayñitrongmã ngun,tñólàmchohthngcókhnăngtáisdngcaodomuthitkt uânthrtnghiêmngtcácnguyênlýthitkhưngñitưng.[9]
camingưi.TheoGOF,cáchnhìnnhnphbinnh tvcácmuthitklàcoi
chúnggingnhưcácmôtvcácñitưngphcv mcñíchtraoñithôngtintrongquátrìnhthitkñãñưchiuchnhñgiiquyt nhngyêucuthitktrongnhngtrưnghpnhtñnh
Trang 16Vídnhưmuthitkñưcginhưmtthànhng( mu GRASP),muthitkcóthmôtbnglihocmôhìnhthitkhaybn gmãngun.
Hqu :Lànhnggìthunhnñưccùngvinhngyutc ncânnhckhiápdngmuthitkñgiiquytbàitoán.Hquth ưngkhôngñưcñcpkhi
a Theo mc ñích s dng: Các mu thit k ñưc phân thành 3 nhóm: mu
Muhànhvi (Behavioral Patterns):muhànhvimôtstươngtácgiacácñi
tưngvàcáchchúngphânphi,cngtác,ñgiiqu ytmthaymtnhómtrách nhimnàoñó.Muhành vibaogmcác mu sau: Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method, Visitor
Trang 19Víd,nhiucôngcgiaodinñhophântáchgia
(Data)bêndưi.Cáclpñnhnghĩachogiaodinv
nhauñlàmviccũngnhưcóthñưcsdng1các
odin(GUI)rakhidliu àdliutrêncóthkthpvi hñclp
Mu Observermôtcáchthitlpmiquanhnày.Cóhaiñit ưngthencht trongmunày,ñólà Subjectvà Observer.Mtñi tưng Subjectcóthcómthoc nhiu ñi tưng Observer ph thuc vào
nó Tt c các ñi tưng Observer s ñưc cnhbáo(notify)khi ñitưng
Subjectcósthayñivtrngthái.Khiñó,cácñi tưng Observerslythôngtinvtrngtháicañitưng Subjectñtcpnhtli trngtháicachínhnó
Trang 20ñi tưng thuc lp Subject và các ñi tưng thuc lp Observer ði tưngConcreteObserversgicontrcañitưng ConcreteSubject.Ngưcli,lpchaca
lp ConcreteSubject(lp Subject)sgimtmngcáccontrñnlp Observer(lpcha
Sau khi xác nhn s thay ñi trong ñi tưng
ConcreteObserver có th truy vn thông tin ca các ñi tưng
ConcreteSubject, ñi tưng
Observer ði tưngConcreteObserversdngthôngtinnàyññngbtrngtháicanó vicácñitưng
Observerñó
Hình1.3:BiuñcngtáccamuObserver
1.3.1.5.Cáctìnhhungápdng
Mu Observerthưngñưcápdngkhi:ngdngcómiquanhp hthuc,ñitưngnàyphthucvàoñitưngkia.Hockhi mtsthayñiñitưngnày
dnñnsthayñiñitưngkhácvàchúngtakh ôngbitchínhxáccóbaonhiêuñitưngphithayñitheo
Trang 21Chúng ta có th thêm vào mt hoc nhiu ñi tưng p
(Observer) mà không phi sa ñi li ñi tưng ch th Subject
h thuc trng tháihoc các ñi tưngObserverphthuctrngtháikhác
1.3.2.MuThchinlnh
1.3.2.1.Ýnghĩa
MuThchinlnh( Command)dùngññónggóicácyêucukhácnhauthành tng ñitưng thc hin lnh riêng bit, do ñó cho phép thams hoá các tác v tclientviñitưngthchinlnhkhácnhau,ñưa vàohàngñihoctptinsghi(logfile)cácyêucu,htrvicphchicáctá cvñãthchin
1.3.2.2.Môt
Munàytoracáclplnh Commandgiúpchovicgithchinsaunàyñưc
ddàng.Milp Commandñưcñnhnghĩatươngngvimthànhñng( action)camtñitưngnhn( receiver)nàoñó(còngilàmtcp action receiver).Saunày,khimunthchinlnhnào,tachcngithchint ươngngvi Commandtươngng
1.3.2.3.CutrúcmuCommand
Hình1.4:CutrúcmuCommandCácthànhphnthamgiavàocutrúc Command:
Trang 22Receiver:nhnbitkhinàocnthchintácvtươngngvicácyêucu ñưcgiti.
1.3.2.4.Biuñcngtáccacácñitưngthamgi avàomu
Hình1.5:BiuñcngtáccamuCommandClienttocácñitưng ConcreteCommandvàxácñnhcácñitưngnhntươngng.ðitưng Invokerlưugicácñitưng ConcreteCommandñcóthduytvàñưa
racácyêucukhicn
1.3.2.5.Cáctìnhhungápdng
Cóthngdngmu Commandñxâydngmtthcñơnbngcáchtomttp
hpcácCommandtươngngvicácyêucuthchin cácmcchntrênthcñơn…Sdngmunày,tacóthxâydngcácchcnăngP hchi(undo),Thchin li(Redo),…bngcáchlưulicáclnhñãñưcth chinvàomtdanhsách(queue, historylist,log,…) Sauñó,chcndatheo danh sáchnàyñ PhchihocThc
CácñitưngCommandcóthñưcxlývàktha gingnhưcácñitưngkhác
Trang 24ngxcamtñitưngphthucvàotrngtháic añitưngñó,ngxca
nócóththayñivàothiñimchyvàphthuc vàotrngtháilúcñó
S ñiu khin có th quá ln và các nhánh trong cùn g mt cu trúc ñiu kin
Ifelse ph thuc vào các trng thái khác nhau ca ñi tưng Mu nàys tách mi
hành ñng s ñưc cài ñt khác nhau tuỳthuc vào c ác th hin khác nhau ca ñi
tưng.MuPhươngthctiêubn( Template Method)giúpchúngtañnhnghĩatht
cáchànhñngnàyvàchophépcáclpconcanóñ nhnghĩalicáchànhñngtuỳthucvàongcnhcth
1.3.4.2.Cutrúcmu
Hình1.7:CutrúcmuTemplateMethod
Trang 25Cácthànhphnthamgiavàocutrúcmu Template Method:
Lp AbstractClass làlptrutưngñnhnghĩakhungcathuttoánt
phươngthcmu( Template Method)
rong
Lp ConcreteClass cài ñt cách thc hin các hành vi c th
(PrimitiveOperation) Trong phương thc mu, các hành vi c th s ñư
Munàythưngñưcsdngtrongcáclpthưvin
ðâylànhnghàmcósntrongcácthưvinchophép
li
dùngñgicáchàmhook.ngưidùngkthavàcàiñt
thành mtchui mtxích, yêucuñưcgi sñưc
choñnkhicómtñitưngtrongmtxíchnhnl
.Cácñitưngsñưctchcduyttheochui mtxíchnàyyyêucucanó
Trang 26Hình1.8.1:CutrúcmuChainofResponsibility
Cóthmôtcutrúccamutheocáchsau:
Hình1.8.2:CutrúcmuChainofResponsibilityCácthànhphnthamgiavàocutrúcmu Chain of Responsibility:
Handler: ðnhnghĩamtgiaotip chungchovicnmgi yêucu.Càiñtmtcontrktni Successorticác Handlerkhác
ConcreteHandler: Nm gi yêu cu mà nó chu trách nhim Các
ConcreteHandlercóthtruyxutñitưngñưcliênktbicont rktniSuccessorcanó.Nunócóthnmgiyêucuñưcgiñn ,nósthchin Nu không thì nó s tip tc gi yêu cu cho Successor ca nó ñ
chuyênyêucuchoñitưngktip
Client: Kích hot yêu cu cho mt ñi tưng ConcreteHandle trong chui
mtxích.Khi Clientkíchhotmtyêucu,yêucunàysñưcgiñi theochuimtxíchchoñnkhicómtñitưng ConcreteHandlernàoñónhnyêucunàyñxlý
1.3.5.4.Cáctìnhhungápdng
Cónhiuhơnmtñitưngcóthnmgiyêucu
Trang 27Khimungimtyêucutinhiuñitưngkhácn haumàkhôngcnphixácñnhrõràngñólàñitưngnào.
Khitpcácñitưnggiyêucucnñưcxácñnh mtcáchlinhñng
1.3.5.5.Thunlivàhnch
Giúpgimsphthucgiacácñitưng:munày giiphóngmtñitưngkhibitñitưngkhácñangnmgiyêucu.Cñ itưnggivànhnñukhôngbit nhau và mt ñi tưng trong chui mt xích khô ng cn phi bit cu trúc cachuimtxích
Vicgiaonhimvchocácñitưngñưcthchin mtcáchlinhhot.Munàychophépphânphicôngvicgiacácñitưng mtcáchlinhhot,cóththêmhocthayñivicnmgicác yêucubngcáchth êmhaylàmthayñichuimtxíchthiñimchychươngtrình
không,yêucucóthñiñncuichuimtxíchmà khôngñưcxlý.Mtyêucucũngcóthkhôngñưcxlýnuchuimtxíchkhô ngñưccuhìnhmtcáchphùhp
Trang 28ConcreteStrategy:Trinkhaigiaodin Strategyñthhinmtgiithut cth.
Context:Tithiñimbiêndch,chsdngñitưngki u Strategykhixácñnhgiithutchovnñcnxlý.Tithi ñimchychươngtrình,nócungcpmtñitưnggiithutcththayth choñitưng Strategy.Cóthcungcpcontrchophép Strategytruyxutdliucañi tưng
StrategykhácnhauStrategychính
xácñthchin
Trang 29Trongmt Transaction Script,logicnghipvchyuñưctchctheocáctha
tácmàtacóththchinñưcvihthng.Gis yêucucachúngtalàñtphòng kháchsn,khiñócác
là thông tin ñu vào, truy sut
Cáchchungnhtñtchccác Transaction Scriptlàtasgpmtvài TransactionScriptvàomtlpñơn,milpsñnhnghĩamtvùngch ñca Transaction Script
Trang 30liênquan.ðâylàlàcáchtrctiplàlàphùhpn htñiviphnlncáctrưnghp.
Mtcáchnalàcác Transaction Scriptnmtrongchínhlpcanóbngcáchsdng
mu Command (như hình 1.11) Trong trưng hp này ta ñnh nghĩ mt siêu kiu
(supertype)chocáclnhñxácñnhmtvàiphươngthcthc thithunvi TransactionScript
Hình1.11:CutrúcmuTransactionScriptkthp vimuCommand
1.3.7.2.Cáctìnhhungápdng
Mu Transaction Scriptlàmtmuñơngin,phùhpchocácngdngcóí
nghipv,ñòihòikhôngnhiuvhiunăngcũngha ykinthc ðivicácng
dngphctphơn,mu Transaction Scripttrakhôngphùhpvàthưngkhônggi
Trang 31trong mtcluster màquytrìnhliênquan mt thit vidliumàchúngcnñlàm
vic Domain Model trn d liu vi quytrình, có nhiu các thuc tín h ña tr và mtmngphctpcácliênktvàsdngtínhktha
Hình1.12:CutrúcmuDomainModelsdngmuSt rategy
Vìcáchànhvicanghipvlàthayñithưngxuy ên,vìvyvicyutquan
trnglàlàmsaoñcácñitưngtrongtngnghip vnàycókhnăngchnhsa,to
lpvàkimthmtcácddàng.Thôngthưngtas haylàmlàgimñnmctiña
sphthucca Domain Modelvàocáctngkháccangdnghayñcácmuphân
tngkháccóítsphthucnhtcóthgia Domain Modelvàcácphnkháccah thng
Trang 32qun lý thông tin ña tng bi vì nó có quá nhiu ñ i tưng, vic ñưa tt c các ñi
tưngvàobnhstiêutnquánhiubnhvàm tnhiuthigian
Mtñiucnquantâmñivi Domain Modellàsphìnhlêncacácñitưng
Vídkhitaxâydngmtmànhìnhñxlýcácñơn hàng( Order),chúngtaphichúýrngmtshànhvi ñthàngchcnchochínhnó Nutañưattccácphương
thcnàyvàolp Orderthìkhiñólp Orderstrlênquálnbivìnóchanhiucác
1.3.9.MuCngdliucabng
1.3.9.1.Ýnghĩa
MuCngdliucabng( Table Data Gateway)môtmtñitưnghotñng
như mt ‘Cng’ vào mt bng trong CSDL Mt th hi n ca nó qun lý tt c các
dòngtrongbng
Trang 33Mt Table Data GatewaygittccáccâuSQLdùngñtruycpvàomtb
dòngthìtacóthápdngchotrưnghptrvm tdòng.Tuynhiênthìnhiungônngchtrvchotamtgiátrñơnl,nhiucâu truyvnmitrvnhiudòng
Mtvnñtươngtnalàtrvmtvàicutrúc dliuñơngin,vídnhưlàmtánhx.Mtánhxhotñngnhưngnóbtbuc dliuphiñưcsaochéprakhibnghilytCSDLvàotrongánhxñó.Vic sdngánhxñchuyndliu
cho các ñi tưng khác là mt cách thc không phù h p vì nó nh hưng ñn vickimtrathigiandch,vànócũngkhôngphilàm tgiaodinrõràng,ñiunàysgâyralinhưlà ngưidùngskhônghiu nhngth trong ánh xñó.Mt cách
Trang 34tươngttthơnñólàdùng Data Transfer Object(haylà
dùngñtovàñưcdùngnhngphnkháccang
Value Objectdng
).ðâylàñitưng
Nutañangsdngmt Domain Modelthìtacóthdùng Table Data Gatewayñ
trvcácñitưngmintươngng.Cómtvnñ vcáchtipcnnàythìchúngta
cnphicócácràngbuchaichiugiacácñitư ngminvà Gateway
ða phn khi s dng Table Data Gateway ta s cn mi Gateway cho mi bng trong CSDL, tuy nhiên trong các trưng hp ñơn gin ta có th có mt Table Data
Gatewayriênglñqunlýtoànbcácphươngthcchot tccácbng.Cũngcóth cnmt
Gatewaychonhiucác Viewhocthmchínhiucâutruyvnmàtakhônglưu
thànhcác ViewtrongCSDL.ðươngnhiêncác Table Data Gatewaydatrêncác Viewsthưngkhôngphicpnhtdliuvàvìthmànó skhôngcncácphươngthccp
nht.Tuynhiên,tacóththchinviccpnht chocácbngtrong Viewsauñóbao
Gateway
1.3.9.3.Cáctìnhhungápdng
Table Data GatewaylàmtmugiaodinCSDLñơnginnhthayñưcd ùng,nó
ánhxmtcáchchunxácvàocácbngtrongCSDLh ocdliukiubnghi.Nó
baogóicáclogictruycpñnngundliu Table Data Gatewayítkhiñưcsdng
vi Domain Modelbivì Data Mapperñưaramtscáchlytthơngia Domain ModellvàCSDL
Table Data Gateway rt phù hp vi mu Transaction Script Nhiu ngưi thưng
thíchdùng Data Transfer Object,nhưngñiuñótrakhônghiuqulmtrphita dùngData Transfer Objectñóchonhiumcñíchkhác
Mttrongnhngliíchcavicsdng Table Data Gatewaylàbaogóivictruycpdliuvàtrongcùngmtgiaodinmà ñóta cóthsdngcáccâutruyvn
SQLñthaotácviCSDLvàccácthtclưutr (StoredProcedures),hơnnacácthtclưutrthưngñưctchcnhưlàcác Table Data Gateway
1.3.10.Muðitưngchuynñidliu
1.3.10.1.Ýnghĩa
ðitưngchuynñidliu( Data Transfer Object)làmtmudùngñchad
liugiacáctintrìnhnhmlàmgimslngic ácthôngñip
Trang 35Khitalàmvicvimtgiaodintxanhư Remote Façade,miliginhưvythưngtnnhiuchiphí.Dovytascnphigi mslngi,haynóicáchkháclàchúng ta cn truyn nhiu d liu hơn trong mi ln gi Có mt cách ñ làmñưcñiuñólàsdngnhiuthams.Tuynhiênñiunà ygâykhókhănchoviclptrình,hơnnavicnàylàkhôngthñivicácngônng nhưlàJavakhimàgiátrnótrvchlàñơngiá
Giipháplàtoramt Data Transfer Objectñchattcdliucholngi.Nó
Transfer Objectthíchhp Data Transfer Objectthưngsmangnhiudliuhơnnhng
gì màñi tưngtxa yêucu,toànb các dliu nàyñưc mangvìscó khiñi
tưngtxacndùngñnnó.Vìchiphíchoñtr cacácligitxanêntthơnlà
cónhnglinơigihơnlàphithchinnhiu ligi
Data
Mt Data Transfer Objectthưngchanhiuhơnthayvìchmtñitưngri
l trên máy ch Nó cng gp d liu t tt c các ñi tưng trên máy ch mà ñi
tưngtxamunly.Vídnuñitưngtxayêu cudliuvñitưngðơn
hàng,ñitưng Data Transfer Objectñưctrvschadliuñơnhàng,kháchhàng,
cácmctrênñơnhàng,snphmtrênñơnhàng,thôn gtingiaohàng,…
êng
Trang 36Cáctrưngdliutrên Data Transfer Objectthưngrtñơngin,ñócóthlàcác
kiunguyênthy,làcáclpñơnginnhư String, Datehoccóthlàcácñilp DataTransfer Object khác ð chuyn ñi ñưc các ñi tưng trong Data Transfer Object
Thôngthưng,nu Data Transfer Objectlàñơnginthìtassdngñưccáccơ
ch chui hóa có sn Trong trưng hp ngưc li, n u ta không dùng ñưc cơ ch
chuihóatñngthìtasphittocơchchu ihóachoriêngmình
1.3.10.4.Cáctìnhhungápdng
Data Transfer Objectñưcsdngkhitacntruynnhiuñitưnggi ahaitintrìnhtrongmtligihàngriêngl.Cómtstr ưnghptươngthaydùng DataTransfer Object,ñólàvicdùngññơnginhóacácphươngthc Settingcónhiuthamshoccácphươngthc Gettingchacácthamsdưidngthambin
Trang 37ERP:EnterpriseResourcePlanningHochñnhngunl cdoanhnghip.ERM:EnterpriseResourceManagementQuntrngunl cdoanhnghip
Trang 38Vàothpniên1950,btñuxuthincáckháinim tptrungvàobnchcnăng cănbncaquátrìnhqunlýsnxutbaogm:
Slưngñthàngkinht(EOQ)
Lưngtnkhoantoàn(SafetyStock)
Danhsáchnguyênliu(BillofMaterialsBOM)
Trang 39Vàogiathpniên1960,cácchcnăngtrênñãcu thànhhthngMRP.Datrênstíchhpcácchcnăngcơbncaquátrình qunlýsnxut
Vàonhngnăm1975,hMRPñãñưcñnhnghĩavàhi ubitmtcáchñyñvàchínhxáchơn.Cũngktñóbtñuhìnhthành hthngMRPII.Slnlngia
MRPIIvàMRPñãbtñungaysaukhigiithiuMR PII Vicdnhmlncácthutngbtñutrongñàotovàñnhnghĩachung chungvMRPvàMRPII.Khinhngchuyêngiatưvnvàcácnhàhochñnhsd ngthutngMRPthìhcm
thykhôngrõràngkhitholunvMRPhayMRPII
TchcAPICS,làmttchccórtnhiukinhngh imvhthngMRP,ñãñnhnghĩaMRPthngnhttrongcuntñinbiêns onlnthchíncahnhưsau:
“MRPlàmttphpcôngnghsdngdliuvBO M,thôngtinkhovàlch
snxutñtínhtoánranhucunguyênvtliu
MRPñưarayêucuhubnhngñơnñthàngkhông cnthit
MRPñưaracácñxutñtiưuhoávicmuahàng bngcáchtínhtoánlithiñimcóthnhnnguyênvtliu(tnhàcung cp)vàthiñimthtscns hàngñóchosnxut
MRPdatrênslưnghàngcnsnxuttrongmtg iaiñonvà:
Thnhtlà:xácñnhslưngvàttccácnguyên vtliuthànhphn
ñsnxutmtloihàngñó
Thhailà:xácñnhcácyutvthigian.Thi ñimcncácnguyênliuvàthànhphntrongcáccôngñoncaquátrìn hsnxut
MRPdatrêncutrúcBOM,xemxétslưngnguyên
lưngñangtrênñưngv)vàxácñnhslưngtht
giaohàng(mànhàcungcphahn)nhmñápngm
liutnkho(thct,sscnmuathêmtrongthigiantcáchtiưuchosnxut.”CònMRPIIñưcñnhnghĩalà:
“Mtphươngpháphochñnhhiuqucácnguntài
Nónhmñnvichochñnhhotñngchotngñơn
chínhvàcókhnăngdtrùchocáctìnhhungxy
nguyêncadoanhnghip.vbphn,hochñnhtàiratrongquátrìnhsnxut
Nóñưctothànhtnhiuchcnăngriêngbit,li ênktlivinhau:
Hochñnhkinhdoanh
Hochñnhbánhàngvàgiaodch
Trang 40Hochựnhyêucunguyênvtliu
đuracahthngựưctắchhpvinhngbáocáo tàichắnhnhưlà:Khochkinhdoanh
ỘERPlàmththngthôngtinhưngktoánsdn
dinngưidùng,cơsdliuquanh,ngônngmá
htrmáytắnh,kintrúcclient/serverỢ
gkthutminhưgiao ytắnhthhthtư,phnmm
Tuynhiên, các chuyên gia cho rng mt ựnh nghĩa v ERP nên gm nhng
nghipvcnthitchohotựngsnxutkinhdoa nhbaogm:ktoán,snxut,phânphi,giaodch,bánhàng,vttư,chtlưngẦ Chắnhvìth,hthngERPựưcựnhnghĩalichắnhxáchơnnhưsau:
ỘERPlàchvitttcaEnterpriseResourcePlanni
mmgiúpchocáchotựngsnxutkinhdoanhhot
toàndin
ng.đólàmththngphnựngmtcáchhiuquvà