.:: Jasa Membuat Aplikasi Website,Desktop,Android Order Now..!! | | Order Now..!! Jasa Membuat Project Arduino,Robotic,Print 3D ::.

Membuat Aplikasi Penjualan (POS) dengan Delphi Part8

0 komentar


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم
bismillaahirrahmaanirrahiim

السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
Assalamu'alaikum warahmatullahi wabarakatuh

Tanpa basa-basi langsung saja saya lanjutkan Tutorial Membuat Aplikasi Penjualan Dengan Delphi. Proses ini adalah membuat transaksi penjualan.

1. Form Transaksi Penjualan

Transaksi Penjualan


Komponen yang digunakan
  • Tedit1 
  • TCombobox
  • TLabel
  • Tbevel
  • TStringgrid
  • TBitbtn
  • TButton
  • TDateTimePicker
2. Form Cari Barang Jual

Transaksi Penjualan

Komponen yang digunakan
  • TEdit
  • TLabel
  • DBgrid

A. Mebuat procedure reset, procedure creategrid, dan procedure noauto

procedure

Procedure Reset

procedure TFpenjualan.reset;
var
i:integer;
begin
for i := 0 to ComponentCount -1 do
begin
if (Components[i] is TEdit) and (TEdit(Components[i]).Tag = 0) then
Tedit(Components[i]).Text :=''
end;
bitbtn1.Caption:='Tambah';
Lrp.Caption:='Rp';
end;

Procedure Noauto


procedure TFpenjualan.NoAuto;
var
kode:String;
urut:integer;
begin
with dm.Q1 do
begin
Close;
SQL.Clear;
SQL.Text:='select * from tb_penjualan';
Open;
end;
if dm.Q1.RecordCount = 0 then urut :=1 else
if dm.Q1.RecordCount > 0 then
begin
with Dm.Q1 do
begin
Close;
SQL.Clear;
SQL.Text:='select max(right(kodepenjualan,5)) as kode from tb_penjualan';
Open;
end;
urut:=dm.Q1.FieldByName('kode').AsInteger +1;
end;
kode:=inttostr(urut);
kode:=Copy('00000'+kode,length('00000'+kode)-4,5);
Enotapenjualan.Text:='PJ.'+kode;
end;
Procedure CreateGrid


procedure TFpenjualan.CreateGrid;
var
i,j:integer;
begin
with Sg do
begin
for i := 0 to colCount-1 do
for j := 0 to rowCount-1 do
Cells[i,j]:='';

ColCount:=6;
RowCount:=2;
Cells[0,0]:='Kode Barang';
Cells[1,0]:='Nama Barang';
Cells[2,0]:='Satuan';
Cells[3,0]:='Harga';
Cells[4,0]:='Jumlah';
Cells[5,0]:='Subtotal';
ColWidths[0]:=200;
ColWidths[1]:=300;
ColWidths[2]:=130;
ColWidths[3]:=100;
ColWidths[4]:=100;
ColWidths[5]:=150;
end;
end;

- Kode untuk tombol tambah




procedure TFPenjualan.BitBtn1Click(Sender: TObject);
begin
reset;
CreateGrid;
NoAuto;
end;
Kode Untuk Tombol Simpan


procedure TFpenjualan.BitBtn2Click(Sender: TObject);
var
i:integer;
begin
if Enotapenjualan.Text = '' then
Showmessage('Kode pembelian masih kosong')
else
if Sg.Cells[0,1]='' then
Showmessage('belum melakukan transaksi')
else
if cbpelanggan.Text ='' then
showmessage('supplier belum dimasukan')
else
begin
for i := 1 to sg.RowCount -1 do
begin
if sg.Cells[0,i]<>'' then
begin
with dm.Q1 do
begin

Close;
SQL.Clear;
SQL.Text:='insert into tb_detailpenjualan (kodepembelian,kodebarang,hargabeli,jumlah,subtotal)'+
'values ("'+Enotapenjualan.Text+'","'+sg.Cells[0,i]+'","'+sg.Cells[3,i]+'","'+sg.Cells[4,i]+'","'+sg.Cells[5,i]+'")';
ExecSQL;

Close;
SQL.Clear;
SQL.Text:='update tbarang set stok=stok-"'+sg.Cells[4,i]+'" where kodebarang="'+sg.Cells[0,i]+'"';
ExecSQL;
end;
end;
end;
with Dm.Q1 do
begin
Close;
SQL.Clear;
SQL.Text:='insert into tb_penjualan values("'+Enotapenjualan.Text+'","'+FormatDatetime('yyyy-mm-dd',now)+'","'+lin.Caption+'","'+kodesupplier+'","'+Fmenuutama.StatusBar1.Panels[1].Text+'")';
ExecSQL;
end;

Reset;
NoAuto;
CreateGrid;
cbpelanggan.Text:='';
end;
end;
- Kode untuk tombol batal item



