delphi tabel

Post on 02-Jul-2015

210 views 0 download

Transcript of delphi tabel

Kuliah DelphiBEKERJA DENGAN DATABASE

Bekerja Dengan Komponen TTable

Oleh Andri Heryandi, ST

Materi Hari IniMateri Hari Ini

• Navigasi TabelNavigasi TabelPindah ke data pertama, sebelumnya, berikutnya, terakhirterakhir.

• Mengatur Status Table (State)

M k Fi ld• Mengakses Field

• Tambah Data

• Edit Data

• Hapus DataHapus Data

Oleh Andri Heryandi, ST

Contoh Struktur Table (*.db)Contoh Struktur Table ( .db)

Oleh Andri Heryandi, ST

Aplikasi DatabaseAplikasi Database

Komponen yang digunakan :

• Table

DatabaseName : DBIFXX (alias sesuaikan)

TableName : Barang.DB

Name : TBarang

Active : True

• DataSource

Dataset : TBarang

Name : DSBarang

• DBGrid

Datasource : DSBarang

Oleh Andri Heryandi, ST

Mengatur Status TableMengatur Status Table

DSBrowse

EdiA d / I

DSInsert DSEdit

EditAppend / Insert Post/CancelPost/Cancel

DSInsert DSEdit

Oleh Andri Heryandi, ST

Navigasi Tabel (1)Navigasi Tabel (1)

Pindah Ke Data PertamaPindah Ke Data Pertamaprocedure TForm1.TblPertamaClick(Sender: TObject);begin

//TBarang.First; // Pindah ke record pertamaend;

Oleh Andri Heryandi, ST

Navigasi Tabel (2)Navigasi Tabel (2)

Pindah Ke Data TerakhirPindah Ke Data Terakhirprocedure TForm1.TblTerakhirClick(Sender: TObject);begin

//TBarang.Last; // pindah ke record terakhirend;

Oleh Andri Heryandi, ST

Navigasi Tabel (3)Navigasi Tabel (3)

Pindah Ke Data SebelumnyaPindah Ke Data Sebelumnyaprocedure TForm1.TblSebelumnyaClick(Sender: TObject);begin

//TBarang.Prior; // pindah ke record sebelumnyaif TBarang.BOF = true then // Jika mencapai awal file

// BOF = Begin Of Filebeging

showmessage('Anda telah berada di data pertama');end;

end;

Oleh Andri Heryandi, ST

Navigasi Tabel (4)Navigasi Tabel (4)

Pindah Ke Data BerikutnyaPindah Ke Data Berikutnyaprocedure TForm1.TblBerikutnyaClick(Sender: TObject);begin

//TBarang.Next; // pindah ke record berikutnyaif TBarang.EOF = true then // Jika mencapai akhir file

// EOF = End Of Filebeging

showmessage('Anda telah berada di data terakhir');end;

end;

Oleh Andri Heryandi, ST

Mengakses Field (a)Mengakses Field (a)

• Mengakses melalui nama fieldMengakses melalui nama field– Menggunakan Array Nama Field

• TBarang[‘Nama’]:=‘Kursi Goyang’;

• TBarang FieldValues[‘Stock’]:=100;• TBarang.FieldValues[ Stock ]:=100;

– Menggunakan Fungsi FieldByName• TBarang.FieldByName(‘Nama’).AsString:=‘Kursi Goyang’;

• TBarang.FieldByName(‘Harga’).AsCurrency:=1234;g y ( g ) y ;

• TBarang.FieldByName(‘Harga’).AsString:=‘1234’;

• Mengakses melalui nomor urut field– Menggunakan Properti Fields

• TBarang.Fields[1].value:=‘Ponsel’; // Field Ke‐2 (field Nama)

Oleh Andri Heryandi, ST

Mengakses Field (b)Mengakses Field (b)

• Mengakses menggunakanMengakses menggunakankomponen TFieldUntuk menggunakan komponen TField, maka komponennyaharus dibuat terlebih dahulu dengan cara mendoubleklik padaharus dibuat terlebih dahulu dengan cara mendoubleklik padakomponen Tbarang yang akan menampilkan FieldEditor, kemudian klik kanan, pilih Add All Fields.Nama komponen dari suatu field dapat dilihat dengan mengklikkkomponennya.Untuk mengakses nilainya, gunakan properti Value, Contoh :

TBarangNama Value:=‘Kursi Goyang’;TBarangNama.Value:= Kursi Goyang ;TBarangStock.value:=150;

Oleh Andri Heryandi, ST

Penambahan Data (Versi 1)Penambahan Data (Versi 1)

Penambahan Data versi 1 adalah penambahanPenambahan Data versi 1 adalah penambahanyang proses penyimpanan datanya dilakukansecara manual Setiap field diisi secara manualsecara manual. Setiap field diisi secara manual dengan tidak melibatkan komponen Data Control misalnya dengan komponen TEdit biasaControl, misalnya dengan komponen TEdit biasabukan TDBEdit.

Oleh Andri Heryandi, ST

