You are on page 1of 20

5.

8 Form Transaksi Penjualan

Gambar 52. Form Transaksi Penjualan

Setiap orang yang melakukan pembelian barang disebuah toko pada


umumnya akan mendapat nota atau resi tanda terima yang berisi perincian barang
yang dibeli. Dalam hal ini sebuah program aplikasi yang digunakan harus dapat
mengeluarkan hasil berupa cetakan melalui printer yang tersedia. Untuk Delphi
fasilias seperti itu akan ditangani oleh aplikasi Rave Designer. Oleh karena itu
pada bagian ini akan dibahas tersendiri cara pengoperasian aplikasi Rave.
Sedangkan untuk komponen yang lain pada prinsipnya sama dengan yang sudah
dikerjakan sebelumnya.
Buatlah form baru seperti gambar diatas. (Gambar 52) Tanggal Transaksi
menggunakan komponen DateTimePicker. Nomor Faktur, Nama Barang, Satuan,
Harga, Stok, Kode Barang (pada Group Box Item Barang), Banyaknya, Sub Total
Harga, Total Harga menggunakan komponen Edit. Kode Barang pada group box
Pilih Barang menggunakan komponen ComboBox. Tambahkan 4 buah button,
sebuah DBGrid, 3 buah Table, 2 buah Query dan sebuah DataSource. Tambahkan
pula komponen baru dari palette Rave yaitu RvQueryConnection dan RvProject.
Dua komponen terakhir ini yang nantinya akan digunakan untuk menjalankan
perintah pencetakan.

84
Aturlah properties untuk from ini dengan Caption adalah Transaksi
Penjualan dan name : frm_penjualan. Properties lain untuk form ini disamakan
dengan form-form sebelumnya. Simpan form ini dengan nama : Un_penjualan.
Properties untuk komponen-komponen yang lain sesuaikan dengan daftar
dibawah ini :

No Komponen Properties Nilai atau Harga


1 DateTimePicker Name DTP1
2 Edit Nomor Faktur Name ed_nofak
3 Edit Nama Barang Name ed_nama
4 Edit Satuan Name ed_sat
5 Edit Harga Name ed_harga
6 Edit Stok Name ed_stok
7 Edit Kode Barang Name ed_kodebrg
8 Edit Banyaknya Name ed_jml
9 Edit Sub Total Name ed_subtot
10 Edit Total Harga Name ed_tot
11 ComboBox Kode Name cbx_kode
Barang
Semua Edit dan Text (kosongkan)
ComboBox
12 Button1 Caption Ya
13 Button2 Caption Batal
14 Button3 Caption Selesai
15 Button4 Caption Keluar
16 Table1 DatabaseName DBSTOKO
TableName tbl_jual.db
17 Table2 DatabaseName DBSTOKO
TableName tbl_barang.db
18 Table3 DatabaseName DBSTOKO
TableName tbl_transaksi.db
19 Query1 dan Query2 DatabaseName DBSTOKO
20 DataSource1 DataSet Table3
21 DBGrid1 DataSource DataSorurce1

Untuk komponen button biarkan saja menggunakan nama bawaan yaitu


button1, button2, button3 dan button4. Semua edit kecuali ed_jml aturlah
properties ReadOnly sama dengan True. String List Editor untuk Query1 adalah :

Select Kodebrg From tbl_barang


Where Stok > 0

Sedangkan untuk Query2 adalah :

select * from tbl_jual

85
Buatlah 5 buah procedure yaitu procedure Nofak, procedure Isidata,
procedure DataBarang, procedure Simpan dan procedure CetakFaktur.
Langkah pertama adalah membuat header dari procedure tersebut seperti contoh
dibawah ini.

Procedure Nofak adalah sebuah procedure untuk mengisi nomor faktur


penjualan secara berurut, tidak loncat dan tidak dobel terhadap nomor faktur
sebelumnya. Code program procedure Nofak adalah :

86
Procedure IsiData digunakan untuk mengisi data barang yang stoknya
masih ada kedalam Combo Box Kode Barang yaitu cbx_kode. Dengan
diinputkannya list barang kedalam Combo Box ini maka user penjual akan mudah
mengisi barang yang hendak dibeli. Code program untuk procedure IsiData
adalah sebagai berikut :

