1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS

85 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Quản Lý Nhân Sự Lương Trên Hệ Quản Trị Cơ Sở Dữ Liệu Microsoft Access
Tác giả Nguyễn Thanh Hương
Trường học Trường Đại Học Kinh Tế Quốc Dân
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đề Tài
Định dạng
Số trang 85
Dung lượng 10,68 MB

Cấu trúc

  • CHƯƠNG I GIỚI THIỆU VÀ KHẢO SÁT HỆ THỐNG (14)
    • I. Giới thiệu về công ty (5)
      • 1. Quá trình hình thành và phát triển (5)
      • 2. Ch ức năng, nhiệm vụ của các ph òng ban (6)
    • II. Kh ảo sát hệ thống (13)
  • CHƯƠNG II PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG (20)
    • 1. Các chức nă ng cơ b ản của hệ thống (0)
    • 2. Biểu đồ phân cấp chức năng của hệ thống quản lý nhân sự/ lương (15)
      • 2.1 Biểu đồ phân cấp chức năng (15)
      • 2.2 Biểu đồ luồng dữ liệu mức khung cảnh (16)
      • 2.3 Biểu đồ luồng dữ liệu mức đỉnh (16)
        • 2.3.1 Ch ức nă ng qu ản lý hồ sơ (17)
        • 2.3.2 Ch ức nă ng qu ản lý lương (18)
        • 2.3.3 Ch ức nă ng tra c ứu t ìm ki ếm (18)
        • 2.3.4 Ch ức nă ng báo cáo, th ống kê (19)
      • 2.4 Biểu đồ luồng dữ liệu mức dưới đỉnh tổng hợp (19)
  • CHƯƠNG III XÂY DỰNG CƠ SỞ DỮ LIỆU CỦA CHƯƠNG TRÌNH (30)
    • 2. Sử dụng Microsoft Access để tạo cơ ở dữ liệu cho chươ s ng trình (22)
      • 2.1 Lược đồ cấu trúc dữ liệu (LCD) (22)
      • 2.2 Thiết kế các file dữ liệu (23)
        • 2.2.1 Bảng HoSoCanBo lư u tr ữ thông tin về nhân sự trong một cơ quan (23)
        • 2.2.2 B ảng lươ ng l u tr ư ữ thông tin về quá trình lao động của nhân sự (23)
        • 2.2.3 Bảng HesoLuong lư u tr ữ thông tin về hệ số lươ ng của công ty (24)
        • 2.2.4 Bảng Thưởng lư u tr ữ thông tin về hệ số lươ ng c ủa công ty (0)
        • 2.2.5 Bảng HesoLuong lư u tr ữ thông tin về hệ số lươ ng của công ty (25)
    • 3. Dùng Microsoft Access để tạo bộ cơ sở dữ liệu (25)
      • 3.1 Mối quan hệ cho các bảng dữ liệu trong chương trình (26)
      • 3.2 Relationships phân hệ Quản lý nhân sụ ền lương -ti (26)
      • 4.1 Xây d ựng lược đồ cấu trúc chươ ng trình LCT (26)
        • 4.1.1 Chỉnh sửa hồ sơ (0)
        • 4.1.2 Chấm công (27)
        • 4.1.3 Tính l ng:……………………………………………………………………30 ươ (0)
        • 4.1.4 Tra cứu (27)
        • 4.1.5 Thống kê báo cáo (28)
      • 4.2 Đặc tả Module (28)
        • 4.2.1 Cập nhật hồ sơ (28)
        • 4.2.2 Tra c ứu,T ìm ki ếm (29)
  • CHƯƠNG IV: SỬ DỤNG NGÔN NG Ữ LẬP TR ÌNH VISUAL BASIC ĐỂ THIẾT KẾ CHƯƠNG TRÌNH (0)
    • 3. Sử dụng các đối tượng truy cập dữ liệu trong chương trình (32)
    • 4. Các điều khiển giao diện người sử dụng (0)
    • 5. Sử dụng các câu truy vấn (SQL) (37)
    • 6. Cài đặt và chạy chương trình (39)
  • CHƯƠNG V: ĐÁNH GIÁ VÀ PHÁT TRIỂN ĐỀ TÀI (48)

Nội dung

GIỚI THIỆU VÀ KHẢO SÁT HỆ THỐNG

Giới thiệu về công ty

1.Quá trình hình thành và phát triển

Vào ngày 22 tháng 6 năm 1995, UBND thành phố Hà Nội đã cấp giấy phép số 1906GP/UB cho việc thành lập công ty TNHH Minh Trí, chuyên sản xuất và xuất khẩu các mặt hàng may mặc bằng vải dệt kim Sản phẩm của công ty hiện đã có mặt trên nhiều thị trường quốc tế, bao gồm EU, Canada, Đức, Tiệp, Đài Loan, Nhật Bản, Hồng Kông, Trung Quốc, đặc biệt là thị trường Mỹ.

Trong 13 n m qua, công ty ã không ngă đ ừng hoàn thiện về cơ ấu tổ chức c và bộ máy quản lý nhằm đáp ứng nhu cầu sản xuất của cán bộ công nhân viên trong công ty để luôn đạt mức tăng trưởng và kim ngạch xuất khẩu cao Đồng thời tạo công ăn việc làm cho hàng nghìn lao động, nâng cao chất lượng đời sống cán bộ công nhân viên

- Tên công ty: Công ty trách nhiệm hữu hạn Minh Trí

- Tên giao dịch: Minh Tri Limited Company

- Tên viết tắt: Minh Tri co.lmt

- Trụ sở chính: Khu công nghiệp Vĩnh Tuy - Quận Hoàng Mai – Tp Hà Nội

- Hình thức hoạt động: sản xuất kinh doanh

Công ty chuyên cung cấp các sản phẩm từ vải dệt kim, bao gồm nhiều loại quần áo Sản phẩm được chia thành hai dòng chính: hàng cao cấp và hàng đại trà, đáp ứng nhu cầu đa dạng của khách hàng.

- Kim ngạch xuất khẩu đạt: 24.344.000 USD (2006)

- Sản lượng sản xuất đạt: 5.993.000 sản phẩm (2006)

- Doanh thu đạt: 67 tỷ đồng

+ Thành tích xuất khẩu do Bộ Thương mại tặng năm 2004

+ Bằng khen của Liên oàn quđ ận Hoàng Mai về công tác tốt

+ Bằng khen của Sở Y tế Hà Nội về VSATTP và chăm sóc sức khoẻ ban đầu cho người lao động

+ cùng nhiều bằng khen về công tác an ninh trật tự, công tác phòng cháy chữa cháy, bảo hiểm xã hội,

Mặc dù còn non trẻ, công ty TNHH Minh Trí đã khẳng định được vị thế của mình trong quá trình hội nhập kinh tế quốc tế, đặc biệt là trong ngành dệt may Việt Nam.

2.Chức năng, nhiệm vụ của các phòng ban trong công ty

+ Giám đốc: Là người đứng đầu công ty:

- Chịu trách nhiệm trước Nhà nước và pháp luật về tất cả các hoạt động sản xuất kinh doanh của công ty

- Điều hành chung mọi hoạt động của các phòng ban trong công ty

- Chịu trách nhiệm chỉ đạo, bồi dưỡng và nâng cao chuyên môn, kỹ thuật và cải thiện đời sống cho cán bộ công nhân viên

Kết hợp chặt chẽ với các phòng chức năng và nghiệp vụ của công ty giúp các tổ chức, đoàn thể hoạt động đúng quy chế Sự phối hợp này tạo điều kiện thuận lợi cho việc thực hiện các nhiệm vụ và đảm bảo hiệu quả trong công việc.

- Trực tiếp phụ trách công tác cán bộ

Chịu trách nhiệm toàn diện về kỹ thuật và quân sự tự vệ, đảm bảo đào tạo kế hoạch tác nghiệp hiệu quả Theo dõi và đôn đốc sản xuất hàng hóa trong các phân xưởng, đồng thời giám sát tình trạng máy móc và thiết bị sản xuất để duy trì hiệu suất tối ưu.

- Ký kết hợp đồng nội địa.

- Mua bán vật tư, hàng hoá, nguyên vật liệu chính, phụ tùng thiết bị.

- Kết hợp cùng phòng tài vụ kinh doanh thành phẩm, phế liệu, sửa chữa nhà xưởng.

- Liên hệ điều tiết máy móc

+ Phòng tổ chức lao động hành chính

Trợ lý giám đốc đóng vai trò quan trọng trong việc hỗ trợ công việc của lãnh đạo, đặc biệt là trong lĩnh vực tổ chức cán bộ, đào tạo và phát triển nguồn nhân lực, quản lý lao động tiền lương, chế độ chính sách và hành chính Họ cũng tham gia vào việc phục vụ và bảo vệ các hoạt động của tổ chức, đảm bảo mọi thứ vận hành trơn tru và hiệu quả.

Nghiên cứu và đề xuất các biện pháp nhằm hỗ trợ giám đốc công ty trong việc chỉ đạo, hướng dẫn, kiểm tra và đôn đốc các đơn vị thực hiện hiệu quả các chủ trương đã đề ra.

- Tổng hợp, phân tích, báo cáo, thống kê các hoạt động thuộc lĩnh vực phòng quản lý để phục vụ công tác chung trong toàn công ty

Nghiên cứu và đề xuất các phương án tổ chức bộ máy quản lý cùng các đơn vị cần thiết để phù hợp với yêu cầu sản xuất kinh doanh, đồng thời điều chỉnh cơ chế quản lý theo từng giai đoạn phát triển.

+ Phối hợp với các đơn vị liên quan tổng hợp các văn bản quy định chức năng, nhiệm vụ của các đơn vị

+ Xây dựng nội quy, quy c ế quản lý thuộc lĩnh vực quản lý vh à lao động để trình duyệt với giám đốc và ban hành trong công ty

+ Hướng dẫn, đôn đốc các đơn vị thực hiện đúng nội quy, quy chế.

Quản lý hồ sơ và số lượng cán bộ công nhân viên trong công ty là nhiệm vụ quan trọng, bao gồm việc quản lý các vấn đề liên quan đến tuyển dụng, bố trí, sử dụng, bổ nhiệm, đề bạt, miễn nhiệm, nâng bậc, khen thưởng và kỷ luật.