Penambahan Data (a)Penambahan Data (a)

Tambahkan groupbox dan komponen lainTambahkan groupbox dan komponen lain seperti di bawah ini :

Semua komponenSemua komponenmenggunakan komponenstandar, tidak menggunakankomponen Data Control. Untuk ENama, EHarga, EStockdan EStockMinimalmenggunakan komponenTEditTEdit.

Oleh Andri Heryandi, ST

Penambahan Data (b)Penambahan Data (b)

Buat tombol Tambah di form pada posisi yangBuat tombol Tambah di form pada posisi yang diinginkan.

Oleh Andri Heryandi, ST

Penambahan Data (c)Penambahan Data (c)

Isi Event OnClick dari Tombol TambahIsi Event OnClick dari Tombol Tambahdengan perintah berikut :procedure TForm1 TTambahClick(Sender: TObject);procedure TForm1.TTambahClick(Sender: TObject);begin

TBarang.Append; // Atau TBarang.Insert;ENama.Text:='';EHarga.Text:='';EStock.Text:='';EStockMinimal.Text:='';ENama.SetFocus;ENama.SetFocus;

end;

Oleh Andri Heryandi, ST

Penyimpanan DataPenyimpanan Data

Isi Event OnClick dari Tombol SimpanIsi Event OnClick dari Tombol Simpandengan perintah berikut :

procedure TForm1.TSimpanClick(Sender: TObject);procedure TForm1.TSimpanClick(Sender: TObject);begin

if TBarang.State in [dsInsert, dsEdit] thenbegin

// Untuk pengisian field boleh berbagai caraTB ['N '] EN T tTBarang['Nama']:=ENama.Text;TBarang.FieldValues['Harga']:=StrToCurr(EHarga.Text);TBarang.FieldByName('Stock').AsString:=EStock.Text;// atau TBarang.FieldByName('Stock').AsInteger:=StrToInt(EStock.Text);TBarang.Fields[4].Value:=StrToInt(EStockMinimal.Text);gTBarang.Post; // Simpan

endelsebegin

