Membuat Nomor Otomatis di VB 6 Database MySQL
Selasa, 09 April 2013
Visual Basic
Membuat Nomor Otomatis di VB 6 Database MySQL
Membuat Nomor Otomatis di VB 6 Database MySQL - Penomoran Otomatis adalah suatu keharusan dalam membangun suatu aplikasi yang mempunyai database yang berisi tabel data. Penomoran otomatis sendiri berfungsi sebagai pembeda antara record atau data data pada suatu tabel agar tidak terjadi Duplicate key yang nantinya bisa terjadi redudansi antar record. Maka pada kesempatan kali ini berdasarkan permintaan salah satu teman yang menanyakan cara membuat nomor otomatis ( kode_barang, ID atau Nomor_Faktur, dll) pada Visual Basic 6.0 yang berdatabase MySQL.
Permasalahan yang teman utarakan adalah ketika akan membuat data baru dan membuat nomor otomatis selalu muncul dengan nomor yang sama. Contoh : pada awal mengisi record kode_faktur :"F001" dan akan menginput data baru, kode_faktur yang muncul lagi adalah "F001" yang sudah jelas jelas sudah ada record dengan primary key tersebut. Maka hal tersebut membuat aplikasi tersbut error tidak bisa menyimpan karena ada duplicate key pada tabel.
Untuk lebih mempersingkat bagaimana cara membuat auto number atau nomor otomatis dengan Visual Basic 6.0 database MySQL, Design Form Sepert Dibawah ini :
Satu buah label, textbox dan command buttuon
Logika jalannya penomoran otomatis tersebut adalah ketika tombol "data baru" di klik maka textbox kd_fak tersisi kode faktur "F001" dan terus berlanjut jika akan menginput record yang baru "F002","F003" dan seterunya.
Maka listing tersebut adalah :
Public conn As New ADODB.Connection
Public rec As New ADODB.Recordset
Sub koneksi()
Set conn = New ADODB.Connection
Set rec = New ADODB.Recordset
conn.ConnectionString = "driver={mysql odbc 5.1 driver};server=localhost;uid=root;pwd=password;db=faktur;"
conn.Open
End Sub
Private Sub baru_Click()
Set rec = conn.Execute("select*from kodefaktur order by kodefaktur desc limit 1")
With rec
If .EOF Then
kdfak.Text = "F" & "001"
Else
kdfak.Text = "F" & Right(Str(Val(Right(.Fields(0), 3)) + 1001), 3)
End If
End With
End Sub
Private Sub Form_Load()
koneksi
End Sub
Public rec As New ADODB.Recordset
Sub koneksi()
Set conn = New ADODB.Connection
Set rec = New ADODB.Recordset
conn.ConnectionString = "driver={mysql odbc 5.1 driver};server=localhost;uid=root;pwd=password;db=faktur;"
conn.Open
End Sub
Private Sub baru_Click()
Set rec = conn.Execute("select*from kodefaktur order by kodefaktur desc limit 1")
With rec
If .EOF Then
kdfak.Text = "F" & "001"
Else
kdfak.Text = "F" & Right(Str(Val(Right(.Fields(0), 3)) + 1001), 3)
End If
End With
End Sub
Private Sub Form_Load()
koneksi
End Sub
Asumsi :
- sudah membuat database dengan nama "faktur" berisi tabel "kodefaktur" dengan field "kodefaktur"
- textbox dengan name "kdfak" dan commandbutton dengan name "baru"
- Tidak perlu membuat koneksi ODBC pada aplikasi ODBC, karena pada listing sudah dibuatkan koneksi otomatis ODBC ke database faktur
- server "localhost" dengan user "root" dan password "password"
Cara membuat auto number pada visual basic 6.0 tersebut sudah penulis praktekkan dan jika pembaca ingin mendapatkan listing diatas maka silahkan Download listing nya karena halaman ini di setting untuk tidak bisa copas.. hehe..
kenapa cuma sampai urutan 5 aja ...abis 005 ga bisa otomatis 006...mohon bantu listingnya yg akurat yah makasih
BalasHapus