Tuesday, February 21, 2017

2 Pilihan Function Untuk Mengisi Field Dengan Angka Hitungan Maju Atau Angka Hitungan Mundur

www.AstroDigi.com AstroDigi.com | Selasa, 21 Feb 2017 | Dalam menyusun program kadangkala saya memerlukan sebuah tabel dengan jumlah record yang sudah saya batasi dan didalamnya sudah terdapat sebuah field yang berisi angka yang berurutan. Kadangkala saya membutuhkan angka berurutan maju/naik (up counting) dan kadangkala saya membutuhkan angka berurutan mundur/turun (down counting). Biasanya hal ini saya lakukan untuk form khusus yang hanya bisa diedit dan tidak pula bisa dihapus atau ditambah.

Tabel record terbatas semacam ini biasanya digunakan untuk mencatat daftar penumpang pada kendaraan umum atau pesawat, daftar pengunjung bioskop yang jumlah kursinya memang terbatas, daftar undangan terbatas, dan lain sebagainya yang record-nya memang terbatas.

Untuk keperluan ini saya menggunakan function khusus, yang pada artikel kali ini saya bagikan kepada para pembaca sekalian. Ada 2 buah function, dimana salah satunya untuk "up counting" (hitung maju) dan yang lainnya untuk "down counting" (hitung mundur). Berikut ini adalah instruksi untuk kedua function tersebut:

'Function Up Counter:
'-----------------------------
Public Function UpCounter(tableKu As String, fieldKu As String, counterNum As Integer) As Boolean
Dim sqlKu As String
Dim upCnt As Integer
UpCounter = False
upCnt = 0

If counterNum <> 0 Then
Do While counterNum > 0
upCnt = upCnt + 1
sqlKu = "INSERT INTO " & tableKu & " ( " & fieldKu & " ) SELECT " & upCnt & " AS dataKu;"
DoCmd.SetWarnings False
DoCmd.RunSQL sqlKu
DoCmd.SetWarnings True
counterNum = counterNum - 1
Loop
UpCounter = True
End If

End Function

'-----------------------------

Untuk menggunakannya user harus membuat sebuah variabel bertipe data boolean, dan isi dengan nama tabel, nama field, dan jumlah record yang ingin diisi dengan angka hitungan maju/naik. Contohnya sebagai berikut:

Dim dataKu As Boolean
dataKu = UpCounter("tabel_penumpang", "IDpenumpang", 120)


Setelah selesai maka dataKu akan menjadi TRUE. Namun apabila parameter ketiga = 0, maka dataKu akan mejadi FALSE
'-----------------------------


'Function Down Counter:
'-----------------------------
Public Function DownCounter(tableKu As String, fieldKu As String, counterNum As Integer) As Boolean
Dim sqlKu As String
DownCounter = False

If counterNum <> 0 Then
Do While counterNum > 0
sqlKu = "INSERT INTO " & tableKu & " ( " & fieldKu & " ) SELECT " & counterNum & " AS dataKu;"
DoCmd.SetWarnings False
DoCmd.RunSQL sqlKu
DoCmd.SetWarnings True
counterNum = counterNum - 1
Loop
DownCounter = True
End If

End Function
'-----------------------------

Untuk menggunakannya user harus membuat sebuah variabel bertipe data boolean, dan isi dengan nama tabel, nama field, dan jumlah record yang ingin diisi dengan angka hitungan mundur/turun. Contohnya sebagai berikut:

Dim dataKu As Boolean
dataKu = DownCounter("tabel_penumpang", "IDpenumpang", 280)


Setelah selesai maka dataKu akan menjadi TRUE. Namun apabila parameter ketiga = 0, maka dataKu akan mejadi FALSE
'-----------------------------

Selamat mencoba :-)

 www.AstroDigi.com (Nino Guevara Ruwano)

Comments :

0 comments to “2 Pilihan Function Untuk Mengisi Field Dengan Angka Hitungan Maju Atau Angka Hitungan Mundur”


Post a Comment