Home > Delphi > 14. Program Penjualan Sederhana

14. Program Penjualan Sederhana

UNDER CONSTRUCTION , THANK YOU FOR YOUR PATIENCE

Tujuan

1. Membuat database tabel dan alias

2. Membuat dan menggunakan index, menggunakan sorting

  1. Table Fields, Calculated Fields, Lookup
  2. Table Searching, Filtering, Range
  3. Tabel Relations
  4. Bookmark
  5. Komponen dan bahasa SQL dinamik
  6. Fungsi agregat
  7. Report master detail

Video Tutorial

[video]

Membuat Database

No Action
1 Buka Database Desktop Start -> Program -> Borland Delphi 7 -> Database Desktop
2 Buat Table baru 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 Action
1 New Project File-> New -> Application
2 Save All Unit Filename: menu.pas

Project: jual

Caption: Aplikasi Penjualan

3 Komponen BitBtn1 Tab Additional Caption: Penjualan
4 Komponen BitBtn2 Tab Additional Caption: Data Barang
5 Komponen BitBtn3 Tab Additional Caption: Laporan
6 Komponen BitBtn4 Tab Additional Caption: Keluar

Kind: btClose

7 Komponen Form1 Name: frmMenuUtama
8 Event OnClick BitBtn1 FrmTransaksi.ShowModal
1.1.4. Membuat Window Transaksi Penjualan
No Action
1 New Form File-> New -> Form Save All

Unit Filename: transaksi.pas

Properti Name: frmTransaksi

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 Komponen DataSource1 Tab DataAccess Name: dsJual

DataSet: tbJual

6 Komponen DataSource2 Tab DataAccess Name: dsJualDetail

DataSet: tbJualDetail

6 Komponen Panel1 Tab Standard Aling: Bottom

Caption: ”

7 Komponen DBGrid1 Tab DataControl 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

Tab DataControl Name: edTotal

DataSource: dsJual

DataField: Total

12 Komponen Label1 Standard Faktur
13 Komponen Label2 Standard Tanggal
14 Komponen Label3 Standard Sales ID
15 Komponen Label4

di atas Panel1

Standard Total
16 Navigator Tab DataCOntrol DataSource: dsJual

Align: top

17 Set FieldDefs tbJual Double click tbJual Add all Fields
17 Properti tbJualDetail Supaya jualdetail hanya menampilkan faktur yang dipilih pada tbJual MasterSource: dsJual

MasterField: klik [...]

Faktur->Faktur , Add

18 Set FieldDefs tbJualDetail Double click tbJualDetail Add all Fields

Field faktur: visible=false

19 Tambah field lookup Nama Barang Double click tbJualDetail

New Field

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 Tambah field lookup Harga Barang Double click tbJualDetail

New Field

Name: HargaBarang

Type: Float

Field Type: Lookup

Key Field: Barang_id

DataSet: tbBarang

Lookup Key: Id

result Field: Harga

nama variable: tbJualDetailHargaBarang

20 Tambah field calculated Total Harga Barang Double click tbJualDetail

New Field

Name: Total

Type: Float

Field Type: Calculated

nama variable: tbJualDetailTotal

Susun Field tbDetail Double click tbJualDetail

susun field

Aktifkan semua table Pilih semua table Active: true
Coba jalankan Klik tombol [+] untuk

Insert F001

Klik tombol [v] untuk mensave record

Insert beberapa items

perhatikan total – total belum berfungsi

1.1.5. Menghitung Sub Total dan Total
No Action
1 Handler event onCalcField

tbJualDetail

click tbJualDetail

click event onCalcField

procedure TfrmTransaksi.tbJualDetailCalcFields(DataSet: TDataSet);

begin

tbJualDetailTotal.Value := tbJualDetailHargaBarang.Value *

tbJualDetailJumlah.AsInteger;

end;

2 Menghitung Total Buat method

TfrmTransaksi. HitungTotal()

published

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 event tbJualDetail AfterDelete HitungTotal
AfterPost HitungTotal
1.1.6. Membuat Window Data Barang
No Action
1 Membuat form dengan wizard Database-> Form Wizard Tabel barang
Format: Grid
2 Save Form Barang.pas

Name: frmBarang

3 Bind ke menu utama OnClick FrmBarang.ShowModal
1.1.7. Membuat Laporan Master Detail
No Action
1 Membuat form dengan wizard Database-> Form Wizard Tabel jual master

tabel jualdetail detail

posisi: grid

2 Tambah Rave Component RaveProject
RaveTableConn1 Dataset: tbJual
RaveTableConn2 Dataset: tbJualDetail
3 Buat project RAV Double click RvProject1
DataView1 RaveTableConn1
DataView2 RaveTableConn2
Region
DataBand1 DataView: DataView1
DataBand2 DataView: DataView2

ControllerBand: DataBand1

DetailKey: Faktur

MasterDataView: DataView1

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′)
1.1.8. Menggunakan Data Module

  • Share/Bookmark
Categories: Delphi Tags: , ,
  1. No comments yet.
  1. No trackbacks yet.
This site uses a Hackadelic PlugIn, Hackadelic SEO Table Of Contents 1.6.0.