Pemrograman Delphi 4. Aplikasi Pengolahan Transaksi Penjualan Barang
Form Transaksi :
Koding Programnya adalah :
1.membuat koding pada edit1, sehingga apabila diinputkan no transaksi sistem akan mendeteksi data apakah ditemukan atau tidak, jika ditemukan maka seluruh data yang berhubungan dengan nomor transaksi tersebut akan ditampilkan adapun caranya adalah double klik Edit1, lalu ganti event dari change menjadi KeyPress pada properties dan ketikkan kodingnya sebagai berikut :
procedure TForm2.Edit1KeyPresbs(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
adoquery3.Close;
adoquery3.SQL.Clear;
adoquery3.SQL.Add('select * from penjualan where no_faktur = "'+ edit1.text +'"');
adoquery3.Open;
if not adoquery3.Eof then
begin
Sg.Visible:=false;
dbgrid1.Visible:=true;
DateTimePicker1.Date := adoquery3.fields[2].AsDateTime;
datasource3.dataset := adoquery3;
DBLookupComboBox1.DataSource:=datasource3;
DBLookupComboBox1.DataField:='id_pembeli';
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.add('select * from pelanggan where id_pembeli="'+ adoquery3.Fields[1].AsString +'"');
adoquery2.Open;
if not adoquery2.Eof then
begin
datasource2.DataSet := adoquery2;
dbedit1.DataSource:=datasource2;
dbedit1.DataField:='NAMA';
Dbedit2.datasource:=datasource2;
dbedit2.DataField:='Alamat';
end;
adoquery4.Close;
adoquery4.SQL.Clear;
adoquery4.SQL.Add('select no_Faktur,kode_barang,harga,jumlah, (harga*jumlah) as total from djual where no_Faktur = "'+ edit1.text +'"');
adoquery4.Open;
datasource4.DataSet := adoquery4;
dbgrid1.DataSource := datasource4;
adoquery5.Close;
adoquery5.SQL.clear;
adoquery5.SQL.add('select sum(harga*jumlah) from djual where no_Faktur = "'+ edit1.text +'"');
adoquery5.Open;
edit4.Text := adoquery5.Fields[0].AsString;
button6.Visible:=true;
button7.Visible:=true;
dbedit3.Text:='';
dbedit4.Text:='';
edit2.Text:='';
edit3.Text :='';
DBLookupComboBox2.Enabled:=false;
dbedit3.Enabled:=false;
dbedit4.Enabled:=false;
end
else
begin
DBLookupComboBox1.Enabled:=true;
DBLookupComboBox2.Enabled:=true;
DBLookupComboBox1.SetFocus;
adoquery2.sql.clear;
adoquery2.SQL.Add('select * from pelanggan');
adoquery2.open;
datasource2.dataset := adoquery2;
DBLookupComboBox1.ListSource:=datasource2;
DBLookupComboBox1.ListField :='id_pembeli';
DBLookupComboBox1.KeyField:='id_pembeli';
adoquery1.sql.clear;
adoquery1.SQL.Add('select * from barang');
adoquery1.open;
datasource1.dataset := adoquery1;
DBLookupComboBox2.ListSource:=datasource1;
DBLookupComboBox2.KeyField:='kode_barang';
dbgrid1.Visible:=false;
sg.Visible:=true;
dbedit1.Text:='';
dbedit2.Text:='';
dbedit3.Text:='';
dbedit4.Text:='';
end;
end;
end;
3. Membuat koding pada tombol OK, double klik tombol OK lalu ketik koding berikut :
procedure TForm2.Button1Click(Sender: TObject); var i,qty,tot: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 ; Qty:=strtoint(edit2.Text); sg.cells[4,sg.rowcount-1]:=edit2.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); end;
4. Membuat koding pada Edit2 untuk menghitung jumlah harga dari hasil perkalian harga barang x jumlah barang :
procedure TForm2.Edit2KeyPress(Sender: TObject; var Key: Char);
var a,b,c,sisa:integer;
kodebrg:String;
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 > adoquery1.Fields[3].AsInteger then
begin
Application.MessageBox('Data Tidak Mencukupi','Control',MB_ICONSTOP);
end
else
begin
C := a * b;
edit3.Text:=inttostr(c);
sisa := adoquery1.Fields[3].AsInteger - Strtoint(edit2.Text);
kodebrg:=dblookupcombobox2.text;
adoquery6.close;
adoquery6.sql.clear;
adoquery6.SQL.Add('update barang set stock="'+ inttostr(sisa) +'" where kode_barang="'+kodebrg+'"');
adoquery6.ExecSQL;
end;
end;
end;
5. Tambahkan tombol Hapus, lalu ketik program berikut untuk menghapus data :
procedure TForm2.Button7Click(Sender: TObject);
begin
adoquery3.Close;
adoquery3.SQL.Clear;
adoquery3.SQL.Add('delete from Penjualan where no_faktur = "'+ edit1.Text +'"');
adoquery3.ExecSQL;
adoquery4.Close;
adoquery4.SQL.Clear;
adoquery4.SQL.Add('delete from djual where no_faktur ="'+ edit1.Text +'"');
adoquery4.ExecSQL;
end;
Tidak ada komentar:
Posting Komentar