Anda di halaman 1dari 25

EBookTrikProgramPenjualandenganVisualBasic6babgratis!

Ir.Hartoto2013
http://www.xbasicpro.com

1
______________________________________________________________________________

TrikProgramPenjualandengan
VisualBasic6

Belajarmembuatprogrampenjualandenganvisualbasicmerupakansuatuhaldasar
yangpentingyangharusdikuasaiolehseorangprogrammeryangakanmembuat
programdatabasebisnis.Disinisayaakanmemberikancontohprogramvbpenjualan
yangmudahdandapatdijadikandasardalampembuatanformformtransaksilainnya
sepertipembelian,hutang,piutangdanlainlain.

EBookiniberisitulisancaramembuatprogrampenjualandenganvisualbasic.
SebelummempelajariebookinisebaiknyaAndamembacaebooksayayangberjudul:
1.EBOOKTRIKDASARBELAJARVISUALBASIC6.0
2.EBookTrikDatabaseVisualBasic6.0
ProgrampenjualanyangakanAndabuatdenganvisualbasicinidapatmenghitungstok
barangdanlabakotordaritransaksipenjualanpadasatuperiode.
PadaperancanganaplikasipenjualaniniAndaakanmenggunakan:
1. VisualBasic6.0
2. SQLServer2005ExpressSP3keatas
3. CrystalReport11
4. Windows7

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

2
______________________________________________________________________________

Rancangansoftwareinimenggunakan2layer(tingkat):
1.Form
2.ClassDatabase
Formdigunakanuntukinteraksipenggunadenganprogram
Classdatabasedigunakanuntukpengolahandatasqlserver.
Programpenjualandiawalidarirancangantransaksi.Transaksibisaberupatransaksi
pembelian,penjualan,hutang,piutangdanlainlain.

Darirancangantransaksiberupadatabasemaupunformdiperolehrancangandatabase
ataupunformformmastersepertimasterbarang,customer,supplierdanlainlain.
Andatentubisamemutarlogikasepertitransaksipembelianpastinyaberhubungan
denganmasterbarangdansupplier.Demikianjugadengantransaksipenjualansudah
pastiberhubungandenganmasterbarangdancustomer.Jikamungkinbarangbarang
sudahterlalubanyakjenisnyabisasajadibuatkategoribarangtergantungkebutuhan.
Daricatatancatatantransaksipenjualanmaupunpembeliantentunyadapatdibuatkan
laporan/report.Cukupsederhanabukan?

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

3
______________________________________________________________________________

BagaimanaLangkahlangkahMembuatProgramDatabaseBisnisdengan
VisualBasic?

DisinisayatidakakanmenjelaskanbagaimanateoriteoriAnalisisDesignyangdikerjakanoleh
systemanalyst.Tetapilangsungsajamembuatprogramyangadadikepalatrus
diimplementasikan.Jadilahprogramnya.

Ingatwaktubelajarmembuatprogramduludahbanyakbukudankodekodeyangdipelajari.
Tapisayangnyamasihbingungjugabagaimanasihcaranyamembuatprogramdatabasebisnis
sepertiprogrampenjualan?
Huf...bingungnihkarenatidakpunyapengalamanmembuatprogrammaumulaidarimanajuga
gaktau.Yahwaktutahunsekitar2002itusayamasihsebagaiITNetworkAdministrator
sekaligusHelpdeskdisebuahperusahaan.Perusahaanmemakaiprogramyangdibuatoleh
kantorpusat.Kebetulanwaktuimplementasiprogramduaorangprogrammernyaturunke
cabangtempatsayabekerjasebagaiITNetworkAdministratordanHelpdesknya.
Karenamemangsedanghobbydankepinginnyabelajarprogramsayatidaksegansegan
langsungtanyakeprogrammernya.
KebetulanMasiniadalahprogrammerseniornya.Sayatanyakedia.Masklomobikinprogram
databaseapasihyangpertamadilakukan?

KebetulanMasinimaujawabpertanyaansaya:
1.Pegangdululaporanlaporanapasayayangakandibuat
2.BuattabeltabeldanQueryyangsesuaidenganlaporanyangakandihasilkandidatabase
3.Buatformprosesdata(tambah,edit,hapus,insert,caridll.)
4.IkutiaturanStandardOperasionalProcedure(SOP)programnya.

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

