Cara Membuat AutoNumber / Kode Otomatis / Autoid Pada VB.Net
Ada kalanya kita ingin membuat pengkodean secara otomatis, misalnya untuk membuat membuat kode transaksi yang biasanya di set secara otomatis, kode anggota, kode barang, kode desa dan sebagainya yang sangat berguna ketika banyak item yang harus kita inputkan. Tentunya nomor/kode tersebut akan bertambah secara sequensial (berurutan) sesuai dengan item yang di input kedalam database, sehingga kemungkinan untuk duplikat (nomor ganda) pada database tidak akan ada.
Misalnya, kita akan membuat kode otomatis untuk kode desa dengan urutan :
ds01, ds02, ds03, dan seterusnya..
Caranya :
- Buat sebuah Sub Prosedur misalnya dengan nama 'autoiddesa'
- Panggil prosedur tersebut pada button "Tambah", jadi ketika nantinya kita klik tambah maka kode desa akan otomatis muncul
Hasilnya Seperti Ini :
Misalnya, kita akan membuat kode otomatis untuk kode desa dengan urutan :
ds01, ds02, ds03, dan seterusnya..
Caranya :
- Buat sebuah Sub Prosedur misalnya dengan nama 'autoiddesa'
- Panggil prosedur tersebut pada button "Tambah", jadi ketika nantinya kita klik tambah maka kode desa akan otomatis muncul
Berikut Source Codenya :
Sub autoiddesa()
Try
Call koneksi()
inicommand = New MySqlCommand("select * from tb_desa order by id_desa desc",
inimysqlconnection)
inidatareader = inicommand.ExecuteReader
inidatareader.Read()
If Not inidatareader.HasRows Then
textIddesa.Text = "ds01"
Else
textIddesa.Text = Val(Microsoft.VisualBasic.Mid(inidatareader.
Item("id_desa").ToString, 3, 2)) + 1
If Len(textIddesa.Text) = 1 Then
textIddesa.Text = "ds0" & textIddesa.Text & ""
ElseIf Len(textIddesa.Text) = 2 Then
textIddesa.Text = "ds" & textIddesa.Text & ""
ElseIf Len(textIddesa.Text) = 3 Then
textIddesa.Text = "d" & textIddesa.Text & ""
End If
End If
Catch ex As Exception
MessageBox.Show("Terjadi Kesalahan : " & ex.Message, "Pesan Peringatan",
MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Try
End Sub
Hasilnya Seperti Ini :
Semoga Bermanfaat :D
supaya manggil koneksi() sama new MySqlCommand gimana? pake Dim tidak?
BalasHapusmkasih,,nhe bnar2 membantu
BalasHapussaya lelah kenapa harus ada peringatan connection must be valid and open??? database ane mysql nih
BalasHapusSub otomatis()
Call koneksikan()
tampil = New MySqlCommand("select Kode_Barang * from tableitellistbarang3 where Kode_Barang in(select max(kode_barang)from tableitellistbarang3)", database)
tampilkan = tampil.ExecuteReader
tampilkan.Read()
If tampilkan.HasRows = 0 Then
TextBox1.Text = Format(Now, "0000") + "0001"
tampilkan.Close()
End If
If tampilkan.HasRows Then
TextBox1.Text = Format(Now, "0000") + "0001"
tampilkan.Close()
Else : TextBox1.Text = Val(Microsoft.VisualBasic.Right(tampilkan.Item("kode_barang").ToString, 4)) + 1
End If
End Sub
Aapakah ada yang bisa membantu ane??
BalasHapusMy Coding is
Imports MySql.Data.MySqlClient
Imports MySql.Data.MySqlClient.MySqlCommand
Imports MySql.Data.MySqlClient.MySqlDataAdapter
Imports MySql.Data.MySqlClient.MySqlConnection
Public Class Form1
Public database As New MySqlConnection
Public tampil As MySql.Data.MySqlClient.MySqlCommand
Public tampilkan As MySql.Data.MySqlClient.MySqlDataReader
Public grid As MySql.Data.MySqlClient.MySqlDataAdapter
Public ds As New DataSet
Public table As String
Public record As New BindingSource
Sub otomatis()
Call koneksikan()
tampil = New MySqlCommand("select* from tableitellistbarang3 where Kode_Barang in(select max(kode_barang)from tableitellistbarang3)", database)
tampilkan = tampil.ExecuteReader
tampilkan.Read()
If tampilkan.HasRows = 0 Then
TextBox1.Text = Format(Now, "0000") + "0001"
tampilkan.Close()
End If
If tampilkan.HasRows Then
TextBox1.Text = Format(Now, "0000") + "0001"
tampilkan.Close()
Else : TextBox1.Text = Val(Microsoft.VisualBasic.Right(tampilkan.Item("kode_barang").ToString, 4)) + 1
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call koneksikan()
Call otomatis()
End Sub
End Class
Ketika di run muncul peringatan connection must be valid and open. kenapa yah?????
nice .. simak disini gan dengan ODBC Connection https://bit.ly/2IarWwZ
BalasHapus