Form Nhõn viờn

Một phần của 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 phần mềm BRAVO (Trang 53 - 76)

II. XÁC DỊNH YấU CẦU CỦA HỆ THỐNG THễNG TIN QUẢN Lí NHÂN SỰ Những nguyờn tắc trong quản trị nhõn lực

4.Form Nhõn viờn

Người dựng cú thể cập nhật cỏc thụng tin cơ bản của nhõn viờn mới, sửa thụng tin khụng đỳng về nhõn viờn, xoỏ đi những nhõn viờn khụng cũn làm việc với cụng ty.

Túm lại Cụng tỏc quản lý nhõn sự là một trong những khõu then chốt trong quỏ trỡnh hoạt động sản xuất kinh doanh đối với bất kỳ doanh nghiệp nào. Muốn nõng cao hiệu quả sản xuất kinh doanh của Cụng ty thỡ trước hết cần phải hoàn thiện và nõng cao cụng tỏc quản lý nhõn sự ở Cụng ty.

Vỡ lý do trờn nờn em xõy dựng phần mềm quản lý nhõn sự. Nhằm giỳp cụng ty quản lý nhõn sự bằng hệ thống thụng tin, thay vỡ quản lý nhõn sự trờn giấy tờ sổ sỏch như trước đõy.

Do tớch chất là một chuyờn đề thực tập tốt nghiệm của sinh viờn năm cuối Đai học - Kinh tế Quốc dõn. Nờn việc đưa phần mềm vào ứng dụng luụn trong cụng tỏc quản lý thỡ chưa được. Nhưng thụng qua thực tế em cũng biết thờm nhiều kinh nghiệm quý bỏu và ứng dụng được những kiến thức lõu nay được học trong trường vào giải quyết một cụng việc trong thực tế.

Bỏo cỏo này bao gồm một phần của bỏo cỏo tổng hợp, và toàn bộ quỏ trỡnh khảo sỏt, phõn tớch và thiết kế phần mềm quản lý nhõn sự dựa vào cỏc thụng tin cú được do phũng Hành chớnh - Tổng hợp của cụng ty cổ phần phần mềm BRAVO cung cấp trong thời gian thực tập vừa qua.

Với thời gian thực tập chuyờn ngành cú hạn nờn phần mềm quản lý nhõn sự của em khụng được hoàn thiện lắm.

Được sự nhiệt tỡnh của ban lónh đạo cụng ty cổ phần phần mềm BRAVO đặc biệt là Phũng Hành chớnh - Tổng hợp, giỏo viờn hướng dẫn đó điều kiện cho em hoàn thành bỏo cỏo thực tập chuyờn ngành. Một lần nữa em xin chõn thành cảm ơn.

Sinh viờn thực hiờn. Vũ Hữu Tỳ

Form frmBC

Public MaCM As String Public NoiDT As String Public HeDT As String Private addStatus As Boolean Private editStatus As Boolean

'Function TimCM(ByVal CM As String) As String 'Dim a As Integer

'a = InStr(CM, "-")

'TimCM = Left(CM, a - 1) 'End Function

Private Sub CmdThem_Click() If checkChiTietForm = True Then 'MaCM = TimCM(cboMaCM) MaCM = cboMaCM.Text NoiDT = txtNoiDT.Text HeDT = txtHeDT.Text Unload Me

'Else: MsgBox "loi" End If

End Sub

Private Function checkChiTietForm() As Boolean Dim flag As Boolean

flag = False

If rs.State = 1 Then rs.Close

End If

MsgBox " Bạn phải nhập lại ", , "Thông báo" cboMaCM.SetFocus

ElseIf (Trim(cboMaCM.Text) = "") Then MsgBox "Ban chua nhap mã chuyên môn" cboMaCM.SetFocus

ElseIf txtHeDT.Text = "" Then

MsgBox "Bạn phải nhập hệ đào tạo của nhân viên !" txtHeDT.SetFocus

ElseIf txtNoiDT.Text = "" Then

MsgBox "Bạn phải nhập nơi đào tạo của nhân viên !" txtNoiDT.SetFocus Else flag = True End If If rs.State = 1 Then rs.Close End If checkChiTietForm = flag End Function

Private Sub Form_Load()