4
______________________________________________________________________________

WahjawabanMasinisangatsederhanasekalidanterusterangwaktuitusayamasihbingung
mobuatlaporannyagimana,buattabeldanquerynyagimana?

Seiringdenganberjalannyawaktusayapuncobakeluardariperusahaanitudanmelamarke
perusahaanpembuatsoftware(softwarehouse)denganharapanbisajadiprogrammer(he..he..
perjuangan).

OK.SetelahbeberapalamabekerjadiPerusahaanSoftwareDeveloper,diperusahaan
manufakturdanmembuatProgramfreelance,ternyatahalyangdikerjakantetapsamaseperti
diatas.

Kembalikelangkahtadiya:
1.Pegangdululaporanlaporanapasayayangakandibuat
AndabisamembuatlaporandenganCrystalReport,datareportatauactivereport.
Untukmembuatsumberreportadayangmembuatsumberdatanyadaritabeladajugayang
membuatdatanyadariqueryatauView

2.BuattabeltabeldanQueryyangsesuaidenganlaporanyangakandihasilkandidatabase
JikamemakasidatabaeaccessAndabisamembuattabeldanquerynyadiprogrammsaccess.
JikaandamemakaiSQLServerTabelatauQuerybisadibuatdenganenterprisemanageratau
SQLQueryAnalizer

3.Buatformprosesdata(input,edit,hapus,insert,caridll.)
AndabisamembuatformpengolahandatainibisadengandatabaseSQLServeratau
formpengolahandatadenganMSAccessataudatabaselainnya.

4.IkutiaturanStandardOperasionalProcedure(SOP)programnya.
ContohsederhanadariSOPiniadalahmisalpadaprogrampenjualan,aturannyaadadiscount
10%untukpembeliyangtelahmempunyaikartuanggota(member).TinggalpakeLogika
(Percabangan)

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

5
______________________________________________________________________________

RancanganTransaksiPenjualan

PadarancangantransaksipenjualaniniANDAakanmenggunakantablesementara
sebagaitempatcoretcoretbelanjaanbarangpadatablejual_d_sem(tablepenjualan
detailsementara).
Setelahcoratcoretditabelsementarabenarmakadaftarbelanjaanditulissemuanyake
dalamtablejual_d(tablejualdetail)

RancanganTabelPenjualan
Berikutadalahkodesqlrancangantabelpenjualannya:
create table jual_m (
no_jual varchar(10) not null CONSTRAINT PK_jual primary key,
tgl datetime,
kd_cust varchar(5),
nama varchar(15)
)
Go

create table jual_d (


no_jual varchar(10) not null CONSTRAINT FK_jual foreign key
REFERENCES jual_m(no_jual),
id int,
kd_brg varchar(5),
nama_brg varchar(30),
hrg_sat decimal,
qty decimal
)
go

create table jual_d_sem (


no_jual varchar(10),
id int,
kd_brg varchar(5),
nama_brg varchar(30),
hrg_sat decimal,
qty decimal

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

6
______________________________________________________________________________

)
go

Jikadilihatrelasitabelnyaakansepertigambardibawahini:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

7
______________________________________________________________________________

RancanganFormPenjualan

RancanganFormPenjualanDetail

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

8
______________________________________________________________________________

KodepadaFormTransaksiJual

KodePadaTombolTambah

PrivateSubcmdTambah_Click()
DimsDelSemAsString
sDelSem="deletefromjual_d_sem"
oDB.ExecSQL(sDelSem)
RefreshGrid
kosongForm
editMode=idxEditMode.tambah
enableForm
EndSub

Datayangadapadatablejual_d_semsebagaitablecoratcoretbelanjaandihapus
terlebihdahulu:

DimsDelSemAsString
sDelSem="deletefromjual_d_sem"
oDB.ExecSQL(sDelSem)

Setelahdihapustampilandatagridviedetail(MSHFlexGrid1)disegarkan.Lihatkodedi
bawahini:
PublicSubRefreshGrid()
DimsAsString
s="select*fromjual_d_sem"
DimoRsAsNewADODB.Recordset
SetoRs=oDB.getReadOnlyRSSQL(s)
SetMSHFlexGrid1.DataSource=oRs
EndSub

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

9
______________________________________________________________________________

