Project dengan beberapa Form

Dalam latihan ini kita akan melanjutkan membuat sebuah project dengan beberapa form. Pada modul yang lalu kita telah membuat dua buah tabel dan dua buah form yang dapat mengakses tabel. Untuk latihan ini kita akan menambahkan sebuah tabel dengan nama TABEL_TRANSAKSI dan sebuah form untuk mengakses TABEL_TRANSAKSI. Di dalam TABEL_TRANSAKSI terdapat field yang merupakan field kunci dari dua tabel lain yaitu TABEL_BARANG dan TABEL_AGEN. Hal ini dilakukan agar hanya dari TABEL_TRANSAKSI saja, kita dapat mengambil field yang berada dalam TABEL_BARANG dan TABEL_AGEN. Download file PDF
Langkah – langkah yang dilakukan adalah sebagai berikut :
1. Buat table dengan struktur sebagai berikut :
- Nama table : TABEL_TRANSAKSI

-Simpan di folder Pembelian
2.Buatlah form sebagai berikut :


Pada form ini Kode Agen dan Kode Barang diisi dengan sebuah pilihan dalam bentuk combobox. Kode Agen berasal dari TABEL_AGEN dan Kode Barang berasal dari TABEL_BARANG. Hal ini dilakukan agar kita tidak usah repot lagi untuk menuliskan Kode Agen dan Kode Barang pada form transaksi, tetapi kita hanya mengambil data yang sudah ada pada dua tabel lain.
3.Buatlah setting properties untuk form tersebut, sebagai berikut :

4.Doble klik daerah kosong di form, isikan listing program sebagai berikut :
procedure TfrmTransaksi.FormCreate(Sender: TObject);
begin
edNo_Transaksi.Text := ”;
cmbKode_Agen.Text := ”;
cmbKode_Barang.Text := ”;
edTanggal.Text := FormatDateTime(‘dd/mm/yyyy’, Now());
edNama_Agen.Text := ”;
edNama_Barang.Text := ”;
edHarga_Barang.Text := ”;
edJumlah_Beli.Text := ”;
edTotal_Bayar.Text := ”;  cmbKode_Agen.Items.Clear;
cmbKode_Barang.Items.Clear;
tblAgen.First;
while not (tblAgen.Eof) do
begin
i := tblAgen.FieldValues['Kode_Agen'];
cmbKode_Agen.Items.Add(i);
tblAgen.Next;
end;
tblBarang.First;
while not (tblBarang.Eof) do
begin
j := tblBarang.FieldValues['Kode_Barang'];
cmbKode_Barang.Items.Add(j);
tblBarang.Next;
end;
end;
5.Doble klik button Simpan, isikan listing program sebagai berikut :
procedure TfrmTransaksi.btSimpanClick(Sender: TObject);
begin
tblTransaksi.Append;
tblTransaksi['NO_TRANSAKSI']:= edNo_Transaksi.Text;
tblTransaksi['KODE_AGEN'] := cmbKode_Agen.Text;
tblTransaksi['KODE_BARANG']:= cmbKode_Barang.Text;
tblTransaksi['TANGGAL'] := edTanggal.Text;
tblTransaksi['JUMLAH']:= edJumlah_Beli.Text;
tblTransaksi['TOTAL_BAYAR']:= edTotal_Bayar.Text;
tblTransaksi.Post;
tblTransaksi.ApplyUpdates;
tblTransaksi.Active := false;
tblTransaksi.Active := true;
showmessage(‘Data Sudah Tersimpan’);
FormCreate(sender);
edNo_Transaksi.SetFocus;
end;
6.Doble klik button Batal, isikan listing program sebagai berikut :
procedure TfrmTransaksi.btBatalClick(Sender: TObject);
begin
FormCreate(sender);
edNo_Transaksi.SetFocus;
end;
7.Doble klik button Keluar, isikan listing program sebagai berikut :
procedure TfrmTransaksi.btKeluarClick(Sender: TObject);
begin
frmTransaksi.Visible := false;
end;
8.Double klik cmbKode_Agen, isikan listing program sebagai berikut :
procedure TfrmTransaksi.cmbKode_AgenChange(Sender: TObject);
begin
tblAgen.SetKey;
tblAgen['Kode_Agen'] := cmbKode_Agen.Text;
if tblAgen.GotoKey then
edNama_Agen.Text := tblAgen.FieldValues['Nama_Agen'];
end;
9.Double klik cmbKode_Barang, isikan listing program sebagai berikut :
procedure TfrmTransaksi.cmbKode_BarangChange(Sender: TObject);
begin
tblBarang.SetKey;
tblBarang['Kode_Barang'] := cmbKode_Barang.Text;
if tblBarang.GotoKey then
begin
edNama_Barang.Text := tblBarang.FieldValues['Nama_Barang'];
edHarga_Barang.Text := tblBarang.FieldValues['Harga'];
end;
end;
10.Klik edit edJumlah_Beli, klik tab Events pada Object Inspector, double klik pada kotak di sebelah kanan OnExit, isikan listing program berikut ini :
procedure TfrmTransaksi.edJumlah_BeliExit(Sender: TObject);
begin
edTotal_Bayar.Text := IntToStr(StrToInt(edHarga_Barang.Text) * StrToInt(edJumlah_Beli.Text));
end;
11.Pada variable global tambahkan variable I dan j sebagai berikut :
var
i, j : string;

1 komentar:

Poskan Komentar