Sabtu, 14 Januari 2017

Program Aplikasi Inventory kampus dengan Visual Studio Connect To DataBase Ms Acces



Hy Sob...

Kali ini saya ingin berbagi ilmu mengenai pembuatan aplikasi pada software aplikasi Visual Studio. 
Project ini untuk memenuhi tugas UAS di STMIK ERESHA. Pembuatan database pada aplikasi tersebut, saya  menggunakan dengan Ms. Access.

Dibawah ini adalah perancangan database yang diberi nama Db_Inventory, dengan berisikan: Table_Login, Table_Peminjaman, Table_Pengadaan, dan Table_Barang.
 berikut SS dari datebase yang saya buat:



gambar: ss d_base Login



 Gambar: ss d_base Tabel_Pengadaan


Gambar: ss d_base Tabel_Peminjaman


Gambar: ss d_base Tabel_barang



Gambar: ss d_base isi Tabel_Barang

Berikut ini adalah Design dari menu – menu yang terdapat pada Aplikasi Iventory Kampus.

tampilan Form Log_in



 Tampilan Form Menu Utama



 Tampilan Form Pengadaan Barang



Tampilan Form Peminjaman Barang



 Tampilan About me



 Tampilan Form Info


Dan dibawah ini adalah Source Code dari tiap masing-masing Form

a. Form Log_in

Imports System.Data.OleDb

