KHOA CÔNG NGH THÔNG TIN... Ch ra lo i hàng này thu c nghành hàng nào... Cmnd: s ch ng minh nhân dân... Ch n “Generate from database”.
Trang 1KHOA CÔNG NGH THÔNG TIN
Trang 2L I CÁM N
Ki n th c là m t kho tàng vô giá, là m t hành trang v ng ch c nh t đ vào đ i, do đó
ng i truy n đ t ki n th c là nh ng ng i r t đáng đ c tôn vinh Chính vì v y chúng em xin giành tr n trang đ u tiên c a bài báo cáo th c t p t t nghi p này kính xin g i đ n các quý th y cô tr ng i h c M TP.HCM lòng bi t n chân thành và sâu s c
Chúng em xin chân thành cám n toàn th Ban giám hi u tr ng i h c M TP.HCM, cám n các th y cô khoa Công ngh thông tin, nh ng ng i đã d n d t chúng
em su t b n n m h c t i tr ng c bi t là l i cám n chân thành đ n th y TS Lê Xuân
Tr ng đã t n tâm h ng d n, giúp đ chúng em hoàn thành khóa lu n t t nghi p này
D i s ch b o t n tâm c a quý th y cô đã truy n đ t cho em nh ng ki n th c th t
v ng vàng đ hòa nh p cùng v i công vi c, cu c s ng ó là nh ng k v t vô giá đ i v i chúng em
Tuy nhiên, do v n ki n th c có h n nên không tránh đ c nh ng sai sót, vì v y chúng
em r t mong nh n đ c s ch b o và góp ý c a quý th y cô
M t l n n a, chúng em xin g i đ n quý th y cô l i c m n chân thành nh t và kính chúc quý th y cô d i dào s c kh e và thành công trong công vi c
Trang 3NH N XÉT C A GIÁO VIÊN H NG D N
Trang 4
M C L C
CH NG 1: T NG QUAN 1
1.1 Gi i thi u: 1
1.2 M c đích làm đ tài: 1
1.3 Ph ng pháp nghiên c u: 1
1.4 Ph m vi đ tài: 2
1.5 Nh ng đóng góp c a đ tài: 2
1.6 B c c c a báo cáo: 2
CH NG 2: L P TRÌNH M NG TRÊN N N T NG DI NG WINDOWS PHONE 3 2.1 N n t ng di đ ng Windows Phone: 3
2.1.1 T ng quan: 3
2.1.2 Chi ti t h đi u hành Windows Phone 7: 3
2.2 Xây d ng ng d ng trong môi tr ng Windows Phone 7: 5
2.3 Mô hình l p trình m ng trên n n t ng di đ ng Windows Phone: 6
2.3.1 Mô hình l p trình m ng: 6
2.3.2 Windows Communication Foundation: 7
CH NG 3: C S D LI U 14
3.1 T ch c c s d li u phía máy ch : 14
3.1.1 Mô hình th c th k t h p: 14
3.1.2 Miêu t khái quát: 14
3.1.3 Mô hình quan h : 15
3.1.4 B ng d li u: 16
I. S d ng “LINQ to Entities” trong truy xu t c s d li u: 25
3.1.5 Khái ni m: 25
3.1.6 Áp d ng LINQ to Entities vào d ch v WCF: 25
CH NG 4: HI N TH C CH NG TRÌNH 29
4.1 Mô hình ng d ng: 29
4.1.1 S đ ho t đ ng: 29
4.2 Các ch c n ng trong ng d ng bán hàng: 30
Trang 54.2.2 Ch c n ng l y d li u t phía d ch v và hi n th trên ng d ng Client: 31
4.2.3 Ch c n ng đ t hàng: 32
4.2.4 Ch c n ng nh p kho: 34
4.2.5 Ch c n ng c p nh t thông tin nhân viên: 36
4.2.6 Ch c n ng thay đ i m t kh u nhân viên: 37
4.2.7 Ch c n ng l y thông tin gi hàng đã t o: 38
4.3 Các ch c n ng trong ng d ng thu ngân: 39
4.3.1 Ch c n ng in hoá đ n: 39
4.3.2 Ch c n ng thanh toán: 40
4.4 Các ch c n ng trong ng d ng kho: 42
4.4.1 Ch c n ng xác nh n giao hàng: 42
CH NG 5: K T QU HI N TH C 44
5.1 Giao di n ch ng trình: 44
5.2 K t lu n: 60
5.2.1 u đi m: 60
5.2.2 H n ch : 60
5.2.3 H ng phát tri n: 60
CH NG 6: Tham kh o: 61
Trang 6t ng đi đ ng s làm quy trình bán hàng đ n gi n, chuyên nghi p, ít sai sót h n
Vi c áp d ng công ngh thông tin vào các trung tâm bán l đã đ c áp d ng nhi u
qu c gia phát tri n Quá trình thanh toán, x lý đ n hàng đ c h tr b i ng d ng trên máy tính giúp tránh đ c các sai sót c a nhân viên, đ ng th i gi m t i đ c công vi c cho nhân viên bán hàng
Trong gi i h n c a đ tài này, ta s xây d ng m t h th ng qu n lý trung tâm đi n máy tích h p môđun đ t hàng trên thi t b di đ ng v i các ch c n ng đ x lý m t đ n đ t hàng, thêm, xóa, ch nh s a d li u
1.2 M c đích làm đ tài:
Xây d ng h th ng qu n lý bán hàng tích h p môđun bán hàng trên thi t b di đ ng
v i m c đích gi i quy t các khuy t đi m nêu ra ph n 1.1 Trong ng d ng này, quá trình x lý m t đ n hàng đ c chia nh ra thành các khâu riêng bi t nh đ t hàng, thanh toán, giao hàng t o thành m t chu trình x lý khép kín và sau khi đ n hàng qua m t b c
x lý tr ng thái c a nó s thay đ i đ qu n lý d dàng
M i b c trong vi c bán hàng s đ c hi n th c thành các ch c n ng riêng bi t, t n
d ng t i đa kh n ng x lý c a máy tính đ gi m b t công vi c cho nhân viên, rút ng n
th i gian giao d ch, t n d ng các k thu t ki m ch ng d li u đ gi m t i đa các sai sót
1.3 Ph ng pháp nghiên c u:
Nghiên c u WCF (Windows Communication Foundation) đ xây d ng ng d ng
qu n lý theo mô hình d ch v m ng, t ng tác v i c s d li u và cung c p các ch c
n ng c a ng d ng Ta s nghiên c u cách ho t đ ng, cách truy n t i d li u, các ph ng pháp b o m t đ có th xây d ng d ch v b ng WCF
Nghiên c u các h qu n tr c s d li u quan h đ tri n khai h th ng c s d
li u c a ng d ng Ta c n phân tích quy mô c a ng d ng đ ch n h c s d li u phù
h p
Nghiên c u các h th ng bán hàng th c t đ xây d ng mô hình d li u, thi t l p các
m i quan h
Trang 7Nghiên c u l p trình trên thi t b di đ ng Windows Phone 7 đ xây d ng môđun bán
hàng trên thi t b di C n nghiên c u các thành ph n c a Windows Phone 7, nghiên c u
các các ph n m n đ phát tri n ng d ng cho h đi u hành này Nghiên c u cách s d ng
các đi u khi n trong h đi u hành này
1.4 Ph m vi đ tài:
ng d ng qu n lý bán hàng trên thi t b di đ ng đ c xây d ng đ áp d ng vào các
trung tâm mua s m l n có nhi u t ng, nhi u khu v c, v i nhi u m t hàng và nghành hàng
khác nhau Cho phép khách hàng đ t hàng nhi u t ng, khu v c do các nhân viên khác
nhau qu n lý nh ng ch c n thanh toán m t l n qu y giao d ch
1.5 Nh ng đóng góp c a đ tài:
tài này đã áp d ng k thu t l p trình m ng và l p trình trên thi t b di đ ng đ
khai thác s phát tri n c a h th ng m ng và các u đi m c a thi t b di đ ng, giúp các
trung tâm bán hàng gi i quy t các v n đ v nhân l c, cung c p cho khách hàng m t môi
tr ng mua s m hi n đ i, an toàn, ng d ng s gi m t i đa s l i phát sinh trong lúc làm
vi c V i nh ng l i th v công ngh hi n t i thì kh n ng áp d ng đ tài trong th c t là
Ch ng 3: Gi i thi u mô hình l p trình m ng, gi i thi u công ngh Windows
Communication Foundation (WCF) đ xây d ng mô hình h ng d ch v
Ch ng 4: Trình bày h c s d li u, mô hình d li u, k thu t k t n i
Ch ng 5: Trình bày các gi i thích
Ch ng 6: Trình bày s đ ho t đ ng và giao di n c a ch ng trình
Trang 8CH NG 2: L P TRÌNH M NG TRÊN N N T NG DI NG WINDOWS PHONE
2.1 N n t ng di đ ng Windows Phone:
2.1.1 T ng quan:
Ngày nay m ng l i thông tin ph sóng toàn c u, các hãng vi n thông cung c p các
d ch v cho phép ng i s d ng truy c p Internet t i b t c m i n i ây là y u t m ra
k nguyên c a các thi t b di đ ng, nh máy tính b ng, smartphone… Có 3 đi u đ đánh giá s thành công c a m t thi t b di đ ng đó là c u hình ph n c ng, n n t ng h đi u hành, và các ng d ng h tr cho h đi u hành đó M t thi t b di đ ng c n có c u hình phù h p đ đáp ng các yêu c u c a h đi u hành và ng d ng, n u c u hình không đ s làm gi m tr i nghi m mà h đi u hành và ng d ng mang l i cho ng i s d ng Tuy v y,
c u hình c a các thi t b ch đóng m t vai trò t ng đ i trong s thành công c a thi t b ,
h đi u hành và h th ng ng d ng cho thi t b m i đóng vai trò th c s quan tr ng
M t đ đi u hành t t ph i mang l i nh ng tr i nghi m m i m , thu hút ng i s
d ng, đ ng th i ph i cung c p cho nhà phát tri n ng d ng môi tr ng phát tri n v i các công c và công ngh hi n đ i đ xây d ng các ng d ng đáp ng nh ng mong đ i c a
ng i s d ng M t s h đi u hành cho các thi t b di đ ng đang phát tri n hi n nay nh IOS c a Apple, Andriod c a Google và Windows Phone 7 c a Microsoft
ng d ng bán hàng trên thi t b di đ ng c a h h th ng tr bán hàng này s s
d ng n n t ng Windows Phone 7 vì nó s làm vi c t t v i d ch v WCF
2.1.2 Chi ti t h đi u hành Windows Phone 7:
2.1.2.1 Ki n trúc c a h đi u hành Windows Phone 7:
Windows Phone 7 đ c thi t k d a trên tiêu chí giúp l p trình viên d dàng t o nên các ng d ng m ng v i công ngh n n t ng d a trên Net, Silverlight và XNA Frame Work, v i nh ng l p trình viên đã t ng làm qua Silverlight thì vi c chuy n sang Windows Phone 7 là m t vi c d dàng, không ch có th Microsoft còn u ái cho các nhà phát tri n
v i vi c t o nên m t môi tr ng phát tri n và thi t k đ n gi n và có th ch y đ c trên
ph n c ng c a nhi u hãng khác nhau Ki n trúc c a Windows Phone 7 đ c chia thành 4 thành ph n chính:
Trang 9dùng ngôn ng XAML (Extensible Application Markup Language) đ làm n n t ng thi t
k giao di n ng i dùng và s d ng Net đ phát tri n mã ngu n, tuy v y SilverLight v n yêu c u ng i s d ng đ u cu i ph i cài m t ng d ng SilverLight nhúng (SilverLight plug-in )
Còn XNA Framework là m t n n t ng m nh m bao g m hàm API m nh m ph c
v cho đ h a, đ ng th i c ng bao ch a các ph n m n phát tri n, d ch v , tài nguyên, giao ti p dùng d phát tri n các trò ch i có ch t l ng
Hình 2-1: Các thành ph n th c thi chính c a Windows Phone 7 (ngu n th vi n MSND –
Microsoft)
2.1.2.1.2 D ch v đám mây:
Cùng v i s ra đ i c a Windows Phone 7, Microsoft đã cung c p cho nhà phát tri n
m t máy ch d a trên d ch v đám mây, nhà phát tri n có th khai thác máy ch này trong các ng d ng c a mình
Có nhi u d ch v mây mà nhà phát tri n có th s d ng, nh d ch v thông báo, d ch
v này cung c p cách th c đ ta đ y d li u và các tin nh n v thi t b Windows Phone 7,
ta có th khai thác d ch v này đ tao ra các d ch v nh thông báo t s tr n đ u, c nh báo th i ti t…
M t d ch v có ý ngh a th c ti n cao đó là d ch v đ nh v v trí, nó cho phép ta truy
Trong Windows Phone 7 vi c h tr nhà phát tri n tri n khai và phân ph i ng d ng
đ n ng i s d ng đ c chú tr ng r t nhi u Windows Phone 7 c p m t kho ng d ng
tr c tuy n (Marketplace) giúp ng i s d ng tìm ki m và cài đ t các ng d ng, còn phía
.NET managed code
Trang 10c ng d ng đ c t i lên kho ng d ng s đ c qu n lý và ki m tra nh m đ m b o an toàn cho ng i s d ng
M t c ng d ch v ti n l i cho nhà phát tri n đó là d ch v thanh toán D ch v này cung c p các hàm API nó t o ra ch đ thanh toán nh mi n phí, tr ti n Bây gi nhà
l p trình đã có gi i pháp d dàng đ đ nh h ng ng d ng theo d ng ph n m n mi n phí,
ng d ng có phí, ng d ng tính phí hàng tháng và nhi u l a ch n khác
2.1.2.1.1 Các công c :
Thành ph n cu i cùng trong n n t ng Windows Phone 7 là các công c phát tri n
Nó s d ng Visual Studio là công c phát tri n ch l c, h u nh m i kh n ng c a Windows Phone 7 đ u đ c khai thác và th hi n thông qua Visual Studio Bên c nh còn
có công c Expression Blend, theo cách c , các nhà thi t k ph i t o giao di n ng i dùng trong m t công c thi t k riêng, đi u này làm cho nhà phát tri n khó có th t ng d ng hoàn toàn u đi m c a giao di n đ c t o ra V i Expression Blend, nó cho phép các nhà thi t k giao di n làm các t p tin c a d án nh các nhà phát tri n, đ ng th i h có th truy c p các t p tin này b ng các công c thi t k không t n t i trên Visual Studio th ng
ch t n t i trên các ph n m n thi t k đ c bi t đ t o nên giao di n ng i dùng
2.2 Xây d ng ng d ng trong môi tr ng Windows Phone 7:
Nhà phát hành cung c p m t môi tr ng phát tri n mi n phí là Visual Studio Express và gói cài đ c phát tri n Windows Phone 7 Khi b t đ u ch ng trình Visual Studio, b n s th y màn hình kh i đ ng, t trang này b n có th t o m i m t ng d ng Windows Phone 7 ho c truy xu t nhanh ng d ng mà b n đã làm vi c g n đây
Visual Studio cung c p nhi u tính n ng th ng đ c th y trong các môi tr ng phát tri n ng d ng Thông qua c a s Solution Explorer b n có th th y đ c các t p tin và
th m c c a đ án d i d ng cây th m c, b n có th di chuy n các c a s trong Visual Studio và s p x p chúng theo ý mu n c a b n Ngoài ra, b n c ng có th truy xu t m t vài thanh công c có ích trong vi c phát tri n đ án
Sau khi t o xong, b n s đ c th y giao di n v i màn hình phân chia nh hình bên
d i M t ph n c a màn hình cho th y giao di n ch ng trình gi l p Windows Phone 7,
Trang 11Nhìn vào c a s Solution Explorer, ta ng d ng Windows Phone 7 ch a m t t p tin App.xaml, t p tin đ i di n cho toàn b ng d ng T p tin App.xaml n m gi b t k tài nguyên toàn c c trong ng d ng M t ng d ng Windows Phone 7 có t t c 4 s ki n chính là s ki n kh i đ ng, ho t đ ng, vô hi u hóa, đóng ng d ng Các mã ngu n đ x các s ki n đ c này đ t trong t p tin App.xaml.cs V c b n ta có m t thành ph n xaml
n m gi t t c s khai báo mã XAML đ t o n n giao di n ng d ng, khai báo các hàm, các tài nguyên, và t ng ng s có t p tin code-behind xaml.cs đ hi n th c mã ngu n liên quan đ n trang xaml
ch y ch ng trình này trong ch ng trình gi l p Windows Phone b ng cách
nh p vào bi u t ng “Play” trên thanh công c , đây là cách nhanh nh t đ ch y m t đ án Windows Phone N u không có l i trong quá trình biên d ch thì Visual Studio b t đ u
ch ng trình gi l p và ch y ng d ng m i c a b n trong m t thi t b Windows Phone 7
Trang 12Client-ch ng trình server cung c p các tác v đ th c hi n các công vi c nh t đ nh, ch ng trình client s thông qua các giao th c m ng đ s d ng các thao tác mà d ch v cung c p
Mô hình này hoàn toàn phù h p v i h th ng qu n lý bán trên thi t b di đ ng trong
đ tài này, các ng d ng bán hàng trên các thi t b di đ ng đ c xem nh các client và máy ch ch y d ch v s cung c p các hàm ch c n ng x lý công vi c theo yêu c u và
qu n lý c s d li u c a toàn h th ng
2.3.1.2 Gi i pháp:
Có nhi u công ngh đ xây d ng các d ch v WEB nh : HTTP, Java, Java Web Services Developers Pack và Windows Communication Foundation Trong đó WCF (Windows Communication Foundation) là công m nh, h tr đ y đ ch c n ng đ xây
d ng m t d ch v Web, nó còn cho phép các n n t ng khác nhau giao ti p v i nhau
2.3.2 Windows Communication Foundation:
2.3.2.1 Gi i thi u:
Windows Communication Foundation (WCF) là m t h th ng các đ i t ng đ c cài đ t trong NET Framework đ c dùng đ xây d ng ng d ng h ng d ch v Khi s
d ng WCF, ta có th g i d li u nh m t thông đi p không đ ng b t d ch v đ u cu i
đ n các đi m cu i M t d ch v đ u cu i có th là m t ph n c a toàn b d ch v đ c cài
đ c trên IIS, ho c đó là m t d ch v cài đ t trong m t ng d ng M t đi m cu i có th là
ch ng trình máy khách có kh n ng g i yêu c u d di u đ n các máy ch đ u cu i
Thông đi p có th đ n gi n nh m t kí t , m t t đ c g i nh XML ho c ph c t p nh chu i d li u nh phân Sau đây là m t vài ví d v các tr ng h p ta có th dùng WCF:
- Các d ch v x lý các giao d ch kinh doanh đòi h i tính an toàn và b o m t
- Các d ch v cung c p d li u theo th i gian th c, nh d ch v qu n lí giao thông và các d ch v theo dõi khác
- Các d ch v h i tho i tr c tuy n cho phép hai ng i giao ti p ho c trao đ i d
li u
- Các ng d ng th m dò ho c các d ch v l u tr d li u tr c tuy n
- Các d ch v đóng vai trò nh các ngu n cung c p d li u th i gian th c
Windows Communication Foundation (WCF) đ c thi t k đ giúp ng i s d ng
ti p c n vi c xây d ng và qu n lý d ch v Web và khách hàng d ch v Web
2.3.2.2 Các tính n ng c a Windows Communication Foundation (WCF): 2.3.2.2.1 H ng d ch v (Service Oriented):
M t k t qu c a vi c s d ng các tiêu chu n WS (Web Server) trong WCF là cho phép ta xây d ng các ng d ng theo h ng d ch v Ki n trúc h ng d ch v (Service Oriented Architecture - SOA) d a vào d ch v Web đ g i và nh n d li u
Trang 13Hình 3-1: Mô hình ho t đ ng c a d ch v Web (ngu n th vi n MSND – Microsoft) Ngoài ra, các d ch v xây đ ng trên WCF có l i th là m n d o thay v c ng nh c,
m n d o đây có ngh a là ch ng trình khách hàng đ c t o trên các n n t ng khác nhau
đ u có th k t n i đ n các d ch v đ c vi t trên WCF mi n là đ m b o các yêu c u thi t
y u đ c đáp ng, nói cách khác WCF cho phép các n n t ng khác nhau giao ti p v i nhau
2.3.2.2.2 Kh n ng c ng tác (Interoperabitily):
WCF đ c b sung nhi u tiêu chu n hi n đ i cho đ t o ra kh n ng t ng tác c a
d ch v Web WCF cung c p m t s giao th c giao th c d ch v web, nhi u giao th c trong s đó có các tùy ch n và ph n m r ng cho phép ng i s d ng cài đ t theo m c đích riêng
2.3.2.2.3 Nhi u mô hình tin nh n (Multiple Message Patterns):
Tin nh n đ c trao đ i d a trên m t trong s các mô hình sau:
- Mô hình yêu c u - tr l i: m t thi t b đ u cu i g i yêu c u d li u đ n thi t b
đ u cu i th hai, thi t b đ u cu i th hai tr l i yêu c u v a nh n, đây là mô hình đ c s d ng th ng xuyên nh t
- Mô hình m t h ng: m t thi t b đ u cu i s g i m t tin nh n mà không mong
đ i s tr l i t đích đ n
- Mô hình có k t n i: đây là mô hình ph c t p h n so v i nh ng mô hình trên,
mô hình cho phép hai thi t b đ u cu i thi t l p k t n i và trao đ i d li u qua
Trang 142.3.2.2.4 Siêu d li u (Service Metadata):
Siêu d li u (Metadata) là m t t p h p d li u ch ra các mô t v d ch v , các thao tác khác nhau mà d ch v cung c p, các bi n d li u mà các thao tác yêu c u và các ki u
d li u mà các thao tác này tr v cho khách hàng Nói cách khác, siêu d li u ch ra các
h p đ ng V i các thông tin này khách hàng có th giao ti p v i d ch vu.Siêu d li u có
th đ c công b trên HTTP và HTTPS ho c s d ng Web Service Metadata Exchange tiêu chu n (WS-Metadata Exchange) WCF h tr siêu d li u và áp d ng các tiêu chu n nghành công nghi p nh WSDL, XML Schema và WS-Policy
Hình 3-2: Mô t quá trình trao đ i siêu d li u gi a Client-Server (ngu n th vi n
MSND – Microsoft) Trong quá trình xây d ng, ch ng trình phía khách g i thông đi p yêu c u đ c
đ nh ngh a theo tiêu chu n WS – Metadata Exchange và gói tin WSDL đ c d ch v g i
l i phía khách hàng Ch ng trình phía khách hàng s s d ng gói tin WSDL đ t o ra l p trung gian (proxy class) và t p tin c u hình, hai th này s đ c s d ng trong quá trình
th c thi c a ch ng trình khách đ giao ti p v i máy ch
c a ki u d li u s đ c chu i hoá, ta có th l a ch n các thành ph n nào đ c chu i hoá
b ng cách s d ng l p IgnoreDataMemberAttribute Ngoài ra, ta có th t o ra các h p
Trang 15DataMemberAttribute DataContractAttribute đ ch ra m t h p đ ng ki u d li u, thu c tính này có th dùng cho các l p, các c u trúc, các b n li t kê (classes, structures, enumerations) Thu c tình DataMemberAttribute sau đó ph i đ c dùng cho cho m i thành viên trong ki u d li u đ ch ra cách thành ph n này là m t thành ph n d li u và
nó s đ c chu i hoá D i đây là mô hình th hi n vi c phía d ch v và phía khách s
an ninh đ c công nh n cho SOAP Trong các ng d ng phân tán, các thông đi p có th chuy n t nút này đ n nút khác, thông qua firewall, lên trên internet, thông qua nhi u trung gian SOAP, và đây chính là m i nguyên hi m các ng i s d ng x u có th l i
d ng tính ch t này đ t n công d ch v theo các cách nh :
- Theo dõi các thông đi p trên m ng đ l y thông tin Ví d , trong m t giao d ch chuy n ti n tr c tuy n t m t tài kho n này m t tài kho n, k t ng công có th
ch n các thông đi p và thu th p các thông tin bên trong đ l y s tài kho n, m t
kh u sau đó th c hi n chuy n ti n t tài kho n b t ng công
- Th c th l a đ o ho t đ ng nh m t d ch v mà khách hàng không nh n th y
Ví d , k l a đ o ho t đ ng nh m t d ch v tr c tuy n, ng n ch n các thông
đi p t khách hàng đ có đ c các thông tin nh y c m Sau đó k l a đ o s
d ng tài kho n b đánh c p đ th c hi n hành vi nguy hi m
Client applicaton
Proxy A
Proxy A
Service applicaton Service A
Service A
DataContracts
invoke
Trang 16- Thay đ i n i dung thông đi p đ đ t đ c m c đích khác so v i ý đ nh c a khách hàng Ví d , k l a đ o thay đ i s tài kho n mà ti n đ c g i đ n trong thông đi p b ng m t tài kho n gi m o
- L p thông đi p Ví d , M t c a hàng sách tr c tuy n nh n đ c hàng tr m đ n
đ t hàng và g i sách đ n khách hàng dù h không th c hi n yêu c u
- T ng công làm d ch có kh n ng c a m t d ch v đ xác th c khách hàng Trong tr ng h p này, d ch v không th b o đ m khách hàng đ c quy n th c
hi n m t giao dich nào đó
tránh các m i nguy hi m trên Các c ch b o m t c a WCF cung c p các đ m b o sau:
2.3.2.2.7 Cung c p nhi u ph ng th c truy n t i và mã hoá:
Thông đi p có th đ c g i thông qua b t kì giao th c truy n t i và mã hoá xây
d ng s n Giao th c truy n t i và mã hoá ph bi n nh t là g i các thông đi p SOAP đ c
mã hoá b ng giao th c Hyper Text Tranfer Protocol (HTTP) đ s d ng trên World Wide Web Ngoài ra WCF còn cho phép g i tin nh n qua TCP, c ch đ ng ng ho c MSMQ Các thông đi p này có th đ c mã hoá d i d ng v n b n ho c s d ng m t
đ i các thông đi p đáng tin c y t c là đ m b o thông đi p t ngu n s đ n đ c đích, n u
có s y ra các s c trong quá trình truy n t i nó s khôi ph c và truy n t i l i, đ m b o quá trình truy n t i thông đi p đ c thành công dù ch ng trình phía ngu n ho c phía đích không đ ng th i ho t đ ng M t đ c đi m c a vi c g i các thông đi p đáng tin c y là
đ tr cao, đ tr t c là kho n th i gian đ thông đi p đi t ngu n đ n đích Do đó, đ
th c hi n đ c vi c này thì WCF cung c p các gi i pháp sau:
Ph ng pháp th nh t là phiên làm vi c đáng tin c y, ph ng pháp này cho phép
g i các thông đi p đáng tin c y v i đ tr th p, ngu n và đích ph i đ ng th i ch y cùng
Trang 17lúc Phiên làm vi c đáng tin c y s dung giao th c WS-ReliableMessaging đ truy n t i các thông di p SOAP
Hình 3-4: mô t quá trình truy n t i dùng giao th c WS-ReliableMessaging (ngu n th
vi n MSND – Microsoft)
Ph ng pháp th hai là s d ng hàng đ i (Queues) trong Windows Communication Foundation (WCF), cách này cho phép g i các thông đi p đáng tin c y dù ngu n và đích không ho t đ ng đ ng th i Tuy v y đây là ph ng pháp đòi h i chi phí v đ tr cao Hàng đ i trong WCF đ c xây d ng d a trên MSMQ (còn g i là Message Queuing) MSMQ là m t tu ch n c a Windows, nó đ c xem nh là m t d ch v NT MSMQ ch u trách nhi m b t các thông đi p c n g i trong hàng đ i truy n t i d i danh ngh a là ngu n
và chuy n đ n các hàng đ i đích Hàng đ i đích s nh n thông đi p d i danh ngh a phía đích và sau đó s g i thông đi p b t c lúc nào có yêu c u t đích đ n
Hình 3-5: mô t cách ho t đ ng c a hàng đ i trong WCF (ngu n th vi n MSND –
Microsoft)
2.3.2.2.9 H tr giao d ch (Transactions):
Giao d ch (Transactions) cho phép ta nhóm m t lo i các công vi c ho c thao tác thành m t nhóm, mà nhóm này là đ n v nh nh t không th chia nh ra đ c n a M t giao d ch là m t t p h p các thao tác có các tính ch t sau:
Trang 18- Tính nguyên t (Atomicity): Khi th c hi n các thao tác trong m t giao d ch thì toàn b các thao tác ph i thành công, n u có m t l i nào x y ra trong quá trình
th c hi n giao d ch thì toàn b giao d ch b h y b và khôi ph c toàn b tr ng thài nh tr c khi giao d ch đ c g i
- Tính nh t quán (Consistency): S th c hi n c a m t giao d ch là cô l p (Không
d ng công ngh c a hãng th 3 WCF c ng h tr giao th c giao d ch OLE
Ta có s d ng m t t p tin c u hình sau đó thi t l p các ràng bu c đ cho phép ho c
vô hi u hoá các lu ng giao d ch C ng nh thi t l p m t giao th c giao d ch mong mu n trên m t ràng bu c Ngoài ra còn thi t l p th i gian h t h n (time-out) c a m t giao d ch
S d ng các thu c tính ServiceContractAttribute và OperationContractAttribute trên
m t ph ng th c h p đ ng đ yêu c u, cho phép ho c t ch i m t giao d ch
Trang 19CH NG 3: C S D LI U
3.1 T ch c c s d li u phía máy ch :
3.1.1 Mô hình th c th k t h p:
Hình 4-1: mô hình th c th k t h p c a CSDL bán hàng
3.1.2 Miêu t khái quát:
H th ng s n ph m trong trong trung tâm mua s m đ c chi thành các nghành hàng, trong m i nghành hàng l i đ c chia làm các lo i hàng nh h n Ví d : đi n gia d ng là
m t nghành hàng, trong đi n gia d ng có ba lo i hàng là tivi, t l nh, đ u đ a M i lo i hàng l i có các s n ph m trong đó, tu vào lo i s n ph m s có đ n v tính khác nhau
M i s n ph m ch a thêm thông tin nhà cung c p đ d dàng tìm ki m và qu n lý
Nhân viên đ c t ch c theo t ng b ph n, thông tin quy n h n c a nhân viên giúp
nh n bi t đ c công vi c c a nhân viên đó trong h th ng bán hàng Ví d : qu n tr , bán hàng, kho,…D a vào quy n h n c a nhân viên mà h th ng cho phép nhân viên đ c
Mãi
Lo i Hàng
Lo i Thanh Toán
T T
T
T T
T
T
T T
N
1
Trang 20Nhân viên bán hàng có th th c hi n m t trong các tác v t o, c p nh t, xoá phi u
đ t hàng cho khách hàng có yêu c u, m i thông tin khách hàng s đ c l u vào m t b ng, các thông tin đó s c n s d ng l i trong quá trình in hoá đ n Phi u đ t hàng s mang
nh ng tr ng thái khác nhau, ví d : Ch thanh toán, ã thanh toán, ã giao hàng,…D a vào thông tin tr ng thái c a phi u đ t hàng mà nhân viên s có nh ng tác v phù h p đ i
v i nh ng phi u đ t hàng đó
Sau khi khách hàng đã thanh toán thì phi u đ t hàng đó s c p nh t tr ng thái m i và
đ ng th i s l y ra các thông tin cho quá trình in hoá đ n, các thông tin này s đ c l u
tr trong m t b ng riêng, ví d : nhân viên nh n ti n, khách hàng, lo i thanh toán,…
3.1.3 Mô hình quan h :
Trang 21Ý ngh a các tr ng:
Ma: là khoá chính, ch ra mã c a lo i hàng do trung tâm mua s m quy đ nh
Ten: tên c a lo i hàng
Manh: là khoá ngo i, mã nghành hàng tham chi u đ n b ng nghành hàng Ch ra
lo i hàng này thu c nghành hàng nào
Trang 22Baohanh Int S tháng b o hành
Trang 23Manhacc: là khóa ngo i, tham chi u đ n b ng nhà cung c p, ch ra s n ph m này là
Mieuta: Miêu t c a s n ph m
Tinhnang: Các tính n ng k thu t c a s n ph m
Tonkhotoithieu: s l ng t n kho t i thi u c a s n ph m
Tonkhohientai: s l ng t n kho hi n t i
Conquanly: cho bi t s n ph m còn đ c qu n lý hay không
Makm: là khóa ngo i, tham chi u đ n b n khuy n mãi Ch ra s n ph m này có đang
đ c h ng ch ng trình khuy n mãi nào không
B ng đ n v tính:
Tên field Ki u d li u Chi u dài Di n gi i
Trang 24B ng khuy n mãi:
Tên field Ki u d li u Chi u dài Di n gi i
Ý ngh a các tr ng:
Ma: là khóa chính, ch ra mã c a ch ng trính khuy n mãi, là s nguyên
Ten: tên c a ch ng trình khuy n mãi
Giamgia: t l gi m giá c a khuy n mãi, đ c l u d i d ng s th c Ví d : khuy n mãi 10% đ c l u là 0.1
Ngaybatdau: ngày b t đ u c a khuy n mãi
Ngayketthuc: ngày k t thúc khuyên mãi Sau ngày này ch ng trình không còn hi u
l c
Conquanly: ch ra ch ng trình khuy n mãi còn đ c qu n lý hay không
B ng nhân viên:
Tên field Ki u d li u Chi u dài Di n gi i
Gioitinh Boll Gi i tính
Trang 25Diachi Nvarchar Max a ch
Ten: tên c a nhân viên
NgaySinh: ngày sinh c a nhân viên
Gioitinh: gi i tính c a nhân viên, quy c true là nam, false là n
Cmnd: s ch ng minh nhân dân
Diachi: đ a ch liên l c c a nhân viên
DienThoai: đi n tho i liên l c
Email: đ a ch email liên l c c a m i nhân viên
Ch c v : Miêu t ch c v hi n t i c a nhân viên
Mabp: là khóa ngo i, tham kh o đ n b ng b ph n ch ra nhân viên thu c b ph n nào
Maql: là khóa ngo i, tham kh o đ n chính b n nhân viên, ch ra nhân viên thu c quy n qu n lý c a ai
Maqh: là khóa ngo i, tham kh o đ n b n quy n h n Sau khi đ ng nh p vào h
th ng t bi n quy n h n này mà ta quy đ nh thao tác mà nhân viên đ c th c hi n MatKhau: mât kh u c a m i nhân viên đ đ ng nh p vào h th ng
Conquanly: cho bi t nhân viên còn đ c công ty qu n lý hay không
Trang 26B ng b ph n:
Tên field Ki u d li u Chi u dài Di n gi i
Ý ngh a các tr ng:
Ma: là khóa chính, ch ra mã c a các b ph n trong công ty
Ten: là tên các b ph n c a công ty
Ý ngh a các tr ng:
Ma: là khóa chính, ch ra mã c a m i quy n h n mà nhân viên có
Ten: là tên các quy n h n Trong đ tài này, quy n h n c a nhân viên s d a trên v trí mà nhân viên làm vi c vì v y tên quy n h n c ng là tên c a v trí mà nhân viên làm
vi c Ví d : Nhân viên A thu c b ph n “Kinh doanh” làm vi c t i qu y bàn hàng thì s
có quy n h n là “Bán hàng” Nhân viên khi đ ng nh p vào h th ng s đ c chuy n
h ng đ n trang ch a các thao tác mà nhân viên bán hàng có
Mieuta: di n gi i ch c n ng, quy n h n c a b ph n
Trang 27B ng khách hàng:
Tên field Ki u d li u Chi u dài Di n gi i
Ý ngh a các tr ng:
Ma: là khóa chính, ch ra mã c a m i khách hàng
Ho: h và tên lót c a khách hàng
Ten: tên c a khách hàng
Diachi: đ a ch liên l c, giao hàng
Dienthoai: đi n tho i khách hàng
Email: đ a ch email liên l c c a khách hàng
Ma: là khóa chính, ch ra mã c a tr ng thái đ t hàng
Ten: tên c a tr ng thái c a đ n đ t hàng Trong đ tài này có 3 tr ng thái là “M i đ t
hàng”,” ã thanh toán”,” ã giao hàng” tùy vào m i tr ng thái mà ta có các b c x lý
riêng bi t
Conquanly: ch ra tr ng thái này còn đ c qu n lý trong ng d ng hay không
Trang 28
B ng đ t hàng:
Tên field Ki u d li u Chi u dài Di n gi i
Ý ngh a các tr ng:
Ma: là khóa chính, ch ra mã c a m t phi u đ t hàng
Mahk: là khóa ngo i, tham chi u đ n b ng khách hàng Ch ra khách hàng nào đ t
Trang 29Giá bán: già bán đ c tính theo giá s n ph m c ng v i thu xu t và tr đi khuy n
Ý ngh a các tr ng:
Ma: là khoá chính, ch ra mã s c a hoá đ n
Madh: là khóa ngo i, tham chi u đ n b n đ t hàng Ch ra hóa đ n này là c a đ n
đ t hàng nào
Maltt: là khóa ngo i, tham chi u đ n b n lo i thanh toán Ch ra hóa đ n này đ c
khách hàng thanh toán b ng cách nào
Sothe: s th ngân hàng n u lo i thanh toán là th tín d ng
Manv: mã nhân viên ch u trách nhi m thu ti n và xác nh n đã thanh toán hóa đ n
B ng lo i thanh toán:
Tên field Ki u d li u Chi u dài Di n gi i
Ý ngh a các tr ng:
Ma: là khóa chính, ch ra mã c a lo i thanh toán
Ten: cho bi t tên c a lo i thanh toán
Trang 30Conquanly: cho bi t lo i thanh toán này con đ c s d ng trong h th ng hay không
I S d ng “LINQ to Entities” trong truy xu t c s d li u:
3.1.5 Khái ni m:
Tr c đây đ truy v n các c s d li u khác nhau nh các đ i t ng, danh sách, XML, c s d li u quan h ta c n s d ng nh ng ph ng pháp khách nhau Ngoài ra sau khi d li u đ c n p vào b nh , chúng đ c th hi n d i d ng các đ i t ng, đ có th truy v n các đ i t ng này thì chúng ph i đ c móc n i v i nhau theo các khóa nh trong
c s d li u quan h đ n gi n hóa thao tác truy v n d li u Mircosoft đã xây d ng LINQ, LINQ là m t t p h p các công ngh cho phép b n thay đ i cách truy xu t vào các ngu n d li u ngay t c p đ ngôn ng , các câu truy v n LINQ có d ng t ng t SQL, ngoài ra ta có th hi u LINQ nh m t ngôn ng v i cú pháp g n gi ng nh ngôn ng SQL đ truy v n đ n c s d li u LINQ h tr h u h t các d ng ngu n d li u khác nhau, bao g m c các đ i t ng trong b nh (LINQ to Objects), XML (LINQ to XML),
c s d li u SQL Server (LINQ to SQL), LINQ to Entities…
ADO.Net Entity Framework là m t phiên b n m r ng m i c a ADO.NET, nó giúp
nh ng ng i phát tri n t o ra nh ng ng d ng truy xu t d li u trên mô hình ý ni m thay
vì truy xu t tr c ti p vào l c đ d li u quan h M c đích là gi m l ng mã l nh c n thi t đ i v i các ng d ng h ng d li u Entity Framework s ánh x c s d li u thành
mô hình ý ni m v i các th c th có tính th a k , có th ch a các đ i t ng ph c t p, và
có các m i quan h v i nhau
LINQ to Entities h tr vi c dùng cú pháp LINQ đ vi t các truy v n đ n mô hình ý
ni m mà Entity Framework t o ra t c s d li u M t l nh truy v n trong LINQ to Entities đ c chuy n đ i thành m t cây l nh ho t đ ng d a trên Entity Framework
3.1.6 Áp d ng LINQ to Entities vào d ch v WCF:
Xây d ng ng d ng WCF đ n gi n có áp d ng LINQ to Entities:
B c 1 : T o project m i:
File New Project WCF templates WCF Service Library
Trang 31B c 2: Thêm LINQ to Entities vào project Ch n tên đ án Add New Item Data templates ADO.NET Entity Data Model Ch n “Generate from database”
B c 3: T o k t n i v i c s d li u
New connection ch n csdl thêm thông tin k t n i Next
B5: Ch n: Table, Views, Proceduces c n s d ng, đ t tên namespace đ s d ng sau này
Trang 32B6: Finish
Sau khi t o xong, Entity Framework s ánh x nh ng b ng đ c ch n thành t ng
l p t ng th c th có tên gi ng v i tên b ng trong c s d li u, v n gi nguyên m i quan h gi a các b ng
Trang 33hi u rõ h n cách s d ng Linq to Entities ta s xây d ng m t hàm l y danh sách
t t c nhân viên trong b ng Nhanvien, tr c khi s d ng mô hình th c th ta ph i kh i t o
m i m t đ i t ng m i mà nó n m gi k t n i gi a c s d li u quan h và mô hình
th c th Sau đó, ta s d ng cú pháp LINQ đ truy v n trong đ i t ng m i t o đó
Trong đo n mã l y d li u, k t qu đ c Linq to Entities r v là m t danh sách, ta
s nh n danh sách tr v đó b ng cách gán nó vào m t danh sách có tên là “danhsach” mà
ta kh i t o