aplikasi-pembelian-barang.pdf

23
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 : [email protected]) Peminat Hub Email : [email protected] 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

Upload: uusrusmawan

Post on 16-Dec-2015

28 views

Category:

Documents


0 download

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 : [email protected])

    Peminat Hub Email : [email protected]

    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