Anda di halaman 1dari 14

MEMBUAT LAPORAN (REPORT) DENGAN VISUAL BASIC

A. Membuat Laporan (Report)


Laporan digunakan sebagai sarana untuk menampilkan hasil pengolahan data, baik tampilan di
layar maupun di kertas melalui printer. Pada pemrograman visual basic, laporan dapat dibuat
dengan fasilitas Cristal Report (diinstal tersendiri) maupun dengan Data Report (bawaan standard).
Pada bahasan di bawah ini laporan dibuat engan menggunakan Data Report.

a) Persiapan

Untuk membuat laporan dengan Data Report, dapat dilakukan dengan cara menambahkan objek
Data Report pada project, yaitu :
- Tampilkan menu Project

- Klik pilihan Add Data Report, sehingga akan ditampilkan desain laporan.

Sebelum melanjutkan untuk merancang laporan yang diinginkan, ada beberapa tahapan yang perlu
dilakukan yaitu :

1) Menetapkan Data Enviroment (Lingkungan Data)

Untuk membuat Data Environment lakukan langkah-langkah sbb :

- Klik kanan pada jendela Project

- Pilih Add

- Pilih Data Environment, sehingga akan ditampilkan layar seperti gambar di bawah ini :

Gambar 47 : Kotak Dialog Data Environment

Untuk masing-masing nama (DataEnvironment1 dan Connection1) dapat dirubah namanya melalui
properties.
- Buat koneksi data agar bisa dihubungkan dengan Database yang akan digunakan untuk
pembuatan laporan. Caranya adalah dengan klik kanan pada Connection1, lalu pilih Properties,
sehingga akan ditampilkan jendela seperti gambar di bawah ini.

Gambar 48 : Kotak Dialog Link Database

- Klik pilihan Microsoft Jet 4.0 OLE DB Provider, lalu klik tombol Next, sehingga akan
ditampilkan jendela di bawah ini

Gambar 49 : Kotak Dialog Koneksi Database

- Ketikkan nama database yang digunakan (pada posisi kursor saat ini) atau klik tombol titik
tiga sehingga memudahkan dalam menentukan database yang dimaksudkan.
Setelah database selesai ditetapkan, maka untuk mencoba koneksi bisa diklik tombolTest
Conection. Jika dinyatakan sukses, maka langkah selanjutnya dapat dilakukan dengan mengklik
tombol OK.
2) Membuat Sumber Data (Tabel/SQL yang akan digunakan)

Untuk mempersipkan sumber data yang akan digunakan, maka lakukan langkah-langkah di bawah
ini.

- Klik kanan pada bagian Connection1

- Pilih Add Command, sehingga akan ditambahkan satu nama untuk sumber data yaitu
Command1. Nama ini dapat dirubah pada properties. (setiap kali ingin menambah sumber data
lakukan hal yang sama seperi di atas)

- Tentukan sumber data dengan klik kanan pada Command1, lalu pilih Properties sehingga
akan ditampilkan kotak dialog seperti gambar di bawah ini.

Gambar 50 : Kotak Dialog Properties Pembuatan Sumber Data

Sumber data dapat berupa tabel atau sql. Jika sumber data adalah tabel, maka klik Database Object
lalu pilih Table. Setelah itu pada bagian bawahnya pilih nama tabel yang akan digunakan. Jika
sumber data adalah query maka klik SQL Statement, lalu tulis SQL yang dibutuhkan. Untuk
memperjelas keadaan dari dua alternatif di atas dapat dilihat gambar di bawah ini.
Gambar 51 : Sumber Data Berupa Tabel

Gambar 52 : Sumber Data Berupa SQL

- Setelah selesai menentap Tabel atau SQL, klik tombol Apply.