Procedure DataBarang adalah procedure yang digunakan untuk


melengkapi data barang pada kolom-kolom Nama Barang, Satuan, Harga dan
Stok, ketika operator memilih kode barang yang ada pada Combo Box Kode
Barang. Code program lengkapnya sebagai berikut :

Procedure Simpan digunakan untuk menyimpan data barang yang dibeli


dengan cara memindah satu persatu data yang ada pada DBGrid untuk disimpan
secara permanen di tbl_jual melalui table1. DBGrid sendiri merupakan visualisasi
tbl_transaksi menggunakan table3 dimana sifatnya sementara, artinya setelah
transaksi selesai dilakukan maka table ini posisinya dikosongkan kembali. Code
Program untuk procedure Simpan adalah :

87
Procedure CetakFaktur adalah procedure yang terkait dengan
pengoperasian Rave Designer. Code progam procedure ini secara lengkap adalah
sebagai berikut :

Setelah semua procedure selesai ditulis, selanjutnya masuk code program


masing-masing komponen. Awali untuk code program Frm_penjualan yang
diisikan pada Events – OnActive sebagai berikut :

88
Komponen Combo Box Kode Barang yaitu cbx_kode dikenakan dua
perintah atau code program pada dua events yang berbeda, yaitu untuk Events –
OnChange dan Events OnKeyPress. Untuk Events OnChange adalah :

Sedangkan untuk Events – OnKeyPress adalah :

Ketika barang yang akan dibeli sudah dipilih maka kolom Nama Barang,
Satuan dan Stok akan terisi. Apabila operator mengisi jumlah barang yang akan
dibeli pada ed_jml banyaknya melebihi stok yang ada maka akan dikeluarkan
peringatan “Jumlah barang tidak mencukupi” sehingga operator akan mengganti
jumlah barang dengan angka lebih kecil atau sama dengan stok barang yang ada.
Jika stok mencukupi maka akan dilakukan proses perkalian antara harga barang
dan jumlahnya yang hasilnya diisikan pada ed_subtotal. Code program untuk itu
diletakkan pada Events – OnKeyPress milik ed_jml seperti perintah dibawah ini.

89
Tombol “Ya” atau button1 digunakan untuk memilih satu persatu barang
yang akan dibeli. Daftar barang tersebut akan ditampilkan pada DBGrid. Untuk
mengisi code program pada tombol “Ya” caranya dengan dobel klik tombol
tersebut dan isikan perintahnya seperti berikut ini.

Tombol “Batal” atau button2 adalah tombol untuk membersihkan semua


kotak edit atau mengembalikan form pada kondisi awal. Apabila tombol ini
ditekan sebelum tombol “Ya” maka transaksi yang sudah terpilih tersebut
dibatalkan. Karena sifatnya yang mengembalikan form kekondisi awal, maka
button2 ini juga digunakan oleh tombol button1 untuk membersihkan dan
mengembalikan form keposisi awal setelah proses pemindahan data dilakukan.

90
Untuk mengisi perintah pada button2 caranya sama yaitu dengan doble
klik pada komponen tersebut kemudian isikan code programnya sebagai berikut :

Tombol “Selesai” atau button3 adalah tombol untuk mengakhiri proses


pembelian sekelompok barang dalam satu nomor faktur. Selain itu tombol ini juga
mengaktifkan Rave Designer untuk pencetakan faktur pembelian. Code program
untuk button3 adalah sebagai berikut :

Dan tombol terakhir yaitu tombol “Keluar’ atau button4 dengan code
program berikut ini :

Simpanlah kembali hasil yang sudah diselesaikan dengan menu File | Save
atau tekan tombol Ctrl + S pada keyboard, kemudian masuk kembali ke form

91
induk dan buat link dari main menu Transaksi ke frm_penjualan dengan cara
seperti yang sudah dibuat untuk form-form yang lain.
5.9 Membuat system pencetakan faktur dengan Rave Designer

Untuk menghasilkan output versi cetak pada aplikasi Delphi 7 digunakan