procedure TFpenjualan.BitBtn3Click(Sender: TObject);
begin
if messageDLg('Yakin item akan dihapus?',mtConfirmation,[Mbyes,MBno],0)=Mryes then
begin
lin.Caption:=inttostr(strtoint(lin.Caption)-strtoint(sg.Cells [5,sg.Row]));
sg.RowCount := sg.RowCount -1;
end;
end;

- Kode untuk Ehargabeli dan ejumlah




procedure TFpenjualan.EhargabeliKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in['0'..'9',#8,#10,#13]) then
Key:=#0;
end;

 Kode untuk form onShow

procedure TFpenjualan.FormShow(Sender: TObject);
begin
Reset;
NoAuto;
cbpelanggan.Clear;
dm.QdataPelanggan.First;
while dm.QdataPelanggan.Eof = False do
begin
cbpelanggan.Items.Add(dm.QdataPelanggan.FieldByName('namapelanggan').AsString );
dm.QdataPelanggan.Next;
end;
cbpelanggan.Text:='';
end;

- Kode untuk ejumlah event onKeyDown

procedure TFpenjualan.EjumlahKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = 13 then
begin
if (Ejumlah.Text <> '') and (ejumlah.Text <>'0') then
begin
Sg.Cells[0,sg.RowCount -1]:=Ekodebarang.Text;
Sg.Cells[1,sg.RowCount -1]:=Enamabarang.Text;
Sg.Cells[2,sg.RowCount -1]:=Esatuan.Text;
Sg.Cells[3,sg.RowCount -1]:=Ehargabeli.Text;
Sg.Cells[4,sg.RowCount -1]:=Ejumlah.Text;
Sg.Cells[5,sg.RowCount -1]:=inttostr(strtoint(Ejumlah.Text)* strtoint(Ehargabeli.Text));
sg.RowCount := sg.RowCount +1;
sg.Row := sg.RowCount -1;
Lin.Caption:=inttostr(strtoint(Lin.Caption)+(strtoint(Ejumlah.Text)*strtoint(ehargabeli.Text)));
Etotalbayar.Text:=Lin.Caption;
reset;
if MessageDlg('Apakah ingin menambah barang?',mtConfirmation,[mbyes,mbno],0)=mrYes then
FcariBarangJual.ShowModal;
end else
Showmessage('Jumlah Belum dimasukan');
end;
end;

- Kode untuk tombol cari

procedure TFpenjualan.Button1Click(Sender: TObject);
begin
Fcaribarangjual.Showmodal;
end;


B.Kemudian kode pada form cari barang Jual



- Pada event Dbgrid klik 2x


procedure TFcaribarangjual.DBGrid1DblClick(Sender: TObject);
begin
with Fpenjualan do
begin
Ekodebarang.Text:=dm.QdataBarang.FieldValues['kodebarang'];
Enamabarang.Text:=dm.QdataBarang.FieldValues['namabarang'];
Esatuan.Text:=dm.QdataBarang.FieldValues['satuan'];
Ehargabeli.Text:=dm.QdataBarang.FieldValues['hargajual'];
FcaribarangJual.Close;
Ejumlah.SetFocus ;
end;

end;
- Pada event Ecari onKeyUp
procedure TFcaribarangjual.EcariKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
with Dm.QdataBarang do
begin
Close;
SQL.Clear;
SQL.Text:='select * from tbbarang where namabarang like"%'+ecari.Text+'%"';
Open;
end;
end;
Setelah selesai pengkodean jalankan program dengan menekean tombol F9. Maka hasilnya akan seperti dibawah ini.
Transaksi Penjualan

Sekian dulu tutorialnya ... Sampai ketemu ditutorial selanjutnya ...
Source Code

Update Contact :
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email : Fajarudinsidik@gmail.com
NB :: Bila Sobat tertarik Ingin membuat software, membeli software, membeli source code, membeli hardware elektronika untuk kepentingan Perusahaan maupun Tugas Akhir (TA/SKRIPSI), Insyaallah Saya siap membantu, untuk Respon Cepat dapat menghubungi kami, melalui :

No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email: Fajarudinsidik@gmail.com


atau Kirimkan Private messanger melalui email dengan klik tombol order dibawah ini :

ٱلْحَمْدُ لِلَّهِ رَبِّ ٱلْعَٰلَمِين
Alhamdulilah hirobil alamin

وَ السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
wassalamualaikum warahmatullahi wabarakatuh


Artikel Membuat Aplikasi Penjualan (POS) dengan Delphi Part8, Diterbitkan oleh scodeaplikasi pada Minggu, 08 Desember 2013. Semoga artikel ini dapat menambah wawasan Anda. Website ini dipost dari beberapa sumber, bisa cek disini sumber, Sobat diperbolehkan mengcopy paste / menyebar luaskan artikel ini, karena segala yang dipost di public adalah milik public. Bila Sobat tertarik Ingin membuat software, membeli software, membeli source code ,Dengan Cara menghubungi saya Ke Email: Fajarudinsidik@gmail.com, atau No Hp/WA : (fajar) : 085369237896, (puat) : 085267792168.

Tawk.to