Giúp lãnh đạo công ty xây dựng chương trình đào tạo và bồi dưỡng nhằm nâng cao trình độ cho đội ngũ cán bộ quản lý, cán bộ kỹ thuật chuyên môn và công nhân.

Giúp giám đốc công ty tổ chức định kỳ việc nhận xét và đánh giá cán bộ, thực hiện bỏ phiếu tín nhiệm và thăm dò ý kiến của cán bộ, công nhân viên, đồng thời đảm bảo tuân thủ đầy đủ các quy định về tổ chức cán bộ.

Để đảm bảo quy trình tuyển sinh, học nghề và tuyển dụng diễn ra suôn sẻ, cần thực hiện các thủ tục ký kết hợp đồng lao động mới Đồng thời, cần xử lý các thủ tục chuyển công tác hoặc thôi việc cho cán bộ công nhân viên, sau khi đã nhận được sự đồng ý từ giám đốc.

+ Theo dõi, tổng hợp hợp đồng ký kết, gia hạn hợp đồng lao động cho cán bộ công nhân viên trong toàn công ty

Công tác tiền lương bao gồm việc xây dựng và ban hành các nội quy, quy chế liên quan đến tiền lương và thu nhập, đồng thời thiết lập chế độ bảo hiểm xã hội Đảm bảo thực hiện các chính sách cho người lao động theo đúng quy định là một yếu tố quan trọng trong quá trình này.

+ Thực hiện tốt công tác vệ sinh lao động, ệ sinh môi trường.v

+ Thực hiện các công tác bảo vệ an ninh, trật tự an toàn, xây dựng lực lượng tự vệ vững mạnh

+ Khám và phát hiện bệnh nghề nghiệp cho cán bộ công nhân viên mắc phải tại công ty, có kế hoạch phòng bệnh và điều trị

+ Xây dựng v ổ chức thực hiện kế hoạch quản lý hệ thống kho tà t àng, bảo quản hàng hoá

+ Tổ chức việc nhập và xuất vật tư, nguyên phụ liệu từ kho đến các đơn vị liên quan đảm bảo đầy đủ, đúng quy định của công ty

+ Thực hiện chế độ cấp phát sổ sách, luân chuyển giao nhận: chứng từ, chế độ kiểm kê, báo cáo

+ Phòng quản lý đơn hàng:

- Xây dựng và tiếp nhận đơn hàng

- Dịch đơn hàng, sau ó gđ ửi lên các phòng ban sản xuất.

+ Phòng kế toán tài chính:

Chức năng của kế toán tài chính là tham mưu cho giám đốc trong việc sử dụng vốn một cách hợp lý và đúng mục đích Điều này đảm bảo rằng công ty duy trì quá trình sản xuất kinh doanh liên tục và đạt hiệu quả kinh tế cao.

Kh ảo sát hệ thống

1.Tổng quan về hệ thống quản lý

Quản lý là quá trình thể hiện ý chí nhằm biến đổi và kiểm soát các hiện tượng tổng thể Nó bao gồm việc tạo ra các sự kiện và thay đổi để ngăn chặn những sự kiện xảy ra một cách ngẫu nhiên Quản lý không chỉ đơn thuần là lắp ráp các nhiệm vụ rời rạc, mà còn là hoạt động có sự phân biệt rõ ràng với các chức năng khác trong tổ chức.

Trước khi máy tính được áp dụng phổ biến trong các hệ thống quản lý, các quy trình quản lý, bao gồm quản lý nhân sự, đều phải thực hiện thủ công.

2.Chức năng và nhiệm vụ của hệ thống quản lý nhân sự

Hệ thống quản lý nhân sự đóng vai trò quan trọng trong việc thông báo định kỳ cho ban lãnh đạo về các hoạt động như tổ chức lao động, tiền lương, thi đua, chấm công, khen thưởng và kỷ luật Hệ thống này hoạt động dưới sự chỉ đạo trực tiếp của giám đốc, đảm bảo hiệu quả trong quản lý nguồn nhân lực.

Hệ thống quản lý nhân sự có nhiệm vụ cập nhật hồ sơ cán bộ công nhân viên theo quy định, bổ sung thông tin thay đổi trong quá trình công tác Việc theo dõi và quản lý lao động để chấm công và thanh toán lương là một trong những nhiệm vụ quan trọng Ngoài ra, công tác thống kê và báo cáo tình hình theo yêu cầu của ban giám đốc cũng là một phần không thể thiếu trong hệ thống quản lý cán bộ.

3.Yêu cầu của hệ thống và những khó khăn

Trước khối lượng lớn nhân viên và các yêu cầu ngày càng cao, việc quản lý theo phương pháp thủ công trở nên khó khăn và không hiệu quả Phương pháp này đòi hỏi nhiều nhân lực, thời gian và công sức, trong khi mỗi nhân viên đều có hồ sơ riêng, gây khó khăn trong việc lưu trữ, tìm kiếm, bổ sung và sửa đổi thông tin Do đó, cần tìm kiếm giải pháp quản lý hiện đại hơn để đáp ứng nhu cầu ngày càng phức tạp.

Dựa vào những nhược điểm đã nêu, việc xây dựng một hệ thống tin học hóa cho quản lý nhân sự và các hệ thống quản lý khác là rất cần thiết.

4.Những yêu cầu đặt ra đối với hệ thống mới

Với sự phát triển của xã hội, việc tổ chức và quản lý cần được cải tiến để đáp ứng tốt hơn yêu cầu hiện tại Điều này sẽ hỗ trợ các cấp lãnh đạo trong việc thực hiện hiệu quả các chính sách và chủ trương đối với cán bộ công nhân viên chức.

Để quản lý hiệu quả khối lượng nhân viên trong một cơ quan, cần tổ chức một hệ thống lưu trữ hồ sơ tốt nhằm tiết kiệm không gian, dễ dàng tìm kiếm và thuận tiện cho việc bổ sung, sửa đổi Hệ thống quản lý mới phải khắc phục những nhược điểm của hệ thống cũ, đồng thời có khả năng phát hiện lỗi và kiểm tra tính chính xác của dữ liệu ngay khi cập nhật.

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

1 Các chức năng c bơ ản của hệ thống: ĐỀ T CÁN BỘ T GVHD: T HANH HƯ

1.2> Qu ản lý lươ ng :

+ Chấm công cho nhân sự

+ Tính l ng cho nhân sươ ự dựa trên bảng chấm công

1.3 > Tra c ứu,T ìm ki ếm :

+ Tra cứu theo hồ sơ lý lịch

+ Tra cứu theo các số liệu tổng hợp

+ Thống kê Báo cáo về trình độ người lao động trong đơn vị

+ Thống kê Báo cáo về mức thu nhập chung của nhân sự trong đơn vị

2 Biểu đồ phân cấp chức năng của hệ thống quản lý nhân sự / lương: 2.1 Biểu đồ phân cấp chức năng

Quản lý nhân sự / lương

Quản lý hồ sơ Quản lý lương Tra cứu, Tìm kiếm

Tra cứu theo lý lịch

Tra cứu theo l ngươ Trình độ

2.2 Biểu đồ luồng dữ liệu mức khung cảnh

Biểu đồ luông dữ liệu mức khung cảnh cho ta cái nhìn khái quát về quá trình hoạt động của hệ thống

Tác nhân ngoài Nhân s sự ẽ đưa thông tin của bản thân vào cho hệ thống cập nhật và xử lý.

Tác nhân ngoài Ban lãnh đạo đưa các yêu cầu cho hệ thống và nhận được các báo cáo và kết quả trả lời từ hệ thống.

2.3 Biểu đồ luồng dữ liệu mức đỉnh

Hệ thống quản lý nhân sự /lương

Biểu Báo Thông tin cá nhân

Hồ sơ Lương Chấm công

Khi thông tin nhân sự được nhập vào hệ thống, chức năng Quản lý hồ sơ sẽ phân loại và xử lý, sau đó lưu trữ thông tin vào kho Hồ sơ và Hồ sơ lưu Chức năng Quản lý lương thực hiện chấm công và tính lương cho nhân sự, đồng thời cập nhật thông tin vào kho bảng lương và bảng chấm công Chức năng Tra cứu, Tìm kiếm cho phép nhận yêu cầu thông tin từ Ban lãnh đạo và tiến hành tìm kiếm trong các kho dữ liệu để trả về kết quả Cuối cùng, chức năng Báo cáo, thống kê nhận yêu cầu từ Ban lãnh đạo, xử lý và cung cấp các báo biểu cần thiết.

2.3.1 Ch ức nă ng qu ản lý hồ sơ

- Thông tin của nhân sự được đưa vào hệ thống chức năng Quản lý hồ sơ sẽ phân loại:

Nếu có thông tin về nhân sự nghỉ hưu, qua đời hoặc không còn làm việc tại cơ quan, nhưng vẫn liên quan đến đơn vị, cần chuyển thông tin này cho chức năng Lưu trữ hồ sơ để lưu trữ tại kho.

Các thông tin khác sẽ được chuyển cho chức năng Cập nhật hồ sơ để xử lý, sau đó sẽ đưa thông tin về kho hồ sơ Nếu có thông báo liên quan đến hồ sơ, cần phải xem xét kỹ lưỡng.

Nhân sự Thông tin cá nhân

Khi có sự thay đổi trong hồ sơ nhân sự, cần thực hiện việc cập nhật và điều chỉnh thông tin cho phù hợp Sau khi hoàn tất các sửa đổi, hồ sơ sẽ được lưu trữ tại kho "hồ sơ".

2.3.2 Ch ức nă ng qu ản lý lươ ng:

Chức năng chấm công giúp ghi nhận thời gian làm việc của nhân sự hàng tháng, nhận thông tin từ các nguồn bên ngoài như đơn xin nghỉ và quyết định công tác Đồng thời, chức năng tính lương sử dụng dữ liệu từ kho chấm công và hồ sơ để tính toán lương cho nhân viên theo từng tháng, sau đó lưu trữ vào kho lương.

2.3.3 Ch ức nă ng tra c ứu t ìm ki ếm:

Chức năng Tra cứu và Tìm kiếm sẽ nhận thông tin yêu cầu từ hệ thống và các tác nhân bên ngoài Ban lãnh đạo, đồng thời thực hiện phân loại thông tin một cách hiệu quả.

Nhân sự Chấm công Đơn xin nghỉ

Thông tin về nhân sự

Các yêu cầu Tra cứu, tìm kiếm

2.3.4 Ch ức nă ng báo cáo, th ống k ê:

Khi nhận yêu cầu thông tin, chức năng Báo cáo thống kê sẽ phân loại và xác định kho dữ liệu phù hợp để xử lý, sau đó tạo ra các Báo Biểu cần thiết.

2.4 Biểu đồ luồng dữ liệu mức dưới đỉnh tổng hợp

Các yêu cầu Báo biểu

Cập nhật hồ sơ Chấm công

Hồ sơ Bảng chấm công Bảng lương

Nhân s ự Đơn nghỉ xin quyết định công tác

Thông tin cá Thông tin

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

Biểu đồ phân cấp chức năng của hệ thống quản lý nhân sự/ lương

Quản lý nhân sự / lương

Quản lý hồ sơ Quản lý lương Tra cứu, Tìm kiếm

Tra cứu theo lý lịch

Tra cứu theo l ngươ Trình độ

2.2 Biểu đồ luồng dữ liệu mức khung cảnh

Biểu đồ luông dữ liệu mức khung cảnh cho ta cái nhìn khái quát về quá trình hoạt động của hệ thống

Tác nhân ngoài Nhân s sự ẽ đưa thông tin của bản thân vào cho hệ thống cập nhật và xử lý.

Tác nhân ngoài Ban lãnh đạo đưa các yêu cầu cho hệ thống và nhận được các báo cáo và kết quả trả lời từ hệ thống.

2.3 Biểu đồ luồng dữ liệu mức đỉnh

Hệ thống quản lý nhân sự /lương

Biểu Báo Thông tin cá nhân

Hồ sơ Lương Chấm công

Khi thông tin nhân sự được nhập vào hệ thống, chức năng Quản lý hồ sơ sẽ phân loại và lưu trữ thông tin vào kho Hồ sơ và Hồ sơ lưu Đồng thời, chức năng Quản lý lương thực hiện việc chấm công và tính lương, sau đó cập nhật thông tin vào kho bảng lương và bảng chấm công Chức năng Tra cứu và Tìm kiếm tiếp nhận yêu cầu từ Ban lãnh đạo và tiến hành xử lý thông tin từ các kho dữ liệu để cung cấp kết quả Cuối cùng, chức năng Báo cáo và thống kê nhận yêu cầu từ Ban lãnh đạo và tạo ra các báo biểu sau khi xử lý thông tin.

2.3.1 Ch ức nă ng qu ản lý hồ sơ

- Thông tin của nhân sự được đưa vào hệ thống chức năng Quản lý hồ sơ sẽ phân loại:

Nếu thông tin liên quan đến nhân sự nghỉ hưu, qua đời hoặc không còn làm việc trong cơ quan, nhưng vẫn có các dữ liệu liên quan đến đơn vị, thì cần chuyển giao thông tin này cho chức năng Lưu trữ hồ sơ để lưu trữ tại kho.

Các thông tin cần thiết sẽ được chuyển đến chức năng Cập nhật hồ sơ để xử lý, sau đó sẽ được gửi về kho hồ sơ Nếu có thông báo liên quan đến hồ sơ, chúng sẽ được cập nhật kịp thời.

Nhân sự Thông tin cá nhân

Khi có sự thay đổi trong hồ sơ nhân sự, cần thực hiện việc cập nhật và sửa đổi cho phù hợp Sau khi hoàn tất các điều chỉnh, hồ sơ sẽ được lưu trữ trong kho "hồ sơ".

2.3.2 Ch ức nă ng qu ản lý lươ ng:

Chức năng Chấm công cho phép ghi nhận thời gian làm việc của nhân sự hàng tháng, đồng thời tiếp nhận thông tin từ các nguồn bên ngoài như Đơn xin nghỉ và Quyết định công tác Chức năng Tính lương sử dụng dữ liệu từ kho Chấm công và kho Hồ sơ để tính toán lương cho nhân viên theo từng tháng, sau đó lưu trữ vào kho Lương.

2.3.3 Ch ức nă ng tra c ứu t ìm ki ếm:

Chức năng Tra cứu và Tìm kiếm nhận thông tin yêu cầu từ hệ thống và các tác nhân bên ngoài Ban lãnh đạo, đồng thời thực hiện việc phân loại thông tin một cách hiệu quả.

Nhân sự Chấm công Đơn xin nghỉ

Thông tin về nhân sự

Các yêu cầu Tra cứu, tìm kiếm

2.3.4 Ch ức nă ng báo cáo, th ống k ê:

Khi nhận thông tin yêu cầu, chức năng Báo cáo thống kê sẽ phân loại và xác định nguồn dữ liệu cần xử lý từ kho Sau đó, hệ thống sẽ tạo ra các báo biểu tương ứng.

2.4 Biểu đồ luồng dữ liệu mức dưới đỉnh tổng hợp

Các yêu cầu Báo biểu

Cập nhật hồ sơ Chấm công

Hồ sơ Bảng chấm công Bảng lương

Nhân s ự Đơn nghỉ xin quyết định công tác

Thông tin cá Thông tin

XÂY DỰNG CƠ SỞ DỮ LIỆU CỦA CHƯƠNG TRÌNH

Cơ sở dữ liệu là một kho chứa thông tin, có nhiều loại cơ ở dữ liệu, s trong đó phổ biến nhất hiện nay là CSDL quan h ệ.

 Chứa dữ liệu trong các bảng, được cấu tạo bởi các dòng (mẫu tin), cột (trường)

 Cho phép lấy về (hay truy vấn) các tập hợp dữ liệu con từ bảng.

 Cho phép nối các bảng với nhau cho mục đích truy cập các mẫu tin liên quan với nhau chứa trong các bảng khác nhau

Bộ máy (Engine) cơ ở dữ liệu s

Chức năng chính của cơ sở dữ liệu (CSDL) được thực hiện bởi hệ thống chương trình quản lý cơ sở dữ liệu, giúp tổ chức cách thức lưu trữ và truy xuất dữ liệu hiệu quả.

Lưu trữ Thông tin nhân sự

Cơ sở dữ liệu (CSDL) được tổ chức thành các bảng để thể hiện các phân nhóm dữ liệu Mỗi bảng chứa các mẫu tin, đại diện cho các dữ liệu riêng lẻ trong phân nhóm đó Mẫu tin bao gồm các trường, với mỗi trường thể hiện một phần dữ liệu cụ thể trong mẫu tin.

Khi tạo bảng, việc thao tác với chúng là rất quan trọng Thao tác này bao gồm việc nhập dữ liệu từ các bảng khác và kiểm tra, sửa đổi cấu trúc bảng Để thao tác dữ liệu trong một bảng, chúng ta sử dụng Recordset.

RecordSet là một cấu trúc dữ liệu thể hiện một tập hợp con các mẫu tin lấy về từ CSDL

Khóa chính : một trường được chỉ ra là khóa chính của bảng phục vụ cho việc xác định duy nhất mẫu tin

Khóa ngoại : là khóa trong bảng liên quan chứa bản sao của khóa chính của bản chính

Mối quan hệ trong cơ sở dữ liệu là cách chính thức để xác định sự liên kết giữa hai bảng Khi thiết lập một mối quan hệ, bạn thông báo cho hệ thống quản lý cơ sở dữ liệu rằng hai trường trong hai bảng có mối liên hệ với nhau.

Hai trường liên quan với nhau trong một mối quan hệ là khóa chính và khóa ngoại

Mối quan hệ trong cơ sở dữ liệu không chỉ ghép các mẫu tin liên quan trong các bảng riêng biệt mà còn tận dụng tính toàn vẹn tham chiếu, đảm bảo dữ liệu luôn nhất quán Khi tính toàn vẹn tham chiếu được duy trì, hệ thống cơ sở dữ liệu sẽ ngăn chặn việc xóa một mẫu tin nếu còn các mẫu tin khác tham chiếu đến nó, giúp bảo vệ tính toàn vẹn của dữ liệu.

2 Sử dụng Microsoft Access để tạo cơ ở dữ liệu cho chươ s ng trình

Microsoft Access có giao diện tinh xảo và dễ dùng để tạo các đối tượng CSDL

2.1 Lược đồ cấu trúc dữ liệu (LCD):

Họ tên Ngày sinh Nơi sinh Giới tính Quê quán Dân tộc Trình độ Chức vụ

Hệ số lương Ngày vào biên ch ế

Macb Hesoluong LoaiThuong MucPhucap SongayNghi Luong Tạm ứng Conlai KyNhan Heso

2.2 Thiết kế các file dữ liệu

2.2.1 Bảng HoSoCanBo lưu trữ thông tin về nhân sự trong một cơ quan:

STT Tên trường Kiểu Độ rộng Giải thích

2 HoTen Text 30 Họ và tên nhân s ự

12 NgayBC Date 8 Ngày biên chế

2.2.2 Bảng lương l u trư ữ thông tin về quá trình lao động của nhân sự:

Stt Tên trường Kiểu Độ rộng Giải thích

1 Macb Text 10 Mã nhân sự

2 Hesoluong currantcy 4 Tháng lao động

3 LoaiThuong Text 15 Loại thưởng của cán bộ

4 MucPhuCap text 15 Mức phụ cấp

5 SoNgayNghi Number 2 Số ngày nghỉ trong tháng

6 Luong currentcy 10 Số ngày nghỉ trong tháng

7 TamUng currentcy 10 Tiền đ ạm ứngã t

8 ConLai currentcy 10 Số Lương còn lại

6 KyNhan text 5 Ký nhận đã nhận đủ

2.2.3 Bảng HesoLuong lưu trữ thông tin về hệ số lương của công ty:

STT Tên trường Kiểu Độ rộng Giải thích

1 Heso Currentcy 6 Hệ số lương

2 TienTuongUng Currentcy 10 Tiênd t ng ươ ứng với hệ số

2.2.4 Bảng Thưởng lưu trữ thông tin về hệ ố lươs ng của công ty:

STT Tên trường Kiểu Độ rộng Giải thích

2 TienThuong Currentcy 10 Tiền thưởng tương ứng

2.2.5 Bảng HesoLuong lưu trữ thông tin về hệ số lương của công ty:

STT Tên trường Kiểu Độ rộng Giải thích

1 MụchuCap Text 10 Mức phụ cấp

2 TienTuongUng Currentcy 10 Tiền phụ cấp tương ứng

3 Dùng Microsoft Access để tạo bộ cơ sở dữ liệu

Cơ sở dữ liệu cho chương trình Quản lý nhân sự ền lương.-ti

3.1 Mối quan hệ cho các bảng dữ liệu trong chương trình

3.2 Relationships phân hệ Quản lý nhân sụ-tiền lương

4.1 Xây dựng lược đồ cấu trúc chương trình LCT:

Xác định chức năng Ghi l ại

Thêm hồ sơ Lưu h ồ sơ

Ngày công được chấm Quy ra công

Công hưởng lương thời gian

% lương Công hưởngBHXH Tính l ng ươ

Tính l ng c ươ ơ bản Lên bảng lương

Xác định câu hỏi vào Kết quả

Tra cứu theo hồ sơ

Tra cứu theo số liệu TH

Input: thông tin về nhân sự Begin

Thống kê về trình độ Thống kê về Báo Bi ểu mức lương

Input: Các thông tin yêu c ầu

Tìm câu trả lời trong kho hồ sơ

Tìm câu trả lời trong kho l ng ươ

Tìm câu trả lời trong các kho còn l ại

XÂY DỰNG CƠ SỞ DỮ LIỆU CỦA CHƯƠNG TRÌNH

Sử dụng Microsoft Access để tạo cơ ở dữ liệu cho chươ s ng trình

Microsoft Access có giao diện tinh xảo và dễ dùng để tạo các đối tượng CSDL

2.1 Lược đồ cấu trúc dữ liệu (LCD):

Họ tên Ngày sinh Nơi sinh Giới tính Quê quán Dân tộc Trình độ Chức vụ

Hệ số lương Ngày vào biên ch ế

Macb Hesoluong LoaiThuong MucPhucap SongayNghi Luong Tạm ứng Conlai KyNhan Heso

2.2 Thiết kế các file dữ liệu

2.2.1 Bảng HoSoCanBo lưu trữ thông tin về nhân sự trong một cơ quan:

STT Tên trường Kiểu Độ rộng Giải thích

2 HoTen Text 30 Họ và tên nhân s ự

12 NgayBC Date 8 Ngày biên chế

2.2.2 Bảng lương l u trư ữ thông tin về quá trình lao động của nhân sự:

Stt Tên trường Kiểu Độ rộng Giải thích

1 Macb Text 10 Mã nhân sự

2 Hesoluong currantcy 4 Tháng lao động

3 LoaiThuong Text 15 Loại thưởng của cán bộ

4 MucPhuCap text 15 Mức phụ cấp

5 SoNgayNghi Number 2 Số ngày nghỉ trong tháng

6 Luong currentcy 10 Số ngày nghỉ trong tháng

7 TamUng currentcy 10 Tiền đ ạm ứngã t

8 ConLai currentcy 10 Số Lương còn lại

6 KyNhan text 5 Ký nhận đã nhận đủ

2.2.3 Bảng HesoLuong lưu trữ thông tin về hệ số lương của công ty:

STT Tên trường Kiểu Độ rộng Giải thích

1 Heso Currentcy 6 Hệ số lương

2 TienTuongUng Currentcy 10 Tiênd t ng ươ ứng với hệ số

2.2.4 Bảng Thưởng lưu trữ thông tin về hệ ố lươs ng của công ty:

STT Tên trường Kiểu Độ rộng Giải thích

2 TienThuong Currentcy 10 Tiền thưởng tương ứng

2.2.5 Bảng HesoLuong lưu trữ thông tin về hệ số lương của công ty:

STT Tên trường Kiểu Độ rộng Giải thích

1 MụchuCap Text 10 Mức phụ cấp

2 TienTuongUng Currentcy 10 Tiền phụ cấp tương ứng

Dùng Microsoft Access để tạo bộ cơ sở dữ liệu

Cơ sở dữ liệu cho chương trình Quản lý nhân sự ền lương.-ti

3.1 Mối quan hệ cho các bảng dữ liệu trong chương trình

3.2 Relationships phân hệ Quản lý nhân sụ-tiền lương

4.1 Xây dựng lược đồ cấu trúc chương trình LCT:

Xác định chức năng Ghi l ại

Thêm hồ sơ Lưu h ồ sơ

Ngày công được chấm Quy ra công

Công hưởng lương thời gian

% lương Công hưởngBHXH Tính l ng ươ

Tính l ng c ươ ơ bản Lên bảng lương

Xác định câu hỏi vào Kết quả

Tra cứu theo hồ sơ

Tra cứu theo số liệu TH

Input: thông tin về nhân sự Begin

Thống kê về trình độ Thống kê về Báo Bi ểu mức lương

Input: Các thông tin yêu c ầu

Tìm câu trả lời trong kho hồ sơ

Tìm câu trả lời trong kho l ng ươ

Tìm câu trả lời trong các kho còn l ại

SỬ DỤNG NGÔN NGỮ LẬP TRÌNH VISUAL BASIC ĐỂ THIẾT KẾ CHƯƠNG TRÌNH

1 Ngôn ngữ lập trình Visual Basic

Visual Basic mang đến nhiều tính năng mới, bao gồm các điều khiển hiện đại giúp phát triển ứng dụng với giao diện và tính năng tích hợp từ Microsoft Office 97 và trình duyệt Web Internet Explorer, mà không cần phải có bản sao của điều khiển trên biểu mẫu.

 Lập trình để thêm điều khiển vào đề án tự động và có thể tạo ra các điều khiển Activex hiệu chỉnh

Viết chương trình ứng dụng phía máy chủ sử dụng HTML động để kết nối với các thư viện liên kết động của Internet Information Server.

Một số cải tiến đã được thực hiện để hỗ trợ việc sử dụng các ứng dụng truy cập dữ liệu quy mô lớn, phục vụ hàng trăm đến hàng nghìn người dùng thông qua mạng hoặc Internet.

Visual Basic cung cấp các đối tượng dữ liệu ActiveX cho phép kết nối với các tập tin cơ sở dữ liệu Ngoài các điều khiển ActiveX, Visual Basic còn hỗ trợ nhiều đối tượng khác Môi trường dữ liệu trong Visual Basic được xây dựng từ các đối tượng, cho phép sử dụng chúng như một điều khiển dữ liệu và có thể gắn kết với các điều khiển khác.

Visual Basic giới thiệu các điều khiển dữ liệu mới, tận dụng sức mạnh của ADO Điều khiển DataGrid cho phép hiển thị dữ liệu dưới dạng bảng với các dòng và cột Bên cạnh đó, DataList và DataCombo tương tự như DBList và DBCombo, giúp lấy danh sách dữ liệu từ ADO và hiển thị trong hộp danh sách (ListBox) hoặc hộp kết hợp (ComboBox).

Visual Basic nâng cao khả năng báo cáo thông qua trình báo cáo dữ liệu, cho phép người dùng tạo, xem trước và in các báo cáo tương tự như trong Access Người dùng có thể sử dụng các điều khiển báo cáo từ hộp công cụ báo cáo dữ liệu mới và tích hợp chúng vào biểu mẫu báo cáo dữ liệu.

2 Các đối tượng truy cập dữ liệu

Dynamic Data Exchange (DDE) : Trao đổi dữ liệu động

Cho phép các các ứng dụng chia sẽ thông tin với nhau trong lúc thi hành

Cơ chế giao tiếp DDE (Dynamic Data Exchange) là một ứng dụng cho phép gửi dữ liệu vào một vùng đã được xác định trước bởi một ứng dụng khác Tuy nhiên, việc thiết lập giao tiếp và trao đổi dữ liệu yêu cầu lập trình viên phải cấu hình rất nhiều thông số, khiến cho quá trình thực hiện theo DDE trở nên phức tạp.

Object Linking and Embedding (OLE) : Nhúng và kết nối đối tượng

OLE tuân thủ triết lý của Windows (Click chuột, kéo và thả) OLE có thể kéo dữ liệu từ ứng dụng này và thả vào ứng dụng khác

OLE có hai kỹ thuật :

Khởi động tại chỗ (In-place activation) là quá trình mà dữ liệu được tạo ra từ ứng dụng 1 và được chuyển giao sang ứng dụng 2 Khi người dùng nhấn đúp chuột vào dữ liệu trong ứng dụng 2, nó sẽ hoạt động tương tự như trong ứng dụng 1.

SỬ DỤNG NGÔN NG Ữ LẬP TR ÌNH VISUAL BASIC ĐỂ THIẾT KẾ CHƯƠNG TRÌNH

Sử dụng các đối tượng truy cập dữ liệu trong chương trình

Điều khiển DAO (Data Access Objects)

DAO cho phép thực hiện các truy vấn và cập nhật giá trị trong các bảng cơ sở dữ liệu, bao gồm cấu trúc bảng và mối quan hệ giữa chúng Ưu điểm nổi bật của DAO là giao diện lập trình mạnh mẽ và dễ sử dụng Đặc biệt, với cơ sở dữ liệu Jet của Microsoft, DAO cung cấp khả năng truy cập vào các tính năng mà SQL hay ADO không hỗ trợ DAO có thể được sử dụng để truy cập cơ sở dữ liệu trên máy cá nhân hoặc trong môi trường Client/Server.

Khuy ết điểm : Mô hình đối tượng DAO khá phức tạp

Thông qua các tập hợp sở hữu đối tượng, cơ sở dữ liệu cho phép thao tác hiệu quả trên dữ liệu và cấu trúc của nó, đồng thời tạo ra các đối tượng dữ liệu mới và kiểm tra cấu trúc cũng như nội dung dữ liệu trong cơ sở dữ liệu.

