modu aplikasi pemebelian dan penjualan barang menggunakan delphi

70
KATA PENGANTAR Bismillahirrahmanirrahim Syukur Alhamdulillah saya ucapkan kepada Allah SWT yang telah memberikan rahmat dan karunianya, sehingga saya dapat menyelesaikan Modul Aplikasi Transaksi Penjualan dan Pembelian Barang mMenggunakan Borland Delphi 7 dan Microsoft Office Acces 2007. Didalam penyusunan dan penyelesaian Modul Aplikasi Transaksi Penjualan dan Pembelian Barang Menggunakan Borland Delphi 7 dan Microsoft Office Acces ini saya benyak menerima petunjuk, bimbingan dan nasehat dari dosen Mata Kuliah Bahasa Pemograman3. Untuk itu saya mengucapkan terima kasih yang sebesar-besarnya kepada: Bapak Ahmad Rizal Abidin M.Kom . Akhir kata saya mengharapkan semoga Modul Aplikasi Transaksi Penjualan dan Pembelian Barang Menggunakan Borland Delphi 7 dan Microsoft Office Acces ini dapat berguna bagi para pembaca sekalian maupun oleh saya sebagai penyusun modul ini. Saya menyadari bahwa modul ini masih jauh dari tingkat kesempurnaan sehubungan dengan terbatasnya ilmu yang saya miliki. Untuk itu saya mengharapkan kritik dan saran yang bersifat Created by Rahman Etika Putra 0910106 Page 1

Upload: rahman-etika-putra

Post on 27-Apr-2015

3.051 views

Category:

Documents


143 download

TRANSCRIPT

Page 1: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

KATA PENGANTAR

Bismillahirrahmanirrahim

Syukur Alhamdulillah saya ucapkan kepada Allah SWT yang telah

memberikan rahmat dan karunianya, sehingga saya dapat menyelesaikan Modul

Aplikasi Transaksi Penjualan dan Pembelian Barang mMenggunakan Borland

Delphi 7 dan Microsoft Office Acces 2007.

Didalam penyusunan dan penyelesaian Modul Aplikasi Transaksi

Penjualan dan Pembelian Barang Menggunakan Borland Delphi 7 dan Microsoft

Office Acces ini saya benyak menerima petunjuk, bimbingan dan nasehat dari

dosen Mata Kuliah Bahasa Pemograman3. Untuk itu saya mengucapkan terima

kasih yang sebesar-besarnya kepada:

Bapak Ahmad Rizal Abidin M.Kom .

Akhir kata saya mengharapkan semoga Modul Aplikasi Transaksi

Penjualan dan Pembelian Barang Menggunakan Borland Delphi 7 dan Microsoft

Office Acces ini dapat berguna bagi para pembaca sekalian maupun oleh saya

sebagai penyusun modul ini. Saya menyadari bahwa modul ini masih jauh dari

tingkat kesempurnaan sehubungan dengan terbatasnya ilmu yang saya miliki.

Untuk itu saya mengharapkan kritik dan saran yang bersifat membangun yang

dapat dijadikan landasan untuk kesempurnaan modul ini

Padang,7 Februari

2011

Penulis

Created by Rahman Etika Putra0910106 Page 1

Page 2: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

DAFTAR ISI

KATA PENGANTAR.................................................................................... 1

DAFTAR ISI................................................................................................... 2

PENDAHULUAN........................................................................................... 3

LANGKAH-LANGKAH PEMBUATAN DATABASE.............................. 4

LANGKAH PEMBUATAN FORM TRANSAKSI PENJUALAN............ 6

LAMPIRAN FORM....................................................................................... 15

A. Form Menu..................................................................................... 15

B. Form Barang................................................................................... 16

C. Form Pelanggan.............................................................................. 19

D. Form Distributor............................................................................. 21

E. Form Transaksi Penjualan.............................................................. 24

F. Form Transaksi Pembelian............................................................. 33

LANGKAH-LANGKAH PEMBUATAN REPORT................................... 41

A. Laporan Barang.............................................................................. 41

B. Laporan Transaksi Penjualan Barang............................................. 44

C. Laporan Transaksi Pembelian Barang............................................ 49

Created by Rahman Etika Putra0910106 Page 2

Page 3: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

PENDAHULUAN

Pengertian DelphiDelphi adalah suatu bahasa pemograman (development language) yang digunakan untk merancang suatu aplikasi program.

a. Kegunaan Delphi1. untuk membuat aplikasi windows2. Untuk merancang aplikasi program berbasis grafis3. Untuk membuat program berbasis jaringan (client/server)4. Untuk merancang program .Net (berbasis internet)

b. Keunggulan Delphi1. IDE (Integrated Development Environment) atau lingkungan pengembangan aplikasi sendiri adalah satu dari beberapa keunggulan delphi, didalamnya terdapat menu – menu yang memudahkan kita untuk membuat suatu proyek program.2. Proses Kompilasi cepat, pada saat aplikasi yang kita buat dijalankan pada Delphi, maka secara otomatis akan dibaca sebagai sebuah program, tanpa dijalankan terpisah.3. Mudah digunakan, source kode delphi yang merupakan turunan dari pascal, sehingga tidak diperlukan suatu penyesuain lagi.4. Bersifat multi purphase, artinya bahasa pemograman Delphi dapat digunakan untuk mengembangkan berbagai keperluan pengembangan aplikasi.

c. Sejarah Borland Delphi1. Delphi versi 1 (berjalan pada windows 3.1 atau windows 16 bit)2. Delphi versi 2 (Berjalan pada windows 95 atau delphi 32 bit)3. Delphi versi 3 (berjalan pada windows 95 keatas dengan tambahan fitur internet atua web)4. Perkembangan selanjutnya diikuti dengan Delphi versi 4, 5 dan 6.5. Versi terkini dari delphi adalahversi 7 dengan tambahan vitur .net dengan tambahan file XML

Created by Rahman Etika Putra0910106 Page 3

Page 4: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

LANGKAH-LANGKAH PEMBUATAN DATABASE

1. Buka Microsoft Office Acces 20072. Klik Blank Database3. Tentukan nama database dan tempat penyimpanan4. Klik create5. Buat 7 tabel

a. BarangField Nama Data TypeKode_Barang TextNama_Barang TextHarga NumberHarga_Beli NumberStock Number

b. PelangganField Nama Data TypeKode_Pelanggan TextNama TextAlamat Text

c. TransaksiField Nama Data TypeNo_Faktur TextTgl_Faktur Date/TimeKode_Pelanggan Text

d. DetailField Nama Data TypeNo_Faktur TextKode_Barang TextNama_Barang TextHarga NumberJumlah NumberTotal Number

e. Distributor

Field Nama Data TypeKd_Distributor TextNama TextAlamat TextNoTelp Text

f. Beli

Created by Rahman Etika Putra0910106 Page 4

Page 5: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Field Nama Data TypeNo_TransBeli TextTgl_TransBeli Date/TimeKd_Distributor Text

g. DBeliField Nama Data TypeNo_TransBeli TextKode_Barang TextNama_Barang TextHarga_Beli NumberJumlah NumberTotal Number

Created by Rahman Etika Putra0910106 Page 5

Page 6: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

LANGKAH-LANGKAH PEMBUATAN FORM TRANSAKSI PENJUALAN

1. Aktifkan Borland Delphi 7 2. Pada properties Ganti Caption dengan Form Transaksi Penjualan3. Design Form seperti Berikut

4. Component yg digunakan:a. Label 13 buah (parlette standard)b. Datetimepicker 1 buah (parlette win32)c. Edit Text 4 buah (parlette standard)d. Dblookupcombobox 2 buah (parlette data control)e. Dbedit 5 buah (parlette data control)f. Dbgrid 1 buah (parlette data control)g. String grid 1 buah (parlette additional)h. Button 7 buah (parlette standar)i. Ado query 6 buah (parlette ado)j. Ado connection 1 buah (parlette ado)k. Dataset 4 buah(parlette data acces)

5. Koneksikan Ke databaseKlik ADOconnection pada Form, klik ConnectionString (…), klik Build, Klik Microsoft Office 12.0 Acces Database Engine OLEDB Provider

Created by Rahman Etika Putra0910106 Page 6

Page 7: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Dan klik next, pada data source ketikkan : F:\Lab\Delphi\After Mid\I\Trans.accdb, dan yang terakhir klik test connection.