Showmessage('Untuk menyimpan data harus mengklik tombol Tambah atau Edit

Oleh Andri Heryandi, ST

Showmessage('Untuk menyimpan data harus mengklik tombol Tambah atau Edit dulu');

end;end;

Pembatalan Operasi Tambah/EditPembatalan Operasi Tambah/Edit

Isi Event OnClick dari Tombol Batal denganIsi Event OnClick dari Tombol Batal denganperintah berikut :

procedure TForm1.TBatalClick(Sender: TObject);procedure TForm1.TBatalClick(Sender: TObject);begin

if MessageDlg('Pengisian data dibatalkan?',mtconfirmation,[mbyes,mbno],0)=MrYes then

beginTB C lTBarang.Cancel;ENama.Text:='';EHarga.Text:='';EStock.Text:='';EStockMinimal.Text:='';

end;end;

Oleh Andri Heryandi, ST

Pengeditan Data (versi 1)Pengeditan Data (versi 1)

Pengeditan Data versi 1 adalah pengeditan yang e ged ta ata e s ada a pe ged ta ya gproses penyimpanan datanya dilakukan secaramanual. Setiap field diisi secara manual dengand k l b k k l ltidak melibatkan komponen Data Control, misalnya

dengan komponen TEdit biasa bukan TDBEdit.P dit d b h b i iPengeditan dan penambahan sebenarnya mirip, perbedaannya hanya perintah Append digantidengan dengan Edit dan data yang ada sekarang didengan dengan Edit dan data yang ada sekarang direcord aktif harus ditampilkan terlebih dahulu.

Oleh Andri Heryandi, ST

Pengeditan Data (b)Pengeditan Data (b)

Buat tombol Edit di form pada posisi yangBuat tombol Edit di form pada posisi yang diinginkan.

Oleh Andri Heryandi, ST

Pengeditan Data (c)Pengeditan Data (c)

Isi Event OnClick dari Tombol Edit denganIsi Event OnClick dari Tombol Edit denganperintah berikut :

procedure TForm1 TEditClick(Sender: TObject);procedure TForm1.TEditClick(Sender: TObject);begin

TBarang.Edit;ENama.Text:=TBarang['Nama'];EHarga.Text:=TBarang.FieldByName('Harga').AsString;EStock.Text:=TBarang.Fields[3].AsString;EStockMinimal.Text:=IntToStr(TBarangStockMinimal.value);ENama.SetFocus;ENama.SetFocus;

end;

Oleh Andri Heryandi, ST

Penghapusan Data (a)Penghapusan Data (a)

Penghapusan data dilakukan dengan memanggilPenghapusan data dilakukan dengan memanggilperintah Delete. 

Tetapi sangat disarankan ketika akan melakukanh k l k k k fi ipenghapusan untuk melakukan konfirmasi

apakah user benar‐benar ingin melakukanhpenghapusan.

Oleh Andri Heryandi, ST

Penghapusan Data (b)Penghapusan Data (b)

Buat tombol Hapus di form pada posisi yangBuat tombol Hapus di form pada posisi yang diinginkan.

Oleh Andri Heryandi, ST

Penghapusan Data (c)Penghapusan Data (c)

Isi Event OnClick dari Tombol Hapus denganIsi Event OnClick dari Tombol Hapus denganperintah berikut :

procedure TForm1 THapusClick(Sender: TObject);procedure TForm1.THapusClick(Sender: TObject);begin

if Messagedlg('Anda yakin data akan dihapus?', mtconfirmation,[MbYes,MbNo],0)=MrYes then

beginTBarang.Delete;

end;end;end;

Oleh Andri Heryandi, ST

Penambahan Data (Versi 2)Penambahan Data (Versi 2)

Penambahan Data versi 2 adalah penambahanPenambahan Data versi 2 adalah penambahanyang proses penyimpanan datanya dilakukansecara otomatis karena menggunakansecara otomatis karena menggunakankomponen‐komponen Data Control sepertiTDBEditTDBEdit.

Oleh Andri Heryandi, ST

Penambahan Data (a)Penambahan Data (a)

Tambahkan groupbox dan komponen lainTambahkan groupbox dan komponen lain seperti di bawah ini :

Semua komponen menggunakanSemua komponen menggunakanData Control. Untuk ENama, EHarga, EStock danEStockMinimal menggunakankomponen TDBEditkomponen TDBEdit.

Semua DBEdit, propertiDataSourcenya diisi denganDSBarang Sedangkan PropertyDSBarang. Sedangkan Property DataField‐nya disesuaikan.

Oleh Andri Heryandi, ST

Penambahan Data (versi 2) (b)Penambahan Data (versi 2) (b)

Buat tombol Tambah di form pada posisi yangBuat tombol Tambah di form pada posisi yang diinginkan. Isi Namenya dengan TTambah2 agar tidak bentrok dengan Tombol tambah yangtidak bentrok dengan Tombol tambah yang pertama

Oleh Andri Heryandi, ST

Penambahan Data (versi 2) (c)Penambahan Data (versi 2) (c)

Isi Event OnClick dari Tombol Tambah 2Isi Event OnClick dari Tombol Tambah 2 dengan perintah berikut :procedure TForm1 TTambah2Click(Sender: TObject);procedure TForm1.TTambah2Click(Sender: TObject);begin

TBarang.Append;// atau TBarang.Insert;DBEdit1.SetFocus; // Agar focus ke DBEdit field Nama

end;

Oleh Andri Heryandi, ST

Penyimpanan Data (versi 2)Penyimpanan Data (versi 2)

Isi Event OnClick dari Tombol Simpan 2Isi Event OnClick dari Tombol Simpan 2 dengan perintah berikut :

procedure TForm1.TSimpan2Click(Sender: TObject);procedure TForm1.TSimpan2Click(Sender: TObject);begin

if TBarang.State in [dsInsert, dsEdit] thenbegin

TBarang.Post; // Simpandend

elsebegin

Showmessage('Untuk menyimpan data harus mengklik tombol Tambah atau Edit dulu');

end;end;

Oleh Andri Heryandi, ST

Pembatalan Operasi Tambah/EditPembatalan Operasi Tambah/Edit

Isi Event OnClick dari Tombol Batal 2Isi Event OnClick dari Tombol Batal 2 dengan perintah berikut :

procedure TForm1.TBatal2Click(Sender: TObject);procedure TForm1.TBatal2Click(Sender: TObject);begin

if MessageDlg('Pengisian data dibatalkan?',mtconfirmation,[mbyes,mbno],0)=MrYes then

beginTB C l // B t lk b h d tTBarang.Cancel; // Batalkan perubahan data

end;end;

Oleh Andri Heryandi, ST

Pengeditan Data (versi 2)Pengeditan Data (versi 2)

Pengeditan Data versi 2 adalah pengeditan yangPengeditan Data versi 2 adalah pengeditan yang proses penyimpanan datanya otomatis karenapengisian datanya melibatkan komponen Datapengisian datanya melibatkan komponen Data Control, misalnya dengan komponen TEdit biasabukan TDBEditbukan TDBEdit.

Oleh Andri Heryandi, ST

Pengeditan Data (b)Pengeditan Data (b)

Buat tombol Edit di form pada posisi yangBuat tombol Edit di form pada posisi yang diinginkan. Isi Name dengan TEdit2 agar tidakbentrok dengan Tombol Edit yang pertamabentrok dengan Tombol Edit yang pertama

Oleh Andri Heryandi, ST

Pengeditan Data (c)Pengeditan Data (c)

Isi Event OnClick dari Tombol Edit denganIsi Event OnClick dari Tombol Edit denganperintah berikut :

procedure TForm1 TEdit2Click(Sender: TObject);procedure TForm1.TEdit2Click(Sender: TObject);begin

TBarang.Edit;DBEdit1.SetFocus;

end;

Oleh Andri Heryandi, ST

SEKIAN MATERI UNTUK HARI INISEKIAN MATERI UNTUK HARI INI

Oleh Andri Heryandi, ST