Xây dựng cơ sở dững liệu Tạo phàn nhập, xuất, xử lý thông tin kho hàng Lập truy vấn Query và các báo biểu Report Tạo Menu và Form chính Đĩa CD chứa chương trình Mục lục I. Giới thiệu chung. II. Dữ liệu chương trình. 1. Thông tin chi tiết các bảng (Table) . 2. Relationship ( Mối quan hệ của dữ liệu ). III. Xây dựng chương trình. Cấu trúc chương trình: 1. Nhập hàng 1.1 Thông tin dữ liệu nhập. 1.2 Các Form và Query chính của phần nhập hàng 2. Xuất hàng 2.1 Thông tin dữ liệu xuất. 2.2 Các Form và Query của phần xuất hàng IV. Hướng dẫn sử dụng chương trình. V. Kết Luận Nội Dung chi tiết. I. GIỚI THIỆU CHƯƠNG TRÌNH. Chương trình được xây dựng dựa trên dữ liệu được điều tra của một công ty điên máy. Nhằm quản lý thông tin xuất nhập II. DỮ LIỆU CHƯƠNG TRÌNH 1. Dữ liệu của chương trình được xây dựng dựa trên 11 bảng (Table) bao gồm 1) 1_Hang_hoa : Bảng chứa thông tin về mã hàng hóa va mã nhóm của hàng hóa
Trang 1Đồ án Acess
Đề tài 1 : Chương trình quản lý xuất nhập cho kho hàng
Nội dung chính :
- Xây dựng cơ sở dững liệu
- Tạo phàn nhập, xuất, xử lý thông tin kho hàng
- Lập truy vấn Query và các báo biểu Report
- Tạo Menu và Form chính
- Đĩa CD chứa chương trình
Mục lục
I Giới thiệu chung.
II Dữ liệu chương trình.
1 Thông tin chi tiết các bảng (Table)
2 Relationship ( Mối quan hệ của dữ liệu )
III Xây dựng chương trình.
Cấu trúc chương trình:
1 Nhập hàng
1.1 Thông tin dữ liệu nhập
1.2 Các Form và Query chính của phần nhập hàng
2 Xuất hàng
2.1 Thông tin dữ liệu xuất
2.2 Các Form và Query của phần xuất hàng
IV Hướng dẫn sử dụng chương trình.
V Kết Luận
Nội Dung chi tiết.
I GIỚI THIỆU CHƯƠNG TRÌNH.
Chương trình được xây dựng dựa trên dữ liệu được điều tra của một công ty điên
máy Nhằm quản lý thông tin xuất nhập
II DỮ LIỆU CHƯƠNG TRÌNH
1 Dữ liệu của chương trình được xây dựng dựa trên 11 bảng (Table) bao
Trang 21) 1_Hang_hoa : Bảng chứa thông tin về mã hàng hóa va mã nhóm của hàng
làm khóa chính (Primary key ) và
kiểu dữ liệu là kiểu Text và co 4 kí tự
+ Mã kho hàng và ghi chú co
kieu dữ liệu Text
Trang 33) 3_Xuat_kho : (Xuat kho) Thông tin về mã xuất kho mã kho xuất hàng và ghi
chú khi xuất
+ Mã phiếu xuất được đặt làm
khóa chính của bảng xuất kho
Kiểu dữ liệu của trường Mã phiếu
xuất là kiểu text
VD : 00001, 00002 …
+ Mã kho và ghi chú có kiểu
dữ liệu text Mã kho được quy
định giống với mã kho trong table
kho hàng Và được lấy dự liệu từ
bảng 5_Kho_hang sẽ được nói rõ
ở phần dưới
4) 4_Nha_cung_cap : (Nhà cung cấp) Bảng này bao gồm thông tin chi tiết nhà
cung cấp sản phẩm cho công ty bao gồm :
+ Manhacungcap: là khóa
chính cua bảng có kiểu dữ liệu Text
có giới hạn kí tự la 50 kí tự
+ Tên nhà cung cấp có kiểu dữ
liệu Text co số kí tự giới hạn là 100
kí tự
+ Website la địa chỉ website
của nhà cung cấp sản phẩm, dữ liệu ở
dạng Hyperlink
+ Phone : số điện thoại liên lạc
với nhà cung cấp có kiểu dữ liệu là
Number
+ Số Fax của nhà cung cấp có
kiểu dữ liệu Number
+ Dia_chi : Địa chỉ nhà cung
Trang 45) 5_Kho_hang : (Kho hàng) thông tin chi tiết về các kho hàng của công ti
cũng chính là địa chỉ các chi nhánh hiện có của công ty Thông tin bảng gồm
có :
+ Makho: Mã kho hàng là khóa
chính (Primary key) cua table Có kiểu
dữ liệu Text thường là các kí tự số gồm
4 kí tự đã quy định o phần Input Mask
+ Ten_kho: Tên kho hàng, có
kiểu dữ liệu Text số kí tự giới hạn 100 kí
tự
+ Dia_chi : Thông tin về địa
điểm chi nhánh của công ty cung chính la
đại chỉ kho hàng cua công ty Số kí tự
giới hạn là 250 kí tự
6) 6_Chi_tiet_san_pham : (Chi tiết về sản phẩm) Thông tin chi tiết về từng sản
phẩm trong kho hàng bao gồm :
+ Mahang: Mã hàng hóa được đặt
làm khóa chính của Table , kiểu dữ liệu
của Mahang a kiểu Text được giới hạn
bằng 50 kí tự và được lấy dữ liệu (Look
up) từ bảng 1_Hang_hoa
+ Ten_hang: tên mặt hàng được
quy định là kiểu dữ liệu Text, được giới
hạn bằng 100 kí tự
+ Mo_ta_san_pham : (Mô tả sản
phẩm) Phần này để mô tả chung về đặc
điểm của hàng hóa trong kho Dữ liệu là
kiểu Text co số kí tự giới hạn là 250 kí
tự
Trang 5+ Manhacungcap : (Mã nhà cung cấp) được lấy dữ liệu từ bảng
4_Nha_cung_cap.
7) 7_Chi_tiet_phieu_nhap: (Chi tiết phiếu nhập) Thông tin chi tiết về hàng hóa
được nhập vào kho hàng Thông tin của bảng nhập hàng gồm :
+ Mã hàng : được đặt làm khóa chính (Primary key) và có kiểu dữ liệu
Text với số kí tự giới hạn la 50 kí tự Khi muốn nhập hàng thì hàng hóa bắt buộc
phải khai báo chi tiết trong kho hàng bởi vậy mà thông tin mã hàng đươc lấy
(Look up) từ bảng 6_Chi_tiet_san_pham
+ MPN : Mã phiếu nhập được sử
dụng kiểu dữ liệu Text với chiều dài kí tự
là 50
+ So_luong_nhap : Số lượng nhập
có kiểu dữ liệu Number để phục vụ cho
việc tính toán sau này
+ Ngay_nhap : Ngày nhập ( Ngày
ghi phiếu nhập ) có kiểu dữ liệu Date/time
+ Ten_nguoi_nhap : Tên người nhập hàng có kieur dữ liệu Text giới hạng
bởi 50 kí tự
+ Don_gia: Giá của sản phẩm có kiểu dữ diệu Number để tiện cho viêc tính
toán sau này
Để đảm bảo thông tin không bị trùng lặp trong khi ghi phiếu nhập ta thêm
trường STT trong Table có kiểu dữ liệu Auto Number và đặt các trường
STT ,Mahang làm khóa chính ở đây đặt cả 4 trường STT, Mahang, MPN,
Ngay_nhap lam khóa chính để dễ dàng trong việc thiết kế Relationship sau nay
8) 8_Chi_tiet_phieu_xuat : (Chi Tiết phiếu xuất) thông tin xuất hàng hóa ra khỏi
kho hàng, do thông tin mang tính đối
xứng lên chi tiết phiếu xuất truong tự
như chi tiết phiếu nhập trong đo
Trang 6+ Ngay_xuat : ngay ghi phiếu xuất
+ MHD : ( Mã hóa đơn ) trướn khi xuất hàng ta cần tạo hóa đơn tại bảng
9 MHD được lấy dữ liệu (Look up ) từ Table 9_Hoa_don
+ Gia_ban : Có kiểu dữ liệu Number.
9) 9_Hoa_don : (Hóa đơn) Thông tin chi tiết về hóa đơn xuất hàng Thông tin
gồm : + MHD : Mã hóa đơn mã
hóa đơn có kiểu Text được quy
dịnh chi tiết trong phần Input
Mask : 0000
+ Ten_nguoi_lap : Tên
người nhập hóa đơn có kiểu dữ
liệu Text được giới hạn bàng 50
kí tự
10) Hangtrongkho : (Hàng trong kho) thông tin hàng hóa trong kho Thông tin
của bảng được lấy từ thông tin nhâp hàng (bao gốm Mã hàng hóa nhập tênhàng, tên nhóm hàng , số lượng
nhập, kho hàng chứa sản phẩm địa
chỉ của kho, tên nhà cung cấp … vv)
và hàng hóa lấy từ xuất hàng :
nguyên tắc lấy dữ liệu là số lượng
hàng nhập mang dấu + (Nhập thêm
vào ) , còn sản phẩm xuất kho co số
lượng – (bớt hàng)
+ Tất cả thông tin nhập xuất đều
có trong bảng Nó là nơi lưu dữ toàn
Trang 7bộ dữ liệu ban đầu chưa xử lý của kho Dữ liệu được Update bàng query
Append từ thông tin hàng nhập kho
+ Hai bảng Hangtrongkho và Hangtrongkho2 là hai bảng hoàn toàn độc
lâp được tạo nhằm xử lý thông tin kho hàng một cách chính xác
2 RelationShip : (mối quan hệ)
Trang 8III XÂY DƯNG CHƯƠNG TRÌNH.
1.Nhập hàng:
1.1 Thông tin dữ liệu nhập.
Thông tin hàng hóa nhập kho được lấy từ các bảng 6_Chi tiết sảnphẩm, 4_chi tiết nhà cung cấp, 1_Hang_hoa, 10_Nhomhang,5_Kho_hang, 2_Nhap_hang, 7_Chi_tiet_phieu_nhap
1.2 Quy tắc nhập hàng
Trước khi nhập hàng vào kho hàng hóa phải được khai báo đầy đủthông tin Thông tin này được lưu trong các Table sẽ được nói chi tiếttrong phần này còn cách thức nhập dữ liệu được xây dựng trên Formđược nói chi tiết ở phần sau
+ Thông tin về nhà cung cấp:
o Thông tin nhà cung cấp sản phẩm được thể hiện đầy đủtrong 4_Chi_tiet_nha_cung_cap (Table)
o Với những sản phẩm do nhà cung cấp mới cung cấp ta cầnđiền đầy đủ thông tin nhà cung cấp trong Table4_Chi_tiet_nha_cung_cap để thêm nhà cung cấp mới
+ Thông tin chi tiết của sản phẩm được thể hiện trong bảng
6_Chi_tiet_san_pham Trước khi nhập hàng, hàng hóa cần đượcđiền đầy đủ thông tin trong table này , thông tin hàng hóa trongbảng này sẽ là dữ liệu để bạn ghi phiếu nhập hàng
+ Khai báo đầy đủ thông tin về nhóm hàng sẽ nhập trong 1_Hang_hoa (Table) Nếu đó là nhóm hàng mới thi trước khi
gán nhóm hàng trong table 1_Hang_hoa ta cần phải tạo nhómhàng mới đó trong Table 10_nhom_hang 10_Nhom_hang la chitiết về nhóm hàng cần nhập
+ Khai báo thông tin nhập hàng thông tin nhập hàng bao gồm
tên kho và địa chỉ kho (các chi nhánh của công ty) và những ghichú chung của người nhập hàng Thông tin kho hàng được khai
Trang 9báo đầy đủ thông tin trong bảng 5_kho_hang nếu thêm kho bạncần điền đầy đủ thông tin trong table 5_kho_hang truoc khi khaibáo trong table 3_Nhap_hang
+ Thông tin chi tiết nhập hàng sẽ được ghi trong table
7_Chi_tiet_phieu_nhap nội dung của Table chủ yếu được Look
up từ các bảng chi tiết mà ta đã khai báo o trước Việc khai báotrong Table 7_Chi_tiet_phieu_nhap là bước quyết định hàng hóanào được nhập kho , thông tin về ngày tháng nhập số lượng v.v.v
Form chính của chương trình
Trang 10Cấu trúc Form chính:
Định dạng của Form
Single formsCaption : Chuong trinh nhap cuat hang cua cong ti dien may –SVPham Minh Tien
Scroll bars : NeitherRecord Selectors : No Navigation buttons : NoAuto Resize : No
Auto Center : NoDividing Line : YesBorder Style : ThinMin max buttons : Both Enabled
Form chính được chia làm hai phần chính bao gồm phần bên trái là thôngtin sản phẩm trong kho hàng, tại đây bạn có thể thấy đầy đủ thông tin về các sảnphẩm hiện có trong kho, các sản phẩm được chia theo nhóm sản phẩm mỗi nhómsản phẩm là 1 trang của Tab control:
Nhóm 1 : các mặt hàng điện tử - âm thanh
Như các loại ti vi loa đài …
Nhóm 2: Các mặt hàng điện lạnh
Tủ lạnh , điều hòa …
Nhóm 3 : Các mặt hàng gia dụng
Bàn ghế cao cấp, giường tủ …
Trang 11Máy quay, máy ảnh …
Hỗ trợ: Thông tin về chương trình và thông tin hỗ trợ
Mỗi trang Tab control được thiết kế như sau
Trên tab control được đạt một form conđược đặt ở định dạng Continuous
Forms và dữ liệu của form được lấy từ query, query nay cho ta thông tin chi tiết
về sản phẩm trong nhóm hàng đó
VD voi nhóm hàng 1:
Query 1_thong_tin_hang_dien_tu_am_thanh
Bạn chú ý tại phần Criteria trong cột Ten_nhom_hang bang điền điều kiện
là tên nhóm hàng mà bạn cần hiển thị tại tab đó
Với các tab kế tiếp bạn làm tương tự.
Trang 12Các phím chức năng chính của chương trình nằm bên cạnh phía bên phải.
- Nhập hàng vào kho
Gọi form nhập hàng vào kho Nút
được lập trình bằng macro
Open_form_nhap_hang
Form nhập hàng vào kho sẽ được nói
chi tiết trong phần nhập hàng vào kho
X
uất hàng
Gọi Form xuất hàng bằng macro
Mo_F_Xuatkho
Form xuất hàng khỏi kho sẽ được nói
chi tiết trong mục xuất hàng
Trang 13Form thông tin khách hàng được nói chi tiết trong phần nhập hàng, mục thông
tin Form và query
- Thông kê kho hàng
Mở form Chuyển kho bằng Macro
mo_F_chuyenkho
Form thống kê theo kho.
Thông tin sản phẩm trong kho sẽ được thống kê chi tiết trong Form này
- Tạo nhóm hàng
Mở form Tạo nhóm hàng bằng macro như bên
Form Tạo mã hàng và thêm nhóm hàng được thể hiện chi tiết ở bên dưới
trong mục chi tiết các Form và Query
- Update Lại giá
Trang 14Udate lại giá khi giá sản phẩm thay đổi những mặt hàng trong kho cần đượccác mặt hàng trong kho cần được update lại.
Gọi Form update bằng macro như bên
Form Update lại
update giá được thực hiện thông qua một query Update giá:
Private Sub Command14_Click()
On Error GoTo Err_Command14_Click Dim stDocName As String
stDocName = "Updatelaigia" ‘ Gán tên Query update giá
DoCmd.OpenQuery stDocName, acNormal, acEditMe.List1.Requery
Me.RequeryExit_Command14_Click:
Exit Sub
Err_Command14_Click:
MsgBox Err.Description Resume
Exit_Command14_Click
End Sub
Báo giá
Trang 15Thông tin về giá cả các sản phẩm trong kho hàng, được thể hiện trong Form
- Thoát khỏi chương trình.
1.3 Các Form và Query chính của phần nhập hàng
Trang 16Định
Caption :Nhậphàng vàokhoScrollbars :NeitherRecord Selectors : No
Navigation buttons : NoAuto Resize : No
Auto Center : NoDividing Line : YesBorder Style : ThinMin max buttons : Both Enabled
Form NHAPHANGVAOKHO là form chính để nhập hàng vào kho nóbao gồm đầy đủ thông tin hàng hóa cần nhập
+ Thông tin chi tiết phiếu nhập:
Tại khu vực thông tin chi tiết phiếu nhập nó thể hiện đầy đủ thông tin về các sản phẩm sẽ nhập vào kho sau khi bạn Update
+ Thông tin kho hàng :
Thể hiện thông tin về hàng hóa trong kho hiện có của kho hàng+ Thông tin chi tiết về sản phẩm
+ Thông tin nhà cung cấp
Trang 17DoCmd.GoToRecord , , acNewRec Exit_Command174_Click:
Exit Sub Err_Command174_Click:
MsgBox Err.Description
Resume Exit_Command174_Click
Sau khi click button hàng hóa vừa nhập sẽ được cập nhật vào phiếu nhập
hàng bạn có thể thấy trên thông tin phiếu nhập hàng bên dưới
Me.List134.Requery Me.Requery
Trang 18 Quy định nhóm hàng
Mở form Tạo mã hàng và gắn nhóm hàng Được lập trình bằngmacro:
Phiếu nhập
Mở Form phiếu nhập Được lập trình bằng Macro:
Nhập chi tiết hàng hóa
Mở Form chi tiết hàng hóa bằng Macro:
Trang 19 Nhập chi tiết nhà cung cấp
Mở form chi tiết nhà cung cấp:
Update
Cập nhật hàng hóa trong phiếu nhập vào kho hang Code:
Private Sub Command203_Click()
On Error GoTo Err_Command203_Click Dim stDocName As String
‘ Gọi Query Append khohang để lấy thông tin hàng nhập khò vào trong kho hàng.
MsgBox Err.Description ‘ thông báo lỗi của hệ thống
Trang 20Resume Exit_Command203_Click
End Sub
Hướng dẫn
Mở Form hướng dẫn bằng Macro : Openformhotrotunhaphang
Trở lại
Nút trở lại được lập trình dựa trên thư viện của chương trình
1.3.2 Form Tạo mã hàng và gắn nhóm hàng cho sản phẩm.
Trang 21Trước khi nhập hàng vào kho ta cần khai báo đầy đủ thông tin về nhóm hàng.
Form Tạo mã hàng và gán nhóm hàng gồm hai phần chính : Vùng điền
thông tin và phần thể hiện thông tin
Tại phần thể hiên thông tin, thông tin được thể hiện dựa trên các List được
lập trình truyền dữ liệu về Mahang- NhomHang và List thông tin nhóm hàng
+ Để tạo một mặt hàng với nhóm hàng đã có bạn thực hiện như sau:
Bước 1 : Bạn hãy điền mã hàng vào ô mã hàng sau đó chọn nhóm hàng
nhóm hàng thường được tạo trước đó và sẽ được nói rõ trong phần 1.3.7
Bước 2 : Sau khi đã điền đầy đủ thông tin Mã hàng – Nhóm hàng bạn hãy
Click vào nút gán nhóm hàng Mã hàng vừa tạo đã có nhóm hàng
Form có kiểu dữ liệu Single Form
Caption : Tạo mã hàng và gắn nhóm hàngScroll bars : Neither
Trang 22Record Selectors : No Navigation buttons : NoAuto Resize : No
Auto Center : NoDividing Line : YesBorder Style : ThinMin max buttons : Both EnabledCode chương trình :
Option Compare Database
‘ Tạo dòng chũ chạy trên form voi nội dung như bên dưới
Private Sub Form_Open(Cancel As Integer)
‘ Truyền thông tin cho list Hàng đã tạo và gắn nhóm hàng
Private Sub List17_AfterUpdate()
Me.RecordsetClone.FindFirst "Mahang='" & Me!List17 & "'"
Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub
‘Xóa mặt hàng dã tạo lỗi.
Private Sub Command24_Click()
On Error GoTo Err_Command24_Click
Trang 23DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
Call LUU ‘ Gọi chương trình LUU đã được tạo trong Module2
Private Sub Command26_Click()
On Error GoTo Err_Command26_Click
Me.List17.Requery Me.Requery ‘ Cập nhật thông tin nhóm hàng bên list bên cạnh
DoCmd.GoToRecord , , acNewRec ‘ Đưa list về cuối
Private Sub Command24_Click()
On Error GoTo Err_Command24_Click DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70 DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70 Call LUU ‘ Gọi chương trình LUU được tạo trong Module
2
Me.List17.Requery Me.Requery ‘ Cập nhật thông tin tại list thông báo
DoCmd.GoToRecord , , acNewRec Exit_Command24_Click:
Trang 24MsgBox Err.Description Resume Exit_Command24_Click
1.3.3 Form Phiếu nhập hàng.
Sau khi đã tạo mã hàng gán nhóm hàng bạn hãy tạo phiếu nhập hàng
Định dạng Form:
Caption : Phiếu nhập hàngScroll bars : Neither
Record Selectors : No Navigation buttons : NoAuto Resize : No
Auto Center : NoDividing Line : YesBorder Style : ThinMin max buttons : Both Enabled
Trang 25Phiếu nhập hàng gồm 3 phần :
Phần 1 : Phần nhập thông tin của phiếu nhập hàng, bao gồm thông tin mã phiếu ,
mã kho, ghi chú
Phần 2 : Thông tin kho hàng Tại khu vực này cho ta đầy đủ thông tin về các kho
hàng hiện có của công ti bao gồm Mã kho , Tên kho hàng , Địa chỉ kho hàng
Phần 3 : Thông tin phiếu nhập hàng Tại khu vực này có đày đủ thông tin về phiếu
nhập hàng vừa tạo cũng như phiếu nhập hàng đã được tạo từ trước đấy Bao gồm
thông tin về mã phiếu, mã kho, Ghi chú nhập
Chú ý mỗi phiếu nhập có một mã duy nhất nếu bạn tạo một phiếu trùng mã
chương trình sẽ báo nỗi
Form có kiểu dữ liệu Single Form
Caption : Phiếu nhập hàng
Scroll bars : NeitherRecord Selectors : No Navigation buttons : NoAuto Resize : No
Auto Center : NoDividing Line : YesBorder Style : Thin