Đề 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

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 đó.

doc77 trang | Chia sẻ: lvcdongnoi | Lượt xem: 2408 | Lượt tải: 1download
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:

  • docLy thuyet.doc
  • rarChuong trinh.rar