Selasa, 01 Maret 2016

MEMBUAT NO OTOMATIS DI DELPHI

Membuat No Otomatis
Biasanya aplikasi untuk perdagangan atau penjurnalan memerlukan id atau no urut yang sudah ditentukan.Jadi pada saat ada penambahan record baru, maka id tersebut sudah otomatis masuk dalam textbox.Nah dibawah ini ada contoh sederhana bagaimana membuat no urut yg otomatis.
 

Perhatikan gambar diatas, pada saat tombol New Record di klik maka otomatis akan membuat suatuno urut dgn format Kasus/Per-XXX/26022009-00001.
Angka 26022009 ini artinya 26 Februari 2009 dan 00001 adalah no urutnya.
Nah berikut ini adalah kode utk membuat nya
Dim conn As New Connection
Dim rs As New Recordset

Private Sub Form_Load()
  conn.Provider = "Microsoft.Jet.OLEDB.4.0"
  conn.Open App.Path & "\nwind.mdb"
 
  rs.CursorLocation = adUseClient
  rs.Open "tbl_nourut", conn, adOpenDynamic, adLockOptimistic
End Sub

Private Sub cmdNewRecord_Click()
  Dim FormatNoUrut As String
  FormatNoUrut = "Kasus/Per-XXX/"
 
  '---apabila id nya masih kosong maka buat nourut
  '---sesuai standard contohnya Kasus/Per-XXX/26022009-00001
  If rs.RecordCount = 0 Then
  Text1.Text = FormatNoUrut & Format(Now, "ddmmyyyy") & "-" & "00001"
 
  '---apabila sudah terisi dgn noourut
  Else
  Dim AmbilNo As String
  Dim Panjang As String
  Dim Nourut As String
 
  rs.MoveLast
 
  '---ambil karakter dari kanan pada field no_urut
  AmbilNo = Right(rs("no_urut"), 5)
 
  '---dari 5 karakter itu, tambahkan dgn angka 1
  '---misalnya nilainya 00001 maka variabel ini
  '---akan terisi dgn nilai 2
  Panjang = AmbilNo + 1
 
  '---cek panjang dari hasil penjumlahan diatas
  Select Case Len(Panjang)
  Case 1: Nourut = "0000" & Panjang
  Case 2: Nourut = "000" & Panjang
  Case 3: Nourut = "00" & Panjang
  Case 4: Nourut = "0" & Panjang
  Case 5: Nourut = Panjang
  End Select
 
  Text1.Text = FormatNoUrut & Format(Now, "ddmmyyyy") & "-" & Nourut
  End If
 
End Sub

Private Sub cmdSaveRecord_Click()
  rs.AddNew
  rs("no_urut") = Text1.Text
  rs("nama") = Text2.Text
  rs.Update
  rs.Requery
End Sub

 
 

Perhatikan lagi gambar diatas, pada saat tombol New Record di klik maka otomatis no urutnya

sudah berubah menjadi 00002 karena dalam tabel angka 00001 sudah ada.

Tidak ada komentar:

Posting Komentar