Perancangan Aplikasi Sistem Inventori Toko dan POS (Point Of Sale) dengan Visual Basic 6.0 danMySQL
(2)
(3)
PERSETUJUAN
Judul : Perancangan Aplikasi Sistem Inventori Toko dan POS (Point Of Sale) dengan Visual Basic 6.0 danMySQL
Kategori : Tugas Akhir
Nama : Siti Kholilah Pulungan
Nomor Induk Mahasiswa : 112406085
Program Studi : D3 Teknik Informatika
Departemen : Matematika
Fakultas : Matematika dan Ilmu Pengetahuan Alam
Disetujui di Medan, Juli 2014
Disetujui Oleh
Program Studi D3 Teknik Informatika
FMIPA USU Pembimbing,
Ketua,
Dr. Elly Rosmaini, M.Si. Dr. Pasukat Sembiring, M.Si. NIP. 196005201985032002 NIP. 195311131985031002
(4)
PERANCANGANAPLIKASI SISTEM INVENTORI TOKO DAN POS (POINT OF SALE) DENGAN
VISUAL BASIC 6.0 DAN MYSQL
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil karya sendiri. Kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Mei 2014
Siti Kholilah Pulungan 112406085
(5)
PENGHARGAAN
Puji dan syukur kepada Allah SWT Yang Maha Pemurah dan Maha Penyayang, dengan limpahan karunia-Nya penulis dapat menyelesaikan penyusunan Tugas Akhir ini
dengan Judul “PERANCANGAN SISTEM INVENTORI TOKO DAN POS (POINT OF SALE) DENGAN VISUAL BASIC 6.0 DAN MYSQL”. Shalawat beriring salam
penulis limpahkan kepada junjungan Nabi besar Muhammad SAW, keluarga, sahabat dan para pengikut sampai akhir zaman.
Ucapan terima kasih juga penulis sampaikan kepada Bapak Dr. Pasukat Sembiring, M.Si selaku dosen pembimbing penulis yang selalu memberikan masukan, baik kritik dan saran kepada penulis selama pembuatan tugas akhir ini mulai dari awal sampai dengan selesai. Terima kasih kepada ibu Dr. Elly Rosmaini, M.Si dan Bapak Syahriol Sitorus S.Si, M.IT selaku ketua Program Studi dan sekretaris Program Studi D3 Teknik Informatika FMIPA USU, Bapak Prof. Dr. Tulus, M.Si selaku ketua Departemen Matematika FMIPA USU dan Ibu Dr. Mardiningsih , M.Si selaku sekretaris Departemen Matematika FMIPA USU, Bapak Dr. Sutarman, M.Sc selaku Dekan FMIPA USU, seluruh staff dan Dosen Program Studi D3 Teknik Informatika FMIPA USU, dan pegawai FMIPA USU. Tidak terlupakan kepada Ayahanda Ahmad Gozali Pulungan dan Ibunda Yustina Aris, serta seluruh teman-teman D3 Teknik Informatika Universitas Sumatera Utara angkatan 2011 yang selama ini telah membantu penulis dalam memberikan saran untuk menyelesaikan program dan laporan tugas akhir.
(6)
Pada penulisan tugas akhir ini, penulis membuat aplikasi sistem inventori toko dan POS (point of sale).
Metode dan rancangan aplikasi ini dibuat dengan menggunakan perangkat lunak Visual Basic 6.0 sebagai bahasa pemrogramannya, editor skrip program, dan juga digunakan untuk mendesain sebuah aplikasi penjualan dan persediaan barang. Selain itu penulis juga menggunakan MySQL sebagai bahasa pemrograman untuk pengolahan database pada aplikasi penjualan dan persediaan barang.
Metode dan rancangan aplikasi ini berhubungan dengan dunia usaha. Dan paling diperlukan dalam bidang penjualan produk dan persediaan barang dagang yang harus bertindak cepat dan tepat, sehingga diperlukan program yang dapat mempercepat dan meminimalisasikan kesalahan yang terjadi dalam penjualan dan persediaan barang dagang tersebut.
Untuk itu penulis merancang sebuah aplikasi sistem inventori toko dan POS (Point Of Sale) dengan menggunakan Visual Basic 6.0 dan MySQL.
(7)
DAFTAR ISI
Halaman Persetujuan i Pernyataan ii Penghargaan iii Abstrak ivDaftar Isi v
Daftar Tabel vii
Daftar Gambar viii
Bab 1 Pendahuluan 1
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 3
1.4 Tujuan dan Manfaat 3
1.5 Metodelogi Penelitian 4
1.6 Sistematika Penulisan Laporan Tugas Akhir 5
Bab 2 Landasan Teori 7
2.1 Pengenalan Komputer 7
2.2 Pengertian Aplikasi 9
2.3 Konsep Dasar Penjualan 9
2.3.1 Tujuan penjualan 10
2.4 Akuntansi Persediaan (Pengertian Persediaan) 10
2.4.1 Metode pencatatan persediaan 11
2.5 Pengertian POS (Point of Sale) 13
2.5.1 Software POS (Point of Sale) 13
2.5.2 Hardware POS (Point of Sale) 15
2.6 Pengolahan Data 16
2.6.1 Operasi pengolahan data 18
2.7 Pengertian Basis Data (Database) 19
2.7.1 Jenis-jenis basis data 21
2.8 MySQL 22
2.8.1 Menjalankan MySQL Server 24
2.8.2 Mengakses database MySQL lewat phpMyAdmin 25
2.8.3 Menginstal driver myODBC 26
2.9 Microsoft Visual Basic 6.0 27
2.9.1 Struktur aplikasi dengan Visual Basic 6.0 27
2.9.2 Memulai Visual Basic 6.0 29
2.9.3 Komponen-komponen Visual Basic 6.0 31
2.9.4 Operator dalam Visual Basic 6.0 38
(8)
3.1 Flowchart Aplikasi 43
3.2 Garis Besar Database Program Toko 46
3.3 Relasi Tabel 48
3.4 Perancangan Database Program Toko 48
3.5 Perancangan Interface 50
Bab 4 Implementasi Sistem 65
4.1 Pengertian Implementasi Sistem 65
4.2 Tujuan Implementasi Sistem 65
4.3 Proses Implementasi Sistem 66
4.4 Penerapan Implementasi Sistem 68
4.5 Pemeliharaan Sistem 69
4.6 Tujuan Pemeliharaan Sistem 69
Bab 5 Penutup 70
5.1 Kesimpulan 70
5.2 Saran 71
Daftar Pustaka
Lampiran
Lampiran A: Kartu Bimbingan Tugas Akhir Mahasiswa Lampiran B: Surat Keterangan Hasil Uji Program Tugas Akhir Lampiran C: Listing Program
(9)
DAFTAR TABEL
Halaman
Tabel 2.9.3.1 Penjelasan Menu Toolbar 32
Tabel 2.9.3.2 Penjelasan Menu Toolbox 34
Tabel 2.9.4.1 Tabel Operator Aritmatika 39
Tabel 2.9.4.2 Tabel Operator Perbandingan 39
Tabel 2.9.4.3 Tabel Operator Logika 40
Tabel 2.9.7.1 Tabel Tipe Data 41
Tabel 2.9.7.2 Tabel Batasan Tipe Data yang Dipakai di Visual Basic 42
Tabel 3.4.1 Tabel User 49
Tabel 3.4.2 Tabel Penerbit 49
Tabel 3.4.3 Tabel Kategori 49
Tabel 3.4.4 Tabel Barang 49
Tabel 3.4.5 Tabel Transaksi Beli 49
Tabel 3.4.6 Tabel Pembelian Item 50
Tabel 3.4.7 Tabel Transaksi Jual 50
(10)
Halaman
Gambar 2.6.1 Proses Pengolahan Data 17
Gambar 2.8.1.1 Menjalankan XAMPP Control Panel dari Desktop 24 Gambar 2.8.1.2 Menjalankan XAMPP Control Panel dari Menu Start 24
Gambar 2.8.1.3 Menjalankan Servis MySQL 25
Gambar 2.8.2.1 Tampilan Utama phpMyAdmin 26
Gambar 2.9.2.1 Tampilan New Project Visual Basic 30
Gambar 2.9.2.2 Tampilan Utama Visual Basic 6.0 30
Gambar 2.9.3.1 Tampilan Main Window (Tittle bar, Menu bar, Toolbar) 31
Gambar 2.9.3.2 Tampilan Form Window 33
Gambar 2.9.3.3 Tampilan Toolbox 34
Gambar 2.9.3.4 Kotak Dialog Components yang Berisi Daftar Control 36
Gambar 2.9.3.5 Tampilan Jendela Properties 37
Gambar 2.9.3.6 Tampilan Form Layout 38
Gambar 2.9.3.7 Tampilan Jendela Project 38
Gambar 3.1.1 Flowchart Login 44
Gambar 3.1.2 Flowchart Menu Master 44
Gambar 3.1.3 Flowchart Menu Master Data 45
Gambar 3.1.4 Flowchart Menu Transaksi 45
Gambar 3.1.5 Flowchart Menu Laporan 46
Gambar 3.3.1 Relasi Tabel Program Toko, Point of Sale 48
Gambar 3.5.1 Tampilan Form Login 51
Gambar 3.5.2 Tampilan Halaman Menu Utama 51
Gambar 3.5.3 Tampilan Menu File 52
Gambar 3.5.4 Tampilan Menu Master Data 52
Gambar 3.5.5 Tampilan Menu Transaksi 53
Gambar 3.5.6 Tampilan Menu Laporan 54
Gambar 3.5.7 Tampilan Form Data Penerbit 54
Gambar 3.5.8 Tampilan Form Data Kategori 55
Gambar 3.5.9 Tampilan Form Data Barang 55
Gambar 3.5.10 Tampilan Form Data User 56
Gambar 3.5.11 Tampilan Form Transaksi Pembelian 56 Gambar 3.5.12 Tampilan Form Transaksi Penjualan 57
Gambar 3.5.13 Tampilan Laporan User Login 57
Gambar 3.5.14 Tampilan Laporan Data Penerbit 58
Gambar 3.5.15 Tampilan Laporan Data Kategori 58
Gambar 3.5.16 Tampilan Laporan Data Buku 59
Gambar 3.5.17 Tampilan Form Pilihan Kategori 59
Gambar 3.5.18 Tampilan Laporan Buku per Kategori 59 Gambar 3.5.19 Tampilan Laporan Transaksi Pembelian 60 Gambar 3.5.20 Tampilan Form Pilihan Periode Tanggal 60 Gambar 3.5.21 Tampilan Laporan Pembelian per Periode 60
(11)
Gambar 3.5.22 Tampilan Form Pilihan Nomor Transaksi 61 Gambar 3.5.23 Tampilan Laporan Pembelian per Nomor Transaksi 61 Gambar 3.5.24 Tampilan Laporan Transaksi Penjualan 61 Gambar 3.5.25 Tampilan Form Pilihan Periode Tanggal 62 Gambar 3.5.26 Tampilan Laporan Penjualan per Periode 62 Gambar 3.5.27 Tampilan Form Pilihan Nomor Transaksi Penjualan 62 Gambar 3.5.28 Tampilan Laporan Penjualan per Nomor Transaksi 63 Gambar 3.5.29 Tampilan Laporan Penjualan Buku Terlaris 63 Gambar 3.5.30 Tampilan Form Transaksi Penjualan yang Sudah di Isi dengan
Barang yang akan Dijual 64
(12)
Pada penulisan tugas akhir ini, penulis membuat aplikasi sistem inventori toko dan POS (point of sale).
Metode dan rancangan aplikasi ini dibuat dengan menggunakan perangkat lunak Visual Basic 6.0 sebagai bahasa pemrogramannya, editor skrip program, dan juga digunakan untuk mendesain sebuah aplikasi penjualan dan persediaan barang. Selain itu penulis juga menggunakan MySQL sebagai bahasa pemrograman untuk pengolahan database pada aplikasi penjualan dan persediaan barang.
Metode dan rancangan aplikasi ini berhubungan dengan dunia usaha. Dan paling diperlukan dalam bidang penjualan produk dan persediaan barang dagang yang harus bertindak cepat dan tepat, sehingga diperlukan program yang dapat mempercepat dan meminimalisasikan kesalahan yang terjadi dalam penjualan dan persediaan barang dagang tersebut.
Untuk itu penulis merancang sebuah aplikasi sistem inventori toko dan POS (Point Of Sale) dengan menggunakan Visual Basic 6.0 dan MySQL.
(13)
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Perkembangan teknologi informasi sangat cepat dan mempengaruhi pola budaya
masyarakat pada berbagai bidang kehidupan, terutama bagi negara yang sedang
berkembang. Pendidikan, riset dan ilmu pengetahuan, hukum, pemerintahan,
keuangan perbankan, komunikasi dan sebagainya tidak lepas dari pengaruh
perkembangan teknologi informasi. Perkembangan teknologi informasi yang
pesat belakangan ini telah memasuki hampir semua bidang kehidupan, hal
ini ditandai dengan banyaknya pengguna komputer, baik untuk kepentingan
perusahaan atau bisnis sampai kepada hal-hal yang bersifat hiburan,
pendidikan dan kesehatan.
Perkembangan ini didukung oleh industri hardware (perangkat keras) dan software (perangkat lunak) komputer yang terus berkembang dan semua ini telah memberikan banyak dampak positif bagi kehidupam masyarakat,
(14)
efisien. Dengan pesatnya teknologi tersebut kebutuhan masyarakat akan
sebuah pelayanan yang tidak dibatasi ruang dan waktu saat ini mendorong
semakin dibutuhkannya suatu sistem, metodologi, strategi, dan perangkat
lunak yang akan membantu peroses peningkatan kualitas pelayanan terhadap
customer (pelanggan), sehingga diharapkan kepuasan pelanggan dapat tercapai.
Studi khusus proyek yang akan dibahas pada Tugas Akhir saya adalah
membuat Program Point Of Sale (POS), atau program toko atau program kasir yang mencakup penjualan retail kepada pelanggan dan pembelian stok barang
yang berasal dari supplier atau penyedia barang yang dijual di toko.
1.2 Rumusan Masalah
Berdasarkan uraian latar belakang tersebut, terdapat beberapa permasalahan yang
perlu dikaji lebih lanjut, yaitu:
1. Bagaimana merancang program aplikasi sistem inventori toko dan POS
(Point Of Sale)pada toko atau usaha-usaha dagang lainnya.
2. Bagaimana mengimplementasikannya menggunakan Visual Basic 6.0 dan
(15)
3
1.3 Batasan Masalah
Adapun batasan masalah dalam penelitian ini adalah sebagai berikut:
1. Aplikasi ini dapat digunakan sebagai pengelolaan manajemen data barang.
2. Aplikasi ini dapat membuat program transaksi toko, diantaranya transaksi
pembelian dan transaksi penjualan.
3. Aplikasi ini juga dapat membuat laporan master data dan transaksi
pembelian atau transaksi penjualan.
4. Aplikasi inio diimplementasikan dengan menggunakan Visual Basic 6.0
dan MySQL.
1.4 Tujuan dan Manfaat
Tujuan yang ingin dicapai dari penulisan Tugas Akhir ini adalah merancang
program aplikasi sistem inventory toko dan POS (Point Of Sale) dengan Visual Basic 6.0 dan MySQL agar pengelolaan manajemen toko lebih mudah, selain itu
pengaksesan dan pemrosesan informasi yang cepat, akurat serta efisien.
Sedangkan manfaat yang diperoleh dalam penulisan Tugas Akhir ini,
antara lain:
1. Program POS (Point Of Sale) pada aplikasi ini mencakup penjualan retail kepada pelanggan dan pembelian stok barang yang berasal dari supplier
(16)
2. Transaksi penjualan dan transaksi pembelian juga dapat lebih mudah
dilakukan.
3. Laporan transaksi penjualan dapat di cetak menjadi struk nota penjualan.
1.5 Metodelogi Penelitian
Untuk mempermudahdalam mendapatkan data yang dibutuhkan maka penulis
menggunakan metode sebagai berikut:
1. Bahan atau materi penelitian:
Dalam penyampaian proposal ini penulis menggunakan beberapa bahan
atau materi yang akan dibahas dalam penyelesaian Tugas Akhir.
2. Alat-alat penelitian:
Program ini dibuat dengan menggunakan perangkat keras dan perangkat
lunak yang dibutuhkan dalam pembuatan Tugas Akhir.
3. Jalan penelitian.
Untuk memperoleh data yang diperlukan, perlu dilakukan penelitian pada
toko-toko atau usaha dagang yang masih menggunakan cara manual untuk
pengelolaan manajemennya.
4. Membuat desain sistem.
(17)
5
1.6 Sistematika Penulisan Laporan Tugas Akhir
Agar dapat memberikan gambaran yang jelas pada penulisan Laporan Tugas
Akhir ini, maka penulis membaginya dalam beberapa bagian seperti berikut:
BAB 1 : PENDAHULUAN
Bab ini menguraikan latar belakang Laporan Tugas Akhir,
rumusan masalah, batasan masalah, tujuan dan manfaat,
metodelogi penelitian, serta sistematika penulisan laporan tugas
akhir.
BAB 2 : LANDASAN TEORI
Bab ini akan menguraikan tentang konsep dasar teori-teori yang
menjadi landasan dan referensi dalam mengerjakan Tugas Akhir
ini. Contohnya seperti uraian mengenai Visual Basic 6.0 dan
MySQL.
BAB 3 : ANALISIS DAN PERANCANGAN SISTEM
Bab ini menguraikan analisa ruang lingkup sistem aplikasi
inventori toko dan penjualan, jenis file yang digunakan, analisa
kebutuhan database, perancangan sistem, dan gambaran umum
(18)
BAB 4 : IMPLEMENTASI PROGRAM
Bab ini akan menguraikan tentang pengertian implementasi
sistem, serta komponen dalam implementasi dan instalasi.
BAB 5 : KESIMPULAN DAN SARAN
Sebagai bab terakhir, bab 5 akan membahas dan menguraikan
beberapa kesimpulan dari uraian bab-bab sebelumnya, dan akan
(19)
BAB 2
LANDASAN TEORI
2.1 Pengenalan Komputer
Komputeradalah suatu rangkaian peralatan elektronik yang bekerja secara
bersama-sama yang membentuk suatu sistem kerja yang rapi dan teliti. Sistem ini
kemudian dapat digunakan untuk melaksanakan serangkaian pekerjaan secara
otomatis, berdasarkan urutan instruksi ataupun program yang diberikan
penggunanya. Komputer dapat membantu pekerjaan manusia agar lebih mudah,
cepat dan akurat. Selain itu komputer juga berfungsi sebagai alat informasi dan
komunikasi.
Sebagaimana layaknya sebuah perangkat elektronik, komputer merupakan
sistem IPO (Input Proccess and Output), sehingga memerlukan masukan untuk
diolah yaitu berupa data dan akan menghasilkan suatu keluaran yaitu informasi.
Konsep dasar atau perangkat utama dari sebuah komputer dibagi
(20)
beroperasi secara normal karena suatu sistem komputer merupakan gabungan dari
beberapa peralatan komputer yang saling berhubungan dan terkoordinasikan oleh
suatu sistem operasi.Bagian dari komputer tersebut yaitu:
1. Hardware (perangkat keras)
“hard” berarti keras yaitu komponen atau perangkat keras komputer yang
membentuk suatu sistem komputer yang berhubungan dengan peralatan
(komponen lainnya), sehingga memungkinkan komputer dapat melakukan
tugasnya. Hardware sendiri terdiri dari beberapa jenis, yaitu:
- Input (masukan), contoh: Keyboard, mouse, scanner.
- Output (keluaran), contoh: Layar monitor, printer.
- Penyimpanan, contoh: Hard disk, flash disk, Memori (RAM), CD.
- Pemrosesan, contoh:Motherboard, Prosesor.
- Komunikasi, contoh: Modem, kabel LAN, Wifi. 2. Software (perangkat lunak)
Software merupakan perangkat kebalikan dari hardware, “soft “ berarti
lunak yaitu program yang berisi instruksi atau perintah yang ditulis dalam
bahasa komputer yang dimengerti oleh komputer. Software terbagi menjadi
dua yaitu software sistem operasi dan software aplikasi.
3. Brainware (user atau pengguna)
Brainware merupakan istilah yang menunjuk pada orang yang bekerja
berhubungan dengan komputer, contohnya: user atau operator merupakan
orang yang mampu mengoperasikan komputer. Sedangkan administrator
adalah orang yang mengatur atau merancang sistem kerja, urutan kerja,
(21)
9
2.2 Pengertian Aplikasi
Aplikasi merupakan komponen atau perangkat lunak pendukung sistem operasi
yang biasa digunakan untuk keperluan membantu kerja manusia sehari-hari
seperti pengolahan data, pengolahan gambar, pengolahan angka, dan lainnya.
2.3 Konsep Dasar Penjualan
Aktivitas penjualan merupakan pendapatan utama perusahaan karena jika aktivitas
penjualan produk maupun jasa tidak dikelola dengan baik maka secara langsung
dapat merugikan perusahaan. Hal ini dapat disebabkan karena sasaran penjualan
yang diharapkan tidak tercapai dan pendapatan pun akan berkurang. Untuk lebih
jelasnya dapat dilihat dari pengertian penjualan itu sendiri adalah sebagai berikut.
Penjualan adalah sebuah usaha atau langkah konkrit yang dilakukan untuk
memindahkan suatu produk, baik itu berupa barang ataupun jasa, dari produsen
kepada konsumen sebagai sasarannya. Tujuan utama penjualan yaitu
mendatangkan keuntungan atau laba dari produk ataupun barang yang dihasilkan
produsennya dengan pengelolaan yang baik. Dalam pelaksanaannya, penjualan
sendiri tak akan dapat dilakukan tanpa adanya pelaku yng bekerja didalamnya
(22)
2.3.1 Tujuan penjualan
Dalam suatu perusahaan kegiatan penjualan adalah kegiatan yang penting, karena
dengan adanya kegiatan penjualan tersebut maka akan terbentuk laba yang dapat
menjamin kelangsungan hidup perusahaan.Tujuan umum penjualan yang dimiliki
oleh perusahaan menurut Basu Swastha (2005;404) dalam bukunya “Manajemen Penjualan”, yaitu:
a) Mencapai volume penjualan tertentu.
b) Mendapat laba tertentu.
c) Menunjang pertumbuhan perusahaan.
Berdasarkan uraian di atas dapat disimpulkan bahwa tujuan umum
perusahaan dalam kegiatan penjualan adalah untuk mencapai volume penjualan,
mendapat laba yang maksimal dengan modal sekecil-kecilnya, dan menunjang
pertumbuhan suatu perusahaan.
2.4 Akuntansi Persediaan (Pengertian Persediaan)
Persediaan merupakan barang-barang yang dibeli oleh perusahaan dengan tujuan
untuk dijual kembali dengan tanpa mengubah bentuk dan kualitas barang, atau
dapat dikatakan tidak ada proses produksi sejak barang dibeli sampai dijual
(23)
11
perusahaan untuk dijual dalam operasi bisnis normal, atau barang yang akan
digunakan atau dikonsumsi dalam membuat barang yang akan dijual.
Berdasarkan pengertian di atas maka perusahaan jasa tidak memiliki
persediaan, perusahaan dagang hanya memiliki persediaan barang dagang sedang
perusahaan industri memiliki 3 jenis persediaan yaitu persediaan bahan baku,
persediaan barang dalam proses dan persediaan barang jadi (siap untuk dijual).
Dalam laporan keuangan, persediaan merupakan hal yang sangat penting
karena baik laporan rugi atau laba maupun Neraca tidak akan dapat disusun tanpa
mengetahui nilai persediaan. Kesalahan dalam penilaian persediaan akan langsung
berakibat kesalahan dalam laporan rugi atau laba maupun neraca.
2.4.1 Metode pencatatan persediaan
Dalam sebuah perusahaan, persediaan akan mempengaruhi neraca maupun
laporan laba rugi. Dalam neraca perusahaan dagang, persediaan pada umumnya
merupakan nilai yang paling signifikan dalam aset lancar. Dalam laporan laba
rugi, persediaan bersifat penting dalam menentukan hasil operasi perusahaan
dalam periode tertentu. Metode pencatatan persediaan pada dasarnya dibedakan
menjadi dua, yaitu:
1. Metode fisik atau periodik (Physical Inventory Method)
Metode fisik artinya pencatatan yang berkaitan dengan persediaan barang
(24)
dagangan akhir dihitung secara fisik yang ada di gudang.Metode fisik atau
periodik pada umumnya digunakan perusahaan yang menjual barang
dagangan dengan harga relative murah, tetapi sering terjadi. Menurut
metode ini, akun Persediaan barang dagangan tidak boleh didebit untuk
mencatat transaksi pembelian barang dagangan, dan tidak boleh dikredit
untuk mencatat transaksi penjualan barang dagangan. Dalam metode ini,
transaksi pembelian barang dagangan akan dicatat dengan mendebit akun
Pembelian, sedangkan jika terjadi penjualan akan dicatat dengan mengkredit
akun Penjualan.
Persediaan barang dagang pada awal periode +
Pembelian bersih selama periode =
Persediaan tersedia dijual
-Persediaan pada akhir periode =
Harga pokok penjualan
2. Metode perpetual atau terus- menerus (Perpetual Inventory Method)
Metode perpetual artinya pencatatan yang berkaitan dengan persediaan
barang dagangan yang dilakukan secara kontinu, sehingga bila terjadi
pembelian akan menambah persediaan barang dagangan dan bila terjadi
penjualan akan mengurangi persediaan barang dagangan.Metode perpetual
atau terus-menerus pada umumnya digunakan perusahaan yang menjual
barang dagangan dengan harga relatif mahal, dan tidak sering terjadi. Dalam
metode ini, transaksi pembelian barang dagangan akan dicatat dengan
(25)
13
perolehan), sedangkan jika terjadi penjualan akan dicatat dengan mengkredit
akun persediaan barang dagangan sebesar harga pokoknya.
2.5 Pengertian POS (Point of Sale)
Pengertian dari Point of Sale atau yang biasa disingkat POS yaitu merupakan
kegiatan yang berorientasi pada penjualan serta sistem yang membantu proses
transaksi. Setiap POS terdiri dari hardware dan software dimana kedua komponen
tersebut digunakan untuk setiap proses transaksi.POS akan menjadi sangat penting
di dunia bisnis karena POS diibaratkan berupa terminal uang dimana tempat
menerima pembayaran dari pembeli kepada pedagang, karena pembayaran
tersebut merupakan indicator bagi pebisnis untuk mengukur tingkat pendapatan
atau omzet.
2.5.1 Software POS (Point of Sale)
POS software merupakan komponen utama dari sistem POS yang pada akhirnya
menentukan jalannya proses, seperti apa yang harus dilakukan dan bagaimana
harus melakukan. Menentukan software yang tepat akan sangat bergantung pada
fitur yang dibutuhkan dan jenis lingkungan tempat bekerja. Banyak software POS
yang sangat fleksibel untuk mengakomidir berbagai usaha. Software yang
(26)
memakaifitur yang berbeda sesuai dengan kebutuhan. Ada beberapa fitur yang
biasanya diperlukan dalam Software aplikasi POS (Point of Sale), yaitu:
a) Inventory Management
Pebisnis perlu mengelola persediaan barang yang dimiliki dan software POS
akan membantu mengecek tingkat stok barang dan data penjualan yang
terjadi. Pebisnis harus dapat mengetahui setiap detik stok barang untuk
memastikan supply kepada pelanggan.
b) Pelaporan
Keunggulan dari penggunaan POS systems ini adalah dapat mengetahui
laporan mengenai penjualan dan kebiasaan pelanggan. Sebagian aplikasi
memiliki pelaporan dasar untuk memberikan laporan yang terjadi dalam
berbisnis.
c) Purchasing
Dengan system pelacak inventaris, pebisnis akan mengetahui kapan
persediaan barang habis. Beberapa software POS dilengkapi dengan
software acconting untuk membuat memberi laporan barang yang hampir
kehabisan stok, sehingga pelanggan tak perlu kecewa karena barang tidak
ada.
d) Customer Management
Dengan menentukan aplikasi yang tepat bukan mustahil dapat meciptakan
promosi tertentu, kupon belanja dan proses reservasi pelanggan dihandle
dengan satu aplikasi, menciptakan customer experience yang baik akan
(27)
15
e) Standar Keamanan Transaksi
Kebanyakan dari pelanggan senang bertransaksi dengan menggunakan kartu
kredit ataupun debit. Oleh karena itu untuk mempermudah mereka maka
system POS harus dilengkapi dengan standar keamanan bertransaksi.
f) Return Processing
Proses retur dan pertukaran barang ada di setiap bisnis. Software POS yang
tepat dapat membantu membuat proses ini lebih mudah bagi Anda dan
pelanggan.
2.5.2 Hardware POS (Point of Sale)
Semua POS membutuhkan hardware untuk menjalankan fungsinya, membantu
proses pembayaran dan membuat tanda terima untuk pelanggan. Dalam hal
pemilihan hardware ini, sebaiknya dicocokan dengan lingkungan kerja.
a) Terminal/PC
Dalam hal ini banyak perusahaan yang hanya menggunakan PC sederhana
untuk menunjang bisnisnya, tetapi ada POS system yang menyediakan
pengoperasian berdaya rendah serta all-in-one unit dengan layar sentuh yang
terintegrasi serta dilengkapi card reader. Toko retail kebanyakan
menggunakan standar PC. Pada akhirnya kebutuhan pebisnis lah yang
menentukan kebutuhan akan PC terserbut.
b) Receipt Printer
Disetiap transaksi selalu diakhiri dengan mencetak tanda terima untuk
(28)
terganggu, jadi pastikan untuk mempunyai printer yang mendukung volume
cetak dan mudah digunakan. Saat ini printer thermal yang lebih mudah
untuk digunakan dan tidak harus berurusan dengan tinta.
c) Cash Drawer
Cash Drawer merupakan komponen yang paling sederhana tetapi
merupakan tempat paling nyaman untuk menyimpan uang tunai, cek dan
penerimaan kartu kredit sepanjang penjualan. Laci biasanya terhubung ke
printer dan terbuka secara otomatis dalam setiap transaksi.
d) MSR/Terminal Pembayaran
Alat ini digunakan untuk pembayaran yang berbasis kartu kredit atau debit
dan setiap system POS membutuhkan sarana untuk dapat membaca dan
memproses kartu tersebut. Kemampuan MSR ini tergantung pada perangkat
lunak yang digunakan.
e) Barcode Scanner
Merupakan bagian terpenting untuk mempercepat proses memasukan
barang dan proses pelayanan penjualan. Untuk kebutuhan pelayanan
pembelian pelanggan yang cepat bisa menggunakan tipe hands-free.
2.6 Pengolahan Data
Pengolahan Data adalah manipulasi data agar menjadi bentuk yang lebih berguna. Pengolahan data ini tidak hanya berupa perhitungan numeris tetapi juga
(29)
(30)
Output : Pada langkah ini hasil-hasil dari pengolahan sebelumnya dikumpulkan.
Bentuk data output tergantung pada penggunaan data tersebut unutk pengolahan
selanjutnya.
2.6.1 Operasi pengolahan data
Prosedur pengolahan data biasanya terdiri dari sejumlah operasi pengolahan dasar
yang dilaksanakan dalam beberapa urutan, yaitu:
a) Pencatatan (recording)
Pencatatan adalah memindahkan data pada beberapa formulir atau
dokumen. Hal ini terjadi tidak hanya selama tahap originasi dan tahap
distribusi akan tetapi terjadi pada seluruh siklus pengolahan.
b) Duplikasi (duplicating)
Operasi ini merupakan penggandaan data di atas formulir-formulir atau
dokumen. Duplikasi mungkin saja dikerjakan sewaktu data tersebut dicatat
secara manual, atau mungkin saja duplikasi dikerjakan setelahnya dengan
menggunakan suatu mesin.
c) Pemeriksaan (verifying)
Karena pencatatan biasanya merupakan operasi manual, adalah penting
bahwa data yang telah dicatat tersebut diperiksa secara teliti, barangkali ada
kesalahan-kesalahan.
d) Klasifikasi
Operasi ini memisahkan data data ke dalam berbagai kategori. Klasifikasi
(31)
19
daftar pertanyaan mahasiswa dapat diklasifikasikan sesuai dengan jenis
kelamin mahasiswa, atau sesuai tahun masuk mahasiswa.
e) Sorting
Mengatur data dalam urutan tertentu. Operasi ini sering terjadi di dalam
kehidupan sehari-hari. Nama-nama di dalam buku telepon disorting menurut
abjad, data pegawai disorting menurut nomor induk pegawai. Sorting data
dapat dilakukan sebelum atau sesudah klasifikasi.
f) Merging
Operasi ini adalah mencampur dua atau lebih kumpulan data, semua
kumpulan tersebut telah disort dengan kunci yang sama, dan meletakkan
kumpulan data tersebut bersama-sama menjadi kumpulan data tunggal yang
telah disort.
g) Kalkulasi
Melakukan perhitungan numeris pada data yang bertipe numeris.
h) Memeriksa tabel, mencari dan mendapatkan kembali data (table look-up,
searching, retrieing) Operasi ini bermaksud untuk mendapatkan kembali
data tertentu didalam kumpulan data yang telah tersort.
2.7 Pengertian Basis Data (Database)
Database atau basis data adalah kumpulan data yang disimpan secara sistematis di
dalam komputer dan dapat diolah atau dimanipulasi menggunakan perangkat
(32)
meliputi spesifikasi berupa tipe data, struktur, dan juga batasan-batasan data yang
akan disimpan. Basis data merupakan aspek yang sangat penting dalam sistem
informasi dimana basis data merupakan gudang penyimpanan data yang akan
diolah lebih lanjut. Basis data menjadi penting karena dapat menghidari duplikasi
data, hubungan antar data yang tidak jelas, organisasi data, dan juga update yang
rumit.
Proses memasukkan dan mengambil data ke dan dari media penyimpanan
data memerlukan perangkat lunak yang disebut dengan sistem manajemen basis
data atau database management system (DBMS). DBMS merupakan sistem
perangkat lunak yang memungkinkan user untuk memelihara, mengontrol, dan
mengakses data secara praktis dan efisien. Dengan kata lain semua akses ke basis
data akan ditangani oleh DBMS. Ada beberapa fungsi yang harus ditangani
DBMS yaitu mengolah pendefinisian data, dapat menangani permintaan pemakai
untuk mengakses data, memeriksa sekuriti dan integriti data yang didefinisikan
oleh DBA (Database Administrator), menangani kegagalan dalam pengaksesan
data yang disebabkan oleh kerusakan sistem maupun disk, dan menangani unjuk
kerja semua fungsi secara efisien.
Tujuan utama dari DBMS adalah untuk memberikan tinjauan abstrak data
kepada user (pengguna). Jadi sistem menyembunyikan informasi tentang
bagaimana data disimpan, dipelihara, dan tetap dapat diambil (akses) secara
(33)
21
yang kompleks tetapi masih tetap bisa digunakan oleh pengguna awam tanpa
mengetahui kompleksitas strukturnya.
Dalam pengolahan basis data, ada beberapa software yang digunakan
untuk membuat dan mengolah database, yaitu: Microsoft Access, Ms SQL Server,
Oracle, MySql, Postgre SQL, Firebird.
2.7.1 Jenis-jenis basis data
Basis data flat-file. Basis data flat-file ideal untuk data berukuran kecil dan dapat
dirubah dengan mudah. Pada dasarnya, mereka tersusun dari sekumpulan string
dalam satu atau lebih file yang dapat diurai untuk mendapatkan informasi yang
disimpan. Basis data flat-file baik digunakan untuk menyimpan daftar atau data
yang sederhana dan dalam jumlah kecil. Basis data flat-file akan menjadi sangat
rumit apabila digunakan untuk menyimpan data dengan struktur kompleks
walaupun dimungkinkan pula untuk menyimpan data semacam itu. Salah satu
masalah menggunakan basis data jenis ini adalah rentan pada korupsi data karena
tidak adanya penguncian yang melekat ketika data digunakan atau dimodifikasi.
Basis data relasional. Basis data ini mempunyai struktur yang lebih logis
terkait cara penyimpanan. Kata "relasional" berasal dari kenyataan bahwa
tabel-tabel yang berada di basis data dapat dihubungkan satu dengan lainnya. Basis data
relasional menggunakan sekumpulan tabel dua dimensi yang masing-masing tabel
(34)
dua atau lebih tabel, digunakan key (atribut kunci) yaitu primary key di salah satu
tabel dan foreign key di tabel yang lain. Saat ini, basis data relasional menjadi
pilihan karena keunggulannya. Beberapa kelemahan yang mungkin dirasakan
untuk basis data jenis ini adalah implementasi yang lebih sulit untuk data dalam
jumlah besar dengan tingkat kompleksitasnya yang tinggi dan proses pencarian
informasi yang lebih lambat karena perlu menghubungkan tabel-tabel terlebih
dahulu apabila datanya tersebar di beberapa tabel.
2.8 MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL atau
yang dikenal dengan DBMS (database management system), database ini
multithread, multi-user. MySQL AB membuat MySQL tersedia sebagai perangkat
lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka
juga menjual dibawah lisensi komersial untuk kasus-kasus yang bersifat khusus.
Kekuatan MySQL tidak ditopang oleh sebuah komunitas, seperti Apache,
yang dikembangkan oleh komunitas umum, dan hakcipta untuk kode sumber
dimiliki oleh pemilik masing-masing, tetapi MySQL didukung penuh oleh sebuah
perusahaan profesional dan komersial, yakni MySQL AB dari Swedia.
MySQL adalah Relational Database Management System (RDBMS) yang
(35)
23
Dimana setiap orang bebas menggunakan MySQL, namun tidak boleh dijadikan
produk turunan yang bersifat closed source atau komersial. MySQL sebenarnya
merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu
SQL (Structured Query Language). SQL adalah sebuah konsep pengoprasian
database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang
memungkinkan pengoprasian data dikerjakan dengan mudah secara otomatis.
Sebagai database server, MySQL dapat dikatakan lebih unggul
dibandingkan database server lainnya, terutama dalam kecepatan. Berikut ini
beberapa keistimewaan MySQL, antara lain:
1) Portability
MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows,
Linux, FreeBSD, Mac OS X Server, Solaris, Amiga, dan masih banyak lagi.
2) Multiuser
MySQL dapat digunakan oleh beberapa user dalam satu waktu yang
bersamaan tanpa mengalami masalah atau konflik.
3) Security
MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama
host, dan izin akses user dengan sistem perizinan yang mendetail serta
password terenkripsi.
4) Scalability dan Limits
MySQL mampu menangani database dalam skala besar, dengan jumlah
records lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu
(36)
(37)
(38)
(39)
27
MyODBC dapat diperoleh secara gratis pada situs resmi MySQL, yaitu
dengan alamat www.mysql.com. MyODBC wajib di instal pada komputeryang
akan dipakai untuk membuat program yang databasenya adalah MySQL, baik
MySQL terinstal pada komputer yang sama, maupun beda komputer.
2.9 Microsoft Visual Basic 6.0
Microsoft Visual Basic merupakan salah satu aplikasi pemrograman visual yang
memiliki bahasa pemrograman yang cukup populer dan mudah utuk dipelajari.
Basis bahasa pemrograman yang digunakan dalam visual basic adalah bahasa
BASIC. BASIC (Beginner’s All-Purpose Symbol Instruction Code) adalah salah satu bahasa pemrograman tingkat tinggi yang sederhana dan mudah dipelajari.
Selain itu basic juga merupakan salah satu bahasa pemrograman yang sudah
dikenal oleh pemakai komputer. Bahasa ini dapat dikatakan sebagai bahasa
pemrograman dasar atau yang paling mudah yang sesuai dengan namanya. Bahasa
ini pertama kali muncul pada tahun 1960 dan diperkenalkan oleh Dartmouth
College.
2.9.1 Struktur aplikasi dengan Visual Basic 6.0
Aplikasi (project) pada Visual Basic 6.0 terdiri atas beberapa bagian-bagian yang
berperan penting dalam penyusunan atau pembuatan sebuah aplikasi, berikut
(40)
1) Form
Form adalah sebuah bidang dimana kita mendesain program dengan
meletakkan objek-objek yang merupakan rangkaian dari perintah-perintah
yang akan dikerjakan oleh palikasi tersebut.
2) Control
Control adalah yang mempunyai bentuk gambar grafis yang akan diletakkan
diatas bidang kerja yang disebut Form yang dapat berinteraksi dengan
pemakai, seperti TextBox, LabelBox, CommandButton, dan lain-lainnya.
Form dan Control merupakan objek dalam pemrograman ini.
3) Properties
Properties adalah variabel atau predikat yang melekat pada setiap objek
(Form dan Control). Contoh Properties adalan nama, caption, ukuran,
warna, posisi, dan isi. Visual Basic memberikan nilai baku dan nilai ini
dapat diubah pada waktu program dijalankan.
4) Methods
Methods adalah prosedur yang sudah dibuat pada setiap objek yang
sewaktu-waktu dapat digunakan sesuai dengan tujuan method tersebut.
5) Event Procedure
Event Procedure adalah kode yang berhubungan dengan setiap objek yang
akan melaksanakan tugasnya sesuai dengan nama event yang dimaksud.
Kode ini akan bereaksi apabila ada aksi dari user pada objek yang
(41)
29
6) General Procedure
General Procedure adalah kode-kode yang tidak berhubungan langsung
dengan objek yang ada. Prosedur ini akan dijalankan apabila dipanggil
namanya dalam sebuah pernyataan pada baris program.
7) Modules
Modules adalah kumpulan dari beberapa General Procedure, deklarasi
variabel, dan definisi konstanta yang digunakan dalam sebuah aplikasi.
2.9.2 Memulai Visual Basic 6.0
Untuk dapat memulai menjalankan Visual Basic 6.0 dari menu Start – All Program–Microsoft Visual Basic 6.0 atau dengan menunjuk ikon shortcut Visual Basic 6.0 pada desktop kemudian klik ganda tombol kiri mouse. Visual Basic 6.0
akan dijalankan yang kemudian akan muncul kotak dialog seperti yang
ditunjukkan pada Gambar 2.9.2.1.
Pada kondisi awal kotak dialog tersebut akan menampilkan pilihan-pilihan
yang dapat dikerjakan oleh Visual Basic 6.0 dalam membuat sebuah aplikasi,
namun bila sudah pernah membuat sebuah aplikasi maka kotak dialog tersebut
akan menampilkan daftar aplikasi yang sudah pernah di buat sebelumnya. Bila hal
ini yang di inginkan, maka pilihlah pada menu tab Existing. Kemudian jika
memilih menu tab Recent maka kotak dialog akan menampilkan daftar file yang
pernah dibuat dengan Visual Basic 6.0 sebelumnya dengan urutan yang teratas
(42)
(43)
(44)
Berikut penjelasan masing-masing tombol pada menu Toolbar.
Tabel 2.9.3.1 Penjelasan menu Toolbar
Menu
Fungsi
Add Standard Exe Project
Menambahkan project baru bertipe standar.
New Form Menambahkan form baru ke dalam project yang sedang aktif.
Menu Editor Menampilkan menu editor yang digunakan sebagai pembuat menu.
Open Project Membuka project yang sudah pernah dibuat. Save Project Menyimpan project yang sedang aktif.
Code Editor Tasks Berisi tool-tool untuk mengedit atau mengubah object yang sedang dikerjakan pada suatu project. Run/Start Menjalankan Program.
Pause/Break Menghentikan sementara program yang sedang dijalankan.
Stop/End Menghentikan program yang sedang dijalankan. Project Explorer Menampilkan jendela Project Explorer.
Properties Window Menampilkan jendela Properties. Form Layout Menampilkan jendela Form Layout. Object Browser Menampilkan jendela Object Browser. Toolbox Menampilkan jendela yang berisi toolbox. Form Position Menampilan posisi form
Form Dimensions Menampilkan dimensi form
2) Form Window
Form window merupakan pusat untuk merancang dan membangun sebuah
aplikasi yang diinginkan dan form ini merupakan sebuah bidang
perancangan aplikasi. Pada bidang inilah pemakai atau programmer
merancang dan menyusun aplikasinya dengan bantuan objek-objek yang
(45)
(46)
kontrol yang terpasang pada bagian form. Picture Box Menampilkan gambar dari sebuah file.
Label Menampilkan teks, dimana pengguna program tidak bisa mengubah teks tersebut.
Text Box Membuat object teks, dimana teks tersebut dapat diubah oleh pengguna program.
Frame Mengelompokkan beberapa kontrol. Frame harus dibuat terlebih dahulu sebelum diisi dengan kontrol-kontrol yang akan dikelompokkan.
Command Button Membuat tombol perintah
Check Box Membuat kotak periksa, dimana pengguna program dapat memilih beberapa pilihan.
Option Button Membuat tombol pilihan, dimana pengguna program hanya dapat memilih satu dari beberapa
(47)
35
pilihan yang disediakan.
Combo Box Menambahkan kontrol kotak combo yang merupa-kan kontrol gabungan antara TextBox dan ListBox.
List Box Membuat daftar pilihan.
Horizontal Scroll Bar Membuat kontrol penggulung horizontal Vertical Scroll Bar Membuat kontrol penggulung vertical.
Timer Membuat kontrol waktu dengan interval yang ditentukan.
Drive List Box Menampilkan disk drive yang dimiliki oleh komputer.
Directory List Box Menampilkan direktori dan path yang dimiliki oleh drive aktif.
File List Box Menampilkan daftar file dari direktori aktif.
Shape Menambahkan kontrol gambar berupa lingkaran oval, persegi panjang, bujur sangkar, dan lain-lain.
Line Membuat garis lurus.
Image Box Menampilkan gambar pada form dalam format bitmap, icon, atau metafile.
Data Tool Menghubungkan program dengan database dan menampilkan informasinya pada form.
Object Linking Embedding Membuat link antar program aplikasi.
Pemakai atau programmer bisa menampilkan dan menggunakannya
sesuai dengan kebutuhan. Untuk menambahkan control lainnya ke dalam
toolbox dapat menggunakan menu Project – Components atau dengan menggunakan shortcut Ctrl+T.
Pada menu Project terdapat pilihan Components yang menunjuk
pada daftar control yang dapat dipilih oleh pemakai. Dari menu pilahan
tersebut pemakai dapat memilih lebih dari satu control yang dapat
diletakkan pada jendela toolbox. Caranya adalah dengan klik mouse pada
(48)
(49)
(50)
(51)
39
1) Operator Aritmatika
Operator aritmatika digunakan dengan perhitungan operasi secara
matematik. Berikut adalah beberapa bentuk operator yang termasuk dalam
operator matematika:
Tabel 2.9.4.1 Tabel Operator Aritmatika
Operator
Penggunaan
+ Penjumlahan
_ Pengurangan
* Perkalian
/ Pembagian bilangan real \ Pembagian bilangan bulat Mod Modulus/ sisa hasil bagi
^ Pemangkatan bilangan & Penggabungan
2) Operator Perbandingan
Digunakan untuk membandingkan suatu nilai atau ekspresi dengan nilai
atau ekspresi yang lain dan menghasilkan suatu nilai logika True atau False.
Berikut adalah beberapa operator yang termasuk dalam operator
perbandingan:
Tabel 2.9.4.2 Tabel Operator Perbandingan
Operator
Penggunaan
> Lebih besar dari < Lebih kecil dari
>= Lebih besar sama dengan <= Lebih kecil sama dengan
= Sama dengan
<> Tidak sama dengan Like Memiliki ciri yang sama
(52)
3) Operator Logika
Digunakan untuk mengekspresikan satu atau lebih data (ekspresi) logika
menghasilkan data logika baru. Berikut adalah beberapa operator yang
termasuk dalam operator logika:
Tabel 2.9.4.3 Tabel Operator Logika
Operator
Penggunaan
And Logika dan
Not Logika bukan atau penyangkalan Or Logika atau
2.9.5 Variabel dalam Visual Basic 6.0
Variabel digunakan oleh Visual Basic 6.0 untuk menyimpan informasi yang
dibutuhkan untuk proses dalam aplikasi. Syarat-syarat atau aturan pemberian
nama sebuah variabel dalam Visual Basic 6.0 adalah:
a) Tidak lebih dari 40 karakter.
b) Terdiri atas huruf, angka, dan underscore ( _ ).
c) Karakter pertama harus sebuah huruf.
d) Anda tidak boleh menggunakan kata yang sudah didefinisikan oleh Visual
Basic 6.0 (reserved word).
2.9.6 Konstanta dalam Visual Basic 6.0
Konstanta adalah variabel yang nilai di dalamnya bersifat tetap. Konstanta
(53)
41
bagian dalam program. Sebagai contoh, untuk menetapkan warna latar belakang
(background) pada form yang diberi nama frmContoh dengan warna biru, kita
dapat menuliskannya seperti:
frmContoh.BackColor = 0xF0000
2.9.7 Tipe data yang digunakan di Visual Basic 6.0
Visual Basic 6.0 mempunya beberapa tipe data. Untuk mendefinisikan tipe data
pada sebuah variabel, Visual Basic menggunakan satu karakter tanda yang
diletakkan di akhir nama sebuah variabel. Tipe data dalam Visual Basic yaitu:
Tabel 2.9.7.1 Tabel Tipe Data
Tipe Data
Akhiran
Boolean Tidak Ada
Integer %
Long (Integer) & Single (Floating) ! Double (Floating) #
Currency @
Date Tidak Ada
Object Tidak Ada
String $
Variant Tidak Ada
Data yang digunakan dalam Visual Basic mempunyai batasan-batasan
yang ditentukan oleh besarnya tempat yang disediakan untuk menyimpannya
dalam memori. Adapun batasan-batasan data tersebut dapat dilihat pata tabel
(54)
Tabel 2.9.7.2 Tabel ukuran dan batasan tipe data yang dipakai di Visual Basic
Jenis Data
Ukuran
Range atau Batasan
Byte 1 byte 0 sampai 255
Boolean 2 bytes True and False
Integer 2 bytes -32,768 sampai 32,767
Long (long integer) 4 bytes -2,147,483,648 sampai 2,147,483,647
Single (single-precision floating-point)
4 bytes 3.402823E38 sampai
-1.401298E-45 untuk nilai negatif 1.401298E-45 sampai
3.402823E38 untuk nilai positif
Date 8 bytes 1 Januari 100 sampai 31
Desember 9999
Object 4 bytes Semua referensi object
String (variabel-length) 10 bytes + panjang string
0 sampai kira-kira 2 milyar
String (fixed-length) sepanjang string 1 sampai kira-kira 65,400 Variant (with numbers) 16 bytes Semua numerik sesuai batasan
pada jenis data Double Variant (with
characters)
22 bytes + panjang string
Batasannya sama seperti panjang variable string yaitu 0 sampai kira-kira 2 billion
User-defined
(meggunakan Type)
Sebesar elemen yang dibutuhkan
Setiap elemen sama batasannya dengan jenis datanya.
(55)
BAB 3
PERANCANGAN SISTEM
3.1 Flowchart Aplikasi
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan
hubungan antar proses beserta instruksinya. Gambaran ini dinyatakan dengan
simbol. Dengan demikian setiap simbol menggambarkan proses tertentu.
Sedangkan hubungan antar proses digambarkan dengan garis penghubung.
Flowchart ini merupakan langkah awal pembuatan program. Dengan adanya
flowchart urutan poses kegiatan menjadi lebih jelas. Jika ada penambahan proses
maka dapat dilakukan lebih mudah. Setelah flowchart selesai disusun, selanjutnya
pemrogram (programmer) menerjemahkannya ke bentuk program dengan bahsa
pemrograman.
Dalam pembuatan aplikasi inventori dan penjualan ini juga diperlukan
flowchart yang berguna untuk analisis perancangan sistem aplikasi dan gambaran
umum bagaimana aplikasi inventori dan penjualan ini berjalan dan melakukan
(56)
(57)
(58)
(59)
47
kertas atau di dalam Microsoft Excel. Pekerjaan ini mirip seperti pencatatan
manual yang dilakukan oleh pemilik toko sebelum adanya solusi menggunakan
program aplikasi.
Dari data-data mentah yang didapat tadi, bisa kita lakukan normalisasi
atau pengembangan data. Dari data-data penjualan dan data objek yang ada di
dalam toko, dapat dikembangkan menjadi beberapa data penting, dan data proses
transaksi. Data-data tersebut kemudian kami kelompokkan dalam bentuk
per-ancangan basis data (database) dengan susunan tabel sebagai berikut:
a) Tabel User, untuk menyimpan data pengguna sistem.
b) Tabel Penerbit, untuk menyimpan data penerbit.
c) Tabel Kategori, untuk menyimpan kategori barang.
d) Tabel barang, untuk menyimpan data barang dan stok.
e) Tabel penjualan, untuk menyimpan data transaksi penjualan.
f) Tabel penjualan_item, untuk menyimpen item barang setiap transaksi
penjualan.
g) Tabel pembelian, untuk menyimpan data transaksi pembelian barang kepada
penerbit.
h) Tabel pembelian_item, untuk menyimpan item barang setiap transaksi
(60)
(61)
49
Tabel 3.4.1 Tabel user
Nama Tipe Data Ukuran Keterangan
id_user Char 5 Primary Key
user_login Char 50
pass_login Varchar 50
nama Varchar 100
level ENUM(‘Kasir’,’Admin’) Default: Kasir
Tabel 3.4.2 Tabel penerbit
Nama Tipe Data Ukuran Keterangan
kode_penerbit Char 4 Primary Key
nama_penerbit Varchar 100
alamat Varchar 200
no_telepon Varchar 20
Tabel 3.4.3 Tabel kategori
Nama Tipe Data Ukuran Keterangan
kode_kategori Char 4 Primary Key
nama_kategori Varchar 100
Tabel 3.4.4 Tabel barang
Nama Tipe Data Ukuran Keterangan
kode_buku Char 4 Primary Key
nama_buku Varchar 200
keterangan Varchar 200
kode_kategori Int 4 Default: 0
harga_beli Int 10 Default: 0
harga_jual Int 10 Default: 0
diskon Int 3 Default: 0
stok Char 3
Tabel 3.4.5 Tabel transaksi_beli
Nama Tipe Data Ukuran Keterangan
(62)
ref_nota Char 20 tgl_transaksi Date
keterangan Varchar 100
kode_penerbit Char 4
id_user Char 5
Tabel 3.4.6 Tabel pembelian_item
Nama Tipe Data Ukuran Keterangan
no_pembelian Char 10
kode_buku Varchar 4
harga_beli Int 10
jumlah Int 3
Tabel 3.4.7 Tabel transaksi_jual
Nama Tipe Data Ukuran Keterangan
no_penjualan Char 10 Primary Key
tgl_transaksi Date
pelanggan Varchar 100
uang_bayar Int 12
id_user Char 5
Tabel 3.4.8 Tabel penjualan_item
Nama Tipe Data Ukuran Keterangan
no_penjualan Char 10 Primary Key
kode_buku Varchar 4
harga_jual Int 10
jumlah Int 3
3.5 Perancangan Interface
Perancangan interface menjelaskan tentang mendesain halaman utama program,
(63)
(64)
(65)
(66)
(67)
(68)
(69)
(70)
(71)
(72)
(73)
(74)
(75)
(76)
(77)
BAB 4
IMPLEMENTASI SISTEM
4.1 Pengertian Implementasi Sistem
Implementasi sistem adalah prosedur yang dilakukan untuk menyelesaikan desain
yang ada dalam dokumensistem yang disetujui dan menguji, menginstal, memulai,
serta menggunakan sistem yang baru atausistem yang diperbaiki.Penggunaan
suatu komputer untuk pemecahan masalah membutuhkan suatu sistem yang baik,
sehinggamemungkinkan berhasilnya komputer dalam melaksanakan tugasnya,
yaitu mengolah data menjadi informasi.
4.2 Tujuan Implementasi Sistem
Dalam implementasi sistem tentu ada tujuan-tujuan tertuntu yang harus dicapai.
Adapun tujuan-tujuan tersebut adalah:
1) Menyelesaikan desain sistem yang ada dalam dokumen desain sistem yang
(78)
2) Menulis, menguji, serta mendokumentasikan program dan prosedur yang
diperlukan oleh dokumen desain sistem yang disetujui.
3) Memastikan bahwa user dapat mengoperasikan sistem baru dan melatih
pengguna.
4) Memperhitungkan bahwa sistem memenuhi permintaan user yaitu dengan
menguji sistem secara menyeluruh.
5) Memastikan bahwa konversi ke sistem baru berjalan secara benar dengan
membuat rencana, mengontrol dan melakukan instalasi baru secara benar.
4.3 Proses Implementasi Sistem
Tahap dari proses implementasi system merupakan bagian dari pengembangan
system informasi hanya saja Implementasi sistem (system implementation)
Merupakan kegiatan memperoleh dan mengintegrasikan sumber daya fisik dan
konseptual yang menghasilkan suatu sistem yang bekerja dan perlu dilakukan
beberapa hal yaitu:
1) Pengumpulan data (Data gathering)
Jika sudah ada sistem yang berjalan sebelumnya maka perlu dilakukan
pengumpulan data dan informasi yang dihasilkan dari sistem yang ada.
Pengumpulan laporan (report), cetakan (print-out), dan sebagainya baik
yang sudah ada maupun yang diharapkan untuk ada pada sistem yang baru.
Interview dan questionnaire terhadap orang-orang yang terlibat dalam
(79)
67
dikembangkan benar-benar baru (belum ada sistem informasi sebelumnya)
maka pada tahapan ini pengembang bisa lebih menekankan kepada studi
kelayakan dan definisi sistem.
2) Analisa sistem (System Analisis)
Jika tahapan pengumpulan data dilakukan dengan melibatkan klien atau
pengguna sistem informasi, maka mulai dari tahapan analisa lebih banyak
dilakukan oleh pihak pengembang sendiri.
3) Perancangan Sistem (Design)
Merancang arsitektur aplikasi dan jika diperlukan menentukan juga
kerangka kerja (framework) aplikasi. Pada tahapan ini atau sebelumnya
sudah ditentukan teknologi dan tools yang akan digunakan baik selama
tahap pengembangan (development) maupun pada saat implementasi
(deployment).
4) Penulisan kode program (Coding Programming)
Tahapan ini dilakukan oleh satu atau lebih programmer. Jika tahapan analisa
dan perancangan sistem telah dilakukan dengan baik, maka porsi tahapan
coding tidaklah besar.
5) Testing
Biasanya tahapan ini dilakukan oleh Quality Assurance dari pihak
pengembang untuk memastikan bahwa software yang dibangun telah
berjalan sesuai dengan yang diharapkan.
6) Instalasi
Pada pengembangan aplikasi Client-Server, umumnya terdapat server untuk
(80)
tempat pengembang dan sedang dipergunakan selama pengembangan, biasa
dipergunakan juga setelahnya untuk perbaikan aplikasi secara terus menerus
(continuous improvements). Server testing berada di tempat pengembang
dan bisa juga di tempat pengguna apabila diperlukan beta testing.
7) Pelatihan
Pihak pengembang memberikan training bagi para pengguna program
aplikasi sistem informasi ini untuk mengoperasikan sistem, termasuk
kegiatan mempersiapkan input, memproses data, mengoperasikan sistem,
merawat dan menjaga sistem.
8) Pemeliharaan (Maintenance)
Bertujuan untuk memastikan bahwa sistem yang digunakan oleh pihak
pengguna benar-benar telah stabil dan terbebas dari error dan bug.
4.4 Penerapan Implementasi Sistem
Untuk menjalankan sistem, perlu diperhatikan kebutuhan apa saja yang akan
mendukung dalam proses program dan data. Perangkat komputer yang dibutuhkan
yaitu:
1) Kebutuhan Perangkat Keras (Hardware)
- Personal Computer (PC)
- Printer
(81)
69
2) Kebutuhan Perangkat Lunak (Software)
- System Operasi Windows
- Microsoft Visual Basic 6.0 sebagai software pembuatan perangkat lunak
- MySQL sebagai pengolah database
- MySQL Connector ODBC sebagai penghubung antara Microsoft Visual
Basic 6.0 dan MySQL.
4.5 Pemeliharaan Sistem
Pemeliharaan sistem adalah suatu kombinasi dari berbagai tindakan yang
dilakukan untuk menjaga suatu sistem, atau memperbaikinya sampai suatu kondisi
yang lebih baik dan bisa diterima.
4.6 Tujuan Pemeliharaan Sistem
Tujuan pemeliharaan sistem adalah untuk memelihara kemampuan sistem dan
mengendalikan biaya sehingga sistem harus dirancang dan dipelihara untuk
mencapai standar mutu kinerja yang diharapkan. Pemeliharaan meliputi segala
(82)
PENUTUP
5.1 Kesimpulan
Berdasarkan pembahasan yang telah diuraikan pada bab-bab sebelumnya, maka
dapat diambil kesimpulan sebagai berikut:
1) Sistem pengolahan data memegang peranan yang sangat penting dalam
melaksanakan kegiatan pada suatu perusahaan.
2) Untuk mengatasi masalah-masalah pada sistem yang telah berjalan
diperlukan suatu sistem komputer yang dapat memberikan informasi secara
tepat, cepat dan akurat.
3) Penginputan data, penyimpanan data, pemrosesan data dapat dilakukan
dengan lebih efektif dan efisien.
4) Dengan menggunakan komputer sebagai alat bantu (informasi) dapat
meminimalkan jumlah waktu dan biaya yang diperlukan.
5) Penulis menyadari kekurangan program ini, maka untuk melanjutkan agar
mendapat hasil yang paling maksimal sebaiknya program dikembangkan
(83)
71
5.2 Saran
Saran-saran yang dapat penulis sampaikan adalah:
1) Untuk memudahkan, baik bagi pengusaha maupun pegawai sebaiknya
menggunakan sistem pengolahan data yang berbasis komputer.
2) Optimalkan penggunaan software dan hardware agar meningkatkan keahlian
atau keterampilan para pegawai dalam menggunakan komputer sehingga
berpengaruh pada produktivitas kerja para pegawai.
3) Diharapkan dimasa yang akan datang perusahaan perorangan mempunyai
sistem pengolahan data yang lebih baik, diutamakan sistem pengolahan data
berbasis komputer karena pengolahan data secara manual sangat tidak
(84)
Miftakhul, Huda. 2010. Membuat Aplikasi Database dengan Java, MySQL, dan
NetBeans. Penerbit PT Elex Media Komputindo. Jakarta.
Nugroho, Bunafit. 2013. Panduan Membuat Program Toko dengan Visual Basic
dan MySQL. Penerbit Gava Media. Yogyakarta.
Wahana Komputer, 2004. Tutorial Membuat Program dengan Visual Basic.
Salemba Infotek. Jakarta.
http://ttlz.wordpress.com/materi-tik/pengenalan-komputer/ (diakses tanggal 6
April 2014)
http://fadhlanaccounting.wordpress.com/akuntansi-persediaan/ (diakses tanggal 6 April 2014)
http://www.axopos.com/article/point-of-sale-71.html#.U0Fa43b06AU(diakses tanggal 6 April 2014)
http://wawanlaksito.wordpress.com/2011/02/27/22/ (diakses tanggal 13 april
2014)
http://www.termasmedia.com/65-pengertian/69-pengertian-database.html (diakses
(85)
No Tanggal Asistensi Bimbingan
Pembahasan Pada Asistensi Mengenai, Pada Bab:
Paraf Dosen Pembimbing
Keterangan
1 Pengajuan Proposal
2 Bab 1
3 Bab 2
4 Bab 3
5 Bab 4
(86)
Yang bertanda tangan dibawah ini, menerangkan bahwa Mahasiswa Tugas Akhir Program Diploma 3 Teknik Informatika:
Nama : SITI KHOLILAH PULUNGAN
NIM : 112406085
Program Studi : DIPLOMA 3 TEKNIK INFORMATIKA
Judul Tugas Akhir : PERANCANGAN SISTEM APLIKASI INVENTORI TOKO DAN POS (POINT OF SALE) DENGAN VISUAL BASIC 6.0 DAN MYSQL
Telah melaksanakan test program Tugas Akhir Mahasiswa tersebut diatas pada tanggal ...
Dengan Hasil: Sukses / Gagal
Demikian diterangkan untuk digunakan melengkapi syarat pendaftaran Ujian Meja Hijau Tugas Akhir Mahasiswa bersangkutan di Departemen Matematika FMIPA USU Medan.
Medan, ... Dosen Pembimbing
Program Studi D3 Teknik Informatika,
Dr. Pasukat Sembiring, M.Si. NIP. 195311131985031002
(87)
BAHASA PEMROGRAMAN (LISTING PROGRAM)
1. Listing Program untuk Form Login Private Sub cmdLogin_Click()
If txtUser.Text = "" Then
MsgBox "User ID masih kosong !", vbInformation + vbOKOnly, "Information"
txtUser.SetFocus
ElseIf txtPwd.Text = "" Then
MsgBox "Password masih kosong !", vbInformation + vbOKOnly, "Information"
txtPwd.SetFocus Else
SQL = ""
SQL = "SELECT * FROM user WHERE user_login ='" & txtUser.Text & "' " _
& " AND pass_login ='" & txtPwd.Text & "'" Set Rs_user = Koneksi.Execute(SQL)
If Not Rs_user.BOF Then 'TUTUP FORM LOGIN
Unload Me frmutama.Show
If Rs_user!Level = "Admin" Then
' PENGATURAN MENU JIKA YANG LOGIN ADMIN ' ENABLED= TRUE (Menu Aktif)
' ENABLED= False (Menu Mati)
frmutama.menuLogout.Enabled = True frmutama.muMaster.Enabled = True frmutama.muTransaksi.Enabled = True frmutama.muLaporan.Enabled = True frmutama.menuBuku.Enabled = True frmutama.menuKategori.Enabled = True frmutama.menuUser.Enabled = True frmutama.menuTransJual.Enabled = True frmutama.menuTransBeli.Enabled = True frmutama.menuPenerbit.Enabled = True
frmutama.menuLapPenjualanPTransaksi.Enabled = True frmutama.menuLapPenjualanPPeriode.Enabled = True frmutama.menuLapPenjualan.Enabled = True
frmutama.menuLapPembelian.Enabled = True
frmutama.menuLapPembelianPPeriode.Enabled = True frmutama.menuLapPembelianPTransaksi.Enabled = True frmutama.menuLapPenerbit.Enabled = True
frmutama.Enabled = True frmutama.Show
Else
'PENGATURAN MENU JIKA YANG LOGIN KASIR frmutama.muMaster.Enabled = True
frmutama.muTransaksi.Enabled = True frmutama.muLaporan.Enabled = True
(88)
frmutama.menuLapPenjualanPPeriode.Enabled = False frmutama.menuBuku.Enabled = False
frmutama.menuKategori.Enabled = False frmutama.menuLapPembelian.Enabled = True
frmutama.menuLapPembelianPPeriode.Enabled = True frmutama.menuLapPembelianPTransaksi.Enabled = True frmutama.menuLapPenerbit.Enabled = False
frmutama.menuUser.Enabled = False frmutama.menuTransBeli.Enabled = False frmutama.menuTransJual.Enabled = True frmutama.menuPenerbit.Enabled = False frmutama.Enabled = True
frmutama.Show End If
'SIMPAN DATA LOGIN KE userID dan userNm
'DATA DIATAS AKAN DIBACA DI FORM UTAMA, DAN FORM TRANSAKSI userID = Rs_user!id_user
userNm = Rs_user!nama
frmutama.StatusBar1.Panels(1).Text = Rs_user!nama
frmutama.StatusBar1.Panels(2).Text = "[" & Rs_user!Level & "]" frmutama.menuLogin.Enabled = False
Unload Me Else
MsgBox "ANDA BUKAN USER YANG BERHAK!", vbCritical + vbOKOnly, "Error"
End If
txtUser.Text = "" txtPwd.Text = "" End If
End Sub
Private Sub Form_Load() Call BukaDatabase
Skin1.ApplySkin Me.hWnd End Sub
Private Sub txtPwd_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then
SendKeys "{tab}" KeyAscii = 0 End If
End Sub
Private Sub txtUser_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then
SendKeys "{tab}" KeyAscii = 0 End If
End Sub
Private Sub cmdKeluar_Click() Unload Me
(89)
2. Listing Program untuk Form Utama Private Sub Form_Load()
StatusBar1.Panels.Item(3).Text = Format(Now, " dd mm yyyy ") frmLogin.Show 1
frmutama.Enabled = True
Me.Picture = LoadPicture("")
Skin1.ApplySkin Me.hWnd End Sub
Private Sub Form_Unload(Cancel As Integer)
If MsgBox("Yakin Akan Menutup Aplikasi Ini?", vbYesNo + vbQuestion, "Konfirmasi") = vbNo Then
Cancel = 1 Else
End End If End Sub
Private Sub menuBuku_Click() frmBarang.Show 1
End Sub
Private Sub menuBukuKategori_Click() frmLapBarangKategori.Show 1
End Sub
Private Sub menuDataUser_Click() rptUser.Show 1
End Sub
Private Sub menuKategori_Click() frmKategori.Show 1
End Sub
Private Sub menuLapBuku_Click() rptBarang.Show 1
End Sub
Private Sub menuLapKategori_Click() rptKategori.Show 1
End Sub
Private Sub menuLapPembelian_Click() rptLapPembelian.Show 1
End Sub
Private Sub menuLapPembelianPPeriode_Click() frmLaporanPembelianPeriode.Show 1
End Sub
Private Sub menuLapPembelianPTransaksi_Click() frmLaporanPembelianTransaksi.Show 1
End Sub
(90)
rptLapPenjualan.Sections("Section4").Controls("labelTanggal").Capt ion = Format(Date, "dd MMMM yyyy")
rptLapPenjualan.Show 1 End Sub
Private Sub menuLapPenjualanBkTerlaris_Click()
rptLapPenjualanTerlaris.Sections("Section4").Controls("labelTangga l").Caption = Format(Date, "dd MMMM yyyy")
rptLapPenjualanTerlaris.Show 1 End Sub
Private Sub menuLapPenjualanPPeriode_Click() frmLaporanPenjualanPeriode.Show 1
End Sub
Private Sub menuLapPenjualanPTransaksi_Click() frmLaporanPenjualanTransaksi.Show
End Sub
Private Sub menuLogin_Click() frmLogin.Show 1
End Sub
Private Sub menuLogout_Click() muMaster.Enabled = False
muTransaksi.Enabled = False muLaporan.Enabled = False menuLogin.Enabled = True menuLogout.Enabled = False End Sub
Private Sub menuExit_Click() Unload Me
End Sub
Private Sub menuPenerbit_Click() frmPenerbit.Show 1
End Sub
Private Sub menuTransBeli_Click() frmPembelian.Show
End Sub
Private Sub menuTransJual_Click() frmPenjualan.Show
End Sub
Private Sub menuUser_Click() frmUser.Show 1
(91)
3. Listing Program untuk Form User Option Explicit
Dim GridObjIndex As Byte
Private Sub cmbLevel_KeyPress(KeyAscii As MSForms.ReturnInteger) If KeyAscii = vbKeyReturn Then
SendKeys "{tab}" KeyAscii = 0 End If
End Sub
Private Sub cmdHapus_Click()
Konfirmasi = MsgBox("Anda yakin akan menghapus pesan ini?", vbYesNo + vbQuestion, "informasi")
If Konfirmasi = vbYes Then
strSQL = "DELETE FROM user WHERE id_user='" & txtKode.Text & "'" Koneksi.Execute strSQL, , adCmdText
Rs_user.Requery Call FormNormal Call Form_Load Else Call FormNormal End If End Sub
Private Sub cmdKeluar_Click()
If cmdKeluar.Caption = "&Keluar" Then Unload Me
Else
Call FormNormal End If
End Sub
Private Sub cmdSimpan_Click() If txtNama.Text = "" Then
MsgBox "Nama user tidak boleh kosong!", vbCritical, "Error" txtPassword.SetFocus
ElseIf txtPassword.Text = "" Then
MsgBox "pass_login tidak boleh kosong!", vbCritical, "Error" Else
'SAAT TOMBOL SIMPAN DIKLIK, BUAT KODE TERBARU Rs_user.Requery
Call KodeOtomatis
strSQL = "INSERT INTO user " _
& " (id_user,nama,user_login,pass_login,level)" _
& " VALUES('" & KodeBaru & "','" & txtNama.Text & "','" _
& txtUsername.Text & "','" & txtPassword.Text & "','" & cmbLevel.Text & "')"
Koneksi.Execute strSQL, , adCmdText Rs_user.Requery
Call FormNormal Call Form_Load
MsgBox "Data telah tersimpan dalam database!", vbOKOnly + vbInformation, "Konfirmasi"
End If End Sub
(92)
txtKode.Text = KodeBaru txtKode.Enabled = False txtNama.SetFocus
'PENGATURAN KEADAAN TOMBOL cmdTambah.Enabled = False cmdSimpan.Enabled = True cmdHapus.Enabled = False cmdUbah.Enabled = False cmdKeluar.Caption = "&Batal" End Sub
Private Sub cmdUbah_Click() If txtNama.Text = "" Then
MsgBox "Nama user tidak boleh kosong!", vbCritical, "Error" txtNama.SetFocus
ElseIf txtPassword.Text = "" Then
MsgBox "pass_login user tidak boleh kosong!", vbCritical, "Error" txtPassword.SetFocus
Else
strSQL = "UPDATE user" _
& " SET nama='" & txtNama.Text & "', " _
& " user_login='" & txtUsername.Text & "', " _ & " pass_login='" & txtPassword.Text & "', " _ & " level='" & cmbLevel.Text & "'" _
& " WHERE id_user='" & txtKode.Text & "'" Koneksi.Execute strSQL, , adCmdText
Rs_user.Requery Call FormNormal Call Form_Load
MsgBox "Data telah ter_update dalam database!", vbOKOnly + vbInformation, "Konfirmasi"
End If End Sub
Private Sub Form_Load()
'MEMBUKA KONEKSI DATABASE MYSQL Call BukaDatabase
'MEMATIKAN FORM MASUKAN Call FormMati
'MENAMPILKAN DATA USER KE GRID Call TampilGridUser
cmdUbah.Enabled = False cmdSimpan.Enabled = False cmdHapus.Enabled = False 'MENGISI DATA DI COMBOBOX cmbLevel.AddItem ("Kasir") cmbLevel.AddItem ("Admin") End Sub
Sub FormKosong() txtKode.Text = "" txtNama.Text = "" txtUsername.Text = "" txtPassword.Text = ""
(93)
End Sub
Sub FormMati()
txtKode.Enabled = False txtNama.Enabled = False txtUsername.Enabled = False txtPassword.Enabled = False cmbLevel.Enabled = False End Sub
Sub FormHidup()
txtKode.Enabled = True txtNama.Enabled = True txtUsername.Enabled = True txtPassword.Enabled = True cmbLevel.Enabled = True End Sub
Sub FormNormal() Call FormKosong Call FormMati
cmdTambah.Enabled = True cmdHapus.Enabled = False cmdUbah.Enabled = False cmdSimpan.Enabled = False cmdKeluar.Caption = "&Keluar" End Sub
Sub KodeOtomatis() Rs_user.Requery
Set Rs_user = New ADODB.Recordset
strSQL = "SELECT id_user FROM user ORDER BY id_user"
Rs_user.Open strSQL, Koneksi, adOpenDynamic, adLockBatchOptimistic If Rs_user.BOF Then
KodeBaru = "A001" Exit Sub
Else
Rs_user.MoveLast
KodeBaru = Rs_user!id_user KodeBaru = Right(KodeBaru, 3) KodeBaru = Val(KodeBaru) + 1 If Len(KodeBaru) > 5 Then
MsgBox "Kode baru melewati batas, belum bisa lebih dari 999", vbCritical, "Error"
Exit Sub End If End If
KodeBaru = "A" & Format(KodeBaru, "000") End Sub
Sub AktifGridUser() With gridUser
.Cols = 5 'JUMLAH 5 KOLOM 'PENGATURAN KOLOM KE-1 .RowHeightMin = 300 .Col = 0
.Row = 0 .Text = "NO"
(94)
.RowHeightMin = 300 .Col = 1
.Row = 0
.Text = "KODE"
.CellFontBold = True .ColWidth(1) = 750
.AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter 'PENGATURAN KOLOM KE-3
.Col = 2 .Row = 0
.Text = "NAMA USER" .CellFontBold = True .ColWidth(2) = 2000
.AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter 'PENGATURAN KOLOM KE-4
.Col = 3 .Row = 0
.Text = "USERNAME" .CellFontBold = True .ColWidth(3) = 1600
.AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter 'PENGATURAN KOLOM KE-5
.Col = 4 .Row = 0
.Text = "LEVEL" .CellFontBold = True .ColWidth(4) = 3000
.AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter End With
End Sub
Sub TampilGridUser() Dim Baris As Integer gridUser.Clear
Call AktifGridUser gridUser.Rows = 2 Baris = 0
'BUKA KONEKSI MYSQL Call BukaDatabase
'BUAT RECORDSET BARU, MASUKKAN DATA USER KE RECORDSET Set Rs_user = New ADODB.Recordset
Rs_user.Open "SELECT * FROM user", Koneksi, adOpenDynamic, adLockBatchOptimistic
If Rs_user.BOF Then
MsgBox "Tabel user masih kosong!", vbOKOnly + vbInformation, "Perhatian"
Exit Sub Else
'JIKA RECORDSET ADA DATA, TAMPILKAN KE GRID With Rs_user
(1)
Public namaForm As String
Public Status, KodeBaru As String 'PROSEDUR KONEK KE MY SQL
Public Sub BukaDatabase()
Dim strSS, strPort, strDB As String Dim strUID, strPWD As String
'PENGATURAN KONEK KE MYSQL strSS = "localhost"
strPort = "3306" strDB = "tokobukudb" strUID = "root" strPWD = ""
Set Koneksi = New ADODB.Connection Koneksi.CursorLocation = adUseClient 'KONEK KE MYSQL MENGGUNAKAN MYODBC 5.1 Koneksi.ConnectionString = "" _
& "DRIVER={MYSQL ODBC 5.1 Driver};" _ & "SERVER=" & strSS & ";" _
& "DATABASE=" & strDB & ";" _ & "UID=" & strUID & ";" _ & "PWD=" & strPWD & ";" _ & "OPTION="
'BUKA TUTUP KONEKSI On Error Resume Next
If Koneksi.State = adStateOpen Then Koneksi.Close
Set Koneksi = New ADODB.Connection Koneksi.Open
Else
Koneksi.Open End If
'PERIKSA, JIKA KONEKSI GAGAL (0) If Err.Number <> 0 Then
MsgBox "GAGAL KONEKSI SERVER, SILAHKAN PERBAIKI DATA SETTING ANDA", vbOKOnly, "Kesalahan"
Else
'JIKA KONEKSI BERHASIL
'MsgBox "Koneksi MySQL Server Sukses", vbInformation, "Pesan" End If
End Sub
17.
Listing Program untuk Modul Struk Penjualan
Option Explicit
Public noNota As String
Public tglTransaksi As String
Dim TotalBelanja, UangKembali As Currency Dim Garis2, Garis1 As String
Sub StrukJualPreview()
Dim Rs_Tampil As New ADODB.Recordset
Dim Rs_transaksi_jual As New ADODB.Recordset 'SET NILAI 0
TotalBelanja = 0 UangKembali = 0
'BACA INFORMASI TRANSAKSI PENJUALAN strSQL = ""
(2)
strSQL = "SELECT * FROM transaksi_jual WHERE no_penjualan='" & noNota & "'"
Set Rs_transaksi_jual = New ADODB.Recordset Set Rs_transaksi_jual = Koneksi.Execute(strSQL) 'CETAK HEADER
Garis1 = String$(49, "-") 'MEMBUAT GARIS STRIP Garis2 = String$(49, "=") 'MEMBUAT GARIS STRIP 2 frmStrukJual.Font = "courier new"
frmStrukJual.Show
frmStrukJual.CurrentX = 0 frmStrukJual.CurrentY = 0 frmStrukJual.FontSize = 9.5 frmStrukJual.Print Tab(2); ""
frmStrukJual.Print Tab(2); "TOKO BUKU";
frmStrukJual.Print Tab(2); "Penjualan Buku-Buku dari berbagai Penerbit";
frmStrukJual.Print Tab(2); "Alamat Toko"; frmStrukJual.Print Tab(2); "";
frmStrukJual.Print Tab(2); "No Telp. Toko"; frmStrukJual.Print Tab(2); "NPWP Toko"; frmStrukJual.Print Tab(2); ""
frmStrukJual.Print Tab(2); "No.Nota: "; noNota;
frmStrukJual.Print Tab(28);
Format(Rs_transaksi_jual!tgl_transaksi, "dd-MM-yyyy");
frmStrukJual.Print Tab(38); "(" & Format(Time, "hh:mm:ss AM/PM") & ")";
frmStrukJual.Print Tab(2); Garis2 'BUAT GARIS STRIP 2 frmStrukJual.Print Tab(2); "KODE";
frmStrukJual.Print Tab(9); "NAMA BUKU"; frmStrukJual.Print Tab(30); "QTY";
frmStrukJual.Print Tab(33); RKanan("HARGA", "########"); frmStrukJual.Print Tab(41); RKanan("TOTAL", "##,###,###"); frmStrukJual.Print Tab(2); Garis1, 'BUAT GARIS STRIP 1 frmStrukJual.FontSize = 9.5
'CETAK ISI (DAFTAR BARANG YANG DIJUAL) strSQL = ""
strSQL = " SELECT * FROM view_penjualan_transaksi WHERE no_penjualan='" & noNota & "'"
Set Rs_Tampil = New ADODB.Recordset Set Rs_Tampil = Koneksi.Execute(strSQL) If Rs_Tampil.BOF Then
MsgBox "Daftar nota masih kosong!", vbOKOnly + vbInformation, "Perhatian"
Exit Sub Else
With Rs_Tampil .MoveFirst
Do While Not .EOF
frmStrukJual.Print Tab(2); !kode_buku;
frmStrukJual.Print Tab(9); Left$(!nama_buku, 20); frmStrukJual.Print Tab(30); !jumlah;
frmStrukJual.Print Tab(33); RKanan(!harga_jual, "##,###,#"); frmStrukJual.Print Tab(41); RKanan(!subTotal, "##,###,###"); TotalBelanja = TotalBelanja + !subTotal
.MoveNext Loop End With End If
(3)
frmStrukJual.FontSize = 9.5
frmStrukJual.Print Tab(2); Garis2 'BUAT GARIS STRIP 2 frmStrukJual.Font = "Courier New"
frmStrukJual.Print Tab(25); "Total Belanja :";
frmStrukJual.Print Tab(41); RKanan(TotalBelanja, "##,###,###") frmStrukJual.Print Tab(25); "Uang Bayar :";
frmStrukJual.Print Tab(41); RKanan(Rs_transaksi_jual!uang_bayar, "##,###,###")
UangKembali = Rs_transaksi_jual!uang_bayar - TotalBelanja frmStrukJual.Print Tab(25); "Uang Kembali :";
frmStrukJual.Print Tab(41); RKanan(UangKembali, "##,###,###") frmStrukJual.Print Tab(2); Garis1, 'BUAT GARIS STRIP 1
frmStrukJual.Print Tab(2); "Pelanggan : "; Rs_transaksi_jual!pelanggan
frmStrukJual.Print Tab(15); ""
frmStrukJual.Print Tab(18); "TERIMA KASIH ATAS KUNJUNGAN ANDA" frmStrukJual.Print Tab(15); ""
End Sub
Sub StrukJualPrint() On Error Resume Next
Dim Rs_Tampil As New ADODB.Recordset
Dim Rs_transaksi_jual As New ADODB.Recordset 'SET NILAI 0
TotalBelanja = 0 UangKembali = 0
'BACA INFORMASI TRANSAKSI PENJUALAN strSQL = ""
strSQL = " SELECT * FROM transaksi_jual WHERE no_penjualan='" & noNota & "'"
Set Rs_transaksi_jual = New ADODB.Recordset Set Rs_transaksi_jual = Koneksi.Execute(strSQL) 'CETAK HEADER
Garis1 = String$(49, "-") 'MEMBUAT GARIS STRIP Garis2 = String$(49, "=") 'MEMBUAT GARIS STRIP 2 Printer.Font = "courier new"
Printer.CurrentX = 0 Printer.CurrentY = 0 Printer.FontSize = 9.5 Printer.Print Tab(2); ""
Printer.Print Tab(2); "TOKO BUKU";
Printer.Print Tab(2); "Penjualan Buku-Buku dari berbagai Penerbit";
Printer.Print Tab(2); "Alamat Toko"; Printer.Print Tab(2); "";
Printer.Print Tab(2); "No Telp. Toko"; Printer.Print Tab(2); "NPWP Toko"; Printer.Print Tab(2); ""
Printer.Print Tab(2); "No.Nota: "; noNota;
Printer.Print Tab(28); Format(Rs_transaksi_jual!tgl_transaksi, "dd-MM-yyyy");
Printer.Print Tab(38); "(" & Format(Time, "hh:mm:ss AM/PM") & ")"; Printer.Print Tab(2); Garis2 'BUAT GARIS STRIP 2
Printer.Print Tab(2); "KODE"; Printer.Print Tab(9); "NAMA BUKU"; Printer.Print Tab(30); "QTY";
Printer.Print Tab(33); RKanan("HARGA", "########"); Printer.Print Tab(41); RKanan("TOTAL", "##,###,###"); Printer.Print Tab(2); Garis1, 'BUAT GARIS STRIP 1
(4)
Printer.FontSize = 9.5
'CETAK ISI (DAFTAR BARANG YANG DIJUAL) strSQL = ""
strSQL = " SELECT * FROM view_penjualan _ptransaksi WHERE no_penjualan='" & noNota & "'"
Set Rs_Tampil = New ADODB.Recordset Set Rs_Tampil = Koneksi.Execute(strSQL) If Rs_Tampil.BOF Then
MsgBox "Daftar nota masih kosong!", vbOKOnly + vbInformation, "Perhatian"
Exit Sub Else
With Rs_Tampil .MoveFirst
Do While Not .EOF
Printer.Print Tab(2); !kode_buku;
Printer.Print Tab(9); Left$(!nama_buku, 20); Printer.Print Tab(30); !jumlah;
Printer.Print Tab(33); RKanan(!harga_jual, "##,###,#"); Printer.Print Tab(41); RKanan(!subTotal, "##,###,###"); TotalBelanja = TotalBelanja + !subTotal
.MoveNext Loop End With End If
'CETAK FOOTER
Printer.FontSize = 9.5
Printer.Print Tab(2); Garis2 'BUAT GARIS STRIP 2 Printer.Font = "Courier New"
Printer.Print Tab(25); "Total Belanja :";
Printer.Print Tab(41); RKanan(TotalBelanja, "##,###,###") Printer.Print Tab(25); "Uang Bayar :";
Printer.Print Tab(41); RKanan(Rs_transaksi_jual!uang_bayar, "##,###,###")
UangKembali = Rs_transaksi_jual!uang_bayar - TotalBelanja Printer.Print Tab(25); "Uang Kembali :";
Printer.Print Tab(41); RKanan(UangKembali, "##,###,###") Printer.Print Tab(2); Garis1, 'BUAT GARIS STRIP 1
Printer.Print Tab(2); "Pelanggan : "; Rs_transaksi_jual!pelanggan Printer.Print Tab(15); ""
Printer.Print Tab(18); "*** TERIMA KASIH ***" Printer.Print Tab(15); ""
End Sub
Private Function RKanan(NData, CFormat) As String On Error Resume Next
RKanan = Format(NData, CFormat)
RKanan = Space(Len(CFormat) - Len(RKanan)) + RKanan End Function
18.
Listing Program untuk Data Report Laporan User
Private Sub DataReport_Terminate() rptUser.Refresh
DELaporan.rsrsUser.Close End Sub
(5)
19.
Listing Program untuk Data Report Laporan Barang
Private Sub DataReport_Terminate() rptBarang.Refresh
DELaporan.rsrsBarang.Close End Sub
20.
Listing Program untuk Data Report Laporan Kategori
Private Sub DataReport_Terminate() rptKategori.Refresh
DELaporan.rsrsKategori.Close End Sub
21.
Listing Program untuk Data Report Laporan Penerbit
Private Sub DataReport_Terminate() rptPenerbit.Refresh
DELaporan.rsrsPenerbit.Close End Sub
22.
Listing Program untuk Data Report Laporan Pembelian
Private Sub DataReport_Terminate() rptLapPembelian.Refresh
DELaporan.rsrsPembelian.Close End Sub
23.
Listing Program untuk Data Report Laporan Penjualan
Private Sub DataReport_Terminate() rptLapPenjualan.Refresh
DELaporan.rsrsPenjualan.Close End Sub
24.
Listing Program untuk Data Report Laporan Barang per Kategori
Private Sub DataReport_Terminate() rptLapBarangKategori.Refresh
DELaporan.rsrsBarangKategori.Close End Sub
25.
Listing Program untuk Data Report Laporan Pembelian per Periode
Private Sub DataReport_Terminate() rptLapPembelianPeriode.Refresh DELaporan.rsrsPembelian.Close
(6)
End Sub
26.
Listing Program untuk Data Report Laporan Pembelian per Transaksi
Private Sub DataReport_Terminat() rptLapPembelianTransaksi.Refresh
DELaporan.rsrsPembelianTransaksi.Close End Sub
27.
Listing Program untuk Data Report Laporan Penjualan per Periode
Private Sub DataReport_Terminate() rptLapPenjualanPeriode.Refresh
DELaporan.rsrsPenjualanPeriode.Close End Sub
28.
Listing Program untuk Data Report Laporan Penjualan per Transaksi
Private Sub DataReport_Terminate() rptLapPenjualanTransaksi.Refresh
DELaporan.rsrsPenjualanTransaksi.Close End Sub
29.
Listing Program untuk Data Report Laporan Penjualan Terlaris
Private Sub DataReport_Terminate() rptLapPenjualanTerlaris.Refresh
DELaporan.rsrsPenjualanTerlaris.Close End Sub