Generate kode rekening otomatis
Misalnya kita ingin membuat sebuah kode rekening dengan format berikut ini :
[Kode Bank] . [Nomor Rekening] . [Kode Cabang] = 011.000001.11
dimana struktur tabelnya antaran lain
Table Name : Setting
Field List : Kode_Bank, Kode_Cabang,….
Table Name : Nasabah
Field List : Kode_Nasabah,Nama_Nasabah,…
Table Name : Realisasi_Kredit
Field List : Kode_Nasabah, Kode_Rekening,…
dimana field kode_rekening pada tabel realisasi_kredit yang akan kita generate otomatis
Dari format [Kode Bank] . [Nomor Rekening] . [Kode Cabang] = 011.000001.11 bisa kita analisa langkahnya step by step :
1). Untuk [kode bank] kita bisa query field [kode bank] yang ada pada tabel setting, begitu juga untuk field [kode cabang]
“Select [Kode Bank],[Kode Cabang] From Setting”
2). Untuk [nomor rekening] kita pertama-tama query last record untuk [nomor rekening] dari tabel realisasi_kredit
“Select Top 1 [Nomor Rekening] From Realisasi_Kredit Order By [Nomor Rekening] Desc”
3). Dari hasil query [nomor rekening] terakhir kita ubah datanya menjadi numerik dan kita tambah satu ( + 1 ) untuk menjadi counter otomatisnya.
val(.fields(”nomor rekening”).value) + 1
4). Gabungkan [nomor rekening] dengan hasil counter otomati.
cNoRek = Mid(Trim(RsCariRekeningAkhir.Fields(0).Value), 4, 6)
nNoRek = Val(cNoRek) + 1
cNoRek = Mid(”000000″, 1, Val(7 - Len(Str(nNoRek))))
cNoRek = Trim(cNoRek) & Trim(nNoRek)
5). Langkah terakhir kita gabungkan hasil dari semua langkah diatas menjadi satu baris
TxtNoRekening.Text = Trim(.Field.(”Kode Bank”).Value) & “.” & Trim(cNoRek) & “.” & Trim(.Field.(”Kode Cabang”).Value)
Untuk lebih jelasnya kita bisa lihat codenya secara lengkap berikut ini
Private Sub GenerateNomorRekening()
Set RsCariRekeningAkhir = Nothing
Set RsCariRekeningAkhir = New ADODB.Recordset
RsCariRekeningAkhir.Open “CARI_REKENING_TERAKHIR”, Conn, adOpenDynamic, adLockOptimistic
If RsCariRekeningAkhir.RecordCount <> 0 Then
‘TxtRekBerikutnya.Text = (RsCariRekeningAkhir.Fields(0).Value)
TxtRekBerikutnya.Text = Mid(Trim(RsCariRekeningAkhir.Fields(0).Value), 4, 6)
cNoRek = Mid(Trim(RsCariRekeningAkhir.Fields(0).Value), 4, 6)
nNoRek = Val(cNoRek) + 1
cNoRek = Mid(”000000″, 1, Val(7 - Len(Str(nNoRek))))
cNoRek = Trim(cNoRek) & Trim(nNoRek)
Else
‘TxtRekBerikutnya.Text = a & “.” & “000000″ & “.” & Trim(ComKdPK.Text)
TxtRekBerikutnya.Text = a & “.” & “000000″ & “.”
nNoRek = 1
cNoRek = Mid(”000000″, 1, Val(7 - Len(Str(nNoRek))))
cNoRek = Trim(cNoRek) & Trim(nNoRek)
End If
‘TxtNoRekening.Text = Trim(a) & “.” & Trim(cNoRek) & “.” & Trim(ComKdPK)
TxtNoRekening.Text = Trim(a) & “.” & Trim(cNoRek) & “.” & Trim(ComKdPK)
End Sub
Dan untuk stored procedurenya yakni
Create Procedure CARI_REKENING_TERAKHIR as
Set Rowcount 1
Select Top 1 [Nomor Rekening] from Realisasi_Kredit] Order By Norec Desc
Fungsi dan trik diatas bisa anda kembangkan untuk problem-problem lainnya.





stmikbg.com adalah web untuk komunitas bagi anak-anak stmik bumigora khususnya dan anak-anak IT umumnya, baek yang cupu maupun yang expert.
February 28th, 2008 at 7:01 pm
COOL…., Klo buat keygen untuk voucher kartu perdana pake vb bisa ga? Tolong kasih tau dnk kodenya
April 6th, 2008 at 10:36 am
Lovely post. I like your pencraft and that
April 9th, 2008 at 2:12 am
Blah-blah-blah. I don