Trong lập trình DAO, có một tập hợp cốt lõi gồm các kỹ thuật thông dụng được sử dụng gần như cho mọi chương trình, bao gồm :

 Thi hành câu truy vấn SELECT để lấy về các dữ liệu từ cơ ở dữ liệu s

 Thi hành câu truy vấn hành động (bao gồm các câu truy vấn Update, Delete, Append)

 Sữa đổi cấu trúc cơ ở dữ liệu s

 Xử lý lỗi phát sinh bởi truy cập cơ ở dữ liệu s Điều khiển ADODC (Microsoft ADO Data Control 6.0 (OLEDB) )

Visual Basic cung cấp các đối tượng dữ liệu ActiveX (ADO), thay thế cho DAO và RDO trong việc truy cập dữ liệu ADO là công nghệ hướng đối tượng, tương tự như DAO và RDO, sử dụng giao diện dựa trên đối tượng cho công nghệ dữ liệu OLEDB ADO không chỉ dễ sử dụng mà còn có khả năng kết nối với nhiều loại dữ liệu khác nhau và cho phép truy cập dữ liệu từ xa.

ADO là một kỹ thuật truy cập dữ liệu từ Web Server, được cung cấp dưới dạng thư viện Activex Server, tương tự như DAO và RDO, giúp dễ dàng tích hợp vào ứng dụng Visual Basic Thực tế đã chứng minh rằng ADO mang lại hiệu quả cao hơn trong việc làm việc với cơ sở dữ liệu Client/Server so với các kỹ thuật khác.

Hầu hết các lập trình viên Visual Basic không làm việc trực tiếp với OLEDB, mà thay vào đó, họ sử dụng ADO, một mô hình đối tượng cung cấp giao diện tương tác với OLEDB.

Khi sử dụng ADO, lập trình chỉ cần tập trung vào giao diện người dùng ở phía Client Việc truy cập dữ liệu trên trình duyệt Web và ứng dụng Visual Basic được chuyển giao hoàn toàn cho Activex Server, đảm bảo rằng logic chương trình luôn nhất quán, bất kể loại ứng dụng nào đang được sử dụng.

Cấu trúc này cho phép dùng thành phần lập trình Activex thông dụng trên cả trình duyệt Wed v ứng dụng Client Visual Basic.à

 Điều khiển nội tại (Hoạt động với mọi ấn bản của Visual Basic)

Các điều khiển này có khả năng kết nối trực tiếp với các trường trong cơ sở dữ liệu thông qua điều khiển dữ liệu hoặc các nguồn dữ liệu khác, chẳng hạn như trình thiết kế DataEnvironment.

K ết nối ch ứa v ới

Các thuộc tính DataSource, DataField của điều khiển ràng buộc dữ liệu

Các thuộc tính ConnectionString, RecordSource của điều khiển ADO

Cách th ức của điều khiển ADO Data k ết nối với cơ sở dữ liệu trong ứng d ụng

Nhập dữ liệu với điều khiển TEXTBOX : Dùng sữa đổi dữ liệu kiểu chuỗi và kiểu số từ một cơ ở dữ liệu s

Trình thiết kế DataEnvironment cho phép tạo giao diện người sử dụng ràng buộc dữ liệu một cách hiệu quả Việc chia sẻ trình thiết kế này giữa nhiều biểu mẫu và ứng dụng giúp tối ưu hóa khả năng lập trình trong các ứng dụng ràng buộc dữ liệu, vì người dùng không cần phải ràng buộc từng điều khiển riêng lẻ với nguồn dữ liệu.

Truy cập giá trị Boolean với điều khiển CHECKBOX : dùng CheckBox để hiển thị một giá trị True hay False từ một trường trong một cơ ở dữ liệu s

Sử dụng điều khiển ListBox để hiển thị dữ liệu là một phương pháp hiệu quả cho phép người dùng chọn lựa các phần tử trong danh sách Tuy nhiên, khi hiển thị dữ liệu từ cơ sở dữ liệu, ListBox vẫn gặp phải một số hạn chế về lượng dữ liệu có thể chứa và hiển thị.

TabControl : Làm cho các chức năng của chương trình nằm ọn tr g ên một form

 Điều khiển Activex (Là những thành phần bổ sung cho bản Professional và Enterprise của Visual Basic)

Khác với các điều khiển giao diện người dùng do hệ điều hành cung cấp, những điều khiển này cần được phân phối bổ sung cho máy tính của người dùng để ứng dụng có thể sử dụng hiệu quả.

DataGrid là một công cụ mạnh mẽ cho phép hiển thị dữ liệu dưới dạng dòng và cột, khi được kết nối với điều khiển ADO Data hoặc trình thiết kế DataEnvironment.

Sử dụng điều khiển DataList và DataCombo cho phép nhập dữ liệu từ một trường trong cơ sở dữ liệu, đồng thời tương thích với DAO Data và ADO Data mới.

5 Sử dụng các câu truy vấn (SQL)

Câu truy vấn là lệnh cơ bản trong cơ sở dữ liệu, cho phép lấy thông tin từ một hoặc nhiều trường trong các bảng khác nhau Bằng cách sử dụng câu truy vấn, người dùng có thể áp dụng các tiêu chí để giới hạn số lượng dữ liệu được truy xuất, giúp tối ưu hóa quá trình tìm kiếm thông tin.

SQL là giải pháp tiêu chuẩn để quản lý và thao tác với cơ sở dữ liệu Nó được triển khai qua nhiều hình thức khác nhau trong các hệ thống cơ sở dữ liệu quan hệ, chẳng hạn như Access và SQL Server.

Các câu truy vấn SQL cho phép lấy dữ liệu từ bảng cơ sở, đối chiếu thông tin giữa các bảng và thao tác với cấu trúc dữ liệu Một số kiểu truy vấn SQL có thể được sử dụng để điền dữ liệu vào điều khiển Trong các ứng dụng, truy vấn SQL thường được áp dụng khi làm việc với cơ sở dữ liệu thông qua các mô hình đối tượng như DAO, RDO và ADO.

Lợi ích khi dùng SQL

Sử dụng các câu truy vấn (SQL)

Một câu truy vấn là lệnh cơ bản trong cơ sở dữ liệu để truy xuất thông tin Nó cho phép người dùng lấy dữ liệu từ một hoặc nhiều trường trong các bảng khác nhau Bên cạnh đó, người dùng có thể áp dụng các tiêu chí để giới hạn số lượng dữ liệu được truy xuất, giúp tối ưu hóa kết quả tìm kiếm.

SQL là giải pháp tiêu chuẩn để quản lý cơ sở dữ liệu, được sử dụng rộng rãi trong các hệ thống cơ sở dữ liệu quan hệ như Access và SQL Server.

Các câu truy vấn SQL cho phép truy xuất thông tin từ bảng cơ sở dữ liệu, đối chiếu dữ liệu giữa các bảng và thao tác với cấu trúc cơ sở dữ liệu Những kiểu truy vấn này có thể được sử dụng để điền dữ liệu vào các điều khiển dữ liệu Trong các ứng dụng, SQL được áp dụng khi làm việc với cơ sở dữ liệu thông qua các mô hình đối tượng như DAO, RDO và ADO.

Lợi ích khi dùng SQL

Dựa trên kinh nghiệm trong Visual Basic, bất kỳ tham chiếu nào đến một bảng có thể được thay thế bằng câu lệnh SQL hoặc tham chiếu đến một truy vấn đã lưu trữ, tuy nhiên, tất cả đều dựa vào câu lệnh SQL.

Nơi lý tưởng để đặt câu lệnh SQL là thuộc tính RecordSource của điều khiển dữ liệu Thay vì chỉ định RecordSource là tên bảng, bạn có thể thay đổi thuộc tính này thành tên một truy vấn có sẵn hoặc một câu lệnh SQL.

SELECT * FROM TEN_BANG ORDER BY KEY Điều này cho ta sự linh hoạt đáng kể khi chọn lựa một nguồn mẩu tin

Sử dụng câu lệnh SQL trong các ngữ cảnh khác nhau của chương trình

 Tham số Source của phương thức OpenRecordSet của đối tượng

DataBase của DAO được sử dụng phổ biến nhất khi truy vấn các mẩu tin từ một cơ ở dữ liệu Access s

 Sử dụng thuộc tính Source của một đối tượng RecordSet của ADO.

Sử dụng câu lệnh SELECT để lấy về các mẩu tin

Câu lệnh SELECT là yếu tố then chốt trong các truy vấn dữ liệu, cho phép người dùng chỉ định các trường cần lấy về Dạng phổ biến nhất của câu lệnh này là: SELECT *.

Mệnh đề này có chức năng trả về tất cả các trường trong nguồn dữ liệu chỉ định, giúp người dùng không cần biết tên cụ thể của các trường Tuy nhiên, việc lấy về toàn bộ cột trong bảng có thể không hiệu quả, đặc biệt khi chỉ cần một số cột nhất định, dẫn đến việc truy vấn trả về quá nhiều thông tin không cần thiết.

Việc chỉ định các trường cần lấy về trong truy vấn không chỉ giúp cải thiện hiệu quả mà còn giảm tải cho cơ sở dữ liệu, đặc biệt là khi làm việc với bảng lớn có nhiều trường Điều này cho phép người dùng chỉ nhận được thông tin cần thiết, từ đó tối ưu hóa quá trình truy vấn và tiết kiệm thời gian xử lý.

Sử dụng mệnh đề FROM để chỉ nguồn mẩu tin

Mệnh đề FROM làm việc với câu lệnh SELECT để trả về các mẩu tin trong bảng, ví dụ : SELECT * FROM TEN_BANG Vì một câu truy vấn

Khi sử dụng câu lệnh SELECT FROM mà không chỉ định thứ tự, kết quả trả về sẽ không xác định Để tối ưu hóa truy vấn, cần giới hạn số trường lấy về bằng cách sử dụng mệnh đề WHERE.

Mệnh đề WHERE trong SQL giúp giới hạn số lượng bản ghi trả về dựa trên các tiêu chí lọc do lập trình viên chỉ định Kết quả của các tiêu chí này sẽ là TRUE hoặc FALSE, cho phép người dùng dễ dàng kiểm soát dữ liệu được truy xuất.

Cài đặt và chạy chương trình

Frm.MDImain : Màn hình giao di ện chính của chương tr ình

Frm.phucap: Màn hình nh ập thông tin phụ cấp

Frm.nhapheso : Màn hình nh ập hệ số lương

