CARA MEMBUAT FUNGSI CRUD DENGAN APLIKASI MONITORING PERANGKAT REPAIR EKSTERNAL



Salam sejahtera untuk semuanya disini saya akan menjelaskan bagaimana membuat sebuah fungsi CRUD dengan menggunakan visual studio yang terkoneksi database dengan Microsoft Access.

Langsung saja langkah pertama yang dilakukan membuat tampilan untuk design utamanya seperti gambar dberikut :


Apa saja yang digunakan disini saya menggunakan MenuStrip, dan kita lanjut membuat Form-form berikutnya agar bisa berjalan dengan baik aplikasi ini.

Langkah berikutnya disini saya membuat form Login agar untuk masuk ke aplikasi ini tidak sembarang orang bisa masuk dan berikut gambarnya :



Disini saya hanya menggunakan TextBox, Lebel, Dan Button.

Selanjutnya adalah membuat Form untuk menginput akses Login berikut contoh yang saya buat :



Seperti biasa saya disini saya menggunakan TextBox, Lebel, Button dan DataGridView.


Langkah berikutnya membuat Form untuk mengisi data dan berikut gambarnya.



Tools yang saya gunakan disini adalah TextBox, Lebel, Button, DataGridView dan DateTimePicker.

Langkah Berikutnya saya membuat form untuk Mengecek data seperti berikut contohnya :



Dan disini saya menggunkan tools TextBox, Lebel, DataGridView dan DateTimePicker.

Form terakhir yang saya buat adalah Form About dimana disini berfungsi untuk mengetahui tentang aplikasi ini dibuat, Dan beriikut sebagai contohnya :


Disini saya hanya menggunakan PictureBox, Label dan Button.

Dan langkah selanjutnya adalah membuat Databasenya, disini saya hanya menggunakan Microsoft Access. Dalam satu Database saya membuat 2 tabel, yang satu saya gunakan untuk menyimpan data Login dan satunya lagi saya buat untuk menyimpan data perangkat atau informasi yang disimpan dan berikut contoh gambarnya :






Setelah berhasil dibuat langkah berikutnya adalah mengkoneksikan antara program yang kita buat dengan Databasenya dan berikut capture codingan untuk mengkoneksikan ke Database :


Sesuaikan nama Dbku.accdb dengan nama Database yang anda buat nama tidak harus seperti itu bebas ingin menggunakan nama apa.

Langkah selanjutnya saya membuat codingan di Form Menu Utama agar saat program dirun ketika mengklik di menu-menu yang kita inginkan akan keluar sesuai apa yang kita inginkan dan berikut contoh capture codingannya :





Dari Codingan seperti contoh adalah setiap kita Mengklik pada menu yang kita inginkan maka akan langsung menjalankan program sesuai yang telah kita buat.


Dan satu lagi yang jangan ketinggalan yaitu membuat codingan pada form login seperti berikut :






Fungsi dari codingan diatas adalah untuk kemungkinan-kamungkinan yang akan dialami dalam proses Login ketika ingin masuk ke aplikasinya.
Dan langkah selanjutnya adalah membuat codingan untuk form Input Login seperti berikut :






Dan Langkah selanjutnya adalah membuat Codingan untuk Form Input Data dengan contoh berikut :







Dan Langkah Selanjutnya adalah membuat Coding pada Form Cek Data Seperti contoh berikut ini :






Setelah selesai lakukan kembali buat codingan pada Form About seperti berikut :


Setelah Semua codingan dibuat langkah selanjutnya Run program, Dan berikut Hasil program ketika dijalankan :

Langkah pertama adalah mengisi form untuk Login sesuai yang telah didaftarkan


Lalu masuk pada Menu Utama disini kita bisa memilih ingin menginput data atau mengecek/monitoring barang-barang.



Dan disini masuk pada tahap input data kita mengsikan data sesuai dengan Kertas Tanda terima barang.



Data berhasil di save maka langsung muncul pada Tabel yang dibawah jika kita ingin mengubah kita hanya perlu mengklik pada No registrasi dan dapa



Dan kita masuk pada menu Cek data



Disini kita bisa search data berdasarkan no registrasi perangkatnya







Dan berikut Codingan untuk keseluruhannya :

