Perancangan Aplikasi Sistem Inventori Toko dan POS (Point Of Sale) dengan Visual Basic 6.0 danMySQL

(1)

(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 iv

Daftar 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