Tuesday, 14 April 2015

Membuat Program Aplikasi menggunakan VB.Net




Data Pegawai

Salah satu program aplikasi yang dibuat menggunakan bahasa pemrograman VB.Net. Program ini untuk mengetahui data pegawai yang akan mengambil pensiun. Dengan aplikasi ini kita bisa mengetahui berapa uang yang akan diterima oleh pegawai jika ia mengambil pensiun dini melalui perhitungan Gaji, Tunjangan Jabatan, Tunjangan Anak, PPh, dan Bonus.

Ketentuan:

a.       Jika data NIP diinput, maka secara otomatis Kode Pegawai akan terisi 2 angka dari kiri yang diambil dari NIP pegawai tersebut.

b.      Jika Golongan dipilih, maka Jabatan, Gaji perbulan, dan Tunjangan jabatan akan otomatis muncul


Golongan
Jabatan
Gaji Pokok
1
Manager
Rp. 10.000.000
2
Supervisor
Rp. 7.500.000
3
Staff
Rp. 5.000.000
4
ASS. staff
Rp. 2.500.000
5
Junior Staff
Rp. 1.000.000


c.       Untuk ketentuan Tunjangan Jabatan yang akan muncul saat golongan dipilih

-          Jika golongan 1 dan 2, maka Tunjangan Jabatan 15% dari gaji pokok perbulan

-          Jika Jabatan 3 dan 4, maka Tunjangan Jabatan 5% dari gaji pokok perbulan, selain itu Tunjangan Jabatan 0%

d.      Jika Menikah dan mempunyai anak, maka mendapat Tunjangan Anak dengan ketentuan:

-          Anak 1 = 1% dari Gaji Pokok

-          Anak 2 dan lebih dari 2 = 2% dari Gaji Pokok

e.      Jika Total Gaji lebih dari 5.000.000 maka dikenakan PPh 3% dari Total

f.        Gaji bersih didapat dari total – PPh

g.       untuk ketentuan bonus:

-          jika lama kerja dibawah 5 tahun, maka tidak mendapat bonus

-          jika lama kerja diatas 5 tahun, akan mendapat bonus sebesar 2% dari gaji pokok

h.      Uang yang didapat = Gaji bersih + Bonus

i.         Untuk Total, PPh, Gaji Bersih, Bonus dan Uang yang didapat akan muncul ketika button Hitung diklik

j.        Tambahkan button Entry dan Close. Saat button Entry diklik, maka form akan bersih kembali seperti semula. Dan jika button Close diklik, maka form akan keluar (close).


Langkah-langkah:

1.       Buka Visual Studio, lalu pilih New Project

2.       Buat design form seperti ini dan ubah name dan textnya pada properties sesuai dengan yang dibawah ini



3.       Untuk Nomor Induk Pegawai, langkahnya double click di kolom TextBoxNIP, masukan sourcecode

Private Sub TextBoxNIP_TextChanged(sender As Object, e As EventArgs) Handles TextBoxNIP.TextChanged

        TextBoxKode.Text = Strings.Left(TextBoxNIP.Text, 2)

    End Sub


Contoh:



4.       Untuk pengisian tanggal, ComboBoxTgl(1) menggunakan fungsi While. Sedangkan untuk ComboBoxThn(3) menggunakan fungsi For Next.

Untuk ComboBoxGol juga menggunakan fungsi For Next. Langkah awal, double click pada form, lalu masukan sourcecode:


Public Class Form1

    Dim a, b, c As Integer


    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        ComboBoxTgl.Items.Clear()

        a = 1

        While a <= 31

            ComboBoxTgl.Items.Add(a)

        End While


        For b = 2015 To 1995 Step -1

            ComboBoxThn.Items.Add(b)

        Next


        For c = 1 To 5

            ComboBoxGol.Items.Add(c)

        Next

    End Sub



Ket: langkah pertama, deklarasikan terlebih dahulu, untuk contoh diatas a untuk tgl, b untuk tahun, dan c untuk golongan. Untuk tahun, menggunakan Step -1 sehingga saat ComboBoxThn di klik maka akan muncul tahun yang dimulai dari 2015 dan menurun kebawah sampai 1995.


Langkah selanjutnya, untuk mengisi ComboBox bulan:

-          Klik ComboBoxBln, lalu klik tanda panah kecil diatas ComboBox tersebut

-          klik Edit Items, lalu ketik bulan dari Janurari sampai Desember dengan menggunakan enter sebagai jaraknya.





5.       Untuk jabatan, agar otomatis muncul saat Golongan dipilih maka langkah pertama double click di comboboxGol, lalu isi sourcecode (menggunakan select case):


