Professional Documents
Culture Documents
MUC LUC
Gii thieu PHAN I ...............................................................................1 :Phan tch he thong chng trnh QLKS............2
I.Phan tch anh gia hien trang.........................................3 I.1.Khao sat hien trang.....................................................3 I.2.Muc tieu xay dng chng trnh QLKS.........................4 I.3.ac ta bai toan..........................................................5 I.4.Mo hnh quan ly...........................................................7 I.5.Qui trnh quan ly ...........................................................8 II.Mo hnh hoa d lieu ......................................................10 II.1.Mo hnh quan niem d lieu......................................10 II.2.Mo hnh to chc d lieu ........................................16 II.3.Mo hnh vat ly d lieu ...........................................17 III.Mo hnh hoa x lythong tin ........................................22 III.1.Mo hnh thong lng.................................................22 III.2.Mo hnh quan niem x ly........................................23 III.3.Mo hnh to chc x ly...........................................26 III.4.Mo hnh vat ly x ly..............................................30 III.4.1 He thong cac n v to chc x ly.........30 III.4.2 Thiet ke IPO CHART..........................................31 PHAN II BASIC :NOI DUNG CHNG TRNH...............................36 36 I.Gii thieu cac net chnh cua ngon ng VISUAL II.Mo hnh client server.....................................................37 III.Mot so giao dien ma lenh (code) chnh trong chng trnh.........................................................................45 PHAN III PHAN IV :Ket luan hng phat trien.......................61 :Mot so bieu mau in cua chng trnh........62
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
Li gii thieu
rong nhng nam gan ay, du lch la mot trong nhng nganh co toc o tang trng cao nhat ca nc. Rat nhieu khach san c phat trien, oi mi lien tuc va nhanh chong theo a phat trien cua xa hoi ca ve qui mo va chat lng. Hien nay, cac Khach san phai trc tiep tiep nhan va quan ly mot khoi lng rat ln va thng xuyen cac loai khach, kem theo o la hang loat cac loai dch vu phat sinh a dang cua khach, do o cong viec quan ly hoat ong kinh doanh khach san la ngay cang ln va phc tap hn. Hn na, cong tac quan ly khong ch quan ly ve con so ma thong qua no phai rut ra c mot cach nhanh chong tnh hnh bien ong cua th trng, nhu cau ngi tieu dung, kha nang ap ng e t o nh hng, lap ke hoach cho cong viec kinh doanh. ay la kho d lieu rat ln, khong the lu tr va x ly mot cach thu cong nh trc ay ma can phai tin hoc hoa, cu the la xay dng mot chng trnh tin hoc e quan ly thong nhat va toan dien hoat ong kinh doanh cua khach san. Chng trnh Quan Ly Khach San c viet bang ngon ng Visual Basic theo mo hnh Server/Client la chng trnh thc hien mot so cong viec ve van e quan ly cua khach san nh quan ly ve phong, quan ly ve dch vu, quan ly khach ang ky va thue phong vi CSDL s dung la Microsoft Access. Nh s tan tam theo sat hng dan cua thay Nguyen Hu Trong, trong bc au em a nghien cu va van dung kien thc a hoc e xay dng c chng trnh quan ly ap ng tng oi mot so cac yeu cau at ra nh tren. Tuy nhien do kien thc con han che nen chng trnh chac chan khong tranh khoi cac thieu sot, v vay em rat mong c s gop y nhac nh cua cac thay co va cua cac ban e co the tng bc xay dng chng trnh ngay cang hoan thien va hieu qua hn.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
Em xin chan thanh cam n cac Thay Co va Khoa a tao dieu kien cho chung em hoan tat e tai nay.
PHAN I : PHAN TCH & THIET KE HE THONG CHNG TRNH QUAN LY KHACH SAN
Co nhieu phng phap phan tch va thiet ke he thong thong tin hien ai. ay em chon phng phap MERISE. MERISE c dch la Cac phng phap e tap hp cac y tng khong can co gang viet tac t cum t Methode pour Rassembler les Idees Sans Effort. ac trng cua phng phap MERISE la xem xet, tach biet d lieu va x ly am bao tnh khach quan trong qua trnh phan tch va cung cap ay u cac mo hnh e dien at cac bc cap nhat. He thong bao gom d lieu va x ly c bieu dien ba mc: - Mc quan niem (Concept): la mc cam nhan au tien e xac nh he thong thong tin, mc nay can xac nh cau hoi: He thong thong tin can nhng yeu to g? Chc nang ra sao? Gom nhng d lieu nao va qui tac quan ly nh the nao? - Mc to chc (Orgarization): la mc tong hp cac yeu to a nhan dien mc quan niem. Trong mot tong the van ong can tra li cac cau hoi: Ai lam? Lam au va khi nao? - Mc vat ly (Physic): la mc chi tiet. Ve d lieu can co cac quan he cu the, co mot ngon ng lap trnh cu the. Ve x ly can co ay u cac ac ta cho tng thu tuc chng trnh, co s tham khao ngon ng trong chng trnh nay. Cac bc phat trien cua qua trnh xay dng he thong thong tin: -Bc phan tch:
+Xac nh van e. +Nghien cu hien trang cua to chc. +Nghien cu kha thi +Xay dng sach hp ong trach nhiem Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
Khi khao sat qui trnh hoat ong cua mot khach san, ta nam c cac thong tin nh sau: 1/ oi tng khach: khach thue phong co hai dang: - Khach i tap the: la mot nhom nhieu ngi (c goi thong nhat la khach oan) thuoc mot to chc hay doanh nghiep nao o (goi chung la n v). Mot n v co the co nhieu oan khach lu tru tai khach san trong cac thi iem khac nhau. - Khach i le (goi la khach vang lai) : la loai khach khong thuoc mot n v nao. Tai cac thi iem khac nhau, mot ngi khach co the la khach vang lai hay co the nam
2/ oi tng phong:
Nhan vien le tan sau khi nhan khach vao phong se theo doi khach tren s o phong. S o phong la mot
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
t giay mo ta v tr cua tng phong trong khach san. Phong co khach se c anh dau hay ghi ky hieu. Thong tin ve khach trong moi phong se c ghi lai tren so nhat ky. Hang ngay khach san se lu lai s o phong cua moi ngay e lam bao cao. Do yeu cau phai luon luon nam c thong tin cua tng phong trong khach san tai bat c thi iem nao v vay khi mot phong co s bien ong (khach chuyen phong, bt khach trong phong,..) phai viet lai rat kho khan. 3/ S dung dch vu: Khi khach lu tru trong khach san thng hay s dung cac dch vu nh: ien thoai, fax, thue xe, massage, an, nc uong,. . . Nhan vien khach san phai ghi nhan lai cac phat sinh nay e lam bao cao hay thanh toan vi khach sau nay. Thong thng trong mot khach san bo phan phong (ang ky, phan phong, tra phong) do nhan vien le tan phu trach, con phan cung cap dch vu cho khach lai do bo phan khac am trach. Cac bo phan nay tuy tach ri nhau nhng lai co quan he rat chat che v oi tng phuc vu eu la khach thue phong. Qua quan sat trc tiep hoat ong tai khach san, em nhan thay toan bo cac cong viec nh e cap tren eu c nhap thu cong bang tay va lu tam thi tren giay, sau o mi c nhap ri rac vao may tnh. Cuoi ngay va cuoi thang, nhan vien phu trach s dung phan mem bang tnh Excel e tao cac bao cao tong hp ve tai chnh va quan tr. Va khi can thong tin ve mot khach hang hay dch vu, viec tm kiem thng rat kho khan. Ket qua la n v phai ton nhieu nhan lc va thi gian e cap nhat va x ly d lieu. Lanh ao n v rat kho kiem tra va ch ao chnh xac cac hoat ong kinh doanh cua n v mnh.
I.2 - MUC TIEU XAY DNG CHNG TRNH QUAN LY KHACH SAN
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
Kinh doanh khach san gom hai hoat ong chnh la cho thue phong va kinh doanh cac loai dch vu co lien quan. Muc tieu xay dng chng trnh quan ly khach san bao gom cac noi dung sau: -To chc thong nhat mot he thong c s d lieu nham lu gi thong nhat toan bo d lieu ve hoat ong cua khach san nh : khach hang, phong oc, nhng dch vu kem theo e phuc vu cho cong tac quan ly. -Tin hoc hoa cong tac quan ly khach hang. -Tin hoc hoa cac qui trnh ang ky, nhan phong va quan ly phong. -Tin hoc hoa viec cung cap cac loai dch vu cho khach. -Tin hoc hoa viec thanh toan cho khach. -Tong hp va lap cac bao cao ve: thue phong, hien trang phong, cong suat buong, doanh thu khach san, nha hang va dch vu. -S dung mo hnh Server/Client e chuyen biet hoa cong viec: chng trnh quan ly Khach san cang hieu qua hn v moi Client la ni tiep nhan cac luong d lieu khac nhau tng ng vi tng phan hanh c giao va hoan toan oc lap vi nhau trong thao tac trong khi may chu Server la ni duy nhat cha c s d lieu do cac Client cung cap va chu trach nhiem x ly, tong hp cac d lieu a co . Nh vay mo hnh Server/Client se lam cho toan bo chng trnh va thong nhat va co s oc lap gia tng loai cong viec.
I.3-
AC TA BAI TOAN
Nh vay can c vao hien trang va muc tieu can giai quyet, chng trnh quan ly khach san se quan ly va x ly cac nhom thong tin nh sau : 1/ oi tng quan ly: -Quan ly khach: Nam c cac thong tin ca nhan cua tng khach thue phong : Ho ten, a ch, so CMND. Vi khach quoc te can quan ly them ho chieu, quoc tch,. . .
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
Nam c cac thong tin cua tng oan khach: ten oan, n v, a ch, tel, fax, tai khoan, ma so thue cua to chc n v o. So lng va chi tiet tng v khach cua tng oan. -Quan ly phong: Moi phong can quan ly thong tin: so phong, loai phong, gia phong, ngay gi ang ky, ngay gi nhan phong, ngay gi tra phong. . . -Quan ly hang hoa dch vu: Ten hang hoa, dch vu, so lng, gia, ac iem, ni cung cap, qua trnh thanh toan, . . . 2/ Thiet ke giao dien e nhap cac nghiep vu khach san sau: a) ang ky khach: Khach trc khi thue phong eu phai lam thu tuc ban au la ang ky phong. Trong muc nay nhan vien le tan se cap nhat cac thong tin vao may tnh e quan ly nh sau: -oan: ma so oan, ten oan, ngay nhan phong d kien, so lng phong can thue, n v. Neu n v lan au en thue phai nhap cac thong tin ve n v: ma so n v, ten n v, a ch, ien thoai,.chng trnh cho phep truy tm mot n v nao o a tng lu tru tai khach san trc o. Thong tin chi tiet tng ngi khach trong oan. -Khach: nhap ten khach, ma so khach, so cmnd, a ch, ho chieu, quoc tch...neu la khach mi. Neu la khach cu, chng trnh se t ong do tm thong qua khoa co the la ma so, so cmnd, ten, so ho chieu cua khach. b) Phan phong: bo tr tng v khach vao cac phong. Moi phong co the co nhieu khach. c) Thiet ke s o phong. d) Quan ly phong (xem thong tin phong, oi phong, tra phong, in hoa n phong). c) Giao dien nhap cac dch vu cho khach.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
e) Quan ly khach oan f) Quan ly viec thanh toan tien phong va dch vu g) Tm kiem cac thong tin ve khach hang va dch vu.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
-Lu tr CSDL cua khach san. -Quan ly thong tin. -Tong hp x ly d lieu do 2 Client khach san va nha hang cung cap. -Cap phat quyen truy cap, . .
SERVER
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
10
I.5 -
Khach thue phong lam thu tuc ang ky at phong, nhan vien khach san (le tan) can c vao yeu cau cua khach ve loai phong, ngay bat au thue, so lng phong neu ap ng c th lu vao trong may tnh. Phan nay co the truy tm nhanh c cac khach hang a tng lu tru tai khach san. Khi khach en thue phong, neu la khach oan a lam thu tuc at phong t trc, le tan lam cac thu tuc e tiep nhan khach va phan bo phong cho tng khach trong oan. Neu la khach lang lai cha at phong trc th le tan lam luon thu tuc at phong ong thi bo tr phong ngay cho khach. Khi phan bo vao phong phai thc hien cho dt iem cho tng oan. Nhieu ngi co the c phan cung mot phong. Trong khi khach lu tru, bo phan Le tan phai cap nhat tat ca cac dch vu phat sinh cua khach nh : ien thoai, fax, giat ui, . . .e lu va may tnh. Bo phan nha hang cung se cap nhat cac chi ph cua khach ve: an, uong,. . .d lieu se c lu duy nhat tren may chu e khi tra phong se ch thanh toan tai quay le tan. Neu khach co yeu cau thay oi sang phong khac (chuyen phong). Chng trnh phai t ong chuyen tat ca cac dch vu phat sinh cua khach sang phong mi. Tai bat c thi iem nao, neu khach yeu cau phai liet ke tat ca cac chi ph phat sinh ve dch vu ma khach thue phong a s dung. Khi khach tra phong, Khach san phai liet ke tat ca cac chi ph cua khach trong khi lu khach san va in hoa n tnh tien. oi vi khach vang lai, phai in ra bang ke dch vu a s dung. oi vi khach oan, phai liet ke tat ca cac dch vu s dung chung cho ca oan va cua rieng tng v khach trong oan.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
11
Va e chng trnh hoat ong c an toan tren mang va co tnh bao mat, ngi quan tr CSDL se cap phat cho moi nhan vien s dung mot ten va mat khau khi s dung chng trnh.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
12
KHACH VN: lu thong tin cua khach trong nc (khach Viet Nam).
Khach VN -CMND
KHACH QTE : Khach thue phong neu la khach quoc te th ngoai viec lu cac thong tin nh ma so, ho ten con lu thong tin ve ho chieu cua khach.
Khach QT -So ho chieu -Ngay cap -Thi han
N V: Moi n v co mot ma so. Mot n v co the co nhieu oan tai cac thi iem khac nhau.
n v -Ma n v -Ten n v -ien thoai -Tai khoan -Ma so thue
OAN: Moi lan ang ky at phong (du la khach i le hay i theo oan) eu c xem la mot oan. Moi oan eu co mot ma so rieng e quan ly. Nhieu oan co the cung mot n v.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
13
OAN -Ma oan -Ten oan -Ngay at phong -Ngay nhan phong -So lng phong at -So lng khach trong oan
PHONG: Danh muc cac phong cho thue cua khach san. Moi mot phong eu co mot ma so o chnh la so phong thc te cua khach san.
Ma Phong p h o n g
101 102
Loai pho ng n oi
Ma so phong c tao nh sau: so tang + so phong. V du: phong so 10 tang 1 co ma so phong nh sau: 110 TNH: lu danh muc tnh/ thanh pho chnh trong ca nc.
Ma Tnh -Ma tnh -Tnh 04 08 t n h Tnh Ha noi TPHCM
NC: lu danh muc cac nc tren the gii. Ap dung oi vi khach quoc te.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
14
-Ma nc -Ten nc
01 84
DCH VU: mo ta danh muc cac loai dch vu cua khach san va nha hang nh: ien thoai, fax, thue xe, giat ui, an, nc uong. . .
Dch vu -Ma dch vu -Ten dch vu -VT Ma 001 002 003 Ten dv Thue xe Fax ien thoai DVT Lan Cuoc Cuoc
LOAI DV: mo ta tch chat loai dch vu cua khach san thuoc loai nao: phong, dch vu hay nha hang.
Ma Loai DV -Ma loai -Ten loai PH DV NH l o a i Ten loai Phong Dch vu Nha hang
AT PHONG: Moi khach phai at phong trc khi nhan phong. Moi quan he at phong dung e lu thong tin at phong cho tng khach. Moi ngi khach at phong eu co mot ma at phong. Khong co khach at phong nao co trung ma at phong. at phong the hien moi quan he ket hp gia thc the OAN, KHACH HANG va S DUNG PHONG.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
15
Nhan ph on g
S DUNG PHONG: s dung phong dung e lu cac khach hang thc s thue phong.
S dung phong -Ma p -Ngay nhan phong -Gi nhan phong -Ngay tra phong -Gi tra phong -Gia phong -Tra phong
S DUNG DCH VU: Khach thue phong thng s dung cac dch vu cua khach san. Moi ket hp s dung dch vu c sinh ra t moi ket hp gia thc the dch
vu va moi quan he s dung phong, dung e lu cac lan s dung dch vu cua tng khach hang ang s dung phong.
S dung dch vu -Ma s dung dch vu -Dien giai -Ngay sddv -So lng -Gia
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
16
THANH TOAN PHONG: Thc the nay lu thong tin qua trnh thanh toan tien phong cua khach, no c sinh ra t moi quan he s dung phong. Khach co the thanh toan tien phong lam nhieu t.
Thanh toan phong -Ma thanh toan phong -Ngay thanh toan -Phieu TT TnhMa (1,n) -Tien thanh tnh toan -T
(1,1) s dung dch vu, lu thong tin qua trnh thanh toan tien Khach VNs dung dch vu. (1,n) Khach QTCMND -V (1,1)
n v-Ma Nc-Ma (1,1) n v nc -Ten n v Ten tnh -Ten nc -ien thoai (1,n) (1,n) -Tai khoan KVN-T -Ma so KQT-N thue THANH TOAN DCH VU: c sinh ra t moi ket hp (1,1) So ho chieu -Ngay cap -Thi han
Thanh toan DV
-Ma thanh toan DV oan-Ma oan -Ngay thanh toan Khach oan KhachTT -Phieu -Ten oan hang-Ma KH (1,n) (1,n) -Tien thanh toan -Ngay at -Ten KH phong -ien thoai -Ngay nhan phong -Slng phong at S dung (1,n) -Slng khach Phong II.1.2at HNH QUAN NIEMat phong MO -Ma D LIEU BAI TOAN QUAN LY KHACH SAN: nhan -Ngay Phong-Ma Phong phong phong -Ma at (1,n) -Loai phong -Gi nhan phong phong -Nhan -Ngay tra (1,1) phong phong Ttoan -Gi tra phong phong -Gia phong -Ma TTPH -Tra phong -Ngay TT (1,n) -Phieu TT Dch vu -Tien TT Ma dch (1,n) vu -Ten dch (1,n) vu Sdung dch vu Ttoan -n v tnh (1,1) Dvu (1,n) -Ma TTDV
DV-LDV
(1,n)
-Masddv -Ngay sddv -Dien giai theo mo hnh -So lng Basic -Gia
Server/Client
o an tot nghiep
17
II.2 -
Mo hnh to chc d lieu cua he thong la lc o c s d lieu cua he thong. ay la bc trung gian chuyen oi gia mo hnh quan niem d lieu va mo hnh vat ly d lieu (mo hnh trong may tnh), chuan b cho cai at he thong. Sau ay la lc o quan he cua bai toan quan ly khach san: PHONG (Maphong, Loaiphong) KHACHHANG (MaKH, TenKH, Dienthoai) KHACH_VN (MaKH, CMND, Ma tnh) KHACH_QT (Ma KH, Sohochieu, Ngaycap, Thoihan, Manuoc) TINH (Matinh, Tentinh) NUOC (Manuoc, Tennuoc)
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
18
DONVI
(Madonvi, Matinh)
Tendonvi,
Dienthoai,
Masothue,
Taikhoan,
DOAN (Madoan, Tendoan, Ngaydp, Ngaynp, SL_Phd, SL_khach, Madonvi,) DOAN_KHACH (Makh, Madoan) DATPHONG (Madp, Makh, Madoan , nhanphong) SUDUNGPHONG (Madp, Maphong, Ngaynp, Gionp, Ngaytp, Giotp, Giaphong, Traphong) THANHTOANPHONG (MaTTPH, Madp, NgayTT, PhieuTT, TienTT) DICHVU (Madv, Tendv, Dvt, Maloai) LOAIDV (Maloai, Tenloai) SUDUNGDV (Masddv, Madp, Ngaysddv, Soluong, Dongia, Madv) THANHTOANDV (MaTTDV, Masddv, NgayTT, PhieuTT, TienTT)
II.3 -
Mo hnh vat ly d lieu la mo hnh cua d lieu c cai at tren may tnh di mot he quan tr c s d lieu nao o. Trong chng trnh nay la he quan tr CSDL Access. ng vi moi lc o quan he trong mo hnh to chc d lieu c cai at thanh mot bang d lieu c s (Table). ay ta ch trnh bay cac yeu to chnh cua Table bao gom cac cot: Ten trng, kieu d lieu, o ln va rang buoc toan ven d lieu. PHONG (Maphong, Loaiphong) PHONG Field name Data type Maphong (K) Text Loaiphong Text
Field size 3 15
Maphong: Ma so phong la so phong cua khach san Loaiphong: la loai phong nh: n, oi, ac biet, . .
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
19
KHACHHANG (MaKH, TenKH, Dienthoai) KHACH HANG Field name Data type Field size MaKH (K) TenKH Dienthoai Text Text Text 12 30 10
Makh: Ma khach hang co 12 ky t c tao thanh t ong nh sau: Makh=Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss") KHACH_VN (MaKH, CMND, Ma tnh) KHACH_VN Field name MaKH (K) CMND Matinh Data type Text Text Text Field size 12 10 2 Validation Rule Len()=12 Len()=12
KHACH_QT (Ma KH, Sohochieu, Ngaycap, Thoihan, Manuoc) KHACH_QT Field name MaKH (K) Sohochieu Ngaycap Thoihan Manuoc Data type Text Text Date Byte Text Field size 12 15 3 Validation Rule Len()=12 <date() Len()=3
TINH (Matinh, Tentinh) TINH Field name Data type Matinh (K) Text Tentinh Text Matinh: Ma tnh
Field size 2 20
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
20
NUOC (Manuoc, Tennuoc) NUOC Field name Manuoc(K) Tennuoc Data type Text Text Field size 3 20 Validation Rule Len()=3
Manuoc: Ma nc, anh so theo th t ch cai cua quoc gia Tennuoc: ten nc hay quoc gia. DONVI (Madonvi, Matinh) Tendonvi, Data type Text Text Text Text Text Text Dienthoai, Masothue, Taikhoan,
DONVI Field name Madonvi (K) Tendonvi Dienthoai Masothue Taikhoan Matinh
Field size 12 30 10 15 12 2
Len()=2
Madonvi: Ma n v co 12 ky t c tao thanh t ong nh sau: Madonvi=Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss") DOAN (Madoan, Tendoan, Ngaydp, Ngaynp, SL_Phd, SL_khach, Madonvi,) DOAN Field name Data type Field size Validation Rule Madoan (K) Text 12 Len()=12 Tendoan Text 30 Ngaydp Date Ngaynp Date SL_Phd Byte SL_khach Byte Madonvi Text 12
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
21
Madoan: Ma oan co 12 ky t c tao thanh t ong nh sau: Madoan=Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss") DOAN_KHACH (Makh, Madoan) DOAN_KHACH Field name Makh (K) Madoan (K) Data type Text Text Field size 12 12 Validation Rule Len()=12 Len()=12
DATPHONG (Madp, Makh, Madoan , nhanphong) DATPHONG Field name Madp (K) MaKH (K) Madoan (K) Nhanphong Data type Text Text Text Yes/No Field size 12 12 12 Validation Rule Len()=12 Len()=12 Len()=12
Madp: Ma at phong co 12 ky t c tao thanh t ong nh sau: Madp=Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss") Nhanphong: co gia tr la yes khi khach nhan phong. SUDUNGPHONG (Madp, Maphong, Ngaynp, Gionp, Ngaytp, Giotp, Giaphong, Traphong) SUDUNGPHONG Field name Data type Field size Validation Rule Madp (K) Text 12 Len()=12 Maphong Text 3 Len()=3 Ngaynp Date Gionp Date Ngaytp Date
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
22
Single
Madp: Ma at phong Maphong: so phong thue Ngaynp: Ngay nhan phong thc te Gionp: gi nhan phong thc te Ngaytp: Ngay tra phong thc te Gionp: gi tra phong thc te Traphong: co gia tr la Yes khi khach tra phong THANHTOANPHONG (MaTTPH, Madp, NgayTT, PhieuTT, TienTT) THANHTOANPHONG Field name MaTTPH(K) Madp (K) NgayTT PhieuTT TienTT Data type Text Text Date Text Number Field size Validation Rule 12 Len()=12 12 Len()=12 5 Single
Ma thanh toan phong co 12 ky t c tao thanh t ong nh sau: Ma TT phong=Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss") DICHVU (Madv, Tendv, Dvt, Maloai) DICHVU Field name Madv (K) Tendv Dvt Maloai Data type Text Text Text Text Field size 3 20 10 2 Validation Rule Len()=3 Len()=2
Madv: Ma dch vu gom 3 ky t c qui nh nh sau : 001:phong; 002:ien thoai; 003:fax, . . . . Maloai: ma loai dch vu
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
23
LOAIDV (Maloai, Tenloai) LOAIDV Field name Maloai (K) Tenloai Data type Text Text Field size 2 20 Validation Rule Len()=2
Maloai: Ma loai gom 2 ky t c qui nh nh sau : PH:phong; DV:dch vu; NH:nha hang Tenloai: ten loai dch vu: Phong, dch vu, nha hang SUDUNGDV (Masddv, Madp, Ngaysddv, Soluong, Dongia, Madv) SUDUNGDV Field name Masddv (K) Madp (K) Ngaysddv Soluong Dongia Madv Data type Text Text Date Number Number Text Field size 12 12 Single Single 3 Validation Rule Len()=12 Len()=12
Masddv: Ma s dung dv co 12 ky t c tao thanh t ong nh sau: Masddv=Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss") Ngaysddv: ngay s dung dch vu. THANHTOANDV (MaTTDV, Masddv, NgayTT, PhieuTT, TienTT) THANHTOANDV Field name MaTTDV (K) Masddv(K) NgayTT PhieuTT TienTT Data type Text Text Date Text Number Field size 12 12 5 Single Validation Rule Len()=12 Len()=12
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
24
III-
MO HNH HOA X LY
III.1 - MO HNH THONG LNG : Nham muc ch xac nh cac luong thong tin trao oi gia cac bo phan trong he thong thong tin quan ly. Mo hnh thong lng cua bai toan quan ly khach san c bieu dien nh sau:
Khach hang
(1) (2)
Ban giam oc
Le tan
(3) (3) (5)
(3)
Quan ly phong
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
25
(1) Yeu cau at phong, s dung dch vu, thanh toan tien (2) Tra li yeu cau at phong, s dung dch vu, thanh toan tien Le tan quan ly phong: (3) Yeu cau giao phong cho khach. (4) Thong bao hien trang phong. Le tan quan ly nha hang: (5) Yeu cau cung cap dch vu nha hang (6) Thong bao tnh hnh cung cap dch vu nha hang Ban giam oc Le Tan: (7) Yeu cau bao cao doanh thu. (8) Tra li yeu cau bao cao.
III.2. MO HNH QUAN NIEM X LY a/ Mo hnh quan niem x ly: Muc ch nham xac nh he thong gom nhng chc nang g ? Va cac chc nang nay lien he vi nhau h the nao ? mc nay cha quan tam cac chc nang o Khach hang ai lam, lam khi nao va lam au. Danh sach cac cong viec: 1. ang ky at phong 2. phongYesNo Ghi thong tin khach at phong 3. Bo tr va giao phong cho 4. Ghi nhan cac dch vu Thong Thong khach khach s dung bao bao 5. Khach tra phong 6. Thanh toan khong phong tien nhan va dch vu nhan 7. Bao cao doanh thu va quan tr
Ghi thong tin khachYes Mo hnh quan niem x ly: Co thong tin khach at phong Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual (1) Basic ang ky at
o an tot nghiep
26
(1)
Tra phongYes Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
27
Cuoi thang
Cong Doanh thu suat oan, tong QLKS theo mo hnh Server/Client bang Visual buong, Xay dng chng trnh hp dt danh sach Basic oan
o an tot nghiep
28
Muc tieu la xac nh ro cong viec do ai la, lam au, lam khi nao va lam theo phng thc nao. mc nay cac cong viec trong mo hnh quan niem x ly c gan vao tng ni lam viec cu the cua moi trng thc. III.3.1. Bang cong viec:
St t
1 2 3 4 5 6 7
Ni thc hien
Le tan
Phng thc
Tan suat
nhieu lan/ngay nhieu lan/ngay nhieu lan/ngay nhieu lan/ngay nhieu lan/ngay nhieu lan/ngay 1 lan/ng/thg
Chu ky
1 ngay 1 ngay 1 ngay 1 ngay 1 ngay 1 ngay 1 ng, thg
Thu cong Le tan Thu cong Le tan Thu cong Le tan, nha Thu hang cong Khach hang Thu cong Le tan Thu cong Ban Quan ly T ong
III.3.1. Mo hnh to chc x ly: Mo hnh to chc x ly la mo hnh lien hoan cac bien co, cong viec va cac bien co, cong viec nay c at tai v tr lam viec cu the. Nhng bien co khong xuat phat t mot ni lam viec nao ta at tren ng phan cach gia hai ni lam viec. Mo hnh to chc x ly chng trnh khach san.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
29
KHACH HANG
LE TAN
NHA HANG
BAN QL
In s o phong
(1)
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
30
KHACH HANG
(1) (1) Khach s dung dch vu KS-NH
LE TAN
NHA HANG
BAN QL
Thanh toan tien Giao bo YesNo phan ke toan Cuoi thang In thong bao n cho khach 2
KHACH HANG
LE TAN
NHA HANG
BAN QL
In Cong Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual suat In Doanh thu Basic buong, oan, tong danh sach hp dt, oan,
o an tot nghiep
31
4. MO HNH VAT LY X LY T mo hnh to chc x ly a co, ta bien cac thu tuc chc nang (cong viec) t ong thanh cac n v chng trnh. ng vi moi n v chng trnh ta viet mot ac ta chi tiet e chuan b cho viec lap trnh. Trong chng trnh quan ly khach san nay, theo cach tiep can khong gian, v tr lam viec va chc nang cua tng bo phan, chng trnh c to chc thanh 3 chng
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
32
trnh nho tai 3 ni: quay le tan, quay nha hang va phong quan ly chung. Trong o c s d lieu at tai phong quan ly ong vai tro mot Server.
CLIENT: LE TAN
-ang ky at phong -Nhap thong tin khach -Phan phong -Quan ly phong (chuyen phong, tra phong) -Nhap dch vu KS
SERVER: -B/cao doanh thu -B/cao cong CS suat buong -B/cao tong hp khach -B/ke tong hp doanh thu -In S o phong
He thong: -ang ky ngi dung -Thiet ke s o phong -Sao lu CSDL -Chuyen nam lam viec ...
IPO CHART
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
33
cua khach san theo v tr cua cac phong trong khach san. Khi thiet ke xong, may se t ong ghi nh e s dung sau nay.
IOP Chart
Modun : Thiet ke s o phong 01/01/2000 He thong : Server Muc tieu : Thiet ke s o phong.
So : 01
Ngay : Ngi lap :ABC
X ly : -Tao mot Form cha khoang 150 CommandButton va cho an (Visible=false). -Khi Load form se oc lan lt tng ban ghi cua Table Phong e: .Gan ma phong cho thuoc tnh Cation cua CommandButton .Cho thuoc tnh Visible cua CommandButton la True. -Dung chuot di chuyen cac CommandButton ti v tr mong muon. -Lu thiet ke : gan toa o left, top hien hanh cua tng CommandButton vao tng ban ghi tng ng trong Table Phong.
IOP Chart
So : 02
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic Vao : Table at phong,
o an tot nghiep
34
Modun : at phong Ngay :01/01/2000 He thong : Client Le tan Ngi lap :NHLong Muc tieu : Nhap thong tin khach at phong.
X ly : Tao mot Form at phong. Trong Form nay tao cac combo box chon n v, tnh, quoc tch e cap nhap thong tin cho mot oan va cac khach hang co trong oan. Ma so oan, ma at phong, ma khach hang mi co 12 ky t c tao thanh t ong nh sau:
=Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss")
Tao mot DataGrid e cha tam thi danh sach cac v khach i chung oan. Trong Form nay cho phep do tm t ong mot v khach trong hoac ngoai nc a c lu trc o trong CSDL bang khoa la CMND, so ho chieu hay ten, tnh.
IOP Chart
Modun : Phan phong He thong : Client Le tan NHLong Muc tieu : Bo tr khach vao phong.
So : 03
Ngay :01/01/2000 Ngi lap :
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic Vao : Table at phong, Ra : at phong,
Goi : S o phong
s dung phong
o an tot nghiep
35
X ly : Trong Form nay gom mot DataGrid cha danh sach khach at phong (nguon lay t Query Datphong co ieu kien Nhanphong=No). Mot DataGrid cha tam cac khach hang c chon ra cho moi phong, sau moi lan nhan phong se t ong b xoa. Mot Combo dung e hien so phong. Khi bo tr xong phong nao th nhng Record c chon vao cung 1 phong trong Table Dat phong se co Nhanphong=Yes ong thi Table Su dung Phong se c them tng ay record vi cung tng ng ma at phong.
IOP Chart
So : 04
Modun : Phong Ngay :01/01/2000 He thong : Client Le tan Ngi lap : NHLong Muc tieu : Xem thong tin phong va nhap dv khach san, chuyen va tra phong.
Goi bi : S o phong Goi : S o (Client le tan) phong Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic Ra : s dung Vao : Table phong, s phong, s dung dung phong, s dung dv. dv
o an tot nghiep
36
X ly : Trong Form nay gom MSFlexGrid cha danh sach khach co trong phong. Mot DataGrid cha cac dch vu ma khach a s dung, co the chon xem cac dch vu cua tng v khach hay ca phong. -Tao mot command button chuyen tat ca khach va dch vu t phong nay sang phong khac. -Tao mot command button chuyen mot v khach cung dch vu sang phong khac. -Tao mot command button thc hien chc nang tra phong. -Tao muc chon in: cho phep in rieng tien phong hoac in dch vu hoac ong thi ca hai.
IOP Chart
Modun : Quan ly oan He thong : Server, Client Le tan lap :NHLong Muc tieu : Quan ly thong tin oan.
So : 05
Ngay :01/01/2000 Ngi
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
37
X ly : Tao mot Form quan ly oan. Trong Form nay tao 2 VscrollBar e chon thang va nam can xem. -Tao cong cu tm kiem mot oan hay n v nao o. -Tao 3 DataGrid: .DataGrid oan: cha danh sach cac oan a chon theo thi gian: SQLlocdoan mthang, mnam, mtendoan, mdonvi DE.Commands.Item("Qdoan").CommandText =Select From Qdoan Where (month(ngaydknp)=mthang) and (year(ngaydknp)=mnam) and (tendoan=mtendoan) and (tendv=mdonvi) Griddsdoan.DataMember = "Qdoan" .DataGrid DSKh: cha danh sach khach cua oan c chon .DataGrid sddv: cha cac dch vu a s dung cua tng oan c chon. -Tao mot command button e in dch vu cua oan -Tao mot command button cho phep tra phong ca oan -Tao mot command button e nhap dch vu cho ca oan.
PHAN II:
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
38
Cau truc re nhanh ( Select Case ) Ham ( Function ) va chng trnh con ( Subroutines ) Visual Basic a ra phng phap lap trnh mi, nang cao toc o lap trnh. Cung nh cac ngon ng khac, moi phien ban mi cua Visual Basic eu cha ng nhng tnh nang mi chang han Visual Basic 2.0 bo sung cach n gian e ieu khien cac c s d lieu manh nhat co san, Visual Basic 4.0 bo sung them phan ho tr phat trien 32-bit va bat au chuyen sang thanh mot ngon ng lap trnh hng oi tng ay u, en Visual Basic 6.0 ho tr nhieu tnh nang manh chang han OLE DB e lap trnh d lieu. Cac lap trnh vien a co the dung Visual Basic 6.0 e t m rong Visual Basic . Visual Basic co san cac cong cu nh : cac hop van ban ,cac nut lenh, cac nut tuy chon, cac hop kiem tra, cac hop liet ke, cac thanh cuon, cac hop th muc va tap tin ... Co the dung cac khung ke o e quan ly d lieu theo dang bang, lien lac vi cac ng dung Windows khac, truy cap cac c s d lieu goi chung la ieu khien thong qua cong nghe OLE cua Microsoft. Visual Basic con ho tr cho viec lap trnh bang cach hien tat ca tnh chat cua oi tng moi khi ta nh dung en no. ay la iem manh cua cac ngon ng lap trnh hien ai. Cac bc thiet ke mot ng dung Visual Basic: Xay dng cac ca so ma ngi dung se thay. Quyet nh nhng s kien ma cac ieu khien tren ca so se nhan ra. Viet cac thu tuc s kien cho cac s kien o (cac thu tuc con khien cho cac thu tuc s kien o lam viec ). Cac noi dung dien ra khi ng dung ang chay : Visual Basic giam sat cac ca so va cac ieu khien trong tng ca so cho tat ca moi s kien ma tng ieu khien co the nhan ra (cac chuyen ong chuot, cac thao tac nhap len chuot, di chuyen, cac go phm...) Khi Visual Basic phat hien mot s kien , neu khong co mot ap ng tao san cho s kien o, Visual Basic se xem xet ng dung e kiem tra ngi dung a viet thu tuc cho s kien o hay cha.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
39
Neu a viet roi , Visual Basic se thi hanh va hnh thanh nen thu tuc s kien o va quay tr lai bc au tien. Neu cha viet thu tuc s kien , Visual Basic se ch s kien ke tiep roi quay ve bc au tien. Cac bc nay quay vong cho en khi ng dung ket thuc. Sau khi a tm hieu the nao la hoat ong theo kieu ieu khien bi s kien va cac ho tr cua Visual Basic, chung ta se thay ay la mot cong cu lap trnh de chu va co xu hng tr thanh moi trng lap trnh hoan hao cho nhng nam sap ti .
II-
Database on Disk
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
40
Chng trnh ng dung (Application Programing) phai lam tat ca cac cong viec nh them vao, xoa, cap nhat, thay oi ch muc tren d lieu va hien th ket qua cho ngi dung. oi hoi ngi dung phai hieu biet nhieu ve cau truc lenh do o chng trnh ng dung phai x ly nhieu cong viec va tr nen nang ne. b) Two tier model Mo hnh
Database on Disk
Database Server
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
41
Client
Database Server
Client
Client
Server Database
Mo hnh 3 lp hay con goi la mo hnh n lp. Trong o lp Client la mot chng trnh rat nho, ch cha va u ma e thc hien viec giao tiep vi ngi dung mot cach than thien. Mo hnh nay con c goi la mo hnh n lp v lp gia bao gom nhieu thanh phan, moi thanh phan co tac dung rieng e trao oi vi lp Client va lp Server that.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
42
Trong chng trnh quan ly khach san nay, em s dung mo hnh 3 lp vi phng phap truy cap ADO (ActiveX Data Object). ADO la phng phap truy cap d lieu thong qua OLE DB. en VB 6 th ay c xem nh la phng phap truy cap d lieu chu yeu. No c ho tr manh bang cac thanh phan mi co ghi chu (OLE DB). Viec hien th d lieu cung nh cac tap hp ket qua tra ve eu tien li. Cac thanh phan cua ADO:
Connection Errors Com mand Param eters Recordset Fields Field Param eter Errors
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
43
at ten cho ket noi Connection1 bang cach nhan chuot vao bieu tng (Properties Windows), ien ten vao muc Name.
Chon
va nhan chuot phai tai ten ket noi, chon Properties t menu tat, khi o hop thoai Data Link Properties xuat hien nh hnh ben. T ay ta chon mot trong cac kieu cung cap s truy cap d lieu en cac CSDL khac nhau. e ket noi vi CSDL Microsoft Access 97 ta chon Microsoft Jet 3.51 OLE DB Provider va nhan Next>>.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
44
e kiem tra viec ket noi ti CSDL co thanh cong hay khong ta nhan vao nut Test Connection. Neu thong bao hien ra Test Connection succeeded la ta a ket noi c, ngc lai ta phai kiem tra xem ng dan va ten CSDL a nhap ung cha. Trng hp CSDL c bao ve bang mat khau, e truy cap c ta phai thc hien nh sau: -T hop thoai Data Link Properties vao Tab All. -Chon dong Jet OLEDB: Database Password roi nhan nut Edit Value -Cung cap mat khau cua CSDL tai muc Property Value roi nhan OK e hoan thanh. b/ oi tng Command : oi tng Command la thanh phan rat quan trong cua ADO. No cho phep nh ngha mot recordset c lay t cac Table/Query trong mot Database hay t cau lenh SQL. e tao mot command t Deconnect, ta chon bieu tng
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
45
Add Command t hop thoai DE(Data Environment), hop thoai xuat hien nh hnh di: -Command Name: at ten cho Command -Connection: chon ket noi cho Command -Source of Data: nguon d lieu, co the la: .Database Object: chon oi tng CSDL, co the la table, view (query) hay mot thu tuc. .SQL Statement: xay dng cau lenh SQL
nh ngha mot command ten Khachhang s dung nguon d lieu t mot Table ten Khachhang
nh ngha mot command ten Qsudungphong t cau lenh SQL s dung nguon d lieu la Query Qsudungphong co tham so i kem.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
46
Khi nh ngha mot Command co s dung cau lenh SQL, ta co the s dung tham so (parameters) e truyen gia tr cho Command x ly. Ngoai ra trong Command ta co the thiet lap moi quan he mi, nhom thuoc tnh va ac biet tao ra cac Command con (child command) cua no.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
47
III- Giao dien Ma lenh (Code) cua mot so modun trong chng trnh QLKS
1. Form thiet ke bo tr s o phong
Ma lenh:
Dim cmdso As Integer Private Sub cmdluu_Click() Dim i With DE.rsPhong .Open If .RecordCount > 0 Then i=1 .MoveFirst Do While Not (.EOF) If cmdphong(i).Visible Then .Fields("x") = cmdphong(i).Left .Fields("y") = cmdphong(i).Top .MoveNext i=i+1 End If Loop Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
48
End If .Close End With End Sub ---------------------------------------------------------Private Sub cmdphong_Click(Index As Integer) cmdso = Index End Sub ---------------------------------------------------------Private Sub Form_Load() cmdso = 1 Dim i With DE.rsPhong .Open If .RecordCount > 0 Then i=1 .MoveFirst Do While Not (.EOF) cmdphong(i).Visible = True cmdphong(i).Caption = .Fields("maphong") .MoveNext i=i+1 Loop End If .Close End With End Sub ---------------------------------------------------------Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) cmdphong(cmdso).Move X, Y End Sub ---------------------------------------------------------Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) txtxy.Text = X & "," & Y End Sub
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
49
Ma lenh:
Dim i Private Sub cmdbot_Click() With DE.rsTmp_chonph If .RecordCount > 0 Then .Delete i=i-1 End If End With End Sub
---------------------------------------------------------Private Sub Cmdnhanphong_Click() Dim madp With DE.rsTmp_chonph If .RecordCount > 0 Then
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
50
i=0 .MoveFirst Do While Not (.EOF) madp = .Fields("madp") 'Update [nhan phong]=yes cua Query dat phong With DE.rsQdatphong If .RecordCount > 0 Then .MoveFirst Do While Not (.EOF) If .Fields("madp") = madp Then .Fields("nhanphong").Value = 1 Exit Do Else .MoveNext End If Loop End If End With 'Update table su dung phong With DE.rsSudungphong .Open .AddNew .Fields("madp") = madp .Fields("maphong") = Dcbophong.Text .Fields("ngaynp") = txtngaynhan.Text .Fields("gionp") = txtgionhan.Text .Fields("giaphong") = txtgiaphong.Text .Update .Close End With .Delete .MoveNext Loop End If End With DE.rsQdatphong.Requery Griddp.DataMember = "Qdatphong" Griddp.Refresh 'Update table phong With DE.rsPhong .MoveFirst Do While Not (.EOF) If .Fields("maphong") = Dcbophong.Text Then .Fields("CK") = 1 End If .MoveNext Loop End With End Sub
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
51
---------------------------------------------------------Private Sub Cmdsodo_Click() openphong = True Load frmsodoph frmsodoph.Show End Sub
---------------------------------------------------------Private Sub cmdthem_Click() Dim madp If DE.rsQdatphong.RecordCount > 0 Then madp = Griddp.Columns(4) With DE.rsTmp_chonph If .RecordCount > 0 Then .MoveFirst Do While Not (.EOF) If .Fields("madp") = madp Then MsgBox " chn khch ny ri", vbCritical, "" Exit Sub Else .MoveNext End If Loop End If i=i+1 .AddNew .Fields("stt") = i .Fields("tenkh") = Griddp.Columns(0) .Fields("CMND") = Griddp.Columns(3) .Fields("madp") = Griddp.Columns(4) End With End If End Sub
----------------------------------------------------------
Private Sub Dcbophong_LostFocus() Dim tim As Boolean tim = False With DE.rsPhong .MoveFirst Do While Not (.EOF) If .Fields("maphong") = Dcbophong.Text Then tim = True Exit Do Else .MoveNext End If Loop If Not tim Then MsgBox "Khng c phng ny", vbCritical, "Lu " Dcbophong.SetFocus End If End With
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
52
End Sub
---------------------------------------------------------Private Sub Form_Load() txtngaynhan.Text = Date txtgionhan.Text = Time i=0 End Sub
---------------------------------------------------------Private Sub txtgionhan_LostFocus() If Not IsDate(txtgionhan.Text) Then MsgBox "Nhp gi sai", vbCritical, "Lu " txtgionhan.SetFocus End If End Sub
---------------------------------------------------------Private Sub txtngaynhan_LostFocus() If Not IsDate(txtngaynhan.Text) Then MsgBox "Nhp ngy sai", vbCritical, "Lu " txtngaynhan.SetFocus End If End Sub
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
53
Ma lenh:
Dim st, sdnut As Boolean Dim timsp As Boolean Private Sub cmdcat_Click() openphong = True Unload Me If sdnut Then Unload frmsodoph Load frmsodoph frmsodoph.Show End If End Sub ---------------------------------------------------------Private Sub cmdchuyenkh_Click() If MsgBox("Co chuyen khach nay sang phong khac khong?", vbYesNo, "Chuyen khach", 0, 0) = vbYes Then If timsp And (Dcbsoph.Text <> "") And (txttenkh.Text <> "") Then sdnut = True With DE.rsChuyentraphong .Open
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
54
.MoveFirst Do While Not (.EOF) If (.Fields("maphong") = lbsp.Caption) And (.Fields("madp") = txtmadp.Text) Then .Fields("maphong") = Dcbsoph.Text .Update Exit Do Else .MoveNext End If Loop .Close End With 'Update table phong, anh dau phong co khach With DE.rsPhong .MoveFirst Do While Not (.EOF) If .Fields("maphong") = Dcbsoph.Text Then .Fields("CK") = 1 Exit Do Else .MoveNext End If Loop End With '---------------------------------------fgrid.Col = 1: fgrid.Text = "" fgrid.Col = 2: fgrid.Text = "" Else MsgBox "Khong chuyen c, hay kiem tra lai", vbCritical, "Lu y" End If End If End Sub ---------------------------------------------------------Private Sub cmdchuyenphong_Click() If timsp And (Dcbsoph.Text <> "") Then sdnut = True DE.Qsudungphong (Dcbsoph.Text) If DE.rsQsudungphong.RecordCount > 0 Then DE.rsQsudungphong.Close If MsgBox("Phong nay a co khach, co chuyen sang khong?", vbYesNo, "Chuyen phong", 0, 0) = vbYes Then Chuyenphong
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
55
End If Else DE.rsQsudungphong.Close Chuyenphong End If Else MsgBox "Khong co phong nay", vbCritical, "Lu " End If End Sub ---------------------------------------------------------Private Sub cmdInhd_Click() Dim tde, mtenkh tde = " Chi tiet Hoa n phong " & lbsp.Caption If Optall Then Imgtim_Click End If If optph Then mtenkh = "%" + txttenkh.Text + "%" SQLph sophong, mtenkh DE.Commands.Item("Qsudungdv").CommandText = st Gridsddv.DataMember = "Qsudungdv" DE.rsQsudungdv.Close End If If optdv Then mtenkh = "%" + txttenkh.Text + "%" SQLdv sophong, mtenkh DE.Commands.Item("Qsudungdv").CommandText = st Gridsddv.DataMember = "Qsudungdv" DE.rsQsudungdv.Close End If rpthdphong.Title = tde rpthdphong.Show End Sub ---------------------------------------------------------Private Sub cmdnhapdv_Click() 'Update table su dung dv If txtmadp.Text <> "" Then With DE.rsSudungdv .Open .AddNew .Fields("masddv") = Format(Date, "yy") & Format(Date, "mm") & Format(Date, "dd") & Format(Time, "hh") & Format(Time, "nn") & Format(Time, "ss") .Fields("ngaysddv") = txtngay.Text .Fields("madp") = txtmadp.Text .Fields("madv") = txtmadv.Text
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
56
.Fields("diengiai") = txtdiengiai.Text .Fields("soluong") = Val(txtsl.Text) .Fields("dongia") = Val(txtdongia.Text) .Update .Close End With Imgtim_Click Else MsgBox "Cha chon khach", vbCritical, "Lu y" End If End Sub ---------------------------------------------------------Private Sub cmdtraphong_Click() If MsgBox("Co tra phong nay khong?", vbYesNo, "Tra phng", 0, 0) = vbYes Then 'Update table phong sdnut = True With DE.rsPhong .MoveFirst Do While Not (.EOF) If .Fields("maphong") = sophong Then .Fields("CK") = 0 Exit Do Else .MoveNext End If Loop End With '---------------------------------------With DE.rsChuyentraphong .Open .MoveFirst Do While Not (.EOF) If .Fields("maphong") = lbsp.Caption Then .Fields("ngaytp") = txtngaytra.Text .Fields("giotp") = txtgiotra.Text .Fields("traphong") = 1 End If .MoveNext Loop .Close End With cmdcat_Click End If End Sub
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
57
---------------------------------------------------------Private Sub cmdxoa_Click() Dim masddv masddv = Gridsddv.Columns(8) With DE.rsSudungdv .Open .MoveFirst Do While Not (.EOF) If .Fields("masddv") = masddv Then .Delete Exit Do Else .MoveNext End If Loop .Close End With Imgtim_Click End Sub ---------------------------------------------------------Private Sub Dcbdv_LostFocus() Dim tim As Boolean tim = False With DE.rsDichvu .MoveFirst Do While Not (.EOF) If (.Fields("tendv") = Dcbdv.Text) Or (Dcbdv.Text = "") Then txtmadv.Text = .Fields("madv") tim = True Exit Do Else .MoveNext End If Loop If Not tim Then MsgBox "Khong co dv nay", vbCritical, "Lu " Dcbdv.SetFocus End If End With End Sub ---------------------------------------------------------Private Sub Dcbsoph_Click(Area As Integer) cmdchuyenphong.Enabled = True cmdchuyenkh.Enabled = True End Sub ----------------------------------------------------------
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
58
Private Sub Dcbsoph_LostFocus() timsp = False With DE.rsPhong .MoveFirst Do While Not (.EOF) If (.Fields("maphong") = Dcbsoph.Text) Or (Dcbsoph.Text = "") Then timsp = True Exit Do Else .MoveNext End If Loop If Not timsp Then MsgBox "Khong co phong nay", vbCritical, "Lu " Dcbsoph.SetFocus End If End With End Sub ---------------------------------------------------------Private Sub fgrid_Click() fgrid.Col = 1 txttenkh.Text = fgrid.Text fgrid.Col = 3 txtmadp.Text = fgrid.Text End Sub ---------------------------------------------------------Private Sub Form_Load() Dim i, j sdnut = False txtngay.Text = Date lbsp.Caption = sophong fgrid.Row = 0 fgrid.ColWidth(0) = 0: fgrid.ColWidth(1) = 2500: fgrid.Col = 1: fgrid.Text = " Ten Khach hang" fgrid.ColWidth(2) = 1300: fgrid.Col = 2: fgrid.Text = "CMND/HC" i=1 With DE.rsQsudungphong .MoveFirst txttendoan.Text = .Fields("tendoan") & " - " & .Fields("tendonvi") If .Fields("tentinh") <> "" Then txtdiachi.Text = .Fields("tentinh") Else txtdiachi.Text = " " End If
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
59
txtngaynp.Text = .Fields("ngaynp") txtgionp.Text = .Fields("gionp") Do While Not (.EOF) fgrid.Row = i fgrid.Col = 1: fgrid.Text = .Fields("tenkh") fgrid.Col = 2: fgrid.Text = .Fields("cmnd") fgrid.Col = 3: fgrid.Text = .Fields("madp") .MoveNext i=i+1 Loop .Close End With 'Lay thong tin ve s dung dch vu Imgtim_Click End Sub ---------------------------------------------------------Public Sub SQLsddv(soph, mtenkh) st = "" st = st + "Select *" st = st + " From Qsudungdv" st = st + " Where maphong Like " + """" + soph + """" st = st + " and tenkh Like " + """" + mtenkh + """" End Sub ---------------------------------------------------------Public Sub SQLdv(soph, mtenkh) st = "" st = st + "Select *" st = st + " From Qsudungdv" st = st + " Where maphong Like " + """" + soph + """" st = st + " and tenkh Like " + """" + mtenkh + """" st = st + " and tendv <> " + """" + "Phng" + """" End Sub ---------------------------------------------------------Public Sub SQLph(soph, mtenkh) st = "" st = st + "Select *" st = st + " From Qsudungdv" st = st + " Where maphong Like " + """" + soph + """" st = st + " and tenkh Like " + """" + mtenkh + """" st = st + " and tendv Like " + """" + "Phng" + """" End Sub ---------------------------------------------------------Private Sub Gridsddv_Click() cmdxoa.Enabled = True End Sub
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
60
Private Sub imghien_Click() txttenkh.Text = "" Imgtim_Click End Sub ---------------------------------------------------------Private Sub Imgtim_Click() Dim mtenkh mtenkh = "%" + txttenkh.Text + "%" SQLsddv sophong, mtenkh DE.Commands.Item("Qsudungdv").CommandText = st Gridsddv.DataMember = "Qsudungdv" DE.rsQsudungdv.Close End Sub ---------------------------------------------------------Public Sub Chuyenphong() 'Update table phong With DE.rsPhong .MoveFirst Do While Not (.EOF) If .Fields("maphong") = Dcbsoph.Text Then .Fields("CK") = 1 End If If .Fields("maphong") = lbsp.Caption Then .Fields("CK") = 0 End If .MoveNext Loop End With '---------------------------------------With DE.rsChuyentraphong .Open .MoveFirst Do While Not (.EOF) If .Fields("maphong") = lbsp.Caption Then .Fields("maphong") = Dcbsoph.Text End If .MoveNext Loop .Close End With lbsp.Caption = Dcbsoph.Text End Sub ---------------------------------------------------------Private Sub txtdongia_LostFocus() If Not IsNumeric(txtdongia.Text) Then MsgBox "Nhap sai kieu d lieu", vbCritical, "Lu y"
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
61
txtdongia.SetFocus End If End Sub ---------------------------------------------------------Private Sub txtgiotra_Click() txtgiotra.Text = Time End Sub ---------------------------------------------------------Private Sub txtgiotra_LostFocus() If Not IsDate(txtgiotra.Text) Then MsgBox "Nhap gi sai", vbCritical, "Lu y" txtgiotra.SetFocus End If End Sub ---------------------------------------------------------Private Sub txtngay_Click() txtngay.Text = Date End Sub ---------------------------------------------------------Private Sub txtngaytra_Click() txtngaytra.Text = Date End Sub ---------------------------------------------------------Private Sub txtngaytra_LostFocus() If Not IsDate(txtngaytra.Text) Then MsgBox "Nhap ngay sai", vbCritical, "Lu y" txtngaytra.SetFocus End If End Sub ---------------------------------------------------------Private Sub txtsl_LostFocus() If Not IsNumeric(txtsl.Text) Then MsgBox "Nhap so lng khong ung kieu", vbCritical, "Lu y" txtsl.SetFocus End If End Sub
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
62
Bang viec xay dng chng trnh Quan Ly Khach san theo mo hnh Server/Client, se giup cho cac bo phan nh le tan, nha hang t ong hoa phan ln cong viec cua mnh, lam tang nang suat va hieu qua cong viec. Tren c s o giup ban giam oc nhanh chong kiem tra, tong hp, lay ket qua e nam bat c dien bien khach hang, kha nang ap ng nhu cau t o e ra cac quyet nh, phng an kinh doanh kp thi nhat. Tom lai, nh s hng dan nhiet tnh cua thay Nguyen Hu Trong va s co gang cua ban than, chng trnh Quan Ly Khach san tren c hoan thanh, tng oi ap ng c nhu cau cap nhat, truy van thong tin nhanh chong va giai quyet c viec to chc nhat quan c s d lieu trong lu tr thong tin. Tuy nhien chng trnh van con nhc iem , thieu sot can c hoan thien trong thi gian ti. Em rat mong nhan c s gop y cua cac Thay Co va cac ban quan tam en van e nay.
II.
Ngoai viec tiep tuc nang cap va hoan thien chng trnh Quan Ly Khach san hien nay. Trong hng ti, chng trnh Quan Ly Khach san se c bo sung e ket noi t ong hoac ban t ong vi chng trnh ke toan cua Khach san v nh hien nay cha lien ket c. Ngoai ra chng trnh se xay dng them phan quan ly c s vat chat, quan ly qui trnh phuc vu buong, phong cua Khach san, quan ly cong tac nhap xuat hang cua bo phan Nha hang.
MOT SO BIEU MAU IN RA GIAY CUA CHNG TRNH QUAN LY KHACH SAN
1. Bang ke s dung dch vu va nha hang cua khach cho tng phong: BANG KE DCH VU A S DUNG
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
63
Phong:
Loai: tra:
Ten dch vu
SL
n gia
Thanh tien
1 2 3
1 1 1
Cong Ph dch vu (5%) Thue VAT (10%) Cong tien phai tra
2. Bang ke chi tiet s dung dch vu va nha hang mot oan: BANG KE DCH VU A S DUNG
Ten oan khach:. ..n v:
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
64
Ngay
nhan
phong:.Ngay
tra:
St t
Nga y sd
Gi sd
SP
Ten khach
Ten dch vu
SL
n gia
Thanh tien
1 2 3
10 1 10 2 10 2
1 1 1
Cong Ph dch vu (5%) Thue VAT (10%) Cong tien phai tra
Le Tan
Ngay in: 10:30:25am, 20/05/2003 3. Bao cao cong suat buong: thong ke tong so
khach, t le tng loai khach va cong suat buong cua tng ngay trong thang theo bang:
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
65
Nga y 1 2
oan Sk 30 30
% 75 60
Quoc te Sk % 0 0
30 31 TC
4. Tong hp doanh thu: phong, nha hang, dch vu cua tng ngay trong thang.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
66
NGAY 1 2 3 4
KHACH SAN
NHA HANG
DCH VU
CONG
30 31 Cong
5. Bao cao tong hp khach theo tng oan: the hien doanh thu cua tng oan trong thang.
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic
o an tot nghiep
67
st t 1 2 3
Ten oan
n v
Dch vu
Co ng
Tong cong:
d/ In bang ke chi tiet cho tng loai dch vu: liet ke tng loai dch vu a ban trong thang theo bang sau:
o an tot nghiep
68
(T ngay
en ngay)
Dch vu
Dien giai
vt
Tong cong:
Xay dng chng trnh QLKS theo mo hnh Server/Client bang Visual Basic