Khi có nhân viên được khen thưởng hay bị kỷ luật thì người dùng phải cập nhật vào cơ sở dữ liệu bằng cách Thêm mới một bản ghi tong Form này. Với một nhân viên thì trong 1 ngày chỉ có thể có 1 hình thức là khen thưởng hay kỷ luật và không thể có 2 lần khen thương hay kỷ luật trong cùng 1 ngày được. Khi muốn điều chỉnh thông tin khen thương ky luật thì người dùng có thể Sửa và lưu ý là chỉ được sửa hai trường đó là Hình thức và Mức độ. Khi nhân viên hết thời hạn ky luật người quan trị nhân vào nút Xóa để hủy bỏ kỷ luật với nhân viên đó.
77 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 2523 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đề tài Chương trình quản lý nhân sự của Ngân hàng chính sách xã hội Huyện Ngọc Lặc Tỉnh Thanh Hóa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ời hạn (hoặc lãi xuất)
Thời hạn (hoặc lãi xuấ nợ)
Văn bản duyệt
Số ngày
Cấp ra quyết định
Ngày có hiệu lực
V- Đánh giá TSBĐ tiền vay và những thay đổi theo định kỳ:..............................
Hợp đồng tất toán ngày........ tháng....... năm ...........
Trưởng phòng DVKH
4. Biên bản kiểm tra thực tế khách hàng: Dành cho Phòng tín dụng và các phòng Dịch vụ khách hàng
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
BIÊN BẢN KIỂM TRA THỰC TẾ KHÁCH HÀNG
Hôm nay, ngày... tháng... năm ... . Chúng tôi gồm có:
A/ Đại diện Ngân hàng CSXH ..................
-
B/ Đại diện Doanh nghiệp:........................
-
Sau khi tiến hành kiểm tra sổ sách chứng từ và thực tế, hai bên thống nhất một số nội dung như sau:
I. Tình hình thực hiện kế hoạch SXKD trong kỳ:
Giá trị sản lượng.
Doanh thu.
Lợi nhuận.
Các khoản nộp.
Số lượng CBCNV đang làm việc:
II. Tình hình quan hệ tín dụng trong kỳ:
Dư nợ đầu kỳ:
Doanh số trả nợ:
Doanh số vay:
Cụ thể: Số món vay, số tiền vay, tiền mặt,.....
- Đánh giá mục đích sử dụng vốn vay: Thông qua các hoá đơn, chứng từ thu chi, ghi chép trên sổ quỹ tiền mặt, tiền gửi, (tính cập nhật, chính xác,...).
- Giá trị vật tư đảm bảo nợ vay: Đủ hay thiếu.
+/ Tài sản lưu động:
+/ Các khoản loại trừ:
+/ Nợ ngắn hạn: Trong đó dư vay ngắn hạn Ngân hàng.
+/ Nguồn vốn lưu động tự có:
- Kiểm tra tại hiện trường: Thị sát vật chất (vật tư, hàng hoá,...), đánh giá..
- Kiểm tra các biện pháp bảo đảm tiền vay:
Dư nợ cuối kỳ:
III. Nhận xét và kiến nghị:
Trong sản xuất kinh doanh.
Trong quan hệ tín dụng.
Kiến nghị.
ĐẠI DIỆN NGÂN HÀNG ĐẠI DIỆN ĐƠN VỊ
5. Giấy giao nhận tài sản:
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
BIÊN BẢN
GIAO NHẬN TÀI SẢN - HỒ SƠ TÀI SẢN THẾ CHẤP, CẦM CỐ
Căn cứ Hợp đồng thế chấp số............. ngày ....... tháng ...... năm .......... giữa ......... ...............và Ngân hàng Chính sách xã hội Việt nam - Chi nhánh Thanh Hóa
Hôm nay, ngày......tháng........năm .......... tại .............................................
Chúng tôi gồm có:
- Tên Bên vay: ...................................................................................................
Người giao hồ sơ trực tiếp :
- Chi nhánh Ngân hàng Chính sách xã hội Thanh Hóa.
Người nhận hồ sơ trực tiếp
Hai bên đã tiến hành việc giao nhận tài sản thế chấp cầm cố, hồ sơ về tài sản thế chấp, cầm cố của ................................................................ cho Chi nhánh Ngân hàng Chính sách xã hội Thanh Hóa, bao gồm:
Tài sản:........................................................................................................
Hồ sơ :..........................................................................................................
Bên nhận Bên giao
Hôm nay, ngày...... tháng ..... năm....... Chi nhánh Ngân hàng Chính sách xã hội Thanh Hóa và .....................................................................................đã tiến hành việc bàn giao tài sản, hồ sơ về tài sản thế chấp, cầm cố như sau:
Tài sản cầm cố:....................................................................................................
.............................................................................................................................
Các giấy tờ về tài sản thế chấp, cầm cố...............................................................
.............................................................................................................................
Ngày.... tháng ... năm....
BÊN NHẬN BÊN GIAO
6. Phiếu tiếp nhân hồ sơ khách hàng:
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
PHIẾU TIẾP NHẬN HỒ SƠ KHÁCH HÀNG, KHOẢN VAY VỐN
Hôm nay, ngày....tháng.......năm 200........tại......................................................
Chúng tôi gồm có:
A/ Bên giao hồ sơ :..................................................
Người trực tiếp giao hồ sơ:......................
B/ Bên nhận hồ sơ :................................................
Người trực tiếp nhận hồ sơ:..............................
Hai bên thống nhất như sau:
1. Bên giao chuyển cho Bên nhận một bộ hồ sơ gồm cú cỏc tài liệu theo danh mục như sau:
+...................................................................................................................... +...................................................................................................................... +...................................................................................................................... +......................................................................................................................... +......................................................................................................................
+......................................................................................................................
+...................................................................................................................... +......................................................................................................................
2. Bên nhận hồ sơ hướng dẫn và đề nghị Bên giao hồ sơ gửi bổ sung cỏc tài liệu sau:
+......................................................................................................................
+......................................................................................................................
+......................................................................................................................
+......................................................................................................................
Bên nhận chịu trách nhiệm bảo quản các tài liệu nhận được không bị hư hỏng hay thất lạc.
Ngày.... tháng ... năm....
Bên giao hồ sơ Bên nhận hồ sơ
( Ký, ghi rõ họ tên) ( Ký, ghi rõ họ tên)
C. Báo cáo kết quả tài chính của Ngân hàng năm 2010
Chỉ tiêu
Năm 2008
Năm 2009
Năm 2010
A. THU NHẬP
674.603
1.115.450
1.730.391
Thu từ lãi cho vay
436.628
602.872
804.858
Thu khác từ hoạt động tín dụng
130
5229
5.073
Thu lãi tiền gửi
14.206
14.123
26.235
Thu dịch vụ thanh toán
1
31
114
Thu từ dịch vụ ngân quỹ
-
1
1
Thu từ hoạt động khác
1.892
183
4.025
Thu cấp bù chênh lẹch lãi xuất
219.866
494.108
886.136
Các khoản thu nhập khác
1.880
3.060
3.125
B. CHI PHÍ
711.209
1.179.992
1.662.615
Chi về huy động vốn
272.963
486.517
717.837
Chi dịch vụ thanh toán và ngân quỹ
1.562
4.962
8.697
Chi trả phí dịch vụ ủy thác cho vay
234.146
271.936
258.781
Chi về tài sản
43.998
77.704
194.543
Chi cho nhân viên
83.051
209.542
301.176
Chi hoạt động quan lý công cụ
56.605
92.087
140.820
Chi trích lập dự phòng
18.361
36.108
38.934
Chi phí khác
523
1.136
1.197
C. Chênh lệch THU-CHI
36.606
64.542
67.776
1.2. Hệ thống quản lý nhân sự của Ngân hàng CSXH huyện Ngọc Lặc Tỉnh Thanh Hóa
1.2.1. Sự hạn chế của hệ thống quản lý cũ
Việc quản lý Nhân sự của toàn chi nhánh do phòng Nhân sự quản lý. Do cơ quan ngày càng phát triển, số lượng nhân viên ngày càng đông cho nên số lượng hồ sơ sổ sách ngày càng nhiều. Việc xử lý thông tin thủ công dễ dẫn đến sự sai lệch về dữ liệu, việc tìm kiếm, đối chiếu và chỉnh sửa rất khó khăn, mất nhiều thời gian và công sức.
Với nguồn tài nguyên có sẵn của cơ quan cũng như số lượng nhân viên ngày càng đông yêu cầu cơ quan phải có một sự đổi mới trong quá trình quản lý kinh doanh. Áp dụng công nghệ thông tin vào trong việc quản lý để hỗ trợ cho các nhân viên trong cơ quan, đồng thời làm giảm đi công sức và nhân lực phải bỏ ra trong hoạt động chung của cơ quan mình. Bằng cách đó, không những chỉ tích kiệm được công sức và tiền của cho cơ quan mà còn tạo ra được một khả năng hoạt động linh hoạt, nhanh chóng và an toàn cho công tác quản lý điều hành.
Việc xử lý thông tin thủ công dẫn đến việc tìm kiếm, đối chiếu rất khó khăn, mất nhiều thời gian. Vì vậy rất khó chỉnh sửa và tìm kiếm dữ liệu.
Vì thế việc thiết kế một hệ thống quản lý thông tin nhân sự trong cơ quan nhằm khắc phục những hạn chế nói trên là nhu cầu thực tế và cần thiết.
1.2.2. Đề xuất hệ thống quản lý mới
Để khắc phục những nhược điểm của hệ thống quản lý nhân sự hiện tại và đưa công cụ tin học phục vụ công tác quản lý nhân sự, ta thiết kế một hệ thống mới với những đặc trưng sau :
- Có sự tham gia của máy tính, cập nhận thông tin, sắp xếp, kiết xuất được xử lý tự động.
- Dữ liệu đầu vào được nhập từ bàn phím, dữ liệu đầu ra là những báo cáo, hồ sơ phục vụ cho công tác quản lý.
Phần mềm quản lý nhân sự dùng cho ngân hàng là công tác quản lý nhân sự cho toàn cơ quan. Phần quản lý nhân sự của cơ quan với mục đích là thực hiện công việc nhanh chóng, chính xác, tiết kiệm công sức cho người làm công tác quản lý. Việc xây dựng phần mề này có một quá trình phân tích tỉ mỉ và khoa học, nhằm cài đặt một chương trình ứng dụng đưa vào thực tế cho nhà máy.
* Bài toán phải đáp ứng được các yêu của cơ quan như sau:
- Cho phép nhập, sửa, xóa thông tin nhân sự vào hệ thống từ bàn phím máy tính.
- Chương trình tự động tổng hợp, tìm kiếm, cho kết quả theo đúng yêu cầu như:
+ Tìm kiếm nhân viên, phòng ban, chức vụ…
+ Tìm kiếm các hợp đồng lao động mà cơ quan đã ký.
+ Thống kê được các nhân sự của cơ quan.
+ Tính toán lương cho nhân viên một cách cụ thể
+ Báo cáo về tình trạng làm việc của nhân viên ( khen thưởng, kỷ luật).
- Chương trình giúp việc thực hiện nhanh chóng, đơn giản và dễ sử dụng. Đặc biệt các dữ liệu kết xuất chính xác, nhất quán cho người sử dụng.
- Có trợ giúp và thông báo lỗi khi xảy ra lỗi để người sử dụng dễ sử dụng chương trình hơn.
- Có hình thức phù hợp để bảo mật thông tin và phân quyền người dùng.
- Chương trình dễ cài đặt và chạy tốt cho máy PC đang có các phần mềm ứng dụng phổ biến. Có thể nâng cấp để phù hợp với sự phát triền của thiết bị phần cứng và các phần mềm ứng dụng trong tương lai.
1.2.3 . Ưu điểm của hệ thống quản lý nhân sự mới
- Quá trình xử lý dữ liệu nhanh cho kết quả chính xác.
- Giảm bớt thời gian tính toán cho nhân viên quản lý đặc biệt là công việc tìm kiếm, tổng hợp, báo cáo - thống kê.
- Khả năng lưu trữ thông tin rất lớn của đĩa từ tạo thêm một phương tiện lưu trữ thông tin (ngoài lưu trữ trên giấy) đảm bảo tăng cường khả năng an toàn cho dữ liệu.
- Các mẫu biểu báo cáo in ra có hình thức đẹp, chất lượng tốt đáp ứng được yêu cầu của cơ quan về quản lý nhân sự.
- Tăng tính đồng bộ với các hệ thống quản lý khác, tăng tính hấp dẫn phục vụ cho sự phát triển chung của cơ quan.
- Có thể nâng cao tính bảo mật thông tin trong lưu trữ và quản lý.
CHƯƠNG 2
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1 Phân tích hệ thống
2.1.1 Thông tin đầu vào
Khi tuyển dụng nhân viên, cơ quan sẽ lưu trữ thông tin cá nhân của mỗi nhân viên theo mẫu thống nhất.
Ngoài ra còn có các thông tin thay đổi về thông tin cá nhân cũng như các thông tin về khen thưởng, kỷ luật, đào tạo,… được thêm vào hồ sơ cá nhân của các nhân viên trong quá trình công tác.
٭ Luồng dữ liệu vào
Các thông tin nhân sự:
- Lý lịch nhân sự.
- Khen thưởng, kỷ luật.
- Thình độ chuyên môn.
- Lương nhân viên
* Cách tính lương nhân viên:
Lương thực lĩnh = Lương cơ bản * HS Lương * HSBH + Thưởng - Khấu trừ
Khấu trừ = Thuế TNCN + Bảo hiểm Xã hội + Bảo hiểm thất nghiệp + BH y tế
2.1.2 Thông tin đầu ra
- Thống kê, tìm kiếm theo yêu cầu.
- In các báo cáo theo yêu cầu.
- Đưa ra được kết quả tìm kiếm về nhân viên, phòng ban, chức vụ.
- Đưa ra được kết quả tìm kiếm nhân viên có khen thưởng, kỷ luật.
- Thống kê được các nhân sự của cơ quan.
2.1.3 Mục tiêu quản lý
- Lưu trữ, cập nhật thông tin của nhân viên trong cơ quan.
- Tìm kiếm thông tin của các nhân viên.
- Đưa ra báo cáo và thống kê về các thông tin nhân viên .
- Đưa ra báo cáo và thống kê về Lương nhân viên .
2.1.4. Biểu đồ phân cấp chức năng (BFD)
QUẢN LÝ NHÂN SỰ
Cập nhật
Cập nhật hồ sơ nhân viên
Cập nhật Trình độ văn hóa
Cập nhật Khen thưởng,kỷ luật
Tìm kiếm
Tìm kiếm theo tên nhân viên
Tìm kiếm theo
Chức vụ
Tìm kiếm theo phòng ban
Tìm kiếm theo trình độ VH
Cập nhật Phòng ban
Cập nhật Chức vụ
Cập nhật Bảng chấm công
Thống kê, báo cáo
Thống Kê Hồ sơ Nhân viên
Thống Kê Phòng ban
Thống kê Chức vụ
Khen thưởng, kỷ luật
Cập nhật Diễn biến lương
Tìm kiếm theo Đối tượng LĐ
2.1.5. Biểu đồ luồng dữ liệu khung cảnh
Quản lý
nhân sự
Cán bộ
quản lý
Nhân sự
Thông tin yêu cầu
Thông tin trả lời
Hồ sơ thông tin cá nhân
Các y/c về thông tin nhân sự
2.1.6. Biểu đồ luồng dữ liệu mức đỉnh
Cán Bộ Quản lý
Tìm kiếm
Cán Bộ quản lý
HỒ SƠ NHÂN SỰ
Danh mục phòng ban
Danh mục lương
Cập nhật
Thống kê báo cáo
Y/C tim kiếm
Yêu
cầu thống kê
K/Q tìm kiếm
Kết
quả thống kê
Thông tin nhân sự
Kết quả
T.Tin bảng lương
T.Tin nhân
sự
T/tin phòng ban
2.1.7. Biểu đồ luồng dữ liệu mức dưới đỉnh (Cập nhật nhân sự)
Chức vụ
Cập nhật phòng ban
Cập nhật diễn biến Lương
Phòng ban
Diễn biến lương
HỒ SƠ NHÂN SỰ
Khen thưởng KL
T/tin nhân viên
D/s phòng ban
TĐVH
Cập nhật trình độ VH
Cập nhật hồ sơ Nhân viên
CN Khen thưởng Kỷ Luật
DS khen thưởng kỷ luật
Diễn biến lương
T.Tin chức vụ
Cập nhật chức vụ
T.Tin TĐVH
Cập nhật Bảng chấm công
Bảng chấm công
T/tin ngày công
Cán bộ
quản lý
2.1.8. Biểu đồ luồng dữ liệu mức dưới đỉnh (Tìm kiếm)
Tìm kiếm theo Phòng ban
Tìm kiếm theo Trình độ VH
Tìm kiếm
theo Tên nhân viên
Hồ sơ cán bộ
CÁN BỘ QUẢN LÝ
Kết quả
YC TK theo phòng ban
YC TK theo trình độ VH
Kết quả
Kết quả
Phòng ban
Hồ sơ cán bộ
Trình độ
Tìm kiếm theo chức vụ
Kết quả
YC TK theo Chức vụ
YC TK theo tên Nhân viên
Tìm kiếm theo Đối tượng LĐ
YC TK theo Đối tượng LĐ
Kết quả
Đối tượng
Tên NV
Chức vụ
2.1.9. Sơ đồ luồng dữ liệu mức dưới đỉnh (Thống kê báo cáo)
Yêu cầu T/Kê khen thưởng, kỷ luật
Cán bộ quản lý
TK theo phòng Ban
TK theo DS nhân viên
TK theo Chức vu
Phòng ban
Kết quả
TK
thống kê khen thưởng kỷ luật
Khen thưởng kỷ luật
Y/C TK DS nhân viên
YC T/Kê theo phòng ban
Kết quả
TK
Kết quả
TK
YC T/Kê theo phòng ban
Kết quả
TK
2.2. Thiết kế hệ thống về dữ liệu
2.2.1. Các thực thể và thuộc tính
1 - Thực thể NhanVien lưu trữ tất cả các thông tin về hồ sơ, lý lịch của nhân viên. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaNV
Text
Mã nhân viên
2
Hoten
Text
Họ tên nhân viên
3
Ngaysinh
Text
Ngày sinh
4
Gioitinh
Text
Giới tính
5
MaCV
Text
Mã Chức Vụ
6
MaPB
Text
Mã Phòng Ban
7
MaTD
Text
Mã Trình Độ
8
Chuyenmon
Text
Chuyên Môn
9
Ngayvaodang
Text
Ngày Vào Đảng
10
Nguyenquan
Text
Nguyên Quán
11
HKthuongtru
Text
Hộ Khẩu Thường Trú
12
SoCMT
Text
Số Chứng Minh Thư
13
Ngaycap
Text
Ngày Cấp
14
Noicap
Text
Nơi Cấp
15
HotenBo
Text
Họ Tên Bố
16
NghenghiepBo
Text
Nghề Nghiệp Bố
17
HotenMe
Text
Họ Tên Mẹ
18
NghenghiepMe
Text
Nghề Nghiệp Mẹ
2 - Thực thể ChamCong lưu trữ chi tiết các ngày công đi làm của nhân viên, trong đó có cả các ngày nghỉ, ngày lễ và nghỉ phép . Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaNV
Text
Mã Nhân Viên
2
NgayBT
Number
Ngày Bình Thường
3
Chunhat
Number
Chủ Nhật
4
Ngayle
Number
Ngày Lễ
5
Tangca
Number
Tăng Ca
6
Nghiphep
Number
Nghỉ Phép
3 - Thực thể BangLuong lưu trữ các thông tin về tính lương cho hân viên. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaNV
Text
Mã nhân viên
2
Luong
Text
Lương
3
HSluong
Text
Hệ Số Lương
4
Hsbaohiem
Text
Hệ Số Bảo Hiểm
5
Khautru
Text
Khấu Trừ
6
Thuong
Text
Thường
7
Tamung
Text
Tạm Ứng
8
Hotro
Text
Hỗ Trợ
4 - Thực thể TrinhDoVH lưu trình độ văn hóa của nhân viên liên quan trực tiếp đến hệ số để tính lương. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaTD
Text
Mã Trình Độ
2
TenTD
Text
Tên Trình Độ
5 - Thực thể KhenThuongKyLuat lưu trữ các thông tin về hình thức khen thưởng, kỷ luật đối với nhân viên. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaNV
Text
Mã nhân viên
2
Ngay
Date / Time
Ngày
3
Hinhthuc
Text
Hình Thức
4
Mucdo
Text
Mức Độ
6 - Thực thể ChucVu lưu dữ liệu về chức vụ nhân viên. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaCV
Text
Mã Chức Vụ
2
TenCV
Text
Tên Chức Vụ
3
MaDT
Text
Mã Dân Tộc
7 - Thực thể DoiTuongLD lưu các thông tin về đối tượng lao động là nhân viên chính thức, nhân viên hợp đồng hay thử việc. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaDT
Text
Mã Đối tượng
2
TenDT
Text
Tên Đối tượng
8 - Thực thể PhongBan lưu dữ liệu về phòng ban của công ty. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
MaPB
Text
Mã Phòng Ban
2
TenPB
Text
Tên Phòng Ban
3
Makhoi
Text
Mã Khối
9 - Thực thể KhoiDH lưu dữ liệu về các khối điều hành để phân chia các lĩnh vực hoạt động riêng biệt của các phòng ban. Các thuộc tính được mô tả như sau:
STT
Tên thuộc tính
Kiểu dữ liệu
Mô tả
1
Makhoi
Text
Mã Khối
2
Tenkhoi
Text
Tên Khối
2.2.2. Sơ đồ liên kết giữa các thực thể
Nhân viên
Nhân viên
Đối tượng
Trình độ VH
Nhân viên
Chức vụ
Phòng ban
Khối ĐH
Chấm công
Bảng Lương
Chức vụ
Nhân viên
Khen thưởng Kỷ luật
Nhân viên
Nhân viên
Phòng ban
CHƯƠNG 3
XÂY DỰNG CƠ SỞ DỮ LIỆU VÀ CÀI ĐẶT HỆ THỐNG
3.1. Cơ sở lý thuyết
3.1.1. Tổng quan về Hệ quản trị cơ sở dữ liệu Microsoft Access 2003
Microsoft Access 2003 là một trong bốn ứng dụng chính của Microsoft Office 2003, được dùng để tạo ra và quản trị một cơ sở dữ liệu.
Bảng là trung tâm của mọi cơ sở dữ liệu vì nó chứa các dữ liệu. Trong Access một bảng được hiển thị dưới dạng một trong hai khung nhìn (View): Khung nhìn thiết kế (Design view) hoặc khung nhìn trang dữ liệu (Datasheet view). Khung nhìn thiết kế được dùng để định nghĩa bảng ban đầu và chỉ ra các trường của nó. Khung nhìn trang dữ liệu được dùng để thêm vào, sửa đổi hoặc loại bỏ các bản ghi.
Tại một thời điểm chúng ta chỉ có thể làm việc với một dòng. Mỗi một bảng nhất thiết phải có một khóa chính (Primary key). Đó là một trường hoặc một nhóm các trường có giá trị khác nhau trên mỗi bản ghi.
3.1.2. Tổng quan vể ngôn ngữ lập trình Microsoft Visual Basic 6.0
Visual Basic là một công cụ lập trình trực quan của Microsoft, giúp ta xây dựng nhanh các ứng dụng trên Windows. Khác với môi trường lập trình hướng thủ tục trước đây. Visual Basic là môi trường lập trình hướng sự kiện trên Windows. Visual Basic cung cấp một bộ công cụ hoàn chỉnh để đơn giản hoá việc triển khai lập trình ứng dụng.
Khi viết một chương trình trong Visual Basic ta cần phải thực hiện qua 2 bước là: Thiết kế giao diện và Viết lệnh.
Trong chương trình Visual Basic đều có ít nhất là một Form. Form hay còn gọi là biểu mẫu, là thành phần quan trọng nhất trong số tất cả các thành phần giao diện. Form là cơ sở cho việc thiết kế giao diện người dùng của ứng dụng. Tất cả các thành phần tạo thành giao diện người dùng đều được đặt trong Form.
Với Visual basic, từ các Form ta có thể kết nối chúng với cơ sở dữ liệu để truy xuất thông tin hay ghi thông tin vào cơ sở dữ liệu để lưu trữ. Nó rất thuận tiện cho việc thiết kế các chương trình phần mềm quản lý.
1. Một số kiểu dữ liệu cơ bản
Kiểm soát nội dung của dữ liệu. Visual Basic dùng kiểu Variant như là kiểu mặc định. Ngoài ra, một số kiểu dữ liệu khác cho phép tối ưu hóa về tốc độ và kích cỡ chương trình. Khi dùng Variant, ta không phải chuyển đổi giữa các kiểu dữ liệu, VB tự động làm việc đó.
a. Kiểu số
Integer, Long, Double, và Currency. Kiểu số tốn ít vùng chứa hơn kiểu Variant.Tất cả biến kiểu số có thể được gán cho nhau và cho biếnVariant.VB làm tròn thay vì chặt bỏ phần thập phân trước khi gán nó cho số Integer.
Kiểu Integer tốn ít vùng nhớ hơn các kiểu khác, nó thường dùng làm biến đếm trong các vòng lặp For…Next.
Kiểu Single, Double, Currency dùng cho các số có vùng thập phân.Currency hỗ trợ đến 4 chữ số thập phân và 15 chữ số cho phần nguyên, dùng cho các tính toán về tiền tệ. Hàm Round làm tròn số. Ví dụ: Round (12.3456789, 4) trả về 12.3457.
b. Kiểu Byte
Thường dùng để chứa dữ liệu nhị phân. Tất cả thao tác trên kiểu Integer có thể thực hiện trên kiểu byte, ngoại trừ dấu. Vì byte là kiểu không dấu ( trong khoảng từ 0-255), nó không thể nhận ra số âm.
c. Kiểu String
Mặc định, biến hay tham số kiểu chuỗi có chiều dài thay đổi, nó có thể tăng hoặc giảm tùy theo ta gán dữ liệu. Ta có thể khai báo chuỗi có chiều dài cố định:Dim EmpName As String * 50
Nếu ta gán một chuỗi ngắn hơn 50 ký tự, EmpName sẽ được thêm vào phần đuôi các ký tự khoảng trắng cho đầy 50 ký tự, nếu chuỗi gán vào dài hơn 50 ký tự, VB tự động chặt bỏ. Khi làm việc với chuỗi, ta cần dùng các hàm Trim và RTrim để cắt bỏ các ký tự trắng không cần thiết. Ngoài ra, một số hàm thông dụng để thao tác trên chuỗi như:
+ Len: lấy chiều dài chuỗi
+ Mid$: trích chuỗi con từ giữa chuỗi gốc
+ Left$: trích chuỗi con từ phần đầu chuỗi gốc
+ Right$: trích chuỗi con từ phần đuôi của chuỗi gốc
+ InStr: tìm chuỗi con trong chuỗi gốc. Nếu hàm InStr trả về 0, nghĩa là không tìm thấy.
Tìm kiếm không phân biệt cỡ chữ, nhưng nếu tham số thứ 3 là vbBinaryCompare thì đây là tìm kiếm chuỗi có phân biệt chữ in hoa chữ thường.
+ Replace: tìm và thay thế chuỗi. Nó có tham số cuối cùng tương tự hàm InStr(), cho biết có phân biệt chữ hoa chữ thường hay không. Chuỗi có chiều dài cố định được khai báo Public hay Private trong modul chuẩn. Trong modul của biểu mẫu hoặc modul lớp, nó phải được khai báo Private.VB cho phép chuyển đổi một chuỗi thành một số nếu chuỗi đang thể hiện một con số. Ngược lại ta cũng có thể chuyển một số thành một chuỗi, tuy nhiên nên cẩn thận vì chuyển một chuỗi có giá trị không phải số sẽ gây lỗi lúc chương trình thi hành.
d. Kiểu Boolean
Nếu ta có một biến có 2 giá trị True/Fasle, Yes/No, On/Off, ta nên dùng kiểu Boolean. Giá trị mặc định của Boolean là Fasle.
e. Kiểu Date
Khi các kiểu dữ liệu khác được chuyển sang Date, giá trị đứng trước dấu chấm là ngày, giá trị đứng sau dấu chấm là giờ, nửa đêm là 0, giữa ngày là 0.5. Dấu âm thể hiện ngày trước 30/12/1999. Kiểu Date đã giải quyết vấn đề y2k. Dấu # cho biết là kiểu dữ liệu Date, không phải một biểu thức toán học. Tuy nhiên định dạng ngày tháng hiển thị phụ thuộc vào quy định của Window.
f. Kiểu Object
Biến kiểu này chứa một địa chỉ 4 byte (32 bit) trỏ đến đối tượng trong ứng dụng hiện hành hoặc các ứng dụng khác. Dùng lệnh Set để chỉ ra đối tượng thực sự:
Dim objectDb As Object
Set objectDb = OpenDatabase (“c:\vb5\Biblio.mdb”)
Khi khai báo biến đối tượng, nên chỉ ra tên lớp tường minh, (như TextBox thay vì control, DataBase thay vì Object), ứng dụng sẽ chạy nhanh hơn.
g. Kiểu Variant
Có thể chứa mọi loại dữ liệu, chuỗi , số, thậm chí mảng. Ta không cần chuyển đổi dữ liệu, VB làm việc đó một cách tự động. Variant cũng thuận tiện khi không biết trước kiểu dữ liệu. Tuy nhiên cần lưu ý:
+ Nếu muốn thi hành các hàm số học, Variant phải chứa giá trị số.
+ Nếu muốn nối chuỗi, dùng toán tử & thay vì toán tử +.
- Giá trị Empty: Đôi khi ta cần kiểm tra một giá trị có được gán cho biến hay chưa. Biến Variant có giá trị Empty trước khi nó được gán giá trị.
Giá trị Empty là giá trị đặc biệt không phải zero, không phải chuỗi rỗng, không phải giá trị null. Ta dùng hàm IsEmpty để kiểm tra giá trị Empty. Khi một biến Variant chứa giá trị Empty, ta có thể dùng nó trong biểu thức, nó có thể được xem là 0 hoặc chuỗi rỗng tùy theo biểu thức. Giá trị Empty biến mất khi có một giá trị bất kỳ được gán cho Variant, muốn trở về giá trị Empty, ta gán từ khóa Empty cho Variant.
- Giá trị Null: Biến Variant chứa giá trị Null dùng trong những ứng dụng cơ sở dữ liệu thể hiện không có dữ liệu hoặc dữ liệu không xác định. Dùng hàm IsNull để kiểm tra biến Variant có chứa Null hay không. Biến không bao giờ mang giá trị Null nếu ta không gán trực tiếp cho nó, vì vậy không cần phải dùng hàm IsNull. Nếu gán Null cho một biến không phải kiểu Variant, VB sẽ báo lỗi.
- Giá trị Error: trong một biến Variant, Error là một giá trị đặc biệt thể hiện một điều kiện lỗi vừa xảy ra trong thủ tục. Tuy nhiên, không như các lỗi khác, các xử lý lỗi thông thường của ứng dụng không xảy ra. Do đó, ta có thể xử lý dựa trên các giá trị lỗi. Giá trị Error được sinh ra bằng cách chuyển đổi giá trị lỗi dùng hàm CVErr.
h. Kiểu mảng
Mảng là một xâu các biến có cùng tên và cùng kiểu dữ liệu. Dùng Array làm chương trình đơn giản và rút gọn, vì ta có thể dùng vòng lặp. Mảng có biên trên và biên dưới, các thành phần trong mảng là liên tục giữa 2 biên.
Có 2 loại biến mảng: mảng có chiều dài cố định và mảng động có chiều dài thay đổi lúc thi hành. Mảng có chiều dài cố định có thể được khai báo Public trong ứng dụng, trong modul hoặc Private trong một thủ tục. Mảng động có thể thay đổi kích cỡ, là một trong những ưu điểm của VB, mảng động giúp quản lý bộ nhớ một cách hiệu quả. Ta có thể dùng một mảng lớn trong thời gian ngắn, sau đó xóa bỏ để trả vùng nhớ cho hệ thống.
2. Các cấu trúc điều khiển cơ bản
a. Cấu trúc chọn
So sánh mặc định trong VB là so sánh phân biệt cỡ chữ, nếu muốn tắt chế độ này, ta thêm dòng khai báo sau vào chương trình:
Option Compare Text
Nếu muốn trả về trạng thái ban đầu, có 2 cách:
- Đưa vào dòng khai báo:
Option Compare Binary
- Chỉ cần xóa dòng khai báo “ Option Compare Text”
Các biểu thức so sánh:
Ký hiệu
Ý nghĩa
=
Bằng
Khác
>
Lớn hơn
<
Nhỏ hơn
>=
Lớn hơn hay bằng
<=
Nhỏ hơn hay bằng
b. If…Then
+ Một dòng lệnh:
If Then
+ Nhiều dòng lệnh:
If Then
End If
Điều kiện là một so sánh hay một biểu thức mang giá trị số. VB thông dịch giá trị này thành True/ Fasle (0 là Fasle, giá trị khác 0 là True). Nếu điều kiện là True, VB thi hành tất cả các dòng lệnh sau từ khóa Then.
Ví dụ:
If anyDate < Now Then anyDate =now
If anyDate < Now Then
anyDate =now
End If
Lưu ý: Trường hợp một dòng lệnh không có End If
c. If…Then…Else
If Then
[khối lệnh- 1]
[Elself Then
[khối lệnh- 2]…
[Else
[khối lệnh- n]
End If
VB kiểm tra điều kiện thứ nhất. Nếu nó sai, VB kiểm tra điều kiện thứ hai,…cho đến khi điều kiện đúng. VB thi hành khối lệnh tương ứng và sau đó thi hành dòng chương trình ngay sau End If.
d. Select Cases
Select Case
[Case
[khối lệnh -1]]
[Case
[khối lệnh -2]]
....
[Case Else
[khối lệnh –n]]
End Select
Mỗi danh sách biểu thức chứa một hoặc nhiều giá trị, các giá trị cách nhau dấu phẩy. Mỗi khối lệnh có thể chứa từ 0 đến nhiều dòng lệnh.
e. Do…Loop
Thi hành một khối lệnh với số lần lặp không định trước, trong đó một biểu thức điều kiện dùng so sánh để quyết định vòng lặp có tiếp tục hay không. Điều kiện phải quy về False (0) hoặc True (khác 0).
Kiểu 1: Lặp trong khi điều kiện là True
Do While
Loop
Kiểu 2: Vòng lặp luôn có ít nhất một lần thi hành khối lệnh:
Do
Loop While
Kiểu 3: Lặp trong khi điều kiện là False:
Do Until
Loop
Kiểu 4: Lặp trong khi điều kiện là False và có ít nhất một lần thi hành khối lệnh:
Do
Loop Until
f. For…Next
For = To [Step ]
Next[]
Biến đếm, điểm đầu, điểm cuối và bước nhảy là những giá trị số. Bước nhảy có thể là dương hoặc âm, nếu bước nhảy là số dương, điểm đầu phải nhỏ hơn hoặc bằng điểm cuối. Nếu không khối lệnh sẽ thi hành. Nếu bước nhảy là số âm, điểm đầu phải lớn hơn hoặc bằng điểm cuối. Nếu Step không được chỉ ra, mặc định bước nhảy là 1.
g. For Each…Next
Tương tự vòng lặp For…Next, nhưng nó lặp theo số phần tử của một tập các đối tượng hay một mảng thay vì theo số lần lặp xác định. Vòng lặp này tiện lợi khi ta không biết chính xác bao nhiêu phần tử trong tập hợp.
For Each In
Next
Để dùng For Each…Next thì phần tử trong tập hợp chỉ có thể là biến Variant, biến Object, hoặc một đối tượng trong Object Browser; phần tử trong mảng chỉ có thể là biến Variant; không dùng For Each…Next với mảng chứa kiểu tự định nghĩa vì Variant không chứa kiểu tự định nghĩa.
h. Vòng lặp While…Wend
Tương tự vòng lặp Do…While, nhưng ta không thể thoát vòng lặp bằng lệnh Exit. Vì vậy, vòng lặp kiểu này chỉ thoát khi biểu thức điều kiện sai.
While sPassword “ Enter password”
sPassword = InputBoxs(“Enter password”)
Wend
i. Câu lệnh Go To
Được dùng cho bẫy lỗi.
On Error Go To ErrorHandler
3.2. Cơ sở dữ liệu trên ACCESS
Bảng Nhân viên: Lưu trữ tất cả thông tin về lý lịch của nhân viên như họ tên, ngày sinh, giới tính, địa chỉ, trình độ chuyên môn.... Khóa chính là MaxNV, mỗi một nhân viên chi được xác định bởi 1 MaxNV này nên trách được sự lặp lại hai hay nhiều nhân viên trùng nhau do nhầm lẫn trong khi cập nhật thông tin.
Bảng Chức vụ: Gồm có Mã chức vụ, Tên chức vụ và Mã Đối tượng. Khóa chính là MaxCV, Tên chức vụ cho biết tên của các chức vụ hiện có tong cơ quan như: Giám đốc, phó Giám đốc, Tưởng phòng, Phó phòng hay Nhân viên. Trường MaxDT cho biết Chức vụ đó thuộc nhóm đối tượng nào, là Lao động gián tiếp hay trực tiếp, lao động hợp đồng, thử việc hay Cộng tác viên. Các thông tin về đối tượng đó được lưu trữ trong bảng Đối Tượng LĐ.
Bảng Đối tượng: Khóa chính là MaxDT xác định duy nhất một nhóm đối trượng. Tên đối tượng gồm có: LĐ gián tiếp(Ban Giám đốc), LĐ trực tiếp, LĐ dài hạn, LĐ ngắn hạn, Thử việc và Cộng tác viên
Bảng Khen thưởng - Kỷ luật: Lưu trữ thông tin về quá trình khen thưởng cũng như kỷ luật của nhân viên như Ngày tháng được khen thương hay kỷ luật, hình thức và mức độ khen thưởng hay kỷ luật. Khóa chính là MãNV.
Bảng Phòng ban: Gồm Mã phòng ban, Tên phòng ban và Mã khối. khóa chính là MaxPB xác định duy nhất một tên phòng ban trong cơ quan. Hiện Ngân hàng CSXH Thanh Hóa có 15 phòng ban như sau: QHKH cá nhân, QHKH doanh nghiệp, QH định chế tài chính, Kế hoạch, Tín dụng - Đầu tư, Kế toán tài chính, Quản lý rủi do, DVKH cá nhân, DVKH tô chức, Xử lý bộ chứng từ, Ngân quỹ, Hành chính, Nhân sự, Pháp chế và Công nghệ thông tin. Mã khối xác định phòng ban đó thuộc khối hoạt động nào. Có 4 khối hoạt động được lưu trong bảng Khối như sau: Khối QHKH, Khối tông hợp, Khối tác nghiệp và khối hỗ trợ kỹ thuật.
Bảng Khối: Gồm có Mã khối và tên khối. bang này lưu trữ thông tin về các khối hoạt động trong Ngân hàng như Khối QHKH, Khối tông hợp, Khối tác nghiệp và khối hỗ trợ kỹ thuật. khóa chính là Mã khối.
Bảng Lương: lưu thông tin về Lương hàng tháng của nhân viên vì vậy khóa chính gồm MaxNV và Tháng. Gồm có các trường lưu thông tin dùng để tính lương như Lương cơ bản, HS lương, HS bao hiêm, Thưởng, Tạm ứng, Hỗ trợ và Khấu trừ. Khoản khấu trừ là tổng của các khoản Thuế hay bảo hiểm nhân viên phải đóng( thuế TNCN, bao hiểm XH, bảo hiểm y tế, bảo hiểm thất nghiệp).
Lương thực lĩnh = LươngCB*HS lương*HS Bảo hiểm + Thưởng - Khấu trừ.
Bảng Chấm công: Lưu thông tin về các ngày công trong 1 tháng gồm có Ngày bình thường, Ngày chủ nhật, Ngày lễ, Nghỉ phép. 2 Khóa chính là MaxNV và Tháng chấm công.
Ngày công đi làm= ngày bình thường + 1.5*(Chủ nhật + Ngày lễ)
Bảng Trình độ văn hóa: Lưu thông tin về trình độ văn hóa của từng nhân viên. Gồm Mã tình độ và Tên trình độ, khóa chính là Mã tình độ. Tên trình độ văn hóa gốm có: Đại học, Trên đại học, Cao đẳng, Trung cấp, Phổ thông.
Bảng Liên Kết Thực Thể : Mối quan hệ gữa các bảng được thể hiện trong bảng này.
3.3. Thiết kế các FORM chương trình
3.3.1. Các chức năng của hệ thống:
Hệ thống : + Đăng nhập
+ Đổi mật khẩu
+ Thông tin người dùng
+ Trợ giúp
+ Thoát
Cập nhật: + Cập nhật hồ sơ nhân viên
+ Cập nhật phòng ban
+ Cập nhật khối điều hành
+ Cập nhật chức vụ
+ Cập nhật đối tượng lao động
+ Cập nhật trình độ văn hóa
+ Cập nhật bảng chấm công
+ Cập nhật quá trình lương
+ Cập nhật khen thưởng, kỷ luật
Tìm kiếm : + Theo họ tên
+ Theo phòng ban
+ Theo chức vụ
+ Theo trình độ văn hóa
+ Theo đối tượng lao động
Thống kê, báo cáo : + Danh sách lao động: Theo chức vụ
Theo phòng ban
Theo trình độ văn hóa
Theo hệ số lương
+ Phòng ban
+ Khen thưởng, kỷ luật: Khen thưởng
Kỷ luật
+ Khối điều hành
+ Lương nhân viên: Bảng chấm công
Lương thực lĩnh
Khoản hỗ trợ
Khoản tạm ứng
Ngoài ra còn có chức năng KHÓA HỆ THỐNG dùng để đăng xuất khỏi hệ thống khi không làm việc.
3.3.2. Các vấn đề đã thực hiện được của chương trình:
Cập nhật:
- Chương trình cho phép nhập thêm các thông tin mới như Hồ sơ nhân viên, thông tin phòng ban, chức vụ, khen thưởng kỷ luật, bảng chấm công hay quá trình lương của nhân . Với điều kiện là không được trùng khóa chính (chương trình sẽ tự động kiểm tra mỗi khi người sử dụng nhập vào một bản ghi mới để tránh việc nhập sai chương trình sẽ báo lỗi khi nhập trùng khóa hay nhập không hợp lệ và bắt phải nhập lại cho đến khi hợp lệ).
Chỉnh sửa, xóa:
Khi những thụng tin về nhân viên vì một lý do nào đó trong quá trình làm việc có thể bị thay đổi như quê quán, địa chỉ, ngày vào Đảng v.v… người dùng sẽ sử dụng chức năng này để cập nhật những thông tin mới nhất về họ. Thông tin hiện lên bao gồm toàn bộ các mục như trong hồ sơ sinh viên, những thông tin này cho phép thay đổi, cập nhật mới.
Những thông tin mới sẽ được ghi lại và tra cứu về sau.
Chức năng chỉnh sửa được thiết kế ở các form nhập, để tiện cho việc sửa những thông tin mà người sử dụng cần thay đổi.
Người sử dụng có thể dùng chức năng xóa để xóa các thông tin nếu muốn, chương trình sẽ tự động loại những thông tin bị xóa ra khỏi cơ sở dữ liệu.
Tra cứu:
Chương trình cho phép tra cứu nhân viên theo tên, theo họ đệm theo hồ sơ nhân viên, tên phòng ban, tên chức vụ . Ngoài ra cũng cho phép người sử dụng tìm kiếm theo đối tượng lao động hay trình độ văn .
Chức năng này tương tự chức năng cập nhật chỉ khác là không cho phép thay đổi cập nhật mà chỉ cho phép xem thông tin của kết quả tìm kiếm.
Thống kê:
Chương trình cho phép in ra các báo cáo về hồ sơ nhân viên được phân chia theo chức vụ , theo phòng ban, theo trình độ văn hóa và theo hệ số lương. In ra được các báo cáo chấm công, bảng lương, các khoản hỗ trợ, các khoản tạm ứng theo từng tháng do người dùng lựa chọn.
3.3.3. Giới thiệu một số Form chính của chương trình:
Form MAIN: Form chính khi khởi động chương trình, gồm một MEMU cho phép người dùng lựa chọn các chức năng trong đó. Lưu ý là trước khi sử dụng được các chức năng người sử dụng cần Đăng nhập trước
Form đăng nhập: Đây là phần mang tính chất bảo mật của hệ thống để tránh được sự truy cập bất hợp pháp hay truy cập với các mục đích xấu. Để sử dụng được các chức năng của hệ thống người dùng cần phải đăng nhập đúng Tài khoản và mật khẩu của minh. Đối với nhân viên thì được cung cấp tài khoản truy cập hệ thống để thực hiện một số hoạt động cho phép như Thêm một thông tin , chỉnh sửa thông tin của mình hay thêm quá trình khen thưởng kỷ luật của một nhân viên... Còn đối với người quan lý cấp cao hơn thì tài khoản sẽ có toàn quyền xử lý như Thêm, Sửa, Xóa thông tin. Khi người dùng quên mật khẩu có thế nhấn vào dòng chữ Quên mật khâu để có thể lấy lại mật khẩu nhanh chóng, tuy nhiên khi sử dụng trong thực tế cầ cung cấp một số thông tin cá nhân mới có thể lấy lại mật khẩu. Nút Đăng ký cho phép tạo một tài khoản mới để đăng nhập và sử dụng chương trình. Khi đưa vào sử dụng thực tế thì những tài khoản đăng ký bởi người dùng thì chỉ được phép Đăng nhập để xem ngoài ra không được thực hiện bất cứ quyền nào khác.
Form cập nhật hồ sơ nhân viên: Các chức năng Thêm, Sưa , Xóa hồ sơ nhân viên. Trong trường hợp có một nhân viên mới người quản trị sẽ phải Thêm mới thông tin của nhân viên này và cập nhật vào Cơ sở dữ liệu. hoặc khi thông tin của nhân viên bị sai lệch thì có thể chinh sửa hay xóa thông tin
Form cập nhật phòng ban: Form này giúp người quản trị có thể Thêm, Sửa , Xóa thông tin về phòng ban mỗi khi có sự thay đổi trong thực tế. Trường Mã phòng ban là khóa chính trong Cơ sở dữ liệu nên không được để trống hay trùng với mã đã có, nếu nhập trùng hay bỏ trống hệ thống sẽ thông báo và bắt nhập lại.
Cập nhật chức vụ: Tương tự như cập nhật phòng ban, Form này cho phép cập nhật thông tin của các chức vụ trong cơ quan. Mã chức vụ không được phép bỏ trống hay nhập trùng mã.
Form cập nhật bảng chấm công: Form này để cập nhật quá trình chấm công đi làm của nhân viên. Trước tiên nhấn nút cập nhật sau đó chọn mã nhân viên và chọn tháng cần cập nhật. Nếu trong tháng đó nhân viên đã được cập nhật rồi thì hệ thống sẽ thông báo và yêu cầu cập nhật tháng khác. Khi người dùng nhấn vào Xem hết thì kết quả hiện ra là tất cả các nhân viên đã được chấm công theo tháng, nhìn vào thông tin này người dùng biết được tháng nào nhân viên nào chưa được chấm công và có thê cập nhật lại.
Form cập nhật quá trình lương: Các chức năng gồm có Thêm, Sửa, Xóa. Khóa để xác định một bản ghi trong cơ sở dữ liệu là Mã nhân viên và Tháng vì vậy khi cập nhật quá trình lương nếu nhập cho Nhân viên đã có bảng lương tháng rồi thì chương trình sẽ thông báo nhập sai và bắt nhập lại cho tháng khác hoặc hủy bo việc nhập. một lưu ý quan trọng nữa là các trường như Lương, Thưởng, HS lương, HS bao hiểm, Khấu trừ, Tạm ứng, Hỗ trợ thì dữ liệu nhập vào bắt buộc phải là số nguyên, với các trường Hệ số thì có thể là số thực, nếu nhập sai hệ thống sẽ thông báo lỗi cho tới khi nhập đúng mới thôi.
Form cập nhật khen thương - kỷ luật:
Khi có nhân viên được khen thưởng hay bị kỷ luật thì người dùng phải cập nhật vào cơ sở dữ liệu bằng cách Thêm mới một bản ghi tong Form này. Với một nhân viên thì trong 1 ngày chỉ có thể có 1 hình thức là khen thưởng hay kỷ luật và không thể có 2 lần khen thương hay kỷ luật trong cùng 1 ngày được. Khi muốn điều chỉnh thông tin khen thương ky luật thì người dùng có thể Sửa và lưu ý là chỉ được sửa hai trường đó là Hình thức và Mức độ. Khi nhân viên hết thời hạn ky luật người quan trị nhân vào nút Xóa để hủy bỏ kỷ luật với nhân viên đó.
Form tìm kiếm theo họ tên nhân viên: Form này giúp tra cứu các thông tin của một hay nhiều nhân viên do người dùng muốn, chỉ cần nhập họ tên chính xác vào ô nhập và nhấn nút tìm kiếm sẽ hiện kết quả như mong muốn. hoặc có thể tìm kiếm tương đối nếu như người dùng chỉ nhập tên hoặc tên dệm hoặc họ của nhân viên. Ví dụ muốn tra cứu thông tin của tất cả các nhân viên họ Nguyễn thì người dùng chỉ cần nhập " Nguyen" vào ô nhập tên và nhấn nút Tìm kiếm, kết quả hiện ra là thông tin của tất cả các nhân viên có họ Nguyễn trong cơ quan
Form tìm kiếm theo tên phòng ban: Tương tự như tìm kiếm theo tên nhân viên khi muốn tìm kiếm các nhân viên thuộc một phòng ban nào đó thì sử dụng chọn Form này
Form tìm kiếm theo tên chức vụ: Giúp người sử dụng tra cứu thông tin của các nhân viên có cùng một chức vụ
Form tìm kiếm theo trình độ văn hóa: Cũng tương tự Form này cho phép tìm kiếm thông tin của các nhân viên có cùng trình độ văn hóa
Form tìm kiếm theo đối tượng lao động: Tương tự Form này để tra cứu thông tin nhân viên thuộc cùng một đối tượng lao động
Form Báo cáo Danh sách lao động được khen thưởng: Khi người dùng muốn in ra danh sách các nhân viên được khen thưởng có thể chọn vào Menu THỐNG KÊ BÁO CÁO->Khen thưởng kỷ luật ->Khen thưởng
Form Báo cáo Danh sách lao động bị kỷ luật:Tương tự khi người dùng muốn in ra danh sách nhân viên bị kỷ luật
Form Báo cáo Danh sách lao động theo khối: In ra danh sách các nhân viên thuộc một khối nhất định
Form Báo cáo Bảng chấm công tổng hợp: In ra tất cả các thông tin về ngày công của tất cả các nhân viên
Form Báo cáo Bảng lương tổng hợp: Tương tự sẽ in ra thông tin về Lương của tất cả các nhân viên
Báo cáo chấm công: Form này giúp người sử dụng lựa chọn tháng cần in ra báo cáo chấm công bằng cách chọn tháng cần in hoặc có thể in hết mà không cần chọn tháng
Bảng chấm công theo tháng: Khi người dùng chọn tháng cần in và nhân nút IN trong Fom báo cáo châm công sẽ in ra chi tiết các ngày công của các nhân viên trong Tháng được chọn
Báo cáo Lương: Form này giúp người sử dụng lựa chọn tháng cần in ra báo cáo Lương bằng cách chọn tháng cần in hoặc có thể in hết mà không cần chọn tháng
Bảng lương theo tháng: Khi người dùng chọn tháng cần in và nhân nút IN trong Fom báo cáo Lương sẽ in ra chi tiết Lương của các nhân viên trong Tháng được chọn
Form Trợ giúp: Chứa các thông tin hướng dẫn sử dụng người dùng về cách đăng nhập hệ thống hay cách cài đặt Font khi không hiển thị được Font tiếng Việt.
PHỤ LỤC: MÃ NGUỒN CỦA MỘT SỐ FORM CHÍNH
1. Mã nguồn Form Cập nhật:
Dưới đây là mã nguồn của Form Cập nhật hồ sơ nhân viên, nhìn chung tất cả các Form cập nhật đều phải có các chức năng như Thêm, Sửa, Xóa. Vì vậy các thủ tục Thêm(), Sửa(), Xóa() của các Form tương tự như nhau.
Dim conn As ADODB.Connection
Dim strconn As String
Dim rs As ADODB.Recordset
Dim strsql As String
Dim addnewflag, b As Boolean ' Biến này có giá trị True khi nhấn nút Thêm mới
Private Sub Form_Load()
Me.Command6.Enabled = True
Me.l3.Visible = False
addnewflag = False 'Giá tị mặc định của biến này là False
Setbuttons (False)
lockedControls (True)
End Sub
Private Sub Setbuttons(bval As Boolean)
cmddongy.Enabled = bval
cmdhuybo.Enabled = bval
cmdnoicap.Enabled = bval
cmdselectcv.Enabled = bval
cmdselectpb.Enabled = bval
cmdselecttd.Enabled = bval
cmdthem.Enabled = Not bval
cmdsua.Enabled = Not bval
cmdxoa.Enabled = Not bval
End Sub
Private Sub lockedControls(bval As Boolean)
txtmanv.Locked = bval
txthoten.Locked = bval
txtngaysinh.Locked = bval
txtgioitinh.Locked = bval
txtsocmt.Locked = bval
txtngaycap.Locked = bval
txtnoicap.Locked = bval
txtngayvaodang.Locked = bval
txthotenbo.Locked = bval
txtnghenghiepbo.Locked = bval
txthotenme.Locked = bval
txtnghenghiepme.Locked = bval
txthktt.Locked = bval
txtnguyenquan.Locked = bval
txtchuyenmon.Locked = bval
txttencv.Locked = bval
txttenpb.Locked = bval
txttentd.Locked = bval
End Sub
Private Sub clearall()
txtmanv.Text = ""
txthoten.Text = ""
txtngaysinh.Text = ""
txtgioitinh.Text = ""
txtchuyenmon.Text = ""
txtngayvaodang.Text = ""
txtnguyenquan.Text = ""
txthktt.Text = ""
txtsocmt.Text = ""
txtngaycap.Text = ""
txtnoicap.Text = ""
txthotenbo.Text = ""
txtnghenghiepbo.Text = ""
txthotenme.Text = ""
txtnghenghiepme.Text = ""
txttenpb.Text = ""
txttencv.Text = ""
txttentd.Text = ""
End Sub
Private Sub cmdthem_click()
addnewflag = True
Adodc1.Recordset.AddNew
clearall
Setbuttons (True)
lockedControls (False)
Me.cmdhuybo.Enabled = False
Me.l3.Visible = True
Me.Command1.Enabled = False
Me.Command2.Enabled = False
Me.Command3.Enabled = False
Me.Command4.Enabled = False
Me.Command6.Enabled = False
End Sub
Private Sub cmdsua_click()
addnewflag = False
Setbuttons (True)
lockedControls (False)
Me.txtmanv.Locked = True
Me.l3.Visible = False
End Sub
Private Sub cmddongy_Click()
If addnewflag = True Then
Set rs = New ADODB.Recordset
Set conn = New ADODB.Connection
strconn = "provider=microsoft.jet.oledb.4.0;data source= " & App.Path & "\qlns.mdb"
conn.CursorLocation = adUseClient
conn.Open strconn
strsql = "select * from nhanvien, chucvu, phongban,trinhdovh where nhanvien.macv=chucvu.macv and nhanvien.mapb=phongban.mapb and nhanvien.matd=trinhdovh.matd and nhanvien.manv='" & Me.txtmanv & "'"
rs.Open strsql, conn
If Not rs.EOF Then
MsgBox "Ban nhap trung ma nhan vien!", vbOKOnly + vbInformation, "Thong Bao"
Setbuttons (True)
lockedControls (False)
Else
If txtmanv.Text = "" Then
MsgBox "Ban chua nhap ma nhan vien!", vbOKOnly + vbInformation, "Thong Bao"
Exit Sub
Setbuttons (True)
lockedControls (False)
Else
Adodc1.Recordset.Fields("manv") = txtmanv.Text
If txthoten.Text "" Then
Adodc1.Recordset.Fields("hoten") = txthoten.Text
Else
MsgBox "Ban chua nhap ho ten"
Exit Sub
Setbuttons (True)
lockedControls (False)
End If
If txttencv.Text "" Then
Adodc1.Recordset.Fields("macv") = txttencv.Text
Else
MsgBox "Ban chua chon Chuc vu..."
Exit Sub
Setbuttons (True)
lockedControls (False)
End If
If txttenpb.Text "" Then
Adodc1.Recordset.Fields("mapb") = txttenpb.Text
Else
MsgBox "Ban chua chon Phong ban..."
Exit Sub
Setbuttons (True)
lockedControls (False)
End If
If txttentd.Text "" Then
Adodc1.Recordset.Fields("matd") = txttentd.Text
Else
MsgBox "Ban chua chon Trinh do van hoa..."
Exit Sub
Setbuttons (True)
lockedControls (False)
End If
If txtngaysinh.Text "" Then
Adodc1.Recordset.Fields("ngaysinh") = txtngaysinh.Text
End If
If txtgioitinh.Text "" Then
Adodc1.Recordset.Fields("gioitinh") = txtgioitinh.Text
End If
If txtchuyenmon.Text "" Then
Adodc1.Recordset.Fields("chuyenmon") = txtchuyenmon.Text
End If
If txtngayvaodang.Text "" Then
Adodc1.Recordset.Fields("ngayvaodang") = txtngayvaodang.Text
End If
If txtnguyenquan.Text "" Then
Adodc1.Recordset.Fields("nguyenquan") = txtnguyenquan.Text
End If
If txthktt.Text "" Then
Adodc1.Recordset.Fields("hokhauthuongtru") = txthktt.Text
End If
If txtsocmt.Text "" Then
Adodc1.Recordset.Fields("socmtnd") = txtsocmt.Text
End If
If IsNumeric(Me.txtsocmt.Text) = False Then
MsgBox "Nhap lai so CMT..."
Exit Sub
Setbuttons (True)
lockedControls (False)
Else
If txtngaycap.Text "" Then
Adodc1.Recordset.Fields("ngaycap") = txtngaycap.Text
End If
If txtnoicap.Text "" Then
Adodc1.Recordset.Fields("noicap") = txtnoicap.Text
End If
If txthotenbo.Text "" Then
Adodc1.Recordset.Fields("hotenbo") = txthotenbo.Text
End If
If txtnghenghiepbo.Text "" Then
Adodc1.Recordset.Fields("nghenghiepbo") = txtnghenghiepbo.Text
End If
If txthotenme.Text "" Then
Adodc1.Recordset.Fields("hotenme") = txthotenme.Text
End If
If txtnghenghiepme.Text "" Then
Adodc1.Recordset.Fields("nghenghiepme") = txtnghenghiepme.Text
End If
MsgBox " Ban da them 1 ban ghi moi..."
Setbuttons (False)
lockedControls (True)
Adodc1.Recordset.Update
End If
End If
End If
End If
Setbuttons (False)
lockedControls (True)
Adodc1.Recordset.Update
End Sub
Private Sub cmdhuybo_click()
addnewflag = False
If addnewflag = False Then
Adodc1.Recordset.CancelUpdate
End If
lockedControls (True)
Setbuttons (False)
Me.Command1.Enabled = True
Me.Command2.Enabled = True
Me.Command3.Enabled = True
Me.Command4.Enabled = True
Me.Command6.Enabled = True
End Sub
Private Sub cmdxoa_click()
addnewflag = False
On Error GoTo deleteerr
If (Adodc1.Recordset.BOF = False And Adodc1.Recordset.EOF = False) Then
returnvalue = MsgBox(" Ban muon xoa ban ghi nay ? ", vbOKCancel + vbQuestion, "Notice")
If returnvalue = vbOK Then
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveNext
If Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast
End If
Exit Sub
End If
deleteerr:
MsgBox Err.Description
End Sub
Private Sub form_unload(cancel As Integer)
addnewflag = False
End Sub
2. Mã nguồn Form Tìm kiếm:
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strconn As String
Private Sub cmdtimkiem_Click()
Dim strsql As String
Dim strhoten As String
Set rs = New ADODB.Recordset
Set conn = New ADODB.Connection
strconn = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\qlns.mdb"
conn.CursorLocation = adUseClient
conn.Open strconn
strhoten = Trim(Me.txthoten.Text)
If strhoten "" Then
strsql = "SELECT nhanvien.manv,nhanvien.hoten,phongban.tenpb,chucvu.tencv,nhanvien.gioitinh,nhanvien.ngaysinh,nhanvien.chuyenmon,nhanvien.hokhauthuongtru from nhanvien,phongban,chucvu where nhanvien.mapb=phongban.mapb and nhanvien.macv=chucvu.macv and nhanvien.hoten like '%" & strhoten & "%'"
rs.Open strsql, conn, 1, 3
Set Me.grid.DataSource = rs
Else
MsgBox "Ban chua nhap ten can tim !"
Exit Sub
End If
End Sub
Private Sub txthoten_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Me.cmdtimkiem.SetFocus
End If
End Sub
Private Sub CmdExit_Click()
Unload Me
End Sub
KẾT LUẬN
Sau khi hoàn thành đề tài này em thấy ngôn ngữ Visual Basic 6.0 có các ứng dụng thực tiễn cao, giúp chúng ta có thể xây dựng được các Hệ thống quản lý áp dụng cho các trường học, các doanh nghiệp, bệnh viện, khách sạn…. Là một sinh viên đang học Công nghệ thông tin, việc học tập, trang bị và tiếp thu các kiến thức về tin học từ thực tế cũng như tìm hiểu về công tác quản lý là điều cần thiết.
Khi làm các bài tập Quản lý cơ sở dữ liệu đã giúp em có cơ hội vận dụng kiến thức vừa học được vào thực tế. Dưới sự hướng dẫn của cô giáo em đã tìm hiểu về Visual Basic - một phần mềm quản lý và hoàn thành bài báo cáo đó là tạo các form, liên kết các form, nhập dữ liệu cho bảng, tạo ra các liên kết cơ sở dữ liệu cho các bảng,… rồi từ đó tạo các Menu giao diện cho chương trình. Chương trình thực hiện một số chức năng về việc cập nhật cơ sở dữ liệu như: thêm, sửa, xoá, . Sau khi làm xong bài báo cáo này em đã có thêm những kinh nghiệm về xây dựng và thiết kế một bài toán quản lý. Trong khi làm bài chắc chắn sẽ có nhiều thiếu sót, chưa hoàn thiện và chưa đáp ứng nhu cầu thực tế đòi hỏi thì em rất mong sự đóng góp ý kiến của cô giáo và các bạn để em có thể làm tốt hơn và phát triển những ứng dụng của mình sau này.
Một lần nữa em xin cảm ơn cô giáo và các bạn!
Thái nguyên, Tháng 05 năm 2011
Sinh Viên
Trần Thị Thu Hương
TÀI LIỆU THAM KHẢO
Nguyễn Văn Ba, Phân tích và thiết kế hệ thống thông tin, NXB ĐHQG HN, 2000
Microsoft Visual Basic & Lập trình cơ sở dữ liệu 6.0, NXB Lao động – xã hội
Lập trình Visual Basic 6.0, NXB trẻ
Elicom, Microsoft Office 2000 thông qua hình ảnh, NXB THỐNG KÊ
NHẬN XÉT CỦA GIÁO VIÊN
………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
Giáo viên hướng dẫn:
Nguyễn Thị Tuyển
Các file đính kèm theo tài liệu này:
- Ly thuyet.doc
- Chuong trinh.rar