If cn.State = adStateClosed Then

'AdoNhanVien.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DataBase\NhanSu.mdb;Persist Security Info=False"

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Database\NhanSu.mdb;Persist Security Info=False" (adsbygoogle = window.adsbygoogle || []).push({});

cn.Open End If

napChuyenMon End Sub

If rs.State = 1 Then rs.Close

End If

rs.Open "SELECT * From CTBangCap ORDER BY CTBangCap.MaChuyenMon;"

cboMaCM.Clear cboMaCM.AddItem "" If Not rs.EOF Then rs.MoveFirst

Do While Not rs.EOF

'cboMaCM.AddItem rs.Fields("MaChuyenMon") & "-" & rs.Fields("TenChuyenMon") cboMaCM.AddItem rs.Fields("MaChuyenMon") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If cboMaCM.Refresh End Sub Form : frmBCDieudong Option Explicit

Private Sub cmdtaomoi_Click() Call Reset

End Sub

Private Sub HienThiHangTon1()

Dim dieukienThoigian As String Dim dieukienTieuthuc As String Dim dieukienTimkiem As String Dim sql As String

sql = "SELECT CTDieuDong.MaNV, HoSoNV.TenNV, CTDieuDong.NgayBoNhiem, iif(CTDieuDong.NgayMienNhiem= DateValue('1/1/1601'),'Cha KT QĐ',CTDieuDong.NgayMienNhiem) as NgayMienNhiem, CTDieuDong.MaPB, PhongBan.TenPB, CTDieuDong.MaCV, ChucVu.TenCV FROM HoSoNV INNER JOIN (PhongBan INNER JOIN (ChucVu INNER JOIN CTDieuDong ON ChucVu.MaCV=CTDieuDong.MaCV) ON PhongBan.MaPB=CTDieuDong.MaPB) ON HoSoNV.MaNV=CTDieuDong.MaNV "

If (optNH.Value) Then 'Tim theo nhom hang'

If (opt1nhom.Value) Then If (Trim(cboCV.Text)) = "" Then MsgBox "Bạn cha chọn chức vụ!" cboCV.SetFocus Exit Sub End If

sql = sql & " where((CTDieuDong.MaCV)= '" & TimCV(cboCV) & "');" End If

ElseIf (optHSX.Value) Then 'Tim theo hang san xuat' If (optchonhang.Value) Then If (Trim(cboPB.Text)) = "" Then

MsgBox "Ban chua chon nha san xuat !" cboPB.SetFocus

End If End If If rs.State = 1 Then rs.Close End If rs.Open sql, cn

If optNH.Value = True Then

rptBCDieuDong.ReportFileName = App.Path & "\reports\BCDieuDongCV2.rpt"

Else

rptBCDieuDong.ReportFileName = App.Path & "\reports\BCDieuDongPB1.rpt"

End If

rptBCDieuDong.SetTablePrivateData 0, 3, rs 'MsgBox " ko co"

If rs.EOF = True Then

MsgBox " Khong tim thay ban ghi nhu y" MsgBox " Bao cao trang khong duoc hien thi" 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

Private Sub HienThiHangTon2()

Dim dieukienThoigian As String Dim dieukienTieuthuc As String Dim dieukienTimkiem As String If rs.State = 1 Then

rs.Close End If (adsbygoogle = window.adsbygoogle || []).push({});

Dim sql As String

sql = "SELECT CTDieuDong.MaNV, HoSoNV.TenNV, CTDieuDong.NgayBoNhiem, iif(CTDieuDong.NgayMienNhiem= DateValue('1/1/1601'),'Cha KT QĐ',CTDieuDong.NgayMienNhiem) as NgayMienNhiem, CTDieuDong.MaPB, PhongBan.TenPB, CTDieuDong.MaCV, ChucVu.TenCV FROM HoSoNV INNER JOIN (PhongBan INNER JOIN (ChucVu INNER JOIN CTDieuDong ON ChucVu.MaCV=CTDieuDong.MaCV) ON PhongBan.MaPB=CTDieuDong.MaPB) ON HoSoNV.MaNV=CTDieuDong.MaNV WHERE (CTDieuDong.NgayBoNhiem) < DateValue('" & dtpNgayBaoCao.Month & "/" & dtpNgayBaoCao.Day & "/" & dtpNgayBaoCao.Year & "')"