Private Sub ComboBoxGol_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBoxGol.SelectedIndexChanged


        Dim vgol As String

        vgol = ComboBoxGol.Text


        Select Case vgol

            Case "1"

                ComboBoxGol.Text = 1

                TextBoxJabatan.Text = "MANAGER"

                TextBoxGajiBulan.Text = 10000000

                TextBoxTunjangan.Text = 0.15 * TextBoxGajiBulan.Text

            Case "2"

                ComboBoxGol.Text = 2

                TextBoxJabatan.Text = "SUPERVISOR"

                TextBoxGajiBulan.Text = 7500000

                TextBoxTunjangan.Text = 0.15 * TextBoxGajiBulan.Text

            Case "3"

                ComboBoxGol.Text = 3

                TextBoxJabatan.Text = "STAFF"

                TextBoxGajiBulan.Text = 5000000

                TextBoxTunjangan.Text = 0.05 * TextBoxGajiBulan.Text

            Case "4"

                ComboBoxGol.Text = 4

                TextBoxJabatan.Text = "ASS. STAFF"

                TextBoxGajiBulan.Text = 2500000

                TextBoxTunjangan.Text = 0.05 * TextBoxGajiBulan.Text

            Case "5"

                ComboBoxGol.Text = 5

                TextBoxJabatan.Text = "JUNIOR STAFF"

                TextBoxGajiBulan.Text = 1000000

                TextBoxTunjangan.Text = 0 * TextBoxGajiBulan.Text


        End Select

    End Sub


6.       Double click di textboxjmlanak untuk mengisi tunjangan anak menggunakan IF. Sourcecode:


Private Sub TextBoxJmlAnak_TextChanged(sender As Object, e As EventArgs) Handles TextBoxJmlAnak.TextChanged

        If CheckBox1.Checked And TextBoxJmlAnak.Text = 1 Then

            TextBoxAnak.Text = 0.1 * TextBoxGajiBulan.Text

        ElseIf CheckBox1.Checked And TextBoxJmlAnak.Text >= 2 Then

            TextBoxAnak.Text = 0.2 * TextBoxGajiBulan.Text

        Else

            TextBoxAnak.Text = 0 * TextBoxGajiBulan.Text

        End If

    End Sub


7.       Langkah selanjutnya, double click pada Button Hitung untuk menghitung Total, PPh, Gaji Bersih, Bonus, dan Uang yang didapat. Langkah pertama isi sourcecode untuk total:

        TextBoxTotal.Text = Val(TextBoxGajiBulan.Text) + Val(TextBoxJabatan.Text) + Val(TextBoxAnak.Text)

   


8.       Kedua, sourcecode untuk menghitung PPh:

        If TextBoxTotal.Text >= 5000000 Then

            TextBoxPPH.Text = 0.03 * TextBoxTotal.Text

        Else

            TextBoxPPH.Text = 0 * TextBoxTotal.Text

        End If


9.       Ketiga, sourcecode untuk Gaji Bersih:

TextBoxGajiBersih.Text = Val(TextBoxTotal.Text) - Val(TextBoxPPH.Text)


10.   Langkah selanjutnya, sourcecode untuk mengetahui bonus berdasarkan lama kerja nya

        If TextBoxLamaKerja.Text >= 5 Then

            TextBoxBonus.Text = 0.02 * TextBoxGajiBulan.Text

        Else

            TextBoxBonus.Text = 0 * TextBoxGajiBulan.Text

        End If

   


11.   Dan yang terakhir untuk perhitungan uang yang didapat yang akan muncul ketika button hitung diklik, sourcecode:


        TextBoxTotalAkhir.Text = Val(TextBoxGajiBersih.Text) + Val(TextBoxBonus.Text)


12.   Langkah selanjutnya, double click pada button ENTRY lalu isi sourcecode


  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        TextBox1.Text = ""

        TextBox1.Focus()

        TextBoxNIP.Text = ""

        TextBoxKode.Text = ""

        ComboBoxTgl.Text = ""

        ComboBoxBln.Text = ""

        ComboBoxThn.Text = ""

        ComboBoxGol.Text = ""

        TextBoxJabatan.Text = ""

        TextBoxLamaKerja.Text = ""

        CheckBox1.Checked = ""

        CheckBox2.Checked = ""

        TextBoxJmlAnak.Text = ""

        TextBoxGajiBulan.Text = ""

        TextBoxTunjangan.Text = ""

        TextBoxAnak.Text = ""

        TextBoxTotal.Text = ""

        TextBoxPPH.Text = ""

        TextBoxGajiBersih.Text = ""

        TextBoxBonus.Text = ""

        TextBoxTotalAkhir.Text = ""

    End Sub


13.   Untuk button close, saat button close diklik maka akan muncul konfirmasi Yes dan No. Saat kita memilih Yes maka program akan selesai.

langkahnya double click pada button close, lalu isi sourcecode:


    Private Sub Button2_Click(sender As Object, e As EventArgs) HandlesButton2.Click

        Dim x As Integer

        x = MsgBox("Yakin akan selesai?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Konfirmasi")

        If x = vbYes Then

            End

        End If

    End Sub

Contoh saat aplikasi sedang berjalan:


Sehingga SourceCode keseluruhan seperti dibawah ini

