Professional Documents
Culture Documents
Table Fields, Calculated Fields, Lookup Table Searching, Filtering, Range Tabel Relations Bookmark Komponen dan bahasa SQL dinamik Fungsi agregat Report master detail
Video Tutorial
[video]
Membuat Database No 1 Action Buka Database Desktop Start -> Program -> Borland Delphi 7 -> Database Desktop File->New>Table>Paradox 7 Faktur A 10 * Tanggal D Total N Sales_id A 10 Save as JUAL.DB File->New>Table>Paradox 7 Faktur A 10 * Barang_ID A 10 * Jumlah N Save as JUALDETAIL.DB File->New>Table>Paradox 7 Id A 10 * Barang A 10 Harga N Save As BARANG.DB 3 Isi Data Barang File->Open>Table>BARANG.DB MK010001 Indomie Kari Ayam 2,000.00 MK010002 Salam Mi 14,000.00
MK020001 Kacang Atom 3,400.00 MK020002 Kacang Asin 3,500.00 MN010001 Coffee Mix 5,000.00 MN010002 Fruit Tea 4,500.00 MN010003 Teh Botol 1,500.00 MN010004 Coca Cola 1,500.00 MN010005 Fanta 1,500.00
1.1.3. Membuat Window Menu Utama
No 1
Action New Project File-> New -> Application Unit Filename: menu.pas Project: jual Caption: Aplikasi Penjualan
Save All
3 4 5 6 7 8
Komponen BitBtn1 Komponen BitBtn2 Komponen BitBtn3 Komponen BitBtn4 Komponen Form1 Event OnClick BitBtn1 Action New Form
Caption: Penjualan Caption: Data Barang Caption: Laporan Caption: Keluar Kind: btClose Name: frmMenuUtama FrmTransaksi.ShowModal
No 1
Caption: Transaksi Penjualan 2 Komponen Table1 Tab BDE Name: tbJual DatabaseName: c:\e-learning\toko TableName: jual.db Active: true 3 Komponen Table2 Tab BDE Name: tbBarang DatabaseName: c:\e-learning\toko TableName: barang.db Active: true 4 Komponen Table2 Tab BDE Name: tbJualDetail DatabaseName: c:\e-learning\toko TableName: jualdetail.db Active: true 5 6 6 7 Komponen DataSource1 Komponen DataSource2 Komponen Panel1 Komponen DBGrid1 Tab DataAccess Tab DataAccess Tab Standard Tab DataControl Name: dsJual DataSet: tbJual Name: dsJualDetail DataSet: tbJualDetail Aling: Bottom Caption: Name: gridJualDetail DataSource: dsJualDetail Align: Bottom 8 Komponen DBEdit1 Tab DataControl Name: edFaktur DataSource: dsJual DataField: Faktur 9 Komponen DBEdit2 Tab DataControl Name: edTanggal DataSource: dsJual DataField: Tanggal 10 Komponen DBEdit3 Tab DataControl Name: edSales_id DataSource: dsJual DataField: Sales_id
11
Komponen DBEdit4 di atas Panel1 Komponen Label1 Komponen Label2 Komponen Label3 Komponen Label4 di atas Panel1 Navigator Set FieldDefs tbJual Properti tbJualDetail
Tab DataControl
12 13 14 15
16 17 17
Tab DataCOntrol Double click tbJual Supaya jualdetail hanya menampilkan faktur yang dipilih pada tbJual Double click tbJualDetail Double click tbJualDetail New Field
DataSource: dsJual Align: top Add all Fields MasterSource: dsJual MasterField: klik [...] Faktur->Faktur , Add
18 19
Add all Fields Field faktur: visible=false Name: NamaBarang Type: String Field Type: Lookup Key Field: Barang_id DataSet: tbBarang Lookup Key: Id result Field: Barang DisplayWidth: 30 nama variable: tbJualDetailNamaBarang
20
Barang
New Field
Field Type: Lookup Key Field: Barang_id DataSet: tbBarang Lookup Key: Id result Field: Harga nama variable: tbJualDetailHargaBarang
20
Name: Total Type: Float Field Type: Calculated nama variable: tbJualDetailTotal
Double click tbJualDetail susun field Pilih semua table Klik tombol [+] untuk Insert F001 Klik tombol [v] untuk mensave record Active: true Insert beberapa items perhatikan total total belum berfungsi
No 1
Action Handler event onCalcField tbJualDetail click tbJualDetail click event onCalcField procedure TfrmTransaksi.tbJualDetailCalcFields(DataSet: TDataSet); begin tbJualDetailTotal.Value := tbJualDetailHargaBarang.Value * tbJualDetailJumlah.AsInteger; end;
Menghitung Total
published
HitungTotal()
procedure HitungTotal; procedure TfrmTransaksi.HitungTotal; var TempTotal: Extended; PrevRecord: TBookmark; begin PrevRecord := tbJualDetail.GetBookmark; { returns nil if table is empty } try tbJualDetail.DisableControls; tbJualDetail.First; TempTotal := 0;{ use temp for efficiency } while not tbJualDetail.EOF do begin TempTotal := TempTotal + tbJualDetailTotal.Value; tbJualDetail.Next; end; tbJualTotal.Value := TempTotal; finally tbJualDetail.EnableControls; if PrevRecord <> nil then begin tbJualDetail.GoToBookmark(PrevRecord); tbJualDetail.FreeBookmark(PrevRecord); end; end; end;
Bind HitungTotal ke
AfterDelete
HitungTotal
HitungTotal
No 1
Action Membuat form dengan wizard Database-> Form Wizard Tabel barang
Format: Grid 2 Save Form Barang.pas Name: frmBarang 3 Bind ke menu utama Action Membuat form dengan wizard Database-> Form Wizard Tabel jual master tabel jualdetail detail posisi: grid 2 Tambah Rave Component RaveProject RaveTableConn1 RaveTableConn2 3 Buat project RAV Double click RvProject1 DataView1 DataView2 Region DataBand1 DataBand2 DataView: DataView1 DataView: DataView2 ControllerBand: DataBand1 DetailKey: Faktur MasterDataView: DataView1 RaveTableConn1 RaveTableConn2 Dataset: tbJual Dataset: tbJualDetail OnClick FrmBarang.ShowModal
No 1
MasterKey: Faktur BandStyle: detail DataText di DataBand1 Faktur Sales Tanggal Total DataText di DataBand2 BarangID Lookup nama Barang Faktur Jumlah Hias dengan garis/ warna border Preview Binding dengan tombol RvProject.Execute(Report1 )