Sistem Penggajian Pegawai Menggunak M enggunakan an vb.net Makalah Ini diajukan untuk memenuhi Tugas Mata Kuliah Pemograman Visual Basic
Disusun Oleh :
Nama
Kelas
NIM
: Arif Sonjaya : 3B : 10260028
AKADEMIK MAJANEMEN INFORMATIKA DAN KOMPUTER AMIK HASS BANDUNG
KATA PENGA PENGANTAR
Puji dan syukur saya panjatkan kehadirat Tuhan Yang Maha Esa, karena berkat rahmat dan hidayah Nya saya dapat menyelesaikan tugas Teknik Pemrograman ini dengan membuat makalah yang berjudul ´MAKALAH SISTEM PENGGAJIAN PEGAWAI MENGGUNAKAN BAHASA PEMOGRAMAN VISUAL BASIC.NET´. Penyelesaian makalah ini tidak terlepas dari bantuan berbagai pihak. Oleh karna itu dengan kerendahan hati saya mengucapkan terima kasih kepada : 1. Dosen pembimbing yang telah banyak memberi saran dan masukan tentang tugas. 2. Kedua orang tua yang mendukung baik secara moril maupun materil. 3. Teman-teman yang selalu memberikan motivasi secara langsung maupun tidak langsung. Saya menyadari masih banyak kekurangan dalam makalah yang saya buat ini, untuk
itu
saya
mengharapkan
kritik
dan
saran
dari
teman-teman
untuk
menyempurnakan makalah ini. Bandung, 12 Januari 2012
Penulis
2
Daftar Isi
K ata ata Pengantar
2
Daftar Isi
3
Bab I. Pendahuluan
4
1.1. Latar Belakang
4
1.2. Tujuan Penulisan
4
1.3. Manfaat Penulisan
5
Bab II. Perancangan Aplikasi
6
2.1.Rancangan Database (Struktur Tabel,Relationship Diagram)
6
2.2. Rancangan interface(form) interface(form)
9
Bab III. Implementasi
29
3.1.Spesifikasi Hardware
29
3.2.Cara Mengoprasikan Program
30
Bab IV. Penutu p
40
4.1.Kesimpulan
40
4.2.Saran
40
3
Bab I PENDAHULUA PENDAHULUAN N
1.1. Latar Belakang Visual Basic adalah bahasa pemrograman berbasis Windows. Saat ini, Visual Basic adalah salah satu bahasa pemrograman yang terbaik. Visual Basic merupakan pengembangan dari Basic. Basic (Beginner¶s All-purpose Symbolic Instruction Code) adalah sebuah bahasa pemrograman ³kuno´ yang merupakan awal dari bahasa-bahasa pemrograman tingkat tinggi lainnya. Basic dirancang pada tahun 1950-an dan ditujukan untuk dapat digunakan oleh para programmer pemula. Biasanya Basic diajarkan untuk para pelajar sekolah menengah yang baru mengenal komputer, serta digunakan
untuk
pengembangan
program
³cepat
saji´
yang
ringan
dan
menyenangkan. Walaupun begitu, peran Basic lebih dari sekedar itu saja. Banyak programer handal saat ini memulai karirnya dengan mempelajari Basic. Sebagai bahasa pemrograman yang mutakhir, Visual Basic didesain untuk dapat memanfaatkan fasilitas Windows, khususnya Windows 95/97/98 dan Windows NT. Visual Basic juga merupakan bahasa pemrograman Object Oriented Programming (OOP), yaitu pemrograman yang berorientasi objek. Visual Basic menyediakan objek-objek yang sangat kuat, berguna, dan mudah dipakai. Dengan fasilitas tersebut, membuat Visual Basic menjadi begitu diinginkan o leh programmer.
1.2. Tujuan Penulisan. Tujuan penulis, dalam pembuatan makalah ini adalah :
4
y
Untuk memenuhi tugas Tehnik Pemrograman.
y
Untuk memberi pengetahuan kepada pembaca tentang bahasa pemrograman Visual Basic.
1.3. Manfaat Penulisan y
Memberi informasi kepada pembaca mengenai bahasa pemrograman Visual Basic.
y
Makalah ini diharapkan menjadi sumbangan pemikiran bagi para pembaca untuk mengembangkan bahasa pemrograman dimasa sekarang.
5
BAB II
PERA PERANC NCA NGAN PRO PROG GRAM ANGA RAM
2.1 Perancangan Database
Inilah rancangan database pada yang dibuat di ms.access ms.access Tabel Pegawai Field
Properties
Size
Nik Nama
text text
10 25
Alamat
text
40
Tempat_Lahir Tgl_Lahir
text date
15 -
Kode_Bagian Kode_Jabatan
text text
5 5
Tabel Bagian Field
Properties
Size
Kode_Bagian Bagian
text text
5 15
Kode_Lembur
text
5
Tabel Jabatan Field Kode_Jabatan
Properties text
Size 5
Jabatan Kode_Gaji
text text
15 5
Kode_Tunjangan
text
5
Tabel Gaji Field Kode_Gaji
Properties text
Size 5
Gaji
numeric
LongInteger
Tabel Tunjangan Field Kode_Tunjangan
6
Properties text
Size 5
Tunjangan
numeric
LongInteger
Tabel Lembur Field Kode_Lembur
Properties text
Size 5
Uang_Lembur
mumeric
LongInteger
Tabel Transaksi Field No_Faktur
Properties text
Size 10
Tgl Nik
date text
-
Gaji Tunjangan
numeric numeric
Uang_Lembur
numeric
10 LongInteger LongInteger LongInteger
Tabel Pengguna Field Username
Properties text
Size 10
Pass
text
15
Level
text
10
elasional Tabel R elasional
7
2.2 R ancangan ancangan Interface
Inilah rancangan Interface pada aplikasi Form Sflash
Form Depan
8
Form Pegawai
From Pop Bagian
9
Form Pop Jabatan
Form Pop Pegawai 10
Form Bagian
11
Form Pop Bagian 2
Form Pop Lembur
Form Jabatan
12
Form Pop Gaji
Form Pop Tunjangan 13
Form Pop Jabatan2
Form Tunjangan 14
Form Pop Tunjangan2
15
Form Gaji
Form Pop Gaji2
16
Form Lembur
Form Pop Lembur2 17
Form Penggajian Pegawai
Form cari Pegawai 18
Cristal R eport Penggajian Pegawai
Form Laporan Penggajian Pegawai 19
Form Pengguna
Form Ganti Password 20
Coding pada Form transaksi (Form Penggajian Pegawai) Public Class Penggajian_Pegawai Dim daPegawai As OleDb.OleDbDataAdapter Dim daJabatan As OleDb.OleDbDataAdapter Dim daBagian As OleDb.OleDbDataAdapter Dim daLembur As OleDb.OleDbDataAdapter Dim daGaji As OleDb.OleDbDataAdapter Dim daTunjangan As OleDb.OleDbDataAdapter Dim daTransaksi As OleDb.OleDbDataAdapter Dim con As New OleDb.OleDbConnection(Koneksi( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Data Kampus\VB\database project\Percobaan\DataPegawai.mdb" )) Dim dtPegawai As New DataTable() Dim drPegawai As DataRow Dim dtBagian As New DataTable() Dim drBagian As DataRow Dim dtJabatan As New DataTable() Dim drJabatan As DataRow Dim dtLembur As New DataTable() Dim drLembur As DataRow Dim dtGaji As New DataTable() Dim drGaji As DataRow Dim dtTunjangan As New DataTable() Dim drTunjangan As DataRow Dim dtTransaksi As New DataTable() Dim drTransaksi As DataRow Function Koneksi(ByVal Koneksi(ByVal strDatabase As String String) ) As String Dim kalimat As String kalimat = "Provider=Microsoft.Jet.OLEDB.4.0;" kalimat &= "Data Source=" & strDatabase & ""
21
Return kalimat End Function Private Sub Penggajian_Pegawai_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase MyBase.Load .Load Dim dcPe(1) As DataColumn Dim dcBa(1) As DataColumn Dim dcJa(1) As DataColumn Dim dcLe(1) As DataColumn Dim dcTu(1) As DataColumn Dim dcGa(1) As DataColumn Dim dcTr(1) As DataColumn tutup() Try daPegawai = New OleDb.OleDbDataAdapter( "select * from Pegawai", Pegawai" , con) daBagian = New OleDb.OleDbDataAdapter( "select * from Bagian", Bagian" , con) daJabatan = New OleDb.OleDbDataAdapter( "select * from Jabatan", Jabatan" , con) daLembur = New OleDb.OleDbDataAdapter( "select * from Lembur", Lembur" , con) daGaji = New OleDb.OleDbDataAdapter( "select * from Gaji", Gaji" , con) daTunjangan = New OleDb.OleDbDataAdapter( "select * from Tunjangan", Tunjangan" , con) daTransaksi = New OleDb.OleDbDataAdapter( "select * from Transaksi", Transaksi" , con) daPegawai = New OleDb.OleDbDataAdapter( "select * from Pegawai", Pegawai" , con) daPegawai.Fill(dtPegawai) dcPe(0) = dtPegawai.Columns("Nik" dtPegawai.Columns( "Nik") ) dtPegawai.PrimaryKey = dcPe daPegawai = New OleDb.OleDbDataAdapter( "select * from Pegawai", Pegawai" , con) daBagian = New OleDb.OleDbDataAdapter( "select * from Bagian", Bagian" , con) daBagian.Fill(dtBagian) dcBa(0) = dtBagian.Columns("Kode_Bagian" dtBagian.Columns( "Kode_Bagian") ) dtBagian.PrimaryKey = dcBa daBagian = New OleDb.OleDbDataAdapter( "select * from Bagian", Bagian" , con) daJabatan = New OleDb.OleDbDataAdapter( "select * from Jabatan", Jabatan" , con) daJabatan.Fill(dtJabatan) dcJa(0) = dtJabatan.Columns("Kode_Jabatan" dtJabatan.Columns( "Kode_Jabatan") ) dtJabatan.PrimaryKey = dcJa daJabatan = New OleDb.OleDbDataAdapter( "select * from Jabatan", Jabatan" , con) daLembur = New OleDb.OleDbDataAdapter( "select * from Lembur", Lembur" , con) daLembur.Fill(dtLembur)
22
dcLe(0) = dtLembur.Columns("Kode_Lembur" dtLembur.Columns( "Kode_Lembur") ) dtLembur.PrimaryKey = dcLe daGaji = New OleDb.OleDbDataAdapter( "select * from Gaji", Gaji" , con) daGaji.Fill(dtGaji) dcGa(0) = dtGaji.Columns("Kode_Gaji" dtGaji.Columns( "Kode_Gaji") ) dtGaji.PrimaryKey = dcGa daTunjangan = New OleDb.OleDbDataAdapter( "select * from Tunjangan", Tunjangan" , con) daTunjangan.Fill(dtTunjangan) dcTu(0) = dtTunjangan.Columns("Kode_Tunjangan" dtTunjangan.Columns( "Kode_Tunjangan") ) dtTunjangan.PrimaryKey = dcTu daTransaksi = New OleDb.OleDbDataAdapter( "select * from Transaksi", Transaksi" , con) daTransaksi.Fill(dtTransaksi) dcTr(0) = dtTransaksi.Columns("No_Faktur" dtTransaksi.Columns( "No_Faktur") ) dtTransaksi.PrimaryKey = dcTr dgTransaksi.DataSource = dtTransaksi Catch errConn As OleDb.OleDbException MsgBox(errConn.Message) End Try End Sub Private Sub tutup() tbNo_Faktur.Enabled = False dtTgl.Enabled = False tbJam.Enabled = False btCari.Enabled = False btBatal.Enabled = False btOk.Enabled = False Button1.Enabled = False End Sub Private Sub buka() tbNo_Faktur.Enabled = True dtTgl.Enabled = True tbJam.Enabled = True btCari.Enabled = True btBatal.Enabled = True btOk.Enabled = True Button1.Enabled = True End Sub Private Sub kosong() tbNo_Faktur.Text = "" tbNik.Text = "" tbNama.Text = "" tbBagian.Text = "" tbJabatan.Text = "" tbKodeBag.Text = "" tbKodeJab.Text = "" tbKodeLem.Text = "" tbLembur.Text = "" tbGaji.Text = ""
23
tbKodeGaji.Text = "" tbKodeTun.Text = "" tbTunjangan.Text = "" tbTotal.Text = "" tbJam.Text = "" End Sub Private Sub cariPegawai() Dim x As Integer If tbNik.Text = "" Then x = 1 Else Try drPegawai = dtPegawai.Rows.Find(tbNik.Text) tbNama.Text = drPegawai("Nama" drPegawai( "Nama").ToString ).ToString tbKodeBag.Text = drPegawai("Kode_Bagian" drPegawai( "Kode_Bagian").ToString ).ToString tbKodeJab.Text = drPegawai("Kode_Jabatan" drPegawai( "Kode_Jabatan").ToString ).ToString Catch errCari As Exception MsgBox(errCari.Message)
End Try End If End Sub Private Sub cariBagian() Dim x As Integer If tbKodeBag.Text = "" Then x = 1 Else Try drBagian = dtBagian.Rows.Find(tbKodeBag.Text) tbBagian.Text = drBagian("Bagian" drBagian( "Bagian").ToString ).ToString tbKodeLem.Text = drBagian("Kode_Lembur" drBagian( "Kode_Lembur").ToString ).ToString Catch errCari As Exception MsgBox(errCari.Message) End Try End If End Sub Private Sub cariJabatan() Dim x As Integer If tbKodeJab.Text = "" Then x = 1 Else Try drJabatan = dtJabatan.Rows.Find(tbKodeJab.Text) tbJabatan.Text = drJabatan("Jabatan" drJabatan( "Jabatan").ToString ).ToString tbKodeTun.Text = drJabatan("Kode_Tunjangan" drJabatan( "Kode_Tunjangan").ToString ).ToString tbKodeGaji.Text = drJabatan("Kode_Gaji" drJabatan( "Kode_Gaji").ToString ).ToString
24
Catch errCari As Exception MsgBox(errCari.Message)
End Try End If End Sub Private Sub cariLembur() Dim x As Integer If tbKodeLem.Text = "" Then x = 1 Else Try drLembur = dtLembur.Rows.Find(tbKodeLem.Text) tbLembur.Text = drLembur("Uang_Lembur" drLembur( "Uang_Lembur").ToString ).ToString Catch errCari As Exception MsgBox(errCari.Message) End Try End If End Sub Private Sub cariGaji() Dim x As Integer If tbKodeGaji.Text = "" Then x = 1 Else Try drGaji = dtGaji.Rows.Find(tbKodeGaji.Text) tbGaji.Text = drGaji("Gaji" drGaji( "Gaji").ToString ).ToString Catch errCari As Exception MsgBox(errCari.Message)
End Try End If End Sub Private Sub cariTunjangan() Dim x As Integer If tbKodeTun.Text = "" Then x = 1 Else Try drTunjangan = dtTunjangan.Rows.Find(tbKodeTun.Text) tbTunjangan.Text = drTunjangan("Tunjangan" drTunjangan( "Tunjangan").ToString ).ToString Catch errCari As Exception MsgBox(errCari.Message)
End Try End If
25
End Sub
Private Sub simpan() Dim lembur, jam, total As Integer lembur = Val(tbLembur.Text) jam = Val(tbJam.Text) total = lembur * jam Try Dim cbTransaksi As OleDb.OleDbCommandBuilder = New OleDb.OleDbCommandBuilder(daTransaksi) drTransaksi = dtTransaksi.NewRow drTransaksi("No_Faktur" drTransaksi( "No_Faktur") ) = tbNo_Faktur.Text drTransaksi("Tgl" drTransaksi( "Tgl") ) = dtTgl.Text drTransaksi("Nik" drTransaksi( "Nik") ) = tbNik.Text drTransaksi("Gaji" drTransaksi( "Gaji") ) = Val(tbGaji.Text) drTransaksi("Tunjangan" drTransaksi( "Tunjangan") ) = Val(tbTunjangan.Text) drTransaksi("Uang_Lembur" drTransaksi( "Uang_Lembur") ) = total dtTransaksi.Rows.Add(drTransaksi) con.Open() daTransaksi.Update(dtTransaksi) dtTransaksi.AcceptChanges() con.Close() Catch errTambah As Exception MsgBox(errTambah.Message) End Try End Sub Private Sub tbNik_TextChanged( tbNik_TextChanged(ByVal ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbNik.TextChanged cariPegawai() End Sub Private Sub tbKodeBag_TextChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbKodeBag.TextChanged cariBagian() End Sub Private Sub tbKodeJab_TextChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbKodeJab.TextChanged cariJabatan() End Sub Private Sub tbKodeGaji_TextChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbKodeGaji.TextChanged cariGaji() End Sub Private Sub tbKodeTun_TextChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbKodeTun.TextChanged cariTunjangan() End Sub
26
Private Sub tbKodeLem_TextChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbKodeLem.TextChanged cariLembur() End Sub Private Sub btCari_Click(ByVal btCari_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btCari.Click Cari_Pegawai.Show() End Sub Private Sub tbTambah_Click(ByVal tbTambah_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btTambah.Click btTambah.Enabled = False buka() End Sub Private Sub btOk_Click(ByVal btOk_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btOk.Click If tbNo_Faktur.Text = "" Then MsgBox("No MsgBox( "No Faktur belum di isi") isi" ) ElseIf tbNik.Text = "" Then MsgBox("Pegawai MsgBox( "Pegawai belum di input") input" ) ElseIf tbJam.Text = "" Then MsgBox("Jumlah MsgBox( "Jumlah Jam lembur belum di isi") isi" ) Else btTambah.Enabled = True simpan() tutup() kosong() End If End Sub Private Sub btBatal_Click(ByVal btBatal_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btBatal.Click btTambah.Enabled = True tutup() End Sub Private Sub Button1_Click(ByVal Button1_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim total, gaji, tunjangan, lembur, jam As Integer gaji = Val(tbGaji.Text) tunjangan = Val(tbTunjangan.Text) lembur = Val(tbLembur.Text) jam = Val(tbJam.Text) total = gaji + tunjangan + (lembur * jam) tbTotal.Text = total End Sub End Class
Bab III 27
IMPL IMPLEMENTA EMENTASI SI
3.1. Spesifikasi Hardware
Membuat aplikasi database adalah hal yang amat menarik. Database yang digunakan SQL Server 2005. Contoh aplikasi adalah proses pembuatan program POS (Point of Sales). Form Visual Basic dapat kita rancang agar pengguna (user) bisa mengakses data master. Di bawah ini adalah Spesifikasi Akses Database VB.NET.
Brand:
Bamboomedia
Part Number:
IT-305 Pengenalan Visual Studio 2005. Project dan Solution. Menggunakan Server Explorer untuk Membuat Database dan
Menu Belajar:
Tabel. Membuat Form dan Cara Menghubungkan Ke database. Menggunakan Komponen Toolbox. Membuat Form Manipulasi data dan Transaksi. Membuat Form MDI, Menu Prosesor Pentium 4, Ram 512 Mb, Resolusi minimal 1024 x
Spesifikasi K om omputer:
768, CD-ROM minimal 24x, VGA minimal 16 bit, Sound Card, Speaker. OS: Windows XP, Vista, Windows 7
Target Pengguna:
Umum
Tingkat K etram etrampilan:
Pemula, Menengah
3.2. Cara Pengo perasian Program y
Klik StartMicrosoft Visual Studio 2005
y
Tapi Kalau Program Aplikasinya sudah Menjadi EXE langsung Klik Saja EXEnya
28
Cara Pengopersian Program Aplikasi Perpustakaan ini harus memasukan USER dan Password Terlebih dahulu.Yang di dalamnya terdapat Menu-menu yang diantaranya SISTEM,MASTER,TRANSAKSI,dan LAPORAN 3.2.1 Form Login
1. Klik Menu SistemLogin, isikan nama user Misal nya Nama User Password
: Brintz : xxx
Seperti gambar di bawah ini :
Catatan :
Dapat menembahkan user-user baru sesuai dengan kebutuhan
3.2.2 Form Menu
29
Di form ini ada 4 menu yaitu 1. System Dalam menu system ini terdapat 4 sub menu yaitu : a. Log in Menu ini digunakan untuk dapat masuk dan menggunakan aplikasi ini dengan menseleksi level si pengguna/user b. Logout Menu ini digunakan untuk keluar dari user yang sedang menggunakan aplikasi ini c. Ganti Password Menu ini digunakan untuk mengganti/merubah password user yg sedang /sudah login ke dalam aplikasi d. Exit Menu ini digunakan untuk keluar dari aplikasi / menutup aplikasi ap likasi 2. Master Menu ini adalah menu yang dipergunakan untuk memanipulasi data pada database dan menu ini hanya dapat di akses oleh user yang mempunyai level Administrator. Menu ini mempunyai 7 sub menu yaitu :
30
a. Data Pegawai Menu ini adalah menu untuk memanggil Form Pegawai yang digunakan untuk memanipulasi data pegawai contoh nya ada pada gambar di bawah ini :
b. Data Bagian Menu ini adalah menu untuk memanggil Form Bagian yang digunakan untuk memanipulasi data bagian contoh nya ada pada gambar di bawah ini :
31
c. Data Jabatan Menu ini adalah menu untuk memanggil Form Jabatan yang digunakan untuk memanipulasi data jabatan contoh nya ada pada gambar di bawah ini :
32
d. Data Lembur Menu ini adalah menu untuk memanggil Form lembur yang digunakan untuk memanipulasi data lembur contoh nya ada pada gambar di bawah ini :
e. Data Gaji Menu ini adalah menu untuk memanggil Form Gaji yang digunakan untuk memanipulasi data Gaji contoh nya ada pada gambar di bawah ini :
33
f. Data Tunjangan Menu ini adalah menu untuk memanggil Form Tunjangan yang digunakan untuk memanipulasi data Tunjangan contoh nya ada pada gambar di bawah ini :
g. Data Pengguna Menu ini adalah menu untuk memanggil Form Pengguna yang digunakan untuk memanipulasi data pengguna contoh nya ada pada gambar di bawah ini :
34
3. Transaksi Form ini di khususkan untuk pengguna yang mempunyai level op atau Operator dan mempunyai fungsi untuk mengolah data dan melihat data pegawai berhak menerima gaji Form ini mempunyai 2 sub menu yaitu : a. Lihat data Pegawai Form ini berfungsi untuk melihat data pegawai yang ada di perusahaan dan berhak menerima gaji contoh nya adalah sebagai berikut :
35
b. Penggajian pegawai Form ini digunakan untuk memproses data transaksi penggajian pegawai. Contoh nya sebagai berikut :
36
4. Laporan Menu ini berfungsi untuk menampilkan laporan data penggajian pegawai yang telah diproses . form ini mempunyai 1 sub menu yaitu:
Laporan Penggajian Pegawai Menu ini berfungsi untuk menampilkan dan mencetak data penggajian pegawai yang telah diproses. Contoh nya sebagai berikut :
37
Bab IV PENUTU PENUTUP P
4.1. Kesimpulan Dari pembahasan di atas dapat di simpulkan, bahwa bahasa pemograman visual basic merupakan pemrograman berbasis Windows. Visual Basic juga merupakan bahasa pemrograman Object Oriented Programming (OOP), yaitu pemrograman yang berorientasi objek. Visual Basic menyediakan objek-objek yang sangat kuat, berguna, dan mudah dipakai. Dengan fasilitas tersebut, membuat Visual Basic menjadi begitu diinginkan oleh programmer. pro grammer. 4.2. Saran Diharapkan
mahasiswa
mau
mempelajari
dan
mengembangkan
bahasa
pemograman visual basic sebab visual basic merupakan bahasa yang mudah untuk di pelajari dan sangat menarik , maka Penulis berharap kepada pembaca (khususnya pemula), untuk sejak dini mempelajari dan mengembangkan bahasa pemrograman tersebut.
38