Public Class Form1

    Dim a, b, c As Integer


    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        ComboBoxTgl.Items.Clear()

        a = 1

        While a <= 31

            ComboBoxTgl.Items.Add(a)

        End While


        For b = 2015 To 1995 Step -1

            ComboBoxThn.Items.Add(b)

        Next


        For c = 1 To 5

            ComboBoxGol.Items.Add(c)

        Next

    End Sub

    Private Sub TextBoxNIP_textchanged(sender As Object, e As EventArgs) Handles TextBoxNIP.TextChanged


        TextBoxKode.Text = Strings.Left(TextBoxNIP.Text, 2)


    End Sub


  

    Private Sub ComboBoxGol_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBoxGol.SelectedIndexChanged


        Dim vgol As String

        vgol = ComboBoxGol.Text


        Select Case vgol

            Case "1"

                ComboBoxGol.Text = 1

                TextBoxJabatan.Text = "MANAGER"

                TextBoxGajiBulan.Text = 10000000

                TextBoxTunjangan.Text = 0.15 * TextBoxGajiBulan.Text

            Case "2"

                ComboBoxGol.Text = 2

                TextBoxJabatan.Text = "SUPERVISOR"

                TextBoxGajiBulan.Text = 7500000

                TextBoxTunjangan.Text = 0.15 * TextBoxGajiBulan.Text

            Case "3"

                ComboBoxGol.Text = 3

                TextBoxJabatan.Text = "STAFF"

                TextBoxGajiBulan.Text = 5000000

                TextBoxTunjangan.Text = 0.05 * TextBoxGajiBulan.Text

            Case "4"

                ComboBoxGol.Text = 4

                TextBoxJabatan.Text = "ASS. STAFF"

                TextBoxGajiBulan.Text = 2500000

                TextBoxTunjangan.Text = 0.05 * TextBoxGajiBulan.Text

            Case "5"

                ComboBoxGol.Text = 5

                TextBoxJabatan.Text = "JUNIOR STAFF"

                TextBoxGajiBulan.Text = 1000000

                TextBoxTunjangan.Text = 0 * TextBoxGajiBulan.Text


        End Select

    End Sub


    Private Sub TextBoxJmlAnak_TextChanged(sender As Object, e As EventArgs) Handles TextBoxJmlAnak.TextChanged

        If CheckBox1.Checked And TextBoxJmlAnak.Text = 1 Then

            TextBoxAnak.Text = 0.1 * TextBoxGajiBulan.Text

        ElseIf CheckBox1.Checked And TextBoxJmlAnak.Text >= 2 Then

            TextBoxAnak.Text = 0.2 * TextBoxGajiBulan.Text

        Else

            TextBoxAnak.Text = 0 * TextBoxGajiBulan.Text

        End If

    End Sub



    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        TextBox1.Text = ""

        TextBox1.Focus()

        TextBoxNIP.Text = ""

        TextBoxKode.Text = ""

        ComboBoxTgl.Text = ""

        ComboBoxBln.Text = ""

        ComboBoxThn.Text = ""

        ComboBoxGol.Text = ""

        TextBoxJabatan.Text = ""

        TextBoxLamaKerja.Text = ""

        CheckBox1.Checked = ""

        CheckBox2.Checked = ""

        TextBoxJmlAnak.Text = ""

        TextBoxGajiBulan.Text = ""

        TextBoxTunjangan.Text = ""

        TextBoxAnak.Text = ""

        TextBoxTotal.Text = ""

        TextBoxPPH.Text = ""

        TextBoxGajiBersih.Text = ""

        TextBoxBonus.Text = ""

        TextBoxTotalAkhir.Text = ""



    End Sub


    Private Sub ButtonHitung_Click(sender As Object, e As EventArgs) Handles ButtonHitung.Click

        TextBoxTotal.Text = Val(TextBoxGajiBulan.Text) + Val(TextBoxJabatan.Text) + Val(TextBoxAnak.Text)


        If TextBoxTotal.Text >= 5000000 Then

            TextBoxPPH.Text = 0.03 * TextBoxTotal.Text

        Else

            TextBoxPPH.Text = 0 * TextBoxTotal.Text

        End If


        TextBoxGajiBersih.Text = Val(TextBoxTotal.Text) - Val(TextBoxPPH.Text)



        If TextBoxLamaKerja.Text >= 5 Then

            TextBoxBonus.Text = 0.02 * TextBoxGajiBulan.Text

        Else

            TextBoxBonus.Text = 0 * TextBoxGajiBulan.Text

        End If



        TextBoxTotalAkhir.Text = Val(TextBoxGajiBersih.Text) + Val(TextBoxBonus.Text)


    End Sub


    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

        Dim x As Integer

        x = MsgBox("Yakin akan selesai?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Konfirmasi")

        If x = vbYes Then

            End

        End If



    End Sub

End Class

Selamat Mencoba :)


No comments:

Post a Comment