- Apabila laporan yang dibuat adalah mengambil seluruh data pada tabel seperti contoh di
atas, maka proses sudah selesi dengan mengklik tombol OK. Tapi jika laporan yang dibuat agak
bervariasi, misalnya menampikan data tertentu atau menampilkan data dengan kelompok tertentu,
maka dapat ditindak lanjuti dengan menetapkan beberapa hal pada kotak dialog di atas.

b) Proses Pembuatan

Setelah persiapan-persiapan atau kelengkapan dari pembuatan laporan sudah dilakukan, maka
proses pembuatan dapat dilakukan. Ada dua tahapan yang perlu dilakukan supaya laporan bisa
terwujud yaitu mengatur properties dan membuat rancangan (desain) laporan. Untuk keperluan
tersebut kembali dulu ke tampilan rancangan report. Jika masih dalam tampilan Environmet, maka
tutup dulu tampilan tersebut.
1) Mengatur properties laporan

Gambar 53 : Layar Desain Laporan

Pada saat tampilan desain report seperti di atas, maka atur propertiesnya yaitu DataSource dan
DataMember.

- Mengatur DataSource

Klik properti DataSource, lalu pilih sesuai dengan nama Environment (pada contoh di atas namanya
adalah Environment1)

- Mengatur DataMember

Klik properties DataMember, lalu pilih nama sumber data ysng digunakan (pada contoh di atas
menggunakan Command1).

Properties yang lain dapat diatur, misalnya batas kiri laporan (Left Margin), batas kanan laporan
(Right Margin), batas atas laporan (Top Margin), dan batas bawah laporan (Bottom Margin).

2) Membuat desain laporan

Untuk membuat rancangan laporan dapat digunakan kontrol-kontrol yang sudah disediakan. Untuk
penerapannya sama seperti dalam perancangan form. Langkah-langkahnya sebagai berikut :

1. Gunakan kontrol Label (RptLabel) untuk membuat tampilan berupa keterangan seperti judul
dan sebagainya. Atur propertiesnya terutama Caption.
2. Gunakan kontrol text (RptTextbox) untuk menampilkan data berupa field dan letakkan pada
bagian Detail. Properties yang diatur adalah DataMember (sesuai nama sumber datanya) data
DataField (sesuai dengan field-field yang akan ditampilkan)
3. Gunakan kontrol fungsi (RptFunction) untuk menampilkan perhitungan seperti penjumlahan
dan letakkan pada bagian Report Footer. Properties yang diatur adalah DataMember (sesuai
nama sumber datanya) data DataField (sesuai dengan field-field yang akan ditampilkan)
4. Gunakan kontrol Shape (RptShape) untuk membuat kotak atau kolom-kolom pada laporan.
5. Gunakan kontrol Line (RptLine) untuk membentuk garis pada laporan.
6. Gunakan kontrol Image (RptImage) untuk menampilkan gambar pada laporan. Properties yang
diatur adalah properties Picture.
c) Menjalankan/Memanggil Report

Untuk memanggil/menjalankan report dapat dilakukan dengan dua bentuk, yaitu laporan yang akan
ditampilkan di layar dan laporan yang akan dicetak.

1) Memanggil/Menjalankan laporan untuk layar

DataReport1.Show
2) Memanggil/Menjalankan laporan yang akan dicetak

DataReport1.PrintReport
Catatan :

DataReport1 adalah nama laporan.

Perintah tersebut dituliskan pada tombol peritah yang sesuai.

d) Contoh Penerapan

Di bawah ini adalah database sederhana dari administrasi perhotelan. Beri saja nama database ini
dengan DATAHOTEL.MDB. Diminta untuk membuat laporan tentang daftar tamu yang menginap
dengan pilihan (semua, tanggal tertentu, bulan tertentu, tahun tertentu.

Gambar 54 : Relasi Antar Tabel Database Sederhana

Penyelesaian :
1) Rancang terlebih dahulu database dengan menggunakan Microsoft Access

2) Buat seluruh tabel dan tentukan jenis field dan kunci jika ada.

