tutor mysql vs2008 quickreport
Post on 03-Jan-2016
62 Views
Preview:
TRANSCRIPT
humsyong@yahoo.com, ilmubarokah.wordpress.com
Tutorial membuat report
Crystal Report memiliki keunggulan berupa designer yang berbentuk visual, untuk mendesain laporan,
cukup dengan meload dataset yang terlebih dahulu diseting di visual studio, terutama untuk database
yang telah terintegrasi dengan Microsoft Visual Studio seperti Microsoft SQL Server.
Lain halnya dengan MySql, database ini tidak berintegrasi dengan VS, sehingga memerlukan perantara
untuk bisa berkomunikasi dengan .NET visual Studio. Dalam kasus pemrograman ini, diperlukan MYSQL
driver connector for VS C#, di aplikasi digunakan versi 6.24. driver tersebut dapat digunakan dengan
sempurna di kode-kode C#, akan tetapi untuk melakukan desain laporan, driver tersebut tidak dapat
digunakan, sehingga memerlukan dataset pembantu, atau biasa disebut DataSet saja. Untuk mengambil
nama field database yang digunakan, bisa menggunakan nama-nama field yang ditulis sama dengan
nama field di database.
Cara lain yang dapat digunakan yaitu dengan menggunakan Table adapter. Table adapter ini dapat
digunakan pada database terintegrasi, sedangkan untuk mySQL, masih memerlukan ODBC connector
menggunakan ODBC mySql Connector, skema laporan dapat dilihat sebagai berikut :
ODBC MySql
Connector
MySql Connector
MySql Servers
Baba
struktur databaseInterface tabel
/
Tabel adapter
DataSet1.xsd
myReport.rpt
(crystal
report)
data
Class
DataSetLoader
Mengeksekusi
query
ClassAkhirMemberi
perintah
Tampilan
laporan
Aplikasi
data
data
humsyong@yahoo.com, ilmubarokah.wordpress.com
Tutorial Cara membuat Laporan menggunakan VS C# Crystal Report, dan mySql Server :
1. Set ODBC driver connector dengan menginstal driver ODBC for MySql
- Setelah terinstal, lakukan konfigurasi di Windows,
- Ke sub menu System DSN dan pilih menu add, dan pilih driver mySQL
- Tekan finish dan muncul menu :
humsyong@yahoo.com, ilmubarokah.wordpress.com
- selebihnya diisi sesuai database dituju, di sistem DSN nantinya memunculkan data source baru.
- Penggunaan ODBC driver connector ini bersifat optional, bisa digunakan atau tidak. Di komputer
client, sangat dianjurkan untuk tidak diinstal, karena program berkomunikasi dengan driver lain.
Penggunaan ODBC driver hanya pada waktu desain interface report.
2. Launch visual Studio, dan buat project baru, add mysql connector sebagai referensi, dengan
memilih menu project->add reference, pilih tab browse, dan pilih mysql.data.dll
3. Buat dataset tabel yang akan ditampilkan pada report dengan memilih menu project->add new
item -> pilih dataset
4. Pada designer dataset, buat tabel yang akan ditampilkan, ada dua cara yang dapat digunakan,
dengan memilih menu add new Table, atau menggunakan table adapter. Di sini akan digunakan
table adapter dengan menggunakan ODBC driver, dan database default XAMPP MYSQL yaitu
“information_schema”, diawali dengan memilih menu “new connection”,
humsyong@yahoo.com, ilmubarokah.wordpress.com
Beri nama connection string tersebut, kemudian di wizard berikut, pilih use sql statement,
Kemudian pada jendela query ketikkan query yang ingin ditampilkan di database,
Untuk database relational table juga menggunakan perintah yang sama, dengan syarat tidak
boleh ada nama column yang sama
Pada kasus ini, nama table yang akan ditampilkan di report adalah table COLUMNS di database
Information_Schema.
humsyong@yahoo.com, ilmubarokah.wordpress.com
Kemudian tekan FINISH, dan akan menghasilkan table adapter di dataset1.xsd
Rename nama table adapter tersebut, dan dataset1.xsd siap digunakan
5. Pada form1, tambahkan CrystalReportViewer
humsyong@yahoo.com, ilmubarokah.wordpress.com
6. Setelah itu, pilih menu projects->add new item, dan pilih crystal report, beri nama report yang
diinginkan
7. Akan muncul wizard seperti berikut, untuk tutorial ini, pilih blank report
humsyong@yahoo.com, ilmubarokah.wordpress.com
8. Pada report baru yang dibuat, akan memiliki tampilan sebagai berikut,
9. Load dataset yang telah dipersiapkan dengan cara memilih menu
CrystalReport�Database�Database Expert, dan pilih Create new connection�ADO.NET, pada
menu berikut :
humsyong@yahoo.com, ilmubarokah.wordpress.com
Load Dataset yang telah dibuat, tekan finish
humsyong@yahoo.com, ilmubarokah.wordpress.com
Tekan OK dan dataset sudah dapat didesain di report.
10. Pilh nama Field yang ingin ditampilkan, pada report, hanya yang diletakkan pada section Details
yang akan berulang mengikuti susunan row hasil queri. Untuk melakukan preview, dapat dipilih
di Crystal_repots�preview reports
11. Sampai di sini, report telah siap digunakan, beralih pada form1.cs, buka halaman code form1.cs
tambahkan code using berikut :
humsyong@yahoo.com, ilmubarokah.wordpress.com using MySql.Data.MySqlClient;
12. Selanjutnya kode untuk meload data dari database dapat dilihat dari code berikut
private void loadReport()
{
DataSet1 DataReport;
MySqlConnection conn;
MySqlCommand cmd;
MySqlDataAdapter adap;
string strConn="Server=localhost;
Database=information_schema;"
+"User ID=root; Password=; charset=utf8;Allow
Zero Datetime=true;";
conn = new MySqlConnection(strConn);
adap = new MySqlDataAdapter();
DataReport = new DataSet1();
DataReport.Clear();
cmd = conn.CreateCommand();
cmd = new MySqlCommand("select * from COLUMNS", conn);
//cmd.CommandType = CommandType.StoredProcedure;
//cmd.Parameters.AddWithValue("?in_information_schema",
"information_schema");
conn.Open();
adap = new MySqlDataAdapter();
adap.SelectCommand = cmd;
conn.Close();
adap.Fill(DataReport, "DataTable1");
tutorCrReport C = new tutorCrReport();
C.SetDataSource(DataReport);
crystalReportViewer1.ReportSource = C;
} Pada bagian baris kode yang di”comment”, dapat dipergunakan untuk
meload stored procedure, sementara ini menggunakan perintah query
“select * from COLUMNS” dapat diganti dengan nama stored procedure,
serta ?in_information_schema dapat diganti dengan nama stored
procedure yang meload data
13. Hasil akhir laporan berupa berikut :
humsyong@yahoo.com, ilmubarokah.wordpress.com
Lakukan modifikasi report, dan pelajari lebih lanjut tentang group field, function field, running
total field, grafik dan yang lain.
14. Selamat mencoba dan semoga sukses
Tambahan :
Pada saat runtime, text, maupun object lain yang ada di report dapat diubah, termasuk jika dalam report
hendak memuat gambar yang berasal dari program (bukan gambar statis), bisa menggunakan cara
berikut :
Tambahkan using : using CrystalDecisions.Shared;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Windows.Forms;
Tambahkan kode berikut :
TextObject textObject;
textObject =
cr.ReportDefinition.Sections[3].ReportObjects["N
amaTextObjectDiReport"] as TextObject;
textObject.Text = "Isi apapun di sini"];
Untuk Gambar, pada data set, tambahkan tabel baru, dan
sebuah field dengan tipe array byte
tambahkan field tersebut pada report, dan lakukan pengisian
field tersebut dengan array byte, bisa juga dengan tipe jpeg /
bitmap, dsb, yang dikonversi menjadi byte dengan fungsi
sebagai berikut :
private static byte[]
ConvertImageToByteArray(System.Drawing.Image imageToConvert,
System.Drawing.Imaging.ImageFormat formatOfImage)
{
byte[] Ret;
try
{
using (MemoryStream ms = new MemoryStream())
humsyong@yahoo.com, ilmubarokah.wordpress.com {
imageToConvert.Save(ms, formatOfImage);
Ret = ms.ToArray();
}
}
catch (Exception) { throw; }
return Ret;
}
Hasilnya berupa array byte, dan load pada report dengan cara
byte[] arrayByteGambar = ConvertImageToByteArray(ImageSource,
System.Drawing.Imaging.ImageFormat.Jpeg);
// System.Drawing.Imaging.ImageFormat.Jpeg
// dapat diganti tergantung tipe image
DataReport.Tables["TableGambar"].Rows.Add(arrayByteGambar);
top related