Pada tutorial kali ini akan dibahas bagaimana membuat
perhitungan otomatis dalam DBGRID untuk menghitung total harga dan grand total. Dimana prosesnya
data langsung di inputkan di DBGRID dan
hasilnya (Total) akan otomatis tampil di
kolom Total. Untuk menyelesaikan kasus tersebut kita gunakan fasilitas delphi
yaitu calculated. Langkahnya adalah sebagai berikut:
1.
Pastikan Telah membuat database dan tabelnya
(tbarang), disini saya menggunakan MySQL
3.
Selanjutnya Desain Form Seperti dibawah ini
DESAIN FORM GUNAKAN KOMPONEN TZQUERY, DATA SOURCE, DBGRID, LABEL, DAN EDIT |
4.
Selanjutnya Buat Calculated Field dengan cara tambahkkan
semua field kedalam komponen Query, klik kanan atau dobel klik, kemudian klik
kanan lagi pilih > Add all fields, maka semua nama field dalam tabel yang
kita buat akan terisi kedalam komponen
5.
Selanjutnya, setelah memasukkan semua field
lakukan langkah yang sama dengan atas, tapi kali ini kita pilih New Field
(lihat gambar).
Menambahkan Calculate Total |
6.
Jika kedua langkah diatas sudah dilakukan maka
akan muncul jendela pembuatan field baru, dimana field ini hanya alias , kemudian
isikan beberapa parameter seperti terlihat pada gambar dibawah ini
7.
Karena kita akan bikin calculate numerik , maka kita pilih tipe integer. selanjutnya pada
design form DBGRID kita akan nambah satu filed (Total). Klik kanan DBGRID dan pilih Coloumn Editor
selanjutnya Klik New Field dan tambahkan Field Total
8.
Selanjutnya Buat Coding di Event OnCalculated
pada komponen TZquery, seperti dibawah ini
procedure TCalculate.qr_barangCalcFields(DataSet: TDataSet);
var
hs,qty,total : integer;
begin
hs := qr_baranghargasatuan.AsInteger;
qty := qr_barangqty.AsInteger;
total := hs * qty;
qr_barangtotal.Value := total;
end;
end.
9.
Selanjutnya Run Aplikasi, dan Inputkan datanya
di DBGRID. Jika benar maka program akan otomatis menghitung total dan hasilnya
terlihat pada gambar dibawah ini
OUTPUT PROGRAM INPUT DATA DILAKUKAN DI DBGRID DENGAN MENGINPUT HARGA SATUAN DAN QUANTITY |
Untuk Menghitung Grand Total Codingnya sbb:
procedure TCalculate.Hitung_GrandTotalClick(Sender: TObject);
var total : integer;
begin
total := 0;
qr_barang.First;
while not qr_barang.Eof do
Begin
total := total+qr_barangtotal.AsInteger;
qr_barang.Next;
end;
edtotal.Text := inttostr(total);
end;
end.
Catatan
Dengan Cara mengisi inputan di DBGRID Proses
lebih cepat dan praktis. Karena data akan langsung tersimpan di database.
Selamat Mencoba
PADEPOKAN IT COURSES
IT Tutorial, Training Center & IT Solution
www.padepokanit.com
Selamat Mencoba
PADEPOKAN IT COURSES
IT Tutorial, Training Center & IT Solution
www.padepokanit.com
qr_barang itu record barang gan ??
ReplyDelete