Active Report
adalah salah satu tool yang digunakan untuk pembuatan report di visual
basic, mulai dari report yang sederhana sampai yang komplek, berikut
contoh beberapa report yang bisa dibuat menggunakan active report.
Selain itu active report juga sudah terintegrasi dengan IDE visual basic sehingga pembuatan report pun menjadi lebih menyenangkan, lalu bagaimana cara meload datanya ? Caranya gampang cukup menggunakan query biasa seperti query-query yang digunakan dalam pembuatan aplikasi.
Untuk contoh pada tutorial pertama ini kita akan menampilkan data siswa dengan struktur tabel seperti berikut :
1. Mendesain report
Mendesain report di Active Report sama mudahnya seperti mendesain tampilan di form, tinggal drag komponennya kemudian ganti nilai properties masing-masing komponennya sesuai kebutuhan.
Oke langsung saja aktifkan project vb Anda kemudian klik kanan di nama project -> Add -> Data Dynamics ActiveReport 2.0. Lihatlah gambar di bawah ini
Jika berhasil pada panel project explorer akan ketambahan node baru dengan nama Designers seperti nampak pada gambar berikut ini :
Kita akan mengganti nilai dari properties Name dan Caption seseusai setting berikut :
Name = arLapSiswa
Caption = Laporan Data Siswa
Untuk lebih jelasnya perhatikan gambar berikut ini
Untuk properties yang lain bisa Anda ganti nilainya sesuai kebutuhan.
Berikutnya kita akan menambahkan judul report, objek yang akan digunakan adalah objek label seperti yang nampak pada gambar berikut ini :
Nilai caption dari labelnya kita abaikan saja, karena akan kita ganti pada saat runtime (program dijalankan).
Setelah selesai menambahkan judul reportnya, kita akan menambahkan judul kolom, objek yang digunakan masih sama yaitu label seperti yang nampak pada gambar berikut ini :
Selanjutnya kita akan menambahkan border untuk judul kolom nya, caranya adalah dengan menyeleksi label “No.” sampai “Tanggal Lahir”, kemudian klik kanan pada salah satu label yang diseleksi pilih Format Border
Perhatikanlah gambar di bawah ini :
pilih jenis border pada pilihan Line Styles, kemudian pada bagian Preview border yang diaktifkan hanya bagian “Atas”, “Kiri” dan “Bawah” dan hasilnya akan nampak seperti gambar berikut ini :
Selanjutkan kita akan menambahkan border untuk label ayah
Gimana? jadi terlihatkan perbedaannya kenapa dipisah pembuatan border label “Ayah” dengan label lainnya.
Hasil akhir penambahan border judul kolom seperti yang nampak pada gambar berikut :
Berikutnya kita akan menambahkan objek TextBox yang akan digunakan untuk menampilkan data seperti gambar berikut ini :
Tampilkan Gambar
Khusus untuk textbox “No.” (tag merah) properties Textnya diset = 0, untuk textBox lainnya diabaikan saja dan kemudian untuk menambahkan border langkah-langkahnya sama seperti sebelumnya, hanya saja border bagian “Atas” tidak aktifkan
kemudian untuk setting border textbox ayah
ada satu komponen lagi yang akan kita tambahkan yaitu komponen ADO Data Control dan saya rasa tidak perlu lagi dijelaskan apa kegunaan komponen ini.
Berikut adalah gambar penampakan hasil akhir desain report siswanya.
2. Kode untuk report
Active Report sama seperti form dan komponen lainnya mempunyai event-event yang bisa kita isikan kode program sesuai kebutuhan, biasanya nama event tersebut diawali oleh nama sectionya, contohnya seperti gambar berikut ini silahkan diperhatikan :
pada contoh diatas section “Detail” mempunyai beberapa event yaitu AfterPrint, BeforePrint, Format.
Disini saya hanya akan mencontohkan penggunaan event Format dan BeforePrint.
Private Sub Detail_Format()
With adoSiswa.Recordset
If Not .EOF Then
txtNo.Text = Val(txtNo.Text) + 1
txtNIS.Text = .Fields("nomorinduk").Value
txtNama.Text = .Fields("nama").Value
txtTempatLahir.Text = "" & .Fields("tempat_lahir").Value ' untuk menghandle nilai null
If IsDate(.Fields("tgl_lahir").Value) Then
txtTglLahir.Text = Format(.Fields("tgl_lahir").Value, "dd/MM/yyyy")
Else
txtTglLahir.Text = ""
End If
txtAyah.Text = "" & .Fields("ayah").Value ' untuk menghandle nilai null
End If
End With
End Sub
Sampai disini report sudah siap digunakan/dipanggil via aplikasi
3. Memanggil report dari aplikasi
Balik ke form visual basic kemudian buat desain form seperti yang nampak pada gambar berikut ini :
kemudian untuk menampilkan reportnya ketiklah kode berikut :
Private Sub cmdPreview_Click()
Dim strCon As String
Dim strSql As String
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\sampleDb.mdb"
strSql = "SELECT * FROM siswa"
With arLapSiswa
.adoSiswa.ConnectionString = strCon
.adoSiswa.Source = strSql
.lblHeader1.Caption = "SEKOLAH MENGENGAH ..."
.lblHeader2.Caption = "Laporan Data Siswa"
.Show
End With
End Sub
Gimana ? Simple kan
jalankan program kemudian klik tombol “Tampilkan Report”, akan ditampilkan hasil preview data siswanya.
waduhh, ternyata setelah pindah ke halaman 2 ada data siswa yang nampil tidak sesuai harapan, lihat gambar berikut :
Setelah diusut ternyata penyebabnya adalah nilai dari tempat lahirnya terlalu panjang sehingga tampilan report jadi berantakan, nah bagaimana cara menyelesaikan masalah ini ? Disinilah peran penting dari event Detail_BeforePrint.
Oke kita kembali lagi ke desain report siswanya kemudian tambahkan kode berikut pada event Detail_BeforePrint :
Private Sub Detail_BeforePrint()
txtNo.Height = Detail.Height
txtNIS.Height = Detail.Height
txtNama.Height = Detail.Height
txtTempatLahir.Height = Detail.Height
txtTglLahir.Height = Detail.Height
txtAyah.Height = Detail.Height
End Sub
Klo sudah jalankan lagi programnya dan kita lihat hasil reportnya seperti nampak pada gambar berikut ini :
Selesai, sampai ketemu lagi di seri tutorial active report berikutnya.
Dikutip dari : http://coding4ever.net
Jika anda belum punya software active report silahkan download
disini .
anda tidak mau ribet ..? saya akan memberikan link download tutorial dan source codenya di akhir tulisan ini silahkan di download dan semoga dapat bermanfaat.
DOWNLOAD :
1. Tutorial
2. Source Code
Tags :
Tutorial Membuat Laporan Dengan Active Report,Tutorial Membuat Laporan Dengan Active Report Di VB, Trik Active Report, Contoh Source Code Laporan Dengan Active Report
Nomor urut ga bisa otomatis kayak report di ms access ya ?
ReplyDeleteMaksudnya ga perlu di koding