Setelahituformdikosongkan.BerikutadalahkodepadaprosedurkosongForm

PrivateSubkosongForm()
cboNoJual.Text=""
cboCust.Text=""
txtNama.Text=""
EndSub

Selanjutnyamodeformdisetmenjadimodeoperasirecordbaru(editMode=
idxEditMode.tambah)

LaluproteksitextboxdibukadenganprosedurenableForm
BerikutadalahkodepadaenableForm

PrivateSubenableForm()
cboNoJual.Enabled=True
dtpTgl.Enabled=True
cboCust.Enabled=True
txtNama.Enabled=True
EndSub

KodePadaTombolTambahDetail

Tomboltambahdetailyangdimaksudadalahtomboltambahyangterletaktepatdi
bawahMSHFlexgrid1.Tombolinidipakaiuntukmenambahitempenjualan.
Kodepadatomboltambahdigunakanuntukmenambahdatabelanjaan.Lihtakodedi
bawahini:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

10
______________________________________________________________________________

PrivateSubcmdTambahDetail_Click()
penjualanDetailForm.editMode=idxEditMode.tambah
penjualanDetailForm.txtNoJual.Text=Me.cboNoJual.Text
penjualanDetailForm.ShowvbModal
EndSub

Ketikausermengkliktomboltambahmakakodeakanmensetform
PenjualanDetailFormkemodeoperasitambahlalumengisitextboxnomorjualyangada
dipenjualanDetailFormdenganisitextboxtNoJualyangadadicombonomorjualyang
adadiJualform.Lihatkodedibawahini:
penjualanDetailForm.editMode=idxEditMode.tambah
penjualanDetailForm.txtNoJual.Text=Me.cboNoJual.Text

SetelahformpenjualanDetailFormditampilkandilayardenganmodedialog.Lihatkode
dibawahini:
penjualanDetailForm.ShowvbModal

DibawahiniadalahdemoJualFormDetailditampilkan:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

11
______________________________________________________________________________

Berikutadalahdemonya:

BerikutadalahhasilnyajikaAndatelahmemiliksalahsatukodebarangdanmengklik
combobarang:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

12
______________________________________________________________________________

Andasudahbisamembuatmodultransaksipenjualanlengkapdenganoperasinya.Anda
bisamelakukandengancarayangsamauntukmembuatmodultransaksilainyaseperti
pembelian,hutang,piutang,bukukasdanlainlain.

PembuatanLaporan
LaporanPembelian
PadarancanganprograminiAndaakanmembuatlaporandenganmembuatViewpada
SQLServer.SelanjutnyalaporandaricrystalreportakanmembacaViewsebagaisumber
data.
UntukmenampilkanreportAndaakanmembuatformkhususdengannama
viewerForm.Berikutadalahdesignviewerform:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

13
______________________________________________________________________________

BerikutadalahkodepadaviewerForm:
PublicrptNameAsString
PublicSqlAsString
PrivateoDBAsNewcdb

PrivateSubForm_Load()
Me.Left=(Screen.WidthMe.Width)/2
Me.Top=(Screen.HeightMe.Height)/2

DimoRsAsNewADODB.Recordset
DimCrystalAppAsNewCRAXDRT.Application
DimCrystalRptAsCRAXDRT.Report

SetoRs=oDB.getReadOnlyRSSQL(Sql)

SetCrystalRpt=CrystalApp.OpenReport(rptName)
CrystalRpt.DiscardSavedData
CrystalRpt.Database.SetDataSourceoRs

'tampilkanreportpadaviewer
CrystalActiveXReportViewer1.ReportSource=CrystalRpt
CrystalActiveXReportViewer1.ViewReport
oRs.Close
SetoRs=Nothing
EndSub

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

14
______________________________________________________________________________

KodediatasakanmemanggilclassCDbuntukpengolahandatabase.Recordyangakan
ditampilkanditampungpadatableyangdiperolehdariclassCDbdandigunakansebagai
sumberdatauntukreport.

Berikutadalahkodeuntukmembuatviewpembelian:
CREATE VIEW [dbo].[v_beli] AS
SELECT
m.no_beli, m.tgl, d.kd_brg,nama_brg, d.qty, d.hrg_sat,
d.qty * d.hrg_sat AS jumlah
FROM dbo.beli_m AS m INNER JOIN dbo.beli_d AS d ON d.no_beli =
m.no_beli
GO

