Membuat Aplikasi Sistem Informasi Pendataan Inventaris Barang

form untuk ruangan

form untuk barang
Selamat sore sobat-sobat, sebelumnya jika sobat berminat untuk keseluruhan program mulai dari projeck vb + database + laporan kami bisa menyediakan silahkan hub admin di : 085277672185, saya sangat senang bisa membantu anda, yah kali ini saya akan mempostingkan bagaimana cara membuat
Sistem Informasi Pendataan Inventaris Barang menggunakan vb 2008 , screen sort gambar diatas adalah form master ya, dan dibawah ini adalah form untuk proses beserta coding ya


dibawah ini adalah coding ya :

Imports MySql.Data.MySqlClient
Public Class FormInventaris

    Private Sub FormInventaris_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Call opendb()
        Call IsiComboBarang()
        Call IsiComboRuangan()
        Call BuatTabel()
        bersih()
        Status.Items.Add("Barang Habis Pakai")
        Status.Items.Add("Barang Tidak Habis Pakai")
    End Sub

    Sub bersih()
        bersihform(Me)
        formIsian(False, False, False)
        LV.Items.Clear()
    End Sub

    Sub bersihbarang()
        KodeBarang.Text = ""
        NamaBarang.Text = ""
        Merek.Text = ""
        Bahan.Text = ""
        Jumlah.Text = ""
        Status.Text = ""
    End Sub

    Sub formIsian(ByVal a As Boolean, ByVal b As Boolean, ByVal c As Boolean)
        No_Inventaris.Enabled = a
        Tanggal.Enabled = b
        KodeRuangan.Enabled = b
        NamaRuangan.Enabled = b
        KodeBarang.Enabled = b
        NamaBarang.Enabled = b
        Merek.Enabled = c
        Bahan.Enabled = c
        Jumlah.Enabled = b
        Status.Enabled = b
    End Sub

    Sub BuatTabel()
        With LV.Columns
            .Add("Kode Barang", 80, HorizontalAlignment.Left)
            .Add("Nama Barang", 120, HorizontalAlignment.Left)
            .Add("Merek Barang", 80, HorizontalAlignment.Left)
            .Add("Bahan Barang", 120, HorizontalAlignment.Left)
            .Add("Jumlah", 120, HorizontalAlignment.Left)
            .Add("Status", 120, HorizontalAlignment.Left)
        End With
        LV.GridLines = True
        LV.FullRowSelect = True
        LV.View = View.Details
    End Sub

    Sub isitabel()
        Dim lst As New ListViewItem
        With lst
            .Text = KodeBarang.Text
            .SubItems.Add(NamaBarang.Text)
            .SubItems.Add(Merek.Text)
            .SubItems.Add(Bahan.Text)
            .SubItems.Add(Jumlah.Text)
            .SubItems.Add(Status.Text)
        End With
        LV.Items.Add(lst)
    End Sub

    Sub validasitombol(ByVal T1 As Boolean, ByVal T2 As Boolean, ByVal T3 As Boolean, ByVal T4 As Boolean, ByVal T5 As Boolean)
        baru.Enabled = T1
        simpan.Enabled = T2
        hapus.Enabled = T3
        batal.Enabled = T4
        keluar.Enabled = T5
    End Sub

    Sub IsiComboBarang()
        sql = "Select *from barang"
        cmd = New MySqlCommand(sql, db)
        rs = cmd.ExecuteReader
        While rs.Read()
            KodeBarang.Items.Add(rs!Kode_Brg)
            NamaBarang.Items.Add(rs!Nama_Brg)
        End While
        rs.Close()
    End Sub

    Sub IsiComboRuangan()
        sql = "Select *from ruangan"
        cmd = New MySqlCommand(sql, db)
        rs = cmd.ExecuteReader
        While rs.Read()
            KodeRuangan.Items.Add(rs!Kode_Ruangan)
            NamaRuangan.Items.Add(rs!Nama_Ruangan)
        End While
        rs.Close()
    End Sub

    Function Cek() As Boolean
        Cek = False
        For i = 0 To LV.Items.Count - 1
            If KodeBarang.Text = LV.Items(i).Text Then
                Cek = True
                Exit Function
            End If
        Next i
    End Function

    Sub Simpandb()
        Dim xjumlah As Long
        Dim xtgl, xstatus As String
        xtgl = Format(Tanggal.Value, "yyyy-MM-dd")
        xjumlah = 0
        For i = 0 To LV.Items.Count - 1
            'Dim xs As String
            'sql3 = "Select * from barang where Kode_Brg='" & LV.Items(i).Text & "'"
            'cmd3 = New MySqlCommand(sql3, db)
            'rs3 = cmd3.ExecuteReader
            'rs3.Read()
            'xs = Val(rs3!Jumlah)
            'rs3.Close()

            xjumlah = Val(LV.Items(i).SubItems(4).Text)
            xstatus = Val(LV.Items(i).SubItems(5).Text)
            sql = "insert into inventaris(NoInventaris,Tanggal,Kode_Ruangan,Kode_Brg,Jumlah,Status)values('" & No_Inventaris.Text & _
            "','" & xtgl & _
            "','" & KodeRuangan.Text & _
            "','" & LV.Items(i).Text & _
            "','" & xjumlah & _
            "','" & xstatus & "')"
            'sql2 = "Update barang set Jumlah='" & xs & "' - '" & xjumlah & "' where KodeBarang='" & LV.Items(i).Text & "'"
            Try
                cmd = New MySqlCommand(sql, db)
                cmd.ExecuteNonQuery()
                'cmd2 = New MySqlCommand(sql2, db)
                'cmd2.ExecuteNonQuery()
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try

        Next i
    End Sub

    Dim p As String = ""

    'Sub Editdb()
    '    Dim xjumlah As Long
    '    Dim xtgl As String
    '    xtgl = Format(Tanggal.Value, "yyyy-MM-dd")
    '    xjumlah = 0
    '    For i = 0 To LV.Items.Count - 1

    '        Dim x As String
    '        sql3 = "Select Jumlah from inventarisbarang where KodeBarang='" & LV.Items(i).Text & "'"
    '        cmd3 = New MySqlCommand(sql3, db)
    '        rs3 = cmd3.ExecuteReader
    '        rs3.Read()
    '        x = rs3!Jumlah
    '        rs3.Close()

    '        Dim xs As String
    '        sql3 = "Select Jumlah from barang where KodeBarang='" & LV.Items(i).Text & "'"
    '        cmd3 = New MySqlCommand(sql3, db)
    '        rs3 = cmd3.ExecuteReader
    '        rs3.Read()
    '        xs = Val(rs3!Jumlah)
    '        rs3.Close()

    '        If x < xjumlah Then
    '            p = xjumlah - Val(x)
    '            sql = "Update barang set Jumlah='" & xs & "' + '" & p & "' where KodeBarang='" & LV.Items(i).Text & "'"
    '        ElseIf x > xjumlah Then
    '            p = xjumlah - Val(x)
    '            sql = "Update barang set Jumlah='" & xs & "' - '" & p & "' where KodeBarang='" & LV.Items(i).Text & "'"
    '        End If

    '        'xjumlah = Val(LV.Items(i).SubItems(4).Text)
    '        'sql2 = "Update inventarisbarang set Tanggal='" & xtgl & _
    '        '        "',KodeRuangan='" & KodeRuangan.Text & _
    '        '        "',KodeBarang='" & LV.Items(i).Text & _
    '        '        "',Jumlah='" & xjumlah & _
    '        '        "' Where NoInventaris='" & NoInventaris.Text & "'"

    '        Try
    '            cmd = New MySqlCommand(sql, db)
    '            cmd.ExecuteNonQuery()
    '            'cmd2 = New MySqlCommand(sql2, db)
    '            'cmd2.ExecuteNonQuery()
    '        Catch ex As Exception
    '            MsgBox(ex.Message)
    '        End Try

    '    Next i
    '    HapusDB()
    '    Simpandb()
    'End Sub

    Sub TambahKode()
        On Error Resume Next
        sql = "Select NoInventaris from inventaris order by NoInventaris desc limit 1"
        cmd = New MySqlCommand(sql, db)
        rs = cmd.ExecuteReader
        rs.Read()
        'kode.Text=rs!kode_costumer   ==>untuk memanggil kode

        Dim kodebaru As Integer
        kodebaru = 0
        kodebaru = Microsoft.VisualBasic.Right(rs!NoInventaris, 4)
        No_Inventaris.Text = "INV-" & Microsoft.VisualBasic.Right("000" & Val(kodebaru) + 1, 4)
        rs.Close()
        No_Inventaris.Focus()
    End Sub

    Private Sub Baru_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles baru.Click
        formIsian(True, False, False)
        TambahKode()
        No_Inventaris.Focus()
    End Sub

    Sub HapusDB()
        'Dim xs As String
        'sql = "Select * from barang"
        'cmd = New MySqlCommand(sql, db)
        'rs = cmd.ExecuteReader
        'rs.Read()
        'xs = Val(rs!Jumlah)
        'rs.Close()

        Dim xjumlah As Long
        Dim xtgl As String
        xtgl = Format(Tanggal.Value, "yyyy-MM-dd")
        xjumlah = 0
        For i = 0 To LV.Items.Count - 1
            xjumlah = Val(LV.Items(i).SubItems(4).Text)

            sql = "delete from inventaris where NoInventaris='" & No_Inventaris.Text & "'"

            'sql2 = "Update barang set Jumlah='" & xs & "' - '" & xjumlah & "' where KodeBarang='" & LV.Items(i).Text & "'"

            cmd = New MySqlCommand(sql, db)
            cmd.ExecuteNonQuery()
        Next i
        bersih()
        bersihbarang()
        bersihform(Me)
    End Sub

    Private Sub Simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles simpan.Click
        If simpan.Text = "Simpan" Then
            Simpandb()
        Else
            HapusDB()
            Simpandb()
        End If
        bersih()
        MsgBox("Proses Berhasil")
    End Sub

    Private Sub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
        Dim x As String
        x = MsgBox("Anda yakin akan dihapus", MsgBoxStyle.Information + MsgBoxStyle.YesNo, "hapus")
        If x = vbYes Then
            HapusDB()
        End If
    End Sub

    Private Sub Batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles batal.Click
        bersih()
    End Sub

    Private Sub Keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
        Me.Close()
    End Sub

    Private Sub KodeRuangan_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KodeRuangan.SelectedIndexChanged
        Dim xnama As String = ""
        sql = "Select *from ruangan where Kode_Ruangan='" & KodeRuangan.Text & "'"
        cmd = New MySqlCommand(sql, db)
        rs = cmd.ExecuteReader
        Try
            rs.Read()
            xnama = rs!Nama_Ruangan
        Catch ex As Exception
            'MsgBox(ex.Message)
        End Try
        rs.Close()
        NamaRuangan.Text = xnama
    End Sub

    Private Sub Ruangan_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NamaRuangan.SelectedIndexChanged
        Dim xkode As String = ""
        sql = "Select *from ruangan where Nama_Ruangan='" & NamaBarang.Text & "'"
        cmd = New MySqlCommand(sql, db)
        rs = cmd.ExecuteReader
        Try
            rs.Read()
            xkode = rs!Kode_Ruangan
        Catch ex As Exception
            'MsgBox(ex.Message)
        End Try
        rs.Close()
        KodeRuangan.Text = xkode
    End Sub

    Private Sub NamaBarang_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NamaBarang.SelectedIndexChanged
        Dim xnama As String = ""
        sql = "Select *from barang where Nama_Brg='" & NamaBarang.Text & "'"
        cmd = New MySqlCommand(sql, db)
        rs = cmd.ExecuteReader
        Try
            rs.Read()
            xnama = rs!Nama_Brg
            Merek.Text = rs!Merk
            Bahan.Text = rs!Bahan
        Catch ex As Exception
            'MsgBox(ex.Message)
        End Try
        rs.Close()
        NamaBarang.Text = xnama
    End Sub

    Private Sub KodeBarang_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KodeBarang.SelectedIndexChanged
        Dim xnama As String = ""
        sql = "Select *from barang where Kode_Brg='" & KodeBarang.Text & "'"
        cmd = New MySqlCommand(sql, db)
        rs = cmd.ExecuteReader
        Try
            rs.Read()
            xnama = rs!Nama_Brg
            Merek.Text = rs!Merk
            Bahan.Text = rs!Bahan
        Catch ex As Exception
            'MsgBox(ex.Message)
        End Try
        rs.Close()
        NamaBarang.Text = xnama
    End Sub

    Private Sub NoInventaris_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles No_Inventaris.KeyPress
        Dim xkoderuangan As String = ""
        Dim xnamaruangan As String = ""
        If Asc(e.KeyChar) = 13 Then
            If No_Inventaris.Text = "" Then
                MsgBox("isi kode textboxt terlebih dahulu!", MsgBoxStyle.Information, "galat")
            Else
                sql = "SELECT a.NoInventaris,a.Tanggal,a.Kode_Ruangan,b.Nama_Ruangan,a.Kode_Brg,c.Nama_Brg,c.Merk,c.Bahan,a.Jumlah,a.Status " & _
                    "FROM inventaris as a Inner Join barang as c ON a.Kode_Brg= c.Kode_Brg " & _
                    "Inner Join ruangan as b ON a.Kode_Ruangan = b.Kode_Ruangan and NoInventaris='" & No_Inventaris.Text & "'"
                cmd = New MySqlCommand(sql, db)
                rs = cmd.ExecuteReader
                Try
                    While rs.Read()
                        Dim lst As New ListViewItem
                        With lst
                            .Text = rs!Kode_Brg
                            .SubItems.Add(rs!Nama_Brg)
                            .SubItems.Add(rs!Merk)
                            .SubItems.Add(rs!Bahan)
                            .SubItems.Add(rs!Jumlah)
                            .SubItems.Add(rs!Status)
                        End With
                        LV.Items.Add(lst)
                    End While
                    Tanggal.Text = rs!Tanggal
                    xkoderuangan = rs!Kode_Ruangan
                    xnamaruangan = rs!Nama_Ruangan
                    simpan.Text = "Edit"
                Catch ex As Exception
                    Dim f As String
                    f = No_Inventaris.Text
                    bersih()
                    No_Inventaris.Text = f
                    simpan.Text = "Simpan"
                    'MsgBox(ex.Message)
                End Try
                rs.Close()
                KodeRuangan.Text = xkoderuangan
                NamaRuangan.Text = xnamaruangan
                formIsian(False, True, False)
                KodeRuangan.Focus()
            End If
        End If
    End Sub

    Private Sub Jumlah_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Jumlah.KeyPress
        If Asc(e.KeyChar) = 13 Then
            If Not Cek() Then
                isitabel()
                bersihbarang()
            Else
                MsgBox("List telah direcord sebelumnya")
            End If
            rs.Close()
            KodeBarang.Focus()
            bersihbarang()
            No_Inventaris.Enabled = False
            KodeRuangan.Enabled = False
            NamaRuangan.Enabled = False
        End If
    End Sub

    Private Sub LV_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles LV.DoubleClick
        KodeBarang.Text = LV.SelectedItems(0).SubItems(0).Text
        NamaBarang.Text = LV.SelectedItems(0).SubItems(1).Text
        Merek.Text = LV.SelectedItems(0).SubItems(2).Text
        Bahan.Text = LV.SelectedItems(0).SubItems(3).Text
        Jumlah.Text = LV.SelectedItems(0).SubItems(4).Text
        LV.Items.Remove(LV.SelectedItems(0))
    End Sub

End Class

Previous
Next Post »
Thanks for your comment