Artikel Membuat Pagination ini menjelaskan cara membuat paging pada datagridview VB.Net dengan menggunakan database SQL Server 2005. Pagination berguna untuk menampilkan data yang banyak ke dalam beberapa halaman untuk mempercepat proses penampilan data. Selain itu memberi kemudahan kepada pengguna dalam mencari data.
Disini saya akan mencoba untuk memberikan sedikit tips untuk menampilkan database dalam tabel menggunakan VB.Net. Seorang user tentu akan merasa kesulitan disaat data semakin banyak maka tampilan tabel juga akan semakin menumpuk dan memanjang berdasarkan jumlah yang ada pada database. Solusinya adalah membuat suatu paging pada tabel data dijadikan beberapa page.
Syntax
Pertama dan yang paling utama. tuliskan script berikut ini pada baris pertama
Imports System.Data.SqlClient
Deklarasi Variabel
Selanjutnya, buat beberapa variabel yang akan digunakan
Dim da As SqlDataAdapter
Dim startRecord As Integer = 0 'Deklarasi record dimulai
Dim ds As DataSet
Dim totalrecordperpage As Integer = 5 'Total record yang akan ditampilkan per page
Koneksi Database
Kemudian buat koneksi ke database SQL Server
Private Function koneksi() As SqlConnection
Dim c As String = "server=nama_server;database=nama_db;integrated security=true"
Dim cn As New SqlConnection(c)
Try
cn.Open()
Catch ex As Exception
MsgBox(ex.Message)
End Try
Return cn
End Function
Menampilkan data
Private Sub go()
Try
cek()
da = New SqlDataAdapter("select * from tabel", koneksi)
ds = New DataSet
da.Fill(ds, startRecord, totalrecordperpage, "tabel")
DataGridView1.DataSource = ds.Tables(0)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
GetRowsCount()
Fungsi ini berguna untuk Mendapatkan jumlah record pada database
Private Function GetRowsCount() As Integer
da = New SqlDataAdapter("select * from tabel", koneksi)
ds = New DataSet
da.Fill(ds)
Return ds.Tables(0).Rows.Count
End Function
Cek
digunakan untuk mengaktifkan dan non aktifkan button
Private Sub cek()
Dim endofrecord As Integer = GetRowsCount() / totalrecordperpage
If startRecord = 0 Then
btnprev.Enabled = False
ElseIf startRecord / totalrecordperpage = endofrecord Then
btnNext.Enabled = False
Else
btnprev.Enabled = True
btnNext.Enabled = True
End If
End Sub
Cara penggunaan
Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNext.Click
startRecord = startRecord + totalrecordperpage
go()
End Sub
Private Sub btnprev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnprev.Click
startRecord = startRecord - totalrecordperpage
go()
End Sub
No Comments
Leave a comment Cancel