If (optNH.Value) Then 'Tim theo chuc vu'

If (opt1nhom.Value) Then If (Trim(cboCV.Text)) = "" Then MsgBox "Bạn cha chọn chức vụ !" cboCV.SetFocus Exit Sub End If

sql = sql & " and ((CTDieuDong.MaCV)= '" & TimCV(cboCV) & "');" End If

ElseIf (optHSX.Value) Then 'Tim theo hang phong ban' If (optchonhang.Value) Then

cboPB.SetFocus Exit Sub

End If

sql = sql & " and ((CTDieuDong.MaPB)= '" & TimPB(cboPB) & "');" End If End If If rs.State = 1 Then rs.Close End If rs.Open sql, cn

If optNH.Value = True Then

rptBCDieuDong.ReportFileName = App.Path & "\reports\BCDieuDongCV2.rpt"

ElseIf optHSX.Value = True Then

rptBCDieuDong.ReportFileName = App.Path & "\reports\BCDieuDongPB1.rpt"

'Else

'rptBCDieuDong.ReportFileName = App.Path & "\reports\BCXNT_Chung.rpt"

End If

rptBCDieuDong.SetTablePrivateData 0, 3, rs 'MsgBox " ko co"

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

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 napChucVu

Call napPhongBan 'Call bindDataSource 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 cboCV.Enabled = False

optHSX.Value = False optallhang.Enabled = False optchonhang.Enabled = False optallhang.Value = False optchonhang.Value = False cboPB.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 (adsbygoogle = window.adsbygoogle || []).push({});

End Sub

Private Sub disableTheoNhomHang() optNH.Enabled = False

optallnhom.Enabled = False opt1nhom.Enabled = False cboCV.Enabled = False End Sub

Private Sub disableTheoHangSanXuat() optHSX.Enabled = False

cboPB.Enabled = False End Sub

Private Sub optNH_Click() optallnhom.Enabled = True opt1nhom.Enabled = True cboCV.Enabled = True optallnhom.SetFocus Call disableTheoHangSanXuat End Sub

Private Sub opthsx_Click() optallhang.Enabled = True optchonhang.Enabled = True cboPB.Enabled = True optallhang.SetFocus Call disableTheoNhomHang End Sub

Function TimPB(ByVal PB As String) As String Dim a As Integer a = InStr(PB, "-") TimPB = Left(PB, a - 1) End Function Sub napPhongBan() If rs.State = 1 Then rs.Close End If

If Not rs.EOF Then rs.MoveFirst

Do While Not rs.EOF

cboPB.AddItem rs.Fields("MaPB") & "-" & rs.Fields("TenPB") rs.MoveNext Loop End If If rs.State = 1 Then rs.Close End If cboPB.Refresh End Sub

Function TimCV(ByVal CV As String) As String Dim a As Integer a = InStr(CV, "-") TimCV = Left(CV, a - 1) End Function Sub napChucVu() If rs.State = 1 Then rs.Close End If

rs.Open "SELECT * From ChucVu ORDER BY ChucVu.MaCV;" cboCV.Clear

cboCV.AddItem "" If Not rs.EOF Then rs.MoveFirst

Do While Not rs.EOF

cboCV.AddItem rs.Fields("MaCV") & "-" & rs.Fields("TenCV") rs.MoveNext

Loop End If

If rs.State = 1 Then rs.Close

End Sub

Form : frmBCHopDong Option Explicit

'Private Sub bindDataSource() 'Call napNV

'Call napLoaiHD 'End Sub

Private Sub cmdtaomoi_Click() Call Reset

'Call Form_Load End Sub

Private Sub CmdThoat_Click() If rs.State = 1 Then rs.Close End If cboNV.Text = "" cboLoaiHD.Text = "" Unload Me End Sub 'End Sub

Private Sub HienThiHangTon1()

Dim dieukienThoigian As String Dim dieukienTieuthuc As String

sql = "SELECT HoSoNV.MaNV, HoSoNV.TenNV, CTHopDong.MaHD,

HopDong.LoaiHD, CTHopDong.NgayKy,

