Chương trình quản lý cửa hàng nhỏ,với đối tượng chủ yếu là hàng hoá gồm có các thuộc tính:Mã hàng,Tên hàng,Đơn giá,Đặc điểm,Số lượng tối thiểu,Số lượng trong kho.Ta phải xây dựng một cơ sở dữ liệu bằng Access:gồm có bảng hàng hoá có các trường tương ứng với các thuộc tính của hàng hoá:Mã hàng có kiểu dữ liệu Number mô tả mã hiệu của hàng hoá,Tên hàng có kiểu dữ liệu Text thể hiện tên của loại hàng,Đơn giá có kiểu dữ liệu là Currency thể hiện giá trị của loại hàng,Đặc điểm có kiểu dữ liệu Text nêu lên những đặc tính của loại hàng,Sl tối thiểu có kiểu dữ liệu Number,SL trong kho có kiểu dữ liệu Number.
Lập trình bằng ngôn ngữ VB kết hợp với cơ sở dữ liệu,dùng mô hình ADO(Access Data Object) tạo một form nhập hàng gồm có các textbox cho người sử dụng nhập vào các thuộc tính (tương đương với các trường trong cơ sở dữ liệu) của đối tượng hàng hoá.Mỗi khi nhập vào một loại hàng người dùng lại trực tiếp ghi loại hàng đó vào File bản ghi(Record) thông qua một nút nhấn(button),lúc đó chương trình sẽ đọc những dữ liệu cho hàng hoá được nhập vào trên các textbox rồi ghi vào File Record.Người dùng có thể xoá một loại hàng họ muốn khỏi cơ sở dữ liệu sau khi chọn loại hàng và nhấn nút Delete.
17 trang |
Chia sẻ: maiphuongdc | Lượt xem: 1693 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Đề tài Chương trình quản lý cửa hàng nhỏ với MicrosoftAccess và VisualBasic, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Lời giới thiệu
Ngày nay song song với quá trình phát triển công nghệ khoa học và kỹ thuật thì nghành khoa học tính toán đã đóng vai trò quan trọng,nó đã đạt được những thành tựu khoa học kỹ thuật rực rỡ với những bước tiến nhảy vọt.Việc áp dụng các công nghệ khoa học kỹ thuật vào lĩnh vực đời sống của con người ngày càng tăng và không ngừng can thiệp vào hầu hết các công việc trong đời sống. Công nghệ thông tin là một trong những ngành khoa học đó.Đi đôi với sự phát triển của công nghệ chế tạo các thiết bị máy tính thì việc các sản phẩm phần mềm ứng dụng ra đời có tính chất quyết định đối với việc áp dụng ngành khoa học này.
Trên thế giới cũng như ở Việt Nam ,công nghệ thông tin đã trở thành một ngành công nghiệp mũi nhọn,nó là một ngành khoa học kỹ thuật không thể thiếu trong việc áp dụng vào các hoạt động xã hội như: Quản lý ,kinh tế ,thông tin...Đặc biệt trong lĩnh vực quản lý và kinh doanh,công nghệ thông tin đã trở thành một phần không thể thiếu giúp con người giải quyết rất nhiều vấn đề một cách nhanh chóng,tiện lợi và có hiệu quả cao.
Mặc dù rất cố gắng để hoàn thành công việc,xong thời gian có hạn và kinh nghiệm kiến thức chưa nhiều nên chương trình quản lý cửa hàng chắc còn có những vấn đề chưa được tối ưu hoàn hảo.Vì vậy ,em mong nhận được ý kiến đóng góp của thầy cô và bạn bè để đề tài ngày càng hoàn thiện hơn.
Cuối cùng em xin chân thành cảm ơn thầy Đinh Hùng và các thầy trong khoa Công nghệ thông tin trường đại học Bách Khoa Hà Nội đã tận tình chỉ bảo hướng dẫn chúng em hoàn thành đề tài này.
Phần I Giới thiệu ngôn ngữ và công cụ
Chương trình quản lý cửa hàng được thực hiện bằng hai công cụ rất phổ biến và được ưa chuộng hiện nay trên thế giới nói chung và Việt Nam nói riêng,đó là Cơ sở dữ liệu với MicrosoftAccess và VisualBasic.Sau đây em xin trình bày tóm tắt về ưu điểm và tính năng của hai ngôn ngữ này:
1)MicrosoftAccess:
Ưu điểm của việc sử dụng cơ sở dữ liệu MicrosoftAccess. MicrosoftAccess là một trong bốn phần mềm ứng dụng của bộ MicrosoftOffice.Nó là một hệ quản trị cơ sở dữ liệu.Nói đến quản trị cơ sở dữ liệu,người ta nghĩ ngay đến Foxpro và Foxbase...là những phần mềm hầu như có thể làm được mọi việc,thường dùng trong các hệ cơ sở dữ liệu lớn.Access thể hiện nhiều đặc tính ưu việt mà nổi bật hơn cả là tính đơn giản hiệu quả,nó có thể đáp ứng hầu hết các yêu cầu về quản trị cơ sở dữ liệu.
Trong Access:
Bảng được dùng lưu trữ dữ liệu.Truy vấn là công cụ mạnh của Access dùng để tổng hợp,sắp xếp,tìm kiếm dữ liệu trên các bảng,có thể sử dụng truy vấn một bảng để xây dựng các truy vấn khác.Với truy vấn có thể giải quyết khá nhiều dạng bài toán trong hệ cơ sở dữ liệu.
Mẫu biểu (Form) thường dùng để tổ chức cập nhật dữ liệu cho các bảng và thiết kế giao diện chương trình.Ngoài khả năng nhập dữ liệu trực tiếp vào các bảng,mẫu biểu cung cấp nhiểu khả năng nhập dữ liệu khác:Nhập từ một danh sách,nhập các hình ảnh,nhập dữ liệu đồng thời trên nhiều bảng,nhập giá trị đơn lẻ từ bàn phím.Mẫu biểu còn có khả năng quan trọng khác là tổ chức giao diện chương trình dưới dạng các nút lệnh hoặc hệ thống menu.
Báo biểu (Report) là công cụ tốt để phục vụ cho in ấn với khả năng:
-In dữ liệu dưới dạng bảng
-In dữ liệu dưới dạng bảng biểu
Sắp xếp,phân nhóm,tổng hợp dữ liệu trước khi in.In dữ liệu của nhiều bảng trên một thông báo.
Macro bao gồm dãy các hành động dùng để tự động hoá một loạt các thao tác,thường dùng Macro với biểu mẫu tổ chức giao diện chương trình.
Module là nơi chứa các hàm,thủ tục viết bằng ngôn ngữ VBA (Visual Bassic for Application).Các hàm và thủ tục sẽ trợ giúp giải quyết những phần việc khó mà công cụ không làm nổi.
Từ các ứng dụng của Access ta có thể tạo nên một ứng dụng cơ sở dữ liệu Access hoàn chỉnh lưu trữ chỉ trong một tập tin .mdb.
Hầu hết các ứng dụng của Access chúng ta đề ra yêu cầu viết rất ít hoặc không viết mã VBA.Một số ứng dụng của Access chủ yếu dựa vào Macro thay vì dùng mã VBA tự động hoá các ứng dụng.Dùng Macro sẽ dễ dàng thực hiện các thao tác đơn giản như đóng,mở Form,hiển thị và ẩn các thanh công cụ,thi hành các báo cáo.
2)VisualBasic 6.0:
Lập trình với VisualBasic ngày càng được yêu cầu trong các đề án thực hiện trong và ngoài nước.VB 6. là phiên bản mới và mạnh nhất của VisualBasic.
VB lập trình trên window tạo chương trình có giao diện đẹp mắt và thân thiện với người dùng.
VB có đầy đủ những đặc điểm cũng như những ưu việt của những ngôn ngữ lập trình trước đó như Pascal,C,...Hơn thế nữa VB còn loại bỏ một số những khái niệm phức tạp,dễ gây nhầm lẫn như khái niệm con trỏ trong C.
Ưu điểm của VB là đơn giản,dễ học,dễ tiếp cận với người lập trình,VB có nhiều công cụ giúp cho người lập trình tiết kiệm thời gian trong quá trình thiết kế giao diện và viết code.Ngoài ra VB còn mang dáng vẻ của phong cách lập trình hướng đối tượng,một phong cách lập trình mới hiện đại có nhiều ưu việt hơn phong cách lập trình hướng thủ tục của những ngôn ngữ lập trình như Pascal và C.
Bên cạnh đó VB còn có nhiều công cụ và đặc điểm mới như lập trình kết hợp cơ sở dữ liệu,đặc biệt là với Access,có nhiều kỹ thuật lập trình như ODBC,DAO,RDO,ADO,RDS.
VisualBasic đang ngày càng trở nên phổ biến trên mọi lĩnh vực lập trình và trở thành ngôn ngữ được ưa chuộng nhất với những nhà lập trình chuyên nghiệp.
Phần II Đề tài thực tập
Lập chương trình quản lý cửa hàng đơn giản
Mục đích:luyện ngôn ngữ,tập xây dựng một bài toán nhỏ,tập tổ chực chương trình.
Nội dung:
Đối tượng cần quản lý là hàng hoá gồm các thuộc tính
Mã hàng,Tên hàng,Đơn giá,Đặc điểm,Số lượng tối thiểu,Số lượng trong kho
Lập chương trình trên ngôn ngữ:
1.Nhập hàng và ghi lên đĩa dưới dạng các File bản ghi(Record).
2.Đọc và đưa các bản ghi của File ra màn hình để xem,10 bản ghi một lần.
3.Nhập yêu cầu mua gồm tên khách hàng,mã hàng,số lượng.Kiểm tra:
-Nếu đủ hàng thì in vận đơn ra màn hình và filetext gồm: mã,tên khách hàng,tên hàng,số lượng,giá v.v...
-Nếu không đủ thì in thông báo ra màn hình và filetext cho khách hàng.
Phần III Cách giải quyết vấn đề
Công nghệ thông tin đang được ứng dụng rất nhiều trong mọi lĩnh vực của cuộc sống,mọi sự việc đều được tin học hoá và được xử lý bằng máy tính dựa trên các phần mềm ngày càng được phát triển.Công việc quản lý trong các công ti và cửa hàng trước đây dùng sổ sách giấy tờ phức tạp,tốn nhiều thời gian,nay đã được giải quyết một cách đơn giản,hiệu quả và nhanh chóng bằng các phần mềm quản lý.Dưới đây em xin trình bày hướng giải quyết,phân tích,thiết kế cho một chương trình phần mềm quản lý cửa hàng nhỏ.
Chương trình quản lý cửa hàng nhỏ,với đối tượng chủ yếu là hàng hoá gồm có các thuộc tính:Mã hàng,Tên hàng,Đơn giá,Đặc điểm,Số lượng tối thiểu,Số lượng trong kho.Ta phải xây dựng một cơ sở dữ liệu bằng Access:gồm có bảng hàng hoá có các trường tương ứng với các thuộc tính của hàng hoá:Mã hàng có kiểu dữ liệu Number mô tả mã hiệu của hàng hoá,Tên hàng có kiểu dữ liệu Text thể hiện tên của loại hàng,Đơn giá có kiểu dữ liệu là Currency thể hiện giá trị của loại hàng,Đặc điểm có kiểu dữ liệu Text nêu lên những đặc tính của loại hàng,Sl tối thiểu có kiểu dữ liệu Number,SL trong kho có kiểu dữ liệu Number.
Lập trình bằng ngôn ngữ VB kết hợp với cơ sở dữ liệu,dùng mô hình ADO(Access Data Object) tạo một form nhập hàng gồm có các textbox cho người sử dụng nhập vào các thuộc tính (tương đương với các trường trong cơ sở dữ liệu) của đối tượng hàng hoá.Mỗi khi nhập vào một loại hàng người dùng lại trực tiếp ghi loại hàng đó vào File bản ghi(Record) thông qua một nút nhấn(button),lúc đó chương trình sẽ đọc những dữ liệu cho hàng hoá được nhập vào trên các textbox rồi ghi vào File Record.Người dùng có thể xoá một loại hàng họ muốn khỏi cơ sở dữ liệu sau khi chọn loại hàng và nhấn nút Delete.
Sau đó,ta lập một form hiển thị các loại mặt hàng đã được ghi vào file,đọc lần lượt các bản ghi (Record) trong file,10 bản ghi một lần.Ta dùng vòng lặp đọc lần lượt từng bản ghi trong file rồi in ra màn hình.
Đến phần yêu cầu của khách hàng,ta lập một form mua hàng,gồm có các textbox để khách hàng nhập vào tên,mã số khách hàng,địa chỉ,số điện thoại,email,mã hàng của loại hàng cần mua và số lượng.Nếu như khách hàng nhập thiếu mục nào chương trình sẽ hiện ra thông báo yêu cầu khách hàng phải nhập đủ.Sau đó chương trình sẽ kiểm tra xem mã hàng mà khách hàng nhập vào có trong cơ sở dữ liệu hàng hoá không,nếu không có thì in thông báo cho khách hàng,nếu có chương trình sẽ tiếp tục kiểm tra số lượng hàng mà khách hàng yêu cầu cửa hàng có đủ không.Nếu không đủ lượng hàng chương trình sẽ in ra thông báo cho khách hàng và ghi vào file thông báo,nếu đủ lượng hàng chương trình sẽ in ra hoá đơn gồm có tên khách hàng,mã số khách hàng,địa chỉ,điện thoại,email,tên hàng,mã hàng,số lượng,giá tiền và ghi vào file hoá đơn.
Phần IV Chương trình
1.Xây dựng cơ sở dữ liệu:dùng MicrosoftAccess,ta xây dựng bảng hàng hoá cho đối tượng hàng hoá gồm các trường:Mã hàng,Tên hàng,Đơn giá,Đặc điểm,SL tối thiểu,SL trong kho.
2.Thiết kế giao diện MDI:
thiết kế menu gồm có các mục:
File:-Hàng hoá:-Nhập hàng:nhập các loại mặt hàng
-Hiển thị:hiển thị các loại mặt hàng
-Open:mở file
-Exit:đóng chương trình
Mua hàng:phần cho khách hàng
View:Đề tài
Help:-About:giới thiệu chương trình
-Help:hướng dẫn sử dụng chương trình
3.Thiết kế form nhập dữ liệu:
Thiết kế formnhập hàng vào cơ sở dữ liệu dùng mô hình ADO(Access Data Objects) và DataformWizard.Dùng nút Record để ghi bản ghi về loại hàng vào file sau mỗi lần nhập vào một loại hàng,sau khi nhập vào các trường cho một loại hàng,ấn nút Record chương trình sẽ đọc dữ liệu trong các textbox và ghi vào file bản ghi.
Private Type Hanghoa
mahang As Integer
tenhang As String
dongia As Currency
dacdiem As String
SLtoithieu As Integer
SLtrongkho As Integer
End Type
Private Sub Command1_Click()
Static i As Integer
'i vi tri cua record
Open "c:\thuctap\banghi.txt" For Random As #1 Len = 10000
'tao mot file record
Dim h1 As Hanghoa
h1.mahang = txtFields(0).Text
h1.tenhang = txtFields(1).Text
h1.dongia = txtFields(2).Text
h1.dacdiem = txtFields(3).Text
h1.SLtoithieu = txtFields(4).Text
h1.SLtrongkho = txtFields(5).Text
i = i + 1
Put #1, i, h1
Close #1
End Sub
4.Thiết kế form hiển thị các bản ghi trong file:
Private Type Hanghoa
mahang As Integer
tenhang As String
dongia As Currency
dacdiem As String
SLtoithieu As Integer
SLtrongkho As Integer
End Type
Private Sub Command1_Click()
Dim i As Integer
Dim a As Hanghoa
Formhthi.Print "MAHANG", "TENHANG", "DONGIA", "DACDIEM", "SLtoithieu", "SLtrongkho"
Open "c:\thuctap\banghi.txt" For Random As #1 Len = 10000
For i = 1 To 10
Get #1, i, a
Formhthi.Print a.mahang, a.tenhang, a.dongia, a.dacdiem, a.SLtoithieu, a.SLtrongkho
Next i
Close #1
m = 11
End Sub
Private Sub Command2_Click()
Dim i As Integer
Dim a As Hanghoa
Open "c:\thuctap\banghi.txt" For Random As #1 Len = 10000
For i = m To m + 9
Get #1, i, a
Formhthi.Print a.mahang, a.tenhang, a.dongia, a.dacdiem, a.SLtoithieu, a.SLtrongkho
Next i
Close #1
m = m + 10
End Sub
5.Thiết kế form mua hàng:
Sau khi khách hàng nhập vào các trường trong các textbox:khách hàng,mã số khách hàng,địa chỉ,số điện thoại,email,mã hàng,số lượng.Chương trình sẽ kiểm tra khách hàng có bỏ xót trường nào chưa nhập:
Private Sub Command1_Click()
Dim thongbao As Boolean
'kiem tra qua trinh nhap
If Text1.Text = "" Then
MsgBox " Ban hay nhap vao ten khach hang", (vbOKOnly + vbExclamation), "thong bao"
End If
If Text2.Text = "" Then
MsgBox "Ban hay nhap vao ma hang", (vbOKOnly + vbExclamation), "thong bao"
End If
If Text3.Text = "" Then
MsgBox "Ban hay nhap vao so luong hang", (vbOKOnly + vbExclamation), "thong bao"
End If
If Text12.Text = "" Then
MsgBox "Ban hay nhap vao ma so khach hang cua ban", (vbOKOnly + vbExclamation), "thong bao"
End If
If Text9.Text = "" Then
MsgBox "Ban hay nhap vao dia chi cua ban", (vbOKOnly + vbExclamation), "thong bao"
End If
If Text10.Text = "" Then
MsgBox "Ban hay nhap vao so dien thoai cua ban", (vbOKOnly + vbExclamation), "thong bao"
End If
If Text11.Text = "" Then
MsgBox "Ban hay nhap vao dia chi email cua ban", (vbOKOnly + vbExclamation), "thong bao"
End If
Đầu tiên chương trình sẽ kiểm tra mã hàng của loại hàng khách hàng cần mua có trong cơ sở dữ liệu hàng hoá không,không có thì hiển thị thông báo:
Data1.Recordset.MoveFirst
thongbao = False
Do While Not Data1.Recordset.EOF
If Data1.Recordset.Fields("Mahang") = Val(Text2.Text) Then
thongbao = True
Exit Do
End If
Data1.Recordset.MoveNext
Loop
If (thongbao = False) Then
If (Text1.Text "") And (Text2.Text "") And (Text3.Text "") And (Text9.Text "") And (Text10.Text "") And (Text11.Text "") And (Text12.Text "") Then
MsgBox "Xin loi quy khach!" & Chr$(10) & "Loai hang quy khach can mua hien nay" & Chr$(10) & "cua hang chung toi khong co.", (vbOKOnly + vbExclamation), "thong bao"
End If
Nếu loại hàng mà khách hàng yêu cầu có trong cơ sở dữ liệu thì kiểm tra xem số lượng có đủ không,nếu không đủ thì thông báo cho khách hàng và ghi vào file thông báo,nếu đủ thì in hoá đơn và ghi vào file hoá đơn
Else
'kiem tra so luong hang can mua co du khong
If Data1.Recordset.Fields("SLtrongkho") >= Val(Text3.Text) Then
'in hoa don
If (Text1.Text "") And (Text2.Text "") And (Text3.Text "") And (Text9.Text "") And (Text10.Text "") And (Text11.Text "") And (Text12.Text "") Then
Text4.Text = Text1.Text
Text5.Text = Text2.Text
Text6.Text = Data1.Recordset.Fields("Tenhang")
Text7.Text = Text3.Text
Text8.Text = Data1.Recordset.Fields("Dongia") * Val(Text3.Text)
Text13.Text = Text12.Text
Text14.Text = Text9.Text
Text15.Text = Text10.Text
Text16.Text = Text11.Text
'ghi vao file hoa don
Open "c:\thuctap\hoadon.txt" For Output As #2
Write #2, "Ten khach hang", Text1.Text
Write #2, "Ma so khach hang", Text12.Text
Write #2, "Dia chi", Text9.Text
Write #2, "Dien thoai", Text10.Text
Write #2, "Email", Text11.Text
Write #2, "Ma hang", Text2.Text
Write #2, "Ten hang", Data1.Recordset.Fields("Tenhang")
Write #2, "So luong", Text3.Text
Write #2, "Gia tien", Data1.Recordset.Fields("Dongia") * Val(Text3.Text)
Close #2
End If
Else
If (Text1.Text "") And (Text2.Text "") And (Text3.Text "") And (Text9.Text "") And (Text10.Text "") And (Text11.Text "") And (Text12.Text "") Then
MsgBox "Xin loi quy khach!" & Chr$(10) & "Loai hang quy khach can mua hien nay" & Chr$(10) & "cua hang chung toi khong du so luong.", (vbOKOnly + vbExclamation), "thong bao"
Open "c:\thuctap\thongbao.txt" For Output As #3
Write #3, "Cua hang chung toi xin loi quy khach!Loai mat hang quy khach can mua hien nay cua hang chung toi khong du so luong.Mong quy khach thong cam!"
Close #3
End If
End If
End If
End Sub
Các file đính kèm theo tài liệu này:
- 77108.DOC