Membuat sebuah program penggajian karyawan tidaklah sulit. Berikut ini saya akan bagikan kepada teman semua sourcecode yang telah saya pelajari. Untuk pertama, silakan desain terlebih dahulu form project yang tersedia.
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
NIK.Items.Add("PM010")
NIK.Items.Add("PS111")
NIK.Items.Add("KU101")
NIK.Items.Add("GD100")
NIK.Items.Add("PM011")
jabatan.Items.Add("Kepala Dinas")
jabatan.Items.Add("Staf")
jabatan.Items.Add("Wakil Kepala")
status.Items.Add("Menikah")
status.Items.Add("Beum Menikah")
perulangan()
End Sub
Sub perulangan()
Dim a As Integer
For a = 5 To 0 Step -1
jumlah_anak.Items.Add(a)
Next
End Sub
Private Sub NIK_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NIK.SelectedIndexChanged
Select Case NIK.Text
Case ("PM010")
nama.Text = "Duta"
jabatan.Text = "Kepala Dinas"
status.Text = "Menikah"
Case ("PS111")
nama.Text = "Abdi"
jabatan.Text = "Staf"
status.Text = "Belum Menikah"
Case ("KU101")
nama.Text = "Saka"
jabatan.Text = "Wakil Kepala"
status.Text = "Menikah"
Case ("GD100")
nama.Text = "Arief"
jabatan.Text = "Staf"
status.Text = "Menikah"
Case ("PM011")
nama.Text = "Kiki"
jabatan.Text = "Staf"
status.Text = "Belum Menikah"
End Select
x()
End Sub
Sub x()
Dim i As String
i = Microsoft.VisualBasic.Left(nik.Text, 2)
If i = "PM" Then
bagian.Text = "Pemesanan"
ElseIf i = "PS" Then
bagian.Text = "Personalia"
ElseIf i = "KU" Then
bagian.Text = "Keuangan"
ElseIf i = "GD" Then
bagian.Text = "Gudang"
End If
End Sub
Private Sub Jabatan_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Jabatan.SelectedIndexChanged
If NIK.Text = "" And Nama.Text = "" And Bagian.Text = "" Then
MsgBox("Maaf, Harap Di Isi NIK Anda")
jabatan.Items.Clear()
Else
Select Case Jabatan.Text
Case ("Kepala Dinas")
gaji_pokok.Text = 5000000
Case ("Staf")
gaji_pokok.Text = 2000000
Case ("Wakil Kepala")
gaji_pokok.Text = 3500000
End Select
pajak.Text = 0.1 * gaji_pokok.Text
End If
End Sub
Private Sub Status_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles status.SelectedIndexChanged
If Jabatan.Text = "" And Gaji_Pokok.Text = "" And Pajak.Text = "" Then
MsgBox("Maaf, Harap Di Isi Jabatan Anda")
status.Items.Clear()
Else
y()
End If
End Sub
Sub y()
If status.Text = "Menikah" Then
jumlah_anak.Enabled = True
tunjangan_anak.Enabled = True
tunjangan_keluarga.Enabled = True
tunjangan_keluarga.Text = 0.05 * gaji_pokok.Text
tunjangan_anak.Text = ""
jumlah_anak.Text = ""
tunjangan_anak.Text = ""
Else
tunjangan_keluarga.Text = "0"
tunjangan_anak.Text = "0"
tunjangan_keluarga.Enabled = False
tunjangan_anak.Enabled = False
jumlah_anak.Enabled = False
total_gaji.Enabled = True
jumlah_anak.Text = "0"
total_gaji.Text = Val(gaji_pokok.Text) - pajak.Text
End If
End Sub
Private Sub Jumlah_anak_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles jumlah_anak.SelectedIndexChanged
If status.Text = "" Then
MsgBox("Maaf, Harap Di Isi Status Anda")
jumlah_anak.Items.Clear() : perulangan()
Else
If jumlah_anak.Text = 1 Then
tunjangan_anak.Text = 0.05 * gaji_pokok.Text
ElseIf jumlah_anak.Text >= 2 Then
tunjangan_anak.Text = 0.1 * gaji_pokok.Text
Else
tunjangan_anak.Text = 0
tunjangan_anak.Enabled = False
End If
total()
End If
End Sub
Sub total()
total_gaji.Text = Val(gaji_pokok.Text) + Val(tunjangan_keluarga.Text) + Val(tunjangan_anak.Text) - pajak.Text
End Sub
Sub batal()
NIK.Text = ""
Nama.Text = ""
Bagian.Text = ""
Jabatan.Text = ""
Gaji_Pokok.Text = ""
Pajak.Text = ""
Status.Text = ""
jumlah_anak.Text = ""
tunjangan_Keluarga.Text = ""
Tunjangan_Anak.Text = ""
Total_Gaji.Text = ""
End Sub
Private Sub btnbatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnbatal.Click
batal()
End Sub
Private Sub btnkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnkeluar.Click
Me.Close()
End Sub
End Class
Maka, jika dijalankan hasilnya akan seperti ini.
Namun, jika salah satu combobox tidak diisi terlebih dahulu maka hasilnya akan terlihat seperti ini.
Sekian informasi dari saya. Semoga bermanfaat.



Tidak ada komentar:
Posting Komentar