3) Buatlah Query agar memudahkan dalam menghasilkan informasi yang lengkap, khusus untuk
penginapan yang menggabungkan tabel Inap, tabel Tamu, tabel Petugas, tabel Kamar dan tabel
Jeniskm. Simpanlah Query tersebut dengan nama Qinap. Setelah database selesai, jangan lupa
untuk melakukan proses Convert Database.

4) Buatlah project untuk menghasilkan aplikasi yang diinginkan.

5) Buatlah laporan dengan menambahkan Objek Data Report ke dalam project.

6) Lakukan persiapan laporan dengan membuat Data Environment

7) Tetapkanlah koneksi data untuk membuat sumberdata

8) Ciptakanlah 4 buah sumber data (klik kanan pada Connection lalu klik Add Command) karena
laporan yang akan dihasilkan sebanyak 4 buah laporan. Nama masing-masingnya biarlah seperti
aslinya (Command, Command2, Command3, dan Command4). Untuk masing-masing sumber data
dibuat dengan SQL saja.

- SQL pada Command1 (semua data)

Klik kanan pada Command1, lalu pilih Properties dan tulis SQL sbb :

Select * from QINAP


Klik Apply

- SQL pada Command2 (data tanggal tertentu)

Klik kanan pada Command2, lalu pilih Properties dan tulis SQL sbb :

Select * from QINAP Where (tglmasuk = ?)


Klik Apply

Klik tab Parameters, klik tanda tanya yang muncul, lalu tulis nama parameter pada bagian Name
dengan nama VTGL, klik Apply

Klik tab Group, tandai check box Group Command Object, klik field tglmasuk, pindahkan ke sebelah
kanan dengan tombol arah kanan

Klik tombol OK

- SQL pada Command3 (data bulan tertentu)


Klik kanan pada Command3, lalu pilih Properties dan tulis SQL sbb :

Select *, month(tglmasuk) as BULAN, year(tglmasuk) as TAHUN from QINAP Where


(month(tglmasuk) = ? and year(tglmasuk) = ?)
Klik Apply

Klik tab Parameters, klik tanda tanya yang muncul. Tanda tanya pertama beri nama pada Name
dengan VBULAN, tanda tanya kedua beri nama pada Name dengan VTAHUN, lalu klik Apply

Klik tab Group, tandai check box Group Command Object, klik field BULAN pindahkan ke sebelah
kanan dengan tombol arah kanan, field TAHUN pindahkan kesebelah kanan dengan tombol arah
kanan.

Klik tombol OK

- SQL pada Command4 (data tahun tertentu)

Klik kanan pada Command3, lalu pilih Properties dan tulis SQL sbb :

Select *, year(tglmasuk) as TAHUN from QINAP Where (year(tglmasuk) = ?)


Klik Apply

Klik tab Parameters, klik tanda tanya yang muncul dan nama pada Name dengan VTAHUN, lalu klik
Apply

Klik tab Group, tandai check box Group Command Object, field TAHUN pindahkan kesebelah kanan
dengan tombol arah kanan.

Klik tombol OK

Catatan :

Penggunaan tanya (?) dalam SQL menunjukkan pada bagian itu akan diisi oleh parameter (nilainya
tidak pasti) yang akan dikirim dari form pemanggilnya

Setelah selesai membuat SQL masing-masing sumber data, akan terlihat pada jendela Environment
seperti terlihat pada gambar di bawah ini.
Gambar 55 : Jendela Environment

Tutup jendela di atas supaya kembali ke desain report.

9) Rancanglah 4 buah laporan untuk masing-masing sumber data yang telah dibuat. Hubungkan
dengan sumber data yang sesuai.

10) Rancanglah form untuk menjalankan report yang telah dibuat dengan rancangan seperti
gambar di bawah ini.

Gambar 56 : Rancangan Form Laporan

11) Tulislah kode program pada form sebagai berikut :

Dim bl As Single

