Đề án Ứng dụng visual basic 6.0 vào chương trình quản lý lương hành chinh sự nghiệp với cơ sở dữ liệu access

MỤC LỤC

Lời mở đầu.

Chương I.Giới thiệu ngôn ngữ lập trìnhVisual Basic 6.0

I. Khái quát về Visual basic 6.0 .

 II. Khả năng của Visual Basic 6.0 .

2.1.Các điểu khiển của Visual Basic 6.0.

2.2. Các tính năng ngôn ngữ của Visual Basic 6.0.

2.3. Internet.

2.4. Khả năng dữ liệu của Visual Basic 6.0.

2.5. Điều khiển giao diện người sử dụng.

Chương II: Phân tích thiết kế hệ thống thông tin

 quản lý Lương HCSN.

I.Phân tích chương trình quản lý lương HCSN

1.1.Mô tả của chương trình.

1.2.Yêu cầu của chương trình.

1.3.Phân tích chương trình.

1.3.1. Phân tích sơ đồ chức năng (BFD) .

1.3.2. Phân tích sơ đồ luồng thông tin( IFD).

1.3.3. Phân tích sơ đồ luồng dữ liệu(DFD).

1.3.4. Phân tích sơ đồ quan hệ thực thể.

1.3.5. Các bảng trong chương trình.

II. Thiết kế chương trình quản lý lương HCSN. 2.1.Thiết kế giao diện.

2.2. Các giao diện màn hình.

2.2.1. Danh mục.

2.2.2.Bảng tiền lương tháng.

2.2.3. Tìm kiếm.

 2.3.Thiết kế các module chương trình.

2.4. Thiết kế các báo cáo.

2.4.1.Báo cáo lương theo phòng ban.

2.4.2.Báo cáo lương theo mã cán bộ.

2.4.3.Báo cáo nhân sự.

Đánh giá và kết luận

Tài liệu tham khảo

 

