Blog khusus untuk berbagi ilmu dan tulisan

Membuat Laporan dengan koneksi ke database menggunakan program Delphi

Jumpa lagi bersama saya. Kali ini saya akan membahas bagaimana mengkoneksikan program delphi ke database. Oke langsung saja.

Langkah pertama di dalam PC/Leptop kita harus terinstal XAPP. Jika belum mempunyai anda dapat download di sini. Jika sudah didownload , selanjutnya dengan membuat database pada MySQL menggunakan phpMyAdmin.  Untuk lebih jelasnya bisa klik disini


Setelah database berhasil dibuat, kita akan membuat table, tentukan “Name” untuk nama table dan “Number of columns:” disini saya akan membuat 4 kolom yang nanti akan diisikan dengan “Nomor Keluarga”,”Kepala Keluarga”, “Alamat”, “Anggota Keluarga”. Kemudian anda sesuaikan table anda dengan data yang ingin anda input, pastikan Type nya benar, jika sudah tekan “Save” referensi tipe data pada MySQL. Sampai disini belum selesai. 

Selanjutnya berpindah pada delphi,
Koneksi Delphi Dengan MySQL
Buat form seperti gambar dibawah ini


Ket : 4 TLabel, 3TEdit, 1TComboBox, dan 5 TButton
//code untuk menambahkan item pada combobox,
//atau bisa juga melalui object inspector pada combobox pilih item
procedure TForm1.FormCreate(Sender: TObject);
begin
  combobox1.Items.Add ('1');
  combobox1.Items.Add ('2');
  combobox1.Items.Add ('3');
  combobox1.Items.Add ('4');
  combobox1.Items.Add ('5');
end;

//code input
procedure TForm1.Button2Click(Sender: TObject);
begin
if edit1.Text = '' then
begin
   Showmessage('Nomor Keluarga masih kosong');
   edit1.SetFocus;
end else
if edit2.Text = '' then
begin
   Showmessage('Kepala Keluarga masih kosong');
   edit2.SetFocus;
end else
if edit3.Text = '' then
begin
   Showmessage('Alamat masih kosong');
   edit2.SetFocus;
end else
if combobox1.Text = '' then
begin
   Showmessage('Anggota Keluarga masih kosong');
   combobox1.SetFocus;
end else
begin
form2.ZQuery1.Append;
form2.ZQuery1.FieldByName('Nomor Keluarga').AsString:=Edit1.Text;
form2.ZQuery1.FieldByName('Kepala Keluarga').AsString:=Edit2.Text;
form2.ZQuery1.FieldByName('Alamat').AsString:=Edit3.Text;
form2.ZQuery1.FieldByName('Jumlah Anggota').AsString:=combobox1.Text;
form2.ZQuery1.Post;
end;
end;
 //code edit
procedure TForm1.Button4Click(Sender: TObject);
begin
if edit1.Text = '' then
begin
   Showmessage('Nomor Keluarga masih kosong');
   edit1.SetFocus;
end else
if edit2.Text = '' then
begin
   Showmessage('Kepala Keluarga masih kosong');
   edit2.SetFocus;
end else
if edit3.Text = '' then
begin
   Showmessage('Alamat masih kosong');
   edit2.SetFocus;
end else
if combobox1.Text = '' then
begin
   Showmessage('Anggota Keluarga masih kosong');
   combobox1.SetFocus;
end else
begin
form2.ZQuery1.Edit;
form2.ZQuery1.FieldByName('Nomor Keluarga').AsString:=Edit1.Text;
form2.ZQuery1.FieldByName('Kepala Keluarga').AsString:=Edit2.Text;
form2.ZQuery1.FieldByName('Alamat').AsString:=Edit3.Text;
form2.ZQuery1.FieldByName('Jumlah Anggota').AsString:=combobox1.Text;
form2.ZQuery1.Post;
end;
end;
//code hapus
form2.ZQuery1.Delete;
 //code keluar
application.Terminate;
 //code ke Database
form2.Show;

Untuk menampilkan database nya seperti dibawah  ini terlebih dahulu buatlah form baru, kemudian tambahkan TZConnection, DBGrid,ZQuery, Datasource1, dan Button1 atur icon sesuai selera



Atur properties Object Inspector ZConnection1
hostname : localhost
port : 3306
protocol : mysql-5
user : root
database : sesuaikan dengan nama database
connected : true
 Pada ZQuery1 properties
Connection : ZConnection1
SQL : SELECT * FROM tbdesa
Active : True;
Pada DataSource1 properties
dataset : ZQuery1
Pada Dbgrid1 properties
Datasource : Datasource1

Lalu jika berhasil maka tampilan akan seperti ini



Selanjutnya untuk membuat laporannya, tambahkan TRvProject, TRvDataSetConnection1, TDataSetProvider, TClientDataSet, TRvRenderPDF, TRvRenderTEXT, TRvRenderHTML, TRvRenderRTF, dan atur icon sesuai selera. Contoh pada gambar berikut ini.


pada Object Inspector Properties DataSetProvide
DataSet : ZQuery1
properties Object Inspector ClientDataSet
ProviderName : DataSetProvider1
Active : True
 pada properties Object Inspector RvDataSetConnection1
DataSet : ClientDataSet1

Setelah semua component di seting seperti yang di atas kemudian doubleclick pada component Rvproject yang tadi di masukan ke dalam form, maka akan muncul halaman seperti gambar di bawah ini.


Setelah muncul halaman Ravereport kemudian klik Icon View Data Object yang berada pada bagian toolbar di atas.

Kemudian pilih Direct Data View, nanti akan terlihat Active Data Connections, pilih RvDataSetConnection1 (DT) lalu Finish
Selanjutnya klik Tools >> Report Wizard > > Simple Table
Kemudian akan tampil Select Data view you wish to use for this report pada bagian ini pilih Dataview 1 kemudian klik next , Perhatikan gambar berikut:




field-field mana saja yang akan kalian pilih, saya di sini akan memilih semua field jadi tinggal klik button ALL >> kemudian klik NEXT, akan muncul halaman Arrange Fields in the order you wish them printed pada halaman ini kita bisa mengatur field mana saja yang akan di tampilkan pertama >> NEXT >> lalu akan muncul Report Layout Printout sesuaikan dengan laporan yang akan anda buat, setelah itu klik NEXT maka akan muncul  halaman, disiini kita bisa menentukan jenis huruf apa yang akan kita pakai dan besar,kecilnya.

Setelah selesai menentukan jenis huruf dan ukurannya klik generate.
Kemudian design lah tata letaknya sesuai keinginan anda.

Setelah design selesai kemudian Save RvProject barusan, File >> Save As, simpan rvproject di tempat anda menaruh project anda, supaya mudah di cari.
setelah di save kemudian close Rave report, dan kita kembali ke delphi7.
Langkah selanjutnya adalah memanggil Rvproject yang kita buat tadi.
klik rvproject pada tab objectinspector >> Propertis >> Projectfile kemudian panggil rvproject yang disimpan tadi.
Setelah selesai memanggil Rvproject kemudian double klik pada button preview dan masukan syntax berikut ini Rvproject1.Execute;


Share:

Tidak ada komentar:

Posting Komentar

komentar di isi dengan sebaik-baiknya, agar dapat di mengerti oleh admin.

Postingan Populer

Label

Tugas (14) Linux (11) tulisan (7) Tutorial (5) Mutiara cinta (4) Cerita (3) Docker (1) bisnis (1)

Total Tayangan Halaman

Recent Posts

Pages