Xây dựng hệ thống thông tin quản lý nhân sự tại Công ty cổ phần xây dựng Vinaconex 1

Tài liệu Xây dựng hệ thống thông tin quản lý nhân sự tại Công ty cổ phần xây dựng Vinaconex 1: ... Ebook Xây dựng hệ thống thông tin quản lý nhân sự tại Công ty cổ phần xây dựng Vinaconex 1

doc161 trang | Chia sẻ: huyen82 | Lượt xem: 1424 | Lượt tải: 1download
Tóm tắt tài liệu Xây dựng hệ thống thông tin quản lý nhân sự tại Công ty cổ phần xây dựng Vinaconex 1, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
LỜI MỞ ĐẦU Ngày nay, nhân lực luôn là mối quan tâm hàng đầu của mỗi quốc gia nói chung và các doanh nghiệp nói riêng. Các doanh nghiệp luôn có những chính sách thu hút nhân tài để người lao động gắn bó lâu dài với công ty, và luôn tạo điều kiện cho nhân viên phát huy tính sáng tạo, không ngừng học hỏi những tiến bộ khoa học công nghệ mới. Nhất là trong thời đại công nghệ thông tin ngày càng có nhiều đóng góp cho sự phát triển của xã hội. Đặc biệt là trong lĩnh vực quản lý điều hành, ứng dụng tốt công nghệ thông tin luôn trợ giúp cho lãnh đạo ra các quyết định điều hành đúng đắn và kịp thời, hơn thế nữa còn giúp cho công tác quản lý giảm tối đa những sai sót, tiết kiệm thời gian, kinh phí. Các công ty dù đang hoạt động trong lĩnh vực nào cũng nhận thấy rằng ứng dụng công nghệ thông tin vào quá trình sản xuất, kinh doanh, điều hành doanh nghiệp giúp tăng năng suất lao động, tăng hiệu quả trong quản lý. Vì vậy, các doanh nghiệp ở Việt Nam hiện nay dành một phần ngân sách để đầu tư vào xây dựng, và phát triển hệ thống thông tin cho phù hợp tình hình sản xuất kinh doanh để nâng cao khả năng cạnh tranh trên thị trường. Công ty Cổ phần xây dựng Vinaconex 1 là một công ty hàng đầu trong lĩnh vực xây dựng. Nhận thức rõ tầm quan trọng của việc ứng dụng công nghệ thông tin vào công tác quản lý cũng như vai trò to lớn của đội ngũ cán bộ nhân viên công ty có kế hoạch xây dựng hệ thống thông tin quản lý nhân sự. Qua thời gian thực tập tại công ty, em đã học hỏi và tìm hiểu cách thức quản lý nhân sự tại công ty và quyết định chọn đề tài “Xây dựng hệ thống thông tin quản lý nhân sự tại công ty cổ phần xây dựng Vinaconex 1” với hy vọng có thể đóng góp một phần vào công tác quản lý nhân sự tại công ty. Đề tài này được trình bày dưới 3 chương: Chương 1 : Tổng quan về công ty cổ phần xây dựng Vinaconex 1 và bài toán quản lý nhân sự. Chương 2: Phương pháp luận xây dựng hệ thống thông tin quản lý nhân sự Chương 3: Xây dựng hệ thống thông tin quản lý nhân sự Trong thời gian thực tập tại công ty, em xin chân thành cảm ơn cán bộ phòng tổ chức hành chính đã cung cấp thông tin để em có thể hoàn thành đề tài. Đặc biệt, em xin gửi lời cảm ơn đến cô giáo TS.Trần Thị Song Minh đã hướng dẫn và chỉ bảo trong quá trình em tìm hiểu và thực hiện đề tài. Tuy nhiên, do hạn chế về thời gian, cũng như kinh nghiệm và kiến thức thực tế, đề tài sẽ không tránh được những sai sót, em mong cô và các thầy trong khoa Tin học kinh tế- Trường Đại học Kinh tế quốc dân đóng góp ý kiến và tiếp tục chỉ bảo. Hà Nội, ngày 3 tháng 6 năm 2009 Tác giả Vương Ngọc Quỳnh CHƯƠNG 1 TỔNG QUAN VỀ CÔNG TY CỔ PHẦN XÂY DỰNG VINACONEX 1 VÀ BÀI TOÁN QUẢN LÝ NHÂN SỰ . Tổng quan về công ty cổ phần xây dựng Vinaconex 1 Công ty cổ phần xây dựng Vinaconex 1 là một công ty có lịch sử phát triển lâu dài và có uy tín lớn trong lĩnh vực xây dựng các công trình dân dụng và các công trình giao thông, thuỷ lợi, cấp thoát nước. Lịch sử hình thành và phát triển của công ty Trong quá trình thực tập, em nhận thấy công ty có lịch sử hình thành và phát triển lâu dài. Quá trình hình thành và phát triển của công ty được trình bày cụ thể như sau. Tên giao dịch: Công ty cổ phần xây dựng số 1 Tên giao dịch quốc tế: CONSTRUCTION JOINT STOCK COMPANY NO.1 (VINACONEX NO.1 JSC) Địa chỉ trụ sở chính: Toà nhà D9, Đường Khuất Duy Tiến, Thanh Xuân Bắc, Thanh Xuân, HàNội Điện thoại : 0438543413 Fax : 048541679 Website : Vinaconex 1 được thành lập năm 1973 tại Việt Nam Công ty đựơc thành lập năm 1973 với tên gọi ban đầu là Công ty xây dựng Mộc Châu trực thuộc Bộ xây dựng có nhiệm vụ xây dựng toàn bộ khu công nghiệp Mộc Châu - tỉnh Sơn La. Từ năm 1977 đến 1981 được đổi tên là Công ty xây dựng số 11 trực thuộc Bộ xây dựng, trụ sở đóng tại Xuân Mai – Hà Sơn Bình có nhiệm vụ xây dựng Nhà máy bê tông Xuân Mai và tham gia xây dựng Nhà máy thuỷ điện Hoà Bình. Cuối năm 1981 Công ty được Bộ xây dựng cho chuyển trụ sở về Hà nội và được Nhà nước giao nhiệm vụ xây dựng khu nhà ở lắp ghép tấm lớn Thanh Xuân - Hà Nội. Năm 1984 Chủ tịch Hội đồng Bộ trưởng đã ký Quyết định số 196/CT đổi tên Công ty xây dựng số 11 thành Liên hợp xây dựng nhà ở tấm lớn số 1 trực thuộc Bộ xây dựng với nhiệm vụ chính là xây dựng nhà ở cho nhân dân Thủ đô. Năm 1993 Liên hợp xây dựng nhà ở tấm lớn số 1 được Bộ xây dựng cho phép đổi tên thành Liên hợp xây dựng số 1 trực thuộc Bộ xây dựng với nhiệm vụ chủ yếu là xây dựng các công trình dân dụng và công nghiệp. Ngày 15/4/1995 Bộ xây dựng ra quyết định sáp nhập Liên hợp xây dựng số 1 vào Tổng công ty cổ phần xuất nhập khẩu xây dựng Việt Nam - Vinaconex JSC và từ đó mang tên mới là: Công ty xây dựng số 1 - Vinaconco - 1. Theo chủ trương đổi mới các doanh nghiệp Nhà nước ngày 29/8/2003 Bộ Xây Dựng ra quyết định số 1173/QĐ - BXD về việc chuyển đổi doanh nghiệp Nhà nước : Công ty xây dựng số 1 trực thuộc Tổng công ty CPXNK xây dựng Việt Nam thành Công ty cổ phần và mang tên mới là: CÔNG TY CỔ PHẦN XÂY DỰNG SỐ 1 (VINACONEX-1) VIETNAM CONSTRUCTION JOINT STOCK COMPANY N01 Công ty cổ phần xây dựng số 1 (VINACONEX1) là công ty cổ phần có vốn góp của nhà nước chi phối (51%); do đó Tổng công ty CPXNK&XD Việt Nam làm đại diện, Công ty cổ phần xây dựng số 1 là thành viên Tổng công ty CPXNK và xây dựng Việt Nam (VINACONEX JSC). Cơ cấu tổ chức của công ty Hình 1.1. Sơ đồ cơ cấu tổ chức của công ty Các lĩnh vực hoạt động và các sản phẩm, dịch vụ của công ty Sau hơn 30 năm hoạt động và phát triển công ty Cổ phần xây dựng số 1 đã trở thành một trong những doanh nghiệp hàng đầu của ngành xây dựng. Công ty luôn khẳng định được thương hiệu của mình trong những lĩnh vực hoạt động: Xây dựng các công trình dân dụng và công nghiệp; Xây dựng các công trình hạ tầng: giao thông, thuỷ lợi, cấp thoát nước và xử lý môi trường; Xây dựng các công trình đường dây và trạm biến thế điện; Kinh doanh phát triển khu đô thị mới, hạ tầng khu công nghiệp và kinh doanh bất động sản; Sản xuất, kinh doanh vật liệu xây dựng; Tư vấn đầu tư, thực hiện các dự án đầu tư xây dựng, lập dự án, tư vấn đấu thầu, tư vấn giám sát, quản lý dự án; Kinh doanh khách sạn du lịch lữ hành; Đại lý cho các hãng trong và ngoài nước kinh doanh các mặt hàng phục vụ cho sản xuất và tiêu dùng; Xuất nhập khẩu vật tư, thiết bị, xuất khẩu xây dựng; Thiết kế tổng thể mặt bằng, kiến trúc, nội ngoại thất đối với công trình dân dụng và công nghiệp; Thiết kế hệ thống cấp thoát nước khu đô thị và nông thôn, xử lý nước thải và nước sinh hoạt; Thiết kế kết cấu: đối với công trình xây dựng dân dụng, công nghiệp, kỹ thuật hạ tầng khu đô thị, khu công nghiệp; Thi công xây dựng cầu, đường; Đo đạc, khảo sát địa hình, địa chất, thuỷ văn phục vụ cho thiết kế công trình, lập dự án đầu tư; Dịch vụ quản lý nhà ở đô thị và văn phòng cho thuê; Sản xuất, gia công lắp đặt các sản phẩm cơ khí; Kinh doanh dịch vụ cho thuê kho bãi; vận chuyển, xếp dỡ hàng hoá; Phá dỡ các công trình dân dụng và công nghiệp; Cho thuê thiết bị, máy móc xây dựng; giàn giáo cốp pha; Kinh doanh tài chính. Phương hướng phát triển của công ty Trong giai đoạn hiện nay, đầu tư là nhiệm vụ trọng tâm số một, là cơ hội để phát triển Công ty cả về chất và lượng, tạo điều kiện để nâng cao năng lực sản xuất kinh doanh, thúc đẩy và chuyển dịch cơ cấu sản xuất. Vì vậy Công ty chú trọng vào các công tác sau : ● Công tác đầu tư: Công ty đã, đang và sẽ triển khai các dự án phát triển đô thị tại Quận Cầu Giấy, Hà nội; D9A Thanh Xuân Bắc, Hà nội; Dự án Khu đô thị Lê Trọng Tấn (Hà Đông, Hà Tây); Dự án Hà Khánh (Hạ Long, Quảng Ninh); Dự án Vĩnh Điềm Trung (Nha Trang, Khánh Hòa) và một số dự án khác. ● Công tác thi công xây lắp : Tăng cương công tác quản lý, giám sát trong thi công; biên soạn chỉnh sửa và bổ sung các quy trình quản lý kỹ thuật. Tiếp tục tăng cường công tác đảm bảo an toàn lao động Xem xét, hoàn chỉnh lại hệ thống quản lý chất lượng theo phiên bản mới. ● Công tác sản xuất công nghiệp và vật liệu xây dựng : Thực hiện di chuyển nhà máy gạch Terazzo, kho xưởng để phục vụ công tác đầu tư dự án DSK và đưa các đơn vị sản xuất công nghiệp đi vào ổn định sản xuất. ● Công tác quản lý hành chính : Hoàn thành viêc niêm yết cổ phiếu của công ty trên sàn chứng khoán để minh bạch hoá tình hình tài chính,nâng cao tính thanh toán cổ phiếu nhằm quảng bá rộng rãi thương hiệu Vinaconex1. Đổi mới sắp xếp cơ cấu tổ chức theo hướng tinh gọn, chuyên nghiệp, áp dụng triệt để và không ngừng cải tiến hệ thống quản lý chất lượng ISO 9001: 2000, nâng cao hiệu quả công tác quản lý, điều hành. Tiếp tục xây dựng, kiện toàn tổ chức Công ty hướng tới hoạt động theo mô hình công ty mẹ công ty con. Thực trạng ứng dụng công nghệ thông tin tại công ty cổ phần xây dựng Vinaconex1 Công ty cổ phần xây dựng Vinaconex 1 là một công ty hàng đầu trong lĩnh vực xây dựng các công trình xây dựng và tư vấn thiết kế công trình. Do đặc trưng hoạt động trong lĩnh vực này trước đây công ty chưa chú trọng đến việc ứng dụng công nghệ thông tin để tăng hiệu quả lao động và quản lý. Qua thời gian thực tập tại công ty, em đã có thời gian khảo sát thực trạng và những kế hoạch tương lai của công ty để ứng dụng công nghệ thông tin. Các ứng dụng công nghệ thông tin tại công ty cổ phần xây dựng Vinaconex1 Hiện tại tất cả các phòng ban trong công ty đều được trang bị máy tính và có kết nối với mạng Internet. Tuy nhiên tuỳ thuộc từng phòng ban mà kỹ năng sử dụng máy tính của nhân viên khác nhau. Phòng tổ chức hành chính: nhân viên phòng được trang bị mỗi người một máy tính. Do chức năng của phòng là tổ chức bộ máy quản lý nhân lực và có kế hoạch đào tạo đội ngũ cán bộ công nhân. Quản lý điều hành công tác văn thư đánh máy lưu trữ tài liệu hành chính quản trị… nên nhân viên trong phòng chỉ sử dụng thành thạo phần mềm Microsoft Office. Việc quản lý và lưu trữ giấy tờ, hồ sơ vẫn phải lưu trữ thủ công. Phòng đầu tư và phòng kỹ thuật thi công: Nhân viên phòng được trang bị mỗi người một máy tính và sử dụng thành thạo phần mềm Microsoft Office, Auto Cad. Vì nhân viên phòng hầu hết có trình độ cử nhân và kỹ sư xây dựng, nên có khả năng sử dụng máy tính và các phần mềm khác tốt. Phòng tài chính kế toán: Phòng tài chính kế toán có chức năng thực hiện kế toán, lập và theo dõi sổ sách kế toán, hỗ trợ các phòng ban về thủ tục hành chính cụ thể như sau: ghi chép, phản ánh các dữ liệu kế toán; thông tin, báo cáo, chuyển tin các số liệu kế toán cho Giám đốc Công ty biết tình hình tài chính của Công ty và đơn vị. Nhân viên trong phòng này được trang bị mỗi người một máy tính và có thể sử dụng thành thạo phần mềm Microsoft Office. Kế hoạch ứng dụng công nghệ thông tin tại công ty cổ phần xây dựng Vinaconex1 Ban lãnh đạo công ty nhận thấy, trong thời đại ngày nay các doanh nghiệp đang tăng cường ứng dụng công nghệ thông tin vào trong quản lý và sản xuất kinh doanh. Qua nghiên cứu, ban lãnh đạo cũng nhận thấy trình độ sử dụng tin học của nhân viên trong công ty là chưa cao, máy tính có cấu hình thấp. Nếu triển khai nhiều phần mềm thì yếu tố hạ tầng công nghệ và con người còn chưa đáp ứng được yêu cầu. Vì vậy, trong tương lai ban lãnh đạo có kế hoạch xây dựng các hệ thống thông tin quản lý nhân sự, hệ thống thông tin quản lý hợp đồng, mua sắm phần mềm kế toán, từng bước nâng cấp mua mới máy tính trong công ty. Bên cạnh đó ban lãnh đạo đã có kế hoạch đào tạo để nâng cao trình độ của cán bộ công nhân viên khi các dự án này được triển khai. Ngoài ra, công ty còn có kế hoạch tổ chức phòng Tin học để quản lý máy tính trong công ty, quản trị và xây dựng trang web cho công ty Giải pháp tin học hoá cho bài toán quản lý nhân sự Từ những kết quả khảo sát thực trạng ứng dụng công nghệ thông tin tại công ty Cổ phần Vinaconex 1 nói chung và phòng Tổ chức hành chính nói riêng, em quyết định lựa chọn đề tài “Xây dựng hệ thống thông tin quản lý nhân sự”. Lý do chọn đề tài Trong thời gian đến khảo sát tại công ty cổ phần xây dựng Vinaconex1 vừa qua, em đã có điều kiện nghiên cứu và tìm hiểu kỹ nhiệm vụ, công việc của nhân viên phòng tổ chức hành chính trong công ty. Thực tế hiện nay việc quản lý nhân sự chỉ đuợc xây dựng và quản lý trên Excel gây khó khăn rất nhiều cho cán bộ quản lý nhân sự như: theo dõi và cập nhật hệ số đánh giá năng suất lao động cho cán bộ nhân viên vẫn chỉ thực hiện thủ công trên giấy. Sau đó hàng tháng nhân viên phòng Tổ chức hành chính mới cập nhật vào Excel; Việc tính lương thực hiện trên bảng tính của chương trình Excel; Nhân viên phòng Tổ chức hành chính không thể xuất báo cáo về tình trạng học vấn, bằng cấp, báo cáo về quá trình công tác của nhân viên theo yêu cầu của Ban giám đốc nếu được yêu cầu. Nội dung và mục đích của đề tài Trước những khó khăn nêu trên em quyết định chọn đề tài “Xây dựng hệ thống thông tin quản lý nhân sự tại công ty cổ phần xây dựng Vinaconex1” để làm đề tài thực tập tốt nghiệp với mục đích là xây dựng hệ thống thông tin phù hợp với yêu cầu của công tác quản lý nhân sự. Với đề tài này sẽ giúp công ty tiết kiệm nhiều chi phí và thời gian cho công tác quản lý nhân sự, đáp ứng nhanh chóng nhu cầu thông tin về cán bộ nhân viên của lãnh đạo Công ty. Trong giai đoạn hiện nay, số lượng nhân viên của Công ty ngày càng tăng, do vậy yêu cầu đặt ra phải tiến hành quản lý nhân viên của Công ty chuyên nghiệp hơn và phải đảm bảo được các yêu cầu sau đây: Quản lý cán bộ, công nhân + Hồ sơ nhân sự (bao gồm các thông tin về bản thân như: Họ tên, ngày tháng năm sinh, quê quán, chứng minh thư nhân dân, trình độ học vấn, quan hệ gia đình...) + Bổ nhiệm, miễn nhiệm + Theo dõi ký kết hợp đồng lao động mới, chấm dứt hợp đồng lao động. Hệ thống báo cáo của phần mềm + Các báo cáo chất lượng cán bộ (Kỹ sư, cử nhân) + Báo cáo chất lượng công nhân (ngành đào tạo, hệ số lương, bậc lương...) + Báo cáo quá trình công tác của cán bộ, công nhân viên Hệ thống tra cứu + Tra cứu theo trình độ chuyên môn + Tra cứu theo loại hợp đồng tuyển dụng + Tra cứu thông tin về nhân sự Hạ tầng công nghệ và các yếu tố liên quan Ngoài những yêu cầu trên đối với phần mềm quản lý nhân sự của cán bộ phòng tổ chức hành chính bên cạnh đó còn phải xem xét đến hạ tầng công nghệ và các yếu tố liên quan. Phòng tổ chức hành chính có đủ các yếu tố về hạ tầng công nghệ khi triển khai hệ thống thông tin quản lý nhân sự, mỗi nhân viên một máy tính và có kết nối mạng Internet. Bên cạnh đó do trình độ sử dụng tin học của nhân viên phòng này còn chưa cao nên cán bộ phòng có yêu cầu về giao diện của phần mềm phải thân thiện, dể hiểu, và dễ sử dụng. CHƯƠNG 2 PHƯƠNG PHÁP LUẬN XÂY DỰNG HỆ THỐNG THÔNG TIN QUẢN LÝ NHÂN SỰ Tổng quan về hệ thống thông tin Ngày nay khoa học công nghệ ngày càng phát triển mạnh mẽ, hệ thống thông tin là một khái niệm không còn mới mẻ đối với các doanh nghiệp. Để tăng năng suất lao động, tiết kiệm thời gian, chi phí trong quản lý cũng như trong các hoạt động sản xuất kinh doanh thì các doanh nghiệp luôn phải quan tâm và có chiến lược để phát triển hệ thống thông tin. Vậy thế nào là một hệ thống thông tin? Khái quát về hệ thống thông tin Khái niệm : Hệ thống thông tin là một tập hợp những con người, các thiết bị phần cứng, phần mềm, dữ liệu… thực hiện hoạt động thu thập, lưu trữ, xử lý và phân phối thông tin trong một tập hợp các ràng buộc được gọi là môi trường. Đầu vào (Inputs) của hệ thống thông tin được lấy từ các nguồn (Sources) và được xử lý bởi hệ thống sử dụng nó cùng với các dữ liệu đã được xử lý từ trước. Kết quả xử lý (Outputs) được chuyển đến các đích (Destination) hoặc cập nhật vào kho dữ liệu (Storage). Nguồn Thu thập Xử lý và lưu trữ Kho dữ liệu Phân phát Đích Hình 2.1: Mô hình hệ thống thông tin Phân loại hệ thống thông tin Hai cách phân loại hệ thống thông tin trong các tổ chức. Đó là cách lấy mục đích phục vụ của thông tin đầu ra để phân loại và một cách lấy nghiệp vụ mà nó phục vụ để phân loại. Phân loại hệ thống thông tin theo mục đích phục vụ của thông tin đầu ra: Theo cách phân loại này thì hệ thống thông tin được chia ra làm năm loại: Hệ thống thông tin xử lý dao dịch, hệ thống thông tin quản lý (MIS), hệ thống thông tin trợ giúp ra quyết định (DSS), hệ chuyên gia (ES) và hệ thống thông tin tăng cường khả năng cạnh tranh (ISCA). Hệ thống thông tin xử lý giao dịch TPS (Transaction Processing System): chức năng là xử lý các dữ liệu đến từ các giao dịch mà tổ chức thực hiện với khách hàng, với nhà cung cấp, những người cho vay, hoặc với nhân viên của tổ chức đó. Hệ thống thông tin xử lý giao dịch có nhiệm vụ tập hợp tất cả các dữ liệu, từ đó cho phép theo dõi mọi hoạt động của tổ chức và hỗ trợ các hoạt động ở mức tác nghiệp. Hệ thống thông tin quản lý MIS (Management Information System): là hệ thống thông tin trợ giúp hoạt động quản lý của tổ chức ở mức điều khiển tác nghiệp, điều khiển quản lý, hoặc lập kế hoạch chiến lược. Hệ thống này tạo ra báo cáo cho các nhà quản lý một cách định kỳ hoặc theo yêu cầu. Vì vậy hệ thống này dựa vào cơ sở dữ liệu được tạo ra từ hệ thống thông tin xử lý giao dịch và các nguồn dữ liệu từ bên ngoài tổ chức. Hệ thống thông tin quản lý nhân sự là hệ thống thông tin xử lý giao dịch vì cho phép lưu trữ dữ liệu về tình trạng cán bộ công nhân viên tại công ty Cổ phần xây dựng Vinaconex 1 như: trình độ chuyên môn, bằng cấp, quá trình làm việc, các vị trí công tác, địa điểm và thời gian làm việc tại các công trình khác nhau, theo dõi hệ số lương cơ bản và mức lương năng suất lao động, hệ số phụ cấp chức vụ, hệ số phụ cấp trách nhiệm… Các thông tin này luôn thay đổi trong suốt quá trình công tác của cán bộ công nhân viên trong công ty. Tuy nhiên hệ thống thông tin quản lý nhân sự phải có chức năng đưa ra báo cáo định kỳ về cán bộ công nhân viên trong công ty cho ban quản lý nên hệ thống này phải tổng hợp được dữ liệu và xử lý để lên báo cáo. Vì vậy đây cũng là hệ thống thông tin quản lý. Hệ thống trợ giúp ra quyết định DSS (Decision Support System): đây là hệ thống thông tin trợ giúp các hoạt động ra quyết định cho nhà quản lý. Hệ thống thông tin trợ giúp ra quyết định cung cấp thông tin cho người ra quyết định xác định rõ tình hình mà một quyết định cần phải ra, và phải có khả năng mô hình hóa để phân lớp, đánh giá các giải pháp. Hệ thống chuyên gia ES (Expert System): là sự mở rộng của hệ thống đối thoại trợ giúp ra quyết định có tính chuyên gia. Tuy nhiên hệ thống này có sử dụng một số kỹ thuật trí tuệ nhân tạo. Hệ thống thông tin tăng cường khả năng cạnh tranh ISCA (Information System for Competitive Advantage): hệ thống này dùng để phục vụ người sử dụng là những người ngoài tổ chức như: khách hàng, nhà cung cấp, và có thể là tổ chức khác. Đây là hệ thống thông tin chiến lược vì hệ thống thông tin cạnh tranh là công cụ để thực hiện các ý đồ chiến lược. Phân loại hệ thống thông tin trong tổ chức doanh nghiệp: Các hệ thống thông tin trong tổ chức được phân loại theo các cấp quản lý, ở mỗi cấp quản lý lại được phân chia nhỏ theo nghiệp vụ. Hệ thống thông tin được phân chia cụ thể như bảng dưới đây: Tài chính chiến lược Marketing chiến lược Nhân lực chiến lược Hệ thống thông tin văn phòng Kinh doanh và sản xuất chiến lược Tài chính chiến thuật Marketing chiến thuật Nhân lực chiến thuật Kinh doanh và sản xuất chiến thuật Tài chính tác nghiệp Marketing tác nghiệp Nhân lực tác nghiệp Kinh doanh và sản xuất tác nghiệp Bảng 2.1 Phân loại hệ thống thông tin theo lĩnh vực và các mức ra quyết định (Nguồn:Giáo trình Hệ thống thông tin quản lý - trang 27 Tác giả: TS. Trương Văn Tú – TS. Trần Thị Song Minh) Các mô hình biểu diễn hệ thống thông tin Tuỳ thuộc vào từng đối tượng trong tổ chức như: nhà quản lý, người sử dụng, cán bộ kỹ thuật, họ sẽ mô tả về hệ thống thông tin theo một mô hình khác nhau. Vì vậy có ba mô hình để miêu tả hệ thống thông tin đó là: mô hình logic, mô hình vật lý ngoài, mô hình vật lý trong. Mô hình logic (dưới góc nhìn của nhà quản lý): mô tả hệ thống làm gì( trả lời cho câu hỏi cái gi? và để làm gì?): gồm có dữ liệu mà nó thu thập, xử lý mà nó phải thực hiện, các kho để chứa kết quả hoặc dữ liệu lấy ra cho các xử lý và những thông tin mà hệ thống sản sinh ra. Mô hình vật lý ngoài (trả lời cho câu hỏi cái gì ở đâu? và khi nào?): tập trung vào những khía cạnh nhìn thấy được của hệ thống như các vật mang dữ liệu và vật mang kết quả, hình thức của đầu vào và của đầu ra, phương tiện để thao tác với hệ thống, những dịch vụ, bộ phận, con người và vị trí công tác trong hoạt động xử lý, các thủ tục thủ công, các yếu tố về địa điểm thực hiện xử lý dữ liệu, thời gian của hệ thống. Mô hình vật lý trong: (trả lời cho câu hỏi như thế nào?): mô hình này mô tả các khía cạnh vật lý của hệ thống thông tin dưới cái nhìn của kỹ thuật viên. Đó là các thông tin như loại trang thiết bị được sử dụng, dung lượng kho lưu trữ, tốc độ xử lý của thiết bị, tổ chức vật lý của thiết bị trong kho chứa, cấu trúc của chương trình và ngôn ngữ thực hiện. Tổng quan về hệ thống thông tin quản lý nhân sự Con người là nguồn lực, tài sản quan trọng của mỗi tổ chức doanh nghiệp. Sự phát triển, thành công của mỗi tổ chức, doanh nghiệp phụ thuộc rất nhiều vào đội ngũ cán bộ nhân viên của tổ chức đó. Vì vậy công tác quản lý nhân sự đóng vai trò to lớn đối với sự tồn tại và phát triển của tổ chức. Hệ thống thông tin quản lý nhân sự tại công ty Cổ phần xây dựng Vinaconex1 được xây dựng dựa trên chủ trương ứng dụng công nghệ thông tin của ban Lãnh đạo Công ty có những chức năng chính như sau: Quản lý cán bộ, công nhân (Quản lý nhân sự) + Hồ sơ nhân sự (Bao gồm các thông tin về bản thân như: Họ tên, ngày tháng năm sinh, quê quán, hộ khẩu thường trú, chứng minh thư nhân dân, trình độ học vấn, quan hệ gia đình, Đảng,...) + Tiếp nhận, điều động, thuyên chuyển công tác,... + Bổ nhiệm, miễn nhiệm cán bộ công nhân viên. + Xếp lương, nâng lương, nâng bậc cán bộ, công nhân viên hàng năm. + Theo dõi ký kết hợp đồng lao động mới, hợp đồng lao động hết hạn, chấm dứt hợp đồng lao động. Tiền lương: theo dõi quá trình nâng bậc lương của cán bộ, công nhân viên trong công ty. Hệ thống báo cáo: + Báo cáo chất lượng cán bộ (Kỹ sư, cử nhân) + Báo cáo quá trình công tác của cán bộ, nhân viên + Báo cáo theo dõi hợp đồng lao động ký kết với cán bộ, nhân viên + Báo cáo thông tin cá nhân của từng cán bộ, công nhân viên Hệ thống tra cứu + Tra cứu theo trình độ chuyên môn + Tra cứu theo loại hợp đồng tuyển dụng + Tra cứu thông tin về nhân sự Phương pháp phát triển hệ thống thông tin Trong thực tế phát triển hệ thống thông tin người ta dùng một số phương pháp sau: Phương pháp phát triển nguyên mẫu Theo phương pháp này việc phát triển hệ thống thông tin là việc sử dụng phương pháp thử sai để xác định xem hệ thống đang tồn tại hoạt động như thế nào? Có những yếu điểm gì cần phải khắc phục? Những biện pháp dùng cho hệ thống thông tin mới có đảm bảo được cho hệ thống thông tin mới hoạt động tốt không? Thực chất khi nhân viên phát triển hệ thống có những điều chỉnh cho hệ thống mới, họ phải trao đổi với người sử dụng và đối chiếu với hệ thống đang tồn tại. Nếu người sử dụng chấp nhận hệ thống thông tin mới thì công việc phát triển hệ thống thông tin hoàn thành. Nếu không nhân viên phát triển hệ thống phải tiếp tục điều chỉnh hệ thống cũ và phải trao đổi với người dùng đến khi họ chấp nhận hệ thống mới. Nhân viên phát triển hệ thống phải thường xuyên làm việc với người sử dụng cuối cùng trong quá trình thử sai để xem người sử dụng có chấp nhận hệ thống thông tin mới không? Hay việc phát triển hệ thống thông tin này có phù hợp với yêu cầu của người sử dụng không? Ưu điểm của phương pháp này là: không tốn thời gian, đem lại hiểu quả cao, phù hợp với người sử dụng cuối cùng, thích hợp cho phát triển hệ thống thông tin có cấu trúc không quá phức tạp. Tuy nhiên phương pháp này có một số nhược điểm như sau: do không theo các quy trình phát triển hệ thống thông tin phân tích, thiết kế, lập trình, thử nghiệm, triển khai, hướng dẫn sử dụng, bảo trì nên không thể dùng phương pháp này để phát triển những hệ thống thông tin phức tạp. Phương pháp vòng đời phát triển hệ thống SDLC (System Development Life Cycle) Đây là phương pháp ra đời sớm nhất và phổ biến cho việc phát triển một hệ thống thông tin trong tổ chức. Phương pháp này bao gồm các giai đoạn cơ bản mà nhân viên phải tuân thủ như: Giai đoạn 1: Đánh giá yêu cầu Giai đoạn 2: Phân tích chi tiết Giai đoạn 3: Thiết kế logic Giai đoạn 4: Đề xuất giải pháp Giai đoạn 5: Thiết kế vật lý ngoài Giai đoạn 6: Thực hiện kỹ thuật Giai đoạn 7: Cài đặt Giai đoạn 8: Khai thác và đánh giá Phương pháp phát triển nhanh hệ thống thông tin Phương pháp này được James Martin đưa ra vào năm 1991. Phương pháp này sử dụng hệ thống ban đầu và công cụ dựa trên máy tính. Những người sử dụng hệ thống, các phân tích viên và chuyên gia sẽ tác động vào hệ thống cũ để cho ra đời hệ thống mới. Đề tài “Xây dựng hệ thống thông tin quản lý nhân sự tại công ty Cổ phần xây dựng Vinaconex 1, em sử dụng phương pháp vòng đời phát triển hệ thống để xây dựng hệ thống thông tin cho công ty. Bản chất của công việc quản lý nhân sự và tính lương là một công việc phức tạp, vì thế phân tích viên phải xây dựng hệ thống thông tin theo từng bước nhằm khảo sát hệ thống hiện tại để nắm rõ quy trình, nghiệp vụ. Sau đó phải thiết kế chi tiết hệ thống thông tin để giai đoạn thực hiện kỹ thuật nhân viên sẽ không gặp phải những khó khăn do chưa nghiên cứu kỹ hệ thống. Hơn nữa tại công ty, chưa có phần mềm quản lý nhân sự nên không thể dùng hai phương pháp còn lại và việc đào tạo và hướng dẫn người dùng là quan trọng vì nhân viên chưa dùng phần mềm quản lý nhân sự nào khác trước đây. Các giai đoạn của phát triển hệ thống thông tin Các công đoạn phát triển hệ thống thông tin có thể chia làm 7 giai đoạn hoặc 4 giai đoạn. Do phạm vi nghiên cứu và thời gian thực tập có hạn nên các công đoạn phát triển hệ thống thông tin em ứng dụng để thực hiện đề tài được chia làm 4 giai đoạn. Giai đoạn đánh giá yêu cầu Giai đoạn này có mục đích là cung cấp cho lãnh đạo tổ chức hoặc hội đồng giám đốc những dữ liệu đích thực để ra quyết định về thời cơ, tính khả thi và hiệu quả của một dự án phát triển hệ thống. Giai đoạn này được thực hiện nhanh nhất trong 4 giai đoạn và không đòi hỏi chi phí lớn. Bao gồm các công đoạn sau: 1. Lập kế hoạch đánh giá yêu cầu 2. Làm rõ yêu cầu 3. Đánh giá khả năng thực thi 4. Chuẩn bị và trình bày báo cáo đánh giá yêu cầu Giai đoạn phân tích chi tiết Giai đoạn này được tiến hành khi có sự đánh giá thuận lợi về yêu cầu. Mục đích chính của giai đoạn này là hiểu rõ các vấn đề của hệ thống đang nghiên cứu, và xác định những nguyên nhân đích thực của những vấn đề đó, xác định những ràng buộc và những đòi hỏi áp đặt của hệ thống và những mục tiêu mà hệ thống thông tin mới cần đạt được. Trên cơ sở phân tích chi tiết đó sẽ tiến hành lập báo cáo phân tích chi tiết, dựa vào báo cáo sẽ quyết định tiếp tục hay thôi phát triển một hệ thống thông tin mới. Giai đoạn phân tích chi tiết bao gồm những công đoạn sau đây: 1. Lập kế hoạch phân tích chi tiết 2. Nghiên cứu môi trường của hệ thống đang tồn tại 3. Nghiên cứu hệ thống thực tại 4. Đưa ra chuẩn đoán và xác định các yếu tố giải pháp 5. Đánh giá lại tính khả thi. 6. Thay đổi đề xuất của dự án 7. Chuẩn bị và trình bày báo cáo phân tích chi tiết Trong giai đoạn này phân tích viên phải tiến hành mô hình hoá hệ thống thông tin để thấy được những chức năng, ưu điểm của hệ thống thông tin mới so với hệ thống thông tin cũ. Các công cụ dùng để mô hình hoá hệ thống thông tin: v Sơ đồ chức năng kinh doanh BFD: Sơ đồ chức năng kinh doanh mô tả mối quan hệ phân cấp chức năng các thực thể từ cao xuống thấp. Trong đó một thực thể có thể có nhiều thực thể con và thực thể dưới là con của thực thể đứng trên . v Sơ đồ luồng dữ liệu DFD Sơ đồ luồng dữ liệu dùng để mô tả hệ thống thông tin. Trên sơ đồ chỉ bao gồm các luồng dữ liệu,các xử lý,các lưu trữ dữ liệu,nguồn và đích nhưng không quan tâm đến thời điểm, nơi và đối tượng chịu trách nhiệm xử lý. Sơ đồ luông dữ liệu chỉ mô tả hệ thống thông tin làm gì và để làm gì.Một số ký pháp dùng cho sơ đồ luồng dữ liệu được mô tả trong bảng dưới đây: Tên người/bộ phận phát/nhận tin Tên tiến trình xử lý Tên tệp dữ liệu Thực thể Kho dữ liệu Dòng dữ liệu Tiến trình xử lý Cơ sở dữ kiệu hệ thống 3.2 Tính toán và tổng hợp lương Bảng lương Ban lãnh đạo Thực thể Ký pháp Ý nghĩa Ví dụ Bảng 2.2. Ký pháp sử dụng trong sơ đồ luồng dữ liệu Giải thích: Ví dụ trên minh hoạ một tiến trình trong quản lý lưong của hệ thống thông tin quản lý nhân sự. Dữ liệu về các hệ số lương của cán bộ, nhân viên được lấy ra từ kho cơ sở dữ liệu hệ thống, sau đó sẽ tính toán và tổng hợp lương từ đó có được bảng lương hàng tháng cung cấp cho ban lãnh đạo để theo dõi tình hình lương của nhân viên trong công ty. v Sơ đồ luồng thông tin: Sơ đồ luồng thông tin dùng để mô tả hệ thống thông tin theo cách thức động. Tức là mô tả sự di chuyển của dữ liệu, việc xử lý, việc lưu trữ trong thế giới vật lý bằng sơ đồ. Để biểu diễn sơ đồ luồng thông tin người ta sử dụng một số ký pháp cơ bản như sau: Xử lý thủ công Xử lý kết hợp người máy Cập nhật hệ số lương Xử lý cập nhật hệ số lương khi có thông tin thay đổi hệ số lương cán bộ, nhân viên tại công ty Lưu trữ hồ sơ nhân sự Đối với hệ thống thông tin cũ, hồ sơ nhân sự được lưu trữ thủ công Ký pháp Ý nghĩa Ví dụ Xử lý tin học hoá hoàn toàn Tính lương Xử lý tính lương cho cán bộ, nhân viên cuối mỗi tháng Kho lưu trữ dữ liệu thủ công Kho dữ liệu hồ sơ nhân sự khi chưa có hệ thống thông tin mới Hồ sơ nhân sự Dữ liệu lương Báo cáo nhân sự Kho lưu trữ dữ liệu đã được tin học hóa Kho dữ liệu hồ sơ nhân sự khi triển khai hệ thống thông tin mới Dòng thông tin Báo cáo nhân sự theo yêu cầu của ban lãnh đạo Bảng 2.3. Ký pháp sử dụng trong sơ đồ luồng thông tin Giai đoạn thiết kế Mục đích của giai đoạn này là thiết kế logic, và thiết kế vật lý. Thiết kế logic: Thiết kế logic nhằm xác định tất cả các thành phần logic của hệ thống thông tin, cho phép loại bỏ được những vấn đề của hệ thống thực tế và đạt được những mục tiêu thiết lập ở giai đoạn trước. Mô hình logic của hệ thống mới bao hàm thông tin mà hệ thống mới sẽ sản sinh ra (nội dung của Outputs), nội dung của cơ sở dữ liệu (các tệp, các quan hệ giữa các tệp), các xử lý và hợp thức hoá phải thực hiện (các xử lý) và các dữ liệu sẽ được nhập vào (Các inputs). Sản phẩm của giai đoạn thiết kế logic là mô hình hệ thống mới bằng các sơ đồ luồng dữ liệu, các sơ đồ cáu trúc dữ liệu, các sơ đồ phân tích tra cứu và các phích logic của từ điển hệ thống. Có hai phương pháp để thiết kế cơ sở dữ liệu logic. Một là thiết kế cơ sở dữ liệu logic từ các thông tin đầu ra. Hai l._.à thiết kế cơ sở dữ liệu bằng phương pháp mô hình hoá. Thiết kế cơ sở dữ liệu logic từ các thông tin đầu ra Xác định các tệp cơ sở dữ liệu trên cơ sở thông tin đầu ra của hệ thống là phương pháp cổ điển và cơ bản của việc thiết kế cơ sở dữ liệu. Khi thiết kế cơ sở dữ liệu theo phương pháp này phải tuân theo những bước sau: Bước 1: Liệt kê tất cả các thông tin đầu ra. Xác định nội dung, khối lượng, nơi nhận, tần xuất của chúng. Khi xác định các thông tin đầu ra phải lưu ý các quy tắc sau: mỗi thông tin đầu ra bao gồm các phần tử thông tin được gọi là các thuộc tính. Phải liệt kê đầy đủ các thuộc tính này trên mỗi thông tin đầu ra và phải xác định các phần tử thông tin thuộc loại nào: + Đánh dấu các thuộc tính lặp. Ký hiệu là R + Đánh dấu các thuộc tính thứ sinh – là những thuộc tính tính toán ra hoặc suy ra từ những thuộc tính khác + Gạch chân các thuộc tính khoá – là thuộc tính để xác định duy nhất thông tin đầu ra đó. + Còn lại là các thuộc tính cơ sở. Ví dụ: trong bài toán quản lý nhân sự, có bảng dữ liệu đầu ra bảng lương nhân viên và hồ sơ nhân viên Loại thuộc tính Tên thuộc tính thuộc tính khoá Mã nhân viên thuộc tính thứ sinh Tổng tiền lương thuộc tính lặp Mã hợp đồng thuộc tính cơ sở Tên nhân viên Sau khi xác định xem các thuộc tính thuộc loại nào, ta tiến hành loại bỏ các thuộc tính thứ sinh ra khỏi danh sách, chỉ để lại các thuộc tính cơ sở, xem xét loại bỏ những thuộc tính không có ý nghĩa trong quản lý. Bước 2: Xác định các tệp cần thiết cung cấp dữ liệu cho việc tạo ra từng đầu ra Bước 3: tiến hành chuẩn hoá theo ba mức. Bước 4: Xác định kiểu các thuộc tính, độ rộng các trường Bước 5: Xác định liên hệ logic giữa các tệp và xác định sơ đồ cấu trúc dữ liệu. Thiết kế cơ sở dữ liệu bằng phương pháp mô hình hoá Đây là một phương pháp để xây dựng các tệp cơ sở dữ liệu dựa vào mô hình quan hệ thực thể. Dựa vào tài liệu tìm hiểu về hệ thống thông tin cũ và xác định những yêu cầu chức năng của hệ thống thông tin mới, phân tích viên sẽ tiến hành mô hình hoá hệ thống thông tin mới bằng mô hình quan hệ thực thể. Sau đó sẽ dựa trên các nguyên tắc để chuyển đổi từ mô hình quan hệ thực thể sang mô hình cấu trúc dữ liệu.Vì vậy phân tích viên phải quan tâm đến một số khái niệm và nguyên tắc sau: Các khái niệm cơ bản: + Thực thể: trong mô hình logic dữ liệu được dùng để biểu diễn những đối tượng liên quan đến hệ thống thông tin. Đó có thể là những đối tượng cụ thể hoặc trừu tượng trong thế giới thực mà ta muốn lưu trữ thông tin về chúng. Nhân viên Thực thể: Ví dụ: Trong hệ thống thông tin quản lý nhân sự, yêu cầu phải quản lý được tình trạng cán bộ, nhân viên trong công ty. Khi đó nhân viên trong công ty chính là một thực thể. + Liên kết: trong một tổ chức hoạt động thống nhất thì các thực thể không thể tồn tại độc lập với nhau mà các thực thể phải có mối quan hệ qua lại với nhau. Vì vậy khái niệm liên kết được dùng để thể hiện những mối quan hệ qua lại giữa các thực thể. Ví dụ: Thực thể nhân viên và phòng ban có mối quan hệ qua lại với nhau. Một nhân viên trong công ty phải thuộc một phòng ban nhất định. Nhân viên Phòng ban thuộc Tuy nhiên nếu chỉ liên kết giữa các thực thể trong một hệ thống thì chưa đủ, mà người phân tích viên phải quan tâm đến mức độ của các liên kết. Nghĩa là phải biết có bao nhiêu lần xuất hiện của thực thể nhân viên tương tác với mỗi lần xuất hiện của thực thể phòng ban và ngược lại. Có ba loại liên kết đó là: 1@1: liên kết loại một - một nghĩa là một lần xuất hiện của thực thể A tương ứng với một lần xuất hiện của thực thể B và ngược lại. 1@N: liên kết loại một - nhiều nghĩa là mỗi lần xuất hiện của thực thể A được liên kết với một hoặc nhiều của thực thể B và mỗi lần xuất hiện của thực thể B chỉ liên kết duy nhât với một lần xuất hiện của thực thể A. N@N: liên kết loại nhiều - nhiều nghĩa là mỗi lần xuất hiện của thực thể A được liên kết với một hoặc nhiều của thực thể B và mỗi lần xuất hiện của thực thể B được liên kết với một hoặc nhiều của thực thể A Đối với hai thực thể nhân viên và phòng ban, ta thấy một nhân viên chỉ thuộc một phòng ban và một phòng ban có nhiều nhân viên. Vì vậy đây là liên kết loại 1@N Nhân viên Phòng ban thuộc N 1 + Chiều của liên kết: chiều của quan hệ chỉ ra số lượng các thực thể tham gia vào quan hệ đó. Người ta chia các quan hệ ra làm ba loại: quan hệ một chiều, quan hệ hai chiều, quan hệ nhiều chiều. Việc xác định đúng số chiều của liên kết đảm bảo cho phân tích viên mô hình hoá hệ thống thông tin bằng sơ đồ quan hệ thực thể được chính xác, và nên mô tả ở quan hệ một chiều, hai chiều, ba chiều để việc chuyển đổi từ mô hình quan hệ thực thể sang mô hình cấu trúc dữ liệu được chính xác và đơn giản. Từ ví dụ trên ta thấy mối quan hệ giữa nhân viên và phòng ban là quan hệ hai chiều. + Thuộc tính: dùng để mô tả các đặc trưng của một thực thể hoặc một quan hệ để xác định chính xác các thực thể. Ngừơi ta chia ra làm ba loại thuộc tính: thuộc tính định danh, thuộc tính quan hệ, thuộc tính mô tả. Trong đó thuộc tính định danh là quan trọng nhất và bắt buộc thực thể nào cũng phải có thuộc tính này để xác định duy nhất so với các thực thể khác. Ví dụ: Trong bài toán quản lý nhân sự, thực thể nhân viên có một số các thuộc tính sau: Loại thuộc tính Ví dụ Thuộc tính định danh Mã nhân viên Thuộc tính mô tả Tên nhân viên Thuộc tính quan hệ Số chứng minh thư nhân dân Thiết kế vật lý ngoài: Thiết kế vật lý ngoài bao gồm hai tài liệu kết quả cần có: trước hết là tài liệu bao chứa tất cả các đặc trưng của hệ thống mới sẽ cần cho việc thực hiện kỹ thuật, và tiếp theo là tài liệu cần thiết cho người sử dụng, nó mô tả cả phần thủ công và cả những giao diện với phần tin học hoá. Thiết kế vật lý ngoài đóng vai trò đặc biệt quan trọng vì dựa vào các tài liệu của giai đoạn này mà lập trình viên có thể lập trình theo đúng mục đích và yêu cầu của người sử dụng. Nếu không có các tài liệu mô tả hệ thống của giai đoạn này thì lập trình viên sẽ không xác định được công việc cụ thể cần phải làm để xây dựng phần mềm. Giai đoạn cài đặt và khai thác Giai đoạn này là việc chuyển đổi từ hệ thống cũ sang hệ thống mới. Để việc chuyển đổi này thực hịên với những va chạm ít nhất, phải lập kế hoạch một cách cẩn thận. Giai đoạn này bao gồm những công đoạn: 1. Lập kế hoạch cài đặt 2. Chuyển đổi 3. Khai thác và bảo trì 4. Đánh giá Cơ sở phương pháp luận về hệ quản trị cơ sở dữ liệu và ngôn ngữ lập trình trong phân tích hệ thống thông tin Ngày nay để xây dựng một phần mềm, lập trình viên có thể lựa chọn rất nhiều ngôn ngữ. Nhưng em lựa chọn ngôn ngữ lập trình Visual Basic 6.0 và hệ quản trị cơ sở dữ liệu Microsoft Access 2003 vì các ưu điểm của ngôn ngữ lập trình, và hệ quản trị cơ sở dữ liệu này cũng như sự phù hợp với yêu cầu của bài toán quản lý nhân sự tại công ty thực tập. Giới thiệu về ngôn ngữ lập trình VB 6.0 Visual Basic là ngôn ngữ lập trình để phát triển các phần mềm ứng quan nghĩa là khi thiết kế chương trình người lập trình có thể nhìn thấy ngay kết quả từng thao tác. Visual Basic gắn liền với khái niệm lập trình giao diện khi chương trình thực hiện. Visual Basic còn cho phép thực hiện chỉnh sửa nhanh chóng màu sắc, kích thước, hình dáng của các đối tượng. Đề tài “Xây dựng hệ thống thông tin quản lý nhân sự tại công ty Cổ phần xây dựng Vinaconex1” được sử dụng ngôn ngữ lập trình Visual Basic 6.0. Phiên bản này ra đời vào năm 1998 và được kế thừa những tính năng ưu việt của những phiên bản trước đấy. Đăc biệt là theo những yêu cầu đề ra phiên bản này tăng cường phương pháp giao tiếp với SQL Server. Phiên bản này cũng được bổ xung thêm nhiều công cụ và điều khiển mới cho giao tiếp với cơ sở dữ liệu, và được đánh dấu với công nghệ ADO-2.0 (phương thức truy cập dữ liệu). Giới thiệu về hệ quản trị cơ sở dữ liệu Microsoft Access 2003 Ngày nay có nhiều hệ quản trị cơ sở dữ liệu đang được dùng phổ biến như: Microsoft Access, Microsoft Visual FoxPro, Microsoft SQL Server và Oracle. Nhưng Microsoft Access vẫn đang dành được phần chia lớn trên thị trường. Phiên bản đầu tiên của Access ra đời vào năm 1989. Từ đó đến nay Access đã không ngừng được cải tiến trên thị trường và đã có các phiên bản mang số hiệu 1.0, 1.1, …7.0, Access 95, Access 97, Access 2000, Access 2002. Để “Xây dựng hệ thống thông tin quản lý nhân sự tại công ty Cổ phần xây dựng Vinaconex 1”, em lựa chọn hệ quản trị cơ sở dữ liệu Microsoft Access 2003. Microsoft Access là một bộ phận trong phần mềm Microsoft Office Professional. Các đối tượng như thực đơn, thanh công cụ, và các hộp thoại đều rất quen thuộc như các ứng dụng khác của Office, vì vậy hệ quản trị cơ sở dữ liệu này dễ dàng để sử dụng và học tập. Có thể dùng Access để phát triển các ứng dụng cho cá nhân, cho các doanh nghiệp vừa, cho nội bộ phòng ban, cho toàn công ty. Vì thế hệ quản trị cơ sở dữ liệu này vẫn đựơc dùng phổ biến và rộng rãi. Khi sử dụng Microsoft Access người dùng có thể sắp xếp, tìm kiếm và lọc dữ liệu nhanh chóng và dễ dàng bằng các lệnh truy vấn. Hơn thế nữa, người dùng có thể dùng form để đơn giản hoá việc xem và nạp dữ liệu, thiết kế các report để báo cáo thông tin, lập trình Visual Basic trong Access… CHƯƠNG 3 XÂY DỰNG HỆ THỐNG THÔNG TIN QUẢN LÝ NHÂN SỰ Phân tích yêu cầu hệ thống thông tin quản lý nhân sự tại công ty Cổ phần xây dựng Vinaconex 1 Phân tích yêu cầu hệ thống thông tin quản lý nhân sự tại công ty cổ phần xây dựng Vinaconex 1 nhằm khảo sát hệ thống thông tin đang tồn tại.Với thực trạng tin học hóa của công ty hiện nay, cụ thể là phòng tổ chức hành chính thì cán bộ phòng này có nhu cầu cấp thiết là xây dựng hệ thống thông tin quản lý nhân sự để công việc quản lý nhân sự tại công ty dễ dàng, tiết kiệm được thời gian và chi phí hơn là quản lý thủ công. Các công cụ để khảo sát hệ thống thông tin quản lý nhân sự tại công ty cổ phần xây dựng Vinaconex1 Trong thực tế, có bốn công cụ để phân tích viên tiến hành khảo sát hệ thống thông tin thực tại và yêu cầu của hệ thống thông tin mới. Đó là: phỏng vấn, nghiên cứu tài liệu, sử dụng phiếu điều tra, và quan sát. Trong thời gian thực tập tại công ty Cổ phần xây dựng Vinaconex 1, em sử dụng ba công cụ để khảo sát hệ thống thông tin quản lý nhân sự tại công ty: phỏng vấn, nghiên cứu tài liệu, quan sát. Phỏng vấn là công cụ quan trọng trong hầu hết các dự án phát triển hệ thống thông tin. Phương pháp phỏng vấn có tác dụng giúp cho phân tích viên thu được những nội dung cơ bản khái quát về hệ thống mà nội dung đó khó có thể nắm bắt khi nghiên cứu tài liệu. Các bước thực hiện phỏng vấn: + Lập danh sách và lịch phỏng vấn. Lựa chọn số lượng và loại cán bộ để phỏng vấn theo cách thức từ trên xuống. + Biết một số thông tin về người được phỏng vấn (họ tên, độ tuổi, trách nhiệm …). + Lập đề cương những nội dung cần thiết cho buổi phỏng vấn. + Xác định cách thức phỏng vấn (phi cấu trúc hay có cấu trúc ). + Gửi trước những vấn đề yêu cầu. Nghiên cứu tài liệu: đây là công cụ quan trọng nhất và được sử dụng nhiều nhất để thu thập thông tin về quản lý nhân sự tại công ty. Các tài liệu nghiên cứu gồm có: + Bản hồ sơ năng lực của công ty. + Bản báo cáo tổng kết hoạt động sản xuất kinh doanh năm 2008 và phương hướng, nhiệm vụ, các biện pháp thực hiện kế hoạch sản xuất kinh doanh năm 2009. + Hồ sơ quy định chức năng nhiệm vụ các phòng ban trong công ty. + Hồ sơ nhân sự + Quy chế phân phối tiền lương cơ quan tại công ty. Từ các tài liệu trên cho phép nghiên cứu tỉ mỉ về nhiều khía cạnh của tổ chức như: lịch sử hình thành và phát triển của tổ chức, tình trạng tài chính, các tiêu chuẩn và định mức, cấu trúc thứ bậc, vai trò nhiệm vụ của các thành viên và phòng ban, nội dung và hình dạng của các của các thông tin vào ra như bảng lương, các báo cáo về tình hình cán bộ, nhân viên trong công ty… Quan sát: công cụ này được sử dụng khi phân tích viên muốn nhìn thấy những gì không thể hiện trên tài liệu như: quan sát trình tự lưu trữ hồ sơ nhân viên khi công ty có nhân viên mới; cách thức xắp xếp, lưu trữ hồ sơ nhân viên; cách thức quản lý nhân viên bằng phần mềm Excel; các bước ký kết hợp đồng mới với nhân viên; quá trình điều động cán bộ, nhân viên… Khảo sát hệ thống thông tin quản lý nhân sự Hệ thống thông tin quản lý nhân sự xây dựng cho công ty cổ phân Vinaconex 1 có chức năng quản lý hồ sơ cán bộ và theo dõi chi tiết từng nhân viên trong công ty về tiền lương. Bảng lương hàng tháng được phòng tài chính-kế toán lập vào cuối mỗi tháng và chi trả cho công nhân viên. Tuy nhiên, trong thời gian thực tập tai phòng Tổ chức-hành chính, em có thời gian học hỏi cách lưu trữ hồ sơ cán bộ và quản lý cán bộ tại công ty, thực tế cho thấy phòng Tổ chức hành chính phải quản lý hồ sơ cán bộ, tình hình lương của từng cán bộ được cập nhật và điều chỉnh hàng tháng nếu như có sự thay đổi từ bảng lương lập tại phòng Tài chính-kế toán, tính bảo hiểm y tế và bảo hiểm xã hội cho từng nhân viên. Các chức năng của hệ thống thông tin quản lý nhân sự: Quản lý nhân sự: Hệ thống có chức năng quản lý tình trạng của mỗi nhân viên mà đặc biệt là quản lý thuyên chuyển công tác của nhân viên( điều động nội bộ) vì đặc điểm của công ty là nhân viên phải thường xuyên đi công tác khi công ty có những hợp đồng xây dựng ở các tỉnh trong cả nước, và theo dõi hạn của loại hợp đồng có thời hạn để quyết định ký kết hợp đồng mới cho cán bộ công nhân viên. Xuất báo cáo theo yêu cầu của nhà quản lý về tình hình cụ thể của nhân viên. Quản lý lương: Lưu trữ thông tin về tình hình lương, và tính lương của cán bộ công nhân viên Xuất báo cáo về lương khi có yêu cầu của nhà quản lý Cách tính lương Công ty Cổ phần xây dựng Vinaconex1 áp dụng hình thức tính lương cho nhân viên theo quy định của nhà nước. Tiền lương của nhân viên gồm hai phần đó là: Lương cơ bản và Lương năng suất. Công thức tính lương: Tổng lương = lương cơ bản + lương năng suất Khi công ty ký hợp đồng lao động với nhân viên, hệ số lương cơ bản được áp dụng theo quy định của nhà nước, hệ số này phụ thuộc vào năm công tác, kinh nghiệm của nhân viên... Ngoài ra một số nhân viên còn được hưởng hệ số phụ cấp trách nhiệm và hệ số phụ cấp chức vụ (hai hệ số này phụ thuộc vào chức vụ của nhân viên và hệ số trách nhiệm không phải tính vào lương để chi trả bảo hiểm y tế và bảo hiểm xã hội ). Như vậy công thức tính lương cơ bản như sau: Lương cơ bản = (Hệ số lương cơ bản + Phụ cấp chức vụ + Phụ cấp trách nhiệm)* Mức lương cơ bản theo thời điểm Thực tế tại công ty Cổ phần xây dựng Vinaconex1, do đặc trưng của công việc và nhiệm vụ, nhiều cán bộ công nhân viên của công ty phải thi công công trình tại các tỉnh trên cả nước. Vì vậy tuỳ thuộc vào thời gian cũng như từng giai đoạn của công trình đang thi công, trách nhiệm, chức vụ mà cán bộ, nhân viên công ty phải đảm nhận nhiệm vụ cả vào những ngày lễ, ngày nghỉ. Khi đó, cán bộ nhân viên sẽ không có khoản phụ cấp nào mà mức lương của họ sẽ được công ty thoả thuận hợp lý dựa vào mức lương năng suất lao động. Lương năng suất lao động được chia làm các mức, mỗi mức tương đương với một khoản tiền nhất định. Các mức lương năng suất lao động trong công ty: STT Nhóm chức danh Mức lương Lương năng suất lao động (Tr.đ) 1 Chủ tịch hội đồng quản trị 1 2 10.5 11.5 2 Giám đốc công ty 1 2 10.0 11.0 3 Phó giám đốc công ty, Uỷ viên hội đồng quản trị chuyên trách 1 2 7.0 8.0 4 Kế toán trưởng 1 2 6.0 6.5 5 Trưởng phòng 1 2 5.0 5.5 6 Phó trưởng phòng 1 2 4.0 4.5 7 Chỉ huy trưởng công ty hạch toán trưc tiếp 1 2 4.0 4.5 8 Phó chỉ huy trưởng công ty hạch toán trực tiếp 1 2 3.0 3.5 9 Kỹ sư, kinh tế viên; chuyên viên (có trình độ đại học trở lên) 1 2 3 4 5 1.0 1.5 2.0 2.5 3.5 10 Cán sự, kỹ thuật viên (có trình độ trung cấp, cao đẳng) 1 2 3 4 0.8 1.0 1.3 1.5 11 Nhân viên hành chính (Trình độ sơ cấp) 1 2 3 4 0.5 0.7 0.9 1.0 12 Nhân viên bảo vệ cơ quan, công trình 1 2 3 4 0.3 0.5 0.7 0.9 Bảng 3.1. Mức lương năng suất lao động Lương năng suất = Mức lương năng suất * Hệ số hoàn thành công việc Khi phòng Tổ chức hành chính nhận được bảng chấm công và đánh giá mức độ hoàn thành công việc của các nhân viên từ trưởng mỗi phòng ban trong công ty, cán bộ phụ trách quản lý hồ sơ sẽ tiến hành tập hợp bảng chấm công. Sau đó phòng tổ chức hành chính sẽ tiến hành tính lương cho nhân viên sau đó gửi bảng lương sang phòng tài chính kế toán để tính bảo hiểm y tế, bảo hiểm xã hội và chi trả lương cho nhân viên. Phòng Tổ chức hành chính chỉ theo dõi, quản lý thay đổi các hệ số lương và tính lương theo công thức trên. Phân tích chi tiết hệ thống thông tin quản lý nhân sự tại công ty cổ phần xây dựng Vinaconex1 Mục đích của giai đoạn này là xác định những mục tiêu, chức năng cần đạt được của hệ thống thông tin quản lý nhân sự tại công ty. 3.2.1. Mô hình hoá hệ thống thông tin dưới góc độ luồng thông tin Từ quá trình tìm hiểu và nghiên cứu về sơ đồ luồng thông tin ở chương II và căn cứ vào kết quả khảo sát, ta có sơ đồ luồng thông tin (IFD) của hệ thống thông tin quản lý nhân sự tại công ty cổ phần Vinaconex 1. Hồ sơ cán bộ, nhân viên Cập nhật hợp đồng lao động Cập nhật quyết định điều động nhân sự Cập nhật thông tin cá nhân Hồ sơ cán bộ, nhân viên Hợp đồng lao động mới Thống kê, tổng hợp thông tin Các loại báo cáo Nhân viên ký hợp đồng lao động mới Lãnh đạo, phòng ban liên quan Phòng tổ chức hành chính Nhân viên Thời điểm Quyết định nhân sự Lãnh đạo ký quyết định điều động Nhân viên mới ký hợp đồng lao động Hình 3.1 Sơ đồ luồng thông tin quản lý hồ sơ nhân viên Thông tin thay đổi hệ số lương Cập nhật hệ số lương Dữ liệu lương Tính lương Dữ liệu lương Thống kê, tổng hợp Báo cáo luơng Thời điểm Lãnh đạo Các phòng ban trong công ty Phòng tổ chức hành chính Cuối mỗi tháng Đầu mỗi tháng Bảng đánh giá hệ số năng suất Nhân viên Bảng lương nhân viên Hình 3.2 Sơ đồ luồng thông tin quản lý lương 3.2.2. Mô hình hoá hệ thống thông tin dưới góc độ chức năng Quản lý nhân sự Quản lý hồ sơ cán bộ, nhân viên Quản lý lương Thống kê báo cáo Quản lý thông tin cá nhân Quản lý điều động Quản lý hợp đồng Quản lý các hệ số lương Quản lý hệ số hoàn thành công việc Tính lương Báo cáo nhân sự Tổng hợp dữ liệu nhân sự Truy xuất dữ liệu nhân sự Hình 3.3 Sơ đồ BFD Giải thích: Sơ đồ BFD cho thấy chức năng của hệ thống thông tin quản lý lương gồm có: quản lý hồ sơ cán bộ, nhân viên; quản lý lương; thống kê báo cáo. Trong quản lý lương, hệ thống cập nhật sự thay đổi hệ số lương của các hệ số lương cơ bản, và mức lương năng suất. Từ đó tính toán và lên bảng lương chức danh cho từng phòng ban trong công ty, đồng thời phải báo cáo sự thay đổi các hệ số lương cho phòng tài chính kế toán. 3.2.3. Mô hình hoá hệ thống thông tin dưới góc độ luồng dữ liệu Các mô hình này cho thấy cụ thể các chức năng của hệ thống và các luồng dữ liệu, các xử lý, các lưu trữ dữ liệu, nguồn và đích. Sơ đồ DFD mức ngữ cảnh Yêu cầu báo cáo Quản lý nhân sự Phòng Tài chính kế toán Các phòng ban khác Cán bộ, nhân viên Ban lãnh đạo Thông tin thay đổi hệ số lương Báo cáo Báo cáo Yêu cầu báo cáo Các quyết định điều chuyển công tác Thông tin cá nhân Yêu cầu thông tin Hình 3.4 Sơ đồ DFD mức ngữ cảnh Giải thích Sơ đồ DFD mức ngữ cảnh của hệ thống thông tin quản lý nhân sự cho thấy sự cần thiết của hệ thống thông tin quản lý nhân sự đối với các phòng ban trong công ty, ban lãnh đạo và cán bộ, nhân viên. Các thực thể này cung cấp nguồn dữ liệu cho hệ thống. Sau khi tổng hợp dữ liệu, hệ thống thông tin quản lý nhân sự sẽ cung cấp những báo cáo về tình hình cán bộ, nhân viên trong công ty và báo cáo lương chức danh. Sơ đồ DFD mức 0 1.0 Quản lý hồ sơ cán bộ, nhân viên Bảng lương Báo cáo về nhân sự Hồ sơ cán bộ, nhân viên Dữ liệu lương chức danh Cán bộ, nhân viên quyết định điều chuyển công tác Thông tin cá nhân Hồ sơ cá nhân 2.0 Quản lý lương Phòng Tài chính kế toán Thông tin thay đổi hệ số lương, bảng lương Yêu cầu thông tin Thông tin về các hệ số lương Lãnh đạo Yêu cầu phiếu lương Báo cáo Các phòng ban khác Yêu cầu 3.0 thống kê báo cáo Thông tin về cán bộ, nhân viên Cán bộ, nhân viên Hình 3.5 Sơ đồ DFD mức 0 Giải thích Sơ đồ DFD mức 0 cho thấy toàn bộ chức năng chính của hệ thống thông tin quản lý nhân sự gồm có: Quản lý hồ sơ cán bộ, nhân viên; Quản lý lương chức danh; Thống kê, báo cáo. Bên cạnh đó, sơ đồ DFD mức 0 còn cho thấy các thực thể cung cấp nguồn thông tin vào cho hệ thống thông tin quản lý nhân sự, các kho lưu trữ dữ liệu, các thực thể nhận thông tin ra của hệ thống. Sơ đồ DFD mức 1 của hệ thống thông tin quản lý nhân sự ● Sơ đồ DFD mức 1 của tiến trình quản lý hồ sơ cán bộ, nhân viên Hồ sơ cá nhân 1.1 Quản lý thông tin cá nhân 1.2 Quản lý điều động 1.3 Quản lý hợp đồng Hồ sơ cán bộ, nhân viên Lãnh đạo Hợp đồng lao động Nhân viên Quyết định điều chuyển công tác Nhân viên Hình 3.6 Sơ đồ DFD mức 1 của tiến trình quản lý hồ sơ nhân viên Giải thích Việc quản lý hồ sơ nhân viên là chức năng quan trọng nhất của hệ thống thông tin quản lý nhân sự. Khi nhân viên hết hạn hợp đồng lao động, phòng tổ chức hành chính sẽ báo cáo lên lãnh đạo, sau đó nếu nhân viên này ký tiếp hợp đồng lao động với công ty thì nhân viên phòng tổ chức hành chính sẽ tiếp tục theo dõi hợp đồng lao động của nhân viên đó. Khi lãnh đạo quyết định điều động nhân viên cũ công tác tại một phòng ban mới, chức vụ mới, thì hệ thống cập nhật và quản lý thời gian định điều động đó có hiệu lực. Khi nhân viên mới ký hợp đồng lao động với công ty, thì nhân viên phòng tổ chức hành chính sẽ cập nhật hồ sơ nhân viên, theo dõi và quản lý các thông tin cá nhân của nhân viên đó. ● Sơ đồ DFD mức 1 của tiến trình quản lý lương Bảng lương Phòng Tài chính kế toán 2.1 Kiểm tra, sửa các hệ số lương 2.3 Tính lương Thông tin về cán bộ nhân viên Thông tin thay đổi hệ số lương Kho dữ liệu lương Hệ số lương hiện mới 2.2 Quản lý hệ số hoàn thành công việc Trưởng các phòng ban Phòng tài chính kế toán Hệ số hoàn thành công việc Yêu cầu thông tin Hồ sơ cán bộ nhân viên Hình 3.7 Sơ đồ DFD mức 1 của tiến trình quản lý lương Giải thích: Nhân viên phòng tổ chức hành chính có nhiệm vụ theo dõi quá trình tăng bậc lương của cán bộ, nhân viên gồm có: hệ số lương cơ bản, hệ số phụ cấp chức vụ, hệ số phụ cấp trách nhiệm, và mức lương năng suất. Sau đó cập nhật vào kho dữ liệu lương và gửi thông tin thay đổi hệ số lương cho phòng tài chính kế toán. Trên cơ sở theo dõi hệ số lương hiện thời của cán bộ, nhân viên phòng tổ chức hành chính sẽ tính toán lương cho cán bộ nhân viên trong công ty. ● Sơ đồ DFD mức 1 của tiến trình thống kê báo cáo Ban lãnh đạo Các phòng ban Hồ sơ cán bộ, nhân viên 3.1 Lấy dữ liệu 3.2 Kiểm tra và tổng hợp dữ liệu Kho dữ liệu lương Thông tin về cán bộ.nhân viên Thông tin đã tổng hợp Thông tin cần Thông tin về hệ số lương 3.3 In báo cáo Ban lãnh đạo Cán bộ, nhân viên Báo cáo Báo cáo Phiếu lương Yêu cầu báo cáo Các phòng ban Yêu cầu báo cáo Hình 3.8 Sơ đồ DFD mức 1 của tiến trình thống kê báo cáo Giải thích: Khi phải xuất báo cáo theo định kỳ hoặc có yêu cầu của lãnh đạo, trước hết phải lấy dữ liệu cần thiết từ các kho lưu trữ dữ liệu của hệ thống. Sau đó tiến hành kiểm tra và tổng hợp dữ liệu để lên báo cáo. Cuối cùng là in báo cáo gửi cho ban lãnh đạo, các phòng ban và cán bộ, nhân viên trong công ty. Thiết kế hệ thống thông tin quản lý nhân sự tại công ty cổ phần xây dựng Vinaconex1 Thiết kế hệ thống thông tin quản lý nhân sự là giai đoạn quan trọng. Dựa trên kết quả của giai đoạn này, lập trình viên có thể lập trình phần mềm phù hợp với yêu cầu của người sử dụng tại công ty. 3.3.1. Thiết kế cơ sở dữ liệu Để có được các tệp cơ sở dữ liệu về hệ thống thông tin quản lý nhân sự chính xác, ta phải tiến hành thiết kế cơ sở dữ liệu từ các thông tin đầu ra và thiết kế cơ sở dữ liệu bằng phương pháp mô hình hoá. Thiết kế cơ sở dữ liệu bằng phương pháp mô hình hóa Mã CT Ghi chú Bằng cấp có N N Mã chuyên môn … Phiếu lương có N 1 Mã NV ThangDG Người lập … ký Hợp đồng N N Mã HĐ Ghi chú … Mã PB Tên PB Trưởng phòng Số điện thoại … Nhân viên Phòng ban Chức vụ có Quyết định nhân sự có N N N N Mã NV Tên NV … Mã CV Tên chức vụ Ghi chú … Hồ sơ nhân viên có 1 1 Mức lương có N 1 Mã LNS Tên HS … Thuộc N N Hình 3.9. Mô hình quan hệ thực thể ERD Chuyển sơ đồ khái niệm dữ liệu sang sơ đồ cấu trúc dữ liệu (DSD) Từ sơ đồ quan hệ thực thể ERD, ta thấy giữa các thực thể có quan hệ hai chiều loại N@N. Vậy cách chuyển đổi sang sơ đồ cấu trúc dữ liệu như sau: ta phải tạo ra ba tệp, hai tệp mô tả thực thể, một tệp mô tả quan hệ. Khoá của tệp mô tả quan hệ được tạo thành bởi việc ghép khoá của các thực thể tham gia vào tạo thành quan hệ. Quan hệ giữa hai thực thể Nhân viên và Hợp đồng Nhân viên ký Hợp đồng Mã HĐ Ghi chú Mã NV Tên NV … N N Kết quả chuyển đổi được 3 tệp sau: nhân viên Mã NV Tên NV Năm sinh Giới tính Cổ đông Số CMND … Mã NV Mã HĐ Ngày ký Ngày KT Mã LHĐ … Chi tiết hợp đồng Mã HĐ Ghi chú … … Hợp đồng Quan hệ giữa hai thực thể Nhân viên và Bằng cấp Nhân viên Bằng cấp có Mã chuyên môn N MãNV Tên NV … N Kết quả chuyển đổi được 3 tệp sau: nhân viên Mã NV Tên NV Năm sinh Giới tính Cổ đông Số CMND … Chi tiết bằng cấp Mã NV Mã chuyên môn Nơi đào tạo Hệ đào tạo … … Mã chuyên môn Tên chuyên môn Người lập … Bằng cấp Quan hệ giữa hai thực thể Nhân viên và Phiếu lương Nhân viên Phiếu lương có 1 MãNV Tên NV … Mã NV ThangDG Người lập … N Kết quả chuyển đổi được 3 tệp sau: Mã NV Tên NV Năm sinh Giới tính Cổ đông Số CMND … Nhân viên Mã NV ThangDG Người lập … phiếu lương Quan hệ giữa hai thực thể Nhân viên và Quyết định nhân sự Nhân viên có Quyết định nhân sự N Mã NV Tên NV … Mã CT Ghi chú N Kết quả chuyển đổi được 3 tệp sau: Quyết định nhân sự Mã CT Ghi chú … … CT Quyết định nhân sự Mã CT Mã NV Ngày bổ nhiệm Ngày miễn nhiệm … Nhân viên Mã NV Tên NV Năm sinh Giới tính Cổ đông Số CMND … Mối quan hệ giữa hai thực thể Quyết định nhân sự và Phòng ban Phòng ban Quyết định nhân sự thuộc N Mã PB Tên PB Trưởng phòng Số điện thoại Mã CT Ghi chú N Kết quả chuyển đổi được 3 tệp sau: Mã PB Tên PB Trưởng phòng Số ĐT … … Phòng ban Mã CT Mã NV Ngày bổ nhiệm Ngày miễn nhiệm Mã PB … CT Quyết định nhân sự Mã CT Ghi chú … … Quyết định nhân sự Mối quan hệ giữa hai thực thể Quyết định nhân sự và Chức vụ Chức vụ có N Mã CV Tên chức vụ Ghi chú Quyết định nhân sự Mã CT Ghi chú N Mã CV Tên CV Ghi chú ... Mã CT Mã NV Ngày bổ nhiệm Ngày miễn nhiệm Mã CV … Chức vụ CT quyết định nhân sự Mã CT Ghi chú … … Quyết định nhân sự Kết quả chuyển đổi được 3 tệp sau: Nhân viên Mức lương 1 Mã LNS Tên HS … có N Mối quan hệ giữa hai thực thể Nhân viên và mức lương Mã NV MaLNS Năm sinh Giới tính Cổ đông Số CMND … Nhân viên MaLNS Tên HS Mức LNS … Mức lương Kết quả chuyển đổi được 2 tệp sau: Từ các kết quả trên ta có mối quan hệ giữa các bảng như sau: Chức vụ Quyết định nhân sự Mã NV MaLNS Tên NV Giới tính Cổ đông Số CMND … Mã PB Tên PB Trưởng phòng Số ĐT … … Mã CV Tên CV Ghi chú Mã CT Mã NV Ngày bổ nhiệm Ngày miễn nhiệm Mã PB Mã CV … Mã LHĐ Tên loại Ghi chú … … … Loại hợp đồng Nhân viên Phòng ban Mã CT Ghi chú … … CT quyết định nhân sự Mã NV Mã HĐ Ngày ký Ngày KT Mã LHĐ … Chi tiết hợp đồng Mã HĐ Ghi chú … … Hợp đồng Mã NV Ngày lập HSL năng suất HSL cơ bản ... phiếu lương Chi tiết bằng cấp Mã NV Mã chuyên môn Nơi đào tạo Hệ đào tạo … … Mã chuyên môn Tên chuyên môn Người lập … Bằng cấp MaLNS TenHS LoaiCV MucLNS … Mức lương Hình 3.10. Mối quan hệ giữa các bảng Thiết kế cơ sở dữ liệu logic từ các thông tin đầu ra Xác định các tệp cơ sở dữ liệu trên cơ sở các thông tin đầu ra của hệ thống thông tin là một phương pháp cơ bản của việc thiết kế cơ sở dữ liệu. Hệ thống thông tin quản lý nhân sự có các thông tin đầu ra như sau: Hồ sơ nhân viên, bảng lương. Dựa trên cơ sở lý thuyết đã nghiên cứu ở chương II, quá trình thiết kế cơ sở dữ liệu logic của hệ thống thông tin quản lý nhân sự dựa trên các thông tin đầu được mô tả dưới đây: - Mã nhân viên - Mã hợp đồng (R) - Ngày bắt đầu (R) - Ngày kết thúc (R) - Mã loại hợp đồng (R) - Họ và tên - Năm sinh - Cổ đông - Giới tính - Nguyên quán - Nơi đăng ký hộ khẩu thường trú - Mã chuyên môn (R) - Mã chức vụ (R) - Ngày bổ nhiệm (R) - Ngày miễn nhiệm (R) - Nơi đào tạo (R) Đầu ra của hồ sơ nhân viên có các thuộc tính: - Hệ đào tạo (R) - Ngoại ngữ - Đảng viên - Số chứng minh nhân dân - Ngày cấp - Mã phòng ban (R) - Số tài khoản Đầu ra của bảng lương chức danh có những thuộc tính - Ngày lập - Mã phòng ban - Mã nhân viên - Tên nhân viên - Hệ số lương cơ bản - Hệ số phụ cấp chức vụ - Hệ số phụ cấp trách nhiệm - Hệ số hoàn thành công việc(R) - Mức lương năng suất - Mức lương cơ bản - Tổng lương cơ bản (S) - Tổng lương năng suất (S) - Tổng lương chức danh (S) Quy tắc chuẩn hóa: Chuẩn hóa phải được tiến hành theo ba bước sau - Thực hiện chuẩn hoá mức 1 (1.NF): trong mỗi danh sách nếu có các thuộc tính lặp thì phải tách các thuộc tính lặp đó ra thành các danh sách con. Gán thêm cho danh sách con này một tên, tìm một thuộc tính định danh riêng và thêm thuộc tính định danh cho danh sách gốc. - Thực hiện chuẩn hoá mức 2 (2.NF): Nếu trong mỗi danh sách có thuộc tính phụ thuộc hàm vào một phần của khoá thì phải tách những thuộc tính phụ thuộc hàm vào bộ phận của khóa thành một danh sách con mới, đặt tên và xác định khoá cho danh sách con này. - Thực hiện chuẩn hóa mức 3 (3.NF) trong một danh sách không được phụ thuộc bắc cầu giữa các thuộc tính. Áp dụng quy tắc trên, ta có kết quả chuẩn hoá dưới đây Chuẩn hoá 1 NF Hồ sơ nhân viên - Mã nhân viên - Mã hợp đồng - Mã loại hợp đồng - Ngày ký hợp đồng - Ngày kết thúc hợp đồng - Họ và tên - Năm sinh - Cổ đông - Giới tính - Nguyên quán - Nơi đăng ký hộ khẩu thường trú - Mã chuyên môn - Mã chức vụ - Ngày bổ nhiệm - Ngày miễn nhiệm - Nơi đào tạo - Hệ đào tạo - Ngoại ngữ - Đảng viên - Số chứng minh nhân dân Chi tiết quyết định nhân sự Mã ._.se Frame2.Enabled = False trangThai resetForm Exit Sub End If End If If rs.State = 1 Then rs.Close End If txtMaNV = (TimNhanVien(Combo1.Text)) End If End Sub Private Sub cmdMoi_Click() Frame1.Enabled = True Frame2.Enabled = True add = True 'hien an resetForm trangThai Combo1.SetFocus txtMaCT.Text = chonMaCT End Sub Private Sub an() DTPicker1.Enabled = False txtNguyenQuan.Enabled = False txtHoKhau.Enabled = False txtMaCT.Enabled = False txtMaNV.Enabled = False End Sub Private Sub hien() combo2.Enabled = True Combo3.Enabled = True Combo1.Enabled = True txtGhiChu.Enabled = True End Sub Private Sub CmdThoat_Click() Unload Me End Sub Private Sub cmdHuy_Click() edit = False add = False Frame1.Enabled = False Frame2.Enabled = False 'an trangThai resetForm End Sub Private Sub CmdLuu_Click() Dim sql As String If add = True Then If checkForm = True Then If rs.State = 1 Then rs.Close End If rs.Open"SELECTCTHopDong.MaNV,CTHopDong.MaHD,HopDong.LoaiHD, CTHopDong.NgayKy,CTHopDong.NgayKT FROM HopDong INNER JOIN CTHopDong ON HopDong.MaHD = CTHopDong.MaHD Where (CTHopDong.MaNV) ='" & TimNhanVien(Combo1) & "' ORDER BY CTHopDong.NgayKy;" If Not rs.EOF Then rs.MoveFirst If rs.Fields("LoaiHD") = "A" Then MsgBox "Nhan vien bien che, b¹n cã thÓ ®iÒu ®éng", , "Thong bao" cn.Execute "Insert into DieuDong(MaCongTac,GhiChu) values('" & txtMaCT.Text & "','" & txtGhiChu.Text & "')" cn.Execute"InsertintoCTDieuDong(MaNV,MaCongTac,NgayBoNhiem,NgayMienNhiem,MaPB,MaCV) values('" & txtMaNV.Text & "','" & txtMaCT.Text & "','" & FormatDateTime(DTPStart, vbShortDate) & "','" & FormatDateTime(DTPEnd, vbShortDate) & "','" & TimPhongBan(combo2) & "','" & TimChucVu(Combo3) & "')" MsgBox "B¹n ®· thªm vµo danh môc thµnh c«ng!" adoQDNS.Refresh add = False Frame1.Enabled = False Frame2.Enabled = False trangThai resetForm Exit Sub End If If (Trim(rs.Fields("NgayKT")) >= Now And Trim(rs.Fields("NgayKT")) "1/1/1601") Then MsgBox " Nh©n viªn hÕt thêi h¹n hîp ®ång, b¹n kh«ng thÓ ®iÒu ®éng nh©n viªn nµy", , "thong bao" add = False Frame1.Enabled = False Frame2.Enabled = False trangThai resetForm Exit Sub Else cn.Execute"Insert into DieuDong(MaCongTac,GhiChu) values('" & txtMaCT.Text & "','" & txtGhiChu.Text & "')" cn.Execute"Insert into CTDieuDong (MaNV,MaCongTac,NgayBoNhiem,NgayMienNhiem,MaPB,MaCV) values('" & txtMaNV.Text & "','" & txtMaCT.Text & "','" & FormatDateTime(DTPStart, vbShortDate) & "','" & FormatDateTime(DTPEnd, vbShortDate) & "','" & TimPhongBan(combo2) & "','" & TimChucVu(Combo3) & "')" MsgBox "B¹n ®· thªm vµo danh môc thµnh c«ng!" adoQDNS.Refresh add = False Frame1.Enabled = False Frame2.Enabled = False trangThai resetForm Exit Sub End If End If MsgBox " Nh©n viªn ch­a ký kÕt hîp ®ång lao ®éng, b¹n ph¶i ký hîp ®ång lao ®éng tr­íc", , "Th«ng b¸o" add = False Frame1.Enabled = False Frame2.Enabled = False trangThai resetForm End If End If If edit = True Then If checkForm = True Then If rs.State = 1 Then rs.Close End If rs.Open "SELECT HoSoNV.MaNV, HoSoNV.TenNV, CTHopDong.MaHD, CTHopDong.NgayKy, CTHopDong.NgayKT, HopDong.LoaiHD, CTDieuDong.MaCongTac FROM HopDong INNER JOIN ((HoSoNV INNER JOIN CTDieuDong ON HoSoNV.MaNV = CTDieuDong.MaNV) INNER JOIN CTHopDong ON HoSoNV.MaNV = CTHopDong.MaNV) ON HopDong.MaHD = CTHopDong.MaHD Where (CTHopDong.MaNV) ='" & TimNhanVien(Combo1) & "' ORDER BY CTHopDong.NgayKy;" '" If rs.EOF Then rs.MoveFirst If rs.Fields("LoaiHD") = "A" Then MsgBox "Nh©n viªn nµy thuéc biªn chÕ, b¹n ®­îc phÐp ®iÒu ®éng", , "Th«ng b¸o" cn.Execute "update DieuDong set DieuDong.MaCongTac='" & txtMaCT.Text & "', DieuDong.GhiChu='" & txtGhiChu.Text & "' where MaCongTac='" & rs.Fields("MaCongTac") & "'" cn.Execute "UPDATE CTDieuDong SET MaCT= '" & txtMaCT.Text & "', NgayBoNhiem = '" & FormatDateTime(DTPStart, vbShortDate) & "', NgayMienNhiem = '" & FormatDateTime(DTPEnd, vbShortDate) & "', MaPB= '" & TimPhongBan(combo2) & "',MaCV= '" & TimChucVu(Combo3) & "' where MaHD='" & rs.Fields("MaHD") & "'" MsgBox "B¹n ®· söa thµnh c«ng!" adoQDNS.Refresh edit = False Frame1.Enabled = False Frame2.Enabled = False trangThai resetForm Exit Sub End If Else cn.Execute "update DieuDong set DieuDong.MaCongTac='" & txtMaCT.Text & "', DieuDong.GhiChu='" & txtGhiChu.Text & "' where MaCongTac='" & rs.Fields("MaCongTac") & "'" cn.Execute "UPDATE CTDieuDong SET NgayBoNhiem = '" & FormatDateTime(DTPStart, vbShortDate) & "', NgayMienNhiem = '" & FormatDateTime(DTPEnd, vbShortDate) & "', MaPB= '" & TimPhongBan(combo2) & "',MaCV= '" & TimChucVu(Combo3) & "' where MaCongTac='" & rs.Fields("MaCongTac") & "'" MsgBox "B¹n ®· söa thµnh c«ng!" adoQDNS.Refresh edit = False Frame1.Enabled = False Frame2.Enabled = False trangThai resetForm Exit Sub End If cn.Execute "update DieuDong set DieuDong.MaCongTac='" & txtMaCT.Text & "', DieuDong.GhiChu='" & txtGhiChu.Text & "' where MaCongTac='" & rs.Fields("MaCongTac") & "'" cn.Execute "UPDATE CTDieuDong SET NgayBoNhiem = '" & FormatDateTime(DTPStart, vbShortDate) & "', NgayMienNhiem = '" & FormatDateTime(DTPEnd, vbShortDate) & "', MaPB= '" & TimPhongBan(combo2) & "',MaCV= '" & TimChucVu(Combo3) & "' where MaCongTac='" & rs.Fields("MaCongTac") & "'" MsgBox "B¹n ®· söa thµnh c«ng!" adoQDNS.Refresh edit = False Frame1.Enabled = False Frame2.Enabled = False trangThai resetForm End If End If End Sub Private Function checkForm() As Boolean If Combo1.Text = "" Then MsgBox "B¹n ch­a nhËp nhan vien !" Combo1.SetFocus checkForm = False Else checkForm = True End If End Function Private Sub cmdSua_Click() If adoQDNS.Recordset.EOF = False And adoQDNS.Recordset.BOF = False Then edit = True Frame1.Enabled = False Frame2.Enabled = True trangThai combo2.SetFocus Else MsgBox "B¹n ch­a chän b¶n ghi ®Ó söa !" End If End Sub Private Sub setValue() If adoQDNS.Recordset.EOF = False And adoQDNS.Recordset.BOF = False Then If rs.State = 1 Then rs.Close End If rs.Open " SELECT * From HoSoNV WHERE maNV='" & adoQDNS.Recordset.Fields("MaNV") & "'" If Not rs.EOF Then rs.MoveFirst Combo1.Text = rs.Fields("MaNV") & "-" & rs.Fields("TenNV") txtMaNV.Text = rs.Fields("MaNV") txtNguyenQuan.Text = rs.Fields("NguyenQuan") txtHoKhau.Text = rs.Fields("NoiDangKyHKTT") DTPicker1.Value = rs.Fields("NgaySinh") End If If rs.State = 1 Then rs.Close End If rs.Open " SELECT * From PhongBan Where PhongBan.MaPB='" & adoQDNS.Recordset.Fields("MaPB") & "'" If Not rs.EOF Then rs.MoveFirst combo2.Text = rs.Fields("MaPB") & "-" & rs.Fields("TenPB") 'txtMaHD.Text = rs.Fields("MaHD") 'txtGhiChu.Text = rs.Fields("GhiChu") End If If rs.State = 1 Then rs.Close End If rs.Open " SELECT * From ChucVu Where ChucVu.MaCV='" & adoQDNS.Recordset.Fields("MaCV") & "'" If Not rs.EOF Then rs.MoveFirst Combo3.Text = rs.Fields("MaCV") & "-" & rs.Fields("TenCV") 'txtMaHD.Text = rs.Fields("MaHD") 'txtGhiChu.Text = rs.Fields("GhiChu") End If If rs.State = 1 Then rs.Close End If rs.Open " SELECT DieuDong.MaCongTac, DieuDong.GhiChu FROM DieuDong where DieuDong.MaCongTac = '" & adoQDNS.Recordset.Fields("MaCongTac") & "'" If Not rs.EOF Then rs.MoveFirst 'Combo3.Text = rs.Fields("MaCV") & "-" & rs.Fields("TenCV") 'txtMaHD.Text = rs.Fields("MaHD") txtMaCT.Text = rs.Fields("MaCongTac") txtGhiChu.Text = rs.Fields("GhiChu") End If If rs.State = 1 Then rs.Close End If If Trim(adoQDNS.Recordset.Fields("NgayBoNhiem")) = "" Then ChkStart.Value = 0 DTPStart.Value = FormatDateTime("1/1/1601", vbShortDate) Else ChkStart.Value = 1 DTPStart.Value = adoQDNS.Recordset.Fields("NgayBoNhiem") End If If Trim(adoQDNS.Recordset.Fields("NgayMienNhiem")) = "" Then ChkStart.Value = 0 DTPEnd.Value = FormatDateTime("1/1/1601", vbShortDate) Else ChkStart.Value = 1 DTPEnd.Value = adoQDNS.Recordset.Fields("NgayMienNhiem") End If Else resetForm End If End Sub Private Sub dgrQDNS_RowColChange(LastRow As Variant, ByVal LastCol As Integer) If edit = False And add = False Then setValue End If End Sub Private Sub Form_Load() adoQDNS.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DataBase\NhanSu.mdb;Persist Security Info=False" adoQDNS.RecordSource = "select * from CTDieuDong" Set DgrQDNS.DataSource = adoQDNS Frame1.Enabled = False Frame2.Enabled = False resetForm edit = False add = False Call napTen Call napPhongBan Call napChucVu End Sub Sub napTen() If rs.State = 1 Then rs.Close End If rs.Open "SELECT * From HoSoNV ORDER BY HoSoNV.MaNV;" Combo1.Clear Combo1.AddItem "" If Not rs.EOF Then rs.MoveFirst Do While Not rs.EOF Combo1.AddItem rs.Fields("MaNV") & "-" & rs.Fields("TenNV") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If Combo1.Refresh End Sub Sub napPhongBan() If rs.State = 1 Then rs.Close End If rs.Open "SELECT * From PhongBan ORDER BY PhongBan.MaPB;" combo2.Clear combo2.AddItem "" If Not rs.EOF Then rs.MoveFirst Do While Not rs.EOF combo2.AddItem rs.Fields("MaPB") & "-" & rs.Fields("TenPB") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If combo2.Refresh End Sub Sub napChucVu() If rs.State = 1 Then rs.Close End If rs.Open "SELECT * From ChucVu ORDER BY ChucVu.MaCV;" Combo3.Clear Combo3.AddItem "" If Not rs.EOF Then rs.MoveFirst Do While Not rs.EOF Combo3.AddItem rs.Fields("MaCV") & "-" & rs.Fields("TenCV") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If Combo3.Refresh End Sub Private Sub setValue1(txt As String) If rs.State = 1 Then rs.Close End If rs.Open "SELECT * From HoSoNV WHERE MaNV= '" & txt & "'", cn, adOpenStatic, adLockOptimistic If rs.RecordCount > 0 Then rs.MoveFirst DTPicker1.Value = rs.Fields("NgaySinh") txtNguyenQuan.Text = rs.Fields("NguyenQuan") txtHoKhau.Text = rs.Fields("NoiDangKyHKTT") Else DTPicker1.Value = Now txtNguyenQuan.Text = "" txtHoKhau.Text = "" End If If rs.State = 1 Then rs.Close End If End Sub Private Sub resetForm() txtMaNV.Text = "" txtMaCT.Text = "" txtNguyenQuan.Text = "" txtHoKhau.Text = "" txtGhiChu.Text = "" Combo1.Text = Combo1.List(0) combo2.Text = combo2.List(0) Combo3.Text = Combo3.List(0) ChkStart.Value = 0 Call chkStart_click ChkEnd.Value = 0 Call chkEnd_click If Combo1.Enabled = True Then Combo1.SetFocus End If End Sub Private Sub chkStart_click() If ChkStart.Value = 1 Then DTPStart.Value = FormatDateTime(Now, vbShortDate) Else DTPStart.Value = FormatDateTime("1/1/1601", vbShortDate) End If End Sub Private Sub chkEnd_click() If ChkEnd.Value = 1 Then DTPEnd.Value = FormatDateTime(Now, vbShortDate) Else DTPEnd.Value = FormatDateTime("1/1/1601", vbShortDate) End If End Sub Private Sub trangThai() If add = False Then If edit = False Then cmdMoi.Enabled = True cmdSua.Enabled = True cmdLuu.Enabled = False cmdHuy.Enabled = False cmdxuatbaocao = False Else cmdMoi.Enabled = False cmdSua.Enabled = False cmdLuu.Enabled = True cmdHuy.Enabled = True cmdxuatbaocao = False End If Else If edit = False Then cmdMoi.Enabled = False cmdSua.Enabled = False cmdLuu.Enabled = True cmdHuy.Enabled = True cmdxuatbaocao = False Else add = False edit = False cmdMoi.Enabled = True cmdSua.Enabled = True cmdLuu.Enabled = False cmdHuy.Enabled = False cmdxuatbaocao = False End If End If Code Tính lương nhân viên theo tháng Private edit As Boolean Private add As Boolean Private Sub cmdMoi_Click() If Trim(txtGTDanhGia) = "" Then If (DTPicker1.Day >= "19") And (DTPicker1.Day < "31") Then add = True hien trangThai DTPicker1.Value = Now Else MsgBox "B¹n kh«ng thÓ cËp nhËt phiÕu ®¸nh gi¸ vµo ngµy nµy", , "Th«ng b¸o" add = False an trangThai Exit Sub End If txtGTDanhGia.SetFocus Else MsgBox " Nh©n viªn nµy ®· ®­îc cËp nhËt ®¸nh gi¸ cña tr­ëng phßng", , "Th«ng b¸o" End If End Sub Private Sub an() dptNgayLap.Enabled = False txtNguoiLap.Enabled = False Frame2.Enabled = False Frame1.Enabled = False Frame4.Enabled = False End Sub Private Sub hien() Frame4.Enabled = True DTPicker1.Enabled = False End Sub Private Sub CmdThoat_Click() Unload Me End Sub Private Sub cmdHuy_Click() edit = False add = False an trangThai resetForm End Sub Private Sub CmdLuu_Click() If add = True Then If checkForm2 = True Then cn.Execute "insert into DanhGia (MaNV,ThangDG,GiaTri,TrangThai) values('" & adoNhanVien.Recordset.Fields("MaNV") & "','" & txtKTThang.Text & "','" & txtGTDanhGia.Text & "','" & Check1.Value & "')" adoNhanVien.Refresh add = False an trangThai End If End If If edit = True Then If checkForm2 = True Then cn.Execute "update DanhGia set DanhGia.GiaTri= '" & txtGTDanhGia.Text & "', DanhGia.TrangThai= '" & Check1.Value & "' where DanhGia.MaNV='" & adoNhanVien.Recordset.Fields("MaNV") & "'" adoNhanVien.Refresh edit = False an trangThai End If End If End Sub Private Sub cmdSua_Click() If adoNhanVien.Recordset.EOF = False And adoNhanVien.Recordset.BOF = False Then edit = True If checkForm1 = True Then hien trangThai Else MsgBox "Nh©n viªn nµy ®· ®­îc tÝnh l­¬ng råi,b¹n kh«ng thÓ tÝnh l­¬ng 2 lÇn", , "Th«ng b¸o" edit = False an trangThai Exit Sub End If Else MsgBox "B¹n ch­a chän b¶n ghi ®Ó söa !" End If End Sub Private Function checkForm2() If txtGTDanhGia.Text = "" Then MsgBox "B¹n ph¶i nhËp gi¸ trÞ ®¸nh gi¸ cña tr­ëng phßng", , "Th«ng b¸o" checkForm2 = False ElseIf IsNumeric(txtGTDanhGia.Text) = False Then MsgBox "B¹n phai nhap so", , "Th«ng b¸o" checkForm2 = False Else checkForm2 = True End If End Function Private Function checkForm() As Boolean If txtGTDanhGia.Text = "" Then MsgBox "Nh©n viªn nµy ch­a ®­îc tÝnh l­¬ng trong th¸ng" checkForm = True ElseIf Check1.Value = 0 Then MsgBox "Nh©n viªn nµy ch­a ®­îc tr¶ l­¬ng trong th¸ng" checkForm = True Else checkForm = False End If End Function Private Function checkForm1() As Boolean If Check1.Value = 0 Then MsgBox "Nh©n viªn nµy ch­a ®­îc tr¶ l­¬ng trong th¸ng, b¹n cã thÓ söa ®æi ®¸nh gi¸", , "Th«ng b¸o" checkForm1 = True Else checkForm1 = False End If End Function Private Sub resetForm() DTPicker1.Value = Now txtGTDanhGia.Text = "" Check1.Value = 0 If txtGTDanhGia.Enabled = True Then txtGTDanhGia.SetFocus End If End Sub Private Sub setValue() If adoNhanVien.Recordset.EOF = False And adoNhanVien.Recordset.BOF = False Then If rs.State = 1 Then rs.Close End If rs.Open"SELECT top1 CTBangLuong.MaNV,CTBangLuong.NgayLap, CTBangLuong.NguoiLap,CTBangLuong.HSLCoBan,CTBangLuong.HSLPhuCapCV, CTBangLuong.HSLPhuCapTN,CTBangLuong.MaLCB,LCB.MucLCB,CTBangLuong.MaHS,HeSo.TenHS,HeSo.MucLuongNS FROM LCB INNER JOIN (HeSo INNER JOIN CTBangLuong ON HeSo.MaHS=CTBangLuong.MaHS) ON LCB.MaLCB=CTBangLuong.MaLCB WHERE (((CTBangLuong.MaNV)='" & adoNhanVien.Recordset.Fields("MaNV") & "')) order by CTBangLuong.NgayLap DESC;" If Not rs.EOF Then rs.MoveFirst dptNgayLap.Value = rs.Fields("NgayLap") txtNguoiLap.Text = rs.Fields("NguoiLap") txtHSLCB.Text = rs.Fields("HSLCoBan") txtHSPCCV.Text = rs.Fields("HSLPhuCapCV") txtHSPCTN.Text = rs.Fields("HSLPhuCapTN") cboLCB.Text = rs.Fields("MucLCB") cboMaHS.Text = rs.Fields("MaHS") txtTenHS.Text = rs.Fields("TenHS") txtMucLNS.Text = rs.Fields("MucLuongNS") Else MsgBox " Nh©n viªn ph¶i cËp nhËt vµo b¶ng l­¬ng tr­íc", , "Th«ng b¸o" dptNgayLap.Value = Now txtNguoiLap.Text = "" txtHSLCB.Text = "" txtHSPCCV.Text = "" txtHSPCTN.Text = "" cboLCB.Text = "" cboMaHS.Text = "" txtTenHS.Text = "" txtMucLNS.Text = "" add = False edit = False trangThai End If If rs.State = 1 Then rs.Close End If rs.Open"SELECTtop1CTBangLuong.MaNV,CTBangLuong.NgayLap, CTBangLuong.NguoiLap,CTBangLuong.HSLCoBan,CTBangLuong.HSLPhuCapCV, CTBangLuong.HSLPhuCapTN,CTBangLuong.MaLCB,CTBangLuong.MaHS,HeSo.MucLuongNS,LCB.MucLCB,(CTBangLuong.HSLCoBan+CTBangLuong.HSLPhuCapCV+CTBangLuong.HSLPhuCapTN)*LCB.MucLCB+HeSo.MucLuongNS AS TongLuong FROM LCB INNER JOIN (HeSo INNER JOIN CTBangLuong ON HeSo.MaHS = CTBangLuong.MaHS) ON LCB.MaLCB = CTBangLuong.MaLCB WHERE (((CTBangLuong.MaNV)='" & adoNhanVien.Recordset.Fields("MaNV") & "'))order by CTBangLuong.NgayLap DESC;" txtluong.Text = rs.Fields("TongLuong") If rs.State = 1 Then rs.Close End If rs.Open"SelectDanhGia.MaNV,DanhGia.ThangDG,DanhGia.GiaTri,DanhGia.TrangThai from DanhGia WHERE (((DanhGia.MaNV)='" & adoNhanVien.Recordset.Fields("MaNV") & "' and DanhGia.ThangDG= '" & txtKTThang & "' )); " If Not rs.EOF Then rs.MoveFirst DTPicker1.Value = Now txtGTDanhGia.Text = rs.Fields("GiaTri") If rs.Fields("TrangThai") = 0 Then Check1.Value = 0 Else Check1.Value = 1 End If If IsNull(rs(2)) = False Then txtThucLinh.Text = TinhThanhTien Else txtThucLinh.Text = "" End If Else DTPicker1.Value = Now txtGTDanhGia.Text = "" Check1.Value = 0 End If If rs.State = 1 Then rs.Close End If Else resetForm End If End Sub Private Sub dgrNhanVien_RowColChange(LastRow As Variant, ByVal LastCol As Integer) If edit = False And add = False Then setValue End If End Sub Private Sub Form_Load() adoNhanVien.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DataBase\NhanSu.mdb;Persist Security Info=False" Call napPhongBan Frame3.Enabled = False txtluong.Enabled = False txtThucLinh.Enabled = False edit = False add = False an trangThai End Sub Private Sub trangThai() If add = False Then If edit = False Then cmdMoi.Enabled = True cmdSua.Enabled = True cmdLuu.Enabled = False cmdHuy.Enabled = False Else cmdMoi.Enabled = False cmdSua.Enabled = False cmdLuu.Enabled = True cmdHuy.Enabled = True End If Else If edit = False Then cmdMoi.Enabled = False cmdSua.Enabled = False cmdLuu.Enabled = True cmdHuy.Enabled = True Else add = False edit = False cmdMoi.Enabled = True cmdSua.Enabled = True cmdLuu.Enabled = False cmdHuy.Enabled = False End If End If End Sub Function TimPhongBan(ByVal PB As String) As String Dim a As Integer a = InStr(PB, "-") TimPhongBan = Left(PB, a - 1) End Function Sub napPhongBan() If rs.State = 1 Then rs.Close End If rs.Open "SELECT * From PhongBan ORDER BY PhongBan.MaPB;" cboPhongBan.Clear cboPhongBan.AddItem "" If Not rs.EOF Then rs.MoveFirst Do While Not rs.EOF cboPhongBan.AddItem rs.Fields("MaPB") & "-" & rs.Fields("TenPB") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If cboPhongBan.Refresh End Sub Private Sub setValue1() adoNhanVien.RecordSource = "SELECT PhongBan.MaPB, PhongBan.TenPB, CTDieuDong.MaNV,CTDieuDong.MaCV,CTDieuDong.NgayBoNhiem,CTDieuDong.NgayMienNhiem FROM PhongBan INNER JOIN CTDieuDong ON PhongBan.MaPB=CTDieuDong.MaPB WHERE CTDieuDong.NgayMienNhiem=DateValue('01/01/1601') and PhongBan.MaPB = '" & TimPhongBan(cboPhongBan) & "'" Set dgrNhanVien.DataSource = adoNhanVien Frame3.Enabled = True End Sub Private Sub cboPhongBan_LostFocus() If Trim(cboPhongBan.Text) "" Then setValue1 adoNhanVien.Refresh End If End Sub Private Function TinhThanhTien() As Double TinhThanhTien = txtHSLCB.Text * (cboLCB.Text) + txtHSPCCV.Text * (cboLCB.Text) + txtHSPCTN.Text * (cboLCB.Text) + txtMucLNS * txtGTDanhGia End Function Code báo cao hợp đồng tuyển dụng Option Explicit Private Sub cmdtaomoi_Click() Call Reset End Sub Private Sub CmdThoat_Click() If rs.State = 1 Then rs.Close End If cboNV.Text = "" cboLoaiHD.Text = "" Unload Me End Sub Private Sub HienThiHangTon1() Dim dieukienThoigian As String Dim dieukienTieuthuc As String Dim dieukienTimkiem As String Dim sql As String sql = "SELECT HoSoNV.MaNV, HoSoNV.HoDem+' '+HoSoNV.Ten AS TenNV, CTHopDong.MaHD,HopDong.LoaiHD,CTHopDong.NgayKy,IIf(CTHopDong.NgayKT=DateValue('1/1/1601'),'Ch­a KT HD',CTHopDong.NgayKT) AS NgayKT, HoSoNV.Ten FROM HopDong INNER JOIN (HoSoNV INNER JOIN CTHopDong ON HoSoNV.MaNV = CTHopDong.MaNV) ON HopDong.MaHD = CTHopDong.MaHD " If (optNH.Value) Then 'Tim then nhân viên' If optallnhom.Value = True Then sql = sql & " ORDER BY HoSoNV.Ten;" End If If (opt1nhom.Value) Then If (Trim(cboNV.Text)) = "" Then MsgBox "Bạn chưa chọn nhân viên !" cboNV.SetFocus Exit Sub End If sql = sql & " where ((HoSoNV.MaNV)= '" & TimNV(cboNV) & "') ORDER BY HoSoNV.Ten;" End If ElseIf (optHSX.Value) Then 'Tim theo hang san xuat' If optallhang.Value = True Then sql = sql & " ORDER BY HoSoNV.Ten; " End If If (optchonhang.Value) Then If (Trim(cboLoaiHD.Text)) = "" Then MsgBox "Bạn chưa chọn loại hợp đồng !" cboLoaiHD.SetFocus Exit Sub End If sql = sql & " where ((HopDong.LoaiHD)= '" & TimLoaiHD(cboLoaiHD) & "') ORDER BY HoSoNV.Ten;" End If End If If rs.State = 1 Then rs.Close End If rs.Open sql, cn If optNH.Value = True Then If optallnhom.Value = True Then rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNV.rpt" ElseIf opt1nhom.Value = True Then rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNV1.rpt" End If ElseIf optHSX.Value = True Then rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNhom.rpt" End If rptBCDieuDong.SetTablePrivateData 0, 3, rs If rs.EOF = True Then MsgBox " Kh«ng t×m thÊy b¶n ghi nh­ ý b¹n" MsgBox " B¸o c¸o tr¾ng kh«ng ®­îc hiÓn thÞ" Else rptBCDieuDong.MarginLeft = 0 rptBCDieuDong.MarginRight = 0 rptBCDieuDong.MarginTop = 0 rptBCDieuDong.MarginBottom = 0 rptBCDieuDong.WindowState = crptMaximized rptBCDieuDong.PrintReport End If If rs.State = 1 Then rs.Close End If End Sub Private Sub HienThiHangTon2() Dim sql As String sql = "SELECT HoSoNV.MaNV, HoSoNV.HoDem+' '+HoSoNV.Ten AS TenNV, CTHopDong.MaHD,HopDong.LoaiHD,CTHopDong.NgayKy,IIf(CTHopDong.NgayKT=DateValue('1/1/1601'),'Ch­a KT HD',CTHopDong.NgayKT) AS NgayKT,HoSoNV.Ten FROM HopDong INNER JOIN (HoSoNV INNER JOIN CTHopDong ON HoSoNV.MaNV = CTHopDong.MaNV) ON HopDong.MaHD = CTHopDong.MaHD WHERE (CTHopDong.NgayKy) < DateValue('" & dtpNgayBaoCao.Month & "/" & dtpNgayBaoCao.Day & "/" & dtpNgayBaoCao.Year & "')" If (optNH.Value) Then 'Tim theo chuc vu' If optallnhom.Value = True Then sql = sql & " ORDER BY HoSoNV.Ten;" End If If (opt1nhom.Value) Then If (Trim(cboNV.Text)) = "" Then MsgBox "B¹n ch­a chän nh©n viªn !" cboNV.SetFocus Exit Sub End If sql = sql & " and ((HoSoNV.MaNV)= '" & TimNV(cboNV) & "') ORDER BY HoSoNV.Ten;" End If ElseIf (optHSX.Value) Then If optallhang.Value = True Then sql = sql & " ORDER BY HoSoNV.Ten; " End If 'Tim theo hang phong ban' If (optchonhang.Value) Then If (Trim(cboLoaiHD)) = "" Then MsgBox "B¹n ch­a chän lo¹i hîp ®ång !" cboLoaiHD.SetFocus Exit Sub End If sql = sql & " and ((HopDong.LoaiHD)= '" & TimLoaiHD(cboLoaiHD) & "') ORDER BY HoSoNV.Ten;" End If End If If rs.State = 1 Then rs.Close End If rs.Open sql, cn If optNH.Value = True Then If optallnhom.Value = True Then rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNV.rpt" ElseIf opt1nhom.Value = True Then rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNV1.rpt" End If ElseIf optHSX.Value = True Then rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNhom.rpt" End If rptBCDieuDong.SetTablePrivateData 0, 3, rs If rs.EOF = True Then MsgBox " Kh«ng t×m thÊy b¶n ghi nh­ ý b¹n" MsgBox " B¸o c¸o tr¾ng kh«ng ®­îc hiÓn thÞ" Else rptBCDieuDong.MarginLeft = 0 rptBCDieuDong.MarginRight = 0 rptBCDieuDong.MarginTop = 0 rptBCDieuDong.MarginBottom = 0 rptBCDieuDong.WindowState = crptMaximized rptBCDieuDong.PrintReport End If If rs.State = 1 Then rs.Close End If End Sub Private Sub cmdxuatbaocao_Click() If (optall.Value) Then Call HienThiHangTon1 End If If (optThoiGian.Value) Then Call HienThiHangTon2 End If End Sub Private Sub Form_Load() Call napNV Call napLoaiHD Call Reset End Sub Private Sub Reset() optNH.Enabled = True optNH.Value = False optallnhom.Enabled = False optallnhom.Value = False opt1nhom.Enabled = False opt1nhom.Value = False cboNV.Enabled = False optHSX.Enabled = True optHSX.Value = False optallhang.Enabled = False optchonhang.Enabled = False optallhang.Value = False optchonhang.Value = False cboLoaiHD.Enabled = False optall.Enabled = True optall.Value = False optThoiGian.Enabled = True optThoiGian.Value = False End Sub Private Sub optAll_Click() optThoiGian.Enabled = False End Sub Private Sub optThoiGian_Click() optall.Enabled = False End Sub Private Sub disableTheoNhomHang() optNH.Enabled = False optallnhom.Enabled = False opt1nhom.Enabled = False cboNV.Enabled = False End Sub Private Sub disableTheoHangSanXuat() optHSX.Enabled = False optallhang.Enabled = False optchonhang.Enabled = False cboLoaiHD.Enabled = False End Sub Private Sub optNH_Click() optallnhom.Enabled = True opt1nhom.Enabled = True cboNV.Enabled = True optallnhom.SetFocus Call disableTheoHangSanXuat End Sub Private Sub opthsx_Click() optallhang.Enabled = True optchonhang.Enabled = True cboLoaiHD.Enabled = True optallhang.SetFocus Call disableTheoNhomHang End Sub Function TimLoaiHD(ByVal LoaiHD As String) As String Dim a As Integer a = InStr(LoaiHD, "-") TimLoaiHD = Left(LoaiHD, a - 1) End Function Sub napLoaiHD() If rs.State = 1 Then rs.Close End If rs.Open "SELECT * From HopDong ORDER BY HopDong.MaHD;" cboLoaiHD.Clear cboLoaiHD.AddItem "" If Not rs.EOF Then rs.MoveFirst Do While Not rs.EOF cboLoaiHD.AddItem rs.Fields("LoaiHD") & "-" & rs.Fields("GhiChu") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If cboLoaiHD.Refresh End Sub Function TimNV(ByVal NV As String) As String Dim a As Integer a = InStr(NV, "-") TimNV = Left(NV, a - 1) End Function Sub napNV() If rs.State = 1 Then rs.Close End If rs.Open "SELECT HoSoNV.MaNV, HoSoNV.HoDem+' '+HoSoNV.Ten AS TenNV, HoSoNV.NgaySinh, HoSoNV.SoDT, HoSoNV.CoDong, HoSoNV.GioiTinh, HoSoNV.NguyenQuan, HoSoNV.NoiDangKyHKTT, HoSoNV.DangVien, HoSoNV.SoCMND, HoSoNV.NgayCap, HoSoNV.SoTK From HoSoNV ORDER BY HoSoNV.Ten;" cboNV.Clear cboNV.AddItem "" If Not rs.EOF Then rs.MoveFirst Do While Not rs.EOF cboNV.AddItem rs.Fields("MaNV") & "-" & rs.Fields("TenNV") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If End Sub MỤC LỤC DANH MỤC HÌNH VẼ, BẢNG BIỂU ĐẠI HỌC KINH TẾ QUỐC DÂN KHOA TIN HỌC KINH TẾ CHUYÊN ĐỀ TỐT NGHIỆP Tên đề tài : Xây dựng hệ thống thông tin quản lý nhân sự tại Công ty cổ phần xây dựng Vinaconex 1 Họ và tên sinh viên : Vương Ngọc Quỳnh Chuyên ngành : Tin học kinh tế Lớp : Tin A Khóa : 47 Hệ : Chính quy Giảng viên hướng dẫn: TS.Trần Thị Song Minh HÀ NỘI, NĂM 2009 DANH MỤC HÌNH VẼ, BẢNG BIỂU Hình 1.1. Sơ đồ cơ cấu tổ chức của công ty 5 Bảng 2.1 Phân loại hệ thống thông tin theo lĩnh vực và các mức ra quyết định 15 Bảng 3.1. Mức lương năng suất lao động 36 Hình 3.1 Sơ đồ luồng thông tin quản lý hồ sơ nhân viên 37 Hình 3.2 Sơ đồ luồng thông tin quản lý lương 38 Hình 3.3 Sơ đồ BFD 39 Hình 3.4 Sơ đồ DFD mức ngữ cảnh 40 Hình 3.5 Sơ đồ DFD mức 0 41 Hình 3.6 Sơ đồ DFD mức 1 của tiến trình quản lý hồ sơ nhân viên 42 Hình 3.7 Sơ đồ DFD mức 1 của tiến trình quản lý lương 43 Hình 3.8 Sơ đồ DFD mức 1 của tiến trình thống kê báo cáo 44 Hình 3.9. Mô hình quan hệ thực thể ERD 46 Hình 3.10. Mối quan hệ giữa các bảng 51 Hình 3.11 Quá trình chuẩn hoá dữ liệu 58 Bảng 3.2 Bảng hồ sơ nhân viên 59 Bảng 3.3 Bảng chức vụ 59 Bảng 3.4 Bảng bằng cấp nhân viên 60 Bảng 3.5 Bảng hợp đồng 60 Bảng 3.6 Bảng lương cơ bản 60 Bảng 3.7 Bảng phòng ban 61 Bảng 3.8 Bảng chi tiết quyết định nhân sự 61 Bảng 3.9 Bảng chi tiết bằng cấp nhân viên 62 Bảng 3.10 Bảng phiếu lương 62 Bảng 3.11 Bảng chi tiết hợp đồng 63 Bảng 3.12 Bảng mức lương năng suất 63 Bảng 3.13 Bảng quyết định nhân sự 63 Bảng 3.14 Bảng đánh giá 64 Hình 3.12. Sơ đồ cấu trúc dữ liệu 64 Hình 3.13. Sơ đồ khối thuật đăng nhập vào chương trình 65 Hình 3.14. Sơ đồ khối thuật toán tính lương nhân viên 66 Hình 3.15. Sơ đồ khối thuật toán lập quyết định điều động nhân sự 67 Hình 3.16. Sơ đồ khối thuật toán lập hợp đồng cho nhân viên 68 Hình 3.17. Sơ đồ khối thuật toán Lập báo cáo 69 Hình 3.18. Giao diện form đăng nhập 70 Hình 3.19.Giao diện hệ thống 71 Hình 3.20. Giao diện giới thiệu phần mềm 72 Hình 3.21. Giao diện đổi mật khẩu 73 Hình 3.22. Form danh mục chức vụ 74 Hình 3.23. Form danh mục phòng ban 75 Hình 3.24. Form danh mục lương cơ bản 76 Hình 3.25. Danh mục lương năng suất 77 Hình 3.26. Form cập nhật chi tiết chuyên môn 78 Hình 3.27. Form cập nhật chuyên môn 79 Hình 3.28. Form quản lý hợp đồng 80 Hình 3.29. Form quản lý điều động nội bộ 81 Hình 3.30. Form quản lý hệ số lương 83 Hình 3.31. Form quản lý lương theo tháng 84 Hình 3.32. Form tra cứu nhân viên theo bằng cấp 85 Hình 3.33. Form tra cứu quyết định nhân sự 86 Hình 3.34. Form tra cứu hợp đồng lao động 87 Hình 3.35. Form báo cáo lương 88 Hình 3.36. Bảng lương nhân viên theo phòng ban 89 Hình 3.37. Bảng lương chi tiết từng nhân viên 90 Hình 3.38. Form báo cáo hợp đồng tuyển dụng 91 Hình 3.39. Báo cáo hợp đồng theo loại hợp đồng 92 Hình 3.40. Báo cáo hợp đồng cho nhân viên 93 Hình 3.41. Form báo cáo trình độ nhân viên 94 Hình 3.42. Báo cáo thống kê trình độ nhân viên 95 Hình 3.43. Form báo cáo điều động nhân sự 96 Hình 3.44. Báo cáo điều động nhân viên theo nhóm phòng ban 97 Hình 3.45. Báo cáo điều động nhân viên theo nhóm chức vụ 98 Hình 3.46. Mẫu quyết định điều động nhân viên 99 ._.

Các file đính kèm theo tài liệu này:

  • doc25140.doc
Tài liệu liên quan