Private Sub Form_Load()

Option1.Value = True

thn.Text = Year(Date)
End Sub

Private Sub cmdlayar_Click()

Call cekbulan

If Option1.Value = True Then

If DataEnvironment1.rsCommand1.State = adStateOpen Then

DataEnvironment1.rsCommand1.Close

DataEnvironment1.rsCommand1.Open

If DataEnvironment1.rsCommand1.RecordCount = 0 Then

MsgBox “Data belum ada atau tabel masih kosong!”

Else

DataReport1.Show

End If

ElseIf Option2.Value = True Then

If DataEnvironment1.rsCommand2_Grouping.State = adStateOpen Then

DataEnvironment1.rsCommand2_Grouping.Close

DataEnvironment1.command2_Grouping tgl.Value

If DataEnvironment1.rsCommand2_Grouping.RecordCount = 0 Then

MsgBox “Data belum ada atau tabel masih kosong!”

Else

DataReport2.Show

End If

ElseIf Option3.Value = True Then

If DataEnvironment1.rsCommand3_Grouping.State = adStateOpen Then

DataEnvironment1.rsCommand3_Grouping.Close
DataEnvironment1.command3_Grouping bl, Val(thn.Text)

If DataEnvironment1.rsCommand3_Grouping.RecordCount = 0 Then

MsgBox “Data belum ada atau tabel masih kosong!”

Else

DataReport3.Show

End If

ElseIf Option4.Value = True Then

If DataEnvironment1.rsCommand4_Grouping.State = adStateOpen Then

DataEnvironment1.rsCommand4_Grouping.Close

DataEnvironment1.command4_Grouping Val(thn.Text)

If DataEnvironment1.rsCommand4_Grouping.RecordCount = 0 Then

MsgBox “Data belum ada atau tabel masih kosong!”

Else

DataReport4.Show

End If

End If

End Sub

Private Sub cmdselesai_Click()

Unload Me

End Sub

Public Sub cekbulan()

If bln.Text = “Januari” Then

bl = 1

ElseIf bln.Text = “Februari” Then


bl = 2

ElseIf bln.Text = “Maret” Then

bl = 3

ElseIf bln.Text = “April” Then

bl = 4

ElseIf bln.Text = “Mei” Then

bl = 5

ElseIf bln.Text = “Juni” Then

bl = 6

ElseIf bln.Text = “Juli” Then

bl = 7

ElseIf bln.Text = “Agustus” Then

bl = 8

ElseIf bln.Text = “September” Then

bl = 9

ElseIf bln.Text = “Oktober” Then

bl = 10

ElseIf bln.Text = “Nopember” Then

bl = 11

ElseIf bln.Text = “Desember” Then

bl = 12

End If

End Sub

Private Sub Option1_Click()


Label2.Visible = False

tgl.Visible = False

Label3.Visible = False

bln.Visible = False

Label4.Visible = False

thn.Visible = False

End Sub

Private Sub Option2_Click()

Label2.Visible = True

tgl.Visible = True

Label3.Visible = False

bln.Visible = False

Label4.Visible = False

thn.Visible = False

tgl.SetFocus

End Sub

Private Sub Option3_Click()

Label2.Visible = False

tgl.Visible = False

Label3.Visible = True

bln.Visible = True

Label4.Visible = True

thn.Visible = True

bln.SetFocus
End Sub

Private Sub Option4_Click()

Label2.Visible = False

tgl.Visible = False

Label3.Visible = False

bln.Visible = False

Label4.Visible = True

thn.Visible = True

thn.SetFocus

End Sub

Keterangan :

Kode untuk tombol Cetak tidak disertakan pada listing di atas. Anda dapat membuat kodenya
dengan meng-copy kode pada tombol Layar, lalu DataReport1.Show diganti dengan
DataReport1.PrintReport. Sesuaikan juga untuk perintah yang lain.

Anda mungkin juga menyukai