aplikasi Rave Designer yang terkemas dalam satu paket program. Sebelum
membuat desain cetak terlebih dahulu melengkapi properties komponen
RvProject1 dan RvQueryConnection1 yang telah diletakkan pada form Transaksi
Penjualan. (Gambar 53)

Gambar 53. Letak RvQueryConnection1 dan RvProject1


pada Form Transaksi Penjualan

Untuk RvQueryConnection1 atur properties Query adalah Query2


kemudian klik ganda pada komponen RvProject1 yang akan menghasilkan
tampilan muka Rave Designer secara penuh. Klik icon New Data Object yang ada
di Rave Report. (Gambar 54)

Gambar 54. Icon New Data Object

92
Apabila tampil form Data Connections seperti gambar dibawah, pilih
Direct Data View (yang atas) kemudian klik Next. (Gambar 55)

Gambar 55. Data Connection

Kemudian akan muncul form Data Connection berikutnya. Untuk ini tidak
perlu dilakukan perubahan langsung saja klik tombol Finish. Setelah proses
koneksi berhasil dilakukan maka pada tampilan form Rave Report sebelah kanan
akan terlihat Data View Directory yang sudah aktif seperti tampilan berikut ini.
(Gambar 56)

93
Gambar 56. Tampilan DataView1 pada RaveProject

Langkah berikutnya adalah membuat tampilan yang akan dicetak. Untuk


memudahkan pembuatan form yang akan dicetak, aplikasi Rave Report telah
menyediakan wizardnya. Gunakan menu Tools | Report Wizards > Simple
Table yang ada di Rave Report yang akan menghasilkan form Simple Table. Pada
form pertama langsung saja ekan next sehingga muncul form kedua. (Gambar 57)

Gambar 57. Form kedua Simple Table

Beri tanda chek untuk Kodebrg, Namabrg, Sat, Hrgsat, Jml dan Jmlhrg,
yang lain dikosongkan. Kemudian tekan Next > Next > Next sampai terakhir
terdapat tombol Generate. Setelah tombol Generate ditekan maka tampilan form
utama akan seperti gambar dibawah. (Gambar 58)
Klik tulisan “Simple Table Report” yang ada pada form tersebut dan atur
propertiesnya disebelah kiri form dengan ukuran huruf (font) sama dengan 14 dan
justifikasinya di kiri(left), kemudian properties Text diganti dengan “Toko “Mitra
Perdana”. Untuk pengaturan ini tergantung kreasi masing-masing dan karena
hasilnya akan dicetak maka tampilan yang artistik sangat dibutuhkan.
Setelah itu masukkan tiga buah Text Component yang ada di palette
standard form Rave Report. Tulis properties text pada komponen tersebut
masing-masing Nomor Faktur, Tanggal dan Jumlah Pembelian seperti contoh
dibawah (Gambar 59).
Selanjutnya masukkan tiga buah Data Text Component yang ada di palette
Report dan diletakkan masing-masing disebelah kanan tulisan Nomor Faktur,
Tanggal dan Jumlah Pembelian. Aturlah properties masing-masing yaitu untuk
Data Text Component Nomor Faktur dengan properties DataView adalah

94
DataView1 dan DataField adalah Nofak. Dengan cara yang sama untuk Data Text
Componen Tanggal dan Jumlah Pembelian masing-masing dengan DataField
Tanggal dan Total.

Gambar 58. Form Utama

Gambar 59. Form setelah ditambah komponen text

Untuk melihat bentuk cetakan yang akan dihasilkan dapat dilakukan


dengan menekan icon Execute Report yang ada dideretan icon sebelah kiri atas
bergambar printer. Dari melihat tampilan sebenarnya yang akan dicetak tersebut
perbaikan-perbaikan dapat dilakukan. Setelah semua dirasa cukup, simpanlah
project pada direktori penyimpanan dan diberi nama Rv_faktur, kemudian

95
tutuplah Rave Project. Selanjutnya kembali ke form Transaksi Penjualan pada
program Delphi. Klik komponen RvProjeck1 yang ada pada form Transaksi
Penjualan, properties ProjectFile komponen tersebut mengarah kedirektori
penyimpanan rave project dan pilihlah file Rv_faktur. Simpan kembali seluruh
program yang sudah dibuat.
Desain rave project dapat dibuat sesuka hati, tampilan gambarpun dapat
ditambahkan untuk mempercantik model faktur atau nota pembayaran pada toko
tersebut. Form ini akan tercetak pada saat tombol “Selesai” ditekan, yang
menandai transaksi dalam satu nomor faktur selesai. Hasil print out kurang lebih
seperti contoh dibawah ini.