Frm.thuong: Màn hình nh ập loại thưởng

Frm.hosocb: Màn hình nh ập hồ sơ cán bộ

Frm.luong: Màn hình nh ập lương cho cán bộ

Frm.tracuucb: Màn hình tra c ứu cán bộ

Frm.xemhoso: Màn hình hi ện thị xem hồ sơ cán bộ

Frm.tracuuluong: Màn hình tra c ứu lương cán bộ

Frm.xemluong: Màn hình hi ển thị xem lương cán bộ

ĐÁNH GIÁ VÀ PHÁT TRIỂN ĐỀ TÀI

Chương trình đánh giá và phát triển đề tài của doanh nghiệp đã hỗ trợ hiệu quả cho cán bộ nhân sự trong việc cập nhật, chỉnh sửa và quản lý thông tin lương một cách chính xác và dễ dàng Tuy nhiên, do thời gian và kiến thức hạn chế, chương trình vẫn còn một số thiếu sót như chưa có phần quản trị hệ thống và phân quyền người sử dụng, cũng như quy trình sao lưu dữ liệu Trong tương lai, chúng tôi sẽ nỗ lực hoàn thiện chương trình và phát triển thêm nhiều module mới, bao gồm hệ thống chấm công tự động và quản lý đơn hàng, nhằm tạo dựng một cơ sở dữ liệu chung, nâng cao tính ưu việt của chương trình.

Cuối cùng, em xin chân thành cảm ơn Ths Nguyễn Thanh Hương, giảng viên môn Công nghệ thông tin tại Trường Đại Học Kinh Tế Quốc Dân, vì đã tận tình chỉ bảo và hướng dẫn em trong quá trình hoàn thành đề tài này Em cũng xin cảm ơn công ty TNHH Minh Trí đã tạo điều kiện cho em khảo sát và thực tập, giúp em hoàn thành đề tài một cách tốt nhất.

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

XÁC NHẬN CỦA CƠ QUAN THỰC TẬP

1 Cơ Sở Dữ Liệu Quan Hệ

2 Phân Tích & Thiết Kế Hệ Thống

3 Cơ Sở Dữ Liệu & Phân Tích Thiết Kế Hệ Thống Thông Tin Quản Lý

4 Tự Học Lập Trình Cơ Sở Dữ Liệu Visual Basic 6.0 tập 1&2

Nguyễn Đình Tê(chủ biên)

5 Những Bài Thực Hành Cơ Sở Dữ Liệu Cơ Sở Visual Basic Đinh Xuân Lâm

6 Cơ Sở Dữ Liệu Visual Basic

7 Tin Học Văn Phòng Access 2000

8 Lập Trình Access 2000 Ông Văn Thông

Sub MDIForm_Unload(Cancel As Integer)

Private Sub mnuAboutSalary_Click() frmAbout.Show

Private Sub mnuAllowanceFiles_Click() frmPhuCap.Show

Private Sub mnuCoefficientforsalary_Click() frmnhapheso.Show

If MDImain.mnuEnglish.Checked = False Then

Sub mnuexit_Click() ketthuc = MsgBox("Bạn muốn kết thúc tại đây! ", vbYesNo, "Thông báo")

Private Sub mnuLookUppersonal_Click() frmTracuuCb.Show

Private Sub mnuLookupSalary_Click() frmTraCuuLuong.Show

Private Sub mnuOpenFilesPersonal_Click() cdlmain.ShowOpen myPathhoso = cdlmain.FileName

Private Sub mnupersonalfile_Click() frmhosocb.Show

Private Sub mnurewardforsalary_Click() frmthuong.Show

Private Sub mnusalaryfile_Click() frmluong.Show

If Me.StatusBar1.Visible = False Then

If Me.tlbmain.Visible = False Then

If MDImain.mnuVietnamese.Checked = False Then

Private Sub tlbmain_ButtonClick(ByVal Button As ComctlLib.Button) Select Case Button.Key

Case "New" file = InputBox(" Nhập vào Tên CSDL cần tạo", "Tao bảng cSDL míi")

MsgBox "Phần này dành cho bạn"

MsgBox "choa bai" mnuexit_Click

'Đoạn chơng trình nhằm chuẩn hoá tiếng việt

Function Chuan(XauVao As String, Thamso As Byte) As String

Dim xau(1 To 50) As String

For k = 1 To Len(KTV) xau(k) = Mid(KTV, k, 1)

'tất các ký tự đầu đợc biến thành chữ hoa

For k = 1 To Len(KTV) xau(k) = Mid(KTV, k, 1)

If Asc(xau(1)) >= 168 And Asc(xau(1)) = 168 And Val(Asc(xau(i + 1))) 12 Then

If Int(Val(Ngay)) > 31 Then

CheckDate = Trim(Ngay & "/" & Thang & "/" & Nam)

Public Sub Language(Language As Boolean)

mnuInput.Caption = "Nhập Dữ Liệu"

mnuAllowanceFiles.Caption = "&NhËp Phô CÊp "

mnuCoefficientforsalary.Caption = "&Hệ Số Lơng "

mnupersonalfile.Caption = "Hồ &Sơ Can Bo "

mnurewardforsalary.Caption = "Mức thởng "

mnuLookUppersonal.Caption = "Tra cứu theo hồ &Sơ Nhân viên " mnuLookupSalary.Caption = "Tra cứu theo &lơng "

MnuLanguage.Caption = "&Ngôn ngữ Hiển Thị"

mnuAboutSalary.Caption = "Thông Tin Về &Chơng Trình " End With

mnuCoefficientforsalary.Caption = "&Ceofficient Fo Salary " mnupersonalfile.Caption = "&Personal Files "

mnurewardforsalary.Caption = "&Raward for Salary "

mnuLookUppersonal.Caption = "Look Up According &Personal " mnuLookupSalary.Caption = "Look Up According &Salary " MnuTools.Caption = "&Tools"

Public Sub KiemTraNgay(dong As String)

MsgBox "Bạn Nhập sai DL ngày tháng rồi! Hãy Nhập lại nh sau: dd/mm/yyyy", vbCritical, "Chó ý"

End If nam1 = Val(Mid(dong, 7, 5)) dong = Format(dong, "dd/mm/yyyy")

If Ngay > 30 And Len(nam1) = 4 Then

MsgBox "Bạn nhập sai ngày, tháng này chỉ có 30 ngày!", vbCritical,

If (Thang = 4) Or (Thang = 6) Or (Thang = 9) Or (Thang = 11) And (Len(nam1) = 4) Then

If Ngay > 31 And Len(nam1) = 4 Then

MsgBox "Bạn nhập sai ngày, tháng này chỉ có 31 ngày!", vbCritical,

If (Thang = 1) Or (Thang = 3) Or (Thang = 5) Or (Thang = 7) Or (Thang = 8) Or (Thang = 10) Or (Thang = 12) And (Len(nam1) = 4) Then cbohoso(0).SetFocus ok = True

MsgBox "Bạn nhập sai DL, tháng 2 chỉ có 28 ngày", vbCritical, "Chú ý"

If (Nam Mod 4 = 0) And (Ngay 28) And (Thang = 2) Then MsgBox "Bạn nhập sai DL, tháng 2 chỉ có 28 ngày", vbCritical,

If (Nam Mod 4 0) And (Ngay 12) And (Len(nam1) = 4)) Then

MsgBox "Bạn Nhập sai kiểu tháng !", vbCritical, "Chú ý"

If ok = True Then frmhosocb.cbohoso(0).SetFocus

