Tài liệu Đề tài Xây dựng hệ thống thông tin quản lý xuất nhập hàng tại công ty công nghiệp chế biến thực phẩm quốc tế chi nhánh Nha Trang: Lời nói đầu
Ngày nay cùng với sự phát triển nhanh chóng của Công nghệ thông tin và việc ứng dụng nó vào thực tế của các ngành kinh tế và đời sống đem lại những lợi ích vô cùng to lớn. Có thể nói rằng kỹ nguyên của chúng ta là kỹ nguyên của công nghệ thông tin.
Trong đó Bưu Điện, Ngân Hàng, Kinh Doanh là những ngành phát triển các ứng dụng công nghệ tin học hàng đầu. Nhưng thực tế tại CÔNG TY CÔNG NGHIỆP CHẾ BIẾN THỰC PHẨM QUỐC TẾ chi nhánh Nha Trang chưa hoàn toàn tin học hoá trong quản lý kinh doanh. Quản lý xuất nhập hàng hoá là một trong các công tác hoạt động chính của công ty, hiện tại đang cần một hệ thống quản lý mới phù hợp hơn bởi vì hầu hết các chương trình quản ly được xây dựng trên môi trường ACCESS và Pocro nên vẫn còn nhiều hạn chế và chưa đáp ứng được với nhu cầu thực tế.
Qua thời gian tiếp xúc với CÔNG TY CÔNG NGHIỆP CHẾ B...
67 trang |
Chia sẻ: hunglv | Lượt xem: 1587 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Xây dựng hệ thống thông tin quản lý xuất nhập hàng tại công ty công nghiệp chế biến thực phẩm quốc tế chi nhánh Nha Trang, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Lôøi noùi ñaàu
Ngaøy nay cuøng vôùi söï phaùt trieån nhanh choùng cuûa Coâng ngheä thoâng tin vaø vieäc öùng duïng noù vaøo thöïc teá cuûa caùc ngaønh kinh teá vaø ñôøi soáng ñem laïi nhöõng lôïi ích voâ cuøng to lôùn. Coù theå noùi raèng kyõ nguyeân cuûa chuùng ta laø kyõ nguyeân cuûa coâng ngheä thoâng tin.
Trong ñoù Böu Ñieän, Ngaân Haøng, Kinh Doanh laø nhöõng ngaønh phaùt trieån caùc öùng duïng coâng ngheä tin hoïc haøng ñaàu. Nhöng thöïc teá taïi COÂNG TY COÂNG NGHIEÄP CHEÁ BIEÁN THÖÏC PHAÅM QUOÁC TEÁ chi nhaùnh Nha Trang chöa hoaøn toaøn tin hoïc hoaù trong quaûn lyù kinh doanh. Quaûn lyù xuaát nhaäp haøng hoaù laø moät trong caùc coâng taùc hoaït ñoäng chính cuûa coâng ty, hieän taïi ñang caàn moät heä thoáng quaûn lyù môùi phuø hôïp hôn bôûi vì haàu heát caùc chöông trình quaûn ly ñöôïc xaây döïng treân moâi tröôøng ACCESS vaø Pocro neân vaãn coøn nhieàu haïn cheá vaø chöa ñaùp öùng ñöôïc vôùi nhu caàu thöïc teá.
Qua thôøi gian tieáp xuùc vôùi COÂNG TY COÂNG NGHIEÄP CHEÁ BEÁN THÖÏC PHAÅM QUOÁC TEÁ chi nhaùnh Nha Trang toâi ñöôïc caùc coâ chuù vaø anh chò trong coâng ty gôïi yù vaø giuùp ñôõ, toâi ñaõ quyeát ñònh choïn ñeà taøi “Xaây döïng heä thoáng thoâng tin quaûn lyù xuaát nhaäp haøng” laøm ñeà taøi thöïc taäp toát nghieäp cuûa mình.
Vôùi ñeà taøi naøy toâi chia thaønh 5 chöông nhö sau:
Chöông I : Khaûo saùt & phaân tích hieän traïng
Chöông II : Giôùi thieäu caùc coâng ngheä lieân quan
Chöông III : Phaân tích vaø thieát keá heä thoáng
Chöông IV: Xaây döïng chöông trình
Chöông V: Ñaùnh giaù heä thoáng
Do thôøi gian haïn cheá vaø kieán thöùc coùn haïn heïp neân trong ñeà taøi naøy khoâng theå traùnh khoûi nhöõng thieáu soùt. Kính mong quyù thaày coâ giaùo vaø caùc baïn sinh vieân ñoùng gôùp yù kieán ñeå cho ñeà taøi naøy ngaøy caøng hoaøn thieän hôn.
Nhaân ñaây em xin chaân thaønh caûm ôn coâ Buøi Thò Hoaø– GV boä moân Coâng Ngheä Phaàn Meàm – khoa Coâng Ngheä Thoâng Tin tröôøng ÑHBK Haø Noäi ñaõ taän tình höôùng daãn em trong quaù trình thöïc hieän ñeà taøi thöïc taäp toát nghieäp naøy.
Haø Noäi 7 – 2003
Sinh vieân thöïc hieän:
Ñinh Troïng Vinh
MUÏC LUÏC
LÔØI NOÙI ÑAÀU …………………………………………………………..…… 1
MUÏC LUÏC …………………………………………………………………… 2
Chöông 1: KHAÛO SAÙT VAØ PHAÂN TÍCH HIEÄN TRAÏNG ………………… 3
I. Giôùi thieäu veà Coâng ty………………………………………………… 3
II. Phaân tích hieän traïng …………………………………………………… 4
Chöông 2: PHAÂN TÍCH VAØ THIEÁT KEÁ HEÄ THOÁNG …………………… 8
I. Moâ hình quan nieäm döõ lieäu …………………………………………… 8
II. Moâ hình toå chöùc döõ lieäu ……………………………………………… 8
III. Moâ hình vaät lyù döõ lieäu ………………………………………………… 9
IV. Moâ hình thoâng löôïng ………………………………………………… 14
V. Moâ hình quan nieäm xöû lyù ………………………………………………16
VI. Moâ hình toå chöùc xöû lyù ……………………………………………… 18
VII. Moâ hình vaät lyù xöû lyù ………………………………………………… 22
Chöông 3: GIÔÙI THIEÄU CAÙC COÂNG NGHEÄ LIEÂN QUAN ……………… 23
I. Giôùi thieäu veà Visual Basic 6.0 ………………………………………… 23
II. Laøm vieäc vôùi Microsoft Visual Basic 6.0 …………………………… 24
III. Khaû naêng keát noái vôùi cô sôû döõ lieäu cuûa Visual Basic ………………… 31
Chöông 4: XAÂY DÖÏNG CHÖÔNG TRÌNH ……………………………… 33
I. Phaàn döõ lieäu……………………………………………………………… 33
II. Moät soá giao dieän chính ………………………………………………… 34
III. Moät soá Module chính ………………………………………………… 36
Chöông 5: ÑAÙNH GIAÙ HEÄ THOÁNG …..………………………………… 39
TAØI LIEÄU THAM KHAÛO ………………………………………………… 40
CHÖÔNG I
KHAÛO SAÙT VAØ PHAÂN TÍCH HIEÄN TRAÏNG
I. KHAÛO SAÙT HIEÄN TRAÏNG
1. Giôùi thieäu toång quaùt
Hieän nay, Ngaønh quaûn lyù kinh doanh noùi chung vaø Coâng ty coâng nghieäp cheá bieán thöïc phaåm quoác teá – Chi nhaùnh Nha Trang noùi rieâng, vaán ñeà aùp duïng coâng ngheä tin hoïc ñang ñöôïc ñaët leân haøng ñaàu nhaèm hoaøn chænh hoaù heä thoáng giao dòch vaø quaûn lyù haøng cuûa coâng ty, nhaèm taêng khaû naêng hoaït ñoäng, giaûm bôùt soá löôïng nhaân vieân quaûn lyù, ñaûm baûo ñoä chính xaùc vaø khaû naêng baûo maät, an toaøn döõ lieäu cao. Vì nhöõng lyù do ñoù cho neân vieäc thay theá vaø naâng caáp heä thoáng quaûn lyù kinh doanh môùi ñang laø vaán ñeà caáp baùch cho ngaønh kinh doanh.
Coâng ty coâng nghieäp cheá bieán thöïc phaåm quoác teá – Chi nhaùnh Nha Trang hieän nay ñang söû duïng heä thoáng quaûn lyù kinh doanh do toång coâng ty ñöa ra cho caùc chi nhaùnh. Heä thoáng naøy chaïy treân neàn heä heä quaûn trò CSDL Access vaø Foxpro.
Heä thoáng treân nhìn chung coù nhieàu öu ñieåm veà tính ñoàng nhaát, chaïy nhanh, kích thöôùc döõ lieäu nhoû vaø khoâng ñoøi hoûi caáu hình cuûa maùy tính cao, caùi maø nhöõng naêm tröôùc ñaây coøn laø vaán ñeà khoù khaên cho ngaønh kinh teá. Nhöng hieän nay vieäc ñaàu tö cô sôû vaät chaát cho heä thoáng thoâng tin quaûn lyù kinh doanh khoâng coøn laø vaán ñeà khoù khaên haøng ñaàu nöõa, maø vaán ñeà ñaët ra laø tính chính xaùc, nhanh, an toaøn vaø ñoä baûo maät cuõng nhö khaû naêng quaûn lyù toaøn dieän ñeå taêng tính caïnh tranh vaø giaûm bôùt nhaân söï ñang laø vaán ñeà môùi cho moïi ngaønh quaûn lyù.
Quaûn lyù xuaát/ nhaäp haøng laø moät trong caùc hoaït ñoäng chính cuûa coâng ty. Heä thoáng quaûn lyù haøng hoaù vaø coâng nôï ñöôïc tích hôïp chung trong heä thoáng thoâng tin quaûn lyù kinh doanh cuûa coâng ty.
Tuy coù nhöõng tính naêng vaø öu ñieåm nhö ñaõ trình baøy ôû treân nhöng noù cuõng coøn nhieàu haïn cheá nhö chaïy chaäm khi khoái löôïng döõ lieäu lôùn, khaû naêng quaûn lyù khoái löôïng döõ lieäu coøn haïn cheá, khaû naêng baûo maät chöa cao, giao dieän chöa thaân thieän vôùi ngöôøi söû duïng.
2. Hieän traïng quaûn lyù kinh doanh ôû coâng ty
Qua quaù trình khaûo saùt vaø tìm hieåu thöïc teá quy trình quaûn lyù kinh doanh ôû Coâng ty, toâi naém ñöôïc moät soá hieän traïng cuûa Coâng ty nhö sau:
Coâng ty coâng nghieäp cheá bieán thöïc phaåm quoác teá –Chi nhaùnh Nha Trang laø moät chi nhaùnh cuûa toång Coâng ty ôû Malaysia. Toång Coâng ty chuyeân saûn xuaát caùc maët haøng thöïc phaåm – Caùc loaïi nöôùc traùi ñoùng lon vaø baùnh keïo caùc loaïi(Nöôùc bí, nöôùc yeán, keïo xoáp, …). Chi nhaùnh Nha Trang chòu traùch nhieäm phaân phoái caùc saûn phaåm cuûa toång Coâng ty saûn xuaát cho caùc tænh ôû khu vuïc 8 tænh mieàn trung (Khaùnh Hoaø, Ninh Thuaän, Phuù Yeân, Bình Ñònh, Gia Lai, KonTum, Ñak Lak).
2.1. Sô ñoà hoaït ñoäng kinh doanh cuûa chi nhaùnh Coâng ty
TOÅNG COÂNG TY
CAÙC CHI NHAÙNH
CAÙC SHOP
CAÙC ÑAÏI LYÙ
CC haøng
PP haøng
PP haøng
Chöùc naêng cuûa töøng thaønh phaàn trong sô ñoà.
Toång coâng ty: toång coâng ty chuyeân saûn xuaát caùc maët haøng thöïc phaåm (caùc loaïi nöôùc uoáng ñoùng lon vaø caùc loaïi baùnh keïo) vaø cung caáp caùc saûn phaåm naøy cho caùc chi nhaùnh cuûa coâng ty.
Caùc chi nhaùnh cuûa coâng ty chòu traùch nhieäm phaân phoái caùc saûn phaåm tôùi caùc cöûa haøng (Shop) vaø caùc ñaïi lyù.
2.2. Sô ñoà toå chöùc cuûa chi nhaùnh Coâng ty
BAN GIAÙM ÑOÁC
BOÄ PHAÄN KINH DOANH
BOÄ PHAÄN KEÁ TOAÙN
BOÄ PHAÄN KHO
Vai troø vaø chöùc naêng cuûa caùc boä phaän trong coâng ty laø :
Ban Giaùm ñoác chi nhaùnh : Ñieàu haønh hoaït ñoäng Coâng ty.
Boä phaän keá toaùn: Keát toaùn soå saùch.
Boä phaän kinh doanh : Tìm hieåu thò tröôøng, ñöa ra caùc chieán löôïc kinh doanh, giôùi thieäu saûn phaåm.
Boä phaän kho: Löu tröù haøng hoaù vaø baûo quaûn haøng hoùa, baùo caùo tình hình soá löôïng haøng hoaù trong kho.
3. Caùc quy trình quaûn lyù nhö sau
a. Quy trình quaûn lyù nhaäp haøng
Boä phaän kinh doanh caên cöù vaøo nhu caàu mua haøng cuûa khaùch haøng, soá löôïng haøng hoaù toàn toái thieåu, soá löôïng haøng hoaù toàn toái ña trong kho vaø danh saùch caùc maët haøng hieän coù cuûa toång coâng ty ñeå laäp ñôn ñaët haøng. Trong ñôn ñaët haøng coù ñaày ñuû thoâng tin veà chi nhaùnh coâng ty, danh saùch vaø soá löôïng caùc maët haøng caàn nhaäp veà.
Boä phaän kinh doanh seõ trình ñôn ñaët haøng leân ban giaùm ñoác kyù duyeät.
Neáu ñôn ñaët haøng ñaõ ñöôïc ban giaùm ñoác kyù duyeät thì boä phaän kinh doanh seõ göûi ñôn ñaët haøng tôùi toång coâng ty.
Neáu ñöôïc toång coâng ty chaáp thuaän cung caáp haøng thì boä phaän kinh doanh seõ laäp phieáu nhaäp haøng vaø nhaän haøng ñöa veà kho.
Moãi laàn nhaäp haøng ñeàu phaûi laøm moät phieáu nhaäp bao goàm: Thoâng tin ñaày ñuû veà nhaø cung caáp, danh saùch caùc maët haøng, soá löôïng, ngaøy nhaäp, ñôn giaù, ngaøy heïn traû tieàn theo maãu ñaõ ñöôïc in saün.
Boä phaän kinh doanh seõ chuyeån phieáu nhaäp haøng vaø phieáu thanh toaùn tôùi boä phaän keá toaùn ñeå thanh toaùn tieàn haøng cho toång coâng ty.
Caùch tính toång giaù trò haøng nhaäp:
Toång giaù trò = soá löôïng nhaäp * ñôn giaù nhaäp
Moãi laàn nhaäp haøng veà thì phaûi tieán haønh caäp nhaät laïi danh muïc haøng hoaù nhö laø theâm maët haøng (neáu ñoù laø maët haøng môùi), caäp nhaät laïi soá löôïng, tính laïi ñôn giaù (baèng phöông phaùp tính ñôn giaù bình quaân gia quyeàn).
Trong ñoù:
Dgbqck: ñôn giaù bình quaân cuoái kyø.
Tgtondk: toång giaù toàn ñaàu kyø.
Tgnhaptk: toång giaù nhaäp trong kyø.
Sltondk: soá löôïng toàn ñaàu kyø.
Slnhaptk: soá löôïng nhaäp trong kyø.
b. Quy trình quaûn lyù xuaát haøng
Khi moät khaùch haøng caàn mua haøng thì laøm moät ñôn ñaët haøng theo maãu in saün bao goàm : Phaàn ñaàu goàm nhöõng thoâng tin ñaày ñuû veà khaùch haøng, phaàn thöù hai laø danh saùch maët haøng ñaët mua, soá löôïng, ñôn giaù töøng loaïi vaø ngaøy nhaän haøng. Khi ñaët haøng, coù theå khaùch haøng ñaët moät soá tieàn naøo ñoù.
Khi mua haøng, khaùch haøng coù theå traû tieàn tröôùc hay heïn traû sau khi nhaän haøng moät soá ngaøy quy ñònh.
Ñôn ñaët haøng ñöôïc ñöa ñeán boä phaän kinh doanh ñeå xem xeùt. Neáu khaùch haøng coøn nôï treã haïn quaù moät soá tieàn quy ñònh thì boä phaän kinh doanh töø choái baùn haøng. Neáu haøng toàn kho ñuû thì cung caáp cho khaùch haøng theo ñôn ñaët haøng.
Haøng ngaøy boä phaän kinh doanh xem xeùt caùc ñôn ñaët haøng ñoàng thôøi so saùnh toàn kho, ñeå laøm giaáy baùo cho khaùch haøng nhaän haøng, giaáy baùo nôï cho khaùch haøng vaø ñaët haøng cho nhaø cung caáp khi löôïng haøng toàn vöôït döôùi möùc toàn toái thieåu.
Moãi laàn xuaát haøng ñeàu phaûi laøm moät phieáu xuaát bao goàm : Thoâng tin ñaáy ñuû veà khaùch haøng, danh saùch maët haøng, soá löôïng, ngaøy nhaäp xuaát, ñôn giaù, ngaøy heïn traû tieàn.
Caùch tính toång giaù trò haøng xuaát:
Toång giaù trò = soá löôïng xuaát * ñôn giaù xuaát
c. Thoáng keâ.
Ñònh kyø haøng thaùng phaûi baùo caùo xuaát, nhaäp toàn haøng hoaù trong thaùng theo maãu ñaõ ñònh.
Soá löôïng haøng toàn = soá löôïng haøng nhaäp – soá löôïng haøng xuaát
Taïi baát kyø thôøi ñieåm naøo, neáu ñöôïc yeâu caàu cuûa ngöôøi coù thaåm quyeàn thì phaûi baùo caùo tình hình haøng hoaù cuûa töøng loaïi, töøng kho, tình hình coâng nôï.
4. Moät soá maãu ñôn töø ñöôïc söû duïng trong quaù trình hoaït ñoäng kinh doanh
a. Maãu phieáu ñaët haøng
Maãu phieáu ñaët haøng naøy duøng chung cho caû coâng ty ñaët mua haøng vaø khaùch ñaët haøng.
COÂNG TY CN CB THÖÏC PHAÅM QUOÁC TEÁ
CHI NHAÙNH THAØNH PHOÁ NHA TRANG
Ñieän thoaïi: 834223 Fax: 834225
E-mail:
PHIEÁU ÑAËT HAØNG
(Khoâng coù giaù trò thanh toaùn)
INTERFOOD PROCESSING INDUSTRY LTD.
NHA TRANG BRANCH
Hoï vaø teân khaùch haøng: …………………………………………………… Tel: ………….
Ñòa chæ: …………… Ñöôøng: ………………… Phöôøng: ……………… Quaän: …………
MS thueá: …………….. Giao haøng: ……………giôø, ngaøy …… thaùng………naêm………
Ngöôøi nhaän ñaët haøng: ……………………………………………… Ñaët haøng TEL:
STT
MAËT HAØNG
SOÁ LÖÔÏNG
ÑÔN GIAÙ
THAØNH TIEÀN
1
2
3
4
5
6
7
8
9
10
TOÅNG COÄNG
LÖU YÙ:
* Phöông thöùc thanh toaùn: Tieàn maët: Traû chaäm: ………………………ngaøy.
Traû tieàn phieáu tröôùc môùi nhaän giao haøng phieáu sau.
Phaûi kieåm tra soá löôïng, chaát löôïng haøng khi nhaän. Chæ nhaän ñoåi laïi haøng moùp, raùch
bao bì, xì nöôùc … Trong voøng 03 ngaøy.
* Coâng nôï cuõ cuûa khaùch haøng soá HDD: …………… ngaøy mua haøng ………Trò giaù………
……………………………………………………………………………………………………………………………………………………………………………………………………
Ngaøy ………… thaùng …… naêm ……
GÑ DUYEÄT TRÖÔÛNG PHOØNG GIAÙM SAÙT TT NHAÂN VIEÂN TT
KD – TT Kieåm tra Ñaët haøng
b. Maãu phieáu nhaäp kho
Ñôn vò : …………………
Ñòa chæ : …………………
PHIEÁU NHAÄP KHO
Soá ……
Ngaøy … thaùng …. Naêm …….
Maãu soá : 01 – VT
Ban haønh theo QÑ soá : 1141 – TC/QÑ/CÑKT
Ngaøy 1 thaùng 11 naêm 1995
Cuûa Boä Taøi Chính
- Hoï vaø teân ngöôøi giao haøng: ……………………………………………………………
- Theo …………………… soá……………… ngaøy ……… thaùng…………naêm……
Cuûa ………………………………………………………………………………………
Nhaäp taïi kho : ……………………………………………………………………………
STT
TEÂN, NHAÕN HIEÄU, QUY CAÙCH, PHAÅM CHAÁT VAÄT TÖ
(SAÛN PHAÅM, HAØNG HOAÙ)
Maõ soá
Ñôn vò tính
SOÁ LÖÔÏNG
Ñôn giaù
Thaønh tieàn
Theo chöùng töø
Thöïc nhaäp
A
B
C
D
1
2
3
4
COÄNG
x
x
x
x
x
ngaøy …… thaùng …… naêm ….
THUÛ TRÖÔÛNG ÑÔN VÒ NGÖÔØI NHAÄN NGÖÔØI GIAO NGÖÔØI LAÄP PHIEÁU
c. Maãu phieáu xuaát kho
Ñôn vò : …………………
Ñòa chæ : …...……………
PHIEÁU XUAÁT KHO
Ngaøy … thaùng …. Naêm …….
Soá : …………
Nôï:………………………...
Coù: …..……………………
Hoï vaø teân ngöôøi nhaän haøng: ……………………………………………………………
Ñòa chæ (boä phaän): ………………………………………………………………………
Lyù do xuaát kho: …………………………………………………………………………
Xuaát taïi kho: ……………………………………………………………………………
STT
TEÂN, NHAÕN HIEÄU, QUY CAÙCH, PHAÅM CHAÁT VAÄT TÖ
(Saûn phaåm haøng hoaù)
Maõ soá
Ñôn vò tính
SOÁ LÖÔÏNG
Ñôn giaù
Thaønh tieàn
Yeâu caàu
Thöïc xuaát
A
B
C
D
1
2
3
4
COÄNG:
Toång soá tieàn (Vieát baèng chöõ): ………………………………………………………
Xuaát, ngaøy …… thaùng …… naêm ……
Phuï traùch boä phaän Phuï traùch keá toaùn Ngöôøi nhaän Thuû kho
d. Maãu phieáu ñeà nghò thanh toaùn
Maãu phieáu naøy duøng chung cho caû coâng ty vaø khaùch mua hang.
OFFICIAL RECEIPT
PHIEÁU THU
Date: ……/ …… / ………
CREDIT
TAØI KHOAÛN GHI COÙ …………………
RECEIVED FORM M/S
Nhaän cuûa ……………………………………………..…………………………………..
POST
Boä phaän coâng taùc …………………………………………………………………………
BEING
Veà khoaûn: …………………………………………………………………………………
…………………………………………………………………………………………….
AMOUNT (IN WORDS)
Soá tieàn …………………..………………… ñoàng (baèng chöõ) …………………………..
…………………………………………………………………………………………….
ENCLOSE DOCUMENTS
Keøm theo ……………………………………………………. Chöùng töø goác
Date: ……../ ………../ …………
THUÛ TRÖÔÛNG ÑÔN VÒ KEÁ TOAÙN TRÖÔÛNG KT THANH TOAÙN THUÛ QUYÕ NGÖÔØI NOÄP
MANAGER CHIEF ACCOUNT ACCOUNTANT CASHIER ACKNOWLEDGET BY
INTERFOOD PROCESSING INDUSTRY LTD
COÂNG TY COÂNG NGHIEÄP CHEÁ BIEÁN THÖÏC PHAÅM QUOÁC TEÁ
NHA TRANG BRANCH
CHI NHAÙNH TP.NHA TRANG
MST: 360024563.1.004.1
No
Soá …… Maãu soá 3 - TM
II. PHAÂN TÍCH VAØ LAÄP DÖÏ AÙN
1. Phaân tích
Qua thöïc teá khaûo saùt, ta caàn quaûn lyù caùc ñoái töôïng chính trong heä thoáng quaûn lyù xuaát nhaäp haøng nhö sau: Khaùch haøng (bao goàm caû nhaø cung caáp vaø khaùch mua hang), Haøng hoaù, Kho.
a. Quaûn lyù khaùch haøng: Moïi khaùch haøng cuûa Coâng ty (bao goàm caû nhaø cung caáp vaø khaùch mua haøng) ñeàu ñöôïc Coâng ty quaûn lyù nhöõng thoâng tin chính sau:
Hoï khaùch haøng
Teân khaùch haøng
Teân giao dòch
Ñòa chæ
Soá ñieän thoaïi
Soá fax
Soá taøi khoaûn ngaân haøng
Trong ñoù ñòa chæ khaùch haøng bao goàm:
+ Soá nhaø
+ Ñöôøng
+ Huyeän
+ Tænh
+ Thaønh phoá
+ Quoác gia
b. Quaûn lyù haøng hoaù: Moãi maët haøng ñöôïc quaûn lyù caùc thoâng tin sau:
Teân maët haøng
Nhoùm haøng
Nôi saûn xuaát (haõng saûn xuaát, nöôùc saûn xuaát)
Ñôn vò tính
Soá löôïng toàn toái thieåu
Soá löôïng toàn toái ña
c. Quaûn lyù kho: Haøng hoaù ñöôïc caát giöõ taïi nhieàu kho, moãi kho ñöôïc quaûn lyù caùc thoâng tin sau:
Teân kho
Ñòa chæ kho
Ñieän thoaïi kho
Soá fax
Thuû kho
2. Laäp döï aùn
Qua quaù trình khaûo saùt thöïc teá cuõng nhö phaân tích kyõ yeâu caàu thieát yeáu, toâi ñöa ra moâ hình heä thoáng quaûn lyù xuaát nhaäp haøng nhö sau:
Caàn thieát nhaát laø heä thoáng phaûi quaûn lyù ñöôïc ñaày ñuû thoâng tin veà khaùch haøng, haøng hoaù, kho, caùc hoaù ñôn chöùng töø, cuõng nhö khaû naêng tính toaùn, choïn loïc thoáng keâ vaø in aán caùc thoâng tin.
Phaûi ñaûm baûo ñoä chính xaùc, an toaøn vaø tin caäy cao.
3. Döõ lieäu vaøo, döõ lieäu ra vaø caùc chöùc naêng xöû lyù cuûa heä thoáng
Döõ lieäu vaøo:
Caùc thoâng tin veà khaùch haøng nhö: hoï vaø teân, teân giao dòch, soá nhaø, ñieän thoaïi, fax, taøi khoaûn ngaân haøng, soá tieàn nôï coù theå.
Caùc thoâng tin veà haøng hoaù: teân maët haøng, nhoùm maët haøng, nôi saûn xuaát (haõng saûn xuaát, nöôùc saûn xuaát), ñôn vò tính, soá löôïng toàn toái thieåu, soá löôïng toàn toái ña.
Thoâng tin veà kho haøng: teân kho, ñòa chæ, ñieän thoaïi, fax, thuû kho.
Döõ lieäu ra:
Ñöa ra danh saùch chi tieát veà khaùch haøng
Danh saùch chi tieát veà caùc maët haøng
Danh saùch chi tieát veà caùc kho haøng
In ra danh saùch caùc ñôn ñaët haøng.
In ra danh saùch caùc phieáu xuaát/ nhaäp haøng.
In ra caùc phieáu thanh toaùn.
Thoáng keâ toång soá löôïng haøng nhaäp, toång soá löôïng haøng xuaát trong kyø vaø soá löôïng haøng toàn ton cuoái kyø.
Cho pheùp xuaát döõ lieäu ra maùy in hoaëc maøn hình töøng haïn muïc yeâu caàu. In aán caùc hoaù ñôn chöùng töø.
Chöùc naêng trung taâm:
Xöû lyù, löu tröõ ñôn ñaët haøng, phieáu xuaát nhaäp haøng, phieáu thanh toaùn vaø tính toaùn giaù trò haøng hoaù.
Löu tröõ vaø baûo maät döõ lieäu quaûn lyù hoaù ñôn chöùng töø lieân quan ñeán vieäc xuaát/ nhaäp haøng, haøng hoaù, kho haøng vaø khaùch haøng.
Chöùc naêng cuûa nhaø quaûn lyù nhö:
+ Laäp ñôn ñaët haøng,
+ Laäp phieáu xuaát/ nhaäp haøng,
+ Laäp phieáu thanh toaùn,
+ Laäp baùo caùo veà tình hình hoaït ñoäng kinh doanh.
CHÖÔNG II
PHAÂN TÍCH VAØø THIEÁT KEÁ HEÄ THOÁNG
I. HEÄ THOÁNG THOÂNG TIN
Heä thoáng laø moät taäp hôïp coù quan heä, töông taùc qua laïi vôùi nhau hình thaønh neân moät theå thoáng nhaát.
Heä thoáng kinh doanh vaø heä thoáng dòch vuï: laø nhöõng heä thoáng cuûa con ngöôøi nhaèm muïc ñích kinh doanh hay dòch vuï. Caùc heä thoáng con cuûa heä thoáng kinh doanh – dòch vuï bao goàm 3 heä thoáng nhö sau:
Heä thoáng nghieäp vuï: bao goàm ngöôøi, phöông tieän, phöông phaùp tröïc tieáp tham gia vaøo quaù trình bieán ñoåi luoàng vaøo thaønh luoàng ra.
Heä thoáng quyeát ñònh: bao goàm ngöôøi, phöông tieän, phöông phaùp tham gia vaøo vieäc ñeà xuaát caùc quyeát ñònh.
Heä thoáng thoâng tin: bao goàm ngöôøi, phöông tieän, phöông phaùp tham gia vaøo vieäc xöû lyù caùc thoâng tin.
Vai troø vaø nhieäm vuï cuûa heä thoáng thoâng tin:
Heä thoáng thoâng tin ñoùng vai troø trung gian giöõa beân trong vaø beân ngoaøi heä thoáng vaø nhöõng heä thoáng con.
Nhieäm vuï cuûa heä thoáng thoâng tin: nhaèm thu thaäp, löu tröõ, kieåm tra, keát xuaát, truyeàn ñaït thoâng tin.
II. TOÅNG QUAN VEÀ HEÄ THOÁNG THOÂNG TIN
Heä thoáng thoâng tin giao dòch xuaát nhaäp haøng laø moät heä thoáng thoâng tin hoaït ñoäng vôùi söï trôï giuùp cuûa tin hoïc nhaèm quaûn lyù vaø thöïc hieän caùc giao dòch xuaát nhaäp. Ñaàu vaøo cuûa heä thoáng laø thoâng tin chi tieát veà teân, giaù caû, soá löôïng caùc danh muïc haøng hoaù xuaát – nhaäp, toàn kho, caùc toång keát veà quaù trình giao dòch xuaát nhaäp.
1. Caùc ñoái töôïng yeâu caàu quaûn lyù
Qua quaù trình khaûo saùt thöïc teá, ta caàn quaûn lyù caùc ñoái töôïng chính trong heä thoáng quaûn lyù xuaát nhaäp haøng nhö sau: Khaùch haøng (bao goàm caû nhaø cung caáp vaø khaùch mua haøng), Haøng hoaù, Kho, Ñôn ñaët haøng, Phieáu nhaäp/ xuaát haøng, phieáu thanh toaùn.
a. Quaûn lyù khaùch haøng: Moïi khaùch haøng cuûa Coâng ty (bao goàm caû nhaø cung caáp vaø khaùch mua haøng) ñeàu ñöôïc Coâng ty quaûn lyù nhöõng thoâng tin chính sau:
Maõ khaùch haøng
Hoï khaùch haøng
Teân khaùch haøng
Teân giao dòch
Ñòa chæ
Soá ñieän thoaïi
Soá fax
Soá taøi khoaûn ngaân haøng
Trong ñoù ñòa chæ khaùch haøng bao goàm:
+ Soá nhaø
+ Ñöôøng
+ Huyeän
+ Tænh
+ Thaønh phoá
+ Quoác gia
b. Quaûn lyù haøng hoaù: Moãi maët haøng ñöôïc quaûn lyù caùc thoâng tin sau:
Maõ maët haøng
Teân maët haøng
Nhoùm haøng
Nôi saûn xuaát (haõng saûn xuaát, nöôùc saûn xuaát)
Ñôn vò tính
Soá löôïng toàn toái thieåu
Soá löôïng toàn toái ña
c. Quaûn lyù kho: Haøng hoaù ñöôïc caát giöõ taïi nhieàu kho, moãi kho ñöôïc quaûn lyù caùc thoâng tin sau:
Maõ kho
Teân kho
Ñòa chæ kho
Ñieän thoaïi kho
Soá fax
Thuû kho
d. Quaûn lyù ñôn ñaët haøng:
Maõ ñôn ñaët haøng
Soá löôïng ñaët haøng
Ñôn giaù ñaët haøng
Ngaøy giao
e. Quaûn lyù phieáu nhaäp xuaát haøng: (caû phieáu nhaäp vaø xuaát haøng)
Maø phieáu nhaäp xuaát haøng
Soá löôïng nhaäp xuaát haøng
Ñôn giaù nhaäp xuaát haøng
Ngaøy nhaäp xuaát haøng
Ngaøy heïn traû tieàn
f. Quaûn lyù phieáu thanh toaùn:
Maõ phieáu thanh toaùn
Ngaøy thanh toaùn
Soá tieàn
g. Quaûn lyù ngaân haøng:
Maõ ngaân haøng
Teân ngaân haøng
2. Caùc chöùc naêng cuûa heä thoáng
Quaûn lyù nhaäp haøng: quaûn lyù caùc thoâng tin veà nhaäp haøng hoaù
Thoâng tin vaøo: caùc thoâng tin cô baûn veà maët haøng caàn nhaäp (maõ haøng, teân haøng, soá löôïng, giaù nhaäp, nhaø cung caáp).
Thoâng tin ra: danh muïc haøng caàn nhaäp.
quaûn lyù xuaát haøng: quaûn lyù caùc thoâng tin lieân quan trong coâng taùc xuaát haøng cuûa Coâng ty.
Thoâng tin vaøo: caùc thoâng tin cô baûn khaùch haøng yeâu caàu, thoâng tin veà haøng hoaù, thoâng tin veà kho haøng.
Thoâng tin ra: danh muïc haøng xuaát kho, phieáu xuaát haøng.
Thoáng keâ: thoáng keâ vaø baùo caùo veà hoaït ñoäng giao dòch kinh doanh.
Thoâng tin vaøo: caùc yeâu caàu thoáng keâ.
Thoâng tin ra: baùo caùo thoáng keâ.
Tìm kieám: tìm kieám caùc thoâng tin lieân quan ñeán hoaït ñoäng nhaäp, xuaát haøng hoaù.
Thoâng tin vaøo: caùc yeâu caàu tìm kieám.
Thoâng tin ra: caùc keát quaû tìm kieám.
Qua treân ta thaáy ñöôïc caùc chöùc naêng chuû yeáu cuûa moät heä thoáng thoâng tin giao dòch xuaát nhaäp haøng hoaù. Caùc chöùc naêng naøy ñöôïc chia nhoû ra vaø ñöôïc trình baøy trong sô ñoà phaân raõ chöùc naêng döôùi ñaây, ñeå cho ta hình dung heä thoáng moät caùch chi tieát hôn.
III. SÔ ÑOÀ PHAÂN RAÕ CHÖÙC NAÊNG (BPC) CUÛA HEÄ THOÁNG
1. Sô ñoà phaân raõ toång theå
HOAÏT ÑOÄNG GIAO DÒCH XUAÁT NHAÄP HAØNG
QUAÛN LYÙ XUAÁT HAØNG
THOÁNG KEÂ VAØ BAÙO CAÙO
TÌM KIEÁM
QUAÛN LYÙ NHAÄP HAØNG
2. Sô ñoà chöùc naêng chi tieát.
a. Chöùc naêng quaûn lyù nhaäp haøng.
QUAÛN LYÙ NHAÄP HAØNG
GHI NHAÄN NHAØ CUNG CAÁP MÔÙI
LAÄP ÑÔN ÑAËT HAØNG
LAÄP PHIEÁU NHAÄP HAØNG
THANH TOAÙN
CHOÏN NHAØ CUNG CAÁP THÍCH HÔÏP
KHÔÙP VÔÙI ÑÔN HAØNG VEÀ
CAÄP NHAÄT DANH MUÏC HAØNG
Giaûi thích caùc chöùc naêng:
Choïn nhaø cung caáp môùi: Khi coâng ty muoán nhaäp haøng thì tröôùc heát phaûi choïn nhaø cung caáp thích hôïp ñeå laøm ñoái taùc, tieâu chí choïn nhaø cung caáp ñöôïc döïa treân caùc thoâng tin veà nhaø cung caáp vaø caùc maët haøng maø nhaø cung caáp ñoù coù khaû naêng cung öùng.
Ghi nhaän nhaø cung caáp môùi: Khi nhaø cung caáp naøo ñoù ñöôïc choïn laøm ñoái taùc thì seõ löu laïi caùc thoâng tin veà nhaø cung caáp (Hoï teân nhaø cung caáp, ñòa chæ, ñieän thoaïi, …).
Laäp ñôn ñaët haøng: Khi ñaõ choïn nhaø cung caáp naøo ñoù laøm ñoái taùc roài thì boä phaän kinh doanh seõ tieán haønh laäp ñôn ñaët haøng ñeå göûi tôùi nhaø cung caáp ñaët mua haøng.
Laäp phieáu nhaäp haøng: Khi ñaõ ñöôïc nhaø cung caáp thoaû thuaän cung öùng haøng hoaù thì boä phaän kinh doanh seõ tieán haønh laäp phieáu nhaäp haøng vaø nhaän haøng veà coâng ty.
Caäp nhaät danh muïc haøng: Moãi khi nhaäp haøng veà thì tieán haønh caäp nhaät laïi danh muïc haøng nhö laø Teân maët haøng (neáu laø maët haøng môùi), soá löôïng, …
Khôùp vôùi ñôn haøng veà: Tieán haønh so saùnh caùc hoaù ñôn chöùng töø vôùi löôïng haøng nhaän veà xem ñaõ ñuû soá löôïng, ñuùng maët haøng nhö yeâu caàu hay chöa.
Thanh toaùn: Sau khi khôùp vôùi ñôn haøng veà xong maø khoâng sai soùt gì thì baét ñaàu laäp phieáu thanh toaùn, tieán haønh vieäc thanh toaùn tieàn haøng cho nhaø cung caáp.
b. Chöùc naêng quaûn lyù xuaát haøng.
QUAÛN LYÙ XUAÁT HAØNG
GHI NHAÄN KHAÙCH HAØNG MÔÙI
GIAÛI QUYEÁT ÑÔN ÑAËT HAØNG
LAÄP PHIEÁU XUAÁT HAØNG
CAÄP NHAÄT DANH MUÏC HAØNG
THANH TOAÙN
GIAÛI QUYEÁT XUAÁT HAØNG
Giaûi thích caùc chöùc naêng:
Ghi nhaän khaùch haøng môùi: Khi coù khaùch haøng môùi ñaët mua haøng thì seõ löu laïi moät soá thoâng tin veà khaùch haøng môùi ñoù (nhö laø Hoï teân khaùch haøng, ñòa chæ, ñieän thoaïi, …).
Giaûi quyeát ñôn ñaët haøng: Sau khi nhaän ñôn ñaët haøng cuûa khaùch haøng thì boä phaän kinh doanh seõ tieán haønh giaûi quyeát ñôn ñaët haøng, neáu ñuû ñieàu kieän thì chaáp nhaän baùn haøng, ngöôïc laïi thì heïn laïi vôùi khaùch haøng haëc töø choái baùn haøng.
Laäp phieáu xuaát haøng: Döïa vaøo caùc ñôn ñaët haøng ñaõ ñöôïc giaûi quyeát, boä phaän kinh doanh seõ tieán haønh laäp phieáu xuaát haøng.
Giaûi quyeát xuaát haøng: Laäp caùc hoaù ñôn chöùng töø xuaát haøng, tieán haønh xuaát haøng cho khaùch mua haøng.
Caäp nhaät danh muïc haøng: Moãi laàn xuaát haøng thì phaûi tieán haønh caäp nhaät laïi danh muïc haøng.
Thanh toaùn: Sau khi giaûi quyeát xuaát haøng thì baét ñaàu laäp phieáu thanh toaùn, tieán haønh thu tieàn baùn haøng.
c. Chöùc naêng thoáng keâ vaø baùo caùo.
THOÁNG KEÂ VAØ BAÙO CAÙO
THOÁNG KEÂ HAØNG NHAÄP
THOÁNG KEÂ HAØNG XUAÁT
THOÁNG KEÂ HAØNG TOÀN
THOÁNG KEÂ NHAÄP XUAÁT CHI TIEÁT
Giaûi thích caùc chöùc naêng:
Thoáng keâ haøng nhaäp: Thoáng keâ löôïng haøng hoaù nhaäp veà theo thaùng hoaëc theo yeâu caàu cuûa ban quaûn lyù.
Thoáng keâ haøng xuaát: Thoáng keâ löôïng haøng hoaù xuaát baùn theo thaùng hoaëc theo yeâu caàu cuûa ban quaûn lyù.
Thoáng keâ haøng toàn: Thoáng keâ löôïng haøng hoaù coøn toàn trong kho theo thaùng hoaëc theo yeâu caàu cuûa ban quaûn lyù.
d. Chöùc naêng tìm kieám.
TÌM KIEÁM
TÌM KIEÁM PHIEÁU NHAÄP HAØNG
TÌM KIEÁM PHIEÁU THU
TÌM KIEÁM PHIEÁU CHI
TÌM KIEÁM PHIEÁU XUAÁT HAØNG
Giaûi thích caùc cöùc naêng:
Tìm kieám phieáu nhaäp haøng: Tieán haønh tìm kieám phieáu nhaäp haøng khi nhaø cung caáp yeâu caàu.
Tìm kieám phieáu xuaát haøng: Tieán haønh tìm kieám phieáu xuaát haøng khi khaùch haøng yeâu caàu.
Tìm kieám phieáu chi: Tieán haønh tìm kieám phieáu chi tieàn khi nhaø cung caáp yeâu caàu.
Tìm kieám phieáu thu: Tieán haønh tìm kieám phieáu thu tieàn khi khaùch haøng yeâu caàu.
IV. BIEÅU ÑOÀ LUOÀNG DÖÕ LIEÄU
Muïc ñích:
Söï dieãn taû laø ôû möùc logic, nghóa laø nhaèm traû lôøi caâu hoûi “Laøm gì?”, maø boû qua caâu hoûi “Laøm nhö theá naøo?”.
Chæ roû caùc chöùc naêng (con) phaûi thöïc hieän ñeå hoaøn taát quaù trình xöû lyù caàn moâ taû.
Chæ roõ caùc thoâng tin ñöôïc chuyeån giao giöõa caùc chöùc naêng ñoù, vaø qua ñoù phaàn naøo thaáy ñöôïc trình töï thöïc hieän cuûa chuùng.
Phaân möùc:
Duøng bieåu ñoà phaân caáp chöùc naêng ta coù caùc möùc nhö sau:
Möùc khung caûnh: coù moät chöùc naêng vôùi caùc luoàng vaøo ra.
Möùc ñænh: chöùc naêng cuûa heä thoáng ñöôïc phaân ra thaønh nhieàu chöùc naêng con.
Möùc döôùi ñænh: giaûi thích moãi chöùc naêng töông töùng cuûa möùc ñænh.
1. Bieåu ñoà luoàng döõ lieäu möùc khung caûnh
NHAØ CUNG CAÁP
KHAÙCH HAØNG
Hoaït ñoäng giao dòch xuaát nhaäp haøng
Thoâng tin veà haøng
Ñôn ñaët haøng
Hoaù ñôn
Töø choái
Phieáu traû tieàn
Haøng hoaù
Thoâng boaù hoaù ñôn sai
Y/C tìm kieám ÑÑH/ PTT
Thoáng keâ
Baùo caùo
Thoâng tin veà haøng
Ñôn ñaët haøng
Töø choái
Hoaù ñôn
Phieáu traû tieàn
Y/C tìm kieám ÑÑH/ PTT
Haøng hoaù
Yeâu caàu thoáng keâ
BAN QUAÛN LYÙ
2. Beåu ñoà luoàng döõ lieäu möùc ñænh
NHAØ CUNG CAÁP
KHAÙCH HAØNG
Quaûn lyù xuaát haøng
Thoâng tin veà haøng
Ñôn ñaët haøng
Hoaù ñôn
Töø choái
Phieáu traû tieàn
Thoâng baùo HÑ sai
Thoâng boaù HÑ sai
Y/C tìm kieám
Thoâng tin veà haøng
Ñôn ñaët haøng
Töø choái
Hoaù ñôn
Phieáu traû tieàn
Y/C tìm kieám
Y/C thoáng keâ
Quaûn lyù nhaäp haøng
BAN QUAÛN LYÙ
Thoáng keâ
Tìm kieám
Danh muïc haøng
Phieáu N/X
Phieáu TT
Y/C tìm kieám
3. Bieåu ñoà luoàng döõ lieäu möùc döôùi ñænh
a. Chöùc naêng quaûn lyù nhaäp haøng
Laäp phieáu thanh toaùn
Khôùp ñôn vôùi haøng veà
Thanh toaùn
Ghi nhaän NCC môùi
Choïn NCC
Laäp ñôn ñaët haøng
Nhaø cung caáp
Ñôn ñaët haøng
Nhaø cung caáp
Phieáu nhaäp haøng
Danh muïc haøng
Ban quaûn lyù
Thoâng tin veà haøng hoaù, nhaø CC
Töø choái
Thoâng tin veà NCC môùi
T/t veà NCC ñöôïc choïn
Ñôn ñaët haøng
Thoâng baùo hoaù ñôn sai
Caäp nhaät DM haøng
Laäp phieáu nhaäp haøng
Hoaù ñôn
Phieáu traû tieàn
Laäp baùo caùo
Phieáu thanh toaùn
b. Chöùc naêng quaûn lyù xuaát haøng
Thanh toaùn
Laäp phieáu thanh toaùn
Ghi nhaän KH môùi
Giaûi quyeát ñôn ñaët haøng
Khaùch haøng
Khaùch haøng
Phieáu xuaát haøng
Danh muïc haøng
Thoâng tin veà haøng hoaù
Töø choái
Thoâng tin veà KH môùi
Ñôn ñaët haøng
Hoaù ñôn
Laäp phieáu xuaát haøng
Hoaù ñôn
Phieáu traû tieàn
Ñôn ñaët haøng
Phieáu thanh toaùn
Thoâng baùo veà hoaù ñôn sai
Giaûi quyeát xuaát haøng
Ñôn ÑH ñöôïc giaûi quyeát
Phieáu xuaát haøng
Phieáu phaùt haøng
Laäp baùo caùo
Ban quaûn lyù
c. Chöùc naêng thoáng keâ
Ban quaûn lyù
Thoáng keâ haøng nhaäp
Laäp nhaät kyù nhaäp xuaát chi tieát
Thoáng keâ haøng toàn
Thoáng keâ haøng xuaát
Phieáu N/X
Yeâu caàu thoáng keâ
Yeâu caàu
Yeâu caàu
Yeâu caàu thoáng keâ
d. Chöùc naêng tìm kieám
Nhaø CC
Tìm kieám phieáu nhaäp haøng
Tìm kieám phieáu xuaát haøng
Tìm kieám phieáu TT
Tìm kieám phieáu TT
Phieáu nhaäp xuaát
Phieáu thanh toaùn
Y/ c tìm kieám PN
Y/C tìm kieám PX
Y/c tìm kieámPTT
Khaùch haøng
Y/C tìm kieám PTT
V. MOÂ HÌNH THÖÏC THEÅ
1. Moät soá khai nieäm veà moâ hình thöïc theå
Khaùi nieäm: Laø moâ hình döõ lieäu logic ñöôïc xaây döïng treân caùc khaùi nieäm logic nhö: Thöïc theå, kieåu thöïc theå, thuoäc tính vaø quan heä.
Thöïc theå: Thöïc theå laø moät chuû ñieåm, moät nhieäm vuï, moät ñoái töôïng hay moät söï kieän ñaùng quan taâm trong thöïc teá, keå caû thoâng tin maø noù löu giöõ laø coù ích cho heä thoáng.
Kieåu thöïc theå: Laø taäp hôïp caùc thöïc theå coù cuøng baûn chaát ñöôïc bieåu dieãn.
Thuoäc tính: Sau khi xaùc ñònh ñöôïc kieåu thöïc theå vaø thöïc theå thì ta xeùt ñeán nhöõng thoâng tin naøo caàn thieát phaûi ñöôïc löu giöõ cho moãi thöïc theå, ñoù chính laø caùc thuoäc tính. Caùc thuoäc tính ñaëc tröng cuûa thöïc theå thöôøng ñöôïc bieåu dieãn baèng caùc tröôøng hoaëc coät trong baûng.
Quy taéc xaùc ñònh caùc thuoäc tính cuûa thöïc theå:
Töø tri thöùc cuûa chính baûn thaân veà thöïc theå coâng vieäc chung trong lónh vöïc mình ñang nghieân cöùu maø ñöa ra caùc thuoäc tính trong moãi thuïc theå.
Töø ngöôøi tieáp xuùc phoûng vaán.
Töø vieäc xem xeùt caùc baûng bieåu, taøi lieäu lieân quan ñeán lónh vöïc ñang nghieân cöùu.
Lieân keát: Laø söï keát noái hay lieân quan giöõa hai hay nhieàu thöïc theå phaûn aùnh söï raøng buoäc veà quaûn lyù.
Kieåu lieân keát: Laø taäp hôïp nhieàu lieân keát coù daïng gioáng nhau giöõa caùc caëp thöïc theå.
Coù 3 kieåu lieân keát nhö sau:
Lieân keát Moät – Moät:
Moät thöïc theå thuoäc kieåu thöïc theå A lieân keát vôùi moät thöïc theå thuoäc kieåu thöïc theå B vaø ngöôïc laïi.
A
B
Lieân keát Moät – Nhieàu:
Moät thöïc theå thuoäc kieåu thöïc theå A lieân keát vôùi nhieàu thöïc theå thuoäc kieåu thöïc theå B.
Moät thöïc theå thuoäc kieåu thöïc theå B lieân keát vôùi moät thöïc theå thuoäc kieåu thöïc theå A.
A
B
Lieân keát Nhieàu – Nhieàu:
Moät thöïc theå thuoäc kieåu thöïc theå A lieân keát vôùi nhieàu thöïc theå thuoäc kieåu thöïc theå B.
Moät thöïc theå thuoäc kieåu thöïc theå B lieân keát vôùi nhieàu thöïc theå thuoäc kieåu thöïc theå A.
A
B
Quy taéc xaùc ñònh lieân keát:
Moät lieân keát toàn taïi giöõa hai thöïc theå khaùc nhau thuoäc hai baûng khaùc nhau neáu caàn phaûi giöõ thoâng tin trong thöïc theå naøy veà thöïc theå kia.
Trong lieân keát Moät – Nhieàu, thöïc theå giöõ thoâng tin keát noái theo ñònh nghóa laø ôû ñaàu nhieàu.
Caùc lieân keát giaùn tieáp (Nhieàu – Nhieàu) ñöôïc bieán ñoåi thaønh caùc lieân keát Moät - Nhieàu.
Chuaån hoaù döõ lieäu: Chuaån hoaù laø quaù trình phaân tích chuyeån hoùa caùc thöïc theå thaønh moät daïng maø toái thieåu vieäc laëp laïi, khoâng dö thöøa nhöng döõ lieäu vaãn ñaày ñuû.
Caùc quy taéc chuaån hoaù:
Quy taéc chuaån hoaù 1: Baûng khoâng ñöôïc chöùa nhöõng thuoäc tính xuaát hieän nhieàu laàn.
Quy taéc chuaån hoaù 2: Moïi thuoäc tính phaûi phuï thuoäc haøm vaøo toaøn boä khoaù.
Quy taéc chuaån hoaù thöù 3: Moãi thuoäc tính chæ phuï thuoäc haøm vaøo toaøn boä khoaù maø khoâng phuï thuoäc haøm vaøo baát cöù thuoäc tính naøo khaùc trong baûng.
Treân ñaây laø sô löôïc lyù thuyeát veà vieäc xaây döïng cô sôû döõ lieäu cho heä thoáng thoâng tin. Töø söï phaân tích ñaàu vaøo vaø ñaàu ra cuûa heä thoáng, töø caùc bieåu ñoà luoàng döõ lieäu, ta seõ thaáy roõ veà cô sôû döõ lieäu cuûa heä thoáng.
2. Xaùc ñònh caùc thöïc theå cuûa heä thoáng vaø caùc thuoäc tính cuûa chuùng
Vôùi baøi toaùn quaûn lyù giao dòch xuaát nhaäp haøng, heä thoáng goàm coù caùc thöïc theå vaø thuoäc tính nhö sau (sau khi ñaõ chuaån hoaù):
Khaùch haøng (Duøng cho caû nhaø cung caáp vaø khaùch mua haøng):
Maõ KH
Hoï KH
Teân KH
Teân giao dòch
Soá nhaø KH
DT khaùch haøng
Fax KH
Taøi khoaûn
ST nôï coù theå
Maõ huyeän
Maõ ñöôøng
Maõ NH
Maët haøng :
Maõ haøng
Teân haøng
SL toàn TT
SL toàn TD
Maõ HSX
Maõ DVT
Maõ nhoùm
Quaûn lyù kho :
Maõ kho
Teân kho
DT kho
Fax kho
Soá nhaø kho
Thuû kho
Maõ ñöôøng
Quaûn lyù ñôn ñaët haøng :
Maõ DDH
Maõ KH
Ngaøy DH
Haïn ngaøy giao
Doøng ñôn ñaët haøng
Maõ DDH
Maõ haøng
Soá löôïng DH
Ñôn giaù DH
Quaûn lyù phieáu nhaäp xuaát haøng :
Maø PNXH
Maõ DDH
Maõ kho
Ngaøy NXH
Ngaøy HTT
Ngaøy laäp PNX
Quaûn lyù doøng phieáu nhaäp xuaát haøng :
Maø PNXH
Maõ haøng
Soá löôïng NXH
Ñôn giaù NXH
Quaûn lyù phieáu thanh toaùn :
Maõ PTT
Maõ PNXH
Ngaøy TT
Soá tieàn
Quaûn lyù ñöôøng :
Maõ ñöôøng
Teân ñöôøng
Quaûn lyù ngaân haøng :
Maõ NH
Teân NH
Quaûn lyù huyeän :
Maõ huyeän
Teân huyeän
Maõ tænh
Quaûn lyù tænh :
Maõ tænh
Teân tænh
Maõ nöôùc
Quaûn lyù nöôùc :
Maõ nöôùc
Teân nöôùc
Quaûn lyù haõng saûn xuaát :
Maõ HSX
Teân HSX
Maõ nöôùc
Quaûn lyù ñôn vò tính :
Maõ DVT
Teân DVT
Quaûn lyù nhoùm haøng :
Maõ nhoùm
Teân nhoùm
Xaây döïng moâ hình thöïc theå lieân keát
KHAÙCH HAØNG
Maõ KH
Hoï KH
Teân KH
Teân giao dòch
Soá nhaø KH
DT khaùch haøng
Fax KH
Taøi khoaûn
ST nôï coù theå
Maõ huyeän
Maõ ñöôøng
Maõ NH
HUYEÄN
Maõ huyeän
Teân huyeän
Maõ tænh
ÑÖÔØNG
Maõ ñöôøng
Teân ñöôøng
KHO
Maõ kho
Teân kho
DT kho
Fax kho
Soá nhaø kho
Thuû kho
Maõ ñöôøng
TÆNH
Maõ tænh
Teân tænh
Maõ nöôùc
NÖÔÙC
Maõ nöôùc
Teân nöôùc
HAÕNG SX
Maõ HSX
Teân HSX
Maõ nöôùc
DV TÍNH
Maõ DVT
Teân DVT
MAËT HAØNG
Maõ haøng
Teân haøng
SL toàn TT
SL toàn TD
Maõ HSX
Maõ DVT
Maõ nhoùm
NHOÙM
Maõ nhoùm
Teân nhoùm
NGAÂN HAØNG
Maõ NH
Teân NH
ÑÔNDHAØNG
Maõ DDH
Maõ KH
Ngaøy DH
Haïn ngaøy giao
DOØNGÑÔNDH
Maõ DDH
Maõ haøng
Soá löôïng DH
Ñôn giaù DH
NX HAØNG
Maõ PNXH
Maõ DDH
Maõ kho
Ngaøy NXH
Ngaøy HTT
Ngaøy laäp PNX
THANH TOAN
Maõ PTT
Maõ PNXH
Ngaøy TT
Soá tieàn
DOØNGNX HAØNG
Maõ PNXH
Maõ haøng
Soá löôïng NXH
Ñôn giaù NXH
VI. MOÂ HÌNH TOÅ CHÖÙC DÖÕ LIEÄU
Moâ hình naøy chính laø löôïc ñoà cô sôû döõ lieäu cuûa heä thoáng. Ñaây laø böôùc trung gian chuyeån ñoåi giöõa moâ hình thöïc theå (gaàn vôùi ngöôøi söû duïng) vaø moâ hình vaät lyù döõ lieäu (moâ hình trong maùy tính), chuaån bò cho vieäc caøi ñaët heä thoáng.
Töø moâ hình thöïc theå ôû treân ta chuyeån thaønh moâ hình toå chöùc döõ lieäu cuûa baøi toaùn nhö sau :
NUOC(MaNuoc, TenNuoc)
TINH(MaTinh, TenTinh, MaNuoc)
HUYEN(MaHuyen, TenHuyen, MaTinh)
DUONG(MaDuong, TenDuong)
HANG SX(MaHSX, TenHSX, MaNuoc)
DVTINH(MaDVT, TenDVT)
NHOM(MaNhom, TenNhom)
MATHANG(MaHang, TenHang, SLTonTT, SLTonTD, MaDVT, MaHSX, MaNhom)
KHO(MaKho, TenKho, DTKho, FaxKho, SoNhaKho, ThuKho, MaDuong)
NGANHANG(MaNH, TenNH)
KHACHHANG(MaKH, HoKH, TenKH, TenGiaoDich, SoNhaKH, DTKhachHang, FaxKH, TaiKhoan, STNoCoThe, MaDuong, MaHuyen, MaNH)
DONDHANG(MaDDH, NgayDH, HanNgaygiao MaKH)
DONGDONDH(MaDDH, MaHang, SoLuongDH, DonGiaDH)
NXHANG(MaPNXH, NgayNXH, NgayHTT, Ngaøy laäp PNX, MaDDH, MaKho)
DONGNXHANG(MaPNXH, MaHang, SoLuongNXH, DonGiaNXH)
THANHTOAN(MaPTT, MaPNXH, NgayTT, SoTien)
VII. MOÂ HÌNH VAÄT LYÙ DÖÕ LIEÄU
Caùc baûng ñöôïc thieát keá trong heä thoáng:
NUOC(MaNuoc, TenNuoc)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaNuoc (K)
Char
2
Len() =2
TenNuoc
Varchar
30
MaNuoc : Chöõ vieát taét cuûa moät teân nöôùc treân theá giôùi.
TenNuoc : Teân cuûa moät nöôùc.
Ví duï:
MaNuoc = VN coù TenNuoc = Vieät Nam
MaNuoc = TQ coù TenNuoc = Trung Quoác
MaNuoc = ML coù TenNuoc = Malaysia
YÙ nghóa: Moãi nöôùc coù moät maõ soá rieâng ñeå phaân bieät caùc nöôùc vôùi nhau.
TINH(MaTinh, TenTinh, MaNuoc)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaTinh (K)
Char
4
Len() = 4
TenTinh
Varchar
20
MaNuoc
Char
2
Lookup(NUOC)
MaTinh : Soá thöù töï cuûa tænh trong nöôùc. Vieät Nam coù döôùi 100 tænh, neân ta choïn 2 kyù töï ñeå ñaùnh soá thöù töï cuûa tænh.
2 Kyù töï ñaàu laø maõ nöôùc.
2 Kyù töï tieáp theo laø soá thöù töï tænh trong nöôùc.
TeânTinh: Baét ñaàu laø Tp cho thaønh phoá tröïc thuoäc trung öông, T cho tænh vaø tieáp theo laø teân tænh hay thaønh phoá.
Ví duï:
MaTinh = VN01 coù TenTinh = Tp.Haø Noäi.
MaTinh = VN02 coù TenTinh =T.Quaûng Ninh.
YÙ nghóa: Moãi moät tænh coù moät maõ soá rieâng ñeå phaân bieät caùc tænh vôùi nhau.
HUYEN(MaHuyen, TenHuyen, MaTinh)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaHuyen (K)
Char
6
Len()=6
TenHuyen
Varchar
25
MaTinh
Char
4
Lookup(TINH)
MaHuyen : 4 kyù töï ñaàu laø maõ nöôùc vaø maõ tænh, hai kyù töï sau laø soá thöù töï cuûa huyeän trong tænh. Moãi tænh khoâng quaù 100 huyeän neân duøng 2 kyù töï.
TenHuyen : Baét ñaàu laø Tp cho thaønh phoá tröïc thuoäc Tænh, Q : cho quaän, H cho huyeän, TX cho thò xaõ vaø tieáp theo laø teân thaønh phoá, quaän, huyeän, thò xaõ.
Ví duï:
MaHuyen = VN0101 coù TenHuyen = Q. Ba Ñình.
MaHuyen = VN0201 coù TenHuyen =Tp. Haï Long.
YÙ nghóa: Moãi huyeän ñöôïc phaân bieät bôûi moät maõ huyeän khaùc nhau ôû trong moät Tænh cuõng nhö phaân bieät vôùi caùc huyeän khaùc ôû caùc tænh khaùc, vì trong maõ huyeän ta coù keøm theo 2 kí töï cuûa maõ tænh neân coù theå phaân bieät ñöôïc raèng ta ñang bieãu dieãn maõ cuûa caùc huyeän ôû trong tænh naøo.
DUONG(MaDuong, TenDuong)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaDuong (K)
Char
4
TenDuong
Varchar
30
MaDuong : Vieát taét caùc kyù töï ñaàu cuûa teân ñöôøng.
TenDuong : Teân ñöôøng.
Ví duï:
MaDuong = PCT coù TenDuong = Phan Chu Trinh.
MaDuong = NTMK coù TenTinh = Nguyeãn Thò Minh Khai.
YÙ nghóa: Moãi teân ñöôøng coù moät maõ rieâng ñeå phaân bieät giöõa caùc ñöôøng vôùi nhau.
HANG SX(MaHSX, TenHSX, MaNuoc)
Teân thuoäc tính
Lieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaHSX (K)
Char
4
Len()=4
Ten HSX
Varchar
50
MaNuoc
Char
2
Lookup(NUOC)
MaHSX : Hai kyù töï ñaàu laø maõ nöôùc, hai kyù töï sau laø soá thöù töï haõng saûn xuaát trong nöôùc.
TenHSX : Teân cuûa haõng saûn xuaát.
MaNuoc : Maõ nöôùc cuûa nöôùc coù haõng saûn xuaát ñoù.
Ví duï:
MaHSX = ML01 coù TenHSX = INTERFOODS PROCESSING ….
MaHSX = JP01 coù TenHSX = HITACHI.
YÙ nghóa: Moãi haõng saûn xuaát coù moät maõ rieâng ñeå phaân bieät giöõa caùc haõng saûn xuaát vôùi nhau.
DONVITINH(MaDVT, TenDVT)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaÑVT (K)
Char
1
Len()=1
TenÑVT
Varchar
7
MaDVT: Vieát taét kyù töï ñaàu cuûa teân ñôn vò tính.
TenDVT : Teân ñôn vò tính.
Ví duï :
MaDVT = T coù TenDVT = Thuøng.
MaDVT = H coù TenDVT = Hoäp.
YÙ nghóa: Moãi ñôn vò tính coù moät maõ rieâng ñeå phaân bieät giöõa caùc ñôn vò tính vôùi nhau.
NHOM(MaNhom, TenNhom)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaNhom (K)
Char
1
Len()=1
TenNhom
Varchar
50
MaNhom : Duøng moät chöõ caùi ñeå kyù hieäu nhoùm.
TenNhom : Teân nhoùm haøng.
Ví duï:
MaNhom = A coù TenNhom = Nhoùm haøng duøng ngay.
MaNhom = B coù TenNhom = Nhoùm haøng phaûi qua cheá bieán môùi duøng ñöôïc.
MaNhom = C coù TenNhom = Nhoùm haøng baùnh keïo.
YÙ nghóa: Moãi nhoùm haøng coù moät maõ rieâng ñeå phaân bieät giöõa caùc nhoùm vôùi nhau.
MATHANG(MaHang, TenHang, SLTonTT, SLTonTD, MaDVT, MaHSX, MaNhom)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaHang (K)
Char
4
Len()=4
TenHang
Varchar
50
SLTonTT
Integer
8
SLTonTD
Integer
8
MaDVT
Char
1
Lookup(DONVITINH)
MaH SX
Char
4
Lookup(HANGSX)
MaNhom
Char
1
Lookup(NHOM)
MaHang : 1 kyù töï ñaàu tieân laø maõ nhoùm, 3 kyù töï tieáp theo laø soá thöù töï maët haøng trong nhoùm.
TenHang : Teân maët haøng.
SLTonTT : Soá löôïng toàn toái thieåu öùng vôùi moät maët haøng trong kho. Neáu soá löôïng maët haøng ñoù toàn trong kho döôùi möùc toái thieåu thì phaûi nhaäp theâm vaøo.
SLTonTD : Soá löôïng toàn toái ña öùng vôùi moät maët haøng ôû trong kho. Neáu nhaäp theâm soá löôïng maët haøng naøo ñoù thì toång soá löôïng trong kho khoâng ñöôïc vöôït quaù soá löôïng toàn toái ña cuûa maët haøng ñoù.
MaDVT : Maõ ñôn vò tính cuûa ñôn vò tính.
MaHSX : Maõ haõng saûn xuaát cuûa haõng saûn xuaát.
MaNhom : Maõ nhoùm cuûa nhoùm haøng.
Ví duï:
MaHang = A001 coù TenHang = Bird’s Nest.
MaHang = B001 coù TenHang = Coconut Milk.
MaHang = C001 coù TenHang = Chocolate.
YÙ nghóa: Moãi maët haøng coù moät maõ rieâng ñeå phaân bieät giöõa caùc maët haøng vôùi nhau.
KHO(MaKho, TenKho, DTKho, FaxKho, SoNhaKho, ThuKho, MaDuong)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaKho (K)
Char
5
TenKho
Varchar
50
DTKho
Varchar
10
FaxKho
Varchar
10
SoNhaKho
Varchar
20
ThuKho
Varchar
30
MaDuong
Char
4
Lookup(DUONG)
MaKho : 4 kyù töï ñaàu laø caùc kyù töï vieát taét teân ñöôøng, 1 kyù töï sau laø soá thöù töï kho treân ñöôøng ñoù.
TenKho : Teân kho haøng.
Ví duï:
MaKho = NTMK1 coù TenKho = Kho nöôùc.
MaKho = NTMK2 coù TenKho = Kho baùnh keïo.
YÙ nghóa: Moãi kho coù moät maõ rieâng ñeå phaân bieät giöõa caùc kho vôùi nhau.
NGANHANG(MaNH, TenNH)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaNH (K)
Char
4
TenNH
Varchar
30
MaNH : Vieát taét caùc kyù töï ñaàu cuûa teân ngaân haøng.
TenNH : Teân ngaân haøng.
Ví duï:
MaNH = NHNH coù TenNH = Ngaân haøng noâng nghieäp.
MaNH = NHNT coù TenNH = Ngaân haøng ngoaïi thöông.
YÙ nghóa: Moãi ngaân haøng coù moät maõ rieâng ñeå phaân bieät giöõa caùc ngaân haøng vôùi nhau.
KHACHHANG(MaKH, HoKH, TenKH, TenGiaoDich, SoNhaKH, DTKhachHang, FaxKH, TaiKhoan, STNoCoThe, MaDuong, MaHuyen, MaNH)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaKH (K)
Char
5
Len()=5
HoKH
Varchar
23
TenKH
Varchar
7
TenGiaoDich
Varchar
30
SoNhaKH
Varchar
20
DTKhachHang
Varchar
10
FaxKH
Varchar
10
TaiKhoan
Varchar
16
STNoCoThe
Money
8
MaDuong
Char
4
Lookup(DUONG)
MaHuyen
Char
6
Lookup(HUYEN)
MaNH
Char
4
Lookup(NGANHANG)
MaKH : 1 kyù töï ñaàu duøng ñeå phaân bieät nhaø cung caáp vaø khaùch mua haøng (C hay K), 4 kyù töï sau laø soá thöù töï khaùch haøng.
HoKH : Hoï khaùch haøng, ñoä daøi 23 kyù töï.
TenKH : Teân khaùch haøng, ñoä daøi 7 kyù töï.
Ví duï:
MaKH = K0001 coù HoKH & TenKH = Leâ Vaên Nam.
MaKH = K0002 coù HoKH & TenKH = Hoà Thò Phöôïng.
MaKH = C0001 coù HoKH & TenKH = Traàn Thò Myõ Hoa.
YÙ nghóa: Moãi khaùch haøng coù moät maõ rieâng ñeå phaân bieät giöõa caùc khaùch haøng vôùi nhau.
DONDHANG(MaDDH, NgayDH, MaKH)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöùc
Raøng buoäc toaøn veïn
MaDDH(K)
Char
5
Len() = 5
NgayDH
DateTime
Shortdste
HanNgayGiao
Datetime
Shortdate
MaKH
Char
5
Lookup(KHACHHANG)
MaDDH : 1 kyù töï ñaàu duøng ñeå phaân bieät ñôn ñaët mua haøng cuûa khaùch haøng hay ñôn coâng ty göûi nhaø cung caáp (M hay B), 4 kyù töï sau laø soá thöù töï ñôn ñaët haøng.
YÙ nghóa: Moãi ñôn ñaët haøng coù moät taäp hôïp maõ rieâng ñeå phaân bieät giöõa caùc ñôn ñaët haøng vôùi nhau.
DONGDONDH(MaDDH, MaHang, SoLuongDH, DonGiaDH, NgayGiao)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaDDH (K)
Char
5
Len()=5
MaHang (K)
Char
4
Lookup(MATHANG)
SoLuongDH
Integer
8
DonGiaDH
Money
8
NXHANG(MaPNXH, NgayNXH, NgayHTT, Ngaøy laäp PNX, MaDDH, MaKho)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaPNXH (K)
Char
5
Len()=5
NgayNXH
Datetime
Shortdate
NgayHTT
Datetime
Shortdate
NgaylapPNX
Datetime
Shortdate
MaDDH
Char
5
Lookup(DONGDONDH)
MaKho
Char
5
Lookup(KHO)
MaPXH : 1 kyù töï ñaàu duøng ñeå phaân bieät phieáu nhaäp hay phieáu xuaát haøng (N hay X), 4 kyù töï sau laø thöù töï phieáu xuaát hay nhaäp haøng.
YÙ nghóa: Moãi ñôn ñaët haøng coù moät taäp hôïp maõ rieâng ñeå phaân bieät giöõa caùc ñôn ñaët haøng vôùi nhau.
DONGNXHANG(MaPNXH, MaHang, SoLuongNXH, DonGiaNXH)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaPNXH (K)
Char
5
Len()=5
MaHang (K)
Char
4
Len()=4
SoLuongNXH
Integer
8
DonGiaNXH
Money
8
THANHTOAN(MaPTT, MaPNXH, NgayTT, SoTien)
Teân thuoäc tính
Kieåu döõ lieäu
Kích thöôùc
Raøng buoäc toaøn veïn
MaPTT (K)
Char
5
Len()=5
NgayTT
Datetime
Shortdate
SoTien
Money
8
MaPNXH
Char
5
Lookup(NXHANG)
MaPTT : 1 kyù töï ñaàu duøng ñeå phaân bieät phieáu thu hay phieáu chi (T hay C), 4 kyù töï sau laø soá thöù töï phieáu thanh toaùn.
YÙ nghóa : Moãi phieáu thanh toaùn coù moät taäp hôïp maõ rieâng ñeå phaân bieät giöõa caùc phieáu thanh toaùn vôùi nhau.
VIII. MOÂ HÌNH TÖØ ÑIEÅN DÖÕ LIEÄU
STT
TEÂN THUOÄC TÍNH
KIEÅU DÖÕ LIEÄU
ÑOÄ DAØI
VÍ DUÏ
1
MaNuoc
Char
2
VN
2
TenNuoc
Varchar
30
Vieät Nam
3
MaTinh
Char
4
VN01
4
TenTinh
Varchar
20
Tp. Haø Noäi
5
MaHuyen
Char
6
VN0101
6
TenHuyen
Varchar
25
Q. Ba Ñình
7
MaDuong
Char
NTMK
8
TenDuong
Varchar
30
Nguyeãn Thò Minh Khai
9
MaHSX
Char
4
JP01
10
TenHSX
Varchar
50
HITACHI
11
MaDVT
Char
1
T
12
TenDVT
Varchar
7
Thuøng
13
MaNhom
Char
1
A
14
TenNhom
Varchar
50
Nhoùm haøng duøng ngay
15
MaHang
Char
4
A001
16
TenHang
Varchar
50
Bird’s nest
17
SLTonTT
Integer
8
50
18
SLTonTD
Integer
8
250
19
MaKho
Char
5
NTMK1
20
TenKho
Varchar
50
Kho nöôùc
21
DTKho
Varchar
10
058.834223
22
FaxKho
Varchar
10
058.834644
23
SoNhaKho
Varchar
20
58
24
ThuKho
Varchar
30
Leâ Vaên Taøi
25
MaNH
Char
NHNN
27
TenNH
Varchar
30
Ngaân haøng noâng nghieäp
28
MaKH
Char
5
K0001
29
HoKH
Varchar
23
Hoà Thò
30
TenKH
Varchar
7
Phöôïng
31
TenGiaoDich
Varchar
30
SAO MAI
33
SoNhaKH
Varchar
20
35/11
34
DTKhachHang
Varchar
10
058.832653
35
FaxKH
Varchar
10
058.832253
36
TaiKhoan
Varchar
0061.000031.8.1
37
STNoCoThe
Money
8
1.500.000
38
MaDDH
Char
5
B0001
39
NgayDH
DateTime
Shortdate
10/07/2003
40
SoLuongDH
Integer
8
40
41
DonGiaDH
Money
8
90.000
42
HanNgayGiao
Datetime
Shortdate
29/07/2003
43
MaPNXH
Char
5
X0001
44
SoLuongNXH
Integer
8
40
45
DonGiaNXH
Money
8
90.000
46
NgayNXH
Datetime
Shortdate
30/07/2003
47
NgayHTT
Datetime
Shortdate
01/08/2003
48
MaPTT
Char
5
T0001
49
NgayTT
Datetime
Shortdate
01/08/2003
50
SoTien
Money
8
3.600.000
CHÖÔNG III
LÖÏA CHOÏN MOÂI TRÖÔØNG CAØI ÑAËT VAØ
GIÔÙI THIEÄU CAÙC COÂNG NGHEÄ LIEÂN QUAN
Vôùi muïc tieâu xaây döïng moät phaàn meàm ñaùp öùng ñöôïc caùc chöùc naêng trong vieäc quaûn lyù giao dòch xuaát nhaäp, ñoàng thôøi deã söû duïng vaø thaân thuoäc vôùi ngöôøi söû duïng, em löïa choïn giaûi phaùp laäp trình öùng duïng treân neàn Windows ñöôïc caøi ñaët baèng ngoâ ngöõ laäp trình Microsoft VisualBasic 6.0 vôùi heä quaûn trò cô sôû döõ lieäu Microsoft SQL Server.
I. Giôùi thieäu veà Visual Basic 6.0.
Microsoft Visual Basic 6.0 tuy khoâng coøn laø hieän thaân môùi nhaát vaø ñoäc ñaùo cuûa ngoân ngöõ BAISIC nhö caùch ñaây vaøi naêm nhöng noù vaãn coøn tính naêng öu vieät cho baïn heä thoáng phaùt trieån öùng duïng cuûa Windows toaøn dieän vaø troïn goùi. Microsoft Visual Basic 6.0 coù nhieàu coâng cuï hoå trôï maø baïn coù theå vieát theâm vaø bieân dòch caùc file trôï giuùp. Noù bao goàm:
1. Caùc coâng cuï ñieàu khieån ( controls).
Bao goàm caùc coâng cuï treân cöûa soå toolbox , nhöõng caùi maø baïn coù theå ñaët vaøo bieåu maãu ñeå töông taùc vôùi ngöôøi duøng vaø ñieàu khieån luoàng chöông trình.
2. Chöông trình ( Program).
Laø taäp hôïp caùc caâu leänh ñeå cho maùy tính thöïc hieän caùc coâng vieäc naøo ñoù theo yù muoán ngöôøi laäp trình. Baûn thaân Microsoft Visual Basic laø trình öùng duïng. Baïn taûi vaø thöïc hieän heä thoáng gioáng nhö thöïc hieän caùc chöông trình öùng duïng khaùc. Noù coøn laø coâng cuï raát tuyeät vôøi, caùc laäp trình vieân vieát, kieåm tra vaø chaïy caùc trình öùng duïng cuûa Windows. Noù cung caáp caùc Form windows laø vuøng laøm vieäc, noù duy trì caùc ñoái töôïng töông taùc cuûa chöông trình nhö caùc nuùt leänh, caùc nhaõn, caùc hôïp thoaïi vaên baûn, caùc thanh cuoän vaø caùc coâng cuï ñieàu khieån khaùc.
Ñeà aùn (Project): laø taäp hôïp caùc file baïn taïo cho chöông trình öùng duïng Windows cuûa mình.
Wizard : Ñaây laø caùc hoäp thoaïi hoûi vaø traû lôøi töï ñoäng laøm vieäc.
Trình bieân dòch (Compiler): laø heä thoáng chuyeån ñoåi chöông trình baïn vieát thaønh trình öùng duïng khaû thi cuûa maùy tính.
Developer Studio: laø moâi tröôøng phaùt trieån cuûa Visual Basic. Maëc duø Microsoft Visual Basic laø ngoân ngöõ laäp trình toaøn dieän, nhöng noù vaãn duy trì ngoân ngöõ BASIC thöøa keá noù. Caùc laäp trình vieân vaøo cuoái thaäp nieân 1950 ñaõ phaùt trieån ngoân ngöõ laäp trình BASIC cho caùc laäp trình vieân sô caáp. BASIC deã söû duïng hôn caùc ngoân ngöõ laäp trình khaùc nhieàu laàn, nhö COBOL vaø FORTRAN. Microsoft khoâng bao giôø queân neàn taûng cuûa VB khi phaùt trieån noù. Noù giuùp cho ngöôøi laäp trình coù ñöôïc nhieàu chöông trình Windows chæ trong thôøi gian ngaén.
Microsoft Visual Basic 6.0 coù nhieàu aán baûn khaùc nhau bao goàm : Standard, Profectional vaø Enterprise. Aán baûn Enterprise cung caáp cho caùc laäp trình vieân phaàn meàm client /server vôùi caùc coâng cuï môû roäng cho caùc maùy tính ôû xa vaø phaân phoái caùc trình öùng duïng. Microsoft taêng cöôøng tính naêng laøm vieäc treân maïng, moâi tröôøng phaân phoái cho nhöõng ngöôøi duøng phieân baûn Enterprise.
Moät soá tính naêng môùi trong Visual Basic 6.0 :
Microsoft Visual Basic 6.0 coù nhieàu tính naêng môùi, caùc ñieàu khieån môùi cho pheùp ta vieát chöông trình öùng duïng keát hôïp giao dieän, caùc xöû lyù vaø tính naêng cuûa office 97 vaø trình duyeät WEB Internet Explorer. Microsoft Visual Basic 6.0 cho pheùp ta laäp trình ñeå theâm ñieàu khieån vaøo döï aùn töï ñoäng vaø coù theå taïo ra caùc ActiveX hieäu chænh. Ta cuõng coù theå vieác caùc öùng duïng phía maùy chuû ( server-side) duøng HTML ñoäng nhuùng keát vôùi caùc thö vieän lieân keát ñoäng cuûa Internet Information Server. Moät vaøi öùng duïng vôùi caùc caõi tieán giuùp cho truy caäp döõ lieäu ôû taàm côû vó moâ lieân quan ñeán haøng traêm, haøng nghìn ngöôøi söû duïng qua maïng hay qua Internet.
3. Laøm vieäc vôùi Microsoft Visual Basic 6.0.
3.1. Khaùm phaù döõ lieäu môùi.
Visual Basic cung caáp caùc ñoái töôïng döõ lieäu ActiveX ( ActiveX Data Object – ADO ). Trong caùc phieân baûn tröôùc cuûa VB, truy caäp döõ lieäu ñöôïc thöïc hieän thoâng qua DAO ( Ñoái töôïng truy caäp döõ lieäu- Data Access Object ) vaø RDO ( Ñoái töôïng döõ lieäu töø xa- Remote Data Object). ADO toång hôïp vaø thay theá caùc kyõ thuaät naøy. ADO deã duøng hôn vaø coù taàm hoaït ñoäng roäng hôn. Ta coù theå duøng ADO ñeå keát noái vôùi cô sôû döõ lieäu cuûa moät maùy ñeå baøn hoaëc moät maùy chuû chöùa cô sôû döõ lieäu ôû xa. Hôn theá nöõa ADO coøn cho pheùp truy caäp nhieàu kieåu döõ lieäu, ví duï thö ñieän töû.
Kyõ thuaät ADO hieän nay chöùa trong ñieàu kieån môùi, ñieàu kieån döõ lieäu ADO. Noù troâng gioáng nhö caùc ñieàu khieån döõ lieäu trong caùc phieân baûn tröôùc, nhöng phaàn thuoäc tính cuûa ñieàu khieån, ta seõ thaáy coù nhieàu ñieåm khaùc. Noù cho pheùp keát noái vôùi cô sôû döõ lieäu ñeå baøn hay cô sôû döõ lieäu maùy chuû ODBC treân maïng, hoaëc ta coù theå taïo keát noái ñeán caùc cô sôû döõ lieäu khaùc.
Ngoaøi ADO, Visual Basic 6 coøn coù boä coâng cuï kyõ thuaät môùi giuùp truy caäp döõ lieäu deã daøng hôn. Trình thieát keá moâi truôøng döõ lieäu cho pheùp cho pheùp xem xeùt vaø thao taùc döõ lieäu trong CSDL khaùc nhau, bôûi vì baûn thaân moâi tröôøng döõ lieäu laø caùc ñoái töôïng, ta coù theå söû duïng chuùng nhö moät ñieàu khieån döõ lieäu. Thaäm chí ta coù theå gaén noù vôùi caùc ñieàu khieån khaùc nhö hôïp vaên baûn hay nhaõn.
Moät vaøi ñieàu khieån döõ lieäu khaùc cho pheùp ta taän duïng caùc theá maïnh cuûa ñieàu khieån döõ lieäu ADO. Ñieàu khieån DataGrid cho pheùp xem döõ lieäu döôùi daïng baûng vaø caùc doøng vaø coät. DataList vaø DataCombo töông töï nhö DBList vaø Dbcombo trong caùc phieân baûn tröôùc, ta coù theå duøng chuùng ñeå laáy moät danh saùch döõ lieäu töø ñieàu khieån ADO trong caáu hình hôïp danh saùch ( ListBox ) hoaëc hôïp keát hôïp ( ComboBox) hoaëc chuùng ta coù theå söû duïng FlexGrid ñeå xem nhöõng döõ lieäu phöùc taïp.
Visual Basic 6.0 môû roäng khaû naêng baùo caùo vôùi caùc trình baùo caùo döõ lieäu cho pheùp taïo, xem tröôùc vaø in caùc baùo caùo trong Visual Basic töông töï nhö ACCESS. Ta coù theå laáy caùc ñieàu khieån baùo caùo töø hôïp cong cuï baùo caùo döõ lieäu môùi vaø ñöa vaøo bieåu maåu baùo caùo döõ lieäu. Sau ñoù goïi phöông thöùc PrintReport() cuûa baùo caùo döõ lieäu.
3.2. Boå sung môùi veà laäp trình höôùng ñoái töôïng.
Visual Basic 6.0 giuùp taïo caùc lôùp vaø ñieàu khieån ActiveX phong phuù hôn. Giôø ñaây ta coù theå löu döõ lieäu qua caùc lôùp töï taïo töø session naøy sang session khaùc thoâng qua tuùi thuoäc tính ( Property bag ). Ta cuõng coù theå taïo hai kieåu lôùp hieäu chænh data-aware laø data source vaø Data consumers. Caùc kieåu lôùp döõ lieäu naøy haïot ñoäng töông töï nhö caùc ñoái töôïng döõ lieäu ADO, nhöng chuùng ñaùp öùng ñöôïc yeâu caàu cuûa khaùch haøng nhieàu hôn.
Ñoái vôùi ñieàu khieån ActiveX, ta coù theå taïo caùc ñieàu khieån “haïng nheï” trong Visual Basic 6.0. Ñaây laø caùc ñieàu khieån “Windowless” toán ít taøi nguyeân heä thoáng höon caùc ñieàu khieån khaùc. Ñeå xaùc ñònh moät ñieàu khieån coù phaûi “Windowless” hay khoâng Visual Basic 6.0 cung caáp thuoäc tính môùi HasDC.
Add-in laø coâng cuï Visual Basic maø caùc laäp trình vieân coù theå laäp trình ñeå taïo cho caùc laäp trình vieân khaùc. Nhöng Add-in ñöôïc vieát trong Visual Basic chæ coù theå thi haønh trong IDE cuûa VB. Trình taïo öùng duïng Application Wizard, trình bieåu maãu döõ lieäu ( Data Forms Wizard ) laø nhöõng phaàn theâm môùi.
Moät soá Wizard / Add-in duøng trong moïi phieân baûn nhö :
Trình ñoùng goùi vaø trieån khai töï ñoäng ( Package and development Wizard ) coâng duïng laø chuaån bò vaø trieån khai öùng duïng cho caùc maùy ñeå baøn hoaëc duøng qua maïng.
Trình taïo öùng duïng töï ñoäng (Application Wizard ): Khôûi taïo khung söôøn cho öùng duïng. Noù töï ñoäng theâm menu, thanh coâng cuï, taäp tin taøi nguyeân, caùc ñieàu khieån ActiveX vaø ñieàu khieån döõ lieäu.
Trình quaûn lyù töï ñoäng ( Wizard Manager ): toå chöùc caùc trình töï ñoäng khaùc nhau ñeå coù theå truy caäp töø trong IDE.
Moät soá Wizard / Add-in duøng trong phieân baûn Enterprise vaø Proffessional nhö:
Trình ñoái töôïng döõ lieäu töï ñoäng ( Data Object Wizard): Taïo caùc ñoái töôïng döõ lieäu lieân keát vôùi caùc ñieàu khieån döõ lieäu vaø caùc ActiveX hieäu chænh.
Tieän ích xaây döïng lôùp ( Class builder Ultility ): duøng taïo giao dieän caùc lôùp hieåu chænh.
Trình thanh coâng cuï töï ñoäng (toolBar Wizard): Duøng giao dieän taïo thanh coâng cuï cho bieåu maãu.
Trình bieåu maãu döõ lieäu töï ñoäng(Data Form Wizard): Taïo bieåu maãu chöùa caùc ñieàu khieån tham chieáu ñeán döõ lieäu trong moät CSDL.
Trình thieát keá Add-in (Add-in Designer) : Taïo caùc Add-in hieäu chænh cuûa VB.
Trình trang thuoäc tính töï ñoäng( Property page Wizard): Taïo hôïp thoaïi thuoäc tính cho caùc ñieàu khieån ActiveX töï taïo.
Trình gôõ roái T-SQL (T- SQL Debugger): Giuùp gôõ roái khi vieát caùc CSDL cuûa SQL Server.
Trình duyeät API Viewer: Giuùp tra cöùu caùc khai baùo haøm, haèng, kieåu cuûa caùc Window APIs.
Trình giao dieän ñieàu khieån ActiveX (ActiveX control interface Wizard) : Taïo caùc ñieàu khieån ActiveX.
3.3. Laøm vieäc trong moâi tröôøng laäp trình.
Tìm hieåu caùc thaønh phaàn cuûa IDE
Ñònh nghóa IDE : IDE laø teân vieát taét cuûa moâi tröôøng phaùt trieån tích hôïp ( Integrated Development Enviroment). IDE laø nôi taïo ra caùc chöông trình Visual Basic, laø nôi taäp trung caùc menu, thanh coâng cuï vaø caùc cöûa soå ñeå ta thao taùc treân chuùng. Moãi thaønh phaàn cuûa IDE coù caùc tính naêng aûnh höôûng ñeán hoaït ñoäng laäp ttrình khaùc nhau.
Thanh menu cho pheùp baïn thao taùc treân toaøn boä öùng duïng, thanh coâng cuï cho pheùp thao taùc, truy caäp caùc chöùc naêng cuûa thanh menu qua caùc nut treân thanh coâng cuï.
Caùc bieåu maãu (Form) laø khoái xaây döïng chính cuûa chöông trình Visual Basic, chuùng xuaát hieän trong caùc cuûa soå Form. Chuùng ta coù theå theâm caùc coâng cuï ñieàu khieån vaøo bieåu maãu cuûa caùc ñeà aùn( Project).
Project Explorer hieån thò caùc ñeà aùn baïn ñang laøm cuõng nhö caùc thaønh phaàn khaùc cuûa ñeà aùn, baïn coù theå duyeät, caøi ñaët caùc thuoäc tính cuûa ñieàu khieån, bieåu maãu vaø module trong cuûa soå Properties.
Cuoái cuøng baïn xem xeùt moät hoaëc nhieàu bieåu maãu treân maøn hình thoâng qua cuûa soå Form Layout.
Söû duïng moät soá thanh coâng cuï trong IDE
Chuùng ta coù theå theâm vaø xoaù caùc thanh coâng cuï trong IDE cuûa Visual Basic: Thanh coâng cuï laø taâp hôïp caùc nuùt baám mang bieåu töôïng chöùa trong moät thanh thöôøng ñaët döôùi thanh menu. Caùc nuùt baám naøy phaûi ñaûm baûo caùc chöùc naêng thoâng duïng trong caáu truùc cuûa thanh menu cuûa Visual Basic. Thanh coâng cuï raát höõu ích vaø tieát kieäm thôøi gian ñeå ta choïn qua caùc muïc ôû menu con, ta click vaøo moät nuùt naøo ñoù treân thanh coâng cuï ñeå goïi moät chöùc naêng naøo ñoù treân thanh menu.
Söû duïng thanh coâng cuï Debug : Thanh coâng cuï Debug duøng ñeå kieåm tra chöông trình vaø giaû quyeát moät soá loõi coù theå xaõy ra. Khi gôõ roái chöông trình ta laøm moät soá vieäc nhö chaïy töøng doøng chöông trình, kieåm tra caùc giaù trò bieán, hoaëc döøng chöông trình taïi moät ñieåm nghi ngôø naøo ñoù.
Söû duïng thanh coâng cuï Edit : Thanh coâng cuï Edit ñöôïc duøng ñeå vieát chöông trình trong caùc cöûa soå code. Noù bao goàm ñaày ñuû tính naêng coù ôû menu Edit. Moät tính naêng lyù thuù cuûa IDE laø thanh coâng cuï Edit coù chöùc naêng complete Word, töï ñoäng hoaøn taát caùc töø khoaù, noù giuùp cho ta traùnh ñöôïc caùc loãi cuù phaùp do goõ sai chính taû.
Thanh coâng cuï Form Editor duøng ñeå keùo giaõn, di chuyeån vaø saép xeáp caùc ñieàu khieån treân bieåu maãu, noù coù tính naêng töông töï nhö menu Format. Thuoäc tính ZOrder cuûa ñieàu khieån cho pheùp ñieàu khieån naøo coù theå naèm leân treân ñieàu khieån naøo, ñieàu khieån coù ZOrder baèng khoâng luoân naèm ôû beân treân.
Söû duïng thanh coâng cuï chuaån ( Standard )laø thanh coâng cuï chính trong IDE, noù cung caáp nhieàu tính naêng trong menu File, Project, Debug vaø Run.
Theâm caùc ñieàu khieån vaøo thanh coâng cuï
Hôïp coâng cuï laø baûng chöùa caùc ñieàu khieån vaø ta thieát keá giao dieän baèng caùch choïn caùc maãu ñieàu khieån vaø ñöa chuùng vaøo bieåu maãu.
Moät soá ñieàu khieån coù saún trong VB ta khoâng theå gôõ boû khoûi hoäp coâng cuï goïi laø caùc ñieàu khieån noäi taïi (intrinsic). Moät soá naèm ngoaøi VB chöùa trong caùc taäp tin coù phaàn môû roäng laø .OCX. Nhöõng ñieàu khieån naøy coù theå ñöôïc theâm vaøo hoaëc gôõ boû khoûi hoäp coâng cuï.
Quaûn lyù öùng duïng vôùi Project Explorer
Project Explorer trong VB 6.0 giuùp ta ñònh höôùng vaø quaûn lyù nhieàu döï aùn, noù cho pheùp toå chöùc nhieàu döï aùn chung trong moät nhoùm goïi laø Project groups. Ta coù theå löu taäp hôïp caùc ñeà aùn thaønh moät taäp tin nhoùm ñeà aùn vôùi phaàn môû roäng laø .vbg.
Project Explorer coù caáu truùc caây phaân caáp, caùc ñeà aùn naèm ôû phaàn treân cuûa caây vaø caùc boä phaän cuûa ñeà aùn chöùa trong phaàn döôùi caây. Khi chuùng ta caàn thao taùc treân thaønh phaàn naøo cuûa ñeà aùn ta chæ vieäc choïn phaàn aáy vaø xem cuûa soå Form hoaëc cuûa soå Code cuûa noù.
Ñaëc bieät noù voâ cuøng höõu ích cho chuùng ta trong khi xaây döïng nhieàu döï aùn lôùn.
Cöûa soå Properties:
Moãi thuoäc tính trong cöûa soå coù theå coù moät hoaëc nhieàu giaù trò. Noù giuùp baïn xem xeùt söûa ñoåi vaø ñieàu khieån caùc thuoäc tính cuûa ñieàu khieån ActiveX trong chöông trình.
Hieån thò trong IDE
Ta coù theå hieån thò IDE cuûa Visual Basic baèng hai caùch : MDI vaø SDI.
MDI laø giao dieän ña taøi lieäu, cho pheùp ta hieån thò taát caû caùc cöûa soå thaønh phaàn trong IDE nhö laø cöûa soå ñöôïc chöùa ñöïng trong cöûa soå meï.
Traùi laïi vôùi giao dieän SDI caùc cöûa soå thaønh phaàn hieån thò moät caùch ñoäc laäp nhau. Khoâng coù cöûa soå chính ñeå chöùa caùc cöûa soå thaønh phaàn.
Trôï giuùp
Khoâng chæ laøm chuû ngoân ngöõ laäp trình VB, baïn caàn phaûi caàn söû duïng thuaàn thuïc moâi tröôøng VB cuõng nhö hieåu caùc thoâng ñieäp maø VB göûi ra. Mircosoft ñaõ cung caáp moät trong nhöõng heä thoáng trôï giuùp toát nhaát cho coâng cuï phaùt trieân öùng duïng.
Nhöõng trôï giuùp nhaïy vôùi ngöõ caûnh ( Context-sensitive help) : taïi vò trí baát kyø trong VB baïn nhaán F1, hoaëc nuùt trôï giuùp. Noù seõ kích hoaït heä thoáng trôï giuùp cuûa Visual Basic, nôi coù theå giaûi thích cuõng nhö ñöa ra caùc lôøi khuyeân vaø caùc ñoaïn chöông trình maãu coù lieân quan.
Nhöõng ai quen duøng Windows, chaéc chaén cuõng bieát qua trôï giuùp caûm ngöõ caûnh. VB ñöôïc hoå trôï vôùi heä thoáng thö vieän MSDN ñöôïc söû duïng roäng raõi cho caùc öùng duïng cuûa Microsoft ñeå cung caáp, truy caäp ñeán coâng cuï höôùng daãn söû duïng caùc saûn phaåm tröïc tuyeán.
3.4. Giôùi thieäu veà thuoäc tính, phöông thöùc, söï kieän.
Visual Basic laø moät ngoân ngöõ laäp trình hoå trôï höôùng ñoái töôïng (Object-Oriented Programming). Trong laäp trình höôùng ñoái töôïng , laäp trình vieân chia nhoû caùc coâng vieäc thaønh caùc ñoái töôïng. Töøng ñoái töôïng coù ñôøi soáng rieâng cuûa noù, coù nhöõng ñaëc ñieåm goïi laø thuoäc tính (Properties), coù nhöõng chöùc naêng rieâng bieät goïi laø phöông thöùc ( methods).
Thuoäc tính.
Coù theå hieåu noâm na laø thuoäc tính moâ taû ñoái töôïng. Moãi ñoái töôïng ñeàu coù thuoäc tính moâ taû rieâng. Nhöng nhìn chung caùc ñoái töôïng ñeàu coù nhöõng thuoäc chính chung nhö :
Left : vò trí canh traùi,
Right : vò trí canh phaûi,
Height :chieàu cao cuûa ñoái töôïng ñieàu khieån,
Width: chieàu roäng cuûa ñoái töôïng,
Enable : Coù giaù trò logic ( True/False) quyeát ñònh ngöôøi söû duïng coù theå laøm vieäc vôùi caùc ñoái töôïng naøy khoâng.
Ngoaøi ra coøn raát nhieàu thuoäc tính khaùc tuyø theo töøng ñoái töôïng ñieàu khieån.
Phöông thöùc.
Phöông thöùc laø nhöõng ñoaïn chöông trình chöùa trong ñieàu khieån, cho ñieàu khieån bieát caùch thöïc hieän coâng vieäc naøo ñoù. Töông töï nhö thuoäc tính, moãi ñoái töôïng ñieàu khieån cuõng coù caùc phöông thöùc khaùc nhau, nhöng cuõng coù caùc phöông thöùc raát thoâng duïng cho haàu heát caùc ñoái töôïng. Ñoù laø:
Move : thay ñoåi vò trí cuûa moät ñoái töôïng theo yeâu caàu cuûa chöông trình.
Drag: thi haønh hoaït ñoäng keùo thaû cuûa ñoái töôïng.
SetFocus: cung caáp taàm ngaém cho ñoái töôïng ñöôïc chæ ra trong leänh goïi phöông thöùc.
ZOder : qui ñònh thöù töï xuaát hieän cuûa caùc ñoái töôïng treân maøn hình.
Söï kieän.
Neáu nhö thuoäc tính moâ taû ñoái töôïng, phöông thöùc chæ ra caùch thöùc ñoái töôïng haønh ñoäng thì söï kieän laø nhöõng phaûn öùng cuûa ñoái töôïng. Töông töï nhö thuoäc tính vaø phöông thöùc, söï kieän cuõng coù ñaëc tröông ôû töøng ñoái töôïng ñieàu khieån. Nhöng nhöõng söï kieän thöôøng gaëp nhaát cuûa caùc ñoái töôïng laø:
Change: Ngöôøi söû duïng söûa ñoåi chuoãi kyù töï trong hoäp keát hôïp ( combobox) hoaëc hoäp vaên baûn (TextBox).
Click : Ngöôøi söû duïng söû duïng caùc phím cuûa chuoät ñeå click leân caùc ñoái töôïng.
Dblick : Ngöôøi söû duïng söû duïng phím cuûa chuoät ñeå nhaáp ñuùp leân caùc ñoái töôïng.
DragDrop : Ngöôøi söû duïng keùo reâ moät ñoái töôïng sang ñoái töôïng khaùc.
DragOver: Ngöôøi söû duïng keùo reâ moät ñoái töôïng ngang qua moät ñieàu khieån khaùc.
GotFocus: Ñöa moät ñoái töôïng vaøo taàm ngaém cuûa ngöôøi söû duïng.
KeyDown: Ngöôøi söû duïng nhaán moät nuùt treân baøn phím khi moät ñoái töôïng ñang trong taàm ngaém.
KeyPress: Ngöôøi söû duïng nhaán vaø thaû moät nuùt treân baøn phím khi moät ñoái töôïng ñang trong taàm ngaém.
KeyUp: Ngöôøi söû duïng thaû moät nuùt treân baøn phím khi moät ñoái töôïng ñang trong taàm ngaém.
LostFocus: Ñöa moät doái töôïng ra khoûi taàm ngaém.
MouseDown: Ngöôøi söû duïng nhaán moät nuùt chuoät baát kyø trong khi con troû chuoät ñang naèm treân moät ñoái töôïng.
MouseMove : Ngöôøi söû duïng di chuyeån con troû ngang qua moät ñoái töôïng.
MouseUp : Ngöôøi söû duïng thaû nuùt chuoät trong khi con troû chuoät ñang naèm treân moät ñoái töôïng.
3.5. Khaû naêng söû duïng caùc DLL vaø Windows API.
Windows cung caáp voâ soá caùc haøm goïi, döôùi daïng thö vieän leân keát ñoäng (Dynamic Link Libraries ). Trong Visual Basic 6.0 coøn coù caùc tieän ích goïi ngöôïc cuûa DLL ( DLL Callback Facilities ), nghóa laø thay vì ta goïi chöông trình trong API, noù cho pheùp ta goïi moät API maø baûn thaân noù coù theå goïi ngöôïc veà chöông trình cuûa ta nhö laø moät phaàn chöông trình cuûa noù vaäy.
Giôùi thieäu veà thö vieän lieân keát ñoäng (DLL)
Ñoái vôùi caùc ngoân ngöõ laäp trình coå ñieån nhö C, khi bieân dòch chöông trình, ta coù moät chöông trình .EXE duy nhaát coù theå thi haønh maø khoâng duøng baát kyø taäp tin naøo khaùc, coøn taäp tin .vbp cuûa Visual Basic khoâng nhö theá noù phaûi chaïy trong moâi tröôøng Visual Basic.
Coù 2 loaïi thö vieän lieân keát : thö vieän lieân keát tónh (SLL) vaø thö vieän lieân keát ñoäng (DLL).
Lieân keát tónh : Cung caáp moät keát noái beàn vöõng giöõa chöông trình vaø module vieát saún luùc thieát keá, töông töï nhö vieát thuû tuïc trong Visual Basic vaø goïi thuû tuïc ñoù, nhöng chæ khaùc laø lieân keát tónh chöùa beân ngoaøi Visual Basic. Tuy nhieân khi söû duïng caàn phaûi copy ñoaïn chöông trình vieát saún cuûa lieân keát tónh vaøo taäp tin chöông trình khi bieân dòch. Töø ñoù trôû ñi noù trôû thaønh moät phaàn cuûa chöông trình vieát saún vaø gaén chaët vôùi chöông trình cuûa ta.
Lieân keát ñoäng : Laø giaûi phaùp linh hoaït hôn lieân keát tónh, taäp tin thö vieän beân ngoaøi chöông trình khoâng bò raøng buoäc vôùi chöông trình. Noù chöùa moät nôi sao cho taäp tin EXE coù theå tìm ra vaø göûi thoâng ñieäp cho noù. Khi thi haønh caùc thoâng ñieäp naøy laø caùc cuoäc goïi ñeán caùc haøm/ thuû tuïc, yeâu caàu phaàn naøo ñoù cuûa DLL ñöôïc thi haønh.
Caùc DLL cuûa Visual Basic naèm trong thö muïc Windows \ System \
Giôùi thieäu veà caùc DLL cuûa Windows.
KERNEL32 : Laø DLL chính, ñaûm nhieäm quaûn lyù boä nhôù, thöïc hieän chöùc naêng ña nhieäm vaø nhöõng haøm aûnh höôûng tröïc tieáp ñeán hoaït ñoäng cuûa Windows.
USER32 : Laø thö vieän quaûn lyù Windows. Thö vieän naøy chöùa caùc haøm xöû lyù menu, ñònh giôø, truyeàn tin, taäp tin vaø nhieàu phaàn khoâng ñöôïc hieån thò khaùc cuûa Windows.
GDI32 : Laø thö vieän chöùa giao dieän thieát bò ñoà hoaï (Graphics Device Interface) cung caáp caùc haøm veõ treân maøn hình, cuõng nhö kieåm tra phaàn bieåu maãu naøo caàn veõ laïi.
WINNM: cung caáp caùc haøm Multimedia ñeå xöû lyù aâm thanh, nhaïc, video, thôøi gian thöïc, laáy maãu, vv… Ñaây laø thö vieän 32 bit coøn thö vieän 16 bit töông öùng teân laø MMSYSTEM.
Theá maïnh cuûa DLL.
Nhaát quaùn : Ngöôøi söû duïng öa chuoäng Windows vì ña soá ñieàu coù moät giao dieän phoå bieán cho moïi öùng duïng, nghóa laø coù chöông trình chung ñeå taïo ra chuùng.
Deã baûo trì : Nhöõng thay ñoåi hoaëc boå sung neáu coù seõ bieåu hieän treân moïi öùng duïng.
Taäp tin .EXE nhoû hôn : Do moät phaàn coâng vieäc chöùa ñöïng ôû nôi khaùc vaø khoâng gaén keát “cöùng nhaéc” nhö lieân keát tónh, kích côõ taäp tin nhoû hôn. Tuy nhieân DLL coøn chöùa nhieàu thaønh phaàn khaùc chöù khoâng chæ nhöõng gì chöông trình cuûa ta caàn.
Caáu truùc cuûa Windows : DLL laø neàn taûng thieát keá cuûa Windows. Windows thöïc chaát laø taäp hôïp caùc DLL ñeå caùc öùng duïng khaùc nhau coù theå duøng chung. Beân trong caùc DLL laø haøng traêm, ngaøn caùc haøm vaø thuû tuïc. Ta goïi chung laø Windows API.
Giôùi thieäu veà WIN API
Giao dieän laäp trình öùng duïng ( Application Programmer’s Interface ) laø taäp hôïp caùc haøm coù saún cuûa Windows, chuùng gaàn guûi vôùi ngoân ngöõ C/ C++ hôn. Visual Basic ñöôïc thieát keá theo kieåu che bôùt caùc coâng vieäc beân döôùi heä thoáng. Phaàn lôùn caùc cuoäc goïi ñeán haøm API ñöôïc loàng trong caùc daïng leänh cuûa Visual Basic, bao goàm caùc töø khoaù, phöông thöùc vaø thuoäc tính. Chuùng seõ ñöôïc thoâng dòch thaønh WinAPI vaø chuùng ta vaän duïng caùc theá maïnh hoå trôï cuûa chuùng.
Lôùp boïc API vaø caùc ñieàu khieån hieäu chænh : Ñieàu khieån hieäu chænh (OCX hay ActiveX) baûn thaân chuùng laø nhöõng lôùp boïc API, chuùng chuyeån giao chuyeån giao caùc chöùc naêng theo kieåu Visual Basic moät caùch thaân thieän. Caùc ñieàu khieån ActiveX vaø OLE Automation Servers ñöa chöông trình vaøo caùc ñeà aùn maø khoâng caàn coù caùc DLL thöïc söï.
Caùch goïi haøm API.
Goïi haøm API trong Visual Basic khoâng khaùc vôùi goïi haøm/ thuû tuïc trong module cuûa ñeà aùn.
Ví duï thuû tuïc goïi sau:
Public Declare Function Flash Lib “User32” Alias “FlashWindow” (ByVal hWnd as Long, Byval Invert As Long ) as Long.
Khai baùo cho moät cuoäc goïi API :
Tröôùc khi duøng haøm cuûa DLL, ta caàn khai baùo haøm ñoù cho Visual Basic hieåu, Visual Basic caàn bieát:
Teân haøm hoaëc thuû tuïc.
Teân taäp tin DLL chöùa noù.
Tham soá truyeàn.
Kieåu döõ lieäu traû veà neáu laø haøm.
Töø khoaù Declare baùo cho VB bieát ñaây laø moät haøm cuûa DLL, sau Declare laø töø khoaù Sub hoaëc Function cho bieát ñaây laø thuû tuïc hay haøm. Töø khoaù Lib cho bieát teân cuûa DLL ñang chöùa haøm hoaëc thuû tuïc maø ta goïi. Töø khoaù Alias cho bieát teân thöïc söï cuûa thuû tuïc hoaëc haøm trong thö vieän. Noù coù theå khaùc vôùi teân ta khai baùo tröôùc töø khoaù Lib. Cuoái cuøng laø khai baùo caùc tham soá truyeàn, cuøng caùc kieåu döõ lieäu traõ veà.
3.6. Thieát laäp baùo caùo vaø truy xuaát thoâng tin.
Thieát laäp baùo caùo treân cô sôû döõ lieäu khoâng chæ laø hieån thò cô sôû döõ lieäu töø döõ lieäu maø noù coøn lieân quan ñeán moät soá hoaït ñoäng khaùc treân döõ lieäu. Sau ñaây toâi xin giôùi thieäu veà moät soá coâng cuï laäp baùo cao nhö Data Report, MS Access, Crystal Report.
3.6.1. Söû duïng moät soá coâng cuï ñeå laäp baùo caùo trong Visual Basic.
Söû duïng thieát keá DATAREPORT:
Ñaây laø ñieåm noåi baäc trong VB 6, thieát keá Datareport laø caùch tröïc quan ñeå taïo baùo caùo trong moâi tröôøng phaùt trieån VB, noù cung caáp caùc chöùc naêng heát söùc cô baûn nhöng laïi laïi deã duøng. Caùc ñieàu khieån Report bao goàm :
caùc ñieàu khieån nhaõn,
ñieàu khieån hôïp vaên baûn,
ñieàu khieån aûnh,
ñieàu khieån ñoaïn thaúng vaø ñieàu khieån hình daïng,
ñieàu khieån haøm cho pheùp cheøn caùc tính toaùn toùm taét vaøo baùo caùo.
Chuùng ta coù theå xem baùo caùo trong cheá ñoä Print Preview baèng caùch thi haønh phöông thöùc Show
Söû duïng MS Access ñeå laäp baùo caùo:
MS Access cho pheùp vieát caùc baùo caùo cô sôû döõ lieäu. Noù hoå trôï giao dieän deã duøng vaø tröïc quan. Noù cho pheùp saép xeáp vaø phaân nhoùm cuõng nhö söû duïng caùc hieäu chænh trong baùo caùo. Hai kyõ thuaät ñeå thöïc hieän laø:
Söû duïng Automation ñeå thi haønh baùo caùo Access.
Söû duïng VSREPORTS ñeå thi haønh baùo caùo Access.
Söû duïng CRYSTAL REPORT ñeå laäp baùo caùo:
Ta khoâng theå taïo baùo caùo baèng chöông trình maø thay vaøo ñoù ta duøng Crystal Report ñeå xaây döïng baùo caùo. Sau khi xaây döïng xong baùo caùo ta löu noù vaø phaân phaùt cuøng caùc öùng duïng cho ngöôøi söû duïng.
3.6.2. Söû duïng caùc coâng cuï in aán trong Visual Basic.
Söû duïng ñoái töôïng Printer.
Ta coù theå duøng ñoái töôïng Printer cuûa Visual Basic ñeå in döõ lieäu töø öùng duïng. Tuy nhieân caùch naøy ñoøi hoûi laäp trình nhieàu vaø khoâng linh hoaït trong nhöõng tröôøng hôïp caàn kieåm soaùt keát quaû in aán. Khi söû duïng ñoái töôïng printer ta caàn thöïc hieän caùc böôùc sau:
Xaùc ñònh heä toaï ñoä ta seõ duøng vôùi ñoái töôïng Printer.
Taïo caùc caùch boá trí baùo caùo.
Vieát chöông trình taïo ñoái töôïng Recordset duøng baát cöù thö vieän truy caäp cô sôû döõ lieäu naøo tuyø thích.
Laëp xuyeân qua caùc maãu tin ñeå traû veà caùc ñoái töôïng Recordset, göûi döõ lieäu ñeán ñoái töôïng Printer duøng caùc thuoäc tính vaø caùc phöông thöùc cuûa noù.
Ñoái töôïng Printer ñöa ra moät soá thuoäc tính vaø caùc phöông thöùc hoå trôï vieäc theå hieän trang in vaø caùc taùc vuï ñieàu khieån nhö :
Thuoäc tính CurentX, curentY : kieåm soaùt vò trí hieän haønh treân trang in.
Thuoäc tính Font laø ñoái töôïng ñieàu khieån caùc thuoäc tính cuûa vaên baûn chöùa trong trang in.
Phöông thöùc Print : trình baøy vaên baûn treân trang in.
Phöông thöùc Newpages cheøn moät pheùp ngaét trang vaøo taùc vuï in, thuoäc tính page traû veà trang in hieän haønh cuûa taùc vuï in, phöông thöùc KillDoc xoaù boû moät taùc vuï in.
Phöông thöùc ñoà hoaï nhö Line, Point, Circle.
Phöông thöùc EnDoc: göûi toaøn boä taùc vuï in cho maùy in. Thi haønh phöông thöùc naøy ôû cuoái taùc vuï in söû duïng ñoái töôïng Printer.
Söû duïng VSVIEW cuûa VIDEOSOFT ñeå laäp baùo caùo vaø in baûng in vôùi ñieàu khieån VsPrinter:
Thieáu soùt cuûa ñoái töôïng Printer laø tröôùc khi in ta khoâng bieát ñöôïc baùo caùo seõ theå hieän nhö theá naøo, hay thaäm chí khoâng bieát baùo caùo coù bao nhieâu trang in do ñoù ta neân duøng coâng cuï cung caáp nhieàu tieän ích hôn laø vsPrinter.
VsPrinter raát thích hôïp ñeå in baûng CSDL bôûi vì noù hoå trôï roõ raøng cho vieäc in döõ lieäu theo ñònh daïng doøng – coät. Ta coù theå in döõ lieäu trong baûng baèng caùch gaùn döõ lieäu cho thuoäc tính Table cuûa ñieàu khieån.
Ñeå taïo baûng vsPrinter, tröôùc heát caàn taïo ra moät chuoåi chöùa thoâng tin ñònh daïng caùch thöùc in baûng chöùa caùc thoâng tin ñaày ñuû veà caùch boá trí vaên baûn.
4. KHAÛ NAÊNG KEÁT NOÁI VÔÙI CÔ SÔÛ DÖÕ LIEÄU CUÛA VISUAL BASIC.
Hình 2: Minh hoaï khaû naêng keát noái döõ lieäu cuûa VB vôùi CSDL.
Data
ActiveX .EXE
.DLL
Midder Tier
Data
Source
Form
Client
DHTML
Report
Code
Data binding
Remoting
Data Access ADO, RDO, DAO
Class Module, Data Enviroment
Creatable Recordsets, ADO Data Control , Intrinsic Data Control
DCOM, Remotables,ADO Recordsets, Remoting UDTs
Microsoft Transaction
Server
Microsoft Visual Database Tool (Dataview)
Söû duïng Visual Basic 6.0 baïn coù theå taïo caùc thaønh phaàn goùi goïn töøng böôùc trong moät heä thoáng truy caäp döõ lieäu. Khôûi ñaàu vôùi data source, Microsoft Visual Data Tools (Vieäc truy caäp döõ lieäu thoâng qua cöûa soå Dataview) cung caáp cho baïn caùc khaû naêng ñeå xem vaø thao taùc treân caùc ñoá töôïng Table, views, Stored procedures, vaø caùc sô ñoà cô sôû döõ lieäu treân caùc heä thoáng SQL Server vaø Oracle.
Data Source vaø Data Controls :
Treân Client chuùng ta coù theå söû duïng coâng cuï Data Enviroment ñeå thöïc hieän vieäc taïo nhanh caùc keát noái ADO vaø caùc ñoái töôïng Command ñeå truy caäp döõ lieäu cuûa baïn. Data Enviroment coøn cung caáp theâm caùc giao tieáp laäp trình ñoäng cho pheùp truy caäp caùc ñoái töôïng döõ lieäu trong döï aùn cuûa baïn.
ADO Conrol veà baûn chaát beân trong cung töông töï nhö Data Control, ngoaïi tröø vieäc noù söû duïng ñoái töôïng ADO Recordset nhö laø moät Data Source cho caùc Controls vaø caùc ñoái töôïng trong Visual Basic.
Dynamic Data Binding:
Khaû naêng keát buoäc moät data source tôùi moät ñoái töôïng caàn döõ lieäu laø khaû thi ñoái vôùi Visual Basic 6.0. Taïi thôøi ñieåm thi haønh baïn coù theå thieát laäp thuoäc tính Data source cuûa ñoái töôïng caàn döõ lieäu (ví duï nhö ñoái töôïng DataGrid Control ) tôùi moät data source.
Theá maïnh cuûa Visual Basic laø khaû naêng hoå trôï vaø keát noái döõ lieäu. Visual Basic hoå trôï caùc kieåu truy caäp döõ lieäu nhö : DAO - ñoái töôïng truy caäp döõ lieäu, RDO – truy caäp döõ lieäu töø xa, ADO - caùc ñoái töôïng döõ lieäu ActiveX. Noù coøn coù khaû naêng keát noái vôùi döõ lieäu töø MS Access, SQL Server vôùi heä quaûn trò cô sôû döõ lieäu Oracle vaø moät soá heä quaûn trò cô sôû döõ lieäu khaùc.
Trong ñoà aùn toát nghieäp naøy toâi ñaõ caøi ñaët chöông trình treân ngoân ngöõ VB 6.0 vaø duøng heä quaûn trò CSDL SQL Server 7.0 qua phöông phaùp truy caäp ADO.
Sau ñaây toâi xin giôùi thieäu theâm veà kieåu truy caäp döõ lieäu ADO
Ñoái töôïng döõ lieäu ActiveX (Active X Data Object)
Sô ñoà kieán truùc cuûa ADO :
Connection
Command
Recordset
Errors
Fields
Parameters
Error
Parameter
Field
Khaùi nieäm veà ADO:
Laø caàu noái giöõa ñoái töôïng cung caáp döõ lieäu vaø ñoái töôïng söû duïng döõ lieäu thoâng qua caùc Data source ñaõ ñöôïc taïo cho vieäc söû duïng Microsoft ActiveX Data Objects (ADO), noù laø phöông phaùp toái öu nhaát ñeå truy caäp döõ lieäu cuûa Visual Basic trong nguoàn döõ lieäu baát kyø quan heä vaø khoâng quan heä. Truy nhieân caùc phöông phaùp khaùc nhö RDO, DAO vaãn coøn ñöôïc hoå trôï.
III. GIÔÙI THIEÄU VEÀ CAÙC HEÄ QUAÛN TRÒ CÔ SÔÛ DÖÕ LIEÄU SQL SERVER
1. Caáu truùc cô sôû döõ lieäu cuûa SQL Server 7.0.
SQL Server toå chöùc döõ lieäu löu trong Cô sôû döõ lieäu (CSDL) thaønh nhöõng thaønh phaàn logic. User laøm vieäc treân nhöõng thaønh phaàn logic naøy nhö baûng (table), view, procedure… Thaønh phaàn vaät lyù cuûa nhöõng file thì trong suoát (transparent), chæ coù ngöôøi quaûn lyù Cô sôû döõ lieäu môùi ñöôïc laøm vieäc treân ñoù.
SQL Server coù 4 cô sôû döõ lieäu heä thoáng ( master, msdb, model, temdb database ) vaø caùc cô sôû döõ lieäu cuûa user. Hình minh hoïa
Master database: Ghi laïi caáu hình heä thoáng cuûa SQL Server. Noù ghi laïi taát caû taøi khoaûn ñaêng kyù cuûa user vaø caáu hình heä thoáng, nhöõng file primary chöùa thoâng tin khôûi ñoäng cuûa Cô sôû döõ lieäu cuûa user, chöùa thoâng tin khôûi ñoäng cuûa SQL Server. Nhöõng thao taùc sau gaây ra nhöõng thay ñoåi trong master database: Taïo, thay ñoåi, xoùa cô sôû döõ lieäu,thay ñoåi transaction log. Theâm hay xoùa cuûa nhöõng sever söû duïng thuû tuïc heä thoáng nhö sp-addserver (theâm server) and sp-dropserver (boû server).
Temdb database : chöùa nhöõng baûng taïm vaø nhöõng stored procedure taïm. Nhöõng baûng taïm vaø nhöõng stored procedure cuûa user khi noái keát vaøo heä thoáng ñöôïc löu trong temdb database. Khi SQL khôûi ñoäng thì taát caû caùc baûng taïm vaø caùc stored procedure trong temdb database ñeàu maát.
Stored procedure : laø 1 taäp hôïp bieân dòch tröôùc cuûa nhöõng caâu leänh cuûa Transact-SQL ñöôïc löu vaø xöû lyù nhö 1 ñôn vò (unit). Stored procedure saün saøng cho vieäc quaûn lyù SQL Server vaø hieån thò thoâng tin cuûa cô sôû döõ lieäu, cuûa nhöõng ngöôøi söû duïng. SQL Server cung caáp nhöõng stored procedure goïi laø stored procedure heä thoáng.
Model database : ñöôïc duøng nhö 1 khuoân maãu cuûa CSDL trong heä thoáng. Khi taïo ra 1 CSDL thì phaàn ñaàu cuûa CSDL laø baûn sao cuûa model database, phaàn coøn laïi laø nhöõng trang troáng.
Msdb database : SQL Server Agent duøng msdb database ñeå laäp keá hoaïch alert, job. Alert laø 1 ñònh nghóa cuûa ngöôøi söû duïng ñaùp öùng 1 söï kieän cuûa SQL Server. Alert coù theå thöïc thi caû nhieäm vuï ñònh nghóa hoaëc gôûi e-mail ñeán 1 ngöôøi chæ ñònh. Job laø söï thöïc hieän 1 haønh ñoäng quaûn lyù chöùa 1 hoaëc nhieàu böôùc, thay theá cho thuaät ngöõ task cuûa SQL Server 6.5.
2. Caáu truùc cô sôû döõ lieäu vaät lyù.
a. Trang (page).
Ñôn vò cô baûn löu tröõ döõ lieäu laø trang (page). Trong SQL Server 7.0, 1 trang coù kích thöôùc 8MB, ta seõ coù 128 trang/1MB. 96 byte ñaàu cuûa moãi trang chöùa header cuûa trang goàm thoâng tin heä thoáng nhö loaïi trang, soá vuøng troáng cuûa trang.
Caáu truùc trang döõ lieäu : Caùc haøng döõ lieäu (data row) ñöôïc ñöa vaøo tuaàn töï ngay sau page header, row offset ñöôïc baét ñaàu töø cuoái trang, chæ ñeán data row vaø cho bieát byte baét ñaàu cuûa data row, kích thöôùc haøng toái ña laø 8060 byte.
b. Extent.
Extent laø ñôn vò cô baûn chæ vuøng löu baûng vaø index. Moãi extent goàm 8 trang lieân tuïc nhau. Coù 2 loaïi extent :
Mixed extent coù theå löu nhöõng ñoái töôïng khaùc nhau.
Uniform extent chæ coù theå löu 1 ñoái töôïng duy nhaát.
c. Nhöõng loaïi file trong CSDL : SQL Server coù 3 loaïi file:
Primary file : laø file baét ñaàu cuûa cô sôû döõ lieäu. Moãi cô sôû döõ lieäu chæ coù 1 file primary, teân file coù phaàn môû roäng laø .mdf
Secondary file : laø file löu nhöõng gì coøn laïi cuûa cô sôû döõ lieäu maø khoâng chöùa trong primary file, coù theå coù nhieàu file secondary, teân file coù phaàn môû roäng laø .ndf.
Log file : chöùa nhöõng thoâng tin transaction log, ñöôïc duøng ñeå khoâi phuïc cô sôû döõ lieäu, moãi cô sôû döõ lieäu coù ít nhaát 1 log file, teân file coù phaàn môû roäng laø .ldf.
File cuûa SQL Server coù 2 teân:
Logical_file_name: laø teân duøng trong nhöõng caâu leänh Transact_SQL.
Os_file _name: laø teân file vaät lyù, chæ roõ ñöôøng daãn cuûa file cô sôû döõ lieäu, ví duï: C:\Mssql7\Data\MyData1.mdf laø teân Os_file_name.
MyDB_primary laø teân logical_file_name, Nhöõng trang trong file ñöôïc ñaùnh soá baét ñaàu töø 0. Moãi file coù 1 soá ID. Moãi trang trong file goàm caû ID file vaø soá thöù töï trang trong file.
Ví duï: File primary coù kích thöôùc 4MB, vaø Secondary coù kích thöùôc 1 MB.
Trang ñaàu tieân trong moãi file laø trang header file chöùa thoâng tin veà thuoäc tính cuûa file. Trang thöù 9 trong primary file laø trang khôûi ñoäng cô sôû döõ lieäu chöùa thoâng tin veà thuoäc tính cuûa cô sôû döõ lieäu.
3. Lyù thuyeát moâ hình quan heä
a. Caùc khaùi nieäm cô baûn
Thöïc theå : laø moät ñoái töôïng cuï theå naøo ñoù
Thuoäc tính thöïc theå : Tính chaát xaùc ñònh thöïc theå
Lôùp thöïc theå : Caùc thöïc theå coù cuøng thuoäc tính
Thuoäc tính: Teân thuoäc tính, mieàn xaùc ñònh cuûa thuoäc tính
Löôïc ñoà quan he : goàm caùc thuoäc tính cuûa thöïc theå (teân, mieàn xaùc ñònh) cuøng vôùi caùc meänh ñeà raøng buoäc.
Löôïc ñoà cuûa moät quan heä : R== (A1: D1’ A2 : D2 ,……,An :Dn , M) trong ñoù: AI :Teân thuoäc tính, DI :Mieàn xaùc ñònh cuûa thuoäc tính, M : Meänh ñeà raøng buoäc.
b. Khaùi Nieäm phuï thuoäc döõ lieäu vaø caùc daïng chuaån
Moät thuoäc tính goïi laø phuï thuoäc vaøo caùc thuoäc tính khaùc khi giaù trò cuûa thuoäc tính naøy phuï thuoäc vaøo giaù trò cuûa thuoäc tính kia. Söï phuï thuoäc coù theå laø tröïc tieáp hay giaùn tieáp.
Moät quan heä bao giôø cuõng coù moät nhoùm thuoäc tính maø giaù trò cuûa chuùng qui ñònh giaù trò cuûa caùc thuoäc tính khaùc, nhoùm thuoäc tính ñoù goïi laø khoùa.
Vôùi moät quan heä tuøy vaøo caùc phuï thuoäc cuûa caùc thuoäc tính vaøo khoùa trong ñoù maø ta phaân chia caùc quan heä ñoù thaønh caùc daïng chuaån khaùc nhau.
Caùc daïng chuaån cô baûn:
Daïng chuaån 1
Daïng chuaån 2
Daïng chuaån 3
Caùc döõ lieäu löu giöõ döôùi daïng chuaån 3 traùnh ñöôïc hieän töôïng dö thöøa döõ lieäu, taïo cho döõ lieäu coù tính ñoäc laäp cao. Caùc quan heä neáu chöa ôû daïng chuaån 3 seõ ñöôïc phaân raõ thaønh caùc quan heä nhoû hôn ôû daïng chuaån 3.
c. Khaùi nieäm chæ daãn vaø khoùa chæ daãn
Ñeå coù theå tìm kieám thoâng tin nhanh theo moät tieâu chuaån naøo ñoù chuùng ta taïo ra caùc thoâng tin chæ daãn theo tieâu chuaån ñoù. Caùc thoâng tin chæ daãn laø caùc thoâng tin giuùp ta tìm kieám döõ lieäu nhanh. Caùc thoâng tin naøy goïi laø khoùa chæ daãn. Khoùa chæ daãn coù theå laø moät tröôøng, hoaëc nhieàu tröôøngï.
Vôùi caùch taïo ra khoùa chæ daãn theo tieâu chuaån naøo ñoù ta coù theå tìm kieám nhanh döõ lieäu theo tieâu chuaån ñoù.
CHÖÔNG IV
XAÂY DÖÏNG CHÖÔNG TRÌNH
I. Phaàn döõ lieäu :
Nhö ñaõ trình baøy trong chöông 2, phaàn phaân tích vaø thieát keá heä thoáng. Ta toå chöùc döõ lieäu thaønh 16 baûng döõ lieäu nhö treân.
Hình : Moâ hình vaät lyù döõ lieäu
II. Moät soá giao dieän chính :
1. Hình aûnh Form chính cuûa chöông trình:
2. Ñaây laø hình aûnh Menu giao dòch xuaát haøng:
3. Hình aûnh Form ñôn ñaët haøng :
4. Hình aûnh Form laäp phieáu xuaát haøng :
5. Hình aûnh Form laäp phieáu thu tieàn haøng :
III. Moät soá moâ ñun chính :
1. Moâ moâ ñun keát noái CSDL :
Public Function Ketnoi() As Boolean
On Error Resume Next
con.ConnectionTimeout = 5
'su dung sqloledb de ket noi toi sqlserver
' phuong thuc chuoi ket noi
con.ConnectionString = "PROVIDER=SQLOLEDB.1;server =(local)" &
";Database=dulieu1" & ";Trusted_Connection=yes"
'con.Properties("Prompt") = adPromptComplete
con.Open
End Function
2. Moâ ñun kieåm tra ngaøy thaùng nhaäp vaøo :
' Ham kiem tra ngay nhap vao
Public Function checkdate(strdate As String) As String
Dim temp As Integer
Dim strtemp As String
temp = 3
If IsNumeric(Left(strdate, 1)) Then ' Neu ky tu dau la so thi
If IsNumeric(Mid(strdate, 2, 1)) Then ' Neu ky tu thu hai la so thi
If Left(strdate, 2) <= 31 Then ' Neu gia tri 2 ky tu
' <=31 thi kiem tra dau "/"
mask1:
If Mid(strdate, temp, 1) = "/" Then
If IsNumeric(Mid(strdate, temp + 1, 1)) Then
If IsNumeric(Mid(strdate, temp + 2, 1)) Then
If Mid(strdate, temp + 1, 2) <= 12 Then
If Mid(strdate, temp + 3, 1) = "/" Then
strtemp = Left(strdate, temp + 3) ' Cat bo 6 ky tu dau
If IsDate(strdate) Then ' Chuyen phan con lai th nam
checkdate = strtemp & Format(strdate, "yyyy")
Else
GoTo msgdate
End If
End If
Else
GoTo msgdate
End If
Else
If Mid(strdate, temp + 2, 1) = "/" Then
strtemp = Left(strdate, temp + 2)
If IsDate(strdate) Then
checkdate = strtemp & Format(strdate, "yyyy")
Else
GoTo msgdate
End If
End If
End If
Else
GoTo msgdate
End If
Else
GoTo msgdate
End If
Else
GoTo msgdate
End If
Else
If Mid(strdate, 2, 1) = "/" Then
temp = 2
GoTo mask1
Else
GoTo msgdate
End If
End If
Else
msgdate:
checkdate = "1"
End If
End Function
3. Moâ ñun löu döõ lieäu xuaát haøng:
Public Sub Luudl()
On Error GoTo error1
Dim rs As New ADODB.Recordset
Dim cmd As New ADODB.Command
Dim str As String
If Trim(txtmapnx) = "" Or Trim(txtngaylappnx) = "" Or Trim(Combomaddh.Text) = "" Or Trim(txtngaynx) = "" Or Trim(txtngayhtt) = "" Or Trim(Combomahang.Text) = "" Or Trim(txtsoluongnx) = "" Or Trim(txtdongianx) = "" Then
MsgBox "Chu y: Phai nhap day du thong tin truoc khi luu!", vbOKOnly + vbExclamation, "Thong bao"
txtmapnx.SetFocus
Exit Sub
End If
'Neu kiem tra ma khach hang co bat dau bang chu 'K' hay khong
If Left(Trim(txtmapnx), 1) "X" Then
MsgBox "Chu y: Ma phieu xuat hang phai bat dau boi 'X ...' !", vbOKOnly + vbExclamation, "Thong bao"
txtmapnx.SetFocus
Exit Sub
End If
'Tim xem da ton tai Maduong nay trong Table duong hay chua?
Set cmd.ActiveConnection = con
str = "Select NXHANG.mapnxh, NXHANG.maddh, NXHANG.makho, NXHANG.ngaynxh, NXHANG.ngayhtt, NXHANG.ngaylappnx from NXHANG where mapnxh like 'X%' and mapnxh = '" & Trim(txtmapnx) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = True Then 'Neu chua ton tai
Set rs = Nothing ' Dong record lai
toithieu = 0 'Xoa gia tri ban dau
toida = 0 'Xoa gia tri ban dau
Set cmd.ActiveConnection = con
str = "select MATHANG.mahang, MATHANG.sltontt, MATHANG.sltontd from MATHANG where MATHANG.mahang ='" & Trim(Left(Combomahang.Text, 4)) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = False Then ' Neu da ton tai, chac chan co
toithieu = rs!sltontt
toida = rs!sltontd
Set rs = Nothing
End If
Set cmd.ActiveConnection = con
str = "select CTMATHANG.mahang, CTMATHANG.soluongton from CTMATHANG where CTMATHANG.mahang ='" & Trim(Left(Combomahang.Text, 4)) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = False Then ' Neu da ton tai
sltontam = rs!soluongton - Val(txtsoluongnx)
If sltontam < toithieu Then
MsgBox "So luong hang ton duoi muc toi thieu. Can phai nhap them truoc da.", vbOKOnly + vbExclamation, "Thong bao"
txtsoluongnx.SetFocus
Me.MousePointer = 0
Set rs = Nothing
Exit Sub
Else ' Neu khong duoi muc ton toi thieu, cap nhat SL
Set rs = Nothing
Set cmd.ActiveConnection = con 'Mo lai de luu
str = "Select NXHANG.mapnxh, NXHANG.maddh, NXHANG.makho, NXHANG.ngaynxh, NXHANG.ngayhtt, NXHANG.ngaylappnx from NXHANG where mapnxh like 'X%' and mapnxh = '" & Trim(txtmapnx) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = True Then 'Neu chua ton tai, chac chan chua co
rs.AddNew
rs!mapnxh = Trim(txtmapnx)
rs!ngaylappnx = Trim(txtngaylappnx)
rs!maddh = Trim(Left(Combomaddh.Text, 5))
rs!makho = Trim(Left(Combomakho.Text, 5))
rs!ngaynxh = Trim(txtngaynx)
rs!ngayhtt = Trim(txtngayhtt)
rs.Update
Set rs = Nothing ' Dong record lai
End If
Set cmd.ActiveConnection = con
str = "Select DONGNXHANG.mapnxh, DONGNXHANG.mahang, DONGNXHANG.soluongnxh, DONGNXHANG.dongianxh from DONGNXHANG where mapnxh like 'X%' and mapnxh = '" & Trim(txtmapnx) & "' and mahang = '" & Trim(Left(Combomahang.Text, 4)) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = True Then 'Neu chua ton tai
rs.AddNew
rs!mapnxh = Trim(txtmapnx)
rs!mahang = Trim(Left(Combomahang.Text, 4))
rs!soluongnxh = Trim(txtsoluongnx)
rs!dongianxh = Trim(txtdongianx)
rs.Update
Set rs = Nothing
End If
'Chi tiet mat hang duoc cap nhat sau cung
Set rs.ActiveConnection = con 'Cap nhat phai nhu vay
str = "Update CTMATHANG set soluongton ='" & sltontam & "' where mahang ='" & Trim(Left(Combomahang.Text, 4)) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
sltontam = 0 ' Xoa
Set rs = Nothing 'Dong ban ghi lai
End If
Else ' Neu chua co (chua xuat lan nao)
sltontam = Val(txtsoluongnx) ' Kiem tra vuot Sltontd
If sltontam < toithieu Then
MsgBox "So luong hang ton duoi muc toi thieu. Can phai nhap them truoc da.", vbOKOnly + vbExclamation, "Thong bao"
txtsoluongnx.SetFocus
Me.MousePointer = 0
Set rs = Nothing
Exit Sub
Else ' Khong duoi SLtontt, tao moi
Set rs = Nothing
Set cmd.ActiveConnection = con 'Mo lai de luu
str = "Select NXHANG.mapnxh, NXHANG.maddh, NXHANG.makho, NXHANG.ngaynxh, NXHANG.ngayhtt, NXHANG.ngaylappnx from NXHANG where mapnxh like 'X%' and mapnxh = '" & Trim(txtmapnx) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = True Then 'Neu chua ton tai, chac chan chua co
rs.AddNew
rs!mapnxh = Trim(txtmapnx)
rs!ngaylappnx = Trim(txtngaylappnx)
rs!maddh = Trim(Left(Combomaddh.Text, 5))
rs!makho = Trim(Left(Combomakho.Text, 5))
rs!ngaynxh = Trim(txtngaynx)
rs!ngayhtt = Trim(txtngayhtt)
rs.Update
Set rs = Nothing ' Dong record lai
End If
Set cmd.ActiveConnection = con
str = "Select DONGNXHANG.mapnxh, DONGNXHANG.mahang, DONGNXHANG.soluongnxh, DONGNXHANG.dongianxh from DONGNXHANG where mapnxh like 'X%' and mapnxh = '" & Trim(txtmapnx) & "' and mahang = '" & Trim(Left(Combomahang.Text, 4)) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = True Then 'Neu chua ton tai
rs.AddNew
rs!mapnxh = Trim(txtmapnx)
rs!mahang = Trim(Left(Combomahang.Text, 4))
rs!soluongnxh = Trim(txtsoluongnx)
rs!dongianxh = Trim(txtdongianx)
rs.Update
Set rs = Nothing
End If
'Chi tiet mat hang phai duoc tao moi sau cung
Set cmd.ActiveConnection = con
str = "select CTMATHANG.mahang, CTMATHANG.soluongton from CTMATHANG where CTMATHANG.mahang ='" & Trim(Left(Combomahang.Text, 4)) & "'"
rs.Open str, con, adOpenKeyset, adLockPessimistic, adCmdText
If rs.EOF = True Then 'Chac chan chua co
rs.AddNew
rs!mahang = Trim(Left(Combomahang.Text, 4))
rs!soluongton = sltontam
rs.Update
Set rs = Nothing
sltontam = 0 'Xoa gia tri
End If
End If
End If
toithieu = 0 'Xao gia tri
toida = 0 'Xao gia tri
Else 'Neu da ton tai phieu xuat hang nay roi
MsgBox "Phieu xuat hang co ma so [" & Trim(txtmapnx) & "] da ton tai. Vui long kiem tra lai !", vbOKOnly + vbExclamation, "Thong bao"
txtmapnx.SetFocus
Me.MousePointer = 0
Exit Sub
End If
DisplayGrid 'Hien thi danh sach cac hang san xuat
error1:
If Err.Number 0 Then
MsgBox Err.Number & Err.Description
Else
MsgBox "Luu thanh cong phieu xuat hang co ma so: '" & Trim(txtmapnx) & "'"
response = MsgBox("Ban co muon them mat hang vao phieu xuat hang nua khong ?", vbYesNo + vbQuestion, "Thong bao")
If response = vbYes Then 'Neu chon NO thi khong Xoa
Locktext
Unlocktext2
Setnull2 'Xoa Textbox
Combomahang.SetFocus
Flag = True
Else
Setnull2 'Xoa Textbox
Locktext
End If
End If
End Sub
CHÖÔNG V
ÑAÙNH GIAÙ HEÄ THOÁNG
I. Nhöõng keát quaû ñaït ñöôïc
Heä thoáng quaûn lyù xuaát nhaäp haøng giuùp cho vieäc quaûn lyù mua baùn cuûa coâng ty ñöôïc thöïc hieän moät caùch thuaän tieän nhanh choùng vaø an toaøn, goùp phaàn tieát kieäm thôøi gian vaø giaûm bôùt caùc coâng vieäc thuû coâng (tuy nhieân khoâng theå thay theá hoaøn toaøn).
Heä thoáng ñaùp öùng ñöôïc nhöõng yeâu caàu cô baûn trong coâng taùc caäp nhaät, xöû lyù xuaát nhaäp haøng moät caùch nhanh choùng, chính xaùc nhö caäp nhaät döõ lieäu, tìm kieám thoâng tin, baùo caùo toång hôïp xuaát, nhaäp, toàn haøng.
Giao dieän thaân thieän vaø deã daøng cho ngöôøi söû duïng.
II. Nhöõng toàn taïi cuûa chöông trình
Trong ñieàu kieän haïn heïp veà thôøi gian vaø kieán thöùc coøn haïn cheá neân chöông trình vaãn coøn moät soá toàn taïi nhö sau:
Heä thoáng chæ môùi phaùt trieån baèng ngoân ngöõ VisualBasic, löu tröõ döõ lieäu baèng heä quaûn trò côû sôû döõ lieäu MicroSoft SQL Server vaø chaïy treân maùy ñôn.
Moät soá phaàn xöû lyù Tieáng Vieät coøn chö toát.
Chöa xaây döïng heä thoáng baûo maät cô sôû döõ lieäu vaø phaân quyeàn ngöôøi söû duïng.
III. Höôùng phaùt trieån chöông trình
Döïa vaøo keát quaû khaûo saùt baøi toaùn thöïc teá vaø phaân tích thieát keá heä thoáng ôû treân, em xin ñeà xuaát höôùng phaùt trieån chöông trình nhö sau:
1. Phaùt trieån heä thoáng
Xaây döïng heä thoáng thöông maïi ñieän töû Web baèng coâng ngheä ASP (Active Server Pages) hoaëc ASP.Net, löu tröõ döõ lieäu baèng heä quaûn trò cô sôû döõ lieäu MicroSoft SQL Server hoaëc Orecle vaø chaïy treân maïng.
2. Baûo maät cô sôû döõ lieäu vaø phaân quyeàn ngöôøi söû duïng
Ta seõ phaân caáp ra 3 möùc ngöôøi söû duïng:
Addmin: coù quyeàn theâm, söûa, xoaù database, phaân caáp, phaân quyeàn cho ngöôøi söû duïng.
User möùc 1: coù quyeàn theâm döõ lieäu vaø database.
User möùc 2: chæ ñöôïc quyeàn xem maø khoâng ñöôïc thöïc hieän baát cöù thao taùc gì treân database.
Moät vaán ñeà nöõa laø database seõ ñöôïc ñaët treân maùy chuû chöù khoâng ñaët treân caùc maùy con nhö hieän nay nöõa vaø nhö vaäy vieäc quaûn trò vaø baûo maät ddatabase seõ deã daøng hôn.
TAØI LIEÄU THAM KHAÛO
1. Microsoft Visual Basic 6.0 & Laäp trình cô sôû döõ lieäu
– Nguyeãn Thò Ngoïc Mai (Chuû bieân), NXB GIAÙO DUÏC
Laäp trình Visual Basic trong 21 ngaøy – Nathan Gurewich – On Gurewich, NXB GIAÙO DUÏC.
Keá toaùn doanh nghieäp vôùi Visual Basic – VN GUIDE, NXB Thoáng Keâ.
Giaùo trình phaân tích vaø thieát keá heä thoáng thoâng tin quaûn lyù – ThS.Nguyeãn Höõu Troïng, Tröôøng Ñaï Hoïc Thuyû Saûn.
Phaân tích vaø thieát keá heä thoáng thoâng tin - Nguyeãn Vaên Ba, NXB ÑAÏI HOÏC QUOÁC GIA HAØ NOÄI.
Höôùng daãn trieån khai Caên Cöù Döõ Lieäu söû duïng SQL SERVER 7.0 vaø VISUAL BASIC 6.0 - Bieân dòch: Döông Quang Thieän, NXB Thoáng Keâ.