5.10 Membuat Form Rekapitulasi Pembelian

Gambar 60. Form Rekap Pembelian Barang

96
Form ini digunakan untuk memantau pembelian barang apa saja pada
suatu tanggal yang dipilih dari salah satu toko atau distributor. Dengan cara ini
pihak manajemen akan mudah mengadakan pengecekan barang yang ada di
counter dengan barang yang baru saja dibeli.
Untuk membuat form tersebut diperlukan DateTimePicker, ComboBox,
DBGrid, Edit dan Button masing-masing satu buah, kemudian Query sebanyak 2
buah dan sebuah DataSource. Atur posisinya seperti gambar diatas. (Gambar 60)
Untuk form atur properties Caption adalah Rekap Pembelian Barang dan Name
adalah frm_rekbeli. Untuk properties BorderIcons, BorderStyle dan Position
samakan dengan form-form yang lain. Simpan unit ini dengan nama : Un_rekbeli.
Atur properties yang lain seperti daftar dibawah ini :

No Komponen Properties Nilai atau Harga


1 DateTimePicker Name DTP1
2 ComboBox1 Name Cbx1
3 Edit1 Name ed_total
Texs (kosongkan)
4 Query1 DatabaseName DBSTOKO
5 Query2 DatabaseName DBSTOKO
6 DataSource1 DataSet Query2
7 Button1 Caption Keluar
8 DBGrid DataSource DataSource1

String List Editor untuk Query1 adalah :

Select Distinct Perus


From tbl_beli
Where Tanggal = ‘08/04/10’

Sedangkan String List Editor untuk Query2 adalah :

Select Kodebrg AS Kode, Namabrg AS Nama, Satuan, Hrgsat AS Harga,


Jml AS Jumlah, Jmlhrg AS Total
From tbl_beli

Langkah berikutnya adalah membuat procedure yang dibutuhkan yaitu


procedure untuk mengisi list nama toko atau distributor atau perusahan pemasok
barang pada tanggal yang ditentukan dan sebuah procedure untuk mengisi list
barang yang dibeli ketika sebuah perusahaan dipilih. Proccedure pertama bernama
procedure Perusahaan dan procedure yang lain bernama procedure Pembelian.
Buat header kedua procedure tersebut dibagian deklarasi Type dengan
cara yang sama dengan sebelumnya dengan nama masing-masing adalah :

97
Tulis code program untuk masing-masing procedure tersebut di bagian
body program seperti berikut ini. Perama untuk procedure Perusahaan.

Kedua untuk procedure Pembelian, yaitu :

98
Setelah procedure selesai mulailah pengisian code program masing-
masing komponen. Yang pertama komponen DateTimePicker. Untuk code
program DTP1 ini dikenakan pada Events – OnChange, caranya klik komponen
DTP1 kemudian klik ganda pada Events – OnChange kemudian isikan code
programnya sebagai berikut :

Untuk code program Combo Box (cbx1) caranya klik ganda pada
komponen tersebut dan isikan perintahnya sebagai berikut :

Dan untuk tombol keluar caranya klik ganda tombol tersebut kemudian
isikan perintahnya sebagai berikut :

Simpan kembali program yang sudah selesai dengan menu File | Save atau
tekan tombol Ctrl + S.

5.11 Membuat Form Rekapitulasi Penjualan

Seperti halnya form Rekapitulasi Pembelian maka form Rekapitulasi


Penjualan juga hanya digunakan untuk melihat rekapitulasi hasil transaksi
penjualan di toko tersebut. Dengan cara ini pihak manajemen toko dapat dengan
mudah mengetahui pendapatan dari hasil transaksi penjualan pertanggal yang
diinginkan. Form ini membutuhkan komponen DateTimePicker, Query,
DataSource, Edit, DBGrid dan Button, masing-masing satu buah. (Gambar 61)

99
Gambar 61. Form Rekap Penjualan

