Friday, 27 November 2015

Membuat Aplikasi Dari Delphi

Delphi adalah sebuah bahasa program yang digunakan untuk membuat sebuah program aplikasi, dengan kegunaannya diantaranya adalah untuk membuat aplikasi berbasis windows, merancang program berbasis grafis, berbasis jaringan dan juga berbasis .Net (Internet).
Keunggulan-keunggulan Bahasa Program Delphi adalah IDE (Integrated Developtment Environment) adalah salah satu dari keunggulan Program Delphi yang didalamnya terdapat menu-menu yang memudahkan programmer untuk membuat sebuah proyek program, Proses Kompilasi cepat, pada saat program dijalankan (run) maka secara otomatis akan dibaca sebagai program tanpa dijalankan terpisah, ini yang saya suka dari program Delphi, tanpa susah-susah untuk mengkompilasi terlebih dahulu, dan yang lainnya adalah mudah digunakan karena bahasa pemograman Delphi adalah bahasa turunan dari Pascal sehingga tidak perlu suatu penyesuaian lagi.
Mungkin itu sedikit penjelasan tentang Delphi.
Disini penulis akan membahas bagaimana membuat aplikasi sederhana dari Delphi dengan menggunakan database access.
Langkah-langkah yang harus dipersiapkan adalah Aplikasi Borland Delphi dan Microsoft Access.
Buatlah sebuah database dari Microsoft Access dengan nama db_fantasi (bisa disesuaikan saja) dan di dalamnya terdapat sebuah table dengan nama table tb_barang, dan untuk struktur tabelnya bisa dilihat di bawah ini :
Struktur Tabel
Access – Tabel Barang
Setelah kita membuat sebuah struktur database dan table, maka untuk selanjutnya bukalah program Delphi dan setelah itu buat sebuah form dengan cara klik menu file – new – form.  Setelah jendela kerja form baru muncul maka design lah form nya untuk tampilan aplikasinya, adapun design formnya bisa anda lihat di gambar berikut ini :
Design Form Aplikasi
Form Input Barang
Properties dari Form Data :
Properties
Properties Form Data
Kemudian buat satu form lagi dengan tampilan sebagai berikut :
Form Input Data
Form Input Data
Properties dari Form Data :
Properties 2
Properties Form Input Data
Setelah selesai membuat form data dan form input data, marilah kita simak ilustrasi programnya.
  • Ketika Tombol Add Di Klik maka Form Input Data Akan Tampil (show)
  • Ketika Tabel Barang (TbBarang) di pilih kemudian tombol Edit Di Klik Maka Form Edit Data Akan Tampil (show)
  • Ketika Tabel barang (TbBarang) di pilih kemudian tombol Delete di klik maka terhapuslah data barang
  • Ketika Tombol Exit di klik maka selesai
  • Ketika Pencarian dilakukan maka tampilan hasil pencarian di List Tabel Barang.
Ketika kita sudah mulai paham pada ilustrasi program di atas, maka langsung kita membuat listing kode agar program tersebut berjalan sesuai dengan apa yang kita ilustrasikan. Sebelum kita memberikan listring kode terhadap setiap perintah maka yang harus kita lakukan adalah menkoneksikan database dan table pada form tersebut, untuk langkah koneksi database telah saya bahas dulu, bagi anda-anda yang belum mengetahuinya bisa di lihat disini.
Menampilkan Data Pada Listview
Cara untuk menampilkan data pada listview adalah letakan listing kode Form berikut ini pada event onActivate.
procedure TForm1.FormActivate(Sender: TObject);
var
dt:TListItem;
no:integer
begin
no:=0;
With ADOQuery1 do
Begin
Close;
SQL.Clear;
SQL.Add(‘SELECT * FROM tb_barang’);
open;
//Menampilkan Data Dalam Listview
TbBarang.Clear;
if Not isEmpty then
begin
while not eof do
begin
inc(no);
dt:=Tbbarang.Items.Add;
dt.Caption:=IntToStr(no);
dt.SubItems.Add(FieldValues[‘kd_barang’]);
dt.SubItems.Add(FieldValues[‘nama_barang’]);
dt.SubItems.Add(FieldValues[‘satuan’]);
dt.SubItems.Add(FieldValues[‘qty’]);
dt.SubItems.Add(FieldValues[‘harga_beli’]);
dt.SubItems.Add(FieldValues[‘harga_jual’]);
next;
end;
end;
end;
end;
Membuat Kode Menjadi Auto Generate (Membuat Kode Barang Secara Otomoatis)
Ketika tombol add di klik maka akan tampil form input data dan langsung terjadi Generate terhadap Kode Barang. Untuk listing kodenya bisa anda lakukan dengan cara double klik tombol add, dan setelah itu letakkan listing kode berikut ini :

