P. 1
Dasar Crystal Report

Dasar Crystal Report

|Views: 1,944|Likes:
Dipublikasikan oleh Danang Wijanarko

More info:

Published by: Danang Wijanarko on Jan 26, 2012
Hak Cipta:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

06/04/2013

pdf

text

original

Dasar Crystal Report

Pertama-tama silahkan buat file report pada crystal report yg dalam hal ini saya menggunakan versi 8.5 Perhatikan gambar dibawah ini, yang adalah step by step dari proses pembuatan dari awal sampe jadi. 1. Membuat Data Source SQL Server sebagai database sumbernya

2. Setting ConnectionString

3. Memilih Tabel yang dijadikan sumber report

4. Memilih Field-field yang akan ditampilkan pada report

dan gambar dibawah ini adalah step by stepnya. Tampilkan Control Crystal ReportViewer pada ToolBox dengan cara memilih menu Project .Component . jadi file reportnya akan dibuka melalui Visual Basic.Setelah tahap design reportnya selesai. saatnya kita kombinasikan dengan Visual Basic. 1.Reference 2. Referensikan Object Crystal Report dengan cara memilih menu Project .

3. Letakkan Control Crystal Report Viewer pada Form Design .

OpenReport(App.Application Private Sub Form_Load() '---ini utk membuka file report yg dlm hal ini '---namanya report1.ViewReport End Sub .Ok tahap mendesign dalam vb sudah selesai. sekarang perlu koding sedikit utk bisa menampilkan hasil report ke dalam vb tersebut.rpt") '---ini lah inti dari kode dlm vb yg fungsinya '---menampilkan data kedalam repot melalui '---komponen crviewer yg diletakkan pada form vb CRViewer1.Report Dim Apli As New CRAXDRT.rpt Set Report = Apli.Path & "\report1.ReportSource = Report CRViewer1. Caranya tidak susah koq ikuti aja kodenya seperti dibawah ini : '---deklarasi variabel ini pada general declarations Dim Report As CRAXDRT.

RecordSelectionFormula = "{Customers.Dan hasilnya seperti gambar dibawah ini : Sun Oct 31 2010 23:59:59 GMT+0700 (SE Asia Standard Time) Now! Comments (3) RecordSelectionFormula Terkadang ada saatnya laporan yg dibuat itu perlu di filter berdasarkan kriteria tertentu sehingga hanya data yg memenuhi kriteria itulah yg akan tampil dalam crystal report. Sintak kodenya adalah seperti dibawah ini Report. saya akan berikan contoh sederhana.CustomerID} LIKE 'A*'" hasilnya adalah seperti gambar dibawah ini : . Berikut ini. yg akan menampilkan semua data yg berawalan huruf A.

5 pada vb memang banyak cara. . Langkah .> Components -> Controls -> pilih Crystal Report Viewer Control tekan OK 4. If . masuk ke vicual basic 6. Pastikan ADODB nya sudah diaktifkan kalo belum caranya : Project -> References -> pilih Microsoft AktiveX Data Object 2. Project . dim dbconn as New. <====startscript====> 7.State = adStateOpen Then Exit Sub 12. Pastikan Crystall report sudah terinstall 2. Public Sub koneksi_database() 9.0 3.langkahnya adalah : 1.Comments (1) Menggunakan Crystal Report 8.CursorLocation = adUseClient . nah kalo udah kamu tinggal tulis script untuk Koneksi databasenya : .buat form baru dengan nama frmtest dan tulis script di bawah ini : 6.ADODB.0 Library 5. With dbconn 11. bisa gunakan data environment untuk Connection ke databasenya atao bisa juga menggunakan Crviewer dan kita kirim parameternya dalam crviewer tersebut. On Error GoTo NoConn 10.connection 8.

Data Source=" Tampilkan Data Berdasarkan Tgl report. nomor urutjuga membuat laporan kita lebih sedap dipandang.User ID=dba.ConnectionString = "Provider=MSDASQL. . "yyyy. "yyyy.dd") & ") TO Date(" & Format (Form2.13.tgljurnal} IN Date(" & Format (Form2. berikut contoh laporan menggunakan nomor urut : .Value.RecordSelectionFormula = "{Jurnal.dt1.Persist Security Info=False.Value.mm.1. Menggunakan Crystal Report 8.dt2.dd") & ")" Membuat nomor urut pada laporan. selain supaya memudahkan membaca laporan yang kita sajikan.mm.5 [23:58 | 0 komentar ] Sebuah laporan yang kita buat terkadang mebutuhkan nomor urut data yang ditampilkan.

ini dia caranya.. kurang lebih seperi ini caranya : .. kita koneksikan laporan kita ke database caranya seperti postingan saya sebelumnya disini contoh laporan saya menggunakan database Nortwind dengan table Supplier.Bagaimana caranya. disini saya menggunakan Crystal Report 8.5. setaleh ditata sedemikian rupa akhirnya jadi laporan seperti ini : Nahh…. Mari kita buka program crystal report.sekarang tinggal mengisi nomor urut yang saya kasih dengan tanda warna merah tersebut diatas.

. click kanan dan pilih new. Pada tree view Running Total Fields.Click menu insert Field Object. maka akan muncul form Create Running Total Field : Isi Runnig Total Name suka-suka sobat semua. maksudnya adalah kita buat Count data dari SupplierID dari database yang kita pilih. muncul form Filed Explorer. Isi Field to summarize dengan Field Supplier ID dan type of summary dengan Count. sehingga nantinya apabila datanya ada 100 maka noUrut akan terisi 1-100 sesuai dengan data yang ada. Disini sedikit saya jelaskan maksud dari konfigurasi diatas.

Bingung ya…sama saya juga… hehehehehehe…. Maka pada form Field Object pada tree view Running Total Filed akan muncul konfigurasi yang telah kita buat sebelumnya. Maka hasilnya akan seperti ini : . Seletelah konfigurasai diatas selesei click OK.Apabila kita menginginkan nomor urut menjadi nomor 1 lagi dengan group data yang berbeda. maka pada On change group kita isi sesuai dengan field yang kita inginkan supaya nomor urut meng-counter manjadi nomor 1 lagi. Sekarang tinggal kita letakkan nourut diatas pada laporan.

mdb.Jet.ReportSource = crReport CRViewer1.Application crReport As New CRAXDRT." & _ "Data Source=" & App. Dim Dim Dim Dim crApplication As New CRAXDRT.Report oRS As Recordset oConn As New Connection Private Sub Form_Load() oConn.Location = App.Tables(1).Database.MousePointer = vbDefault End Sub Perhatikan lagi kode diatas.Open "SELECT * FROM customers"..SetDataSource oRS. saya memilih type ADO sbg koneksi databasenya.OpenReport(App.Database.Path & "\northwind.terimakasih sebelumnya..rpt") Screen..Path & "\Northwind. semoga bermanfaat.Persist Security Info=False" Set oRS = New Recordset oRS.Open "Provider=Microsoft. adLockBatchOptimistic Set crReport = crApplication.Path & "\northwind. pada waktu saya mendesign report. adOpenForwardOnly..Database.DiscardSavedData '----apabila koneksi crystalreport nya menggunakan type ole db 'crReport.oiya minta komentarnya ya. amin..mdb" '--apabila koneksi crystalreport nya menggunakan type ado crReport.. Bagaimana caranya kita tau mengunakan type ADO? Caranya . oConn..Demikian dulu sobat untuk informasinya.mdb" 'crReport.ViewReport Screen.SetLogOnInfo App.MousePointer = vbHourglass crReport.Path & "\report1. 3.0.CursorLocation = adUseServer oRS..Tables(1)..4. 1 CRViewer1..OLEDB.

nah pada contoh kode diatas. saya sudah memberi tanda markup sebagai alternatif apabila type koneksinya OLEDB.klik menu Database . itulah type koneksi database yang digunakan pada reportnya.Set Location pada crystal report maka akan tampil seperti gambar dibawah ini : Perhatikan lingkaran merah diatas. Setelah saya menambahkan kode diatas maka si crystalreport tidak lagi menampilkan error seperti gambar dibawah ini : .

Application dbTable As CRAXDRT.SQLQueryString = sSQL .SqlQueryString Dim Dim Dim Dim Report As CRAXDDRT.Tables dbTable.rpt") For Each dbTable In Report." Exit Sub End If Next '---ini inti utk menyaring data dgn SQLQueryString sSQL = "SELECT * FROM Customers WHERE CustomerID LIKE 'W %'" Report. "123" If dbTable.Database.OpenReport(App.Path & "\report1.Report apli As New CRAXDRT.TestConnectivity = False Then MsgBox "Error pada koneksi database.SetLogOnInfo "rudi". "SA".DatabaseTable sSQL As String Private Sub Form_Load() Set Report = apli. "northwind".

ViewReport Screen.DiscardSavedData Screen.ReportSource = Report CRViewer1.MousePointer = vbDefault End Sub Kode diatas adalah utk menampilkan data yg customerID nya berawalan W dan hasilnya spt ini : Dan kalo diganti kodenya pada variabel sSQL supaya menampilkan CustomerId yg berawalan huruf B hasinyal spt ini .MousePointer = vbHourglass CRViewer1.Report.

jadi crystal report hanya menerima data dari vb. Dim Report As CRAXDRT. dalam hal ini si crystal report sama sekali tidak dihubungkan dengan database.Report Dim reportApplication As New CRAXDRT.Application .Designlah report (dalam hal ini cuma ada 3 formula) untuk menampung data yang dikirim melalui vb. Ingat ya. hasilnya seperti gambar dbawah ini. nah setelah design report selesai. kodingnya seperti dibawah ini.

comm Report.UID=root.ActiveConnection = cn .Dim cn As New Connection Dim comm As New Command Private Sub Form_Load() cn.customerid}" Report.GetItemByName("fcompany").MousePointer = vbDefault End Sub Dan hasil dari kode diatas seperti gambar dibawah ini .PWD=.AddADOCommand cn.rpt") Report.Text = "{ado.FormulaFields.Path & "\report1.ReportSource = Report CRViewer1.ViewReport Screen.GetItemByName("fKode").SERVER=localhost.contactname}" Report.CommandText = "SELECT * FROM customers" .OPTION=3" With comm .FormulaFields.51 Driver}.Open "DRIVER={MySQL ODBC 3.FormulaFields.OpenReport(App.DiscardSavedData Screen.CommandType = adCmdText End With Set Report = reportApplication.Database.GetItemByName("fcontact")." & _ "DATABASE=northwind.MousePointer = vbHourglass CRViewer1.Text = "{ado.Text = "{ado.companyname}" Report.

Kali ini saya coba menggunakan StoreProcedure dengan satu parameter sebagai source data nya Crystal Report.yukkk. kita bisa menggunakan database apa saja utk menampilkan reportnya karena crystal report tidak terikat dengan database. Pilihlah StoreProcedure pada saat menentukan data source reportnya..mareeee 1..Keuntungan dari cara diatas adalah. dan storeprocedurenya seperti contoh dibawah ini: create procedure selectCustomer @customerid varchar(5) AS select * from customers where customerid = @customerid Baiklah sekarang mari kita design reportnya. ... Jadi kita bisa meng custumize data apa saja yang mau ditampilkan ke crytal report.

Setelah memilih store procedure maka akan keluar settingan parameter kosongkan saja nilainya dgn memberi tanda centang Set to Null Value.2. .

3. . Setelah parameter selesai disetting maka pilih lah field-field yang mau ditampilkan dalam contoh gambar dibawah ini hanya 2 field yaitu CustomerID dan CompanyName.

Setelah di jalankan saya mencoba memasukkan id customer pada textbox pencarian dgn kode wolza dan hasilnya seperti gambar dibawah ini : .4.

Application Private Sub Form_Load() conn.Tables(1).Report objApplication As New CRAXDRT.Path & "\report1. Dim Dim Dim Dim conn As New Connection cmd As New Command Report As CRAXDRT.OpenReport(App.Database.rpt") Report.SetLogOnInfo "rudi".Open "Provider=SQLOLEDB." & _ "UID=sa." & _ "Initial Catalog=northwind." & _ "Data Source=rudi. .Berikut ini kode untuk memanggil crystal report dan parameter StoreProcedure nya dalam Visual Basic 6.PWD=123" End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Set Report = objApplication.

ReportSource = Report CRViewer1.ViewReport End If End Sub ."northwind". "sa".AddCurr entValue Text1.GetItemByName("@CUSTOMERID").ParameterFields.Text CRViewer1. "123" '---kirim parameter ke storeprocedure Report.

You're Reading a Free Preview

Mengunduh
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->