Berikutadalahdesignreportpembeliandengancrystalreport:

Untukmempelajaridetailpembuatanviewdanreportsilahkanbacaebooksayayang
berjudulEBOOKTrikDatabaseVisualBasic6.0

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

15
______________________________________________________________________________

Berikutadalahkodeuntukmenampilkanreportpembelian
PrivateSubmnuLBeli_Click()
viewerForm.rptName=App.Path&"\rpt\beli.rpt"
viewerForm.Sql="select*fromv_beli"
viewerForm.Show
EndSub

Berikutadalahdemoreportpembelian:

LaporanPenjualan
Berikutadalahkodeuntukmembuatviewpenjualan:
CREATE VIEW [dbo].[v_jual] AS
SELECT
m.no_jual, m.tgl, m.nama, d.kd_brg,nama_brg, d.qty,
d.hrg_sat,
d.qty * d.hrg_sat AS jumlah FROM dbo.jual_m AS m
INNER JOIN dbo.jual_d AS d ON d.no_jual = m.no_jual
GO

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

16
______________________________________________________________________________

Berikutadalahdesignreportpenjualandengancrystalreport:

Berikutadalahkodeuntukmenampilkanreportpenjualan:
PrivateSubmnuLJual_Click()
viewerForm.rptName=App.Path&"\rpt\jual.rpt"
viewerForm.Sql="select*fromv_jual"
viewerForm.Show
EndSub

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

17
______________________________________________________________________________

Berikutadalahdemoreportpenjualan:

Berikutadalahdemotampilanreportlabakotor:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

18
______________________________________________________________________________

LaporanSaldoStok
BerikutadalahdemolaporanSaldoStok:

LaporanKartuStok
LaporanKartustokmenggunakantablesementarasebagaidatasumberlaporannya.
BerikutadalahdemoKartuStok:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

19
______________________________________________________________________________

SetelahAndakliktombolOKmakalayarAndaakansepertigambardibawahini:

SetelahAndakliktombolBuatKartuStokmakalayarAndaakansepertigambardibawahini:

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

20
______________________________________________________________________________

TutupPeriode(Closing)
Tutupperiode(closing)dilakukanuntukpadasatusikluspenjualan.Bisasatubulan
sekaliatauseminggusekalitergantungdariperiodelaporanyangditentukan.
Padaprosestutupperiodesisa(saldo)stokbarangakandijadikansebagaisaldoawal
padaperiodeberikutnya.
Padaprosesinijugasegalantransaksibaikpembeliandanpenjualanakandihapus.
Untukmenyimpanlaporantransaksipenjualanataupembelianandabisamengekspor
kefileexcelataufilePDF.

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

21
______________________________________________________________________________

Berikutadalahdemoformtutupperiode:

OK.SampaidisiniANDAsudahbisamembuataplikasipenjualanlengkapsampai
perhitunganLabaKotordenganmetodeperhitunganHargaPokokRatarata.
DenganbekalinimudahmudahanAndabisamembuataplikasibisnispenjualan.
Sayasengajatidakmembuatformmastersupplierdanformtransaksipembelianagar
Andabisaberlatihmembuatnya.
Silahkanhubugisayadiemailhartoto_d@yahoo.comuntukkonsultasisampaiAnda
mengerti.

Medan,03Januari2013
DariLaptopSaya
Salam,
Ir.Hartoto

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

22
______________________________________________________________________________

E-BOOK TRIK PROGRAM PENJUALAN DENGAN VISUAL BASIC


6.0
ANDA sudah belajar visual basic 6.0. Sudah bisa membuat buku alamat. Anda kebetulan dapat project membuat software program
penjualan bisnis. Tidak tau mulai dari mana?
Anda mungkin sudah mengetahui software program penjualan adalah software yang banyak dicari untuk membantu
menyelesaikan pencatatan administrasi penjualan toko.
Di E-book ini Saya menjelaskan bagaimana merancang program penjualan dan membuatnya menjadi software penjualan. Kode
software penjualan pada e-book ini adalah program penjualan yang saya bagikan secara terbuka open source.
Sepanjang ebook ini ANDA akan berlatih membuat software penjualan dengan Visual Basic.Net, Microsoft SQL Server 2005 atau
2008 dan Crystal Report XI.
Kodenya juga sengaja saya sederhanakan untuk memudahkan dalam belajar membuat software penjualan.

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