Private Sub cbohoso_KeyDown(Index As Integer, KeyCode As Integer, Shift

MsgBox "Bạn Phải nhập DL Vao !" cbohoso(0).SetFocus

If (UCase(Trim(cbohoso(0).Text)) = UCase("Nam")) Or (UCase(Trim((cbohoso(0).Text))) = UCase("N÷")) Then cbohoso(1).SetFocus

MsgBox "DL chỉ nhận là : Nam hoặc Nữ ", vbCritical,

MsgBox "Bạn Phải nhập DL Vao !" cbohoso(1).SetFocus

Else cbohoso(1).Text = Chuan(cbohoso(1), 2) txthoso(3).SetFocus

MsgBox "Bạn Phải nhập DL Vao !" cbohoso(2).SetFocus

Else cbohoso(2).Text = Chuan(cbohoso(2), 1) cbohoso(3).SetFocus

If KeyCode = 13 Then cbohoso(3).SetFocus

Else cbohoso(3).Text = Chuan(cbohoso(3), 2) cbohoso(4).SetFocus

MsgBox "Bạn Phải nhập DL Vao !" cbohoso(4).SetFocus

Else cbohoso(4).Text = Chuan(cbohoso(4), 2) cbohoso(5).SetFocus

MsgBox "Bạn Phải nhập DL Vao !" cbohoso(5).SetFocus

Else cbohoso(5).Text = Chuan(cbohoso(5), 2) txthoso(5).SetFocus

Sub cmdchucnang_Click(Index As Integer)

'MsgBox " Bạn vừa chọn nhập mới "

Set rec = db.OpenRecordset("hosocanbo")

Case 1 ' chọn chức năng sửa

IDMacb = InputBox(" Nhập vào mã Cán bộ cần sửa ", "Sửa chữa")

If Len(Trim(IDMacb)) = 0 Then Exit Sub

Set rec = db.OpenRecordset("SELECT * FROM HosoCanBo WHERE [MaCB]='" & IDMacb & "'")

MsgBox "Không tồn tại mã cán bộ đó trong lu trữ ", vbCritical,

Case 2 ' chọn chức năng Ghi

MsgBox " Bạn vừa chọn ghi"

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

Set rec = db.OpenRecordset("HoSoCanBo")

' Kiểm tra Xem Da co đủ Thong tin

If cbohoso(i).Text = "" Then cbohoso(i).SetFocus

If txthoso(i).Text = "" Then txthoso(i).SetFocus

Next k dongsql = "Insert into hosocanbo

(macb,Hoten,ngaysinh,Gioitinh,DanToc,Quequan,NoiOhiennay,Phong,ChucV u,TrinhDo,Chuyenmon,NgayvaoBienChe) Values ('" &

UCase(Trim(txthoso(0).Text)) & "','" & Trim(txthoso(1).Text) & "','" & Trim(txthoso(2).Text) & "','" & Trim(cbohoso(0).Text) & "','" &

Trim(cbohoso(1).Text) & "','" & Trim(txthoso(3).Text) & "','" &

Trim(txthoso(4).Text) & "','" & Trim(cbohoso(2).Text) & "','" &

Trim(cbohoso(3).Text) & "','" & Trim(cbohoso(4).Text) & "','" &

Trim(cbohoso(5).Text) & "','" & Trim(txthoso(5).Text) & "')"

For j = 0 To dathoso.Recordset.RecordCount - 1

If UCase(Trim(txthoso(0).Text))

UCase(dathoso.Recordset.Fields(0).Value) Then coghi = False

MsgBox " Đã Có trong cơ sở dữ liệu của bạn !"

If coghi = True Then db.Execute dongsql dathoso.Refresh

End If db.Execute dongsql db.Execute "Insert Into Luong(macb,luong,kynhan)Values ('" & UCase(Trim(txthoso(0).Text)) & "',100,'No')" db.Close txthoso(0).SetFocus

Set rec = db.OpenRecordset("Hosocanbo")

If Not EOF Or Not BOF Then xoa = MsgBox("Bạn Muốn xoá ?", vbYesNo, "Chú ý")

Case 5 ' In Ên frmXemhoso.cmdchucnang_Click

Private Sub dathoso_Reposition() dongxoa = Me.dathoso.Recordset.RecordCount + 1

If Not Me.dathoso.Recordset.BOF Or Not Me.dathoso.Recordset.EOF Then txthoso(0).Text = Me.dathoso.Recordset.Fields(0).Value txthoso(1).Text = Me.dathoso.Recordset.Fields(1).Value

MsgBox "Đây la quá bản ghi cuối rồi", vbCritical, "Chú ý"

Me.Move (Screen.Width - Me.Width) / 2, (Screen.Height - Me.Height) / 20 End Sub

Private Sub Form_Load() mypath = "c:\qlluong\QLLuong.mdb"

Private Sub txthoso_KeyDown(Index As Integer, KeyCode As Integer, Shift

MsgBox "Bạn Phải nhập DL Vao !" txthoso(0).SetFocus

Else txthoso(0).Text = Chuan(txthoso(0), 3) txthoso(1).SetFocus

Else txthoso(1).Text = Chuan(txthoso(1), 1) txthoso(2).SetFocus

MsgBox "Bạn Phải nhập DL Vao !" txthoso(2).SetFocus

MsgBox "Bạn Phải nhập DL Vao !" txthoso(3).SetFocus

Else txthoso(3).Text = Chuan(txthoso(3), 1) txthoso(4).SetFocus

MsgBox "Bạn Phải nhập DL Vao !" txthoso(4).SetFocus

Else txthoso(4).Text = Chuan(txthoso(4), 1) cbohoso(2).SetFocus

MsgBox "Bạn Phải nhập DL Vao !" txthoso(5).SetFocus

If KiemTraNgayvaoBC(Trim(txthoso(5).Text)) = True Then cmdchucnang_Click (2) cmdchucnang_Click (0)

Public Sub HienData() dathoso.DatabaseName = mypath dathoso.RecordSource = "Hosocanbo"

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [DanToc] FROM HosoCanBo" Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmhosocb.cbohoso(1).AddItem (.Fields(0).Value) MoveNext

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [Phong] FROM HosoCanBo"

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmhosocb.cbohoso(2).AddItem (.Fields(0).Value) MoveNext

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [ChucVu] FROM HosoCanBo"

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmhosocb.cbohoso(3).AddItem (.Fields(0).Value) MoveNext

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [TrinhDO] FROM HosoCanBo" Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmhosocb.cbohoso(4).AddItem (.Fields(0).Value) MoveNext

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [ChuyenMon] FROM HosoCanBo" Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmhosocb.cbohoso(5).AddItem (.Fields(0).Value)

Sub Nhaplai(dk As Boolean)

If dk = True Then txthoso(2).SetFocus

Public Function KiemTraNgayvaoBC(dong As String) As Boolean

MsgBox "Bạn Nhập sai DL ngày tháng rồi! Hãy Nhập lại nh sau: dd/mm/yyyy", vbCritical, "Chó ý"

End If nam1 = Val(Mid(dong, 7, 5)) dong = Format(dong, "dd/mm/yyyy")

If Ngay > 30 And Len(nam1) = 4 Then

MsgBox "Bạn nhập sai ngày, tháng này chỉ có 30 ngày!", vbCritical,

If (Thang = 4) Or (Thang = 6) Or (Thang = 9) Or (Thang = 11) And (Len(nam1) = 4) Then

If Ngay > 31 And Len(nam1) = 4 Then

MsgBox "Bạn nhập sai ngày, tháng này chỉ có 31 ngày!", vbCritical,

If (Thang = 1) Or (Thang = 3) Or (Thang = 5) Or (Thang = 7) Or (Thang = 8) Or (Thang = 10) Or (Thang = 12) And (Len(nam1) = 4) Then txthoso(0).SetFocus ok = True

If (Nam Mod 4 = 0) And (Ngay > 29) And (Thang = 2) Then

MsgBox "Bạn nhập sai DL, tháng 2 chỉ có 28 ngày", vbCritical, "Chú ý"

If (Nam Mod 4 = 0) And (Ngay 28) And (Thang = 2) Then MsgBox "Bạn nhập sai DL, tháng 2 chỉ có 28 ngày", vbCritical,

If (Nam Mod 4 0) And (Ngay 12) And (Len(nam1) = 4)) Then

MsgBox "Bạn Nhập sai kiểu tháng !", vbCritical, "Chú ý"

'In danh mục chứng từ

Private Sub cmdRepheso_Click() heso.Show

Private Sub Command1_Click() he_so_luong.Show

Dataheso.AllowAddNew = False cmdthem.Enabled = True cmdsua.Enabled = True cmdxoa.Enabled = True cmdghi.Enabled = False cmdkhong.Enabled = False cmdthoat.Enabled = True

'Tự động cập nhật bản ghi trong DataGrid của Danh mục chứng từ Dataheso.Refresh

Dataheso.AllowAddNew = True cmdthem.Enabled = False cmdsua.Enabled = False cmdxoa.Enabled = False cmdghi.Enabled = True cmdkhong.Enabled = True cmdthoat.Enabled = False

'Tự động cập nhật bản ghi trong DataGrid của Danh mục chứng từ Dataheso.Refresh

On Error GoTo Loi_Them

'Tự động cập nhật lại bản ghi trong Form hay DataSheet khi dữ liệu thay đổi

'DataGrid của heso nhận tiêu điểm

On Error GoTo Loi_Sua

'Biến đánh dấu bản ghi cần thay đổi recnum = Ado_heso.Recordset.Bookmark

On Error GoTo Loi_Xoa

Dim traloi traloi = MsgBox("Bạn muốn xóa chứng từ " +

Ado_heso.Recordset.Fields("heso") + " ?", 48 + 4, "Thông báo") 'Nếu chọn YES

If Ado_heso.Recordset.EOF Then

'Dùng phương thức Refresh của đối tượng Adodc để cập nhật lại dữ liệu

MsgBox "Không thể xóa mẫu tin này !"

On Error GoTo Loi_Ghi

Ado_heso.Recordset.UpdateBatch adAffectAll

Khoa cmdthem.SetFocus them = False

MsgBox "Dữ liệu không hợp lệ !"

MsgBox "Mã chứng từ có tối 10 ký tự số !"

'Dùng phương thức CancelUpdate để bỏ qua việc cập nhật dữ

Khoa cmdthem.SetFocus them = False

'Khi click vào DataGrid của heso đồng thời đếm số bản ghi và 'đánh dấu bản ghi hiện hành

Dim n1 n = 0 n1 = 0 n = Ado_heso.Recordset.RecordCount

If (Ado_heso.Recordset.EOF = False) And (Ado_heso.Recordset.BOF False) Then n1 = Ado_heso.Recordset.Bookmark

End If txtBGHH.Text = n1 txtSBG.Text = n

Private Sub CBoTC_KeyUp(Index As Integer, KeyCode As Integer, Shift As Integer)

If Not Trim(CBoTC(0).Text) = "" Then

CBoTC(0).Text = Chuan(CBoTC(0).Text, 1)

If Not Trim(CBoTC(1).Text) = "" Then

CBoTC(1).Text = Chuan(CBoTC(1).Text, 3)

Case 2 'theo he so luong

If Not Trim(CBoTC(2).Text) = "" Then

If Len(Trim(CBoTC(2).Text)) 0 Then

CBoTC(2).Text = Chuan(Trim(CBoTC(2).Text), 2)

If Not Trim(CBoTC(3).Text) = "" Then

CBoTC(3).Text = Chuan(CBoTC(3).Text, 2)

If Not Trim(CBoTC(4).Text) = "" Then

CBoTC(4).Text = Chuan(CBoTC(4).Text, 2)

If Not Trim(CBoTC(5).Text) = "" Then

CBoTC(5).Text = Chuan(CBoTC(5).Text, 2)

Private Sub CBoTC_LostFocus(Index As Integer)

CBoTC(0).Text = Chuan(CBoTC(0).Text, 1)

CBoTC(2).Text = Chuan(CBoTC(2).Text, 2)

CBoTC(3).Text = Chuan(CBoTC(3).Text, 2)

CBoTC(4).Text = Chuan(CBoTC(4).Text, 2)

CBoTC(5).Text = Chuan(CBoTC(5).Text, 2)

Dim IDMacb As String, IDHoTen As String

Dim IDHSL As String, IDMPC As String

Dim IDLT As String, IDLuong As String

Dim IDConLai As String, IDDnd As String

Dim pheptoan1 As String, pheptoan2 As String

Dim sql As String, i As Byte sql = "SELECT DISTINCTROW HosoCanBo.macb, HosoCanBo.HoTen, HosoCanBo.Ngaysinh, HosoCanBo.Phong, HosoCanBo.Chucvu,

HosoCanBo.NgayVaoBienChe, Luong.hesoluong, Luong.Loaithuong, Luong.MucPhuCap, Luong.SoNgayNghi, Luong.Luong, Luong.TamUng, Luong.Conlai " sql = sql & " FROM Luong INNER JOIN HosoCanBo ON Luong.Macb HosoCanBo.macb WHERE "

IDHoTen = Chuan(Trim(CBoTC(0).Text), 1)

IDMacb = Chuan(Trim(CBoTC(1).Text), 3)

IDDnd = Trim(CBoTC(5).Text) pheptoan1 = Mid(Trim(txtTC(0).Text), 1, 2)

IDLuong = Mid((Trim(txtTC(0).Text)), 3, Len(Trim(txtTC(0).Text))) pheptoan2 = Mid(Trim(txtTC(1).Text), 1, 2)

IDConLai = Mid((Trim(txtTC(1).Text)), 3, Len(Trim(txtTC(1).Text))) 'MsgBox IDHSL

Select Case Me.OptAND.Value

If Len(IDHoTen) > 0 Then sql = sql & " HosoCanBo.[HoTen] LiKe '" & IDHoTen & "' And "

If Len(IDMacb) > 0 Then sql = sql & " HosoCanBo.[Macb] LiKe '"

If Len(IDHSL) > 0 Then sql = sql & " Luong.[Hesoluong] Like '" & IDHSL & "' And "

If Len(IDMPC) > 0 Then sql = sql & " Luong.[MucPhuCap] LiKe '"

If Len(IDLT) > 0 Then sql = sql & " Luong.[LoaiThuong] LiKe '" & IDLT & "' And "

If Len(IDDnd) > 0 Then sql = sql & " Luong.[KyNhan] LiKe '" & IDDnd & "' And "

If Len(IDLuong) > 0 Then sql = sql & " val(Luong.[Luong]) " & pheptoan1 & " " & Val(IDLuong) & " And "

If Len(IDConLai) > 0 Then sql = sql & " val(Luong.[ConLai]) " & pheptoan2 & " " & Val(IDConLai) & " And "

MsgBox sql sql = sql & " HosocanBo.[Macb]=luong.[Macb] ORDER BY HosoCanBo.[HoTen]"

If Len(IDHoTen) > 0 Then sql = sql & " HosoCanBo.[HoTen] LiKe '" & IDHoTen & "' or "

If Len(IDMacb) > 0 Then sql = sql & " HosoCanBo.[Macb] LiKe '"

If Len(IDHSL) > 0 Then sql = sql & " Luong.[Hesoluong] Like '" & IDHSL & "' Or "

If Len(IDMPC) > 0 Then sql = sql & " Luong.[MucPhuCap] LiKe '"

If Len(IDLT) > 0 Then sql = sql & " Luong.[LoaiThuong] LiKe '" & IDLT & "' OR "

If Len(IDDnd) > 0 Then sql = sql & " Luong.[KyNhan] LiKe '" & IDDnd & "' OR "

If Len(IDLuong) > 0 Then sql = sql & " val(Luong.[Luong]) " &

If Len(IDConLai) > 0 Then sql = sql & " val(Luong.[ConLai]) " & pheptoan2 & " " & Val(IDConLai) & " OR " sql = Mid(sql, 1, Len(Trim(sql)) - 2)

MsgBox sql sql = sql & " AND HosocanBo.[Macb]=luong.[Macb] ORDER BY HosoCanBo.[HoTen]"

Set db = OpenDatabase("c:\Qlluong\Qlluong.mdb")

Set rec = db.OpenRecordset(sql, dbOpenSnapshot)

MsgBox " Không có cán bộ thoả mãn thông tin tìm kiếm", vbCritical,

Me.txtTong.Text = Me.DatTCLuong.Recordset.RecordCount

Me.Move (Screen.Width - Me.Width) / 2, (Screen.Height - Me.Height) /

Me.Frame1.Enabled = False mypath = "c:\QLluong\Qlluong.mdb"

Me.DbgTCLuong.Columns(0).DataField = "HoTen" sql = "SELECT DISTINCTROW HosoCanBo.macb, HosoCanBo.HoTen, HosoCanBo.Ngaysinh, HosoCanBo.Phong, HosoCanBo.Chucvu,

The SQL query retrieves data from the HosoCanBo and Luong tables, specifically selecting fields such as employee ID, salary scale, type of bonus, allowance amount, number of days off, total salary, advance payment, and remaining balance The results are ordered by the employee ID, ensuring a structured output that facilitates easy analysis of employee compensation details.

Set db DBEngine.Workspaces(0).OpenDatabase("c:\QLluong\Qlluong.mdb") Set rec = db.OpenRecordset(sql, dbOpenSnapshot)

MsgBox " Không có đầu sách thoả mãn thông tin tìm kiếm", vbCritical,

Set Me.DatTCLuong.Recordset = rec

Me.DbgTCLuong.Columns(0).DataField = Recordset.Fields(1).Name Me.DbgTCLuong.Columns(0).Width = 3000

TxtTCLuong(i).DataField = Recordset.Fields(i).Name

Me.txtTong.Text = Me.DatTCLuong.Recordset.RecordCount

'nạp Thông Tin Ho tên

Next i mypath = "c:\QLluong\Qlluong.mdb" frmTraCuuLuong.CBoTC(0).AddItem ""

MySql = "SELECT DISTINCT [Hoten] FROM HosoCanBo ORDER BY HosoCanBo.[HoTen]"

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmTraCuuLuong.CBoTC(0).AddItem (.Fields(0).Value) MoveNext

End With frmTraCuuLuong.CBoTC(0).AddItem ""

'nạp Thông Tin MaCB frmTraCuuLuong.CBoTC(1).AddItem ""

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [Macb] FROM Luong ORDER BY Luong.[Macb]"

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmTraCuuLuong.CBoTC(1).AddItem (.Fields(0).Value) MoveNext

'nạp Thông Tin Hệ số lơng

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [Heso] FROM HesoLuong ORDER BY HesoLuong.[Heso]"

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmTraCuuLuong.CBoTC(2).AddItem (.Fields(0).Value) MoveNext

End With frmTraCuuLuong.CBoTC(2).AddItem ""

'nạp Thông Tin Mức phụ cấp

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [MucPhucap] FROM PhuCap ORDER BY PhuCap.[MucPhuCap]"

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmTraCuuLuong.CBoTC(3).AddItem (.Fields(0).Value) MoveNext

End With frmTraCuuLuong.CBoTC(3).AddItem ""

'nạp Thông Tin Loại thởng

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [LoaiThuong] FROM Thuong" ' ORDER

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Do While Not EOF frmTraCuuLuong.CBoTC(4).AddItem (.Fields(0).Value) MoveNext

End With frmTraCuuLuong.CBoTC(4).AddItem ""

Set db = DBEngine.Workspaces(0).OpenDatabase(mypath)

MySql = "SELECT DISTINCT [KyNhan] FROM Luong ORDER BY Luong.[KyNhan]"

Set rec = db.OpenRecordset(MySql, dbOpenSnapshot)

Me.CBoTC(5).AddItem (.Fields(0).Value)

Private Sub txtTC_KeyUp(Index As Integer, KeyCode As Integer, Shift As Integer)

If KeyCode = 13 Then txtTC(1).SetFocus

Sub cmdchucnang_Click() outputdestination = 0 rptxemhoso.Destination = outputdestination rptxemhoso.DataFiles(0) = mypath rptxemhoso.ReportFileName = rptfilename + "hscb.rpt" rptxemhoso.Action = 1

Me.Move (Screen.Width - Me.Width) / 200, (Screen.Height - Me.Height) /

Me.Frame1.Top = Me.Height - 1500

Me.Frame1.Left = Me.Left + 100

Me.Frame1.Width = Me.Width - 400

Sub Form_Load() mypath = "c:\QLluong\qlluong.mdb" datxemhoso.DatabaseName = mypath datxemhoso.RecordSource = "HoSoCanBo"

Me.DBGXemHoso.Font.Name = ".vntime"

Columns(0).Caption = "Mã Cán Bộ"

Ngày đăng: 11/04/2022, 08:51

HÌNH ẢNH LIÊN QUAN

+ Tớn hl ng cho nhõ ns ươ ự dựa trờn bảng chấm cụng. - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
n hl ng cho nhõ ns ươ ự dựa trờn bảng chấm cụng (Trang 15)
Bảng chấm cụng - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
Bảng ch ấm cụng (Trang 18)
Bảng lương - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
Bảng l ương (Trang 18)
Hồ sơ Bảng chấm cụng Bảng lương - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
s ơ Bảng chấm cụng Bảng lương (Trang 19)
Bảng lương - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
Bảng l ương (Trang 19)
 Chứa dữ liệu trong cỏc bảng, được cấu tạo bởi cỏc dũng (mẫu tin), cột - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
h ứa dữ liệu trong cỏc bảng, được cấu tạo bởi cỏc dũng (mẫu tin), cột (Trang 20)
2.2.3 Bảng HesoLuong lưu trữ thụng tin về hệ số lương của cụng ty: - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
2.2.3 Bảng HesoLuong lưu trữ thụng tin về hệ số lương của cụng ty: (Trang 24)
2.2.4 Bảng Thưởng lưu trữ thụng tin về hệ ố lươ s ng của cụng ty: - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
2.2.4 Bảng Thưởng lưu trữ thụng tin về hệ ố lươ s ng của cụng ty: (Trang 25)
2.2.5 Bảng HesoLuong lưu trữ thụng tin về hệ số lương của cụng ty: - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
2.2.5 Bảng HesoLuong lưu trữ thụng tin về hệ số lương của cụng ty: (Trang 25)
3.1 Mối quan hệ cho cỏc bảng dữ liệu trong chương trỡnh 3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
3.1 Mối quan hệ cho cỏc bảng dữ liệu trong chương trỡnh 3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương (Trang 26)
3.1 Mối quan hệ cho cỏc bảng dữ liệu trong chương trỡnh 3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
3.1 Mối quan hệ cho cỏc bảng dữ liệu trong chương trỡnh 3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương3.2 Relationships phõn hệ Quản lý nhõn sụ-tiền lương (Trang 26)
bản Lờn bảng lương - Quản lý nhân sự lương trên hệ quản trị cơ sở dữ liệu MICROSOFT ACCESS
b ản Lờn bảng lương (Trang 27)

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w