1. GIỚI THIỆU
1.1 Lý do chọn đề tài
Ngày nay, quá trình quản lý thông tin trong việc kinh doanh là hết sức
quan trọng và cần thiết. Chính vì vậy, các cửa hàng buôn bán kinh doanh với
quy mô vừa và nhỏ đều đặt ra nhu cầu quản lý lên hàng đầu. Khi chưa có nền
công nghệ thông tin phát triển thì nhu cầu đó chỉ đáp ứng trên giấy tờ, sổ sách để
lưu trữ. Nhưng khi công nghệ thông tin đang phát triển mạnh mẽ như ngày nay,
một số các cửa hàng, đại lý, siêu thị vừa và nhỏ đã áp dụng các phần mềm quản
lý bán hàng vào trong việc quản lý hàng hóa của mình.
Nhưng bên cạnh những thành công trên thực tế thì ngược lại, trong trường
THPT khi chúng em làm quen với các bài toán quản lý trên hệ quản trị cơ sở dữ
liệu Microsoft Access thì lại là một khái niệm hoàn toàn mới và trừu tượng.
Chúng em không được thấy, không được đi khảo sát thực tế, không được hoàn
thiện những bài toán quản lý này vì tính chất môn học và không đủ thơi gian để
chúng em được nghiên cứu sâu hơn về nó. Bộ môn tin học 12 có nội dung chính
là hệ cơ sở dữ liệu và hệ cơ sở dữ liệu quan hệ được ứng dụng trên phần mềm
Microsoft Access tích hợp trong bộ Microsoft Office.
Chính vì lý do đó, trong cuộc thi tìm hiểu khoa học kỹ thuật lần này em đã
chọn cho mình đề tài: Tạo bản Demo hoàn thiện bài toán quản lý bán hàng
trong bộ môn tin học 12. Với mục đích, mong muốn bài toán hoàn thiện của
mình sẽ làm chương trình mẫu, ứng dụng trong bài học để các bạn học sinh khi
học bộ môn tin học 12 có cái nhìn tổng quát và gần gũi, dễ hiểu hơn về kiến thức
mà mình đang được nghiên cứu.
Trong đề tài nghiên cứu của em, em áp dụng trên hệ quản trị cơ sở dữ liệu
Microsoft Access tích hợp trong bộ Microsoft Office.
Đây là một sản phẩm thuộc phần mềm ứng dụng, nó thích hợp với mọi
máy tính cá nhân cài đặt Windows XP, windows 7 và bộ Microsoft office 2000,
2003, 2007.
1.2 MỤC ĐÍCH Ý TƯỞNG
- Là bài toán hoàn chỉnh, có đầy đủ các chức năng của hệ quản trị cơ sở
dữ liệu để học sinh khi tiếp cận với chương trình sẽ hiểu hơn về nội
1
dung bài mình học ở bài tạo bảng, các thao tác trên bảng, biểu mẫu,
liên kết bảng, truy vấn dữ liệu và kết xuất báo cáo.
- Giúp học sinh có cái nhìn tổng quan hơn về bài toán quản lý trong thực
tế mặc dù không được đi khảo sát.
1. 3 NHỮNG CÔNG VIỆC CHÍNH ĐANG VÀ SẼ HÌNH THÀNH
TRONG QUÁ TRÌNH NGHIÊN CỨU Ý TƯỞNG
- Bản thân em đã đi khảo sát, quan sát công việc kinh doanh tại một đại
lý bán hàng tạp hóa tại Vân Sơn, Triệu Sơn, Than Hóa.
- Thời gian thực hiện chính: ở nhà và ở trường.
- Nghiên cứu thêm tài liệu về Microsoft Access. Vì tại thời điểm em
thực hiện đề tài của mình thì chúng em vẫn chỉ mới làm quen với
Microsoft Access nên bản thân em cũng chưa học được nhiều từ trong
tiết học môn tin học 12 tại lớp. Với lý do đó, ngoài việc đi khảo sát
thực tế em còn phải vừa học vừa nghiên cứu kiến thức mới dưới sự
giúp đỡ của cô giáo dạy bôn môn tin học 12 của lớp em.
- Sau khi thực hiện hoàn thiện xong bài toán quản lý bán hàng của mình,
em mong muốn bài toán của em sẽ phát triển hơn để được áp dụng
trong thực tế một cách rộng rãi. Chính vì mong muốn này, em sẽ cố
gắng hoàn thiện đề taì của mình một cách tốt nhất, sớm nhất có thể.
1.4 TRONG QUÁ TRÌNH NGHIÊN CỨU, SẼ CÓ NHỮNG CÂU
HỎI ĐƯỢC ĐẶT RA NHƯ SAU:
- Phạm vi áp dụng cho bài toán là gì?
- Mục đích bài toán mong muốn như thế nào?
- Đối tượng và chủ thể của bài toán?
- Kết quả đạt được cung cấp cho ai?
- Một số kiến thức liên quan làm trung gian cho bài toán là gì?
- Cơ sở dữ liệu tổ chức cho bài toán là như thế nào?
- Người dùng có thể thay đổi hoặc sữa chữa HĐ nếu muốn.
- Ngày lập HĐ không được lớn hơn ngày hiện hành.
- Tự động tính tổng số tiền của mỗi HĐ.
- Có thể thêm mới khách hàng nếu chưa có, sữa chữa thông tin khách
hàng.
- Thông tin mặt hàng thì : Thêm mặt hàng mới gồm mã hàng, tên hàng,
đơn giá, số lượng nhập vào, ngày nhập vào.
- Có thể điều chỉnh số lượng, đơn giá (điều kiện lớn hơn không).
- Tự động tính thành tiền cho mỗi mặt hàng,
- Tạo các menu chức năng ứng với tên gọi.
- Thiết kế các Report để in các hóa đơn cho khách hàng.
2. PHƯƠNG PHÁP VÀ THIẾT BỊ THÍ NGHIỆM
2
Phương pháp thu thập thông tin từ thực tế và áp dụng với ngôn ngữ
Microsoft access mà mình đang được nghiên cứu trong chương trình tin học 12,
kết hợp với tham khảo thêm trên các tài liệu nâng cao về access để em giải
quyết đề tài của mình.
Sử dụng thiết bị là máy tính cá nhân, máy in để thực hiện việc cài
đặt chương trình và kiểm thử.
2.1Mô hình thực thể
Nhân viên
Khách hàng
Hóa đơn
Sản phẩm
Mã nhân viên
Họ NV
Tên NV
Giới tính
Mã khách hàng
Họ tên KH
Địa chỉ
Điện thoại
Mã hóa đơn
Mã KH
Mã NV
Ngày lập HĐ
Ngày nhận
HH
Mã sản phẩm
Tên sản phẩm
Đơn vị tính
Đơn giá
Ngày sinh
CT hóa
đơn
Mã hóa đơn
Mã sản phẩm
Số lượng
Địa chỉ
Điện thoại
a. Loại thực thể NHANVIEN (Nhân Viên)
Thuộc tính
Diễn giải
Kiểu
Kích
thước
Khóa Khóa
chính ngoại
Khóa
chỉ
định
NOT
NULL
MaNV
Mã nhân
viên
Text
6
X
X
X
HoNV
Họ nhân
viên
Text
15
X
TenNV
Tên nhân
viên
Text
10
X
GioiTinh
Giói tính
Text
NgaySinh
Ngày
sinh
Date/Time
Short
date
DiaChi
Địa chỉ
Text
50
DienThoai
Điện
thoại
Number
Integer
X
b. Loại thực thể KHACHANG(Khách hàng)
3
X
Thuộc tính Diển giải
Kiểu
Kích
thước
Khóa Khóa Khóa
chính ngoại chỉ
định
NOT
NULL
Text
6
X
X
MaKH
Mã khách hàng
HoTenKH
Họ tên khách hàng Text
25
X
DiaChi
Địa chỉ
Text
50
X
DienThoai
Điện thoại
Numbe
r
Integer
c. Loại thực thể HOADON
X
(Hóa Đơn)
Thuộc tính
Diển giải
Kiểu
Kích
thước
Khóa
chính
Khóa
ngoại
Khóa
chỉ
định
NOT
NULL
MaHD
Mã hóa đơn
Number
Long
Integer
X
X
X
MaKH
Mã khách hàng
Text
6
X
X
X
MaNV
Mã nhân viên
Text
6
X
X
X
NgayLapHD
Ngày lập hóa
đơn
Date/time
Short
Date
X
NgayNhanHang
Ngày nhận hàng
Date/time
Short
Date
X
d. Loại thực thể SANPHAM (Sản Phẩm)
Thuộc tính
Diễn giải
Kiểu
Kích
thước
Khóa Khóa Khóa
chính ngoại chỉ
định
NOT
NULL
MaSP
Mã sản
phẩm
Text
6
X
X
TenSP
Tên sản
phẩm
Text
50
X
DonViTinh
Đơn vị tính
Text
10
X
DonGia
Đơn giá
Number
Double
X
Soluongnhap
Số lượng
nhập
Number
Long
integer
X
Ngaynhaphang
Ngày nhập
Date/time
4
X
X
hàng
e. Loại thực thể CHITIETHD(Chi tiết Hóa Đơn)
Thuộc tính
Diễn giải
Kiểu
Kích
thước
Khóa
chính
Khóa
ngoại
Khóa
NOT
chỉ định NULL
MaHD
Mã hóa đơn
Number
Long
integer
X
X
X
MaSP
Mã sản phẩm
Text
6
X
X
X
SoLuong
Số lượng
Number Integer
X
2.2Các mối kết hợp (Mức quan niệm)
Mỗi nhân viên có thể lâp 1 hoặc nhiều hóa đơn, mỗi hóa đơn chỉ do một
và chỉ một nhân viên lập.
Nhân viên
hóa đơn
1-n
1-1
Lậ
p
MaNV
MaHD
HoNV
MaKH
TenNV
MaNV
DienThoai
NgayLapHD
NgaySinh
NgayNhanHang
DiacChi
GioiTinh
Mỗi khách hàng có thể có một hoăc nhiều hóa đơn đặt hàng, mỗi hóa đơn
xác định duy nhất một khách hàng có liên quan đến hóa đơn đặt hàng.
1-n
1-1
Khách hang
MaKH
HoTenKH
Hóa đơn
MaHD
ĐĐ
H
MaKH
DiaChi
MaNV
DienThoai
NgayLapHD
5
NgayNhanHang
Mỗi hóa đơn có thể cung cấp 1 hoặc nhiều sản phẩm khác nhau. Mỗi sản
phẩm có thể không có hoặc có nhiều hóa đơn đặt hàng.
1-n
Hóa đơn
MaHD
MaSP
MaKH
NgaylapHD
Ngaynhanhang
MaNV
0-n
CTHD
Sản phẩm
MaSP
TenSP
DVT
Dongia
Số lượng, đơn gia,
thành tiền
2.3 Mô hình quan hệ thực thể tổng quát
1-n
Nhân
viên
1-1
Lập
1-1
HD
1-n
Đặt
hàng
1-n
CTHD
0-n
SP
6
KH
2.4 Mô hình liên kết dữ liệu
2.5 Ràng buộc toàn vẹn của thuộc tính
- RBTV1 : Giá trị của thuộc tính số lượng (SoLuong) trong thực thể CT hóa
đơn (ChiTietHD) phải lớn hơn 0.
Mô tả :
cthd ChiTietHD
ChiTietHD.SoLuong > 0
- RBTV 2: Giá trị của thuộc tính đơn giá (DonGia) trong thực thể sản phẩm
(SanPham) phải lớn hơn 0 .
Mô tả :
dongia DonGia
SanPham.DonGia > 0
- RBTV 3: Ngày lập hóa đơn (NgayLapHD) trong thực thể hóa đơn
(HoaDon) không lớn hơn ngày hiện hành.
Mô tả :
ngaylapHD HoaDon
HoaDon.NgayLapHD = date() “ ngày hiện hành ”
7
- RBTV 4: Ngày nhận hàng (NgayNhanHang) trong thực thể hóa
đơn(HoaDon) phải lớn hơn hoặc bằng ngày lập hóa đơn (NgayLapHD)
trong thực thể hóa đơn(HoaDon).
Mô tả :
ngaylapHD & ngaynhanhang HoaDon
HoaDon.NgayLapHD HoaDon.NgayNhanHang
- RBTV5 : Thành tiền (ThanhTien) là thuộc tính riêng trong mối quan hệ
giữa chi tiết hóa đơn(ChiTietHD) phải lớn hơn 0.
2.6 Danh sách các quan hệ.
NhanVien(MaNV, HoNV, TenNV, GioiTinh, NgaySinh, DiaChi,
DienThoai,MaHD)
KhachHang(MaKH,TenKH, DiaChi, DienThoai,MaHD)
SanPham(MaSP, TenSP, DonViTinh, DonGia, soluongnhap, ngaynhaphang)
HoaDon(MaHD, MaKH, MaNV, NgayLapHD, NgayNhanHang)
ChiTietHD(MaHD, MaSP, SoLuong,ThanhTien)
3. DỰ KIẾN SẢN PHẨM TẠO RA
Sản phẩm tạo ra làm chương trình ứng dụng cho bài học của học sinh
trong trường THPT khi học bộ môn tin học 12.
Trong thời gian hoàn thiện chương trình, em muốn CSDL của em sẽ kết
nối được với máy đọc mã vạch để quản lý các sản phẩm bằng mã vạch, tránh
việc mất thời gian nhập mã sản phẩm và mã nhân viên.
Giao diện của sản phẩm như sau:
8
Một số bảng dữ liệu:
- Bảng Khách hàng:
- Bảng Nhân viên:
- Bảng Sản Phẩm:
9
- Bảng Hóa đơn:
- Bảng Chi tiết hóa đơn:
- Bảng hàng tồn kho:
10
- Report Tổng hợp kinh doanh:
- Form Thống kê theo khách hàng
- Form hóa đơn thanh toán:
11
-
Form tìm kiếm sản phẩm:
- Form tìm kiếm theo khách hàng:
12
- Form tìm kiếm nhân viên:
Một số câu lệnh thực hiện trong chương trình:
-
thành tiền: [soluong]*[dongia]
tồn kho: [soluongnhap]-Sum([soluong])
=DCount("Tensp","thanhtien_don","maHD=" & [MaHD] & "")
=DSum("dongia*soluong","thanhtien_don","maHD=" & [MaHD] &
"") & 'VNĐ'
- =DCount("tensp","thanhtoan","maKH='" & [MaKH] & "'")
13
- =DSum("soluong*dongia","thanhtoan","maKH='" & [MaKH] & "'") &
' VNĐ'
- key: [mahd] & [makh] & [manv]
- Like "*" & [Forms]![f_timkiemhoadon]![txtkey] & "*"
- key: [hoten] & "" & [Diachi] & [Dienthoai]
- Like "*" & [Forms]![f_timkiemkhachhang]![txtkey] & "*"
- key: [hodemnv] & "" & [tenNV] & [ngaysinh] & [dienthoai]
- Like "*" & [Forms]![f_timkiemnhanvien]![txtkey] & "*"
- key: Tensp
- Like "*" & [Forms]![f_timkiemsanpham]![txtkey] & "*"
4. Thảo luận:
Lần 1: Chương trình chạy được nhưng không tính được số tiền mỗi hóa
đơn cụ thể của khách hàng.
Lần 2: Chương trình khắc phục được các lỗi lần 1 nhưng chưa tính được
số lượng sản phẩm mỗi đơn hàng.
Lần 3: Trình bày giao diện chính còn chưa khoa học
Lần 4: Chưa tìm kiếm được thông tin khách hàng cũ và nhân viên đã và
đang làm việc, cũng như chưa tìm kiếm được sản phẩm của cửa hàng
đang bán.
Kết quả của đề tài nghiên cứu của em so với kiến thức em đã được
học và tự nghiên cứu vẫn còn hạn chế, vì là đề tài mang tính chất Demo nên nó
có nguồn mở.
Với chương trình Demo của mình khi áp dụng làm phần ứng dụng
trực quan cho các bạn học môn tin học lớp 12, kết quả sẽ giúp các bạn có cái
nhìn tổng quan hơn về chương trình mình đang học. Hi vọng với chương trình
em viết ra các bạn khóa sau sẽ phát triển nó được tốt hơn nữa.
Vì cơ sở dữ liệu Microsoft access là phần mềm được tích hợp trong
bộ Microsoft office nên nó thích hợp với mọi hệ điều hành Windows tương ứng
cài đặt trên máy tính cá nhân.
Nhược điểm của chương trình viết trên Microsoft access là nó
không đóng gói hoàn chỉnh được chương trình với số lượng table, queries,
report, form lớn nên em đã sử dụng một phần mềm ứng dụng đóng gói chương
trình của mình đó là: phần mềm Smart Install Maker.
14
5. Kết luận:
Trong quá trình nghiên cứu đề tài của mình, em đã phải đi khảo sát thực tế
một cửa hàng kinh doanh tư nhân tại địa phương em sinh sống. Nhưng không
thể tránh khỏi những thiếu sót vì thời gian nghiên cứu có hạn.
Chương trình là Demo của công việc kinh doanh và nó sẽ là sản phẩm ứng
dụng trong quá trình học tập bộ môn tin học lớp 12.
Hướng phát triển của đề tài: kết nối với máy đọc mã vạch vì hiện nay các sản phẩm khi sản
xuất nhà sản xuất đều cung cấp mã vạch cho sản phẩm, nhằm tránh mất thời gian cho việc nhập mã
sản phẩm. Và tìm cách phát triển nó thành phần mềm hoàn chỉnh có thể sử dụng trực tiếp trên thị
trường hiện nay.
XÁC NHẬN CỦA GIÁO VIÊN
Triệu Sơn, ngày 18 tháng 11 năm 2016
HƯỚNG DẪN
Tôi xin cam đoan đây là dự án KHKT
của mình viết, không sao chép nội dung
của người khác.
Tác giả
Hà Thị Thúy
XÁC NHẬN CỦA HIỆU TRƯỞNG
15
Tài Liệu tham khảo
1. Tin học lớp 12.
2. Phần mềm đóng gói Smart Install Maker.
3. Đoạn video hướng dẫn tạo form login cho chương trình:
/>4 Đoạn video hướng dẫn tạo form với chức năng tìm kiếm theo từ khóa
đơn giản
/>
16