23
______________________________________________________________________________

DAFTAR ISI
Pengantar......................................

Bagaimana Langkah-langkah Membuat


Aplikasi Database Bisnis dengan
Visual Basic 6.0?..............................

Class CDatabase (cdb.cls)......................


Rancangan Transaksi Penjualan..................
Rancangan Tabel Master Barang...............
Rancangan Form Master Barang................
Kode Pada Tombol Tambah..................
Kode Pada Tombol Simpan..................
Kode Pada Tombol Edit....................
Kode Pada Tombol Cari....................
Kode Pada Tombol Hapus...................
Kode Pada Tombol Penyegaran..............
Kode Pada Tombol Tutup...................

5
8
9
9
10
10
12
12
13
14
15

Rancangan Tabel Customer....................


Rancangan Form Master Customer..............
Kode pada Tombol Tambah..................
Kode pada Tombol Simpan..................
Kode pada Tombol Edit....................
Kode pada Tombol Cari....................
Kode pada Tombol Hapus...................
Kode pada Tombol Penyegaran..............
Kode pada Tombol Tutup...................

22
23
23
24
25
26
27
28
29

Rancangan Transaksi Penjualan...............


Rancangan Tabel Penjualan................
Rancangan Form Penjualan.................
Rancangan Form Penjualan Detail..........
Kode Pada Form Transaksi Penjualan.......
Kode Pada Tombol Tambah...............
Kode Pada Combo Customer..............
Kode Pada Tombol Tambah Detail........
Kode Pada Combo Lookup Barang
(JualDetailForm)......................

29
29
31
32
32
32
34
36
38

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

24
______________________________________________________________________________

Kode Pada Tombol Edit Detail..........


Kode Pada Tombol Hapus Detail.........
Kode Pada Tombol Simpan...............
Mode Operasi Penambahan Record.....
Mode Operasi Edit Record...........
Kode Pada Tombol Hapus................
Kode Pada Combo Lookup Jual...........

40
42
43
45
47
48
49

Pembuatan Laporan............................... 66
Laporan Pembelian............................ 66
Laporan Penjualan............................ 69
Laporan Laba Kotor........................... 71
Rumus Perhitungan Laba Kotor.............. 71
Perhitungan Harga Pokok................... 71
Praktek Perhitungan Laba Kotor
dengan SQL................................ 73
Laporan Saldo Stok........................... 77
Rumus Perhitungan Saldo Stok.............. 77
Praktek Rumus Perhitungan Saldo Stok
dengan SQL................................ 78
Laporan Kartu Stok........................... 81
Tutup Periode (Closing).........................
Script SQL Pembuatan Database
Penjualan Lengkap...............................
Kode Project....................................
MDIForm1.....................................
Kode cdb.cls.................................
Kode Form Barang (barangForm.frm)............
Kode Form Customer (customerForm.frm)........
Kode Transaksi Jual (penjualanForm.frm).....
Kode Transaksi Jual Detail
(penjualanDetailForm.frm)...................
Kode Kartu Stok (kartuStokForm.frm).........
Kode Tutup Periode (tutupPeriodeForm.frm)...
Kode pada Form ViewerForm...............135 Anda bisa memesan E-Book ini hanya dengan Rp: 60,000.Belanja dengan Toko Online

86
92
96
96
99
101
108
115
125
129
132
136

EBookTrikProgramPenjualandenganVisualBasic6babgratis!
Ir.Hartoto2013
http://www.xbasicpro.com

25
______________________________________________________________________________

NB: "Gratis! konsultasi hingga ANDA mengerti"

Transfer ke sini untuk pembayaran:

1. Bank BCA

2. Bank MANDIRI

a.n. HARTOTO, IR.

a.n. HARTOTO

no. rek. 8305066253

no. rek. 106 00 0977281 8

Saya akan mengirim E-Book ini langsung ke email Anda!

SMS konfirmasi Pembayaran ke: 0821 6598 8036


atau
email: hartoto_d@yahoo.com
Format: nama#rekening-tujuan#email#ProgJualVB6
contoh: andi#BCA#andi@yahoo.com#ProgJualVB6