CREATING A SIMPLE Payroll using VB 6.0
I suggest that you make a Graphical User Interface them click the buttons and start coding :)
Follow the codes below :
Option Explicit
Dim sglHours As Single
Dim sglHrsOT As Single
Dim sglHrlyRate As Single
Dim sglGrossPay As Single
Dim sglOTPay As Single
Dim sglSalTotal As Single
Dim sglSalNet As Single
Dim sglTax As Single
Dim sglTaxRate As Single
Dim strName As String, strProv As String
Private Sub cmdCancel_Click()
ClearAll
End Sub
Private Sub cmdExit_Click()
End
End Sub
Private Sub Form_Load()
ClearAll
'Show current date
lblDate.Caption = Format(Date, " dddd, dd mmmm yyyy")
lstProv.AddItem "Ontario"
lstProv.AddItem "Quebec"
lstProv.AddItem "Manitoba"
lstProv.AddItem "Nova Scotia"
' "Sorted" property of ListBox is set to True
End Sub
Private Sub ClearAll()
'Initialize strings with ""
' and numeric with 0
txtName.Text = ""
txtHrlyRate.Text = 0
txtHours.Text = 0
lblTax.Caption = ""
lblSalGross.Caption = ""
lblSalNet.Caption = ""
lblOTHrs = ""
lblHrsReg = ""
lblSalOT = ""
lblTaxRate = ""
sglGrossPay = 0
sglOTPay = 0
sglSalNet = 0
sglSalTotal = 0
sglHrsOT = 0
lstProv.ListIndex = -1 'means no item in list is selected
End Sub
Private Sub lblDate_Click()
End Sub
Private Sub mnuCenter_Click()
'Me refers to current active form
Me.Width = 6500
Me.Height = 7000
Me.Left = (Screen.Width - Me.Width) / 2
Me.Top = (Screen.Height - Me.Height) / 2
End Sub
Private Sub mnuForm2_Click()
Load frmPay2
frmPay2.Show
End Sub
Private Sub mnuPrint_Click()
Me.PrintForm
End Sub
Private Sub mnuMax_Click()
Me.WindowState = 2
End Sub
Private Sub mnuRestore_Click()
Me.WindowState = 0
End Sub
Private Sub txtName_Change()
strName = txtName.Text
End Sub
Private Sub txtName_GotFocus()
FocusIn
End Sub
Private Sub txtHours_Change()
If Not IsNumeric(txtHours.Text) Then
MsgBox ("Must be numeric!")
End If
End Sub
Private Sub txtHours_GotFocus()
FocusIn
End Sub
Private Sub txtHrlyRate_Change()
If Not IsNumeric(txtHrlyRate.Text) Then
MsgBox ("Must be numeric!")
End If
End Sub
Private Sub txtHrlyRate_GotFocus()
FocusIn
End Sub
Private Sub txtHrlyRate_Validate(Cancel As Boolean)
If txtHrlyRate < 1 Or txtHrlyRate > 50 Then
MsgBox ("Hourly rate must be between 1 and 50")
Cancel = True
'cancel = true keeps cursor in textbox
'until valid value is input
End If
End Sub
Private Sub txtHours_Validate(Cancel As Boolean)
If txtHours < 1 Or txtHours > 100 Then
MsgBox ("Hours must be between 1 and 100")
Cancel = True
End If
End Sub
Private Sub lstProv_Click()
strProv = lstProv.Text
'Whenever possible, use Select Case instead of If...Then...Else
Select Case strProv
Case "Ontario"
sglTaxRate = 0.3
Case "Quebec"
sglTaxRate = 0.28
Case Else
sglTaxRate = 0.33
End Select
End Sub
Private Sub cmdCalc_Click()
If txtName.Text = "" Then
MsgBox ("You must enter an employee name")
txtName.SetFocus 'put cursor in textbox
Exit Sub
End If
If txtHours.Text = 0 Then
MsgBox ("Enter the hours, between 1 and 100")
txtHours.SetFocus
Exit Sub
End If
If txtHrlyRate.Text = 0 Then
MsgBox ("Enter the hourly rate, between 1 and 50")
txtHrlyRate.SetFocus
Exit Sub
End If
sglHrlyRate = txtHrlyRate.Text
sglHours = txtHours.Text
sglGrossPay = sglHours * sglHrlyRate
'Overtime pay is calculated at 1.5 * hourly rate
'for all hours over 40
If sglHours > 40 Then
sglGrossPay = 40 * sglHrlyRate
sglHrsOT = sglHours - 40
sglHours = 40
sglOTPay = sglHrsOT * sglHrlyRate * 1.5
End If
sglSalTotal = sglGrossPay + sglOTPay
sglTax = sglSalTotal * sglTaxRate
sglSalNet = sglSalTotal - sglTax
lblHrsReg.Caption = Format(sglHours, "#0.00")
lblSalGross.Caption = Format(sglGrossPay, "currency")
lblSalOT.Caption = Format(sglOTPay, "currency")
lblOTHrs.Caption = Format(sglHrsOT, "#0.00")
lblTax.Caption = Format(sglTax, "currency")
lblSalNet.Caption = Format(sglSalNet, "currency")
lblTaxRate.Caption = Format(sglTaxRate, "percent")
End Sub
Private Sub FocusIn()
ActiveControl.SelStart = 0
ActiveControl.SelLength = Len(ActiveControl.Text)
End Sub
9 comments:
Good
ms access need?
good
C++ Codes for Students
I.need more codes samples for payroll.. Im doing my thesis.. and thanks for sharing .. I hope it'll help. :-)
Access App is available on sourcecodester.com
Access App is available on sourcecodester.com
Thank you, it help much.....
Thankz much
Post a Comment