Anda di halaman 1dari 13

PRAKTIKUM PEMROGRAMAN CLIENT SERVER

UNIVERSITAS TEKNOLOGI YOGYAKARTA


PROGRAM CRUD

1. Buatlah database akademik terlebih dahulu menggunakan Sqlserver


Management Studio

2. Buatlah Tabel mhs pada database akademik dengan field :

Author : Khoirudin, S.Kom

Page 1

Jadikan nim sebagai primary key, lalu simpan table dengan nama tb_mhs.
3. Setelah pembuatan database selesai lanjutkan ke pembuatan aplikasi
menggunakan Delphi dengan Form pertama seperti berikut :

Komponen yang digunakan :


Label
4 buah
(standard)
Edit
3 buah
(standard)
Button
5 buah
(standard)
Datetimepicker
1 buah
(win32)
DBgrid
1 buah
(datacontrol)
Beri nama untuk masing-masing komponen :
Edit1
Ednim
Edit2
Ednama
Edit3
Edalamat
Datetimepicker1
tgl_lahir
Beri nama Form dengan nama Fmhs pada propertiesname

Author : Khoirudin, S.Kom

Page 2

Simpan Form dengan nama Umhs di folder yang sudah kita tentukan
(menggunakan save all agar semua komponent form bisa tersimpan).
Biasakan setiap pembuatan form disimpan terlebih dahulu agar dalam pencarian
form pada proses pembuatan aplikasi selanjutnya dapat lebih mudah.
Setelah menyimpan Fmhs dengan nama Umhs simpan juga Project dengan
nama Akademik atau sesuai keinginan nama aplikasi mau disimpan dengan
nama apa.

Author : Khoirudin, S.Kom

Page 3

(kalo dilab jangan disimpan di C nanti hilang kena Deepfreeze )


4. Setelah selesai pembuatan form pertama (Fmhs) selanjutnya buat datamodule
yang akan kita gunakan untuk meletakkan komponen penghubung aplikasi ke
database (komponen penghubung database bisa juga diletakkan di form).
Buat data module pada FileNewDatamodule
Ganti nama DataModule pada properties Name dengan nama DM.
Masukkan komponen yang akan kita gunakan untuk menghubungkan aplikasi
dengan database.
Adoconnection
AdoQuery
DataSource

1 buah (terletak pada komponen palette ADO)


2 buah (terletak pada komponen palette ADO)
1 buah (terletak pada komponen palette DataAcces)

Ganti nama komponen tersebut


