TRNG I HC M THÀNH PH H CHÍ MINH
KHOA CÔNG NGH THÔNG TIN
KHOÁ LUN TT NGHIP
NGHIÊN CU XÂY DNG NG DNG
QUN LÝ BÁN HÀNG TÍCH HP
MÔUN T HÀNG TRÊN THIT B DI NG
Tháng 8, Nm 2012
GVHD:
TS. Lê Xuân Trng
SVTH:
Hunh Huy Cng – 0851010025
Võ Công Khanh – 0851010124
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh
LI CÁM N
Kin thc là mt kho tàng vô giá, là mt hành trang vng chc nht đ vào đi, do đó
ngi truyn đt kin thc là nhng ngi rt đáng đc tôn vinh. Chính vì vy chúng em
xin giành trn trang đu tiên ca bài báo cáo thc tp tt nghip này kính xin gi đn các
quý thy cô trng i hc M TP.HCM lòng bit n chân thành và sâu sc.
Chúng em xin chân thành cám n toàn th Ban giám hiu trng i hc M
TP.HCM, cám n các th
y cô khoa Công ngh thông tin, nhng ngi đã dn dt chúng
em sut bn nm hc ti trng. c bit là li cám n chân thành đn thy TS. Lê Xuân
Trng đã tn tâm hng dn, giúp đ chúng em hoàn thành khóa lun tt nghip này.
Di s ch bo tn tâm ca quý thy cô đã truyn đt cho em nhng kin thc tht
vng vàng đ hòa nhp cùng vi công vic, cuc s
ng. ó là nhng k vt vô giá đi vi
chúng em.
Tuy nhiên, do vn kin thc có hn nên không tránh đc nhng sai sót, vì vy chúng
em rt mong nhn đc s ch bo và góp ý ca quý thy cô.
Mt ln na, chúng em xin gi đn quý thy cô li cm n chân thành nht và kính
chúc quý thy cô di dào sc khe và thành công trong công vic.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh
NHN XÉT CA GIÁO VIÊN HNG DN
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh
MC LC
CHNG 1: TNG QUAN 1
1.1 Gii thiu: 1
1.2 Mc đích làm đ tài: 1
1.3 Phng pháp nghiên cu: 1
1.4 Phm vi đ tài: 2
1.5 Nhng đóng góp ca đ tài: 2
1.6 B cc ca báo cáo: 2
CHNG 2: LP TRÌNH MNG TRÊN NN TNG DI NG WINDOWS PHONE 3
2.1 Nn tng di đng Windows Phone: 3
2.1.1 Tng quan: 3
2.1.2 Chi tit h điu hành Windows Phone 7: 3
2.2 Xây dng ng dng trong môi trng Windows Phone 7: 5
2.3 Mô hình lp trình mng trên nn tng di đng Windows Phone: 6
2.3.1 Mô hình lp trình mng: 6
2.3.2 Windows Communication Foundation: 7
CHNG 3: C S D LIU 14
3.1 T chc c s d liu phía máy ch: 14
3.1.1 Mô hình thc th kt hp: 14
3.1.2 Miêu t khái quát: 14
3.1.3 Mô hình quan h: 15
3.1.4 Bng d liu: 16
I. S dng “LINQ to Entities” trong truy xut c s d liu: 25
3.1.5 Khái nim: 25
3.1.6 Áp dng LINQ to Entities vào dch v WCF: 25
CHNG 4: HIN THC CHNG TRÌNH 29
4.1 Mô hình ng dng: 29
4.1.1 S đ hot đng: 29
4.2 Các chc nng trong ng dng bán hàng: 30
4.2.1 Chc nng đng nhp: 30
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh
4.2.2 Chc nng ly d liu t phía dch v và hin th trên ng dng Client: 31
4.2.3 Chc nng đt hàng: 32
4.2.4 Chc nng nhp kho: 34
4.2.5 Chc nng cp nht thông tin nhân viên: 36
4.2.6 Chc nng thay đi mt khu nhân viên: 37
4.2.7 Chc nng ly thông tin gi hàng đã to: 38
4.3 Các chc nng trong ng dng thu ngân: 39
4.3.1 Chc nng in hoá đn: 39
4.3.2 Chc nng thanh toán: 40
4.4 Các chc nng trong ng dng kho: 42
4.4.1 Chc nng xác nhn giao hàng: 42
CHNG 5: KT QU HIN THC 44
5.1 Giao din chng trình: 44
5.2 Kt lun: 60
5.2.1 u đim: 60
5.2.2 Hn ch: 60
5.2.3 Hng phát trin: 60
CHNG 6: Tham kho: 61
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 1
CHNG 1: TNG QUAN
1.1 Gii thiu:
Ngày nay, nghành dch v bán l ti nc ta đang phát trin mnh, các trung tâm
bán l xut hin khp mi ni và cnh tranh gay gc. mt trung tâm bán l tt ngoài
vic làm th nào đ có giá bán hp lý, hu mãi tt thì quy trình thanh toán sn phm phi
nhanh gn, tác phong làm vic ca nhân viên phi chuyên nghip. Hu nh hin nay các
trung tâm bán l vn còn hot đng th công, quy trình thanh toán còn ph thu
c nhiu
vào đi ng nhân viên. Vì vy, vic xây dng chng trình h tr bán hàng da trên nn
tng đi đng s làm quy trình bán hàng đn gin, chuyên nghip, ít sai sót hn
Vic áp dng công ngh thông tin vào các trung tâm bán l đã đc áp dng nhiu
quc gia phát trin. Quá trình thanh toán, x lý đn hàng đc h tr bi ng dng trên
máy tính giúp tránh đc các sai sót ca nhân viên, đng thi gim ti đc công vic
cho nhân viên bán hàng.
Trong gi
i hn ca đ tài này, ta s xây dng mt h thng qun lý trung tâm đin
máy tích hp môđun đt hàng trên thit b di đng vi các chc nng đ x lý mt đn đt
hàng, thêm, xóa, chnh sa d liu.
1.2 Mc đích làm đ tài:
Xây dng h thng qun lý bán hàng tích hp môđun bán hàng trên thit b di đng
vi mc đích gii quyt các khuy
t đim nêu ra phn 1.1. Trong ng dng này, quá
trình x lý mt đn hàng đc chia nh ra thành các khâu riêng bit nh đt hàng, thanh
toán, giao hàng to thành mt chu trình x lý khép kín và sau khi đn hàng qua mt bc
x lý trng thái ca nó s thay đi đ qun lý d dàng.
Mi bc trong vic bán hàng s đc hin thc thành các chc nng riêng bit, tn
dng ti đa kh nng x lý ca máy tính đ gi
m bt công vic cho nhân viên, rút ngn
thi gian giao dch, tn dng các k thut kim chng d liu đ gim ti đa các sai sót.
1.3 Phng pháp nghiên cu:
Nghiên cu WCF (Windows Communication Foundation) đ xây dng ng dng
qun lý theo mô hình dch v mng, tng tác vi c s d liu và cung cp các chc
nng ca ng dng. Ta s nghiên cu cách hot đng, cách truyn t
i d liu, các phng
pháp bo mt đ có th xây dng dch v bng WCF.
Nghiên cu các h qun tr c s d liu quan h đ trin khai h thng c s d
liu ca ng dng. Ta cn phân tích quy mô ca ng dng đ chn h c s d liu phù
hp.
Nghiên cu các h thng bán hàng thc t đ xây dng mô hình d liu, thit lp các
mi quan h.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 2
Nghiên cu lp trình trên thit b di đng Windows Phone 7 đ xây dng môđun bán
hàng trên thit b di. Cn nghiên cu các thành phn ca Windows Phone 7, nghiên cu
các các phn mn đ phát trin ng dng cho h điu hành này. Nghiên cu cách s dng
các điu khin trong h điu hành này.
1.4 Phm vi đ tài:
ng dng qun lý bán hàng trên thit b di đng đc xây dng đ áp dng vào các
trung tâm mua sm l
n có nhiu tng, nhiu khu vc, vi nhiu mt hàng và nghành hàng
khác nhau. Cho phép khách hàng đt hàng nhiu tng, khu vc do các nhân viên khác
nhau qun lý nhng ch cn thanh toán mt ln quy giao dch.
1.5 Nhng đóng góp ca đ tài:
tài này đã áp dng k thut lp trình mng và lp trình trên thit b di đng đ
khai thác s phát trin ca h thng mng và các u đim ca thi
t b di đng, giúp các
trung tâm bán hàng gii quyt các vn đ v nhân lc, cung cp cho khách hàng mt môi
trng mua sm hin đi, an toàn, ng dng s gim ti đa s li phát sinh trong lúc làm
vic. Vi nhng li th v công ngh hin ti thì kh nng áp dng đ tài trong thc t là
rt cao.
Ngoài ra, ng dng h tr bán hàng trên các thit b di đng còn đc xây dng theo
các chc nng riêng bit, d dàng tu chnh li đ đ phù hp vi tng mô hình bán hàng
trong thc t.
1.6 B cc ca báo cáo:
Chng 1: Gii thiu v đ tài, tình trng ng dng hin nay, mc đích xây dng,
đóng góp ca đ tài.
Chng 2: Tng quan v h điu hành trên thit b di đng, gii thiu h điu hành
di đ
ng Windows Phone 7.
Chng 3: Gii thiu mô hình lp trình mng, gii thiu công ngh Windows
Communication Foundation (WCF) đ xây dng mô hình hng dch v.
Chng 4: Trình bày h c s d liu, mô hình d liu, k thut kt ni.
Chng 5: Trình bày các gii thích.
Chng 6: Trình bày s đ hot đng và giao din ca chng trình.
Chng 7: Kt lun và hng phát trin ca ng dng.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 3
CHNG 2: LP TRÌNH MNG TRÊN NN TNG DI NG
WINDOWS PHONE
2.1 Nn tng di đng Windows Phone:
2.1.1 Tng quan:
Ngày nay mng li thông tin ph sóng toàn cu, các hãng vin thông cung cp các
dch v cho phép ngi s dng truy cp Internet ti bt c mi ni. ây là yu t m ra
k nguyên ca các thit b di đng, nh máy tính bng, smartphone… Có 3 điu đ đánh
giá s thành công ca mt thit b di đng đó là cu hình phn cng, nn tng h điu
hành, và các ng dng h tr cho h điu hành đó. Mt thit b di đng cn có cu hình
phù hp đ đáp ng các yêu cu ca h điu hành và ng dng, nu cu hình không đ s
làm gim tri nghim mà h điu hành và ng dng mang li cho ngi s dng. Tuy vy,
cu hình c
a các thit b ch đóng mt vai trò tng đi trong s thành công ca thit b,
h điu hành và h thng ng dng cho thit b mi đóng vai trò thc s quan trng.
Mt đ điu hành tt phi mang li nhng tri nghim mi m, thu hút ngi s
dng, đng thi phi cung cp cho nhà phát trin ng dng môi trng phát trin vi các
công c và công ngh hin đi đ xây dng các ng dng đáp ng nhng mong đi ca
ngi s dng. Mt s h điu hành cho các thit b di đng đang phát trin hin nay nh
IOS ca Apple, Andriod ca Google và Windows Phone 7 ca Microsoft.
ng dng bán hàng trên thit b di đng ca h h thng tr bán hàng này s s
dng nn tng Windows Phone 7 vì nó s
làm vic tt vi dch v WCF.
2.1.2 Chi tit h điu hành Windows Phone 7:
2.1.2.1 Kin trúc ca h điu hành Windows Phone 7:
Windows Phone 7 đc thit k da trên tiêu chí giúp lp trình viên d dàng to
nên các ng dng mng vi công ngh nn tng da trên .Net, Silverlight và XNA Frame
Work, vi nhng lp trình viên đã tng làm qua Silverlight thì vic chuyn sang Windows
Phone 7 là mt vic d dàng, không ch có th Microsoft còn u ái cho các nhà phát trin
vi vi
c to nên mt môi trng phát trin và thit k đn gin và có th chy đc trên
phn cng ca nhiu hãng khác nhau. Kin trúc ca Windows Phone 7 đc chia thành 4
thành phn chính:
2.1.2.1.1 Thành phn thc thi:
có mt cái nhìn toàn din v nn tng Windows Phone 7 ta cn tìm hiu v các
thành phn thc thi khác nhau ca nó.
Hai con đng phát trin chính ca Windows Phone 7 là các ng dng s dng công
ngh Silverlight và các trò chi đi đng đc t
o bng XNA Framework.
Silverlight là công ngh mi h tr vic phát trin các ng dng mng (Rich Internet
Application - RIA), Silverlight xut phát t WPF (Window Presentation Foundation),
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 4
dùng ngôn ng XAML (Extensible Application Markup Language) đ làm nn tng thit
k giao din ngi dùng và s dng .Net đ phát trin mã ngun, tuy vy SilverLight vn
yêu cu ngi s dng đu cui phi cài mt ng dng SilverLight nhúng (SilverLight
plug-in ).
Còn XNA Framework là mt nn tng mnh m bao gm hàm API mnh m phc
v cho đ ha, đng thi cng bao cha các phn mn phát trin, dch v, tài nguyên,
giao ti
p dùng d phát trin các trò chi có cht lng.
Hình 2-1: Các thành phn thc thi chính ca Windows Phone 7 (ngun th vin MSND –
Microsoft).
2.1.2.1.2 Dch v đám mây:
Cùng vi s ra đi ca Windows Phone 7, Microsoft đã cung cp cho nhà phát trin
mt máy ch da trên dch v đám mây, nhà phát trin có th khai thác máy ch này
trong các ng dng ca mình.
Có nhiu dch v mây mà nhà phát trin có th s dng, nh dch v thông báo, dch
v
này cung cp cách thc đ ta đy d liu và các tin nhn v thit b Windows Phone 7,
ta có th khai thác dch v này đ tao ra các dch v nh thông báo t s trn đu, cnh
báo thi tit…
Mt dch v có ý ngha thc tin cao đó là dch v đnh v v trí, nó cho phép ta truy
cp v trì đa lý hin thi ca ngi s dng, ta có th s dng d
ch v này đ to ra nhiu
ng dng có liên quan đn v trí đa lý nh ng dng theo dõi, ng dng tìm kim theo v
trí… dch v v trí này có u đim là không nhng xác đnh v trí da vào phn cng GPS
mà còn da vào các trm phát sóng, wifi đ tng đ chính xác.
2.1.2.1.3 Cng dch v:
Ngoài các dch v đám mây k trên, Mircosoft còn cung cp các cng dch v cho
phép nhà phát trin qun lý
ng dng.
Trong Windows Phone 7 vic h tr nhà phát trin trin khai và phân phi ng dng
đn ngi s dng đc chú trng rt nhiu. Windows Phone 7 cp mt kho ng dng
trc tuyn (Marketplace) giúp ngi s dng tìm kim và cài đt các ng dng, còn phía
nhà phát trin, h phi đng kí đ có th phân phi ng dng trên kho ng dng này. Tt
Silverlight XNA
Sensors Phone Media Data
.NET managed code
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 5
c ng dng đc ti lên kho ng dng s đc qun lý và kim tra nhm đm bo an
toàn cho ngi s dng.
Mt cng dch v tin li cho nhà phát trin đó là dch v thanh toán. Dch v này
cung cp các hàm API nó to ra ch đ thanh toán nh min phí, tr tin Bây gi nhà
lp trình đã có gii pháp d dàng đ đnh hng ng dng theo dng ph
n mn min phí,
ng dng có phí, ng dng tính phí hàng tháng và nhiu la chn khác.
2.1.2.1.1 Các công c:
Thành phn cui cùng trong nn tng Windows Phone 7 là các công c phát trin.
Nó s dng Visual Studio là công c phát trin ch lc, hu nh mi kh nng ca
Windows Phone 7 đu đc khai thác và th hin thông qua Visual Studio. Bên cnh còn
có công c Expression Blend, theo cách c, các nhà thit k phi to giao din ngi dùng
trong mt công c thit k riêng, đ
iu này làm cho nhà phát trin khó có th tng dng
hoàn toàn u đim ca giao din đc to ra. Vi Expression Blend, nó cho phép các nhà
thit k giao din làm các tp tin ca d án nh các nhà phát trin, đng thi h có th
truy cp các tp tin này bng các công c thit k không tn ti trên Visual Studio thng
ch tn ti trên các phn mn thit k đc bit đ to nên giao din ngi dùng.
2.2
Xây dng ng dng trong môi trng Windows Phone 7:
Nhà phát hành cung cp mt môi trng phát trin min phí là Visual Studio
Express và gói cài đc phát trin Windows Phone 7. Khi bt đu chng trình Visual
Studio, bn s thy màn hình khi đng, t trang này bn có th to mi mt ng dng
Windows Phone 7 hoc truy xut nhanh ng dng mà bn đã làm vic gn đây.
Visual Studio cung cp nhiu tính nng thng đc thy trong các môi trng phát
trin ng dng. Thông qua c
a s Solution Explorer bn có th thy đc các tp tin và
th mc ca đ án di dng cây th mc, bn có th di chuyn các ca s trong Visual
Studio và sp xp chúng theo ý mun ca bn. Ngoài ra, bn cng có th truy xut mt
vài thanh công c có ích trong vic phát trin đ án.
Các bc to mt ng dng Windows Phone 7:
Bc 1: M chng trình Visual Studio 2010 Express Edition và chn File New
Project.
Bc 2: trên cùng ca c
a s New Project la chn mu đ án Windows Phone
Application và đt tên là HelloWindowsPhone7. hiu k hn v ng dng Windows
Phone ta s tìm hiu các tp tin có trong ng dng va to ra.
Sau khi to xong, bn s đc thy giao din vi màn hình phân chia nh hình bên
di. Mt phn ca màn hình cho thy giao din chng trình gi lp Windows Phone 7,
phn còn li cho thy mã ngun XAML tng ng vi giao din.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 6
Nhìn vào ca s Solution Explorer, ta ng dng Windows Phone 7 cha mt tp tin
App.xaml, tp tin đi din cho toàn b ng dng. Tp tin App.xaml nm gi bt k tài
nguyên toàn cc trong ng dng. Mt ng dng Windows Phone 7 có tt c 4 s kin
chính là s kin khi đng, hot đng, vô hiu hóa, đóng ng dng. Các mã ngun đ x
các s kin đc này đt trong tp tin App.xaml.cs. V c
bn ta có mt thành phn .xaml
nm gi tt c s khai báo mã XAML đ to nn giao din ng dng, khai báo các hàm,
các tài nguyên, và tng ng s có tp tin code-behind .xaml.cs đ hin thc mã ngun
liên quan đn trang .xaml.
chy chng trình này trong chng trình gi lp Windows Phone bng cách
nhp vào biu tng “Play” trên thanh công c, đây là cách nhanh nht đ chy mt đ án
Windows Phone. Nu không có li trong quá trình biên dch thì Visual Studio bt đu
chng trình gi
lp và chy ng dng mi ca bn trong mt thit b Windows Phone 7
o.
2.3 Mô hình lp trình mng trên nn tng di đng Windows Phone:
2.3.1 Mô hình lp trình mng:
2.3.1.1 Khái nim:
Ngày nay, h thng mng phát trin nhanh, nhu cu v các ng dng phân tán, s
dng các công ngh mng đ thc hin các tác v là xu hng phát trin ca phn mn.
Mt mô hình ph bin đ hin thc các ng dng nh th là mô hình lp trình Client-
Server hay còn gi là kin trúc hng dch v (Server-Oriented Architectures - SOA),
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 7
chng trình server cung cp các tác v đ thc hin các công vic nht đnh, chng
trình client s thông qua các giao thc mng đ s dng các thao tác mà dch v cung cp.
Mô hình này hoàn toàn phù hp vi h thng qun lý bán trên thit b di đng trong
đ tài này, các ng dng bán hàng trên các thit b di đng đc xem nh các client và
máy ch chy dch v s cung cp các hàm chc nng x lý công vic theo yêu cu và
qun lý c s
d liu ca toàn h thng.
2.3.1.2 Gii pháp:
Có nhiu công ngh đ xây dng các dch v WEB nh: HTTP, Java, Java Web
Services Developers Pack và Windows Communication Foundation. Trong đó WCF
(Windows Communication Foundation) là công mnh, h tr đy đ chc nng đ xây
dng mt dch v Web, nó còn cho phép các nn tng khác nhau giao tip vi nhau.
2.3.2 Windows Communication Foundation:
2.3.2.1 Gii thiu:
Windows Communication Foundation (WCF) là mt h thng các đi tng đc
cài đt trong .NET Framework đc dùng đ xây d
ng ng dng hng dch v. Khi s
dng WCF, ta có th gi d liu nh mt thông đip không đng b t dch v đu cui
đn các đim cui. Mt dch v đu cui có th là mt phn ca toàn b dch v đc cài
đc trên IIS, hoc đó là mt dch v cài đt trong mt
ng dng. Mt đim cui có th là
chng trình máy khách có kh nng gi yêu cu d diu đn các máy ch đu cui.
Thông đip có th đn gin nh mt kí t, mt t đc gi nh XML hoc phc tp nh
chui d liu nh phân. Sau đây là mt vài ví d v các trng hp ta có th dùng WCF:
- Các d
ch v x lý các giao dch kinh doanh đòi hi tính an toàn và bo mt.
- Các dch v cung cp d liu theo thi gian thc, nh dch v qun lí giao
thông và các dch v theo dõi khác.
- Các dch v hi thoi trc tuyn cho phép hai ngi giao tip hoc trao đi d
liu.
- Các ng dng thm dò hoc các dch v lu tr d liu trc tuyn.
- Các dch v đóng vai trò nh các ngun cung cp d liu thi gian thc.
Windows Communication Foundation (WCF) đc thit k đ giúp ngi s dng
tip cn vic xây dng và qun lý dch v Web và khách hàng dch v Web.
2.3.2.2 Các tính nng ca Windows Communication Foundation (WCF):
2.3.2.2.1 Hng dch v (Service Oriented):
Mt kt qu ca vic s dng các tiêu chun WS (Web Server) trong WCF là cho
phép ta xây dng các ng dng theo hng dch v. Kin trúc hng dch v (Service
Oriented Architecture - SOA) da vào dch v Web đ gi và nhn d liu.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 8
Hình 3-1: Mô hình hot đng ca dch v Web. (ngun th vin MSND – Microsoft)
Ngoài ra, các dch v xây đng trên WCF có li th là mn do thay v cng nhc,
mn do đây có ngha là chng trình khách hàng đc to trên các nn tng khác nhau
đu có th kt ni đn các dch v đc vit trên WCF min là đm bo các yêu cu thit
yu đc đáp ng, nói cách khác WCF cho phép các nn tng khác nhau giao ti
p vi
nhau.
2.3.2.2.2 Kh nng cng tác (Interoperabitily):
WCF đc b sung nhiu tiêu chun hin đi cho đ to ra kh nng tng tác ca
dch v Web. WCF cung cp mt s giao thc giao thc dch v web, nhiu giao thc
trong s đó có các tùy chn và phn m rng cho phép ngi s dng cài đt theo mc
đích riêng.
2.3.2.2.3 Nhiu mô hình tin nhn (Multiple Message Patterns):
Tin nhn đc trao đi d
a trên mt trong s các mô hình sau:
- Mô hình yêu cu - tr li: mt thit b đu cui gi yêu cu d liu đn thit b
đu cui th hai, thit b đu cui th hai tr li yêu cu va nhn, đây là mô
hình đc s dng thng xuyên nht.
- Mô hình mt hng: mt thit b đu cui s gi mt tin nh
n mà không mong
đi s tr li t đích đn.
- Mô hình có kt ni: đây là mô hình phc tp hn so vi nhng mô hình trên,
mô hình cho phép hai thit b đu cui thit lp kt ni và trao đi d liu qua
li, tng t mt chng trình trao đi nht thi.
Ngoài các m hình trên ta còn có th to ra mô hình tin nhn riêng da vào các hp
đng trong WCF.
Host
Service
M
ethod
M
ethod
M
ethod
Client
proxy
Client
Code
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 9
2.3.2.2.4 Siêu d liu (Service Metadata):
Siêu d liu (Metadata) là mt tp hp d liu ch ra các mô t v dch v, các thao
tác khác nhau mà dch v cung cp, các bin d liu mà các thao tác yêu cu và các kiu
d liu mà các thao tác này tr v cho khách hàng. Nói cách khác, siêu d liu ch ra các
hp đng. Vi các thông tin này khách hàng có th giao tip vi dch vu.
Siêu d liu có
th đc công b trên HTTP và HTTPS hoc s dng Web Service Metadata Exchange
tiêu chun (WS-Metadata Exchange). WCF h tr siêu d liu và áp dng các tiêu chun
nghành công nghip nh WSDL, XML Schema và WS-Policy.
Hình 3-2: Mô t quá trình trao đi siêu d liu gia Client-Server. (ngun th vin
MSND – Microsoft)
Trong quá trình xây dng, chng trình phía khách gi thông đip yêu cu đc
đnh ngha theo tiêu chun WS – Metadata Exchange và gói tin WSDL đc dch v gi
li phía khách hàng. Chng trình phía khách hàng s s dng gói tin WSDL đ t
o ra lp
trung gian (proxy class) và tp tin cu hình, hai th này s đc s dng trong quá trình
thc thi ca chng trình khách đ giao tip vi máy ch.
2.3.2.2.5 Hp đng d liu (Data Contract):
Windows Communication Foundation (WCF) s dng mt thành phn gi là Data
Contract Serializer đ bin đi d liu thành chui và ngc li (bin d liu thành XML
và ngc li). i vi các kiu d liu c bn nh s
nguyên và chui, cng nh các kiu
d liu đc s dng nh kiu c bn nh Datetime, XmlElement có th đc bin đi
mà không cn các s chun b nào khác và xem nh đã có các hp đng d liu mc đnh.
Các loi d liu mi phc tp hn ta cn phi đnh ngha các hp đng d liu (Data
Contract) đ có th chui hoá
đc. Theo mc đnh s da vào hp đng d liu và chui
hoá tt c kiu d liu công khai có th thy đc. Tt c các tính cht đc/ghi và các ct
ca kiu d liu s đc chui hoá, ta có th la chn các thành phn nào đc chui hoá
bng cách s dng lp IgnoreDataMemberAttribute. Ngoài ra, ta có th to ra các hp
đng d liu mt cách rõ ràng bng các s d
ng lp DataContractAttribute và
WCF Client
Endpoint
Proxy Class
(C# or VB)
App.config
C B A
WCF Service
MEX Endpoint
C B A
Endpoint
C B A
Endpoint
C B A
GetMetaData
WSDL
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 10
DataMemberAttribute. DataContractAttribute đ ch ra mt hp đng kiu d liu, thuc
tính này có th dùng cho các lp, các cu trúc, các bn lit kê (classes, structures,
enumerations). Thuc tình DataMemberAttribute sau đó phi đc dùng cho cho mi
thành viên trong kiu d liu đ ch ra cách thành phn này là mt thành phn d liu và
nó s đc chui hoá. Di đây là mô hình th hin vic phía dch v và phía khách s
dng chung các hp đng d liu đ ánh x d
liu.
Hình 3-3: Mô hình th hin vai trò ca các hp đng d liu. (ngun th vin MSND –
Microsoft)
2.3.2.2.6 Bo mt:
Windows Communication Foundation (WCF) là nên tng lp trình mng da trên
các thông đip SOAP và vic bo đm an toàn cho các thông đip SOAP gia máy ch và
máy khách là yêu cu cn thit. WCF cung cp mt nn tng linh hot và kh nng tng
tác đ trao đi d liu an toàn da trên c c s h
tng bo mt hin ti và các tiêu chun
an ninh đc công nhn cho SOAP. Trong các ng dng phân tán, các thông đip có th
chuyn t nút này đn nút khác, thông qua firewall, lên trên internet, thông qua nhiu
trung gian SOAP, và đây chính là mi nguyên him các ngi s dng xu có th li
dng tính cht này đ tn công dch v theo các cách nh:
- Theo dõi các thông đip trên mng đ ly thông tin. Ví d, trong mt giao dch
chuyn tin trc tuyn t
mt tài khon này mt tài khon, k tng công có th
chn các thông đip và thu thp các thông tin bên trong đ ly s tài khon, mt
khu sau đó thc hin chuyn tin t tài khon b tng công.
- Thc th la đo hot đng nh mt dch v mà khách hàng không nhn thy.
Ví d, k la đo hot đng nh mt d
ch v trc tuyn, ngn chn các thông
đip t khách hàng đ có đc các thông tin nhy cm. Sau đó k la đo s
dng tài khon b đánh cp đ thc hin hành vi nguy him.
Client applicaton
Proxy A
Proxy A
Service applicaton
Service A
Service A
DataContracts.
invoke
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 11
- Thay đi ni dung thông đip đ đt đc mc đích khác so vi ý đnh ca
khách hàng. Ví d, k la đo thay đi s tài khon mà tin đc gi đn trong
thông đip bng mt tài khon gi mo.
- Lp thông đip. Ví d, Mt ca hàng sách trc tuyn nhn đc hàng trm đn
đt hàng và gi sách đn khách hàng dù h không th
c hin yêu cu.
- Tng công làm dch có kh nng ca mt dch v đ xác thc khách hàng.
Trong trng hp này, dch v không th bo đm khách hàng đc quyn thc
hin mt giao dich nào đó.
tránh các mi nguy him trên. Các c ch bo mt ca WCF cung cp các đm bo
sau:
- Xác thc dch v đu cui.
- Xác thc khách hàng.
- Toàn v
n thông đip.
- Thông đip bí mt.
- Phát hin lp thông đip.
2.3.2.2.7 Cung cp nhiu phng thc truyn ti và mã hoá:
Thông đip có th đc gi thông qua bt kì giao thc truyn ti và mã hoá xây
dng sn. Giao thc truyn ti và mã hoá ph bin nht là gi các thông đip SOAP đc
mã hoá bng giao thc Hyper Text Tranfer Protocol (HTTP) đ s dng trên World Wide
Web. Ngoài ra WCF còn cho phép gi tin nhn qua TCP, c
ch đng ng hoc
MSMQ. Các thông đip này có th đc mã hoá di dng vn bn hoc s dng mt
đnh dng nh phân ti u. D liu nh phân có th đc gi mt cách hiu qu bng cách
s dng tiêu chun MTOM. Nu không có giao thc truyn ti và mã hoá phù hp vi
nhu cu s dng ta hoàn toàn có th to ra giao thc truyn ti và mã hoá tu
chính .
2.3.2.2.8 Hàng đi và phiên làm vic đáng tin cy (Queues and Reliable
Session ):
Hàng đi và phiên làm vic đáng tin cy là các chc nng ca Windows
Communication Foundation (WCF) cho phép trao đi các thông đip đáng tin cy. Trao
đi các thông đip đáng tin cy tc là đm bo thông đip t ngun s đn đc đích, nu
có sy ra các s c trong quá trình truyn ti nó s khôi phc và truyn ti li, đm bo
quá trình truy
n ti thông đip đc thành công dù chng trình phía ngun hoc phía
đích không đng thi hot đng. Mt đc đim ca vic gi các thông đip đáng tin cy là
đ tr cao, đ tr tc là khon thi gian đ thông đip đi t ngun đn đích. Do đó, đ
thc hin đc vic này thì WCF cung cp các gii pháp sau:
Phng pháp th nht là phiên làm vi
c đáng tin cy, phng pháp này cho phép
gi các thông đip đáng tin cy vi đ tr thp, ngun và đích phi đng thi chy cùng
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 12
lúc . Phiên làm vic đáng tin cy s dung giao thc WS-ReliableMessaging đ truyn ti
các thông dip SOAP.
Hình 3-4: mô t quá trình truyn ti dùng giao thc WS-ReliableMessaging. (ngun th
vin MSND – Microsoft)
Phng pháp th hai là s dng hàng đi (Queues) trong Windows Communication
Foundation (WCF), cách này cho phép gi các thông đip đáng tin cy dù ngun và đích
không hot đng đng thi. Tuy vy đây là phng pháp đòi hi chi phí v đ tr cao.
Hàng đi trong WCF đc xây dng da trên MSMQ (còn gi là Message Queuing).
MSMQ là mt tu chn ca Windows, nó đc xem nh là mt dch v NT. MSMQ chu
trách nhim bt các thông đip cn gi trong hàng đi truyn ti di danh ngha là ngun
và chuyn đn các hàng đi đích. Hàng đi đích s nhn thông đip di danh ngha phía
đích và sau đó s gi thông đip bt c lúc nào có yêu cu t đích đn.
Hình 3-5: mô t cách hot
đng ca hàng đi trong WCF. (ngun th vin MSND –
Microsoft)
2.3.2.2.9 H tr giao dch (Transactions):
Giao dch (Transactions) cho phép ta nhóm mt loi các công vic hoc thao tác
thành mt nhóm, mà nhóm này là đn v nh nht không th chia nh ra đc na. Mt
giao dch là mt tp hp các thao tác có các tính cht sau:
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 13
- Tính nguyên t (Atomicity): Khi thc hin các thao tác trong mt giao dch thì
toàn b các thao tác phi thành công, nu có mt li nào xy ra trong quá trình
thc hin giao dch thì toàn b giao dch b hy b và khôi phc toàn b trng
thài nh trc khi giao dch đc gi.
- Tính nht quán (Consistency): S thc hin ca mt giao dch là cô lp (Không
có giao dch khác thc hin đng thi) đ bo tn tính nht quán ca CSDL.
-
Tính cô lp (Isolation). Cho dù nhiu giao dch có th thc hin đng thi, h
thng phi đm bo rng đi vi mi cp giao dch Ti, Tj , thì hoc Tj kt thúc
thc hin trc khi Ti khi đng hoc Tj bt đu s thc hin sau khi Ti kt
thúc. Nh vy mi giao dch không cn bit đn các giao dch khác đang thc
hin đng thi trong h th
ng.
- Tính bn vng (Durability). Sau mt giao dch hoàn thành thành công, các thay
đi đã đc to ra đi vi CSDL vn còn hiu lc ngay c khi xy ra s c h
thng.
Windows Communication Foundation (WCF) cung cp mt tp hp phong phú các
tính nng cho phép to ra các giao dch phân phi trong các ng dng Web. Giao dch
trong WCF h tr giao thc WS-AtomicTransaction (WS-AT) cho phép to các lung
giao dch đn các ng dng tng thích,chng hn nh các dch v Web tng thích s
dng công ngh ca hãng th 3. WCF cng h tr giao thc giao dch OLE.
Ta có s dng mt tp tin cu hình sau đó thit lp các ràng buc đ cho phép hoc
vô hiu hoá các lung giao dch. Cng nh thi
t lp mt giao thc giao dch mong mun
trên mt ràng buc. Ngoài ra còn thit lp thi gian ht hn (time-out) ca mt giao dch
cp đ dch v bng tp tin cu hình.
Các giao dch cha trong không gian tên System.ServiceModel cho phép thc hin
các thao tác sau:
Thit lp thi gian ht hn ca giao dch và to các b lc bng cách s dng thuc
tính ServiceBehaviorAttribute.
Kích hot chc nng giao dch và thit l
p các thao tác sau khi hoàng thành mt giao
dch bng thuc tính OperationBehaviorAttribute.
S dng các thuc tính ServiceContractAttribute và OperationContractAttribute trên
mt phng thc hp đng đ yêu cu, cho phép hoc t chi mt giao dch.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 14
CHNG 3: C S D LIU
3.1 T chc c s d liu phía máy ch:
3.1.1 Mô hình thc th kt hp:
Hình 4-1: mô hình thc th kt hp ca CSDL bán hàng.
3.1.2 Miêu t khái quát:
H thng sn phm trong trong trung tâm mua sm đc chi thành các nghành hàng,
trong mi nghành hàng li đc chia làm các loi hàng nh hn. Ví d: đin gia dng là
mt nghành hàng, trong đin gia dng có ba loi hàng là tivi, t lnh, đu đa. Mi lo
i
hàng li có các sn phm trong đó, tu vào loi sn phm s có đn v tính khác nhau.
Mi sn phm cha thêm thông tin nhà cung cp đ d dàng tìm kim và qun lý.
Nhân viên đc t chc theo tng b phn, thông tin quyn hn ca nhân viên giúp
nhn bit đc công vic ca nhân viên đó trong h thng bán hàng. Ví d: qun tr, bán
hàng, kho,…Da vào quyn hn ca nhân viên mà h thng cho phép nhân viên đc
hoc không đc phép thc hin mt tác v c th.
B Phn
Chi Tit
tHàng
Chi Tit
Nhp Kho
t Hàng
n
V Tính
Hoá n
Khách Hàng
Khuyn
Mãi
Loi Hàng
Loi
Thanh Toán
Ngành
Hàn
g
Nhà Cung
C
p
Nhân Viên
Nhp Kho
Quyn Hn
Trng
Thái
Sn Phm
T
T
T
T
T
T
T
T
T
T
TT
T
T
T
T
T
T
T
1
N
N
1
N
1
N
N
1
N
1
1
N
1
1
N
N
N
1
1
1
1
1
N
N
N
N
1
1
1
N
N
1
N
1
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 15
Nhân viên bán hàng có th thc hin mt trong các tác v to, cp nht, xoá phiu
đt hàng cho khách hàng có yêu cu, mi thông tin khách hàng s đc lu vào mt bng,
các thông tin đó s cn s dng li trong quá trình in hoá đn. Phiu đt hàng s mang
nhng trng thái khác nhau, ví d: Ch thanh toán, ã thanh toán, ã giao hàng,…Da
vào thông tin trng thái ca phiu đt hàng mà nhân viên s có nhng tác v phù hp đi
vi nhng phiu đt hàng đ
ó.
Sau khi khách hàng đã thanh toán thì phiu đt hàng đó s cp nht trng thái mi và
đng thi s ly ra các thông tin cho quá trình in hoá đn, các thông tin này s đc lu
tr trong mt bng riêng, ví d: nhân viên nhn tin, khách hàng, loi thanh toán,…
3.1.3 Mô hình quan h:
Hình 4-1: mô hình quan h ca CSDL bán hàng
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 16
3.1.4 Bng d liu:
Các bn đc s dng dng trong c s d liu:
Bng nghành hàng:
Tên field Kiu d liu Chiu dài Din gii
Ma Int Mã nghành hàng
Ten Nvarchar 250 Tên nghành hàng
Mieuta Nvarchar MAX Miêu t nghành hàng
Conquanly Bool Bin qun lý
Ý ngha các trng:
Ma: là khoá chính, ch ra mã nghành hàng do trung tâm mua sm quy đnh.
Ten: tên ca nghành hàng.
Mieuta: miêu t ca mi nghành hàng.
Conquanly: cho bit nghành hàng còn qun lý hay không.
Bng loi hàng:
Tên field Kiu d liu Chiu dài Din gii
Ma Int Mã loi hàng
Ten Nvarchar 250 Tên loi hàng
Manh Int Mã nghành hàng
Mieuta Nvarchar MAX Miêu t loi hàng
Hinhanh Image Chui byte hình nh
Conquanly Bool Bin qun lý
Ý ngha các trng:
Ma: là khoá chính, ch ra mã ca loi hàng do trung tâm mua sm quy đnh.
Ten: tên ca loi hàng.
Manh: là khoá ngoi, mã nghành hàng tham chiu đn bng nghành hàng. Ch ra
loi hàng này thuc nghành hàng nào.
Mieuta: Miêu t mi loi hàng
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 17
Hinhanh: hình nh logo ca nghành hàng.
Conquanly: cho bit loi hàng còn qun lý hay không.
Bng sn phm:
Tên field Kiu d liu Chiu dài Din gii
Ma Int Mã sn phm
Ten Nvarchar 250 Tên sn phm
Madvt Int Mã đn v tính
Malh Int Mã loi hàng
Manhcc Int Mã nhà cung cp
Dongia Money Giá sn phm
Hinhanh Image Chui byte hình nh
Baohanh Int S tháng bo hành
Thue Float 0->1 T l thu sut
Mieuta Nvarchar MAX Miêu t sn phm
Tinhnang Text Tính nng sn phm
Tonkhotoithieu Int Tn kho ti thiu
Tonkhohientai Int Tn kho hin ti
Conquanly Bool Bin qun lý
Makm Int Mã khuyn mãi
Ý ngha các trng:
Ma: là khoá chính, ch ra mã ca sn phm do trung tâm mua sm quy đnh.
Ten: tên ca mi sn phm.
Madvt: là khóa ngoi, tham chiu đn bng đn v tính, ch ra đn v tính ca sn
phm là gì. Vd: Cái, Thùng, Kg…
Malh: là khóa ngoi, tham chiu đn bng loi hàng, ch ra sn phm thuc loi hàng
nào.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 18
Manhacc: là khóa ngoi, tham chiu đn bng nhà cung cp, ch ra sn phm này là
ca nhà cung cp nào.
Dongia: n gi ca sn phm, khi tính tin đn giá s đc nhân vi thu sut và
khuyn mãi (nu có) đ cho ra giá bán.
Hinhanh: hình nh ca sn phm.
Baohanh: s tháng bo hành ca sn phm.
Thue: thu sut mà mi sn phm phi chu, đc lu di dng s thc. Ví d:
10% đc lu là 0.1
Mieuta: Miêu t ca sn phm.
Tinhnang: Các tính nng k thut ca sn phm.
Tonkhotoithieu: s lng tn kho ti thiu ca sn phm.
Tonkhohientai: s lng tn kho hin ti
Conquanly: cho bit sn phm còn đc qun lý hay không.
Makm: là khóa ngoi, tham chiu đn bn khuyn mãi. Ch ra sn phm này có đang
đc hng chng trình khuyn mãi nào không.
Bng đn v tính:
Tên field Kiu d liu Chiu dài Din gii
Ma Int Mã đn v tính
Ten Nvarchar 250 Tên đn v tính
Mieuta Nvarchar MAX Miêu t
Conquanly Bool Bin qun lý
Ý ngha các trng:
Ma: là khóa chính, ch ra mã ca mi loi đn v tính, là s nguyên.
Ten: tên mi loi đn v tính.
Miêu t: Miêu t, din gii ca mi loi đn v tính.
Conquanly: cho bit đn v tính này còn qun lý hay không.
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 19
Bng khuyn mãi:
Tên field Kiu d liu Chiu dài Din gii
Ma Int Mã đn v tính
Ten Nvarchar 250 Tên đn v tính
Giamgia Float T l gim giá
Ngaybatdau Datetime Ngy bt đu
Ngayketthuc Datetime Ngày kt thúc
Conquanly Bool Bin qun lý
Ý ngha các trng:
Ma: là khóa chính, ch ra mã ca chng trính khuyn mãi, là s nguyên.
Ten: tên ca chng trình khuyn mãi.
Giamgia: t l gim giá ca khuyn mãi, đc lu di dng s thc. Ví d: khuyn
mãi 10% đc lu là 0.1
Ngaybatdau: ngày bt đu ca khuyn mãi.
Ngayketthuc: ngày kt thúc khuyên mãi. Sau ngày này chng trình không còn hiu
lc
Conquanly: ch ra chng trình khuyn mãi còn đc qun lý hay không.
Bng nhân viên:
Tên field Kiu d liu Chiu dài Din gii
Ma Int Mã nhân viên
Ho Nvarchar 250 H
Ten NvarChar 250 Tên
Ngaysinh Datetime Ngày sinh
Gioitinh Boll Gii tính
Cmnd Int Chng minh dân dân
GVHD: TS. Lê Xuân Trng Khoá Lun Tt Nghip
SVTH: Hunh Huy Cng – Võ Công Khanh Trang 20
Diachi Nvarchar Max a ch
Dienthoai Int in thoi
Email Nvarchar 250 a ch email
Chucvu Nvarchar 250 Chc v
Mabp Int Mã b phn
Maql Int Mã qun lý
Maqh Int Mã quyn hn
Matkhau Varchar 250 Mt khu
Conquanly Bool Bin qun lý
Ý ngha các trng:
Ma: là khoá chính, ch ra mã ca tng nhân viên.
H: h ca nhân viên.
Ten: tên ca nhân viên.
NgaySinh: ngày sinh ca nhân viên.
Gioitinh: gii tính ca nhân viên, quy c true là nam, false là n.
Cmnd: s chng minh nhân dân.
Diachi: đa ch liên lc ca nhân viên.
DienThoai: đin thoi liên lc.
Email: đa ch email liên lc ca mi nhân viên.
Chc v: Miêu t chc v hin ti ca nhân viên.
Mabp: là khóa ngoi, tham kho đn bng b phn. ch ra nhân viên thuc b phn
nào.
Maql: là khóa ngoi, tham kho đn chính bn nhân viên, ch ra nhân viên thuc
quyn qun lý ca ai.
Maqh: là khóa ngoi, tham kho đn bn quyn hn. Sau khi đng nhp vào h
thng t bin quyn hn này mà ta quy đnh thao tác mà nhân viên đc thc hin.
MatKhau: mât khu ca mi nhân viên đ đng nhp vào h thng.
Conquanly: cho bit nhân viên còn đc công ty qun lý hay không.