IIf(CTHopDong.NgayKT=DateValue('1/1/1601'),'Cha KT HD',CTHopDong.NgayKT) AS NgayKT FROM HopDong INNER JOIN (HoSoNV INNER JOIN CTHopDong ON HoSoNV.MaNV = CTHopDong.MaNV) ON HopDong.MaHD = CTHopDong.MaHD " (adsbygoogle = window.adsbygoogle || []).push({});

If (optNH.Value) Then 'Tim theo nhom hang'

If (opt1nhom.Value) Then

If (Trim(cboNV.Text)) = "" Then

MsgBox "Ban chua chon nhom hang !" cboNV.SetFocus

Exit Sub End If

sql = sql & " where ((HoSoNV.MaNV)= '" & TimNV(cboNV) & "') ORDER BY HoSoNV.MaNV;"

End If

ElseIf (optHSX.Value) Then 'Tim theo hang san xuat' If (optchonhang.Value) Then

If (Trim(cboLoaiHD.Text)) = "" Then MsgBox "Ban can chon ban ghi !" cboLoaiHD.SetFocus

Exit Sub End If

sql = sql & " where ((HopDong.LoaiHD)= '" & TimLoaiHD(cboLoaiHD) & "') ORDER BY HoSoNV.MaNV;"

End If End If

If rs.State = 1 Then rs.Close

rs.Open sql, cn

If optNH.Value = True Then

rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNV.rpt"

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 " Khong tim thay ban ghi"

MsgBox " Bao cao trang khong duoc hien thi" 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.TenNV,

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 (opt1nhom.Value) Then

If (Trim(cboNV.Text)) = "" Then

MsgBox "Ban chua chon nhan vien !" cboNV.SetFocus (adsbygoogle = window.adsbygoogle || []).push({});

Exit Sub End If

sql = sql & " and ((HoSoNV.MaNV)= '" & TimNV(cboNV) & "') ORDER BY HoSoNV.MaNV;"

End If

ElseIf (optHSX.Value) Then 'Tim theo hang phong ban' If (optchonhang.Value) Then If (Trim(cboLoaiHD)) = "" Then

MsgBox "Ban chua chon loai hop dong !" cboLoaiHD.SetFocus

Exit Sub End If

sql = sql & " and ((HopDong.LoaiHD)= '" & TimLoaiHD(cboLoaiHD) & "') ORDER BY HoSoNV.MaNV;"

End If End If If rs.State = 1 Then rs.Close End If rs.Open sql, cn

If optNH.Value = True Then

rptBCDieuDong.ReportFileName = App.Path & "\reports\BCHopDongNV.rpt"

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 " Khong tim thay ban ghi nhu y ban" MsgBox " Bao cao trang khong duoc hien thi" 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

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

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

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 (adsbygoogle = window.adsbygoogle || []).push({});

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

Sub napNV()

If rs.State = 1 Then rs.Close

End If

rs.Open "SELECT * From HoSoNV ORDER BY MaNV;" 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

1. TS. Trương Văn Tỳ, TS. Trần Thị Song Minh (2000), Giỏo trỡnh Hệ thống thụng tin quản lý, Nhà xuất bản Hà Nội.

2. Ths Trần Cụng Uẩn (2005), Giỏo trỡnh Cơ sở dữ liệu 1, 2. Nhà xuất bản Thống kờ. 3. Cỏc bài giảng:

• Mụn Cụng nghệ phần mềm của PGS. TS. Hàn Viết Thuận

• Mụn Hệ thống thụng tin quản lý của TS. Trương Văn Tỳ

• Mụn Lập trỡnh ứng dụng trong quản lý của Ths Trịnh Hoài Sơn.

• Và một số mụn học khỏc của khoa Tin học kinh tế, đại học Kinh tế quốc dõn

4. Cỏc website

• Website cõu lạc bộ visual basic: www.caulacbovb.com • Website diễn đàn tin học: www.diendantinhoc.com

I. HỆ THỐNG THễNG TIN QUẢN Lí NHÂN SỰ...12 III. PHƯƠNG PHÁP PHÁT TRIỂN HTTT QUẢN Lí...27

Một phần của 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 phần mềm BRAVO (Trang 53 - 76)