Public Class Form_log_in
    Private Sub jalankansql(ByVal sQl As String)
        Koneksi()
        Dim objcmd As New OleDb.OleDbCommand
        Try
            objcmd.Connection = conn
            objcmd.CommandType = CommandType.Text
            objcmd.CommandText = sQl
            objcmd.ExecuteNonQuery()
            objcmd.Dispose()
            MsgBox("Data Sudah Disimpan", vbInformation)
        Catch ex As Exception
            MsgBox("Tidak Bisa Menyimpan Data ke Database" & ex.Message)
        End Try
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If txtuser.Text = "" Or txtpass.Text = "" Then
            MsgBox("Data Login Belum Lengkap")
            Exit Sub
        Else
            Koneksi()
            CMD = New OleDbCommand("select * from table_Login where username='" & txtuser.Text & "' and password='" & txtpass.Text & "'", conn)
            RD = CMD.ExecuteReader
            RD.Read()
            If RD.HasRows Then
                Me.Hide()
                HalUtama.Show()
                txtuser.Text = ""
                txtpass.Text = ""
            Else
                MsgBox("Kode Admin atau Password Salah !")
            End If
        End If

    End Sub

    Private Sub Form_log_in_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        txtuser.Focus()
    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Dim x = MsgBox("Are You Sure?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "KONFIRMASI")
        If x = vbYes Then
            Me.Close()
            ' End
        End If
    End Sub
End Class

b. Form Halaman Utama


Public Class HalUtama

    Private Sub LogInToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles LogInToolStripMenuItem.Click
        Form_log_in.Show()
        Me.Close()
    End Sub

    Private Sub PeminjamanBarangToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PeminjamanBarangToolStripMenuItem.Click
        Dim Pinjam As New F_Peminjaman
        F_Peminjaman.MdiParent() = Me
        F_Peminjaman.Show()
        F_Pengadaan_barang.Close()
        Info.Close()
        About_me.Close()
    End Sub

    Private Sub PengadaanBarangToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PengadaanBarangToolStripMenuItem.Click
        Dim Pinjam As New F_Pengadaan_barang
        F_Pengadaan_barang.MdiParent() = Me
        F_Pengadaan_barang.Show()
        F_Peminjaman.Close()
        Info.Close()
        About_me.Close()
    End Sub

    Private Sub HelpToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles HelpToolStripMenuItem.Click
        Dim Pinjam As New About_me
        About_me.MdiParent() = Me
        About_me.Show()
        F_Pengadaan_barang.Close()
        Info.Close()
        F_Peminjaman.Close()
    End Sub

    Private Sub HelpToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles HelpToolStripMenuItem1.Click
        Dim Pinjam As New Info
        Info.MdiParent() = Me
        Info.Show()
        F_Pengadaan_barang.Close()
        F_Peminjaman.Close()
        About_me.Close()
    End Sub

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

    End Sub
End Class
c. Form Pengadaan Barang

 Imports System.Data.OleDb
Public Class F_Pengadaan_barang

    Sub Kosong()
        txtruang.Clear()
        txtkode.Clear()
        txtbarang.Clear()
        txtmerek.Clear()
        jumlahitem.Text = ""
        date1.Text = ""
        date2.Text = ""
        txtcari.Clear()

    End Sub

    Sub TampilData()
        DA = New OleDbDataAdapter("SELECT * FROM Table_Pengadaan", conn)
        DS = New DataSet
        DS.Clear()
        DA.Fill(DS, "Table_Pengadaan")
        data2.DataSource = DS.Tables("Table_Pengadaan")
        data2.Refresh()
    End Sub

    Sub AturGrid()
        data2.Columns(0).Width = 60
        data2.Columns(1).Width = 60
        data2.Columns(2).Width = 90
        data2.Columns(3).Width = 60
        data2.Columns(4).Width = 60
        data2.Columns(5).Width = 120
        data2.Columns(6).Width = 120

        data2.Columns(0).HeaderText = "RUANG"
        data2.Columns(1).HeaderText = "KODE BARANG"
        data2.Columns(2).HeaderText = "NAMA BARANG"
        data2.Columns(3).HeaderText = "MERK BARANG"
        data2.Columns(4).HeaderText = "JUMLAH BARANG"
        data2.Columns(5).HeaderText = "TGL PENGADAAN BARANG"
        data2.Columns(6).HeaderText = "TGL BARANG YG BARU DATANG"


    End Sub

    Sub TampilKode()
        Dim str As String
        str = "SELECT * FROM Table_Barang where Kode_barang='" & txtkode.Text & "'"
        CMD = New OleDbCommand(str, conn)
        RD = CMD.ExecuteReader
        RD.Read()
        If RD.HasRows Then
            txtbarang.Text = RD.Item("Nama_barang")
        Else
            MsgBox("KODE JENIS INI TIDAK TERDAFTAR")
        End If
    End Sub

    Private Sub btn_save_Click(sender As Object, e As EventArgs) Handles btn_save.Click
        If txtruang.Text = "" Or txtbarang.Text = "" Or txtkode.Text = "" Or txtmerek.Text = "" Or date1.Text = "" Or date2.Text = "" Or jumlahitem.Text = "" Then
            MsgBox("DATA BELUM LENGKAP!")
            txtkode.Focus()
            Exit Sub
        Else
            CMD = New OleDbCommand("SELECT * FROM Table_Pengadaan where Ruang='" & txtruang.Text & "'", conn)
            RD = CMD.ExecuteReader
            RD.Read()
            If Not RD.HasRows Then
                Dim Simpan As String = "INSERT INTO Table_Pengadaan (Ruang, Kode_Barang, Nama_Barang, merk, Jumlah, tgl_pengadaan, tgl_baru) values " & "('" & txtruang.Text & "','" & txtkode.Text & "','" & txtbarang.Text & "','" & txtmerek.Text & "','" & jumlahitem.Text & "','" & date1.Text & "','" & date2.Text & "')"
                CMD = New OleDbCommand(Simpan, conn)
                CMD.ExecuteNonQuery()
                MsgBox("SIMPAN DATA SUKSES", MsgBoxStyle.Information, "INFORMASI")
            End If
            Call TampilData()
            Call Kosong()
            txtkode.Focus()
        End If
    End Sub

    Private Sub F_Pengadaan_barang_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Call Koneksi()
        Call TampilData()
        Call Kosong()
        Call AturGrid()
    End Sub

    Private Sub data2_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles data2.CellContentClick
        Dim i As Integer
        i = Me.data2.CurrentRow.Index
        With data2.Rows.Item(i)
            Me.txtruang.Text = .Cells(0).Value
            Me.txtkode.Text = .Cells(1).Value
            Me.txtbarang.Text = .Cells(2).Value
            Me.txtmerek.Text = .Cells(3).Value
            Me.jumlahitem.Text = .Cells(4).Value
            Me.date1.Text = .Cells(5).Value
            Me.date2.Text = .Cells(6).Value
        End With
    End Sub

    Private Sub btn_reset_Click(sender As Object, e As EventArgs) Handles btn_reset.Click
        Call Kosong()

    End Sub

    Private Sub btn_edit_Click(sender As Object, e As EventArgs) Handles btn_edit.Click
        If txtkode.Text = "" Then
            MsgBox("KODE PEMINJAMAN BELUM DIISI")
            txtkode.Focus()
            Exit Sub
        Else
            Dim Ubah As String = "UPDATE Table_Pengadaan set " & "Ruang='" & txtruang.Text & "'," & "Nama_barang='" & txtbarang.Text & "'," & "Merk='" & txtmerek.Text & "'," & "Jumlah='" & jumlahitem.Text & "'," & "tgl_pengadaan='" & date1.Text & "'," & "tgl_baru='" & date2.Text & "'" & "where Kode_barang='" & txtkode.Text & "'"
            CMD = New OleDbCommand(Ubah, conn)
            CMD.ExecuteNonQuery()
            MsgBox("UBAH DATA SUKSES", MsgBoxStyle.Information, "INFORMASI")
            Call TampilData()
            Call Kosong()
            txtkode.Focus()
        End If
    End Sub

    Private Sub btn_delete_Click(sender As Object, e As EventArgs) Handles btn_delete.Click
        If txtruang.Text = "" Then
            MsgBox("KODE BUKU BELUM DIISI")
            txtruang.Focus()
            Exit Sub
        Else
            If MessageBox.Show("YAKIN INGIN MENGHAPUS DATA PEMINJAMAN " & txtkode.Text & " ?", "", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
                CMD = New OleDbCommand("DELETE * FROM Table_Pengadaan where Ruang='" & txtruang.Text & "'", conn)
                CMD.ExecuteNonQuery()
                Call Kosong()
                Call TampilData()
            Else
                Call Kosong()
            End If
        End If
    End Sub

    Private Sub txtkode_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txtkode.KeyPress
        If e.KeyChar = Chr(13) Then
            Call TampilKode()
        End If
    End Sub

    Private Sub txtcari_TextChanged(sender As Object, e As EventArgs) Handles txtcari.TextChanged
        CMD = New OleDbCommand("SELECT * FROM Table_Pengadaan where Kode_barang like '%" & txtcari.Text & "%'", conn)
        RD = CMD.ExecuteReader
        RD.Read()
        If RD.HasRows Then
            DA = New OleDbDataAdapter("SELECT * FROM Table_Pengadaan where Kode_barang like '%" & txtcari.Text & "%'", conn)
            DS = New DataSet
            DA.Fill(DS, "DAPAT")
            data2.DataSource = DS.Tables("DAPAT")
            data2.ReadOnly = True
        Else
            MsgBox("DATA TIDAK DITEMUKAN")
        End If
    End Sub
End Class


 d. Form Peminjaman Barang

 Imports System.Data.OleDb
Public Class F_Peminjaman

    Sub Kosong()
        kdpinjam.Clear()
        nama.Clear()
        kdbarang.Clear()
        cmb1.Text = ""
        cmb2.Text = ""
        pj.Clear()
        numb1.Text = ""

    End Sub

    Sub TampilData()
        DA = New OleDbDataAdapter("SELECT * FROM Table_Peminjaman", conn)
        DS = New DataSet
        DS.Clear()
        DA.Fill(DS, "Table_Peminjaman")
        data1.DataSource = DS.Tables("Table_Peminjaman")
        data1.Refresh()
    End Sub

    Sub AturGrid()
        data1.Columns(0).Width = 70
        data1.Columns(1).Width = 70
        data1.Columns(2).Width = 50
        data1.Columns(3).Width = 70
        data1.Columns(4).Width = 70
        data1.Columns(5).Width = 70
        data1.Columns(6).Width = 120
        data1.Columns(7).Width = 130
        data1.Columns(8).Width = 90

        data1.Columns(0).HeaderText = "KODE PINJAMAN"
        data1.Columns(1).HeaderText = "NAMA PEMINJAM"
        data1.Columns(2).HeaderText = "KODE BARANG"
        data1.Columns(3).HeaderText = "BARANG YG DIPINJAM"
        data1.Columns(4).HeaderText = "JUMLAH BARANG"
        data1.Columns(5).HeaderText = "KEPERLUAN"
        data1.Columns(6).HeaderText = "TGL PINJAM"
        data1.Columns(7).HeaderText = "TGL KEMBALI"
        data1.Columns(8).HeaderText = "PENANGGUNG JAWAB"

    End Sub

    Sub TampilKode()
        Dim str As String
        str = "SELECT * FROM Table_Barang where Kode_barang='" & kdbarang.Text & "'"
        CMD = New OleDbCommand(str, conn)
        RD = CMD.ExecuteReader
        RD.Read()
        If RD.HasRows Then
            cmb1.Text = RD.Item("Nama_barang")
        Else
            MsgBox("KODE JENIS INI TIDAK TERDAFTAR")
        End If
    End Sub

    Private Sub btn_save_Click(sender As Object, e As EventArgs) Handles btn_save.Click
        If kdpinjam.Text = "" Or nama.Text = "" Or kdbarang.Text = "" Or cmb1.Text = "" Or numb1.Text = "" Or cmb2.Text = "" Or date1.Text = "" Or date2.Text = "" Or pj.Text = "" Then
            MsgBox("DATA BELUM LENGKAP!")
            kdpinjam.Focus()
            Exit Sub
        Else
            CMD = New OleDbCommand("SELECT * FROM Table_Peminjaman where Kode_Pinjaman='" & kdpinjam.Text & "'", conn)
            RD = CMD.ExecuteReader
            RD.Read()
            If Not RD.HasRows Then
                Dim Simpan As String = "INSERT INTO Table_peminjaman (kode_Pinjaman, Nama, Kode_Barang, Nama_Barang, Jumlah, Keperluan, Tgl_Pinjaman, Tgl_Pengembalian, PJ) values " & "('" & kdpinjam.Text & "','" & nama.Text & "','" & kdbarang.Text & "','" & cmb1.Text & "','" & numb1.Text & "','" & cmb2.Text & "','" & date1.Text & "','" & date2.Text & "','" & pj.Text & "')"
                CMD = New OleDbCommand(Simpan, conn)
                CMD.ExecuteNonQuery()
                MsgBox("SIMPAN DATA SUKSES", MsgBoxStyle.Information, "INFORMASI")
            End If
            Call TampilData()
            Call Kosong()
            kdpinjam.Focus()
        End If
    End Sub

    Private Sub F_Peminjaman_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Call Koneksi()
        Call TampilData()
        Call Kosong()
        Call AturGrid()
    End Sub

    Private Sub data1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles data1.CellContentClick
        Dim i As Integer
        i = Me.data1.CurrentRow.Index
        With data1.Rows.Item(i)
            Me.kdpinjam.Text = .Cells(0).Value
            Me.nama.Text = .Cells(1).Value
            Me.kdbarang.Text = .Cells(2).Value
            Me.cmb1.Text = .Cells(3).Value
            Me.numb1.Text = .Cells(4).Value
            Me.cmb2.Text = .Cells(5).Value
            Me.date1.Text = .Cells(6).Value
            Me.date2.Text = .Cells(7).Value
            Me.pj.Text = .Cells(8).Value
        End With
    End Sub

    Private Sub btn_reset_Click(sender As Object, e As EventArgs) Handles btn_reset.Click
        Call Kosong()
    End Sub

    Private Sub btn_edit_Click(sender As Object, e As EventArgs) Handles btn_edit.Click
        If kdpinjam.Text = "" Then
            MsgBox("KODE PEMINJAMAN BELUM DIISI")
            kdpinjam.Focus()
            Exit Sub
        Else
            Dim Ubah As String = "UPDATE Table_Peminjaman set " & "Nama='" & nama.Text & "'," & "Kode_barang='" & kdbarang.Text & "'," & "Nama_barang='" & cmb1.Text & "'," & "Jumlah='" & numb1.Text & "'," & "Keperluan='" & cmb2.Text & "'," & "Tgl_pinjaman='" & date1.Text & "'," & "Tgl_pengembalian='" & date2.Text & "'," & "PJ='" & pj.Text & "'" & "where Kode_Pinjaman='" & kdpinjam.Text & "'"
            CMD = New OleDbCommand(Ubah, conn)
            CMD.ExecuteNonQuery()
            MsgBox("UBAH DATA SUKSES", MsgBoxStyle.Information, "INFORMASI")
            Call TampilData()
            Call Kosong()
            kdpinjam.Focus()
        End If
    End Sub

    Private Sub btn_delete_Click(sender As Object, e As EventArgs) Handles btn_delete.Click
        If kdpinjam.Text = "" Then
            MsgBox("KODE BUKU BELUM DIISI")
            kdpinjam.Focus()
            Exit Sub
        Else
            If MessageBox.Show("YAKIN INGIN MENGHAPUS DATA PEMINJAMAN " & kdpinjam.Text & " ?", "", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
                CMD = New OleDbCommand("DELETE * FROM Table_Peminjaman where Kode_Pinjaman='" & kdpinjam.Text & "'", conn)
                CMD.ExecuteNonQuery()
                Call Kosong()
                Call TampilData()
            Else
                Call Kosong()
            End If
        End If
    End Sub

    Private Sub kdbarang_KeyPress(sender As Object, e As KeyPressEventArgs) Handles kdbarang.KeyPress
        If e.KeyChar = Chr(13) Then
            Call TampilKode()
        End If
    End Sub

    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles txtcari.TextChanged
        CMD = New OleDbCommand("SELECT * FROM Table_Peminjaman where Kode_Pinjaman like '%" & txtcari.Text & "%'", conn)
        RD = CMD.ExecuteReader
        RD.Read()
        If RD.HasRows Then
            DA = New OleDbDataAdapter("SELECT * FROM Table_Peminjaman where Kode_Pinjaman like '%" & txtcari.Text & "%'", conn)
            DS = New DataSet
            DA.Fill(DS, "DAPAT")
            data1.DataSource = DS.Tables("DAPAT")
            data1.ReadOnly = True
        Else
            MsgBox("DATA TIDAK DITEMUKAN")
        End If
    End Sub

End Class




Dan ini Hasil dari Running Program aplikasi Inventory Barang
















Tidak ada komentar:

Posting Komentar