aplikasi-pembelian-barang.pdf
Post on 16-Dec-2015
28 Views
Preview:
TRANSCRIPT
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
1
APLIKASI PEMBELIAN BARANG VB.NET
Database Access, Crystal Report 8.5
Harga khusus untuk pembelajaran Rp. 100.000,-
Permintaan revisi dikenakan biaya sesuai tingkat kesulitan
Cara pembayaran melalui transfer ke salah satu rekening di bawah ini :
No Rek: 066 - 0525 - 947 (BCA an. Uus Rusmawan)
No Rek: 156 - 000 - 250 - 2146 (Mandiri an. Uus Rusmawan)
No Rek : 0139 - 0106 - 3038 - 504 (BRI an. Uus Rusmawan)
Program dikirim lewat email/Face Book (id : konsultasivb@ymail.com)
Peminat Hub Email : uusrusmawan71@gmail.com
3.1 Membuat Project Baru Tahapan pertama dalam pembuatan aplikasi pembelian barang ini adalah membuat project baru dengan
langkah sebagai berikut:
1. Buka visual studio 2008
2. Klik create project
Gambar 3.1 Memulai vb.net
Gambar 3.2 Membuat project baru
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
2
3.2 Memberi Nama Project
Gambar 3.3 Memberi nama project
Setelah membuat project baru dan menyimpannya di posisi tertentu, maka akan terbentuk folder project
secara otomatis yang di dalamnya terdapat folder ... >> BIN>> DEBUG. Folder inilah yang akan dijadikan
tempat menyimpan database.
3.3 Membuat Database Dan Tabel Langkah selanjutnya adalah membuat database yang pada umumnya dilakukan dengan cara sebagai berikut:
1. Buka database access 2003. Jika anda menginstal beberapa versi office, misalnya office 2003 dan office
2007, maka tampilan mungkin akan mengikuti versi office 2007
2. Buatlah sebuah database yang baru kemudian tulis nama database dan simpan di posisi DEBUG
project anda
3. Kemudian buatlah tabel barang dengan cara klik menu Create >> Table >> Klik kanan table1 >> Design
View dan tulis nama tabel
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
3
Gambar 3.4 Menyimpan tabel barang
4. Selanjutnya buatlah beberapa tabel dengan struktur berikut ini :
Gambar 3.5 Tabel barang
Dalam tabel barang, type data number hanya digunakan pada field harga (long integer) dan stok (integer)
Gambar 3.6 Tabel user
Pada tabel user semua field dibuat dengan menggunakan type text karena tidak ada satupun data yang akan
dibuat sebagai perhitungan matematika.
Gambar 3.7 Tabel supplier
Pada tabel supplier semua field dibuat dengan menggunakan type text karena tidak ada satupun data yang
akan dibuat sebagai perhitungan matematika. Hal ini sama seperti pada tabel user
Gambar 3.8 Tabel perusahaan
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
4
Pada tabel perusahaan semua field dibuat dengan menggunakan type text karena tidak ada satupun data
yang akan dibuat sebagai perhitungan matematika.
Gambar 3.9 Tabel pembelian
Catatan utama dalam pembuatan struktur tabel adalah jika data tidak akan digunakan dalam bentuk
hitungan, penjumlahan, pengurangan, perkalian dan sebagainya, maka gunakan type data text, sebaliknya
gunakan type data number.
Gambar 3.10 Tabel detail
3.4 Bentuk Relasi Tabel Bentuk relasi tabel dapat dilihat pada ilustrasi di bawah ini. Gambar ini diambil dari hasil relasi pada crystal
report.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
5
Gambar 3.11 Relasi tabel
3.5 Membuat Module Koneksi Database Tujuan utama membuat module ini adalah agar koneksi ke database cukup dibuat satu kali dan dapat
digunakan berkali-kali pada semua form dalam project yang bersangkutan dengan hanya menuliskan nama
fungsinya.
Gambar 3.12 Membuat module
Coding :
Imports System.Data.OleDb Imports CrystalDecisions.CrystalReports.Engine Imports CrystalDecisions.Shared
Module Module1
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
6
'mendefinisikan variabel untuk koneksi dan query Public Conn As OleDbConnection Public DA As OleDbDataAdapter Public DS As DataSet Public CMD As OleDbCommand Public DR As OleDbDataReader
'mendefinisikan variabel agar laporan dapat dipanggil dengan aman tanpa peduli posisi folder Public cryRpt As New ReportDocument Public crtableLogoninfos As New TableLogOnInfos Public crtableLogoninfo As New TableLogOnInfo Public crConnectionInfo As New ConnectionInfo Public CrTables As Tables
Public Sub seting_laporan() With crConnectionInfo .ServerName = (Application.StartupPath.ToString & "\database.mdb") .DatabaseName = (Application.StartupPath.ToString & "\database.mdb") .UserID = "" .Password = "" End With
CrTables = cryRpt.Database.Tables For Each CrTable In CrTables crtableLogoninfo = CrTable.LogOnInfo crtableLogoninfo.ConnectionInfo = crConnectionInfo CrTable.ApplyLogOnInfo(crtableLogoninfo) Next End Sub
Public Sub Koneksi() Try 'string koneksi untuk database access 2003 Conn = New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=database.mdb") Conn.Open() Catch ex As Exception MsgBox(ex.Message) End End Try End Sub End Module
jika penulisan coding anda mengalami error, maka anda harus tambahkan references dengan cara sebagai
berkut :
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
7
1. Klik menu project >> Pilih add reference
2. Pilih crystalldecisions.crystalreport.engine >> ok
3. Lakukan hal yang sama untuk crystalldecisions.share >> ok
Gambar 3.13 Menambah reference
3.6 Form Login Form login ini digunakan sebagai sarana keamanan data dalam aplikasi, artinya tidak semua orang dapat
menggunakan aplikasi tersebut.
Gambar 3.14 Form login
Logika program dalam form login adalah sebagai berikut :
1. Setelah mengisi nama user lalu menekan enter maka kursor pindah ke password
2. Setelah mengisi password lalu menekan enter maka kursor pindah ke button Login
3. Pada saat Login di klik maka cari nama user dan password di tabel user
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
8
4. Jika data tidak ditemukan maka munculkan pesan password salah
5. Jika data ditemukan, maka form login disembunyikan dan menu utama ditampilkan
6. Pada Menu utama panel1 tampilkan kode user, di panel2 tampilkan nama user, di panel3 tampilkan
status user
7. jika panel3 di menu utama statusnya USER atau OPERATOR, maka matikan menu user
Catatan :
Sebelumnya menu utama harus dibuat terlebih dahulu dengan menambahkan MenuStrip dan StatusStrip.
Pembahasan tentang hal dapat dilihat dalam video tutorial.
Coding
Imports System.Data.OleDb Imports System.Text
Public Class masterLogin
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress If e.KeyChar = Chr(13) Then TextBox2.Focus() End Sub
Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress If e.KeyChar = Chr(13) Then Button1.Focus() End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Call Koneksi() CMD = New OleDbCommand("select * from tbluser where nama_User= '" & TextBox1.Text & "' and pwd_user='" & TextBox2.Text & "'", Conn) DR = CMD.ExecuteReader DR.Read() If DR.HasRows Then If String.Compare(DR.Item("nama_User"), TextBox1.Text, False) Or String.Compare(DR.Item("pwd_user"), TextBox2.Text, False) Then MsgBox("Login Gagal") TextBox1.Clear() TextBox2.Clear() TextBox1.Focus() Exit Sub Else Me.Visible = False MasterMenu.Show() MasterMenu.Panel1.Text = DR.Item("Kode_user") MasterMenu.Panel2.Text = DR.Item("nama_User") MasterMenu.Panel3.Text = DR.Item("status_user") End If CMD = New OleDbCommand("select nama from tblperusahaan", Conn) DR = CMD.ExecuteReader DR.Read() MasterMenu.Label1.Text = DR.Item(0) Else MsgBox("Nama user dan password tidak cocok") TextBox1.Clear() TextBox2.Clear() TextBox1.Focus()
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
9
End If End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click End End Sub End Class
3.7 Form Menu Utama Form menu utama ini dugunakan sebagai sarana integrasi beberapa form lainnya dalam sebuah project agar
dapat dipanggil sesuai kebutuhan.
Gambar 3.15 Form menu utama
Coding di form menu utama :
Imports System.Data.OleDb
Public Class MasterMenu
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click MasterUser.Show() End Sub
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
10
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click MasterBarang.Show() End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click MasterSupplier.Show() End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click MasterPerusahaan.Show() End Sub
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click TransaksiPembelian.Show() End Sub
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click LaporanMaster.Show() End Sub
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click LaporanPembelian.Show() End Sub
Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click RincianPembelian.Show() End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click Panel1.Text = "" Panel2.Text = "" Panel3.Text = "" Me.Close() masterLogin.Show() masterLogin.TextBox1.Clear() masterLogin.TextBox2.Clear() masterLogin.TextBox1.Focus() End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click If MessageBox.Show("Tutup aplikasi...?", "", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then End End If End Sub End Class
3.8 Form User Logika dan proses program dalam form User adalah sebagai berikut :
1. kode user dibuat secara otomatis dengan pola USR01 dan seterusnya
2. Anda cukup mengetik nama user, password dan memilih statusnya
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
11
3. Pada saat button simpan di klik maka, program akan mencari kode tersebut ke dalam tabel user
4. Jika kodenya tidak ada maka data tersebut akan disimpan sebagai data baru (proses Insert)
5. Jika kode tersebut ada maka data tersebut akan diedit (proses update)
6. Proses edit dan hapus cukup dengan memilih data user dalam grid maka data akan masuk ke masing-
masing textbox atau combo, kemudian lakukan proses edit atau hapus sesuai kebutuhan.
Gambar 3.16 Form user
Dalam pembuatan sebuah form, sebaiknya menggunakan GroupBox agar mengatur posisi objek-objek di
dalamnya lebih mudah.
3.9 Form Barang Logika dan proses program dalam form barang adalah sebagai berikut :
1. Kode barang dibuat secara otomatis dengan pola B0001 dan seterusnya
2. Anda cukup mengetik nama barang, satuan dan seterusnya
3. Pada saat button simpan di klik maka, program akan mencari kode tersebut ke dalam tabel barang
4. Jika kodenya tidak ada maka data tersebut akan disimpan sebagai data baru (proses Insert)
5. Jika kode tersebut ada maka data tersebut akan diedit (proses update)
6. Proses edit dan hapus cukup dengan memilih data user dalam grid maka data akan masuk ke masing-
masing textbox atau combo, kemudian lakukan proses edit atau hapus sesuai kebutuhan.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
12
Gambar 3.17 Form Barang
3.10 Form Supplier Proses program dalam pengolahan data supplier sama dengan data user dan barang
Gambar 3.18 Form supplier
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
13
3.11 Form Profil Perusahaan Tujuan dibuatnya form perusahaan ini adalah agar header dalam laporan dapat secara dinamis berubah
sesuai dengan isi data dalam tabel tersebut.
Gambar 3.19 Form profil perusahaan
3.12 Transaksi Pembelian Logika dan proses program dalam transaksi pembelian adalah sebagai berikut :
1. Nomor pembelian tampil secara otomatis dengan pola F0001
2. Tanggal diambil dari sistem komputer
3. Supplier dipilih dari listbox di kanan atas
4. Kode barang dipilih dari listbox di kanan. Jika data barang sudah terlalu banyak maka silakan ketik
nama barang di kotak cari barang, maka data barang akan difilter
5. Jumlah barang diisi secara manual dan akan menghasilkan jumlah total di sebelah kanannya
6. Secara otomatis jumlah barang, grand total dan ppn tampil setelah mengisi jumlah barang dalam grid
7. Diskon dilakukan secara manual dalam bentuk jumlah nominal uang dan secara otomatis
mempengaruhi total harga
8. Pembayaran dilakukan secara manual dan menghasilkan jumlah kembali
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
14
Gambar 3.20 Form transaksi pembelian
Pesan ini muncul sesaat setelah melakukan klik pada button Simpan.
Gambar 3.21 Msgbox pencetakan faktur
Sesaat setelah klik pilihan YES, maka akan tampil faktur pembelian dengan bentuk seperti gambar di bawah
ini.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
15
Gambar 3.22 Bukti Pembelian
3.13 Laporan Master Tahapan pembuatan laporan dengan crystal report telah dibahas pada bab sebelumnya, untuk itu silakan
dipelajari kembali.
3.13.1 Laporan Data User Langkah langkah pembuatan laporan data user dpat anda lihat pada video tutorial dalam buku ini. Sebelum
memanggil laporan data user buatlah sebuah form yang terdiri dari empat buah button dan satu buah Crystal
Report Viewer. adapun bentuk laporan data user terlihat pada gambar di bawah ini.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
16
Gambar 3.23 Laporan data user
Cara memanggil laporan data user dilakukan dengan membuat coding berikut ini.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click cryRpt.Load("LAPORAN User.rpt") Call seting_laporan() CRV.ReportSource = cryRpt CRV.RefreshReport() End Sub
3.13.2 Laporan Data Barang Langkah langkah pembuatan laporan data barang dpat anda lihat pada video tutorial dalam buku ini.
Adapun bentuk laporan data barang terlihat pada gambar di bawah ini.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
17
Gambar 3.24 Laporan data barang
Untuk memaanggil laporan data barang diakukan dengan membuat coding berikut ini.
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click cryRpt.Load("LAPORAN BARANG.rpt") Call seting_laporan() CRV.ReportSource = cryRpt CRV.RefreshReport() End Sub
3.13.3 Laporan Data Supplier Langkah langkah pembuatan laporan data supplier dpat anda lihat pada video tutorial dalam buku ini.
Adapun bentuk laporan data supplier terlihat pada gambar di bawah ini.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
18
Gambar 3.25 Laporan data supplier
Adapun coding untuk memanggil laporan data supplier dilakukan dengan cara di bawah ini.
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click cryRpt.Load("LAPORAN Supplier.rpt") Call seting_laporan() CRV.ReportSource = cryRpt CRV.RefreshReport() End Sub
3.14 Laporan Pembelian Tahapan pembuatan laporan dimulai dengan mendesain bentuk-bentuk laporan yang diperlukan, silakan
gunakan Ms. Word atau Ms. Excel sebagai model awalnya atau bahkan dengan coretan tangan pada
lembaran kertas kosong, kemudian masing-masing laporan tersebut diprediksi tabel apa yang terlibat di
dalamnya. Setelah desain selesai dan prediksi tabel-tabel yang diperlukan diketahui, maka mulailah membuat
laporan dengan Crystal report.
3.14.1 Laporan Harian Sebelum memanggil laporan data pembelian, buatlah sebuah form seperti gambar di bawah ini.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
19
Gambar 3.26 Laporan harian
Private Sub LaporanPembelian_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call Koneksi() CMD = New OleDbCommand("select distinct tanggal from tblPembelian", Conn) DR = CMD.ExecuteReader Do While DR.Read ComboBox1.Items.Add(DR.Item(0)) ComboBox2.Items.Add(DR.Item(0)) ComboBox3.Items.Add(DR.Item(0)) ComboBox4.Items.Add(DR.Item(0)) ComboBox5.Items.Add(DR.Item(0)) Loop End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Formula untuk memanggil laporan harian
CRV.SelectionFormula = "totext({tblPembelian.TANGGAL}) ='" & ComboBox1.Text & "'" cryRpt.Load("laporan harian.rpt") Call seting_laporan() CRV.ReportSource = cryRpt CRV.RefreshReport() End Sub
3.14.2 Laporan Periodik Laporan periodik yang dimaksud disini adalah laporan yang dipilih mulai dari tanggal awal hingga tanggal
akhir.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
20
Gambar 3.27 Laporan mingguan
Coding yang digunakan untuk memanggil laporan periodik adalah sebagai berikut:
Private Sub ComboBox3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox3.SelectedIndexChanged If ComboBox2.Text = "" Then MsgBox("Tanggal awal harus diisi") Exit Sub End If
Formula untuk memanggil laporan mingguan (periodik)
CRV.SelectionFormula = "{tblPembelian.TANGGAL} in date ('" & ComboBox2.Text & "') to date ('" & ComboBox3.Text & "')" cryRpt.Load("laporan mingguan.rpt") Call seting_laporan() CRV.ReportSource = cryRpt CRV.RefreshReport() End Sub
3.14.3 Laporan Bulanan Bentuk laporan bulanan dapat anda lihat pada gambar di bawah ini.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
21
Gambar 3.28 Laporan Bulanan
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Formula untuk memanggil laporan bulanan
CRV.SelectionFormula = "month({tblPembelian.TANGGAL}) = (" & Month(DateTimePicker1.Text) & ") and year({tblPembelian.TANGGAL}) = (" & Year(DateTimePicker1.Text) & ")" cryRpt.Load("LAPORAN bulanan.rpt") Call seting_laporan() CRV.ReportSource = cryRpt CRV.RefreshReport() End Sub
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
22
Gambar 3.29 Laporan grafik
Laporan grafik dapat dikombinasikan dengan formula sesuai kebutuhan.
Private Sub ComboBox5_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox5.SelectedIndexChanged If ComboBox4.Text = "" Then MsgBox("Tanggal awal harus diisi") Exit Sub End If CRV.SelectionFormula = "{tblPembelian.TANGGAL} in date ('" & ComboBox4.Text & "') to date ('" & ComboBox5.Text & "')" cryRpt.Load("grafik.rpt") Call seting_laporan() CRV.ReportSource = cryRpt CRV.RefreshReport() End Sub
3.15 Jejak Transaksi Pembelian Pembuatan jejak transaksi pembelian diawali dengan membuat form dengan bentuk seperti gambar di
bawah ini.
-
www.konsultasivb.com Pusat Kursus VB.Net & Bimbingan Tugas Akhir
23
Gambar 3.30 Form jejak transaksi pembelian
top related