Public Class Form1
Sub buattabel()
lv.Columns.Add("NPM", 80, HorizontalAlignment.Center)
lv.Columns.Add("Nama", 80, HorizontalAlignment.Center)
lv.Columns.Add("Jenjang", 80, HorizontalAlignment.Center)
lv.Columns.Add("Tahun Masuk", 80, HorizontalAlignment.Center)
lv.Columns.Add("Nilai Angka", 80, HorizontalAlignment.Center)
lv.Columns.Add("Nilai Huruf", 80, HorizontalAlignment.Center)
lv.View = View.Details
lv.GridLines = True
lv.FullRowSelect = True
End Sub
Sub isitabel()
Dim ist As New ListViewItem
With ist
.Text = npm.Text
.SubItems.Add(nama.Text)
.SubItems.Add(jurusan.Text)
.SubItems.Add(jenjang.Text)
.SubItems.Add(tmasuk.Text)
.SubItems.Add(nangka.Text)
.SubItems.Add(nhuruf.Text)
lv.Items.Add(ist)
End With
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
buattabel()
End Sub
Private Sub npm_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles npm.KeyPress
If e.KeyChar = Chr(13) Then
nama.Focus()
End If
End Sub
Private Sub npm_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles npm.TextChanged
Dim x, y As String
x = Microsoft.VisualBasic.Mid(npm.Text, 3, 1)
y = Microsoft.VisualBasic.Mid(npm.Text, 4, 1)
tmasuk.Text = "20" & Microsoft.VisualBasic.Left(npm.Text, 2)
If x = "0" Then
If y = "2" Then
jenjang.Text = "D-3"
jurusan.Text = "Manajemen Informatika"
End If
ElseIf x = "1" Then
jenjang.Text = "S-1"
If x = "1" Then
jurusan.Text = "Tek.Informatika"
ElseIf y = "2" Then
jurusan.Text = "Sis.Informasi"
End If
End If
End Sub
Private Sub btnsimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsimpan.Click
isitabel()
npm.Text = ""
nama.Text = ""
jenjang.Text = ""
jurusan.Text = ""
tmasuk.Text = ""
nangka.Text = ""
nhuruf.Text = ""
End Sub
Sub bersih()
NPM.Text = ""
Nama.Text = ""
Jenjang.Text = ""
jurusan.Text = ""
tmasuk.Text = ""
nangka.Text = ""
nhuruf.Text = ""
End Sub
Private Sub nangka_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles nangka.KeyPress
If e.KeyChar = Chr(13) Then
If nangka.Text >= 85 Then
nhuruf.Text = "A"
ElseIf nangka.Text >= 70 Then
nhuruf.Text = "B"
ElseIf nangka.Text >= 60 Then
nhuruf.Text = "C"
ElseIf nangka.Text >= 50 Then
nhuruf.Text = "D"
Else
nhuruf.Text = "E"
End If
End If
End Sub
Private Sub btnkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnkeluar.Click
End
End Sub
Private Sub btnhapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnhapus.Click
npm.Text = ""
nama.Text = ""
jenjang.Text = ""
jurusan.Text = ""
tmasuk.Text = ""
nangka.Text = ""
nhuruf.Text = ""
End Sub
Private Sub btnbersih_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnbersih.Click
bersih()
End Sub
Private Sub btnhapuspilih_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnhapuspilih.Click
lv.Items.Remove(lv.SelectedItems(0))
End Sub
Private Sub nangka_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nangka.TextChanged
End Sub
End Class
Soal No. 3 (Tanpa Menggunakan Listview)
Kerjakan latihan berikut Penggajian Karyawan , dan program tersebut harus memiliki menu dan login, saat menggunakannya.
Sebuah perusahaan ingin membuat program penggajian dengan tujuan memudahkan untuk melakukan perhitungan gaji kepada karyawannya. Adapun ketentuan yang diharapkan yaitu :
Gaji pokok berdasarkan Jabatan. Untuk jabatan Mandor maka gaji 1750000, Jabatan Kepala Bagian maka gaji 2500000, Jabatan Staf maka gaji 1250000.
Untuk karyawan yang MENIKAH maka di berikan Tunjangan Istri sebesar 9% dari gaji pokok. Apabila karyawan memiliki anak, maka mendapatkan Tunjangan Anak dengan perhitungan, 1 anak mendapatkan Tunjangan Anak 3% dari Gaji Pokok, 2 anak mendapatkan 7% dari Gaji Pokok, untuk anak yang lebih dari 2 maka hanya dihitung 2 anak saja yang mendapatkan tunjangan.
Setiap karyawan dikenakan pajak yang besarnya 1.5 % dari gaji pokok.
Bila karyawan melakukan lembur, maka dihitung dari jumlah jam lembur yang dikalikan Rp. 5000 perjamnya untuk Jabatan Staf, Jika Mandor Rp. 7500 perjamnya sedangkan Kepala Bagian, 10000 per jamnya.
Total gaji karyawan diperoleh dari Gaji pokok + Tunjangan Istri + Tunjangan Anak + Gaji lembur – Pajak.
Private Sub btnok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnok.Click
If username.Text = “Rahmad Eko” And password.Text = “0911015” Then
menuutama.Show()
Me.Hide()
Else
MsgBox(“Data Username/Password Salah?”)
username.Text = “”
password.Text = “”
End If
End Sub
End Class
If username.Text = “Rahmad Eko” And password.Text = “0911015” Then
menuutama.Show()
Me.Hide()
Else
MsgBox(“Data Username/Password Salah?”)
username.Text = “”
password.Text = “”
End If
End Sub
End Class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
nik.Items.Add("1001")
nik.Items.Add("1002")
nik.Items.Add("1003")
Jabatan.Items.Add("Mandor")
Jabatan.Items.Add("Kepala Bagian")
Jabatan.Items.Add("Staff")
status.Items.Add("Belum Menikah")
status.Items.Add("Menikah")
jmlhlmbur.Items.Add("1 jam")
jmlhlmbur.Items.Add("2 jam")
jmlhlmbur.Items.Add("3 jam")
End Sub
Private Sub nik_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nik.SelectedIndexChanged
If nik.Text = "1001" Then
nama.Text = "Julianti Putri"
ElseIf nik.Text = "1002" Then
nama.Text = "Rahmad Eko"
ElseIf nik.Text = "1003" Then
nama.Text = "Rada Dewi"
Else
nama.Text = "Empty"
End If
End Sub
Private Sub status_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles status.SelectedIndexChanged
If status.Text = "Belum Menikah" Then
tunjanak.Text = 0
tunjistri.Text = 0
ElseIf status.Text = "Menikah" Then
tunjistri.Text = 175000
Else
tunjanak.Text = 0
tunjistri.Text = 0
End If
End Sub
Private Sub btnproses_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnproses.Click
If jumlahank.Text <= 2 Then
tunjanak.Text = jumlahank.Text * (0.03 * gaji.Text)
ElseIf jumlahank.Text >= 2 Then
tunjanak.Text = jumlahank.Text * (0.07 * gaji.Text)
End If
If jmlhlmbur.Text = "1 jam" Then
Lembur.Text = 7500
ElseIf jmlhlmbur.Text = "2 jam" Then
Lembur.Text = 10000
ElseIf jmlhlmbur.Text = "3 jam" Then
Lembur.Text = 15000
Else
Lembur.Text = 0
End If
Pajak.Text = 0.015 * gaji.Text
Total.Text = Val(gaji.Text) + Val(tunjanak.Text) + Val(tunjistri.Text) + Val(Lembur.Text) - Val(Pajak.Text)
End Sub
Private Sub btnhapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnhapus.Click
nik.Text = ""
nama.Text = ""
Jabatan.Text = ""
gaji.Text = ""
status.Text = ""
jumlahank.Text = ""
tunjistri.Text = ""
tunjanak.Text = ""
Pajak.Text = ""
Lembur.Text = ""
jmlhlmbur.Text = ""
Total.Text = ""
nik.Focus()
End Sub
Sub bonusgaji()
If status.Text = "MENIKAH" Then
tunjistri.Text = 0.09 * gaji.Text
If jumlahank.Text = "1" Then
tunjanak.Text = 0.03 * gaji.Text
ElseIf jumlahank.Text = "2" Then
tunjanak.Text = 0.07 * gaji.Text
ElseIf jumlahank.Text >= "2" Then
tunjanak.Text = 0.07 * gaji.Text
End If
Else
tunjistri.Text = "0"
tunjanak.Text = "0"
End If
End Sub
Private Sub Jabatan_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Jabatan.SelectedIndexChanged
If Jabatan.Text = "Mandor" Then
gaji.Text = 1750000
ElseIf Jabatan.Text = "Kepala Bagian" Then
gaji.Text = 2500000
ElseIf Jabatan.Text = "Staff" Then
gaji.Text = 1250000
Else
gaji.Text = 0
End If
End Sub
Private Sub btnkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnkeluar.Click
End
End Sub
Private Sub jmlhlmbur_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles jmlhlmbur.SelectedIndexChanged
If Jabatan.Text = "mandor" Then
Lembur.Text = 7500
ElseIf Jabatan.Text = "kepala bagian" Then
Lembur.Text = 10000
ElseIf Jabatan.Text = "staff" Then
Lembur.Text = 5000
Else
Lembur.Text = 0
End If
End Sub
End Class
Soal No. 3 (Menggunakan Listview)
Public Class Form1
Private Sub btnok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnok.Click
If username.Text = "adlinhasibuan" And password.Text = "merahmudahasibuan" Then
menuutama.Show()
Me.Hide()
Else
MsgBox("Data Username/Password Salah?")
username.Text = ""
password.Text = ""
End If
End Sub
End Class
______________________________________________________________
Public Class gajipegawai
Private Sub gajipegawai_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
jabatan.Items.Add("Mandor")
jabatan.Items.Add("Kepala Bagian")
jabatan.Items.Add("Staff")
status.Items.Add("Tidak Nikah")
status.Items.Add("Menikah")
Dim jmlh As Byte
For jmlh = 1 To 30
jlh_anak.Items.Add(jmlh)
Next
Dim lama As Byte
For lama = 1 To 30
lama_lembur.Items.Add(lama)
Next
bersih()
RancangTabel()
nama.Focus()
End Sub
Sub RancangTabel()
With LV
.Columns.Add("Nama", 70, HorizontalAlignment.Center)
.Columns.Add("Jabatan", 120, HorizontalAlignment.Left)
.Columns.Add("Gaji Pokok", 100, HorizontalAlignment.Left)
.Columns.Add("Status", 100, HorizontalAlignment.Left)
.Columns.Add("Tunj Istri", 120, HorizontalAlignment.Left)
.Columns.Add("Jmlah Anak", 90, HorizontalAlignment.Center)
.Columns.Add("Tunj Anak", 90, HorizontalAlignment.Center)
.Columns.Add("Pajak", 120, HorizontalAlignment.Left)
.Columns.Add("Lama Lembur", 120, HorizontalAlignment.Left)
.Columns.Add("Upah Lembur", 120, HorizontalAlignment.Left)
.Columns.Add("Gaji", 120, HorizontalAlignment.Left)
.GridLines = True
.FullRowSelect = True
.View = View.Details
End With
End Sub
Sub MasukTabel()
Dim ist As New ListViewItem
With ist
.Text = nama.Text
.SubItems.Add(jabatan.Text)
.SubItems.Add(gaji.Text)
.SubItems.Add(status.Text)
.SubItems.Add(tjg_i.Text)
.SubItems.Add(jlh_anak.Text)
.SubItems.Add(tjg_a.Text)
.SubItems.Add(pajak.Text)
.SubItems.Add(lama_lembur.Text)
.SubItems.Add(lembur.Text)
.SubItems.Add(totgaji.Text)
LV.Items.Add(ist)
End With
End Sub
Sub bersih()
nama.Text = ""
jabatan.Text = ""
gaji.Text = ""
tjg_a.Text = ""
tjg_i.Text = ""
jlh_anak.Text = ""
lembur.Text = ""
lama_lembur.Text = ""
totgaji.Text = ""
pajak.Text = ""
status.Text = ""
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsimpan.Click
MasukTabel()
bersih()
End Sub
Private Sub jabatan_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles jabatan.SelectedIndexChanged
If jabatan.Text = "Mandor" Then
gaji.Text = 1750000
ElseIf jabatan.Text = "Kepala Bagian" Then
gaji.Text = 2500000
ElseIf jabatan.Text = "Staff" Then
gaji.Text = 1250000
Else
gaji.Text = 0
End If
pajak.Text = 0.015 * gaji.Text
End Sub
Private Sub lama_lembur_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lama_lembur.SelectedIndexChanged
If jabatan.Text = "Mandor" Then
lembur.Text = lama_lembur.Text * 7500
ElseIf jabatan.Text = "Kepala Bagian" Then
lembur.Text = lama_lembur.Text * 10000
ElseIf jabatan.Text = "Staff" Then
lembur.Text = lama_lembur.Text * 5000
Else
lembur.Text = 0
End If
End Sub
Private Sub status_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles status.SelectedIndexChanged
If status.Text = "Menikah" Then
tjg_i.Text = 0.09 * gaji.Text
If jlh_anak.Text = "1" Then
tjg_a.Text = 0.03 * gaji.Text
ElseIf jlh_anak.Text >= "2" Then
tjg_a.Text = 0.07 * gaji.Text
End If
Else
tjg_i.Text = "0"
tjg_a.Text = "0"
End If
End Sub
Private Sub jlh_anak_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles jlh_anak.SelectedIndexChanged
If status.Text = "Menikah" Then
tjg_i.Text = 0.09 * gaji.Text
If jlh_anak.Text = "1" Then
tjg_a.Text = 0.03 * gaji.Text
ElseIf jlh_anak.Text >= "2" Then
tjg_a.Text = 0.07 * gaji.Text
End If
Else
tjg_i.Text = "0"
tjg_a.Text = "0"
End If
End Sub
Private Sub btnhapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnhapus.Click
nama.Text = ""
jabatan.Text = ""
gaji.Text = ""
tjg_a.Text = ""
tjg_i.Text = ""
jlh_anak.Text = ""
lembur.Text = ""
lama_lembur.Text = ""
totgaji.Text = ""
pajak.Text = ""
status.Text = ""
End Sub
Private Sub btnbersih_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnbersih.Click
lv.Items.Remove(lv.SelectedItems(0))
End Sub
Private Sub lembur_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lembur.TextChanged
totgaji.Text = Val(gaji.Text) + Val(tjg_i.Text) + Val(tjg_a.Text) + Val(lembur.Text) - Val(pajak.Text)
End Sub
Private Sub btnkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnkeluar.Click
End
End Sub