procedure TForm1.AddClick(Sender: TObject);
Var
Ret:String;
GID:Integer;
begin
Ret:=”;
with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add(‘SELECT * FROM tb_barang’);
Open;
if (Fields.FieldByName(‘kd_barang’).IsNull)or(IsEmpty) then
ret:=’B’+’-0000001′
else
begin
GID:=ADOQuery1.RecordCount+1;
if (GID>=0)and(GID<10)then
ret:=’B’+’-000000’+IntTostr(GID)
else if(GID>9)and(GID<100)then
ret:=’B’+’-00000’+IntToStr(GID)
else if (GID>99)and(GID<1000)then
ret:=’B’+’-0000’+IntTostr(GID)
else if (GID>999)and(GID<10000)then
ret:=’B’+’-000’+IntToStr(GID)
else if (GID>9999)and(GID<100000) then
ret:=’B’+’-00’+IntTostr(GID)
else if (GID>99999)and(GID<1000000)Then
ret:=’B’+’-0’+IntTostr(GID)
else if (GID>999999)and(GID<10000000)then
ret:=’B’+’-‘+IntTostr(GID)
end;
end;
application.CreateForm(TForm2, Form2);
Form2.Kode.Text:=ret;
Form2.Showmodal;
end;
Memberikan Perintah Pindah Ke TEdit yang lain ketika tombol Enter Di Tekan dan memFilter Inputan
Memberikan perintah ketika tombol Enter di tekan dan memFilter Input TEdit apakah hanya huruf, angka atau bahkan gabungan huruf dan angka, Untuk memberikan perintah tersebut klik lah pada pada TEdit nama_barang dan pada object inspector pilih menu event dan pilih OnKeyPress lalu isikan listing kode berikut ini :
procedure TForm2.Nama_barangKeyPress(Sender: TObject; var Key: Char);
begin
If Key=#13 Then
satuan.SetFocus;
end;
Listing kode tersebut di atas, memberikan perintah pada edit nama barang ketika di enter maka kursor akan pindah ke satuan.
Pilih Kembali Edit Harga Beli lalu pilih menu event dan pilih OnKeyPress lalu isikan listing kode berikut ini :
procedure TForm2.BELIKeyPress(Sender: TObject; var Key: Char);
begin
If Key=#13 Then
Jual.SetFocus;
If Not (Key in[‘0′..’9′,’.’,#8]) then
Key:=#0;
end;
listing kode diatas, memberikan perintah kepada Edit Harga Beli ketika di tekan enter maka kursor akan pindah ke jual, dan memfilter inputan pada Edit Harga Beli yaitu hanya boleh berisi angka dari 0 – 9.
Dan untuk seterusnya bisa dilakukan seperti listing kode di atas sesuai dengan kebutuhan.
Listing Kode Untuk Tombol Save (Simpan)
Tombol Save berfungsi untuk memberikan perintah ketika tombol save di tekan maka data yang telah diimputkan pada form input data akan di simpan dalam database yang telah kita buat dan kita koneksikan tadi.
Untuk Listing kodenya bisa ada lihat di bawah ini :
procedure TForm2.SaveClick(Sender: TObject);
begin
Try
If (nama_barang.Text=”) or (Satuan.Text=”) or (Qty.Text=”) or (Beli.Text=”) or (Jual.Text=”)Then
Begin
Messagedlg(‘Tidak Boleh Ada Data Yang Kosong!’,mtError,[mbOK],0);
Nama_barang.SetFocus;
end
else
begin
//Untuk Mencari Kode Barang Apakah Sudah Ada Atau Belum, Kalau tidak Ada Data Akan Disimpan
If Not Form1.ADOQuery1.Locate(‘kd_barang’,kode.Text,[]) Then
Begin
With Form1.ADOQuery1 do
begin
SQL.TEXT:=’INSERT INTO tb_barang VALUES(‘+””+ Kode.Text +””+’,’+””+ nama_barang.Text +””+’,’+””+ satuan.Text +””+’,’+””+ qty.Text +””+’,’+””+ Beli.Text +””+’,’+””+ Jual.Text +””+’)’;
ExecSQL;
Form2.Close;
Messagedlg(‘Proses Penyimpanan Data Berhasil’,mtInformation,[mbOK],0);
end;
end
else
begin
With Form1.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add(‘UPDATE tb_barang SET nama_barang=”‘+ nama_barang.Text +'”, satuan=”‘+ satuan.Text +'”, qty=”‘+ qty.Text +'”, harga_beli=”‘+ beli.Text +'”, harga_jual=”‘+ Jual.Text +'” Where kd_barang=”‘+ Kode.Text +'”‘);
ExecSQL;
Form2.Close;
Messagedlg(‘Proses Perubahan Data Berhasil’,mtInformation,[mbOK],0);
end;
end;
end;
Except
Messagedlg(‘Terjadi Kesalahan Dalam Proses Input dan Atau Update Data’,mtError,[mbOK],0);
end;
end;
Setelah Selesai Kita tinggal memberikan perintah kepada tombol exit, dengan hanya memberikan listing kode Close;. Kembali lagi kepada Form data, selanjutnya adalah memberikan perintah pada tombol Edit, tombol edit ini berfungsi, merubah ada ketika terjadi kesalahan ketika dalam penginputan data, dengan cara memilih data yang akan di ubah setelah itu kita klik tombol Edit, langkahnya sama seperti di atas dan masukkan lah listing kode berikut ini :
procedure TForm1.EditClick(Sender: TObject);
begin
try
with TbBarang.Selected do
begin
Index;
Form2.Kode.Text:=SubItems.Strings[0];//Kode Barang
Form2.Nama_barang.Text:=SubItems.Strings[1];//Nama Barang
Form2.Satuan.Text:=SubItems.Strings[2];//Satuan
Form2.QTY.Text:=SubItems.Strings[3];//Quantity barang
Form2.BELI.Text:=SubItems.Strings[4];//Harga Beli
Form2.JUAL.Text:=SubItems.Strings[5];//Harga jual
end;
Form2.Show;
Form2.Nama_barang.SetFocus;
except
MessageDlg(‘Tidak ada data yang terseleksi pada grid data !’,mtInformation,[mbOK],0);
end;
end;

Memberikan perintah pada tombol Delete (Hapus), Isikanlah listing kode berikut Ini :
procedure TForm1.DeleteClick(Sender: TObject);
var
dt:TListItem;
no:integer;
begin
//Proses Hapus Data
try
TbBarang.Selected.Index;
with ADOQuery1 do
begin
Close;
SQL.Text:=’DELETE FROM tb_barang WHERE kd_barang=’+””+tbbarang.Selected.SubItems.Strings[0]+””;
if MessageDlg(‘Anda yakin akan menghapus data Barang dengan nama : ‘+TbBarang.Selected.SubItems.Strings[1]+’?’,mtConfirmation,[mbYES,mbNO],0)=id_YES then
begin
ExecSQL;
no:=0;
With ADOQuery1 do
Begin
Close;
SQL.Clear;
SQL.Add(‘SELECT * FROM tb_barang’);
open;
//Menampilkan Data Dalam Listview
TbBarang.Clear;
if Not isEmpty then
begin
while not eof do
begin
inc(no);
dt:=Tbbarang.Items.Add;
dt.Caption:=IntToStr(no);
dt.SubItems.Add(FieldValues[‘kd_barang’]);
dt.SubItems.Add(FieldValues[‘nama_barang’]);
dt.SubItems.Add(FieldValues[‘satuan’]);
dt.SubItems.Add(FieldValues[‘qty’]);
dt.SubItems.Add(FieldValues[‘harga_beli’]);
dt.SubItems.Add(FieldValues[‘harga_jual’]);
next;
end;
end;
end;
end;
end;
except
MessageDlg(‘Operasi gagal dilakukan ! tidak ada data yang terseleksi pada Tabel data’,mtInformation,[mbOK],0);
end;
end;
Memberikan perintah pada Tedit Pencarian data, Pencarian data berfungsi untuk melakukan pencarian pada table barang, dengan cara memasukan kata yang kita cari pada TEdit Cari, dan dikasus ini saya menggunakan metode like yaitu pencarian data yang akan ditampilkan pada table barang adalah yang menyerupai atau mirip dengan kata kunci yang kita masukkan, kata kunci yang digunakan bisa dari kode barang dan atau nama barang, langkahnya bouble klik Edit Cari dan isikan listing kode berikut ini :
procedure TForm1.CariChange(Sender: TObject);
//Menampilkan Isi Tabel Dalam List
var dt : TlistItem;
no : integer;
begin
no :=0;
With ADOQuery1 do Begin
Close;
SQL.Clear;
SQL.Add(‘select * from tb_barang Where kd_barang like “%’ + cari.Text + ‘%” or nama_barang like “%’ + cari.Text + ‘%”‘);
open;
//Menampilkan Data Dalam Listview
TbBarang.Clear;
if Not isEmpty then
begin
while not eof do
begin
inc(no);
dt:=TbBarang.Items.Add;
dt.Caption:=IntToStr(no);
dt.SubItems.Add(FieldValues[‘kd_barang’]);
dt.SubItems.Add(FieldValues[‘nama_barang’]);
dt.SubItems.Add(FieldValues[‘satuan’]);
dt.SubItems.Add(FieldValues[‘qty’]);
dt.SubItems.Add(FieldValues[‘harga_beli’]);
dt.SubItems.Add(FieldValues[‘harga_jual’]);
next;
end;
end;
end;
end;
Memberikan Perintah pada Tombol Refresh, Untuk langkah-langkahnya sama seperti yang lainnya, dan isikan listing kodenya sebagai berikut :
procedure TForm1.BitBtn1Click(Sender: TObject);
var
dt:TListItem;
no:integer;
begin
no:=0;
With ADOQuery1 do
Begin
Close;
SQL.Clear;
SQL.Add(‘SELECT * FROM tb_barang’);
open;
//Menampilkan Data Dalam Listview
TbBarang.Clear;
if Not isEmpty then
begin
while not eof do
begin
inc(no);
dt:=Tbbarang.Items.Add;
dt.Caption:=IntToStr(no);
dt.SubItems.Add(FieldValues[‘kd_barang’]);
dt.SubItems.Add(FieldValues[‘nama_barang’]);
dt.SubItems.Add(FieldValues[‘satuan’]);
dt.SubItems.Add(FieldValues[‘qty’]);
dt.SubItems.Add(FieldValues[‘harga_beli’]);
dt.SubItems.Add(FieldValues[‘harga_jual’]);
next;
end;
end;
end;
end;
Tahap demi tahap telah kita selesaikan.. maka kalau misalnya tidak ada kesalahan maka program tersebut akan berjalan sesuai dengan ilustrasi yang telah kita bahas di atas, semoga Program Aplikasi dari Delphi ini bisa menjadi referensi atau pembelajaran bagi rekan-rekan yang memang sedang mempelajari membuatan program dari Borland Delphi.

No comments:

Post a Comment