Setelah masing-masing komponen diatur seperti gambar diatas, langkah


berikutnya mengatur properties dari Form dengan Caption adalah Rekap
Penjualan Barang dan Name adalah frm_rekjual. BorderIcons, BorderStyle dan
Position samakan dengan form-form yang lain. Selanjutnya simpan unit ini
dengan nama Un_rekjual.

Atur properties masing-masing komponen seperti daftar berikut ini :

No Komponen Properties Nilai atau Harga


1 DateTimePicker Name DTP1
2 Query1 DatabaseName DBSTOKO
3 DataSource1 DatSet Query1
4 Edit1 Name ed_total
ReadOnly True
Texs (kosongkan)
5 DBGrid DataSource DataSource1
ReadOnly True
6 Button1 Caption Keluar

String List Editor untuk Query1 adalah :

Select Nofak, Kodebrg, Namabrg, Sat, Hrgsat, Jml, Jmlhrg


From tbl_jual

Buat sebuah procedure dengan nama procedure Penjualan. Buatlah


deklarasi header pada bagian Type seperti dibawah ini.

100
Selanjutnya membuat code program untuk procedure tersebut pada body
program seperti dibawah ini.

Code program untuk DTP1 atau komponen DateTimePicker dikenakan


pada Events – OnChange, caranya klik komponen tersebut kemudian klik ganda
pada Evens – OnChange dan tulis perintahnya seperti berikut ini.

Code Program untuk Button1 dengan cara klik ganda pada komponen
tersebut dan isikan perintahnya seperti berikut ini.

101
Setelah selesai kembali ke form induk untuk membuat link dari main menu
Rekapitulasi Penjualan ke frm_rekjual ini dengan cara yang sudah dibahas
didepan. Simpan kembali seluruh program yang sduah jadi dengan menu File |
Save atau Ctrl + S, sebelum program dicoba untuk dijalankan.

5.12 Membuat Form Rekapitulasi Stok Barang

Form terakhir pada project ini adalah Form Rekap Stok Barang. Form ini
digunakan hanya untuk mengetahui rakap barang yang masih tersedia untuk
dijual. Bentuk form seperti gambar berikut ini. (Gambar 62)

Gambar 62. Form Rekapitulasi Stok Barang

Form ini sepintas seperti form Daftar Barang yang sudah dibuat terdahulu,
bedanya pada form Daftar Barang yang ditunjukkan Kode Barang, Nama Barang
dan Satuan. Sealain itu Form Daftar Barang dilengkapi fasilitas untuk menghapus
nama barang yang stoknya sudah kosong. Sedangkan form Rekap Stok Barang

102
berisi Kode Barang, Nama Barang dan Stok barang yang tersedia. Form ini hanya
untuk monitoring.
Susunlah komponen DBGrid, Query, DataSource dan Button seperti
contoh gambar diatas. Aturlah properties form dengan Caption adalah Daftar
Persediaan Barang dan Name adalah frm_rekstok. BorderIcons, BorderStyle dan
Position samakan dengan form-form yang lain. Kemudian simpan dengan nama :
Un_rekstok.

Atur properties komponen lainnya sesuai daftar berikut ini.

No Komponen Properties Nilai atau Harga


1 Query1 DatabaseName DBSTOKO
2 DataSource1 DatSet Query1
3 DBGrid DataSource DataSource1
ReadOnly True
4 Button1 Caption Selesai

String List Editor untuk Query1 adalah :

Select Kodebrg, Namabrg, Stok


From tbl_barang
Where Stok > 0
Order By Stok Desc

Code program untuk frm_rekstok yang dikenakan pada Events – OnActive


adalah sebagai berikut :

Code program untuk Button1 dengan cara klik ganda pada komponen
tersebut dan isikan perintahnya :

Kembali ke form induk dan buatlah link dari main menu Rekapitulasi Stok
Barang ke frm_rekstok dengan cara seperti yang sudah dibahas didepan. Simpan
keseluruhan program ini dan coba jalankan dari tahap awal sampai akhir. Dan
dengan ini semuah program sederhana sudah selesai. Lakukan analisa dan
perbaikan-perbaikan untuk menyempurnakan program ini.

103

You might also like