Escolar Documentos
Profissional Documentos
Cultura Documentos
Bismillahirrahmanirrahim
Padang,7 Februari
2011
Penulis
KATA PENGANTAR.................................................................................... 1
DAFTAR ISI................................................................................................... 2
PENDAHULUAN........................................................................................... 3
LAMPIRAN FORM....................................................................................... 15
A. Form Menu..................................................................................... 15
B. Form Barang................................................................................... 16
C. Form Pelanggan.............................................................................. 19
D. Form Distributor............................................................................. 21
A. Laporan Barang.............................................................................. 41
Pengertian Delphi
Delphi adalah suatu bahasa pemograman (development language) yang digunakan
untk merancang suatu aplikasi program.
a. Kegunaan Delphi
1. untuk membuat aplikasi windows
2. Untuk merancang aplikasi program berbasis grafis
3. Untuk membuat program berbasis jaringan (client/server)
4. Untuk merancang program .Net (berbasis internet)
b. Keunggulan Delphi
1. 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.
b. Pelanggan
Field Nama Data Type
Kode_Pelanggan Text
Nama Text
Alamat Text
c. Transaksi
Field Nama Data Type
No_Faktur Text
Tgl_Faktur Date/Time
Kode_Pelanggan Text
d. Detail
Field Nama Data Type
No_Faktur Text
Kode_Barang Text
Nama_Barang Text
Harga Number
Jumlah Number
Total Number
e. Distributor
f. Beli
g. DBeli
Field Nama Data Type
No_TransBeli Text
Kode_Barang Text
Nama_Barang Text
Harga_Beli Number
Jumlah Number
Total Number
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 database
Klik ADOconnection pada Form, klik ConnectionString (…), klik Build,
Klik Microsoft Office 12.0 Acces Database Engine OLEDB Provider
button5.Enabled:=true;
button6.Enabled:=true;
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;
datetimepicker1.Enabled :=true;
DBLookupComboBox2.Enabled:=true;
edit2.Enabled :=true;
DBGrid1.Visible :=true;
sg.Visible:=false ;
button5.Visible :=true;
button6.Visible :=true;
button8.Visible :=true;
end
else
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 then
begin
DBLookupComboBox1.KeyValue :=ADOQuery2.Fields[2].AsString ;
datetimepicker1.Date:= adoquery2.Fields[1].AsDateTime;
DBLookupComboBox1.Enabled :=true;
edit2.Enabled :=true;
end
else
button1.Enabled :=true;
end;
22. Buat Koding pada button 1,ganti dulu caption :OK pada properties:
procedure TFormTransaksiPenjualan.Button1Click(Sender: TObject);
var
i,Jumlah,tot,Total:integer;
begin
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 do
begin
adoquery1.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 ;
end;
25. Buat Koding pada button 4,ganti dulu caption :CLOSE pada properties:
procedure TFormTransaksiPenjualan.Button4Click(Sender: TObject);
begin
FormTransaksiPenjualan.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:='';
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;
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);
begin
sg.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;
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;
A. Form Menu
Gambar
Koding
procedure TFormMenu.Barang1Click(Sender: TObject);
begin
FormBarang.show;
end;
B. Form Barang
Gambar
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;
ADOBrg.ExecSQL;
ADOBrg.SQL.Clear;
ADOBrg.SQL.add('Select * from Barang');
ADOBrg.Open;
edit1.text :='';
edit2.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;
end;
end;
end.
C. Form Pelanggan
Gambar
Koding
procedure 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 :='';
ADOPlg.ExecSQL;
ADOPlg.SQL.Clear;
ADOPlg.SQL.add('Select * from Pelanggan');
ADOPlg.Open;
edit1.text :='';
edit2.Text:='';
edit3.Text:='';
end;
end.
D. Form Distributor
Gambar
ADOquery1.ExecSQL;
ADOquery1.SQL.Clear;
ADOquery1.SQL.add('Select * from Distributor');
ADOquery1.Open;
edit1.text :='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
end;
adoquery1.SQL.Clear;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
end;
end.
Koding
procedure TFormTransaksiPenjualan.Button1Click(Sender:
TObject);
var
i,Jumlah,tot,Total:integer;
begin
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 do
begin
tot := tot + strtoint(sg.Cells[5,i]);
sg.Cells[0,i]:=inttostr(i);
end;
edit4.text := inttostr(tot);
edit2.Enabled:=true;
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;
begin
if key=#13 then
begin
if edit2.Text ='' then
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 do
begin
adoquery1.SQL.Clear;
adoquery1.sql.add('insert into
Detail(No_Faktur,Kode_Barang,Nama_Barang,Harga,Jumlah,Tota
l) 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 ;
end;
procedure TFormTransaksiPenjualan.Button2Click(Sender:
TObject);
begin
sg.RowCount := sg.rowcount-1;
end;
procedure TFormTransaksiPenjualan.Button4Click(Sender:
TObject);
begin
FormTransaksiPenjualan.Close;
end;
procedure TFormTransaksiPenjualan.Edit1KeyPress(Sender:
TObject; var Key: Char);
var i:integer;
begin
if key=#13 then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.add('select * from Detail where No_Faktur ="'+
edit1.Text +'"');
ADOQuery1.open;
button5.Enabled:=true;
button6.Enabled:=true;
adoquery1.Close;
adoquery1.SQL.Clear;
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;
end
else
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 then
begin
DBLookupComboBox1.KeyValue
:=ADOQuery2.Fields[2].AsString ;
datetimepicker1.Date:= adoquery2.Fields[1].AsDateTime;
DBLookupComboBox1.Enabled :=true;
edit2.Enabled :=true;
end
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;
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="'+ed
it3.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 :='';
procedure TFormTransaksiPenjualan.Button7Click(Sender:
TObject);
begin
sg.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;
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.
Koding
procedure TFormTransaksiPembelian.Edit1KeyPress(Sender:
TObject; var Key: Char);
var i:integer;
begin
if key=#13 then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.add('select * from DBeli where No_TransBeli
="'+ edit1.Text +'"');
ADOQuery1.open;
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;
end
else
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 then
begin
DBLookupComboBox1.KeyValue
:=ADOQuery2.Fields[2].AsString ;
datetimepicker1.Date:= adoquery2.Fields[1].AsDateTime;
DBLookupComboBox1.Enabled :=true;
end;
procedure TFormTransaksiPembelian.Button7Click(Sender:
TObject);
begin
sg.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);
end;
procedure TFormTransaksiPembelian.Edit2KeyPress(Sender:
TObject; var Key: Char);
Var a,b,c,sisa:Integer;
begin
if key=#13 then
begin
if edit2.Text ='' then
begin
edit3.Text:='0';
edit2.SetFocus;
end
else
a:=strtoint(edit2.Text);
b:=strtoint(dbedit4.Text);
if a > adobrg.Fields[4].AsInteger then
begin
Application.MessageBox('Data Tidak
Mencukupi','Control',MB_ICONSTOP);
end
else
begin
C := a * b;
edit3.Text:=inttostr(c);
procedure TFormTransaksiPembelian.Button3Click(Sender:
TObject);
var i,sisa :integer;
Kode_Barang:String;
begin
adoquery2.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 do
begin
adoquery1.SQL.Clear;
adoquery1.sql.add('insert into
DBeli(No_TransBeli,Kode_Barang,Nama_Barang,Harga_Beli,Jum
lah,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);
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';
end;
procedure TFormTransaksiPembelian.Button4Click(Sender:
TObject);
begin
formTransaksiPembelian.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 +'"');
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);
begin
sg.RowCount := sg.rowcount-1;
end;
procedure TFormTransaksiPembelian.Button5Click(Sender:
TObject);
var a,b,c: integer;
Kode_Barang:String;
begin
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);
begin
adotrans.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.
LANGKAH-LANGKAH PEMBUATAN REPORT
A. Laporan Barang
1. Design Form seperti di bawah ini:
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.
-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);
begin
adoquery1.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);
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;
Rvproject1.Execute;
Rvproject1.ExecuteReport('Projectbeli.rav');
end;