Adoconnection1koneksi (digunakan untuk menghubungkan ke database)
Adoquery1Qumum (akan kita gunakan untuk memproses Query)
AdoQuery2Qmhs (akan kita gunakan untuk menampilkan data table)
DataSource1DSmhs (digunakan untuk menhubungkan ke Form (menampilkan
data pada DBgrid).

Author : Khoirudin, S.Kom

Page 4

5. Hubungkan database ke Delphi


Klik 2x pada AdoconnectionBuild

Pilih Provider SQLServernext

Tentukan database yang akan kita gunakan

Author : Khoirudin, S.Kom

Page 5

Pada select server name sesuaikan dengan Server Name di SQL SERVER

Pilih database yang akan digunakan.


Test Connection,jika sukses maka koneksi ke database telah berhasilOK

Author : Khoirudin, S.Kom

Page 6

6. Atur Properties pada setiap komponen di DM.


Properties Koneksi:
Login PromptFalse
ConnectedTrue
Properties Qumum :
ConnectionAdoConnection1
Properties Qmhs :
ConnectionAdoconnection1
SQLselect * from tb_mhs (mhs adalah nama table yang kita buat)
Activetrue
Properties DSmhs :
DataSetQmhs
Simpan DM dengan nama Udm (save all).
7. Koneksikan antara Fmhs dengan DM dengan cara klik pada form lalu gunakan
ALT+F11 sebagai hotkey untuk menghubungkan antar form.

Pada gambar diatas tampil Udm, maksudnya Fmhs akan dihubungkan dengan
form mana,karena yang dibuat selain Fmhs cuma 1 maka hanya muncul 1 yaitu
Udm.

Author : Khoirudin, S.Kom

Page 7

Dalam sintaks tanda kalau sudah terhubung ada pada Uses, gambar tersebut
menjelaskan kalau Fmhs terhubung dengan Udm (uses Udm).

8. Atur properties DbGrid pada Fmhs


DataSourceDSmhs
Untuk merapikan tampilan pada DbGrid klik 2x pada DbGrid,Add new sesuai
jumlah field pada table

Atur Properties pada 0-Tcolumn :


Alignment
Tacenter
FieldName
nim
Title
AlignmentTacenter
CaptionNIM
Width100 (sesuaikan)
Atur pada field selanjutnya sesuai urutan field pada tabel mhs sehingga akan
tampil seperti berikut .

Author : Khoirudin, S.Kom

Page 8

9. Setelah selesai merancang form selanjutnya mulai dengan coding.


Pada Fmhs Event FormShow:

Klik 2x pada tanda panah dan masukkan sintaks seperti berikut :

Author : Khoirudin, S.Kom

Page 9

procedure TFmhs.FormShow(Sender: TObject);


begin
ednim.Clear;
ednama.Clear;
edalamat.Clear;
tgl_lahir.Date:=now;
with dm.Qmhs do
begin
close;
sql.Add('select * from tb_mhs');
open;
end;
end;

Pada Ednim Event OnkeyPress masukkan sintaks seperti berikut :


procedure TFmhs.ednimKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#8,'0'..'9']) then
Key:=#0;
end;
Fungsi perintah diatas agar inputan dalam Ednim Cuma bisa memasukkan
angka.
Klik 2x pada Button Simpan dan masukkan sintak sperti berikut :
procedure TFmhs.BitBtn1Click(Sender: TObject);
begin
if (ednim.Text='') or (ednama.Text='') or (edalamat.Text='') then
ShowMessage('Data Kurang Lengkap, Silahkan Dilengkapi!') else
begin
with dm.Qmhs do
begin
sql.Clear;
SQL.Add('select * from mhs where nim='+quotedstr(ednim.text)+'');
open;
end;
if dm.Qmhs.Recordset.RecordCount > 0 then
ShowMessage('Data sudah ada silahkan isi yang lain!!')
else

Author : Khoirudin, S.Kom

Page 10

begin
try dm.Koneksi.BeginTrans;
with dm.Qumum do
begin
close;
SQL.Clear;
sql.Add('insert into mhs values('+quotedstr(ednim.Text)+','
+quotedstr(ednama.Text)+','
+ quotedstr(edalamat.Text)+','
+quotedstr(FormatDateTime('mm/dd/yyyy',tgl_lahir.Date))+')');
execsql;
end;
dm.Koneksi.CommitTrans;
ShowMessage('Data Berhasil Disimpan');
except dm.Koneksi.RollbackTrans
end;
dm.Qmhs.Close;
dm.Qmhs.Open;
FormShow(sender);
end;
end;
end;
10. Aktifkan Button Ubah
Sebelum ke button Ubah pada DbGrid event OnCellClick masukkan sintaks
seperti berikut (klik2x pada event oncellclick) :

procedure TFmhs.DBGrid1CellClick(Column: TColumn);


begin
with dm.Qmhs do
begin
ednim.Text:=FieldValues['nim'];
ednama.Text:=FieldValues['nama'];
edalamat.Text:=FieldValues['alamat'];
Author : Khoirudin, S.Kom

Page 11

tgl_lahir.Date:=FieldValues['tgl_lahir'];
end;
end;
OnCellClick agar nanti jika pada DbGrid diklik datanya akan tampil pada
Edit.
Sintaks pada Button Ubah :
procedure TFmhs.BitBtn2Click(Sender: TObject);
begin
if (ednim.Text='') or (ednama.Text='') or (edalamat.Text='') then
ShowMessage('Data Kurang Lengkap, Silahkan Dilengkapi!') else
begin
try dm.koneksi.BeginTrans;
with dm.Qumum do
begin
close;
sql.Clear;
sql.Add('update mhs set');
sql.Add('nama = '+quotedstr(ednama.Text)+',');
sql.Add('alamat='+QuotedStr(edalamat.Text)+',');
sql.Add('tgl_lahir='+QuotedStr(FormatDateTime('mm/dd/yyyy',tgl_lahir.Date))
);
SQL.Add('where nim ='+quotedstr(ednim.Text));
ExecSQL;
end;
dm.koneksi.CommitTrans;
ShowMessage('Data Berhasil Diubah');
except dm.koneksi.RollbackTrans;
end;
dm.Qmhs.Close;
dm.Qmhs.Open;
FormShow(sender);
end;
end;
11. Sintaks Button Hapus
procedure TFmhs.BitBtn3Click(Sender: TObject);
begin
if (ednim.Text='') then
ShowMessage('Data Yang Akan Dihapus Belum Dipilih!') else

Author : Khoirudin, S.Kom

Page 12

begin
try dm.koneksi.BeginTrans;
with dm.Qumum do
begin
close;
sql.Clear;
sql.Add('delete from mhs ');
SQL.Add('where nim ='+quotedstr(ednim.Text));
ExecSQL;
end;
dm.koneksi.CommitTrans;
ShowMessage('Data Berhasil Dihapus');
except dm.koneksi.RollbackTrans;
end;
dm.Qmhs.Close;
dm.Qmhs.Open;
FormShow(sender);
end;
end;

12. Sintaks Button Refresh


procedure TFmhs.BitBtn4Click(Sender: TObject);
begin
FormShow(sender);
end;
13. Sintaks Button Keluar
procedure TForm1.Button5Click(Sender: TObject);
begin
close;
end;
14. Jalankan program

Author : Khoirudin, S.Kom

Page 13

Anda mungkin juga menyukai