doc42 trang | Chia sẻ: maiphuongdc | Lượt xem: 1610 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Đề án Ứng dụng visual basic 6.0 vào chương trình quản lý lương hành chinh sự nghiệp với cơ sở dữ liệu access, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ướng dẫn của thầy giáo em đã thực hiện đề án chuyên ngành với đề tài “ ứng dụng Visual Basic 6.0 vào chương trình quản lý lương HCSN với CSDL Access “. Mục tiêu của đề án là xây dựng một chương trình quản lý để phục vụ cho nhu cầu quản lý lương của cơ quan, tổ chức hành chính. Đề án được trình bày với các nội dung chính như sau: Lời mở đầu Chương 1:Giới thiệu ngôn ngữ lập trình Visual Basic 6.0 Chương 2:Phân tích và thiết kế HTTT Quản lý lương HCSN Đánh giá và kết luận Tài liệu tham khảo. Do lần đầu tìm hiểu và xây dựng chương trình nên khả năng cũng như thời gian còn hạn chế do đó chương trình không tránh khỏi những sai sót và khiếm khuyết, kính mong các thầy cô cùng các bạn đóng góp ý kiến quý báu cho chương trình ngày càng được hoàn thiện hơn. Em xin chân thành cám ơn toàn thể các thầy, cô đã giúp đỡ, dạy em và đặc biệt là thầy Nguyễn Trung Tuấn người đã tận tình chỉ bảo và hướng dẫn em trong quá trình thực hiện đề án này. Một lần nữa em xin chân thành cám ơn! Hà nội 11-2002 Người thực hiện Bùi Thị Thu Hiền Chương I. Giới thiệu ngôn ngữ lập trình Visual Basic 6.0 I. Khái quát về Visual Basic 6.0: Visual Basic là cái gì? “Visual “(trực quan) là phần thảo khảo phương pháp được sử dụng để tạo ra giao diện người dùng đồ thị GUI, hơn là viết cho người dùng mã để mô tả sự xuất hiện và sự định vị (vị trí) của giao diện những phần tử, đơn giản bạn thêm vào trong chỗ trên màn ảnh. Nếu bạn đã từng sử dụng một chương trình bản vẽ như sơn bạn đã có hầu hết kỹ năng cần thiết để tạo ra một giao diện người dùng có hiệu quả. “ Basic”(cơ bản) phần tham khảo cơ bản (lệnh tương đương đa năng với những người mới bắt đầu lập trình) một ngôn ngữ sử dụng bởi người lập trình hơn bất kỳ ngôn ngữ khác nào trong lịch sử tính toán. Văn bản đã tiến triển từ ngôn ngữ cơ bản nguyên mẫu và bây giờ chứa đựng vài trăm định nghĩa, những hàm và những từ khoá, nhiều trong nó có quan hệ trực tiếp với việc sử dụng Window. Những người mới bắt đầu có thể tạo ra hữu ích những ứng dụng bởi tệp học chỉ là một ít từ khoá, tuy thế sức mạnh của ngôn ngữ cho phép xử lý và hoàn thành bất cứ cái gì mà có thể được hình thành sử dụng bất kỳ những ngôn ngữ lập trình cửa sổ khác nào. Visual Basic 6.0 là một phiên bản mới và mạnh nhất của Visual basic. Visual Basic 6.0 có rất nhiều tính năng mới. Các điều khiển mới cho phép ta viết các chương trình ứng dụng kết hợp giao diện, cách xử lý và tính năng của Office với trình duyệt WEB Internet Explorer. Visual Basic 6.0 cho phép ta lập trình để thêm điều khiển vào đề án tự động và ta còn có thể tạo ra các điều khiển ActiveX hiệu chỉnh. Ta cũng có thể nhúng các kịch bản (Script) vào trang HTML trên client hoặc Web Server bằng sử dụng ngôn ngữ Vbscript. Thay vì hỏi Server, trình duyệt xét có thể thi hành kịch bản khi nó nạp trang HTML. Các kịch bản này có thể xử lý trên Client hoặc Web server. Một trong những ngôn ngữ thông dụng nhất của kịch bản phía client là VBScript. Ngoài ra, một vài cải tiến cho phép làm việc với các ứng dụng truy cập dữ liệu ở tầm vĩ mô liên quan đến hàng trăm, hàng nghìn người sử dụng qua mạng hay qua Internet. II. Khả năng của Visual Basic 6.0 2.1.Các điểu khiển của Visual Basic 6.0 Visual Basic 6.0 đưa vào nhiều điều khiển ActiveX mới. Ngoài những điều khiển được ứng dụng trên máy tính cá nhân độc lập còn có những điều khiển dành cho các đề án truy cập dữ liệu diện rộng. ở đây ta chỉ đưa ra một số điều khiển mới được ứng dụng trên máy tính cá nhân. a. Visual Basic 6.0 đưa ra giải pháp mới cho phép xem và lựa chọn ngày tháng bằng đồ hoạ từ một lịch biểu hay danh sách cuộn với điều khiển MonthView và Data TimePicker. b. Sử dụng đồ hoạ với ImageCombo & ImageList: *) Điều khiển danh sách ảnh (ImageLists): ImageList có thể chứa các điều khiển đồ hoạ khác nhau: ảnh bitmap, gif, biểu tượng... Imagelist thường kết hợp với một điều khiển bằng cách gán ImageList vào thuộc tính ImageList của điều khiển đó. *) Điều khiển kết hợp ảnh (ImageComBo) là điều khiển mới của VB6, cho phép nhúng ảnh đồ hoạ trong ComboBox. *)Visual Basic 6.0 còn cung cấp một thay đổi mới của điều khiển thanh cuộn FlatScrollBar với nhiều kiểu hiển thị (hiển thị chuẩn, hiển thị ba chiều và kiểu hai chiều). 2.2. Các tính năng ngôn ngữ của Visual Basic 6.0. Visual Basic 6.0 không chỉ cung cấp các điều khiển ActiveX và các cải tiến mà Visual Basic 6.0 còn cung cấp các tính năng mới trong ngôn ngữ của chính Visual basic. a. Các đối tượng hệ thống tập tin: Trong Visual Basic 6.0 việc lấy ra thông tin của hệ thống tập tin hoặc thi hành các tác vụ trên hệ thống tập tin (ghi vào tập tin hay thay đổi thư mục ...) trở nên ngắn gọn hơn nhiều nhờ đối tượng mới: FileSystemObject (đối tượng hệ thống tập tin, là một phần của Visual Basic Scripting library). Vì vậy nghiên cứu đối tượng này ta có thể chuyển sang viết kịch bản trong Internet Explorer hay IIS để lập trình hệ thống. Các đối tượng của FileSystemObject cung cấp các thuộc tính và phương thức để làm việc với tập tin, thư mục, và khả năng làm việc với ổ đĩa cục bộ hay ổ đĩa mạng. b. Khả năng làm việc với chuỗi rộng hơn (với các hàm lọc chuỗi, định dạng chuỗi, nối chuỗi, hàm trả về một mảng ...). c. Các điều khiển động: Visual Basic 6.0 khắc phục trở ngại của các phiên bản trước trong việc tạo các điều khiển động là buộc phải có ít nhất một điều khiển hiện ra trên biểu mẫu và ta có thể tạo ra những cái khác tự động. Với Visual Basic 6.0, ta dùng chương trình để tạo điều khiển lúc thi hành chương trình bằng cách sử dụng phương thức Add của tập hợp Controls. 2.3. Internet Visual Basic có thế mạnh trong việc phát triển ứng dụng trên Internet. Ta có thể dùng VBScript để viết các ứng dụng cho Desktop với Internet Explorer. Hơn thế nữa VBScript còn có thể dùng ở máy chủ để làm việc với Internet Explorer. Visual Basic 6.0 rất nhạy bén trong việc phát triển các ứng dụng Internet, nó mở rộng khả năng xây dựng các ứng dụng phía máy chủ cho IIS của Microsoft bằng cách giới thiệu đề án mới IIS Applications (ứng dụng IIS). Ngoài ra Visual Basic 6.0 còn mở rộng và đơn giản hoá DHTML (ngôn ngữ được tất cả các trình duyệt Web sử dụng) bằng cách đưa ra kiểu đề án mới khác: ứng dụng DHTML. 2.4. Khả năng dữ liệu của Visual Basic 6.0 Visual Basic 6.0 cung cấp các đối tượng dữ liệu ActiveX (ActiveX Data Object - ADO). Trong các phiên bản trước của Visual Basic, truy cập dữ liệu được thông qua DAO ( đối tượng truy cập dữ liệu - Data Access Object) và RDO (đối tượng dữ liệu từ xa - Remote Data Object). ADO tổng hợp hơn và có thể thay thế các kỹ thuật này. ADO đơn giản, dễ dùng hơn và có tầm hoạt động rộng hơn. Ta có thể dùng ADO để kết nối với cơ sở dữ liệu của một máy để bàn hoặc một máy chủ chứa cơ sở dữ liệu từ xa. Hơn nữa, ADO cho phép bạn truy cập nhiều kiểu dữ liệu, ví dụ như thư điện tử. Kỹ thuật ADO của Visual Basic 6.0 được chứa trong điều khiển mới, điều khiển dữ liệu ADO. Điều khiển ADO cho phép kết nối với các tập tin cơ sở dữ liệu để bàn hay các máy chủ ODBC trên mạng, hoặc ta có thể tạo một kết nối mới đến các CSDL khác. Ngoài ADO, Visual Basic 6.0 còn có một bộ công cụ và kỹ thuật mới giúp truy cập dữ liệu dễ dàng hơn.Trình thiết kế môi trường dữ liệu (Data Enviroment) cho phép xem xét và thao tác dữ liệu trong CSDL khác nhau. Bởi vì bản thân môi trường dữ liệu là những đối tượng, ta có thể sử dụng chúng như một điều khiển dữ liệu hay gắn nó với các điều khiển khác như hộp văn bản hay nhãn. Để tận dụng các thế mạnh của ADO, Visual Basic 6.0 đưa ra các điều khiển dữ liệu mới như DataGrid cho phép xem dữ liệu dưới dạng bảng gồm các dòng và cột, DataList và DataCombo dùng để lấy dữ liệu từ điều khiển ADO trong cấu hình ListBox hay ComboBox. FlexGrid linh động hơn để xem dữ liệu phức tạp. Visual Basic 6.0 còn mở rộng khả năng báo cáo với trình báo cáo dữ liệu giúp cho việc tạo, xem trước và in các báo cáo bằng nhiều cách khác nhau. Ta có thể thi hành báo cáo của Access từ Visual Basic, thiết kế với DataReport hay dùng Crystal Report. Crystal Report cung cấp một số khuôn mẫu báo cáo chuẩn cho phép ta xuất dữ liệu theo những dạng khác nhau tương đối phong phú, ta cũng có thể dùng báo cáo do mình thiết kế làm khuôn mẫu hay báo cáo tự tạo. Như vậy Crystal Report rất năng động và có thể đáp ứng những yêu cầu của chúng ta. 2.5. Điều khiển giao diện người sử dụng (Trình thiết kế DataEnviroment) Điểm mới trong Visual Basic 6.0 là khả năng tạo một giao diện người sử dụng ràng buộc dữ liệu dựa trên trình thiết kế DataEnviroment. Trình thiết kế DataEnviroment có thể được chia sẻ qua nhiều ứng dụng, vì vậy ta có thể dễ dàng lập trình trong một ứng dụng ràng buộc dữ liệu với mức tái sử dụng cao hơn. Trên thực tế, DataEnviroment với khả năng hỗ trợ kéo thả nên việc ràng buộc dữ liệu sẽ nhanh và tiện hơn nhiều so với điều khiển ràng buộc dữ liệu (với điều khiển ràng buộc dữ liệu ta phải ràng buộc từng điều khiển riêng rẽ với nguồn dữ liệu). Như vậy, ta thấy rằng Visual Basic 6.0 có rất nhiều tính năng mới cho phép ta làm việc với môi trường dữ liệu và thiết kế nên những chương trình hoàn hảo, giao diện thân thiện, dễ sử dụng. Ngoài những tính năng đã nêu ở trên, Visual Basic 6.0 còn có những khả năng mới, rất mạnh khác như: cho phép ta tự tạo những điều khiển ActiveX liên quan dữ liệu để mở rộng tính năng của điều khiển có sẵn. Tuy nhiên, trong phạm vi của đề án này em chỉ vận dụng một số tính năng mới của Visual Basic 6.0 với mục đích chủ yếu là xây dựng một phần của chương trình quản lý lương. Sau này, nếu có điều kiện em sẽ tiếp tục nghiên cứu và vận dụng những tính năng mới của Visual Basic 6.0 để xây dựng một chương trình quản lý lương hoàn chỉnh. Chương II Phân tích thiết kế hệ thống thông tin quản lý Lương HCSN I.Phân tích chương trình quản lý lương HCSN 1.1.Mô tả của chương trình Huyện Tân Lạc là một huyện nhỏ của tỉnh Hoà Bình, có các phòng ban chính: - Văn phòng hành chính - Phòng thanh tra Phòng kiểm soát. Phòng văn thư Phòng ngân sách Phòng kế toán Với các phòng ban trên nếu quản lý thủ công lương của các cán bộ trong huyện thì sẽ có nhiều bất tiện như sau: Bộ phận kế toán cần nhiều nhân lực. Tốn nhiều thời gian trong việc quản lý và lập báo cáo Gây nhiều bất tiện trong việc quảnlý sổ sách. Tìm kiếm thông tin về cán bộ gặp nhiều khó khăn, phức tạp. Báo cáo lương tháng mất nhiều thời gian,công sức. Xuất phát từ những nhược điểm của hệ thống thông tin bằng thủ công, nên việc tin học hoá trong công tác quản lý là việc làm hợp lý và cần thiết. Vậy phần mềm quản lý lương HCSN đã ra đời để khác phục những nhược điểm đó. Để quản lý tiền lương của Uỷ ban nhân dân huyện Tân Lạc phần mềm quản lý với các thông tin sau: Thông tin đầu vào: - Với những nhân viên mới vào phòng ban sẽ lưu trữ thông tin cá nhân, và có một mức lương hợp đồng cơ bản. - Hàng tháng cập nhật nhưng thay đổi nếu có, ngoài ra tuỳ theo chức vụ mà có các khoản trợ cấp chức vụ khác nhau. - Hàng tháng huyện sẽ tính lương cho nhân viên theo quy định của nhà nước. Thông tin đầu ra: Xuất ra các báo cáo theo yêu cầu: Báo cáo lương theo các phòng ban Báo cáo lương tháng theo từng cán bộ Báo cáo nhân sự. 1.2.Yêu cầu của chương trình - Nhập số liệu cán bộ gồm: ngày trả lương hàng tháng, các thay đổi hàng tháng cần cập nhật ... - Thay đổi mức lương: hệ số lương có thể thay đổi - Tính lương cán bộ: +Luongchinh = (h*ngc*luongcb)/22 +Tonglinh = luongchinh+pccv+pckv+luonghd +BH =Tonglinh*(BHXH+BHYT)/100 +Thuclinh =Tonglinh-BH Luongchinh:Lương chính của mỗi cán bộ h :Hệ số lương của mỗi cán bộ ngc :Ngày công luongcb :Lương cơ bản Tonglinh : Tổng lĩnh Pccv :Phụ cấp chức vụ Pckv :Phụ cấp khu vực Luonghd : Lương hợp đồng BH : Bảo hiểm BHXH : Bảo hiểm xã hội BHYT :Bảo hiểm y tế Thuclinh :Thực lĩnh Qua mô tả cho ta các thông tin bao gồm: Thông tin nhập : danh mục cán bộ, danh mục phòng ban, chức vụ cán bộ, bảng tiền lương tháng. +) Danh mục cán bộ: cho phép thêm mới, sửa, xoá, xem các thông tin về cán bộ.danh mục này có những thông tin cần thiết khi nhập cán bộ mới như : mã cán bộ, hệ số lương ,tạm ứng. +) Danh mục phòng ban : cho phép thêm, xoá, sửa, xem thông tin về các cán bộ trong phòng ban đó. +) Danh mục chức vụ: cho phép thêm, xoá, sửa, xem thông tin về chức vụ của các cán bộ trong các phòng ban. +) Danh mục bảng tiền lương tháng: cho phép cập nhật, thêm, xoá,sửa, xem các thông tin về cán bộ. Những thông tin phải được nhập đầy đủ thì mới tính được tổng lĩnh hàng tháng của các cán bộ. 2) Thông tin xuất : +) Các báo cáo lương theo từng cá nhân:cho biết các thông tin về cá nhân(mã cán bô,họ và tên,điện thoại...) hệ số lương, Bảo hiểm(XH và YT),tạm ứng,tổng lĩnh. +) Lương theo từng phòng ban: cho biết với mỗi phòng ban có các mã cán bộ, họ tên, hệ số lương,các khoản phụ cấp,tổng lĩnh,tạm ứng,thực lĩnh. +) Báo cáo nhân sự: Cho biết các cán bộ trong các phòng ban ( mã cán bộ, họ tên, ngày sinh, giới tính, hệ số lương, điện thoại). Các mẫu báo cáo Báo cáo lương theo phòng ban: UBND huyện Tân Lạc Bảng tiền lương tháng của phòng ban Đơn vị tính: Đồng Tên phòng ban Mã cán bộ Họ và tên Hệ số lương Lương chính Các khoản phụ cấp Chức vụ Khu vực Tổng lĩnh BHXH và BHYT Tạm ứng Thực lĩnh .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... Tân lạc ngày/tháng/năm Kế toán Thủ trưởng đơn vị Báo cáo nhân sự UBND huyện Tân Lạc Danh sách cán bộ trong các phòng ban Mã cán bộ Họ và tên Ngày sinh Giới tính Hệ số lương Điện thoại .... .... .... .... .... .... .... .... .... .... .... .... Tân Lạc ngày/tháng/năm Kế toán Thủ trưởng đơn vị 1.3.Phân tích chương trình 1.3.1 Phân tích sơ đồ chức năng (BFD) Sơ đồ chức năng Quản lý lương HCSN Báo cáo Quản lý Cập nhật Giải thích các chức năng: - Chương trình cho phép cập nhật, quản lý tình trạng lương của cán bộ. - Theo dõi các phòng ban và các chức vụ. - Cung cấp các thông tin đơn giản, thêm , sửa thông tin , xoá thông tin nhân viên. Tìm kiếm nhân viên theo mã cán bộ, họ tên, tên phòng ban, chức vụ. Báo cáo lương cán bộ *) Báo cáo lương theo phòng ban: Với mỗi phòng ban cho biết mã cán bộ, họ tên, hệ số lương của mỗi cán bộ, các khoản phụ cấp chức vụ , khu vực, tổng lĩnh,BHXH và BHYT,tạm ứng,thực lĩnh của mỗi cán bộ. *) Báo cáo lương từng cán bộ: Báo cáo chi tiết từng cán bộ như những thông tin cá nhân, ngày công, hệ số lương, BHXH và BHYT, tổng lĩnh... *) Báo cáo nhân sự : Cho biết các cán bộ trong các phòng ban trong huyện. 1.3.2. Phân tích sơ đồ luồng thông tin( IFD) Sơ đồ luồng thông tin (IFD) Nhân viên nhập liệu NV kiểm tra HS đã nhập Xử lý dữ liệu Thông tin đã xử lý Cập nhật tìm kiếm Hồ sơ Lương Trả lời Yêu cầu Tính lương LĐ và các PB liên quan Báo cáo lương Lập báo cáo 1.3.3.Phân tích sơ đồ luồng dữ liệu(DFD) Sơ đồ luồng dữ liệu (DFD): Nhân viên TT cần 1.0 Cập nhật cậpnhật Lãnh đạo Kiểm tra yêu cầu yêu cầu đã kiểm tra Lưu thôngtin mới vào hồ sơ Hồ sơ cán bộ Thông tin được Yêu cầu lấy ra 2.0 Báo cáo lương 3.0 Tìm kiếm Kế toán trưởng Báo cáo Báo cáo Yêu Báo Yêu cầu cáo cầu Lãnh đạo và các phòng ban chức năng có liên quan. a) Thuật toán nhập dữ liệu. Bắt đầu Mở các from nhập Tạo một bản ghi trắng Nhập dữ liệu vào bản ghi đó Có cập nhật dữ liệu vừa nhập không? C K Có nhập tiếp không? c K Đóng tệp Kết thúc c) Thuật toán tìm kiếm Bắt đầu Nhập điều kiện tìm kiếm Có bản ghi thoả mãn không? Thông báo tình trạng K Hiện bản ghi cần tìm C Có tìm kiếm tiếp không? C K Kết thúc 1.3.4.Phân tích sơ đồ quan hệ thực thể Danh mục danh sách cán bộ : Lưu thông tin về cán bộ Danh mục danh sách phòng ban: Lưu thông tin về các phòng ban Danh mục chức vụ cán bộ : Lưu thông tin về các chức vụ Bảng Tiền lương tháng : Lưu thông tin lương của nhân viên Sơ đồ quan hệ giữa các thực thể: Danh mục chức vụ Bảng tiền lương Danh sách cán bộ Danh sách phòng ban Ký hiệu quan hệ n-1 n 1 1.3.5.Các bảng trong chương trình Bảng 1: Tbl_DanhSachCanBo (Danh Sách Cán Bộ) Thuộc tính Kiểu dữ liệu Kích thước Diễn giải Macanbo Hoten Ngaysinh Gioitinh Hesoluong Tamung DienThoai Ngayvd Dangvien Trinhdo Honnhan Text Text Date/time Yes/no Number Number Text Date/time Yes/no Text Yes/no 10 25 dd/mm/yyyy single interger 10 dd/mm/yyyy 25 Mã số cán bộ Họ và tên cán bộ Ngày sinh Giới tính(nam/nữ) Hệ số lương Tạm ứng Điện thoại Ngày vào đảng Đảng viên Trình độ Hôn nhân Bảng 2:Tbl_ChucVuCanBo(Chức vụ cán bộ) Thuộc tính Kiểu dữ liệu Kích thước Diễn giải Macanbo Maphongban Ngaybatdau Chucdanh Ngayketthuc Text Text Date/time Text Date/time 10 10 dd/mm/yyyy 25 dd/mm/yyyy Mã cán bộ Mã phòng ban Ngày bắt đầu Chức danh Ngày kết thúc Bảng 3:Tbl_DanhSachPhongBan(Danh sách phòng ban) Thuộc tính Kiểu dữ liệu Kích thước Diễn giải Maphongban Tenphongban Dienthoai Diachi Fax Ghichu Text Text Text Text Text Text 10 25 10 25 10 50 Mã phòng ban Tên phong ban Điện Thoại Địa chỉ Số Fax Ghi chú Bảng 4:Tbl_BangTienLuong(Bảng Tiền Lương) Thuộc tính Kiểu dữ liệu Kích thước Diễn giải STT Ngaytra Macanbo Ngaycc Phucapcv Phucapkv Luonghd Ghichu Text Date/time Text Number Number Number Number Text 5 dd/mm/yyyy 10 Single Single Single Single 25 Số thứ tự Ngày trả Mã cán bộ Ngày công chính Phụ cấp chức vụ Phụ cấp khu vực Lương hợp đồng Ghi chú Bảng 5: Tbl_DanhSachBien(bảng danh sách biên) Bảng này thiết kế để cho biết lương cơ bản, bảo hiểm xã hội, bảo hiểm y tế. Thuộc tính Kiểu dữ liệu Kích thước Diễn giải STT Luongchinh BHXH BHYT Text Number Number Number 6 Single Single Single Số thứ tự Lương cơ bản Bảo hiểm xã hội Bảo hiểm y tế Tạo mối quan hệ giữa các bảng. Tbl_ChucVu CanBo Macanbo Maphongban Chucdanh ..... Tbl_DanhSachCanBo Macanbo Hoten ..... Tbl_BangTienLuong STT Ngaytra Macanbo .... Tbl_DanhSachPhongBan Maphongban Tenphongban ..... Sơ đồ quan hệ giữa các bảng II. Thiết kế chương trình quản lý lương HCSN 2.1.Thiết kế giao diện Thiết kế một màn hình chính để điều khiển toàn bộ các chức năng của chương trình. Thiết kế một màn hình nhập tiền lương và xem chi tiết của cán bộ công nhân viên. Thiết kế các màn hình nhập liệu cho chương trình trong đó cho phép nhập thêm dữ liêụ mới, Sửa đổi một dữ liệu nào đó đã được nhập, xoá một dữ liệu đã được nhập... Ngoài ra còn cho phép xem từng mẩu tin dữ liệu trong CSDL. Thiết kế màn hình nhập liệu cho cán bộ công nhân viên. Thiết kế màn hình theo dõi và cập nhật danh sách phòng ban. Thiết kế màn hình theo dõi và cập nhật chức vụ của nhân viên. Thiết kế màn hình cho việc tìm kiếm thông tin cán bộ. 2.2. Các giao diện màn hình Màn hình chính của chương trình Màn hình này cho phép người sử dụng chọn thực đơn mà mình muốn làm như hình dưới đây Thực đơn gồm 3 phần: Quảnlý gồm: Danh mục, Bảng lương Tháng,Tìm kiếm, Thoát. - Báo cáo gồm: Báo cáo lương theo phòng ban, Báo cáo lương theo cán bộ, Báo cáo lương nhân sự. Trợ giúp :Giới thiệu. 2.2.1. Danh mục *) Màn hình danh sách cán bộ Màn hình này đưa ra những thông tin như: mã cán bộ, họ và tên, ngày sinh giới tính, hệ số lương, tạm ứng và với những thông tin khác. Với những chức năng trên màn hình cho phép bạn xem thông tin, cập nhật thêm mới, sửa, xoá,thông tin một các nhanh chóng. *) Màn hình Danh mục chức vụ Màn hình cho phép xem thông tin, thêm, sửa, xoá, ghi với các chức năng như hình dưới đây. Cho phép bạn cập nhật các thông tin như mã cán bộ, mã phòng ban, ngày bắt đầu, chức danh, ngày kết thúc. *) Màn hình Danh Sách Phòng Ban Màn hình cho phép cập nhật, thêm mới, sửa , xoá và xem chi tiết danh sách các phòng ban Màn hình xem chi tiết Màn hình này cho biết chi tiết ứng với mỗi phòng ban thì có các cán bộ trong phòng ban đó. *) Màn hình bảng Tiền lương Màn hình này cho phép cập nhật thông tin thêm, sửa,... theo tháng. Nó còn cho biết chi tiết lương của các cán bộ Màn hình chi tiết lương theo tháng 2.2.2. Bảng lương tháng Màn hình cho phép quản lý các thông tin của cán bộ: thông tin về lương, thông tin khác về lương, thông tin cuối cùng về lương. Có chức năng đọc số thành chữ trong tổng số lĩnh, in báo cáo theo mã cán bộ. 2.2.3. Tìm kiếm Màn hình này cho bạn tìm kiếm theo Mã cán bộ hoặc theo Họ và tên , hoặc theo Tên phòng ban, hoặc theo Chức danh. Bạn chỉ cần nhập một trong bốn chỉ tiêu đó sau đó chọn nút tìm kiếm thông tin sẽ được hiện ra như hình dưới đây. 2.3.Thiết kế các module chương trình * Class Modules (Chức năng tăng giảm số bản ghi, thêm, sửa, xoá, ghi, bỏ qua, thoát) Option Explicit Private Enum cmdButtons cmdDau = 0 cmdTruoc = 1 cmdTiep = 2 cmdCuoi = 3 cmdThem = 4 cmdSua = 5 cmdLuu = 6 cmdXoa = 7 cmdBoQua = 8 cmdthoat = 9 End Enum Private Sub updateLabels(lblString As String) Dim iIndx As Integer With mvarFormName For iIndx = 0 To .Controls.Count - 1 If (.Controls(iIndx).Name = mvarLabelToUpdate) Then .Controls(iIndx).Caption = lblString Exit Sub End If Next End With End Sub Public Sub ProcessCMD(Index As Integer) Static vMyBookmark As Variant On Error GoTo a If mvaradoCtl.Recordset Is Nothing Then Exit Sub Select Case Index Case cmdDau mvaradoCtl.Recordset.MoveFirst editStatus = nowStatic Call updateNut(True) Case cmdTruoc mvaradoCtl.Recordset.MovePrevious editStatus = nowStatic Call updateNut(True) Case cmdTiep mvaradoCtl.Recordset.MoveNext editStatus = nowStatic Call updateNut(True) Case cmdCuoi mvaradoCtl.Recordset.MoveLast editStatus = nowStatic Call updateNut(True) Case cmdThem editStatus = nowAdding With mvaradoCtl.Recordset If (.RecordCount > 0) Then If (.BOF = False) And (.EOF = False) Then vMyBookmark = .Bookmark Else vMyBookmark = "" End If Else vMyBookmark = "" End If .AddNew Call updateNut Call updateLabels("Thêm mới...") End With Case cmdSua editStatus = nowEditing With mvaradoCtl.Recordset vMyBookmark = .Bookmark Call updateLabels("Sửa...") Call updateNut End With Case cmdLuu Dim bMoveLast As Boolean With mvaradoCtl.Recordset If .editMode = adEditAdd Then bMoveLast = True Else bMoveLast = False End If .Move 0 .Update editStatus = nowStatic If (bMoveLast = True) Then .MoveLast Else .Move 0 End If editStatus = nowStatic mvarTotalRecords = .RecordCount Call updateLabels("Đã lưu!") Call updateNut(True) End With Case cmdXoa Dim iTl As Integer Call updateLabels("Xóa...") iTl = MsgBox("Bạn thực sự muốn xóa ?", vbQuestion + vbYesNo + vbDefaultButton2, "Thông báo") If iTl = vbYes Then With mvaradoCtl.Recordset .Delete If .BOF Or .AbsolutePosition = 1 Then .MoveFirst Else .MovePrevious End If mvarTotalRecords = .RecordCount Call updateLabels("Đã xóa!") End With End If editStatus = nowStatic Call updateNut(True) Case cmdBoQua With mvaradoCtl.Recordset If editStatus = nowEditing Then .Move 0 .Bookmark = vMyBookmark End If .CancelUpdate If editStatus = nowEditing Then .Move 0 Else If Len(vMyBookmark) Then .Bookmark = vMyBookmark Else If .RecordCount > 0 Then .MoveFirst End If End If End If Call updateLabels("Bỏ qua!") End With editStatus = nowStatic Call updateNut(True) Case cmdthoat Unload mvarFormName End Select Exit Sub *) Module đọc số thành chữ Option Base 1 Public MyDoc, My_So ' Chương trình đọc một số thành chữ Public Function Doc(So) As String On Error GoTo Err_Doc ' Không cần xử lý lỗi, nếu gặp không đọc MyDoc = Array("một", "hai", "ba", "bốn", "năm", "sáu", "bảy", "tám", "chín") My_So = Array("tỷ", "nghìn", "triệu") Dim SoChuc As Long, SoTram As Long, SoDv As Long Dim MyStr As String So = Fix(So) ' Bỏ đi số thập phân MyStr = "" If So >= 1000 Then Exit Function SoTram = So \ 100 ' Số trăm là bao nhiêu ? So = So Mod 100 ' Còn lại số hàng chục là bao nhiêu ? SoChuc = So \ 10 ' Số chục là bao nhiêu ? SoDv = So Mod 10 ' Số đơn vị là bao nhiêu ? ' Bắt đầu đọc số này, theo các trường hợp khác nhau If SoTram >= 1 Then MyStr = MyDoc(SoTram) & " trăm" If SoChuc >= 2 Then MyStr = MyStr & " " & MyDoc(SoChuc) & " mươi" ElseIf SoChuc = 1 Then MyStr = MyStr & " mười" End If If SoDv = 0 Then MyStr = MyStr Doc = MyStr Exit Function End If If SoChuc = 0 Then If SoTram 0 Then MyStr = MyStr & " lẻ " & MyDoc(SoDv) Else MyStr = MyDoc(SoDv) End If Doc = MyStr Exit Function End If If SoChuc = 1 Then If SoDv 5 Then MyStr = MyStr & " " & MyDoc(SoDv) Else MyStr = MyStr & " lăm" End If Doc = MyStr Exit Function End If If SoDv = 1 Then MyStr = MyStr & " mốt" ElseIf SoDv = 5 Then MyStr = MyStr & " lăm" Else MyStr = MyStr & " " & MyDoc(SoDv) End If Doc = MyStr Exit_Doc: Exit Function Err_Doc: ' Thoát khỏi chương trình khi có lỗi xảy ra Resume Exit_Doc End Functi

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

  • doc35316.doc