6. Apabila test connection tampil keterangan tes connection succeeded, maka koneksinya sudah benar, tutup semua windows koneksi dengan cara klik OK. kembali ke Form.

7. Klik Adoquery1, klik Adoconnection pada proterties: lalu pilih ADOConnection1, dan klik SQL pada properties, lalu ketikkan :select * From Barang, lalu klik active ubah jadi true,pada Name ganti nama menjadi ADOBrg

8. Klik Adoquery2, klik Adoconnection pada proterties: lalu pilih ADOConnection1, dan klik SQL pada properties, lalu ketikkan :select * From Pelanggan, lalu klik active ubah jadi true,pada Name ganti nama menjadi ADOPlg

9. Untuk Adoquery yg alin yg di ubah di properties hanya adoconnection:adoconnection1

10. Mengaktifkan DataSource1, yaitu dengan cara klik Datasource1 pada form , lalu klik Dataset pilih AdoBrg ganti name:DsBrg

11. Mengaktifkan DataSource2, yaitu dengan cara klik Datasource2 pada form , lalu klik Dataset pilih AdoPlg,ganti Name:DsPlg

12. Mengaktifkan DataSource3, yaitu dengan cara klik Datasource2 pada form , lalu klik Dataset pilih Adoquery3,ganti Name:DsTrans

13. Mengaktifkan DataSource2, yaitu dengan cara klik Datasource2 pada form , lalu klik Dataset pilih Adoquery4,ganti Name:DsDet

14. Mengaktifkan DBLookupComboBox1, dengan cara klik DBLookupcombobox1, dan klik listssource : pilih DsPlg, ListField isi dengan Kode_Pelanggan, dan untuk keyfield isi dengan Kode_Pelanggan.

Created by Rahman Etika Putra0910106 Page 7

Page 8: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

15. Mengaktifkan DBEdit1, dengan cara klik DBEdit1, lalu klik Datasource pada properties, lalu pilih DsPlg dan datafilednya Nama

16. Mengaktifkan DBEdit2, dengan cara klik DBEdit2, lalu klik Datasource pada properties, lalu pilih DsPlg dan datafilednya Alamat

17. Mengaktifkan DBLookupComboBox2, dengan cara klik DBLookupcombobox1, dan klik listssource : pilih DsBrg, ListField isi dengan Kode_Barang, dan untuk keyfield isi dengan Kode_Barang

18. Mengaktifkan DBEdit3, dengan cara klik DBEdit3, lalu klik Datasource pada properties, lalu pilih DsBrg dan datafilednya Nama_Barang.

19. Mengaktifkan DBEdit4, dengan cara klik DBEdit4, lalu klik Datasource pada properties, lalu pilih DsBrg dan datafilednya Harga.

20. Mengaktifkan DBEdit5, dengan cara klik DBEdit5, lalu klik Datasource pada properties, lalu pilih DsBrg dan datafilednya Stock.

21. Buat koding pada edit1,pilih event,double klik onkeypress, lalu ketik:procedure TFormTransaksiPenjualan.Edit1KeyPress(Sender: TObject; var Key: Char);var i:integer;beginif key=#13 thenbeginADOQuery1.Close;ADOQuery1.SQL.Clear;ADOQuery1.SQL.add('select * from Detail where No_Faktur ="'+ edit1.Text +'"');ADOQuery1.open;

button5.Enabled:=true;button6.Enabled:=true;

if not ADOQuery1.Eof thenbeginDBLookupComboBox2.KeyValue := ADOQuery1.Fields[1].AsString ;edit2.Text := ADOQuery1.Fields[4].AsString ;edit3.Text := ADOQuery1.Fields[5].AsString ;

adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('select

No_Faktur,Kode_Barang,Nama_Barang,Harga,Jumlah, (Harga*Jumlah) as Total from Detail where No_Faktur = "'+ edit1.text +'"');

adoquery1.Open;dsdet.DataSet := adoquery1;dbgrid1.DataSource := dsdet;

adoquery3.Close;adoquery3.SQL.clear;

Created by Rahman Etika Putra0910106 Page 8

Page 9: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

adoquery3.SQL.add('select sum(Harga*Jumlah) from Detail where No_Faktur = "'+ edit1.text +'"');

adoquery3.Open;edit4.Text := adoquery3.Fields[0].AsString;

datetimepicker1.Enabled :=true;DBLookupComboBox2.Enabled:=true;edit2.Enabled :=true;DBGrid1.Visible :=true;sg.Visible:=false ;button5.Visible :=true;button6.Visible :=true;button8.Visible :=true;endelse

button7.Enabled :=true;edit2.Enabled :=false;edit3.Enabled :=false;

end;adoquery2.Close;adoquery2.SQL.Clear;adoquery2.SQL.add('select * from Transaksi where No_Faktur ="'+ edit1.Text +'"');adoquery2.open;if not adoquery2.Eof thenbeginDBLookupComboBox1.KeyValue :=ADOQuery2.Fields[2].AsString ;datetimepicker1.Date:= adoquery2.Fields[1].AsDateTime;DBLookupComboBox1.Enabled :=true;

edit2.Enabled :=true;endelsebutton1.Enabled :=true;

end;22. Buat Koding pada button 1,ganti dulu caption :OK pada properties:

procedure TFormTransaksiPenjualan.Button1Click(Sender: TObject);vari,Jumlah,tot,Total:integer;

begin

Created by Rahman Etika Putra0910106 Page 9

Page 10: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

SG.RowCount:=SG.RowCount+1;sg.cells[1,sg.RowCount-1]:=dblookupcombobox2.text;sg.Cells[2,sg.RowCount-1]:=DBEdit3.Text ;sg.Cells[3,sg.rowcount-1]:= dbedit4.Text ;Jumlah:=strtoint(edit2.Text);sg.cells[4,sg.rowcount-1]:=edit2.Text;Total:=strtoint(edit3.Text);sg.Cells[5,sg.RowCount-1]:=edit3.Text;

tot:=0;for i:=1 to sg.RowCount-1 dobegintot := tot + strtoint(sg.Cells[5,i]);

sg.Cells[0,i]:=inttostr(i);end;edit4.text := inttostr(tot);

edit2.Enabled:=true;

end;

23. Buat Koding pada button 2,ganti dulu caption :CANCEL pada properties:procedure TFormTransaksiPenjualan.Button2Click(Sender: TObject);begin sg.RowCount := sg.rowcount-1;end;

24. Buat Koding pada button 3,ganti dulu caption :SAVE pada properties:procedure TFormTransaksiPenjualan.Button3Click(Sender: TObject);var i,sisa :integer;Kode_Barang:String;begin

adoquery2.SQL.Clear;adoquery2.SQL.Add('insert into Transaksi(No_Faktur,Tgl_Faktur,Kode_Pelanggan)values ("'+edit1.Text +'","'+datetostr(DateTimePicker1.DateTime) +'","'+DBLookupComboBox1.Text+'")');adoquery2.ExecSQL;

for i :=1 to sg.RowCount-1 dobeginadoquery1.SQL.Clear;adoquery1.sql.add('insert into

Detail(No_Faktur,Kode_Barang,Nama_Barang,Harga,Jumlah,Total) values ("'+ edit1.Text +'","'+ sg.Cells[1,i]+'","'+sg.Cells[2,i]+'","'+sg.Cells[3,i]+'","'+sg.Cells[4,i]+'","'+sg.cells[5,i]+'")');

adoquery1.ExecSQL ;

sisa := adobrg.Fields[4].AsInteger - Strtoint(edit2.Text);

Created by Rahman Etika Putra0910106 Page 10

Page 11: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Kode_Barang:=dblookupcombobox2.text; adoquery4.Close; adoquery4.sql.clear; adoquery4.SQL.Add('update Barang set Stock="'+ inttostr(sisa) +'" where Kode_Barang="'+Kode_Barang+'"'); adoquery4.ExecSQL;

end;

end;25. Buat Koding pada button 4,ganti dulu caption :CLOSE pada properties:

procedure TFormTransaksiPenjualan.Button4Click(Sender: TObject);beginFormTransaksiPenjualan.Close;end;

26. Buat Koding pada button 5,ganti dulu caption :DELETE pada properties:procedure TFormTransaksiPenjualan.Button5Click(Sender: TObject);var a,b,c: integer; Kode_Barang:String;begin a:=strtoint(dbedit5.Text); b:=strtoint(edit2.Text); c:=a+b;

adoquery2.Close;adoquery2.SQL.Clear;adoquery2.SQL.Add('delete from Transaksi where No_Faktur = "'+

edit1.Text +'"');adoquery2.ExecSQL;

adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('delete from Detail where No_Faktur ="'+

edit1.Text +'"');adoquery1.ExecSQL;

adoquery4.Close; adoquery4.sql.clear; adoquery4.SQL.Add('update Barang set Stock="'+ inttostr(c) +'" where Kode_Barang="'+Kode_Barang+'"'); adoquery4.ExecSQL;

edit1.Text:=''; dbedit1.Text:=''; dbedit2.Text:=''; dbedit3.Text:=''; dbedit4.Text:='';

Created by Rahman Etika Putra0910106 Page 11

Page 12: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

dbedit5.Text:=''; edit2.Text:=''; edit3.Text:=''; edit4.Text:='';

end;27. Buat Koding pada button6, ganti dulu caption:UPDATE,lalu ketik:

procedure TFormTransaksiPenjualan.Button6Click(Sender: TObject);var updta,updtb,updtc,updtd : integer;begin

updta:=strtoint(DBEdit5.Text);updtb:=strtoint(edit2.Text);updtc:=strtoint(ADOQuery1.Fields[4].AsString) ;updtd:=updta+updtc-updtb;

ADOQuery4.Close;ADOQuery4.sql.clear;ADOQuery4.SQL.Add('update Barang set Stock="'+ inttostr(updtd) +'" where Kode_Barang="'+DBLookupComboBox2.Text +'"');ADOQuery4.ExecSQL;ADOQuery2.Close;ADOQuery2.SQL.Clear;ADOQuery2.SQL.add('update Transaksi set Tgl_Faktur ="'+ datetostr(datetimepicker1.Date)+'",Kode_Pelanggan="'+DBLookupComboBox1.Text +'" where No_Faktur ="'+ edit1.Text +'" ');ADOQuery2.ExecSQL;

ADOquery1.Close;ADOquery1.SQL.clear;ADOquery1.SQL.Add ('update Detail set Kode_Barang ="'+ dblookupcombobox2.Text +'", Nama_Barang="'+ dbedit3.Text +'",Harga="'+dbedit4.Text+'",Jumlah="'+edit2.Text+'",Total="'+edit3.Text+'" where No_Faktur ="'+ edit1.Text +'"');ADOquery1.ExecSQL;ADOquery1.SQL.Clear;ADOquery1.SQL.add('Select * from Detail where No_Faktur="'+edit1.Text+'" and Kode_Barang="'+DBLookupComboBox2.Text +'"');ADOquery1.Open;

Created by Rahman Etika Putra0910106 Page 12

Page 13: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

edit1.text :='';edit2.Text :='';edit3.Text :='';edit4.Text :='';

DBEdit1.Text:='';DBEdit2.Text:='';DBEdit3.Text:='';DBEdit4.Text:='';DBEdit5.Text:='';end;

28. Buat Koding pada button6, ganti dulu caption:ADD,lalu ketik:procedure TFormTransaksiPenjualan.Button7Click(Sender: TObject);beginsg.RowCount := sg.rowcount-1;adoplg.Close;

adoplg.sql.clear;adoplg.SQL.Add('select * from Pelanggan');adoplg.open;dsplg.dataset := adoplg;DBLookupComboBox1.ListSource:=dsplg;

DBLookupCombobox1.ListField:='Kode_Pelanggan'; DBLookupComboBox1.KeyField:='Kode_Pelanggan';

adobrg.Close;adobrg.sql.clear;adobrg.SQL.Add('select * from Barang');adobrg.open;dsbrg.dataset := adobrg;

DBLookupComboBox2.ListSource:=dsbrg; DBLookupCombobox2.ListField:='Kode_Barang'; DBLookupComboBox2.KeyField:='Kode_Barang'; button5.Enabled:=false; button6.Enabled:=false;

dbgrid1.Visible:=false;sg.Visible:=true;

button1.Enabled:=true; edit2.Enabled:=true;

dbedit1.Text:='';dbedit2.Text:='';dbedit3.Text:='';dbedit4.Text:='';

dbedit5.Text:=''; edit2.Text:=''; edit3.Text:='';end;

Created by Rahman Etika Putra0910106 Page 13

Page 14: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

29. Buat koding pada form, pilih event,lalu double click oncreate,lalu ketik:procedure TFormTransaksiPenjualan.FormCreate(Sender: TObject);begin

SG.Cells[0,0]:='No'; SG.Cells[1,0]:='Kode_Barang'; Sg.Cells[2,0]:='Nama_Barang'; SG.Cells[3,0]:='Harga'; SG.Cells[4,0]:='Jumlah'; SG.Cells[5,0]:='Total Harga'; dbedit1.Enabled:=false; dbedit2.Enabled:=false; dbedit3.Enabled:=false; dbedit4.Enabled:=false; dbedit5.Enabled:=false; button5.Visible:=false; button6.Visible:=false; button8.Visible:=false; dbedit1.Text:=''; dbedit2.Text:=''; dbedit3.Text:=''; dbedit4.Text:=''; dbedit5.Text:=''; sg.ColWidths [0]:=40; sg.ColWidths [1]:=80; sg.ColWidths [2]:=100; sg.ColWidths [3]:=80; sg.ColWidths [4]:=80; sg.ColWidths [5]:=80; sg.ColWidths [6]:=100;

end;

Created by Rahman Etika Putra0910106 Page 14

Page 15: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

LAMPIRAN FORM

A. Form Menu Gambar

Kodingprocedure TFormMenu.Barang1Click(Sender: TObject);beginFormBarang.show;end;

procedure TFormMenu.Pelanggan1Click(Sender: TObject);beginFormPelanggan.show;end;

procedure TFormMenu.enjualan1Click(Sender: TObject);beginFormTransaksiPenjualan.show;end;

procedure TFormMenu.DistributorClick(Sender: TObject);beginFormDistributor.show;end;

Created by Rahman Etika Putra0910106 Page 15

Page 16: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

procedure TFormMenu.Pembelian1Click(Sender: TObject);begin formTransaksiPembelian.show;end;

procedure TFormMenu.LaporanBarangClick(Sender: TObject);beginform7.show;end;

procedure TFormMenu.LaporanPelangganClick(Sender: TObject);beginform9.show;end;

procedure TFormMenu.Exit1Click(Sender: TObject);beginapplication.Terminate;end;end.

B. Form Barang Gambar

Created by Rahman Etika Putra0910106 Page 16

Page 17: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Koding:procedure TFormBarang.Button1Click(Sender: TObject);

begin

ADOBrg.Close;ADOBrg.SQL.clear;ADOBrg.SQL.Add ('insert into

Barang(Kode_Barang,Nama_Barang,Harga,Harga_Beli,Stock) values ("'+ edit1.text +'","'+edit2.text+'","'+edit3.Text+'","'+edit4.Text+'","'+edit5.Text+'")');

ADOBrg.ExecSQL;ADOBrg.SQL.Clear;ADOBrg.SQL.add('Select * from Barang');ADOBrg.Open;edit1.text :='';

edit2.Text:=''; edit3.Text:=''; edit4.Text:=''; edit5.Text:='';

end;

procedure TFormBarang.Button4Click(Sender: TObject);beginFormBarang.Close;end;

procedure TFormBarang.Button2Click(Sender: TObject);beginADOBrg.Close;

ADOBrg.SQL.clear;ADOBrg.SQL.Add ('update Barang set Nama_Barang ="'+

edit2.Text +'",Harga="'+ edit3.Text +'",Harga_Beli="'+edit4.Text+'",Stock="'+edit5.Text+'" where Kode_Barang ="'+ edit1.Text +'"');

ADOBrg.ExecSQL;ADOBrg.SQL.Clear;ADOBrg.SQL.add('Select * from Barang');ADOBrg.Open;edit1.text :='';

edit2.Text:='';

Created by Rahman Etika Putra0910106 Page 17

Page 18: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

edit3.Text:=''; edit4.Text:=''; edit5.Text:='';end;

procedure TFormBarang.Button3Click(Sender: TObject);begin

ADOBrg.Close;ADOBrg.SQL.clear;ADOBrg.SQL.Add ('delete from Barang where

Kode_Barang ="'+ edit1.Text +'"');

ADOBrg.ExecSQL;ADOBrg.SQL.Clear;ADOBrg.SQL.add('Select * from Barang');ADOBrg.Open;edit1.text :='';

edit2.Text:=''; edit3.Text:=''; edit4.Text:=''; edit5.Text:='';end;

procedure TFormBarang.Edit1KeyPress(Sender: TObject; var Key: Char);beginif key=#13 thenbegin ADOBrg.Close;

ADOBrg.SQL.clear;ADOBrg.SQL.Add ('select * from Barang where

Kode_Barang ="'+ edit1.Text +'"'); ADOBrg.Open; if not ADOBrg.Eof thenbegin edit2.Text :=ADOBrg .Fields[1].AsString; edit3.Text :=ADOBrg .Fields[2].AsString; edit4.Text :=ADOBrg.Fields[3].AsString; edit5.Text :=ADOBrg.Fields[4].AsString;endelse edit2.SetFocus;end

end;

Created by Rahman Etika Putra0910106 Page 18

Page 19: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

procedure TFormBarang.FormActivate(Sender: TObject);begin edit1.text :='';

end;

end.

C. Form Pelanggan Gambar

Kodingprocedure TFormPelanggan.Button1Click(Sender: TObject);begin ADOPlg.Close;

ADOPlg.SQL.clear;ADOPlg.SQL.Add ('insert into

Pelanggan(Kode_Pelanggan,Nama,Alamat) values ("'+ edit1.text +'","'+edit2.text+'","'+edit3.Text+'")');

ADOPlg.ExecSQL;ADOPlg.SQL.Clear;ADOPlg.SQL.add('Select * from Pelanggan');ADOPlg.Open;edit1.text :='';

Created by Rahman Etika Putra0910106 Page 19

Page 20: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

edit2.Text:=''; edit3.Text:='';end;

procedure TFormPelanggan.Button2Click(Sender: TObject);begin ADOPlg.Close;

ADOPlg.SQL.clear;ADOPlg.SQL.Add ('update Pelanggan set Nama ="'+

edit2.Text +'", Alamat="'+ edit3.Text +'" where Kode_Pelanggan ="'+ edit1.Text +'"');

ADOPlg.ExecSQL;ADOPlg.SQL.Clear;ADOPlg.SQL.add('Select * from Pelanggan');ADOPlg.Open;edit1.text :='';

edit2.text :=''; edit3.text :='';end;

procedure TFormPelanggan.Button3Click(Sender: TObject);begin ADOPlg.Close;

ADOPlg.SQL.clear;ADOPlg.SQL.Add ('delete from Pelanggan where

Kode_Pelanggan ="'+ edit1.Text +'"');

ADOPlg.ExecSQL;ADOPlg.SQL.Clear;ADOPlg.SQL.add('Select * from Pelanggan');ADOPlg.Open;edit1.text :='';

edit2.Text:=''; edit3.Text:='';

end;

procedure TFormPelanggan.Button4Click(Sender: TObject);beginFormPelanggan.Close;end;

procedure TFormPelanggan.FormActivate(Sender: TObject);begin edit1.Text:='';end;

Created by Rahman Etika Putra0910106 Page 20

Page 21: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

procedure TFormPelanggan.Edit1KeyPress(Sender: TObject; var Key: Char);beginif key=#13 thenbegin ADOPlg.Close;

ADOPlg.SQL.clear;ADOPlg.SQL.Add ('select * from Pelanggan where

Kode_Pelanggan ="'+ edit1.Text +'"'); ADOPlg.Open; if not ADOPlg.Eof thenbegin edit2.Text :=ADOPlg .Fields[1].AsString; edit3.Text :=ADOPlg .Fields[2].AsString;end else edit2.SetFocus; endend;

end.

D. Form Distributor Gambar

Created by Rahman Etika Putra0910106 Page 21

Page 22: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Koding

procedure TFormDistributor.Button1Click(Sender: TObject);beginADOquery1.Close;

ADOquery1.SQL.clear;ADOquery1.SQL.Add ('insert into

Distributor(Kd_Distributor,Nama,Alamat,NoTelp) values ("'+ edit1.text +'","'+edit2.text+'","'+edit3.Text+'","'+edit4.Text+'")');

ADOquery1.ExecSQL;ADOquery1.SQL.Clear;ADOquery1.SQL.add('Select * from Distributor');ADOquery1.Open;edit1.text :='';

edit2.Text:=''; edit3.Text:=''; edit4.Text:='';end;

procedure TFormDistributor.Button2Click(Sender: TObject);begin ADOquery1.Close;

ADOquery1.SQL.clear;ADOquery1.SQL.Add ('update Distributor set Nama

="'+edit2.Text +'" where Kd_Distributor ="'+ edit1.Text +'"');ADOquery1.ExecSQL;ADOquery1.SQL.Clear;ADOquery1.SQL.add('Select * from Distributor');ADOquery1.Open;edit1.text :='';

edit2.Text:=''; edit3.Text:=''; edit4.Text:='';end;

procedure TFormDistributor.Button3Click(Sender: TObject);beginadoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('delete from Distributor where Kd_Distributor="'+edit1.text+'"');adoquery1.ExecSQL;

adoquery1.SQL.Clear;

Created by Rahman Etika Putra0910106 Page 22

Page 23: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

adoquery1.SQL.Add('select* from Distributor');adoquery1.Open;

edit1.Text:='';edit2.Text:='';edit3.Text:='';edit4.Text:='';end;

procedure TFormDistributor.Button4Click(Sender: TObject);beginformDistributor.Close;end;

procedure TFormDistributor.Edit1KeyPress(Sender: TObject; var Key: Char);beginif key=#13 thenbegin ADOquery1.Close;

ADOquery1.SQL.clear;ADOquery1.SQL.Add ('select * from Distributor where

Kd_Distributor ="'+ edit1.Text +'"'); ADOquery1.Open; if not ADOquery1.Eof thenbegin edit2.Text :=ADOquery1 .Fields[1].AsString; edit3.Text:=adoquery1.Fields[2].AsString; edit4.Text:=adoquery1.Fields[3].AsString;end else edit2.SetFocus; endend;

end.

Created by Rahman Etika Putra0910106 Page 23

Page 24: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

E. Form Transaksi Penjualan Gambar

Koding

procedure TFormTransaksiPenjualan.Button1Click(Sender: TObject);vari,Jumlah,tot,Total:integer;

beginSG.RowCount:=SG.RowCount+1;sg.cells[1,sg.RowCount-1]:=dblookupcombobox2.text;sg.Cells[2,sg.RowCount-1]:=DBEdit3.Text ;sg.Cells[3,sg.rowcount-1]:= dbedit4.Text ;Jumlah:=strtoint(edit2.Text);sg.cells[4,sg.rowcount-1]:=edit2.Text;Total:=strtoint(edit3.Text);sg.Cells[5,sg.RowCount-1]:=edit3.Text;

tot:=0;for i:=1 to sg.RowCount-1 dobegintot := tot + strtoint(sg.Cells[5,i]);

sg.Cells[0,i]:=inttostr(i);end;edit4.text := inttostr(tot);

edit2.Enabled:=true;

Created by Rahman Etika Putra0910106 Page 24

Page 25: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

end;

procedure TFormTransaksiPenjualan.FormCreate(Sender: TObject);begin

SG.Cells[0,0]:='No'; SG.Cells[1,0]:='Kode_Barang'; Sg.Cells[2,0]:='Nama_Barang'; SG.Cells[3,0]:='Harga'; SG.Cells[4,0]:='Jumlah'; SG.Cells[5,0]:='Total Harga'; dbedit1.Enabled:=false; dbedit2.Enabled:=false; dbedit3.Enabled:=false; dbedit4.Enabled:=false; dbedit5.Enabled:=false; button5.Visible:=false; button6.Visible:=false; button8.Visible:=false; dbedit1.Text:=''; dbedit2.Text:=''; dbedit3.Text:=''; dbedit4.Text:=''; dbedit5.Text:=''; sg.ColWidths [0]:=40; sg.ColWidths [1]:=80; sg.ColWidths [2]:=100; sg.ColWidths [3]:=80; sg.ColWidths [4]:=80; sg.ColWidths [5]:=80; sg.ColWidths [6]:=100;

end;

procedure TFormTransaksiPenjualan.Edit2KeyPress(Sender: TObject; var Key: Char);Var a,b,c,sisa:Integer;

beginif key=#13 thenbeginif edit2.Text ='' then

Created by Rahman Etika Putra0910106 Page 25

Page 26: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

beginedit3.Text:='0';edit2.SetFocus;endelsea:=strtoint(edit2.Text);b:=strtoint(dbedit4.Text);if a > adobrg.Fields[4].AsInteger thenbeginApplication.MessageBox('Data Tidak Mencukupi','Control',MB_ICONSTOP);endelsebeginC := a * b;edit3.Text:=inttostr(c);

end;end;end;

procedure TFormTransaksiPenjualan.Button3Click(Sender: TObject);var i,sisa :integer;Kode_Barang:String;begin

adoquery2.SQL.Clear;adoquery2.SQL.Add('insert into Transaksi(No_Faktur,Tgl_Faktur,Kode_Pelanggan)values ("'+edit1.Text +'","'+datetostr(DateTimePicker1.DateTime) +'","'+DBLookupComboBox1.Text+'")');adoquery2.ExecSQL;

for i :=1 to sg.RowCount-1 dobeginadoquery1.SQL.Clear;adoquery1.sql.add('insert into

Detail(No_Faktur,Kode_Barang,Nama_Barang,Harga,Jumlah,Total) values ("'+ edit1.Text +'","'+ sg.Cells[1,i]+'","'+sg.Cells[2,i]+'","'+sg.Cells[3,i]+'","'+sg.Cells[4,i]+'","'+sg.cells[5,i]+'")');

adoquery1.ExecSQL ;

sisa := adobrg.Fields[4].AsInteger - Strtoint(edit2.Text); Kode_Barang:=dblookupcombobox2.text;

Created by Rahman Etika Putra0910106 Page 26

Page 27: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

adoquery4.Close; adoquery4.sql.clear; adoquery4.SQL.Add('update Barang set Stock="'+ inttostr(sisa) +'" where Kode_Barang="'+Kode_Barang+'"'); adoquery4.ExecSQL;

end;

end;

procedure TFormTransaksiPenjualan.Button2Click(Sender: TObject);begin sg.RowCount := sg.rowcount-1;end;

procedure TFormTransaksiPenjualan.Button4Click(Sender: TObject);beginFormTransaksiPenjualan.Close;end;

procedure TFormTransaksiPenjualan.Edit1KeyPress(Sender: TObject; var Key: Char);var i:integer;beginif key=#13 thenbeginADOQuery1.Close;ADOQuery1.SQL.Clear;ADOQuery1.SQL.add('select * from Detail where No_Faktur ="'+ edit1.Text +'"');ADOQuery1.open;

button5.Enabled:=true;button6.Enabled:=true;

if not ADOQuery1.Eof thenbeginDBLookupComboBox2.KeyValue := ADOQuery1.Fields[1].AsString ;edit2.Text := ADOQuery1.Fields[4].AsString ;edit3.Text := ADOQuery1.Fields[5].AsString ;

adoquery1.Close;adoquery1.SQL.Clear;

Created by Rahman Etika Putra0910106 Page 27

Page 28: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

adoquery1.SQL.Add('select No_Faktur,Kode_Barang,Nama_Barang,Harga,Jumlah, (Harga*Jumlah) as Total from Detail where No_Faktur = "'+ edit1.text +'"');

adoquery1.Open;dsdet.DataSet := adoquery1;dbgrid1.DataSource := dsdet;

adoquery3.Close;adoquery3.SQL.clear;adoquery3.SQL.add('select sum(Harga*Jumlah) from Detail

where No_Faktur = "'+ edit1.text +'"');adoquery3.Open;edit4.Text := adoquery3.Fields[0].AsString;

datetimepicker1.Enabled :=true;DBLookupComboBox2.Enabled:=true;edit2.Enabled :=true;DBGrid1.Visible :=true;sg.Visible:=false ;button5.Visible :=true;button6.Visible :=true;button8.Visible :=true;endelse

button7.Enabled :=true;edit2.Enabled :=false;edit3.Enabled :=false;

end;adoquery2.Close;adoquery2.SQL.Clear;adoquery2.SQL.add('select * from Transaksi where No_Faktur ="'+ edit1.Text +'"');adoquery2.open;if not adoquery2.Eof thenbeginDBLookupComboBox1.KeyValue :=ADOQuery2.Fields[2].AsString ;datetimepicker1.Date:= adoquery2.Fields[1].AsDateTime;DBLookupComboBox1.Enabled :=true;

edit2.Enabled :=true;end

Created by Rahman Etika Putra0910106 Page 28

Page 29: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

elsebutton1.Enabled :=true;

end;

procedure TFormTransaksiPenjualan.Button5Click(Sender: TObject);var a,b,c: integer; Kode_Barang:String;begin a:=strtoint(dbedit5.Text); b:=strtoint(edit2.Text); c:=a+b;

adoquery2.Close;adoquery2.SQL.Clear;adoquery2.SQL.Add('delete from Transaksi where No_Faktur

= "'+ edit1.Text +'"');adoquery2.ExecSQL;

adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('delete from Detail where No_Faktur

="'+ edit1.Text +'"');adoquery1.ExecSQL;

adoquery4.Close; adoquery4.sql.clear; adoquery4.SQL.Add('update Barang set Stock="'+ inttostr(c) +'" where Kode_Barang="'+Kode_Barang+'"'); adoquery4.ExecSQL;

edit1.Text:=''; dbedit1.Text:=''; dbedit2.Text:=''; dbedit3.Text:=''; dbedit4.Text:=''; dbedit5.Text:=''; edit2.Text:=''; edit3.Text:=''; edit4.Text:='';

end;

Created by Rahman Etika Putra0910106 Page 29

Page 30: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

procedure TFormTransaksiPenjualan.Button6Click(Sender: TObject);var updta,updtb,updtc,updtd : integer;begin

updta:=strtoint(DBEdit5.Text);updtb:=strtoint(edit2.Text);updtc:=strtoint(ADOQuery1.Fields[4].AsString) ;updtd:=updta+updtc-updtb;

ADOQuery4.Close;ADOQuery4.sql.clear;ADOQuery4.SQL.Add('update Barang set Stock="'+ inttostr(updtd) +'" where Kode_Barang="'+DBLookupComboBox2.Text +'"');ADOQuery4.ExecSQL;ADOQuery2.Close;ADOQuery2.SQL.Clear;ADOQuery2.SQL.add('update Transaksi set Tgl_Faktur ="'+ datetostr(datetimepicker1.Date)+'",Kode_Pelanggan="'+DBLookupComboBox1.Text +'" where No_Faktur ="'+ edit1.Text +'" ');ADOQuery2.ExecSQL;

ADOquery1.Close;ADOquery1.SQL.clear;ADOquery1.SQL.Add ('update Detail set Kode_Barang ="'+ dblookupcombobox2.Text +'", Nama_Barang="'+ dbedit3.Text +'",Harga="'+dbedit4.Text+'",Jumlah="'+edit2.Text+'",Total="'+edit3.Text+'" where No_Faktur ="'+ edit1.Text +'"');ADOquery1.ExecSQL;ADOquery1.SQL.Clear;ADOquery1.SQL.add('Select * from Detail where No_Faktur="'+edit1.Text+'" and Kode_Barang="'+DBLookupComboBox2.Text +'"');ADOquery1.Open;

edit1.text :='';edit2.Text :='';edit3.Text :='';edit4.Text :='';

Created by Rahman Etika Putra0910106 Page 30

Page 31: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

DBEdit1.Text:='';DBEdit2.Text:='';DBEdit3.Text:='';DBEdit4.Text:='';DBEdit5.Text:='';end;

procedure TFormTransaksiPenjualan.Button7Click(Sender: TObject);beginsg.RowCount := sg.rowcount-1;adoplg.Close;

adoplg.sql.clear;adoplg.SQL.Add('select * from Pelanggan');adoplg.open;dsplg.dataset := adoplg;DBLookupComboBox1.ListSource:=dsplg;

DBLookupCombobox1.ListField:='Kode_Pelanggan'; DBLookupComboBox1.KeyField:='Kode_Pelanggan';

adobrg.Close;adobrg.sql.clear;adobrg.SQL.Add('select * from Barang');adobrg.open;dsbrg.dataset := adobrg;

DBLookupComboBox2.ListSource:=dsbrg; DBLookupCombobox2.ListField:='Kode_Barang'; DBLookupComboBox2.KeyField:='Kode_Barang'; button5.Enabled:=false; button6.Enabled:=false;

dbgrid1.Visible:=false;sg.Visible:=true;

button1.Enabled:=true; edit2.Enabled:=true;

dbedit1.Text:='';dbedit2.Text:='';dbedit3.Text:='';dbedit4.Text:='';

dbedit5.Text:=''; edit2.Text:=''; edit3.Text:='';end;

Created by Rahman Etika Putra0910106 Page 31

Page 32: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

procedure TFormTransaksiPenjualan.DBLookupComboBox2Click(Sender: TObject);beginedit2.Text:='';edit3.Text:='';end;

procedure TFormTransaksiPenjualan.Button8Click(Sender: TObject);begin

adotrans.Close;adotrans.SQL.Clear;adotrans.SQL.Add('select * from Transaksi, Pelanggan where Transaksi.Kode_Pelanggan = Pelanggan.Kode_Pelanggan');adotrans.Open;adotrans.Active:=true;

Rvproject1.Execute;Rvproject1.ExecuteReport('Projectjual.rav');

end;

end.

Created by Rahman Etika Putra0910106 Page 32

Page 33: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

F. Form Transaksi Pembelian Gambar

Koding

procedure TFormTransaksiPembelian.Edit1KeyPress(Sender: TObject; var Key: Char);var i:integer;beginif key=#13 thenbeginADOQuery1.Close;ADOQuery1.SQL.Clear;ADOQuery1.SQL.add('select * from DBeli where No_TransBeli ="'+ edit1.Text +'"');ADOQuery1.open;

if not ADOQuery1.Eof thenbeginDBLookupComboBox2.KeyValue := ADOQuery1.Fields[1].AsString ;edit2.Text := ADOQuery1.Fields[4].AsString ;edit3.Text := ADOQuery1.Fields[5].AsString ;

Created by Rahman Etika Putra0910106 Page 33

Page 34: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('select

No_TransBeli,Kode_Barang,Nama_Barang,Harga_Beli,Jumlah, (Harga_Beli*Jumlah) as Total from DBeli where No_TransBeli = "'+ edit1.text +'"');

adoquery1.Open;dsdet.DataSet := adoquery1;dbgrid1.DataSource := dsdet;

adoquery3.Close;adoquery3.SQL.clear;adoquery3.SQL.add('select sum(Harga_Beli*Jumlah) from

DBeli where No_TransBeli = "'+ edit1.text +'"');adoquery3.Open;edit4.Text := adoquery3.Fields[0].AsString;

datetimepicker1.Enabled :=true;DBLookupComboBox2.Enabled:=true;edit2.Enabled :=true;DBGrid1.Visible :=true;sg.Visible:=false ;button5.Visible :=true;button6.Visible :=true;button8.Visible:=true;endelse

button7.Enabled :=true;edit2.Enabled :=false;edit3.Enabled :=false;

end;adoquery2.Close;adoquery2.SQL.Clear;adoquery2.SQL.add('select * from Beli where No_TransBeli ="'+ edit1.Text +'"');adoquery2.open;if not adoquery2.Eof thenbeginDBLookupComboBox1.KeyValue :=ADOQuery2.Fields[2].AsString ;datetimepicker1.Date:= adoquery2.Fields[1].AsDateTime;DBLookupComboBox1.Enabled :=true;

Created by Rahman Etika Putra0910106 Page 34

Page 35: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

edit2.Enabled :=true;endelsebutton1.Enabled :=true;

end;

procedure TFormTransaksiPembelian.Button7Click(Sender: TObject);beginsg.RowCount := sg.rowcount-1;adodst.Close;

adodst.sql.clear;adodst.SQL.Add('select * from Distributor');adodst.open;dsdst.DataSet := adodst;DBLookupComboBox1.ListSource:=dsdst;

DBLookupCombobox1.ListField:='Kd_Distributor'; DBLookupComboBox1.KeyField:='Kd_Distributor';

adobrg.Close;adobrg.sql.clear;adobrg.SQL.Add('select * from Barang');adobrg.open;dsbrg.dataset := adobrg;

DBLookupComboBox2.ListSource:=dsbrg; DBLookupCombobox2.ListField:='Kode_Barang'; DBLookupComboBox2.KeyField:='Kode_Barang'; button5.Enabled:=false; button6.Enabled:=false;

dbgrid1.Visible:=false;sg.Visible:=true;

button1.Enabled:=true; edit2.Enabled:=true;

dbedit1.Text:='';dbedit2.Text:='';dbedit3.Text:='';dbedit4.Text:='';

dbedit5.Text:=''; edit2.Text:=''; edit3.Text:='';end;

procedure TFormTransaksiPembelian.Button1Click(Sender: TObject);

Created by Rahman Etika Putra0910106 Page 35

Page 36: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Var i,Jumlah,tot,Total:integer;beginSG.RowCount:=SG.RowCount+1;sg.cells[1,sg.RowCount-1]:=dblookupcombobox2.text;sg.Cells[2,sg.RowCount-1]:=DBEdit3.Text ;sg.Cells[3,sg.rowcount-1]:= dbedit4.Text ;Jumlah:=strtoint(edit2.Text);sg.cells[4,sg.rowcount-1]:=edit2.Text;Total:=strtoint(edit3.Text);sg.Cells[5,sg.RowCount-1]:=edit3.Text;

tot:=0;for i:=1 to sg.RowCount-1 dobegintot := tot + strtoint(sg.Cells[5,i]);

sg.Cells[0,i]:=inttostr(i);end;edit4.text := inttostr(tot);

end;

procedure TFormTransaksiPembelian.Edit2KeyPress(Sender: TObject; var Key: Char);Var a,b,c,sisa:Integer;beginif key=#13 thenbeginif edit2.Text ='' thenbeginedit3.Text:='0';edit2.SetFocus;endelsea:=strtoint(edit2.Text);b:=strtoint(dbedit4.Text);if a > adobrg.Fields[4].AsInteger thenbeginApplication.MessageBox('Data Tidak Mencukupi','Control',MB_ICONSTOP);endelsebeginC := a * b;edit3.Text:=inttostr(c);

Created by Rahman Etika Putra0910106 Page 36

Page 37: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

end;end;end;

procedure TFormTransaksiPembelian.Button3Click(Sender: TObject);var i,sisa :integer;Kode_Barang:String;beginadoquery2.SQL.Clear;adoquery2.SQL.Add('insert into Beli(No_TransBeli,Tgl_TransBeli,Kd_Distributor)values ("'+edit1.Text +'","'+datetostr(DateTimePicker1.DateTime) +'","'+DBLookupComboBox1.Text+'")');adoquery2.ExecSQL;

for i :=1 to sg.RowCount-1 dobeginadoquery1.SQL.Clear;adoquery1.sql.add('insert into

DBeli(No_TransBeli,Kode_Barang,Nama_Barang,Harga_Beli,Jumlah,Total) values ("'+ edit1.Text +'","'+ sg.Cells[1,i]+'","'+sg.Cells[2,i]+'","'+sg.Cells[3,i]+'","'+sg.Cells[4,i]+'","'+sg.cells[5,i]+'")');

adoquery1.ExecSQL ; sisa := Strtoint(edit2.Text)+ adobrg.Fields[4].AsInteger ; Kode_Barang:=dblookupcombobox2.text; adoquery4.Close; adoquery4.sql.clear; adoquery4.SQL.Add('update Barang set Stock="'+ inttostr(sisa) +'" where Kode_Barang="'+Kode_Barang+'"'); adoquery4.ExecSQL;

end;

end;

procedure TFormTransaksiPembelian.FormCreate(Sender: TObject);beginSG.Cells[0,0]:='No'; SG.Cells[1,0]:='Kode_Barang'; Sg.Cells[2,0]:='Nama_Barang'; SG.Cells[3,0]:='Harga'; SG.Cells[4,0]:='Jumlah'; SG.Cells[5,0]:='Total Harga';

Created by Rahman Etika Putra0910106 Page 37

Page 38: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

sg.ColWidths [0]:=40; sg.ColWidths [1]:=80; sg.ColWidths [2]:=100; sg.ColWidths [3]:=80; sg.ColWidths [4]:=80; sg.ColWidths [5]:=80; dbedit1.Enabled:=false; dbedit2.Enabled:=false; dbedit3.Enabled:=false; dbedit4.Enabled:=false; dbedit5.Enabled:=false; button5.Visible:=false; button6.Visible:=false; button8.Visible:=false; dbedit1.Text:=''; dbedit2.Text:=''; dbedit3.Text:=''; dbedit4.Text:=''; dbedit5.Text:=''; end;

procedure TFormTransaksiPembelian.Button4Click(Sender: TObject);beginformTransaksiPembelian.Close;end;

procedure TFormTransaksiPembelian.Button6Click(Sender: TObject);var updta,updtb,updtc,updtd : integer;begin

updta:=strtoint(edit2.Text);updtb:=strtoint(ADObrg.Fields[4].AsString) ;updtc:=strtoint(adoquery1.Fields[4].AsString);updtd:=(updtb-updtc)+updta;

ADOQuery4.Close;ADOQuery4.sql.clear;ADOQuery4.SQL.Add('update Barang set Stock="'+ inttostr(updtd) +'" where Kode_Barang="'+DBLookupComboBox2.Text +'"');

Created by Rahman Etika Putra0910106 Page 38

Page 39: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

ADOQuery4.ExecSQL;ADOQuery2.Close;ADOQuery2.SQL.Clear;ADOQuery2.SQL.add('update Beli set Tgl_TransBeli ="'+ datetostr(datetimepicker1.Date)+'",Kd_Distributor="'+DBLookupComboBox1.Text +'" where No_TransBeli ="'+ edit1.Text +'" ');ADOQuery2.ExecSQL;

ADOquery1.Close;ADOquery1.SQL.clear;ADOquery1.SQL.Add ('update DBeli set Kode_Barang ="'+ dblookupcombobox2.Text +'", Nama_Barang="'+ dbedit3.Text +'",Harga_Beli="'+dbedit4.Text+'",Jumlah="'+edit2.Text+'",Total="'+edit3.Text+'" where No_TransBeli ="'+ edit1.Text +'"');ADOquery1.ExecSQL;ADOquery1.SQL.Clear;ADOquery1.SQL.add('Select * from DBeli where No_TransBeli="'+edit1.Text+'" and Kode_Barang="'+DBLookupComboBox2.Text +'"');ADOquery1.Open;

edit1.text :='';edit2.Text :='';edit3.Text :='';edit4.Text :='';

DBEdit1.Text:='';DBEdit2.Text:='';DBEdit3.Text:='';DBEdit4.Text:='';end;

procedure TFormTransaksiPembelian.Button2Click(Sender: TObject);beginsg.RowCount := sg.rowcount-1;end;

procedure TFormTransaksiPembelian.Button5Click(Sender: TObject);var a,b,c: integer; Kode_Barang:String;begin

Created by Rahman Etika Putra0910106 Page 39

Page 40: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

a:=strtoint(adobrg.Fields[4].Asstring); b:=strtoint(edit2.Text); c:=a-b;

adoquery2.Close;adoquery2.SQL.Clear;adoquery2.SQL.Add('delete from Beli where No_TransBeli =

"'+ edit1.Text +'"');adoquery2.ExecSQL;

adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('delete from DBeli where No_TransBeli

="'+ edit1.Text +'"');adoquery1.ExecSQL;

Kode_Barang:=dblookupcombobox2.text; adoquery4.Close; adoquery4.sql.clear; adoquery4.SQL.Add('update Barang set Stock="'+ inttostr(c) +'" where Kode_Barang="'+Kode_Barang+'"'); adoquery4.ExecSQL;

edit1.Text:=''; dbedit1.Text:=''; dbedit2.Text:=''; dbedit3.Text:=''; dbedit4.Text:=''; edit2.Text:=''; edit3.Text:=''; edit4.Text:='';

end;

procedure TFormTransaksiPembelian.Button8Click(Sender: TObject);beginadotrans.Close;adotrans.SQL.Clear;adotrans.SQL.Add('select * from Beli, Distributor where Beli.Kd_Distributor = Beli.Kd_Distributor');adotrans.Open;adotrans.Active:=true;

Rvproject1.Execute;Rvproject1.ExecuteReport('Projectbeli.rav');

Created by Rahman Etika Putra0910106 Page 40

Page 41: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

end;

end.LANGKAH-LANGKAH PEMBUATAN REPORT

A. Laporan Barang1. Design Form seperti di bawah ini:

2. Component yang digunakan- Ado Connection- Ado Query- Data Source- RV Project- RV DataSetConnection

3. Koneksi ke Database- Klik ADOconnection pada Form, klik ConnectionString (…),

klik Build, Klik Microsoft Office 12.0 Acces Database Engine OLEDB Provider Dan klik next, pada data source ketikkan : F:\Lab\Delphi\After Mid\I\Trans.accdb, dan yang terakhir klik test connection.

- Klik ADOquery pada Form,pada properties klik ConnectionString (…), klik Build, Klik Microsoft Office 12.0 Acces Database Engine OLEDB Provider Dan klik next, pada data source ketikkan : F:\Lab\Delphi\After Mid\I\Trans.accdb, dan yang terakhir klik test connection.lalu

Created by Rahman Etika Putra0910106 Page 41

Page 42: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

klik sql dan ketik: Select* From Barang,kemudian ubah Active jadi True

- Klik Datasource, pada properties pilih DataSet :ADOQuery1

- Klik RV DataSetConnection, pada properties pilih DataSet: ADOQuery1

4. Double Klik RV Project,maka akan tampil :

- Klik file,klik new data object- Klik direct dataview- Klik finish- Klik RVDataSetConnection(DT),lalu klik finish- Klik menu tools pada Rave, klik report wizard,klik simple table- Klik DataView1, klik All,lalu klik next,next,dan yang terakhir

klik generate, maka tampil seperti berikut:

Created by Rahman Etika Putra0910106 Page 42

Page 43: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

- Ubah Simple Table Report jadi Daftar Barang- Untuk melihat hasil report tekan F9 lalu klik Ok

- Lalu Klik file, klik save as, tentukan nama dan tempat penyimpanan, klik save

5. Kembali ke Form Delphi- Klik RV Project, lalu pada properties klik project file, pilih file

report yang disimpan tadi,lalu klik Open- Double klik tombol CETAK, lalu ketik koding berikut:

procedure TForm7.Button1Click(Sender: TObject);beginadoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('select * from Barang');adoquery1.Open;adoquery1.Active:=true;Rvcetakbrg.Execute;Rvcetakbrg.ExecuteReport('Projectcetakbarang.rav'); end;

- Double Klik tombol CANCEL, lalu ketik koding berikut:procedure TForm7.Button2Click(Sender: TObject);

Created by Rahman Etika Putra0910106 Page 43

Page 44: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

beginform7.Close;end;

B. Laporan Transaksi Penjualan Barang1. Tambahkan Component pada Form Transaksi Penjualan Barang

- ADO Connection (1)- ADO Query (2)- RV Project (1)- Button (1)

2. Koneksikan ADO Connection dan ADO Query ke Database- Klik ADO Query1, Pada properties klik SQL, lalu ketik select

* from Transaksi,Pelanggan where Transaksi.Kode_Pelanggan=Pelanggan.Kode_Pelanggan,ubah Name:ADOTrans,lalu ubah Active:True.

- Klik ADO Query2, pada properties klik SQL, lalu ketik select*,Detail.Harga*Detail.Jumlah as Total from Detail,Barang where Detail.Kode_Barang=Barang.Kode_Barang ,ubah Name:ADOdetail, lalu ubah Active:True.

3. Klik RVDataSetConnection1,pada properties klik DataSet, pilih ADOTrans , ubah Name jadi Rvtransaksi

4. Klik RVDataSetConnection1,pada properties klik DataSet, pilih ADOdetail , ubah Name jadi Rvdetail

5. Double klik RV Project,sehingga muncul tampilan seperti berikut:

- Buat 2 data view yg terhubung ke query(1 transaksi,1detail) dengan cara

- Klik file,klik new data object klik direct dataview,klik next- Maka muncul seperti dibawah:

Created by Rahman Etika Putra0910106 Page 44

Page 45: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

- Klik Rvtransaksi(DT) ,klik finish,lalu- Klik file,klik new data object klik direct dataview,klik next- Klik Rvdetail lalu klik finish- Klik tab report, lalu klik Region Component- Tambahkan 3 databand component dan satu band component

(tab report)- Sehingga tampil seperti berikut:

- Klik Band Component, ubah text jadi LaporanTransaksi Penjualan Barang

- Klik DataBand1 lalu ubah Style menjadi master(body header)

Created by Rahman Etika Putra0910106 Page 45

Page 46: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Dataview: Dataview1 Detail key: No_Faktur Star new Page: True Ambil 5 buah DataText Component,lalu letakkan pada

DataBand1 Klik Data Text Component1, ubah

DataView:DataView1,DataField:No_Faktur Klik Data Text Component2, ubah

DataView:DataView1,DataField:Tgl_Faktur Klik Data Text Component3, ubah

DataView:DataView1,DataField:Kode_Pelanggan Klik Data Text Component4, ubah

DataView:DataView1,DataField:Nama Klik Data Text Component5, ubah

DataView:DataView1,DataField:Alamat Kemudian ambil 5 buah Text Component pada tab

Standard,lalu ubah text sesuai Data Text Component, sehingga tampilan seperti berikut:

- Klik Databand2 lalu ubah Style menjadi detail Dataview:Dataview2 Detail key :No_Faktur ControllerBand:DataBand1 MasterDataView:DataView1 MasterKey: No_Faktur Ambil 7 buah Data Text Component, letakkan pada

DataBand2 Klik Data Text Component1, ubah

DataView:DataView2,DataField:No_Faktur Klik Data Text Component2, ubah

DataView:DataView2,DataField:Detail.Kode_Barang Klik Data Text Component3, ubah

DataView:DataView2,DataField:Detail.Nama_Barang

Created by Rahman Etika Putra0910106 Page 46

Page 47: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Klik Data Text Component4, ubah DataView:DataView2,DataField:Detail.Harga

Klik Data Text Component5, ubah DataView:DataView2,DataField:Stock

Klik Data Text Component6, ubah DataView:DataView2,DataField:Jumlah

Klik Data Text Component7, ubah DataView:DataView2,DataField:Detail.Total

Kemudian ambil 7 buah Text Component pada tab Standard,lalu ubah text sesuai Data Text Component, sehingga tampilan seperti berikut:

- Klik Databand3 lalu ubah DataView:DataView2 DetailKey:No_Faktur Controllerband:DataBand1 MasterDataView:DataView1 MasterKey:No_Faktur Ambil Calc Text Component(Tab Report),letakkan

pada DataBand3 Lalu atur Controller:DataBand2,

DataView:DataView2.DataField:Detail.Total Lalu ambil Text Component ubah text jadi Total Sehingga Muncul tampilan seperti dibawah:

- Lalu tekan F9,klik Ok maka akn tampil seperti gambar dibawah

Created by Rahman Etika Putra0910106 Page 47

Page 48: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

- Setelah itu pilih file, save as,tentukan nama dan lokasi penyimpanan,kemudian klik save.

- Kemudian kembali ke form Transaksi Penjualan Barang,klik RV Project, lalu pada properties klik ProjectFile,pilih report yang disimpan tadi,lalu klik Open

- Kemudian klik button8,ganti caption jadi CETAK, lalu double klik CETAK dan ketik koding berikut:procedure TFormTransaksiPenjualan.Button8Click(Sender: TObject);begin

adotrans.Close;adotrans.SQL.Clear;adotrans.SQL.Add('select * from Transaksi, Pelanggan where Transaksi.Kode_Pelanggan = Pelanggan.Kode_Pelanggan');adotrans.Open;adotrans.Active:=true;

Rvproject1.Execute;Rvproject1.ExecuteReport('Projectjual.rav');

end;

C. Laporan Transaksi Pembelian Barang1. Tambahkan Component pada Form Transaksi Pembelian Barang

Created by Rahman Etika Putra0910106 Page 48

Page 49: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

- ADO Connection (1)- ADO Query (2)- RV Project (1)- Button (1)

2. Koneksikan ADO Connection dan ADO Query ke Database- Klik ADO Query1, Pada properties klik SQL, lalu ketik select

* from Beli,Distributor where Beli.Kd_Distributor=Distributor.Kd_Distributor

- Name:ADOTrans,lalu ubah Active:True.- Klik ADO Query2, pada properties klik SQL, lalu

ketikselect*,DBeli.Harga_Beli*DBeli.Jumlah as Total from DBeli, Barang where DBeli.Kode_Barang=Barang.Kode_Barang ,ubah Name:ADOdetail, lalu ubah Active:True.

3. Klik RVDataSetConnection1,pada properties klik DataSet, pilih ADOTrans , ubah Name jadi Rvbeli

4. Klik RVDataSetConnection1,pada properties klik DataSet, pilih ADOdetail , ubah Name jadi Rvdbeli

5. Double klik RV Project,sehingga muncul tampilan seperti berikut

- Buat 2 data view yg terhubung ke query(1 transaksi,1detail) dengan cara

- Klik file,klik new data object klik direct dataview,klik next- Maka muncul seperti dibawah:

Created by Rahman Etika Putra0910106 Page 49

Page 50: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

- Klik RvBeli(DT) ,klik finish,lalu- Klik file,klik new data object klik direct dataview,klik next- Klik Rvdbeli lalu klik finish- Klik tab report, lalu klik Region Component- Tambahkan 3 databand component dan satu band component

(tab report)- Sehingga tampil seperti berikut:

- Klik Band Component, ubah text jadi LaporanTransaksi Pembelian Barang

- Klik DataBand1 lalu ubah Style menjadi master(body header) Dataview: Dataview1 Detail key: No_TransBeli

Created by Rahman Etika Putra0910106 Page 50

Page 51: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Star new Page: True Ambil 6 buah DataText Component,lalu letakkan pada

DataBand1 Klik Data Text Component1, ubah

DataView:DataView1,DataField:No_TransBeli Klik Data Text Component2, ubah

DataView:DataView1,DataField:Tgl_TransBeli Klik Data Text Component3, ubah

DataView:DataView1,DataField:Beli.Kd_Distributor Klik Data Text Component4, ubah

DataView:DataView1,DataField:Nama Klik Data Text Component5, ubah

DataView:DataView1,DataField:Alamat Klik Data Text Component6, ubah

DataView:DataView1,DataField:NoTelp Kemudian ambil 6 buah Text Component pada tab

Standard,lalu ubah text sesuai Data Text Component, sehingga tampilan seperti berikut:

- Klik Databand2 lalu ubah Style menjadi detail Dataview:Dataview2 Detail key :No_TransBeli ControllerBand:DataBand1 MasterDataView:DataView1 MasterKey: No_TransBeli Ambil 6 buah Data Text Component, letakkan pada

DataBand2 Klik Data Text Component1, ubah

DataView:DataView2,DataField:No_TransBeli Klik Data Text Component2, ubah

DataView:DataView2,DataField:DBeli.Kode_Barang Klik Data Text Component3, ubah

DataView:DataView2,DataField:DBeli.Nama_Barang Klik Data Text Component4, ubah

DataView:DataView2,DataField:DBeli.Harga_Beli Klik Data Text Component5, ubah

DataView:DataView2,DataField:Jumlah

Created by Rahman Etika Putra0910106 Page 51

Page 52: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

Klik Data Text Component6, ubah DataView:DataView2,DataField:DBeli.Total

Kemudian ambil 6 buah Text Component pada tab Standard,lalu ubah text sesuai Data Text Component, sehingga tampilan seperti berikut:

- Klik Databand3 lalu ubah DataView:DataView2 DetailKey:No_TransBeli Controllerband:DataBand1 MasterDataView:DataView1 MasterKey:No_TransBeli Ambil Calc Text Component(Tab Report),letakkan

pada DataBand3 Lalu atur Controller:DataBand2,

DataView:DataView2.DataField:DBeli.Total Lalu ambil Text Component ubah text jadi Total Sehingga Muncul tampilan seperti dibawah:

Created by Rahman Etika Putra0910106 Page 52

Page 53: Modu Aplikasi Pemebelian dan Penjualan Barang menggunakan Delphi

- Lalu tekan F9,klik Ok maka akan tampil seperti gambar dibawah

- Setelah itu pilih file, save as,tentukan nama dan lokasi penyimpanan,kemudian klik save.

- Kemudian kembali ke form Transaksi Pembelian Barang,klik RV Project, lalu pada properties klik ProjectFile,pilih report yang disimpan tadi,lalu klik Open

- Kemudian klik button8,ganti caption jadi CETAK, lalu double klik CETAK dan ketik koding berikut:procedure TFormTransaksiPembelian.Button8Click(Sender: TObject);beginadotrans.Close;adotrans.SQL.Clear;adotrans.SQL.Add('select * from Beli, Distributor where Beli.Kd_Distributor = Beli.Kd_Distributor');adotrans.Open;adotrans.Active:=true;

Rvproject1.Execute;Rvproject1.ExecuteReport('Projectbeli.rav');end;

Created by Rahman Etika Putra0910106 Page 53