Codingan untuk Koneksi :

Imports System.Data.OleDb
Module ModKoneksi
    Public conn As OleDbConnection
    Public cmd As OleDbCommand
    Public da As OleDbDataAdapter
    Public dr As OleDbDataReader
    Public ds As DataSet
    Sub Koneksi()
        conn = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "/DBku.accdb")
        conn.Open()
    End Sub

End Module

Codingan untuk FormMenuUtama


Public Class FormMenuUtama



    Private Sub ToolStripMenuItem5_Click(sender As Object, e As EventArgs) Handles SubMenuLogin.Click

        Dim f_MenuLogin As New FormInputLogin
        f_MenuLogin.ShowDialog()
    End Sub

    Private Sub SubMenuData_Click(sender As Object, e As EventArgs) Handles SubMenuData.Click

        Dim f_MenuInputData As New FormInputData
        f_MenuInputData.ShowDialog()
    End Sub

    Private Sub SubMenuCekData_Click(sender As Object, e As EventArgs) Handles SubMenuCekData.Click

        Dim f_menuCekData As New FormCekData
        f_menuCekData.ShowDialog()
    End Sub

    Private Sub MenuAbout_Click(sender As Object, e As EventArgs) Handles MenuAbout.Click

        Dim f_about As New FormAbout
        f_about.ShowDialog()
    End Sub

    Private Sub SubMenuKeluar_Click(sender As Object, e As EventArgs) Handles SubMenuKeluar.Click

        Dim keluar As String
        keluar = MessageBox.Show("Yakin Mau Menutup Aplikasi ?", "Informasi", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
        If keluar = Windows.Forms.DialogResult.Yes Then
            Application.Exit()
        End If
    End Sub

End Class


Codingan untuk FormLogin


Public Class FormLogin


    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load

        TxtKodeUser.Focus()
    End Sub

    Private Sub TxtKodeUser_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TxtKodeUser.KeyPress

        If e.KeyChar = Chr(13) Then
            Call Koneksi()
            cmd = New OleDbCommand("SELECT * FROM LOGIN WHERE KODE_USER='" & TxtKodeUser.Text & "'", conn)
            dr = cmd.ExecuteReader
            dr.Read()
            If dr.HasRows Then
                TxtKodeUser.Enabled = False


                TxtPassword.Focus()

            Else
                MessageBox.Show("NAMA USER tidak ditemukan di database", "Informasi", MessageBoxButtons.OK, MessageBoxIcon.Information)
                TxtKodeUser.Clear()
                TxtKodeUser.Focus()
            End If
        End If
    End Sub

    Private Sub TxtPassword_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TxtPassword.KeyPress

        If e.KeyChar = Chr(13) Then
            BtnLogin.Focus()
        End If
    End Sub

    Private Sub BtnLogin_Click(sender As Object, e As EventArgs) Handles BtnLogin.Click

        If TxtPassword.Text = "" And TxtKodeUser.Text = "" Then
            MessageBox.Show("Nama User dan Password harus diisi", "Konfirmasi", MessageBoxButtons.OK, MessageBoxIcon.Question)
            TxtKodeUser.Focus()
        ElseIf TxtPassword.Text = "" Then
            MessageBox.Show("Password harus diisi", "Konfirmasi", MessageBoxButtons.OK, MessageBoxIcon.Question)
            TxtPassword.Focus()
        ElseIf TxtKodeUser.Text = "" Then
            MessageBox.Show("Nama User harus diisi", "Konfirmasi", MessageBoxButtons.OK, MessageBoxIcon.Question)
            TxtKodeUser.Focus()
        Else
            Call Koneksi()
            cmd = New OleDbCommand("SELECT * FROM LOGIN WHERE KODE_USER='" & TxtKodeUser.Text & "'AND PASSWORD_USER='" & TxtPassword.Text & "'", conn)
            dr = cmd.ExecuteReader
            dr.Read()
            If dr.HasRows Then
                Dim f_MenuUtama As New FormMenuUtama
                f_MenuUtama.Show()
                Me.Hide()
            Else
                MessageBox.Show("Mohon Maaf,Akses di Tolak", "Perhatian", MessageBoxButtons.OK, MessageBoxIcon.Stop)
                TxtPassword.Clear()
                TxtPassword.Focus()
            End If
        End If
    End Sub

    Private Sub BtnCancel_Click(sender As Object, e As EventArgs) Handles BtnCancel.Click

        Dim keluar As String
        keluar = MessageBox.Show("Yakin Batal Login Aplikasi", "informasi", MessageBoxButtons.YesNo, MessageBoxIcon.Information)
        If keluar = MsgBoxResult.Yes Then
            Application.Exit()
        End If
    End Sub

End Class


Codingan untuk FormInputLogin


Imports System.Data.OleDb

Public Class FormInputLogin

    Sub KosongkanData()

        TxtKodeuser.Clear()

        TxtPassword.Clear()

        TxtKodeuser.Focus()
    End Sub
    Sub DataBaru()

        TxtPassword.Clear()

        TxtKodeuser.Focus()

    End Sub

    Sub Ketemu()

        TxtPassword.Text = dr.Item(1)

        TxtKodeuser.Focus()
    End Sub
    Sub TampilGrid()
        da = New OleDbDataAdapter("SELECT * FROM LOGIN", conn)
        ds = New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.ReadOnly = True
    End Sub

    Private Sub FormInputLogin_Load(sender As Object, e As EventArgs) Handles Me.Load

        Call Koneksi()
        Call KosongkanData()
        Call TampilGrid()
    End Sub

    Private Sub TxtKodeuser_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TxtKodeuser.KeyPress

        If e.KeyChar = Chr(13) Then
            Call Koneksi()
            cmd = New OleDbCommand("SELECT * FROM LOGIN WHERE KODE_USER='" & TxtKodeuser.Text & "'", conn)
            dr = cmd.ExecuteReader
            dr.Read()
            If Not dr.HasRows Then
                Call DataBaru()
            Else
                Call Ketemu()
            End If
        End If
    End Sub

    Private Sub BtnSimpan_Click(sender As Object, e As EventArgs) Handles BtnSimpan.Click

        cmd = New OleDbCommand("SELECT * FROM LOGIN WHERE KODE_USER='" & TxtKodeuser.Text & "'", conn)
        dr = cmd.ExecuteReader
        dr.Read()
        Try
            If Not dr.HasRows Then
                Dim simpan As String = "INSERT INTO LOGIN VALUES ('" & TxtKodeuser.Text & "','" & TxtPassword.Text & "')"
                cmd = New OleDbCommand(simpan, conn)
                cmd.ExecuteNonQuery()
                MsgBox("Data Berhaasil diSimpan")
                TampilGrid()
            Else
                Dim edit As String = "UPDATE LOGIN SET PASSWORD_USER='" & TxtPassword.Text & "' WHERE KODE_USER='" & TxtKodeuser.Text & "'"
                cmd = New OleDbCommand(edit, conn)
                cmd.ExecuteNonQuery()
                MsgBox("Data Berhasil diuBah")
                TampilGrid()
            End If
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
        Call KosongkanData()
    End Sub

    Private Sub BtnHapus_Click(sender As Object, e As EventArgs) Handles BtnHapus.Click

        If TxtKodeuser.Text = "" Then
            MsgBox("Kode User Harus diisi dulu")
            TxtKodeuser.Focus()
            Exit Sub
        Else
            If MessageBox.Show("Yakin akan di hapus ?", "Perhatian", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
                Dim hapus As String = "DELETE * FROM LOGIN WHERE KODE_USER='" & TxtKodeuser.Text & "'"
                cmd = New OleDbCommand(hapus, conn)
                cmd.ExecuteNonQuery()
                MsgBox("Data Berhasil di Hapus")
                Call KosongkanData()
            Else
                Call KosongkanData()
            End If
        End If
    End Sub

    Private Sub BtnBatal_Click(sender As Object, e As EventArgs) Handles BtnBatal.Click

        Call KosongkanData()
    End Sub

    Private Sub BtnKeluar_Click(sender As Object, e As EventArgs) Handles BtnKeluar.Click

        Close()
    End Sub

    Private Sub TxtUsername_KeyPress(sender As Object, e As KeyPressEventArgs)

        If e.KeyChar = Chr(13) Then
            TxtPassword.Focus()
        End If
    End Sub

    Private Sub TxtPassword_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TxtPassword.KeyPress

        If e.KeyChar = Chr(13) Then
            BtnSimpan.Focus()
        End If
    End Sub
End Class

Codingan untuk FormInputData


Public Class FormInputData

    '
    Sub KosongkanData()
        Txtreg.Clear()
        Txtkerusakan.Clear()


        Txtvendor.Clear()

        Txtreg.Focus()
    End Sub

    Sub DataBaru()

        Txtkerusakan.Clear()
        Txtreg.Clear()
        Txtvendor.Clear()
        Txtkerusakan.Focus()
    End Sub

    Sub Ketemu()

        Txtreg.Text = dr.Item(1)
        Txtkerusakan.Text = dr.Item(2)
        txtstatus.Text = dr.Item(3)
        txtkeluarbarang.Text = dr.Item(4)
        txtmasukbarang.Text = dr.Item(5)
        Txtvendor.Text = dr.Item(6)
        Txtreg.Focus()
    End Sub

    Sub TampilGrid()

        da = New OleDbDataAdapter("SELECT * FROM DATA", conn)
        ds = New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.ReadOnly = True
    End Sub

    Private Sub FormInputData_Load(sender As Object, e As EventArgs) Handles Me.Load


        Call Koneksi()


        Call KosongkanData()


        Call TampilGrid()

    End Sub

    Private Sub TxtNik_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Txtreg.KeyPress

        If e.KeyChar = Chr(13) Then
            Call Koneksi()
            cmd = New OleDbCommand("SELECT * FROM DATA WHERE No_registrasi='" & Txtreg.Text & "'", conn)
            dr = cmd.ExecuteReader
            dr.Read()
            If Not dr.HasRows Then
                Call DataBaru()
            Else

            End If

        End If
    End Sub

    Private Sub BtnSimpan_Click(sender As Object, e As EventArgs) Handles BtnSimpan.Click

        cmd = New OleDbCommand("SELECT * FROM DATA WHERE no_registrasi='" & Txtreg.Text & "'", conn)
        dr = cmd.ExecuteReader
        dr.Read()
        Try
            If Not dr.HasRows Then
                Dim simpan As String = "INSERT INTO DATA VALUES('" & Txtreg.Text & "','" & Txtkerusakan.Text & "','" & txtstatus.Text & "','" & txtkeluarbarang.Text & "','" & txtmasukbarang.Text & "','" & Txtvendor.Text & "')"
                cmd = New OleDbCommand(simpan, conn)
                cmd.ExecuteNonQuery()
                MsgBox("Data Berhaasil diSimpan")
                TampilGrid()
            Else
                Dim edit As String = "UPDATE DATA SET STATUS='" & Txtkerusakan.Text & "',KERUSAKAN='" & txtstatus.Text & "',TGL_KELUAR='" & txtkeluarbarang.Text & "',VENDOR='" & Txtvendor.Text & "' where NO_REGISTRASI='" & Txtreg.Text & "'"
                cmd = New OleDbCommand(edit, conn)
                cmd.ExecuteNonQuery()
                MsgBox("Data Berhasil diuBah")
                TampilGrid()
            End If
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
        Call KosongkanData()
    End Sub


    Private Sub BtnHapus_Click(sender As Object, e As EventArgs) Handles BtnHapus.Click

        If Txtreg.Text = "" Then
            MsgBox("Kode no Registrasi Harus diisi dulu", MsgBoxStyle.Information)
            Txtreg.Focus()
            Exit Sub
        Else
            If MessageBox.Show("Yakin akan di hapus ?", "Perhatian", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
                Dim hapus As String = "DELETE * FROM DATA WHERE no_registrasi='" & Txtreg.Text & "'"
                cmd = New OleDbCommand(hapus, conn)
                cmd.ExecuteNonQuery()
                MsgBox("Data Berhasil di Hapus", MsgBoxStyle.Information)
                Call KosongkanData()
                Call TampilGrid()
            Else
                Call KosongkanData()
            End If
        End If
    End Sub

    Private Sub BtnBatal_Click(sender As Object, e As EventArgs) Handles BtnBatal.Click

        Call KosongkanData()
    End Sub

    Private Sub BtnKeluar_Click(sender As Object, e As EventArgs) Handles BtnKeluar.Click

        Close()
    End Sub

    Private Sub TxtNama_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Txtkerusakan.KeyPress


    End Sub


    Private Sub TxtStatus_KeyPress(sender As Object, e As KeyPressEventArgs)

        If e.KeyChar = Chr(13) Then
            Txtvendor.Focus()
        End If
    End Sub

    Private Sub TxtPekerjaan_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Txtvendor.KeyPress

        If e.KeyChar = Chr(13) Then
            BtnSimpan.Focus()
        End If
    End Sub

    Private Sub txtkeluarbarang_ValueChanged(sender As Object, e As EventArgs) Handles txtkeluarbarang.ValueChanged


    End Sub


    Private Sub Txtreg_TextChanged(sender As Object, e As EventArgs) Handles Txtreg.TextChanged

        da = New OleDbDataAdapter("select * from data where no_registrasi LIKE '%" & Txtreg.Text & "%'", conn)
        ds = New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.ReadOnly = True
    End Sub

    Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs)


    End Sub


    Private Sub CheckBox1_CheckStateChanged(sender As Object, e As EventArgs)


    End Sub


    Private Sub CheckBox1_EnabledChanged(sender As Object, e As EventArgs)


    End Sub


End Class


Codingan untuk CekData


Public Class FormCekData


    Sub KosongkanData()

        Txtreg.Clear()
        Txtkerusakan.Clear()


        Txtvendor.Clear()

        Txtreg.Focus()
    End Sub

    Sub DataBaru()

        Txtkerusakan.Clear()
        Txtreg.Clear()
        Txtvendor.Clear()
        Txtkerusakan.Focus()
    End Sub

    Sub Ketemu()

        Txtreg.Text = dr.Item(1)
        Txtkerusakan.Text = dr.Item(2)
        txtstatus.Text = dr.Item(3)
        txtkeluarbarang.Text = dr.Item(4)
        txtmasukbarang.Text = dr.Item(5)
        Txtvendor.Text = dr.Item(6)
        Txtreg.Focus()
    End Sub

    Sub TampilGrid()

        da = New OleDbDataAdapter("SELECT * FROM DATA", conn)
        ds = New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.ReadOnly = True
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs)

        Call KosongkanData()
    End Sub

    Private Sub TxtNik_KeyPress(sender As Object, e As KeyPressEventArgs)


    End Sub


    Private Sub TxtNik_TextChanged(sender As Object, e As EventArgs)


    End Sub


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

        Call TampilGrid()
        Call DataBaru()

    End Sub


    Private Sub Txtreg_TextChanged(sender As Object, e As EventArgs) Handles Txtreg.TextChanged

        da = New OleDbDataAdapter("select * from data where no_registrasi LIKE '%" & Txtreg.Text & "%'", conn)
        ds = New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.ReadOnly = True

    End Sub


    Private Sub Txtreg_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Txtreg.KeyPress

        If e.KeyChar = Chr(13) Then
            Call Koneksi()
            cmd = New OleDb.OleDbCommand("SELECT * FROM DATA WHERE NO_REGISTRASI='" & Txtreg.Text & "'", conn)
            dr = cmd.ExecuteReader
            dr.Read()
            If dr.HasRows Then
                Call Ketemu()
            End If
        End If
    End Sub

    Private Sub txtstatus_SelectedIndexChanged(sender As Object, e As EventArgs) Handles txtstatus.SelectedIndexChanged

        da = New OleDbDataAdapter("select * from data where status LIKE '%" & txtstatus.Text & "%'", conn)
        ds = New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.ReadOnly = True
    End Sub

    Private Sub Txtkerusakan_TextChanged(sender As Object, e As EventArgs) Handles Txtkerusakan.TextChanged

        da = New OleDbDataAdapter("select * from data where kerusakan LIKE '%" & Txtkerusakan.Text & "%'", conn)
        ds = New DataSet
        da.Fill(ds)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.ReadOnly = True
    End Sub

End Class



Sekian Penjelasan pembuatan aplikasi ini saya jelaskan kurang lebihnya mohon maaf.
Terima Kasih
Next
This is the current newest page
Previous
Next Post »
Thanks for your comment