Assalammu'alaikum....Pada artikel ini saya akan memberikan tutorial membuat program entry data pelanggan memakai bahasa pemogramman delphi. Oleh karena itu, bagi pembaca dimohon untuk mempelajari bahasa pemogramman Delphi terlebih dahulu agar dapat mudah memahami.
Oh...iya sedikit saran agar cepat bisa dan cepat memahami alur program, sintaks program jangan di Copy Paste melainkan ketik ulang. Bukannya melarang, Copas diperbolehkan...toh ini cuma saran :)
Baiklah, mari mulai membuat programnya :
- Bukalah Aplikasi Xampp terlebih dahulu dan jalankan Apache serta MySQL servernya....
- Buat project baru, pilih File ---> New ---> VLC Form Application atau langsung klik New Project pada tampilan awal Delphi.
- Design Form seperti pada gambar dibawah
No | Komponen | Properties | Value |
---|---|---|---|
1 | Label1 | Caption | Kode Pelanggan |
2 | Label2 | Caption | Nama Pelanggan |
3 | Label3 | Caption | Alamat |
4 | Label4 | Caption | No Telp/Hp |
5 | Label5 | Caption | Entry Data Pelanggan |
6 | Edit1 | -- | -- |
7 | Edit2 | -- | -- |
8 | Edit3 | -- | -- |
9 | Edit4 | -- | -- |
10 | Button1 | Caption | Save |
11 | Button2 | Caption | Edit |
12 | Button3 | Caption | Delete |
13 | Button4 | Caption | Exit |
14 | DBGrid | Data Source | DM.DS |
- Menambahkan modul, Klik kanan pada Project1.exe pilih Add New – other – Delphi files – data module
- Tambahkan pada modul TADOConnection, TADOQuery, dan TDataSource, dan lakukan perubahan properties :
No | Komponen | Properties | Value |
---|---|---|---|
1 | Data Module | Name | DM |
2 | ADOConnection1 | Name | Koneksi |
Login Prompt | False | ||
3 | ADOQuery1 | Name | Query1 |
Connection | Koneksi | ||
Active | False | ||
4 | ADOQuery2 | Name | Query2 |
Connection | Koneksi | ||
Active | False | ||
5 | Data Source | Name | DS |
Data Set | Query1 |
- Select pada Koneksi (TADOConnection) dipropertisnya bagian “connection string”
Pada gambar diatas untuk Use Data Source Name pilihlah data source yang telah dibuat pada artikel kemarin, lihat disini Membuat Data Source ODBC.
Untuk no 2 dikosongkan saja dan untuk no 3 pilih database yang juga telah dibuat pada artikel sebelumnya, lihat disini Membuat Database serta tabel menggunakan XAMPP.
Langkah selanjutnya Test Connection, jika tampilan seperti gambar dibawah in maka koneksi berhasil…
- Select pada Query1 (TADOQuery1), pada properties dibagian connection…
- Dan untuk DS (TDataSource), pada propertiesnya atur seperti pada gambar…
- Pindah ke Unit1 (Form1) select pada TDBGrid1, pada propertiesnya bagian DataSource
- Selanjut pindah ke bagian Code, ketik Uses Unit2; dibawah Implementation.
- Dibagian Code, dibawah Private ketikan code berikut :
private { Private declarations } procedure bersihdata; procedure tombolmati; procedure tombolhidup; procedure tampil;
- Ketik sintak procedure berikut dibawah Uses Unit2;
private procedure tform1.tampil; begin with DM.query1 do begin sql.clear; sql.add('select * from Pelanggan'); Active := false; Active := true; end; end; procedure tform1.bersihdata; begin Edit1.clear; Edit2.clear; Edit3.clear; Edit4.clear; end; procedure tform1.tombolmati; begin Button1.Enabled := true; Button2.Enabled := false; Button3.Enabled := false; end; procedure tform1.tombolhidup; begin Button1.Enabled := false; Button2.Enabled := true; Button3.Enabled := true; end;
- Select pada form, pilih event On Show dan ketik sintaks berikut
procedure TForm1.FormShow(Sender: TObject); begin bersihdata; tampil; tombolmati; end;
- Untuk Button Save (Button1) ketik Syntax dibawah ini…
procedure TForm1.Button1Click(Sender: Tobject); begin if length(Edit1.Text) > 5 then begin messagedlg(‘Maaf, kode pelanggan harus 5 karakter’,mtWarning,mbOKCancel,0); Edit1.setfocus; exit end; if messagedlg(‘Apakah anda yakin akan menyimpan data ini?’, mtConfirmation,[mbYes,mbNo],0) = mryes then begin with dm.query2 do begin sql.clear; sql.add(‘insert into pelanggan (kd_pelanggan,nm_pelanggan,alamat,no_hp)’); sql.add(‘values (“’+ Edit1.text +’”,”’+ Edit2.text +’”, “’+ Edit3.text +’”,”’+ Edit4.text +’”)’); ExecSQL; end; tampil; bersihdata; tombolmati; ShowMessage(‘Data berhasil disimpan…’); Edit1.setfocus; end; end;
- Sebelum melakukan pengeditan data harus ditampilkan terlebih dahulu melalui metode pencarian yang dilakukan berdasarkan kode pelanggan dan sintaks di ketikan pada event TextChanged yaitu pada komponen Edit1, ketikkan...
procedure TForm1.Edit1Change(Sender: TObject); begin if Edit1.Text <> '' then begin with dm.query2 do begin sql.clear; sql.add('select * from pelanggan where kd_pelanggan="'+ Edit1.text +'"'); open; if not eof then begin Edit2.Text := FieldValues['nm_pelanggan']; Edit3.Text := FieldValues['alamat']; Edit4.Text := FieldValues['no_hp']; tombolhidup; end else begin Edit2.clear; Edit3.clear; Edit4.clear; tombolmati; end; end; end; end;
- Untuk Button Edit (Button2), ketikan...
procedure Tform1.Button2Click(Sender: Tobject); begin if messagedlg(‘Apakah anda yakin akan mengubah data ini?’, mtConfirmation,[mbYes,mbNo],0) = mryes then begin with dm.query2 do begin sql.clear; sql.add(‘update pelanggan set nm_pelanggan=”’+ Edit2.text +’”,alamat=”'+ Edit3.text +'",no_hp="'+ Edit4.text +'"'); sql.add('where kd_pelanggan="'+ Edit1.text +'"'); ExecSQL; end; tampil; bersihdata; tombolmati; ShowMessage('Data berhasil diubah...'); Edit1.setfocus; end; end;
- Untuk Button Delete (Button3), ketikkan...
procedure TForm1.Button3Click(Sender: TObject); begin if messagedlg('Apakah anda yakin akan menghapus data ini?', mtConfirmation,[mbYes,mbNo],0) = mryes then begin with dm.query2 do begin sql.clear; sql.add('delete from pelanggan where kd_pelanggan="'+ edit1.text +'"'); ExecSQL; end; tampil; bersihdata; tombolmati; ShowMessage('Data berhasil dihapus...'); Edit1.setfocus; end; end;
- Untuk Button Exit, ketikkan ...
procedure TForm1.Button4Click(Sender: TObject); begin close; end;Untuk Source Program dapa anda download : Program Entry Data Pelanggan