TUGAS AKHIR
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Ahli Madya
Diluluskan di
Medan, Juni 2012
Diketahui
Departemen Matematika FMIPA USU
Ketua, Dosen Pembimbing
TUGAS AKHIR
Saya mengakui bahwa Tugas Akhir ini adalah hasil kerja saya sendiri, kecuali
beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Puji syukur Alhamdulillah penulis ucapkan serta panjatkan kehadirat Allah SWT
yang telah memberikan rahmat, berkah serta hidayah Nya kepada penulis sehingga
penulis dapat menyelesaikan tugas akhir ini sebagai salah satu syarat untuk
menyelesaikan perkuliahan pada Program Studi Diploma-3 Teknik Informatika Fakultas
Matematika Dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
Tugas akhir ini bertujuan untuk membangun suatu sistem informasi penjualan barang
yang dapat digunakan sebagai dasar dalam Sistem Pengambilan Keputusan. Sistem ini
dibuat dengan menggunakan Visual Basic 6.0 dan Microsoft Access 2003. Metodologi
penelitian yang digunakan adalah berdasarkan wawancara dan observasi penelitian
kepustakaan untuk memperoleh data dan informasi yang berhubungan dengan
masalah yang diteliti. Objek utama dari sistem ini adalah untuk memberikan
kemudahan dan melihat arsitektur sistem informasi penjualan barang agar kinerja
pengolahan data dapat ditingkatkan serta rancangan antarmuka dapat diperoleh lebih
mudah.
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
Daftar Isi vi
Daftar Gambar viii
Daftar Tabel ix
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 3
1.5 Metodologi Penelitian 3
1.6 Sistematika Penulisan 3
DAFTAR PUSTAKA 61
LAMPIRAN
Halaman
Gambar 2.1 Form Utama Microsoft Visual Basic 6.0 16
Gambar 2.2 Toolbar 16
Gambar 2.3 Form 17
Gambar 2.4 Windows Properties 17
Gambar 2.5 Windows Form Layout 18
Gambar 2.6 Toolbox 18
Gambar 2.7 Project Windows 19
Gambar 2.8 Code Windows 20
Gambar 3.1 Struktur Organisasi Apotek K-24 26
Gambar 4.1 Relasi Antar Tabel 30
Gambar 4.2 Diagram Konteks 31
Gambar 4.3 DFD Level 0 32
Gambar 4.4 DFD Level 1 Proses 1 33
Gambar 4.5 DFD Level 1 Proses 2 34
Gambar 4.6 DFD Level 1 Proses 3 34
Gambar 4.7 DFD Level 1 Proses 4 35
Gambar 4.8 DFD Level 1 Proses 5 36
Gambar 4.9 Flowchart 37
Gambar 5.1 Menu Login 41
Gambar 5.2 Menu Utama 43
Gambar 5.3 Menu Data Jenis 43
Gambar 5.4 Menu Data Barang 44
Gambar 5.5 Menu Data Pengguna 45
Gambar 5.6 Menu Tambah Stok Barang 46
Gambar 5.7 Menu Cari Daftar Barang 47
Gambar 5.8 Menu Transaksi Penjualan 48
Gambar 5.9 Menu Cari Persediaan Barang 49
Gambar 5.10 Menu Laporan Hasil Penjualan 50
Gambar 5.11 Laporan Seluruh Barang 51
Gambar 5.12 Menu Laporan Barang Per- Jenis 52
Gambar 5.13 Laporan Barang Per- Jenis 52
Gambar 5.14 Laporan Seluruh Penjualan 53
Gambar 5.15 Menu Laporan Penjualan Per- Tanggal Transaksi 53
Gambar 5.16 Laporan Penjualan Per- Tanggal Transaksi 54
Gambar 5.17 Menu Laporan Penjualan Per- Bulan 55
Gambar 5.18 Laporan Penjualan Per- Bulan 55
Gambar 5.19 Laporan Seluruh Jumlah Barang yang Terjual 56
Gambar 5.20 Menu Laporan Jumlah Barang yang Terjual Per- Bulan 56
Gambar 5.21 Laporan Jumlah Barang yang Terjual Per- Bulan 57
Gambar 5.22 Grafik Pendapatan Per- Bulan 58
Halaman
Tabel 4.1 Tabel Barang 28
Tabel 4.2 Tabe Detail Penjualan 28
Tabel 4.3 Tabel Jenis Barang 28
Tabel 4.4 Tabel Pengguna 29
Tabel 4.5 Tabel Penjualan 29
Tugas akhir ini bertujuan untuk membangun suatu sistem informasi penjualan barang
yang dapat digunakan sebagai dasar dalam Sistem Pengambilan Keputusan. Sistem ini
dibuat dengan menggunakan Visual Basic 6.0 dan Microsoft Access 2003. Metodologi
penelitian yang digunakan adalah berdasarkan wawancara dan observasi penelitian
kepustakaan untuk memperoleh data dan informasi yang berhubungan dengan
masalah yang diteliti. Objek utama dari sistem ini adalah untuk memberikan
kemudahan dan melihat arsitektur sistem informasi penjualan barang agar kinerja
pengolahan data dapat ditingkatkan serta rancangan antarmuka dapat diperoleh lebih
mudah.
PENDAHULUAN
Saat ini perkembangan tekhnologi dan informasi sangat pesat sekali seiring dengan
kemajuan zaman dan perkembangan ilmu pengetahuan. Setiap individu pun dipacu
untuk senantiasa menemukan hal baru dan semaksimal mungkin dengan tekhnologi
yang dimiliki nya untuk menemukan solusi atas masalah – masalah yang dihadapi,
terutama masalah informasi yang biasanya dilakukan secara manual dan tradisional
akan semakin lebih cepat dan tepat jika dilakukan dengan bantuan mesin yaitu
instansi. Seperti apotek yang merupakan sebuah instansi yang bergerak dalam
pelayanan jasa membantu dan mengatasi masalah penyakit. Pengolahan data pada
apotek yang dilakukan secara manual, seperti transaksi penjualan obat, laporan
penjualan obat, laporan stok obat, dan seluruh laporan kegiatan sistem pembukuan
yang masih kurang terstruktur dapat menimbulkan berbagai kendala. Kendala yang
muncul adalah masalah waktu dimana dalam melakukan pembukuan atau pengecekan
data obat terlalu lama dan juga masalah pengotrolan stok obat – obatan yang tersedia
yang kurang begitu teratur secara baik. Untuk itu diperlukan suatu sistem informasi
yang mampu meningkatkan kinerja sistem agar dapat memberikan hasil yang
program sebagai antarmuka yang dapat membantu kesulitan yang dialami selama ini
dan juga sebagai bahan penulisan tugas akhir dengan judul “SISTEM INFORMASI
Berdasarkan latar belakang permasalahan diatas, maka dalam tugas akhir ini rumusan
Sesuai dengan rumusan masalah yang telah di paparkan, maka batasan yang
sistem yang ada serta data – data yang dibutuhkan dalam merancang sistem
informasi tersebut.
4. Menguji program yang telah dirancang dan melakukan perbaikan jika masih
ada kesalahan.
BAB 1: PENDAHULUAN
Dalam bab ini penulis menguraikan latar belakang masalah, permasalahan, maksud dan
Dalam bab ini penulis menguraikan beberapa hal yang berhubungan dengan judul
dan bahasa pemograman Mircorsoft Visual Basic 6.0 yang penulis gunakan.
Dalam bab ini penulis menjelaskan sekilas gambaran tentang Apotek K-24
yang terdiri dari sejarah, tinjauan umum, visi dan misi, prestasi, dan struktur
organisasi.
database, Diagram Konteks, Data Flow Diagram (DFD), serta flowchart dari program
yang dirancang.
sistem.
LANDASAN TEORI
2.1 Sistem
Pengertian sistem menurut Kamus Besar Bahasa Indonesia (1988 :849) adalah (1)
perangkat unsur yang secara teratur saling berkaitan sehingga membentuk suatu
totalitas, (2) susunan yang teratur dari pandangan, teori, asas, dan sebagainya, (3)
suatu kesatuan organik untuk mencapai suatu hasil yang diinginkan secara
2. Menurut L. James Havery, sistem adalah prosedur logis dan rasional untuk
lainnya dengan maksud untuk berfungsi sebagai suatu kesatuan dalam usaha
3. Menurut Mulyadi, sistem adalah suatu jaringan prosedur yang dibuat menurut
terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan bersama.
suatu jaringan yang berfungsi untuk menyelesaikan suatu sasaran yang diinginkan
Ada beberapa elemen yang membentuk sebuah sistem, yaitu : tujuan, masukan,
proses, keluaran, batas, mekanisme pengendalian dan umpan balik serta lingkungan.
1. Tujuan
Setiap sistem memiliki tujuan, maupun satu ataupun banyak. Tujuan inilah
menjadi tak terarah dan tak terkendali. Tentu saja, tujuan antara satu sistem
2. Masukan
Masukan (input) sistem adalah segala sesuatu yang masuk ke dalam sistem dan
selanjutnya menjadi bahan yang diproses. Masukan dapat berupa hal-hal yang
3. Proses
4. Keluaran
keluaran bisa berupa suatu informasi, saran, cetakan laporan, dan sebagainya.
5. Batas
Yang disebut batas (boundary) sistem adalah pemisah antara sistem dan
7. Lingkungan
Lingkungan adalah segala sesuatu yang berada diluar sistem. Lingkungan bisa
2.2 Informasi
peranan yang sangat penting. Dengan adanya informasi dalam suatu organisasi para
manajer dapat mengambil keputususan dengan cepat dan mencapai tujuan yang efektif
dan efisien. Sehingga dapat dikatakan bahwa informasi adalah suatu hasil dari
pengolahan data menjadi bentuk yang lebih berguna bagi penggunanya dan dapat
Berikut ini adalah pengertian dan definisi informasi menurut beberapa ahli:
dalam jumlah muatan yang besar, meliputi banyak hal dalam ruang lingkupnya
dalam sebuah formulir bentuk yang bermanfaat dan dapat digunakan untuk
manusia.
bahan nyata yang dapat dijadikan dasar kajian analisis atau kesimpulan.
Menurut John F. Nash (1995:8) yang diterjemahkan oleh La Midjan dan Azhar
Susanto, menyatakan bahwa sistem informasi adalah kombinasi dari manusia, fasilitas
atau alat teknologi, media, prosedur dan pengendalian yang bermaksud menata
jaringan komunikasi yang penting, proses atas transaksi-transaksi tertentu dan rutin,
membantu manajemen dan pemakai intern dan ekstern dan menyediakan dasar
pengambilan keputusan yang tepat. Sedangkan menurut Henry Lucas (1988:35) yang
diterjemahkan oleh Jugianto H.M, menyatakan bahwa sistem informasi adalah suatu
kegiatan dari prosedur – prosedur yang diorganisasikan, bila mana dieksekusi akan
di dalam organisasi.
Dari defenisi diatas, maka dapat disimpulkan pengertian dari sistem informasi
adalah suatu jaringan dari beberapa elemen-elemen yang saling berhubungan yang
eksternal agar organisasi tersebut dapat beroperasi secara efektif dan efisien.
Sistem informasi terdiri dari beberapa komponen yang saling berinteraksi satu dengan
yang lain membentuk suatu kesatuan untuk mencapai tujuan yang diinginkan.
Komponen yang terdiri dari metode dan media untuk menangkap data yang
2. Komponen model
Komponen ini terdiri dari kombinasi prosedur, logika, dan model matematik
yang akan memanipulasi data input dan data di basis data (database).
Hasil dari sistem informasi yang berupa informasi yang berkualitas dan
4. Komponen teknologi
5. Komponen hardware
informasi.
6. Komponen software
Kumpulan data yang saling berkaitan dan berhubungan satu dengan yang lain,
8. Komponen control
yang dapat merusak sistem dapat dicegah ataupun bila terlanjur terjadi
Gordon C. Everest menyebutkan bahwa basis data adalah kumpulan data yang
Selanjutnya menurut C.J.Date, basis data adalah koleksi data operasional yang
tersimpan dan dipakai oleh sistem aplikasi dari suatu organisasi. Maka secara
keseluruhan dapat disimpulkan bahwa basis data adalah suatu kumpulan data yang
saling berhubungan yang tersimpan dalam suatu media dan terorganisir dengan rapi,
yang dapat diakses dengan urutan yang berbeda-beda secara logis dengan cara yang
relatif mudah dan dapat dipakai oleh sistem aplikasi dari suatu organisasi.
Database management system (DBMS) yaitu suatu sistem atau perangkat lunak yang
mengelola basis data dan menjalankan operasi terhadap data dalam jumah yang besar
yang terdapat di dalam basis data, sehingga memudahkan pengguna akhir untuk
1. Data Definition
menghubungkannya.
2. Data Manipulation
Sebuah DBMS dapat memeriksa security dan integrity data yang didefinisikan
yang dapat disebabkan oleh kesalah sistem, kerusakan disk, dan lainnya dan
juga harus dapat mengontrol pengaksesan data yang concurrent, yaitu apabila
satu data diakses secara bersama-sama oleh lebih dari satu pemakai pada saat
yang bersamaan.
6. Data Dictionary
7. Perfomance
Sebuah DBMS dapat menangani unjuk kerja dari semua fungsi seefisien
mungkin.
Suatu komputer yang terdiri dari processor, harddisk dan memory, ataupun
jaringan yang terdiri dari beberapa komputer yang dapat menjalankan DBMS
Suatu penghubung antara basis data dan pengguna yang berupa perangkat
3. Data
Komponen yang terdapat di dalam basis data yang saling terkait, terintegrasi,
4. Prosedur
dan DBMS.
5. Pengguna
Microsoft Visual Basic pertama kali diluncurkan pada tahun 1991 dengan nama
“thunder” yang merupakan development pertama yang berbasis visual yang dibuat
oleh Microsoft untuk menandingi bahasa pemrograman lainnya yang telah ada seperti
Pada tahun 1993, Microsoft menegluarkan Visual Basic versi 2.0 yang mulai
menarik perahatian para pengembang program. Ketika Visual Basic versi 3.0
Pada tahun 1997, Microsoft mengeluarkan Visual Basic versi 5.0 yang
memiliki kemampuan untuk menciptakan activeX Control yang membuat kita mampu
menempatkannya di internet dan membuat bahasa HTML lebih dinamis dan praktis.
Kemudian pada tahun 1998, Micrososft mengeluarkan Visual Basic versi 6.0.
M. Agus J. Alam (2001, hal:1) mengatakan Microsoft Visual Basic 6.0 adalah bahasa
pemrograman yang bekerja dalam lingkup MS-Windows. Microsoft Visual Basic 6.0
metode Graphical User Interface (GUI). Microsoft Visual Basic 6.0 berasal dari
Microsoft Visual Basic 6.0 memiliki tiga dimensi yang sangat berbeda dengan
berbagai sarana dasar dari Visual Basic 6.0 untuk pengembangan sebuah
aplikasi.
pemrograman internet, compiler untuk membuat file help, serta sarana – sarana
pengembangan database yang lebih baik. Versi ini juga berisi tambahan
Microsoft Jet Data Access Engine (database) dan pembuatan server OLE
Automatication.
untuk membangun program – program windows dengan cepat dan efisien. Visual
1. Form, yaitu windows atau jendela dimana user interface atau tampilan yang
2. Control, yaitu tampilan berbasis grafis yang dimasukkan pada form untuk
membuat interaksi dengan memakai text, label, option, check, frame, dan
command.
3. Properties, yaitu nilai atau karakter yang dimiliki oleh sebuah objek Visual
Basic, seperti name, size, color, position dan text. Properties dapat diubah saat
4. Methods, yaitu serangkaian perintah – perintah yang telah tersedia dan dapat
5. Even Procedure, yaitu kode yang berhubungan dengan suatu objek yang dapat
6. General Procedure, yaitu kode yang tidak berhubungan dengan suatu objek
7. Module, yaitu kumpulan dari prosedur umum, deklarasi variabel dan defenisi
Dari penjelasan di atas maka tampilan environment Visual Basic 6.0 dapat
Secara rinci, tampilan form utama Visual Basic 6.0 seperti yang dilihat pada
4. Windows Properties, yaitu jendela yang sangat mendukung sifat – sifat dari
5. Windows Form Layout, yaitu windows yang menampilkan letak dari form
6. Toolbox, yaitu sebuah windows yang mengandung semua objek atau kontrol
b) Text Box, sebagai tempat input atau untuk menampilkan teks dan pemakai
c) List Box, menampilkan beberapa item. Dari kontrol item – item tersebut user
h) Option Button, fungsinya hampir sama dengan check box, perbedaannya pada
7. Project Windows, yaitu project yang menampilkan semua file di dalam Visual
Basic yang sedang aktif. Project merupakan kumpulan dari modul form,
8. Windows Code, yaitu jendela yang berisi kode-kode program yang merupakan
instruksi program, pada saat program diuji windows ini berguna sebagai
Database adalah sekumpulan informasi yang saling berhubungan dengan semua objek,
topik atau yang mempunyai tujuan tertentu. Informasi atau data yang diolah tersebut
disimpan dalam sebuah file. Contohnya adalah database buku, koleksi musik,
Access adalah program aplikasi database yang sangat populer dan paling banyak
digunakan, yang akan membantu seeorang dalam merancang, membuat dan mengolah
database dapat lebih mudah dipakai, lebih fleksibel dan lebih mudah diintegrasikan
dengan program aplikasi MS Office XP lainnya, dapat bekerja sama pada sistem
maupun intranet.
sebuah laporan. Crystal Report dapat digunakan dengan bahasa pemrograman berbasis
windows seperti Visual Basic 6.0, Borland Delphi, Visual Basic.net, Visual C++, dan
1. Dari segi pembuatan laporan tidak terlalu rumit. Hal ini memungkinkan para
sebagainya.
Apotek K-24 adalah apotek franchise dari PT. K–24 Indonesia yang didirikan oleh dr.
didirikan di Jl. Magelang mendapat sambutan yang luar biasa sehingga didirikan gerai
berikutnya pada tanggal 24 maret 2003 di Jl. Gejayan dan tanggal 24 Agustus 2003
gerai ke tiga didirikan di Jl. Kaliurang dan pada tahun 2004 apotek k-24 membuka
gerai ketiga di Jl. Gondomanan dan gerai keempat di dirikan di Kota Semarang di Jl.
Gajah Mada.
Pada tahun 2005 apotek K-24 mulai di waralabakan dan pada ulang tahunnya
yang ke 3 (tiga) Apotek K-24 membuka secara serentak 7 gerai baru, 4 gerai berlokasi
di Surabaya, 2 gerai di Yogyakarta dan 1 gerai di Semarang. Saat ini Apotek K-24
memiliki hampir 300 gerai yang tersebar di berbagai kota di seluruh wilayah
Indonesia. Di Medan sendiri telah didirikan 7 gerai, diantaranya adalah Apotek K-24
M.Yamin. Apotek K-24 M.Yamin didirikan pada tanggal 24 April 2008 dan
K-24 sendiri adalah kependekan dari komplet 24 jam. Komplet dalam artian komplet
obatnya dan buka 24 jam sehari sepanjang tahun. Persediaan ragam obat di Apotek K-
24 relatif komplit ( memiliki ragam obat lebih dari 5800 item ) dan semua gerai
dengan harga yang sama pada pagi, siang, malam dan hari libur tanpa mengenakan
obat palsu yang notabene kian marak di pasaran, Apotek K-24 berkomitmen untuk
menyediakan obat hanya dari sumber-sumber dengan prosedur yang resmi sehingga
keaslian obat lebih terjamin. Setiap Apotek K-24 di seluruh Indonesia memasok
barang dari 15 PBF (Pedagang Besar Farmasi) Nasional dan beberapa PBF lokal yang
resmi, legan , dan terpercaya. 15 PBF Nasional tersebut antara lain adalah APL,
AAM, BSP, Kebayoran, MBS, ENSEVAL, Parit Padang, DMA, MPI, Kalista Prima,
dapat melayani masyarakat dengan baik. Apotek K-24 juga melayani konsultasi obat
secara gratis, layanan pesan antar bagi masyarakat yang membutuhkan obat namun
keaslian obat. Setiap hari ulang tahun gerainya Apotek K-24 menyelenggarakan
• Menjadi merek nasional yang menjadi pemimpin pasar bisnis apotek di Negara
ragam obat yang komplit, buka 24 jam termasuk hari libur yang tersebar di
seluruh Indonesia.
• Menyediakan pilihan obat yang komplit, setiap saat, dengan harga yang sama
• Menyediakan pilihan obat yang komplit, setiap saat, dengan harga sama pagi-
siang-malam dan hari libur: Apotek K-24 melayani masyarakat selama 24 jam
sama pada pagi hari, siang hari, malam hari maupun hari libur.
mempunyai ‘brand identity’ yang bernilai jual tinggi di tengah era persaingan usaha
yang sangat kompetitif ini. Hal ini diperoleh karena usaha dan kerja keras, disiplin
serta keuletan yang tetap memegang teguh prinsip pelayanan kepada masyarakat.
Berikut beberapa prestasi berupa penghargaan yang telah di terima Apotek K-24 :
Pertama di Indonesia Yang Buka 24 jam Non Stop Setiap Hari", pada tanggal
6 April 2005.
Apotek Terbanyak; 7 Gerai Dibuka Pada Waktu Yang Sama” pada tanggal 24
Oktober 2005.
Agustus 2006.
Serentak di 12 Kota pada 31 Gerai Apotek K – 24” pada tanggal 22 Juli 2007.
2007.
wewenang dan tanggung jawab dalam suatu organisasi. Tujuan struktur organisasi
dengan wewenang dan tanggung jawab yang telah diberikan, sehingga tujuan
PERANCANGAN SISTEM
sistem yang baik, yang isinya adalah penggambaran, perencanaan, dan pembuatan
sketsa atau pengaturan dari beberapa elemen yang terpisah kedalam satu kesatuan
yang utuh dan berfungsi untuk mendukung operasi sistem. Tujuan dari perancangan
sistem ialah untuk memenuhi kebutuhan kepada pemakai sistem serta untuk
memberikan gambaran yang jelas dan rancang bangun yang lengkap kepada
Secara garis besar Sistem Informasi Penjualan Barang pada Apotek K-24
Dibeli
yang Dibeli
Id AutoNumber 3 Nomor Id
Jika dilihat kembali ke pada tabel database diatas terdapat beberapa field yang sama
pada dua tabel yang membentuk relasi antar tabel. Relasi antar tabel sendiri
merupakan hubungan yang terjadi pada suatu tabel dengan tabel lainnya, yang
Sebagai gambaran relasi antar tabel dalam database tersebut dapat dilihat
sebagai berikut :
Diagram konteks adalah suatu diagram alir tingkat tinggi dari Data Flow Diagram
(DFD) yang menggambarkan seluruh jaringan, masukan dan keluaran. sistem yang
mengidentifikasikan awal dan akhir data yang masuk dan keluaran sistem. Dengan
adanya suatu diagram konteks dari sistem, struktur pendekatan ini menggambarkan
sistem secara garis besar yang kemudian akan dipecah menjadi bagian-bagian lebih
rinci. Berikut ini adalah diagram konteks dari sistem informasi penjualan barang pada
Apotek K-24.
Data Flow Diagram (DFD) atau Diagram Arus Data (DAD) merupakan gerakan data
dari sebuah sistem, mulai dari masuk sampai ke tujuannya. Arus data di DFD diberi
simbol anak panah dan mengalir diantara proses (process), simpanan data (data store)
sistem yang terstruktur. DFD yang pertama kali digambarkan adalah level teratas (top
level) yang disebut dengan diagram konteks. Dari diagram konteks kemudian akan
digambar dengan lebih rinci lagi yang disebut overview diagram (level 0). Tiap-tiap
proses di overview diagram akan digambarkan secara lebih rinci lagi dan disebut
dengan level 1. Apabila tiap-tiap proses di level 1 dapat digambar kembali dengan
lebih rinci lagi maka disebut dengan level 2 dan seterusnya, sampai tiap-tiap proses
tidak dapat digambarkan lebih rinci lagi. Berikut Data Flow Diagram dari Sistem
DFD Level 0
konteks diagram yang sudah menjurus kepada suatu proses dan merupakan gabungan
secara keseluruhan yang melibatkan semua kesatuan luar secara lengkap. Proses
Admin Kasir
Data
Pengguna
Data Jenis Data Barang
Barang
Data Transaksi Penjualan Data Transaksi
Penjualan
Data
Data Pengguna Data Jenis Barang Data Barang Data Penjualan
Detail_Penjualan
Pada DFD diatas dapat dijelaskan bahwa seluruh data yang di input oleh admin
maupun kasir langsung disimpan di database (1.0 dan 2.0) ataupun disimpan dengan
membutuhkan data dari tabel lain melalui relasi antar tabel (3.0 dan 4.0). Kemudian
1.1
Data Data
Pengguna Proses Pengguna
Admin Data Pengguna
Perekaman Data
Pengguna
Data
Pengguna
Data
Pengguna 1.2
Data
Pengguna
Proses Perubahan
Data Pengguna
pengguna dilakukan oleh Admin. (1.1). Admin juga melakukan proses perubahan data
yang membutuhkan data dari tabel pengguna, yang kemudian akan disimpan kembali
2.1
Data Jenis Data Jenis
Barang Proses Barang Data Jenis
Admin
Perekaman Data Barang
Jenis Barang
Data Jenis
Barang
Data Jenis
Barang 2.2
Data Jenis
Barang
Proses Perubahan
Data Jenis Barang
Berdasarkan DFD diatas, Admin memasukkan data jenis barang (2.1) dan
melakukan perubahan data yang membutuhkan data dari tabel Jenis_Barang yang
Data Flow Diagram Level 1 Proses 1 dapat digambarkan secara lengkap sebagai
berikut.
Data Jenis
Barang
Data Jenis
Barang
3.1
Data Data
Barang Proses Barang
Admin Data Barang
Perekaman Data
Barang
Data
Barang
Data
Barang 3.2
Data
Barang
Proses Perubahan
Data Barang
pemasukan data jenis barang dari tabel Jenis_Barang yang dibutuhkan sebagai
Data Flow Diagram Level 1 Proses 4 dapat dijabarkan secara lengkap sebagai berikut.
Data Barang
Data
Data Transaksi Barang
Penjualan
Kasir Data Detail
4.1 Penjualan
Data Detail
Proses Penjualan
Perekaman Data
Transaksi
Penjualan
Data
Penjualan
Admin
Data Transaksi Data Data Penjualan
Penjualan Pengguna
Data Pengguna
Admin dan kasir melakukan proses pemasukan data transaksi penjualan yang
membutuhkan data barang dari tabel Barang sebagai informasi barang-barang yang
ada dan data pengguna dari tabel Pengguna untuk menentukan pengguna yang
5.1
Data Barang
Data Pengguna Pembuatan Laporan Admin dan Pimpinan
Data Jenis Seluruh Barang
Barang
5.4
Laporan Penjualan Per-
Data Penjualan Pembuatan Laporan Tanggal Transaksi
Data Barang
Penjualan Per-
Tanggal Transaksi
5.5
Laporan Penjualan Per-
Data Detail Penjualan
Bulan
Pembuatan Laporan
Penjualan Per-Bulan
5.9
Data Detail Laporan Jumlah Barang
Penjualan Pembuatan Laporan yang Terjual Per- Bulan
Jumlah Barang yang
Terjual Per- Bulan
5.10
Data Detail Penjualan Grafik Pendapatan Per-Bulan
Pembuatan Grafik
Pendapatan Per-
Bulan
Proses pembuatan keseluruhan laporan dari seluruh tabel yang telah disimpan
4.5 Flowchart
Flowchart atau bagan alir adalah suatu alat bantu yang dapat menentukan langkah-
langkah yang akan dilakukan oleh pemogram, mulai dari membentuk berkas hingga
hasil yang maksimal. Flowchart berbeda dengan Data Flow Diagram dimana DFD
menunjukkan alur data di suatu sistem sedangkan flowchart menjelaskan alur kerja
Informasi Penjualan Barang pada Apotek K-24 dapat dilihat di bawah ini :
Detal_Penjualan.d
Pengguna.db Jenis_Barang.db Barang.db Penjualan.db
b
1 3 7 10
2 4 8
5 9
6
Keterangan :
IMPLEMENTASI SISTEM
prosedur yang dilakukan dalam menyelesaikan desain sistem yang telah disetujui,
untuk menguji, menginstal, dan memulai sistem baru atau sistem yang diperbaiki
a. Menyelesaikan rancangan sistem yang ada dalam dokumen sistem yang baru
b. Mengkaji rangkaian sistem baik dari segi software maupun hardware sebagai
terhadap sistem yang baru dan mendapatkan hasil yang baik dan jelas.
Terdapat tiga komponen yang diperlukan sebagai sarana pendukung utama dalam proses
program dan pengolahan data yaitu Perangkat Keras (Hardware), Perangkat Lunak
peran yang penting dalam menunjang sistem yang telah dirancang terhadap pengolahan
data.
Perangkat keras (hardware) merupakan salah satu komponen dari sebuah komputer
yang sifat alat nya bisa dilihat dan disentuh secara langsung atau yang berbentuk
hardware dapat dibagi menjadi lima bagian, yaitu perangkat masukan (input device),
penyimpanan (backing storage), dan perangkat tambahan (peripheral). Dalam hal ini
b. Harddisk 320 MB
c. Memori 2 GB DDR2
Perangkat lunak adalah sekumpulan data elektronik yang berupa program atau
instruksi yang akan menjalankan suatu perintah dan menjadi penghubung antara
hardware dan brainware. Untuk sistem ini penulis memakai beberapa software yang
diantaranya adalah:
4. Crystal Report
Brainware adalah semua pihak yang terlibat dalam kegiatan pemanfaatan komputer
atau sistem pengolahan data. Brainware juga dapat diartikan sebagai perangkat
komputer maupun software komputer. Tanpa adanya brainware ini mustahil hardware
kategori, yaitu :
jaringan komputer.
Pengujian sistem bertujuan untuk memastikan sistem berjalan dengan lancar dan dapat
memenuhi keinginan pemakai serta dapat digunakan oleh pemakai dan dioperasikan
oleh operator sistem. Berikut ini langkah-langkah dan beberapa tampilan dalam
Pada form ini tersedia fasilitas untuk login ke dalam sistem aplikasi, baik itu seorang
ADMIN maupun KASIR. Dan untuk setiap pengguna memiliki hak aksesnya masing-
- Masukkan Password
Utama
Langkah 2 : - Jika klik tanda cross ( X ) maka pengguna akan batal Login dan
Pada form ini terdapat beberapa menu dan submenu, antara lain adalah sebagai
berikut:
- Data Barang
- Data Pengguna
- Transaksi Penjualan
Sistem : - Logout/Login
- Keluar
Terdapat juga lima toolbar yang fungsi nya adalah untuk memanggil menu
yang telah ditentukan. Toolbar tersebut adalah Master Jenis Barang, Master Data
- Klik Simpan jika ingin menyimpan jenis barang yang telah diisi
Langkah 2 : Pilih data yang ingin diubah lalu klik Ubah jika ingin mengubah data
yang ada.
Langkah 3 : Pilih data yang ini di hapus lalu klik Hapus jika ingin menghapus data
yang ada.
Menu ini akan digunakan untuk pengolahan data barang. Data barang akan
dimasukkan.
Langkah 2 : Pilih data yang akan diubah lalu klik Ubah jika ingin mengubah data
yang ada.
Langkah 3 : Pilih data yang akan dihapus lalu klik Hapus jika ingin menghapus data
yang ada.
Pada pengolahan data pengguna, pengguna dapat menentukan status pengguna atau
hak akses pengguna, baik itu sebagai ADMIN maupun KASIR. Staus pengguna
ADMIN dapat mengakses semua menu yang terdapat didalam program, sedangkan
status pengguna KASIR hanya dapat mengakses Menu Transaksi Penjualan, Menu
Laporan Seluruh Barang, Menu Laporan Barang Per- Jenis, Menu Logout/Login, dan
Menu Keluar.
dimasukkan.
Langkah 2 : Pilih data yang akan diubah lalu klik Ubah jika ingin mengubah data
yang ada.
Langkah 3 : Pilih data yang akan dihapus lalu klik Hapus jika ingin mengubah data
yang ada.
ditambah stoknya.
- Lalu akan muncul menu Cari Daftar Barang. Pada menu ini
(-) Pilih barang yang akan ditambah stoknya lalu menu akan
(-) Klik Normal jika ingin menghapus nama barang atau kode
(-) Klik Tutup jika tidak ingin menambah stok dan menu akan
tertutup.
Langkah 2 : Isikan jumlah stok yang akan ditambah pada label Tambah Stok lalu
klik Simpan.
pelanggan.
- Lalu akan muncul menu Cari Persediaan Barang. Pada menu ini
akan dijual.
(-) Pilih barang yang akan dijual lalu menu akan otomatis
(-) Klik Normal jika ingin menghapus nama barang atau kode
(-) Klik Tutup jika tidak ingin menjual barang dan menu akan
tertutup.
Langkah 2 : Ketikkan jumlah barang yang dibeli pelanggan pada label Jumlah.
Langkah 3 : Klik Masuk Grid untuk memasukkan data barang yang dibeli ke dalam
grid penjualan.
Langkah 4 : Masukkan jumlah uang yang dibayar pelanggan kedalam label Cash
jika barang yang dibeli pelanggan sudah masuk semua kedalam grid
penjualan.
Langkah 5 : Klik Simpan untuk menyimpan transaksi penjualan lalu laporan hasil
penjualan.
Langkah 6 : Klik Batal jika ingin membatalkan transaksi dan klik Keluar jika ingin
Menu ini langsung memunculkan laporan data barang yang ada di database.
Menu ini dapat menampilkan laporan barang yang dipilih sesuai jenisnya.
Langkah 2 : Klik Keluar untuk keluar dari menu Laporan Barang Per- Jenis.
Menu ini menampilkan laporan penjualan sesuai tanggal transaksi yang dipilih.
Menu ini menampilkan laporan penjualan sesuai antar tanggal transaksi yang dipilih.
Menu ini langsung memunculkan laporan seluruh jumlah barang yang terjual.
5.4.14 Menu Laporan Jumlah Barang yang Terjual Antar Tanggal Transaksi
Menu ini menampilkan laporan jumlah barang yang terjual antar tanggal transaksi
yang dipilih.
Gambar 5.20 Menu Laporan Jumlah Barang yang Terjual Antar Tanggal
Transaksi
Gambar 5.21 Laporan Jumlah Barang yang Terjual Antar Tanggal Transaksi
Menu ini menampilkan laporan jumlah barang yang terjual sesuai bulan yang dipilih.
Gambar 5.20 Menu Laporan Jumlah Barang yang Terjual Per- Bulan
6.1 Kesimpulan
Berdasarkan pembahasan yang telah dilakukan di bab sebelumnya maka penulis dapat
menarik kesimpulan :
dengan lancar.
data, pengeditan data dapat dilakukan dengan lebih efektif dan efisien.
Apotek K-24 sangat berarti dan berguna untuk pengambilan masa kini dan
6.2 Saran
3. Diharapkan dimasa yang akan datang adanya pengembangan lebih lanjut dari
sistem informasi ini sehingga menjadi sistem informasi yang terpadu untuk
Binarto, Suryo , 2009. Tips dan Trik Membuat Program Penjualan Menggunakan
Kurniadi, Adi, 2000. Pemrograman Visual Basic 6.0, Jakarta: Penerbit PT. Elex
Media Komputindo.
Nono, 2011. Membangun Sistem Informasi Toko dan Distributor dengan VB dan
Subari dan Yuswanto. 2008. Panduan Lengkap Pemograman Visual Basic 6.0.
Indriyana, Indah dan Nugroho, Bunafit. 2009. Panduan Tugas Akhir: Membuat
Alif Media.
Rusmawan, Uus, 2008. Koleksi Program VB 6.0 Konsep ADO untuk Tugas Akhir
http://djuliar.blogspot.com/2012/02/berbagai-skin-dan-style-untuk-visual.html
http://www.naamcom.com/2010/04/script-mencetak-struk-di-vb6.html
Modul Utama
Option Explicit
Public KoneksiDB As New ADODB.Connection
Public Rs_Jenis As ADODB.Recordset
Public Rs_Barang As ADODB.Recordset
Public Rs_StokBarang As ADODB.Recordset
Public Rs_Pengguna As ADODB.Recordset
Public Rs_Penjualan As ADODB.Recordset
Public Rs_CetakPenjualan As ADODB.Recordset
Public Rs_PreviewPenjualan As ADODB.Recordset
Public Rs As ADODB.Recordset
Modul Cetak
Public Type arrCetak
KodeBarang As String
NamaBarang As String
TanggalTerima As Date
Jumlah As Long
HargaSatuan As Long
Total As Long
End Type
lebar = Picture1.ScaleWidth
tinggi = Picture1.ScaleHeight
y = Toolbar1.Height
Do While y < ScaleHeight
x=0
Do While x < ScaleWidth
PaintPicture Picture1.Picture, _
x, y, lebar, tinggi
x = x + lebar
Loop
y = y + tinggi
End Sub
End If
End Sub
End Sub
Me.mnuLogin.Caption = "Login"
End If
End Sub
Call BukaDatabase
cmbStatus.AddItem ("KASIR")
cmbStatus.AddItem ("ADMIN")
End Sub
PenggunaID = Rs_Pengguna!UserId
PenggunaNm = Rs_Pengguna!Nama
With FrmUtama
.StatusBar1.Panels(1).Text = Rs_Pengguna!Nama
.StatusBar1.Panels(2).Text = "[" _
& Rs_Pengguna!Status & "]"
.mnuLogin.Enabled = True
.mnuLogin.Caption = "Logout"
End With
Unload Me
Else
' Periksa, login hanya 3 kali
' 3x gagal pesan error ditampilkan
If MaxLogin < 3 Then
MsgBox "PASSWORD MASIH SALAH, SILAHKAN ULANGI LAGI!", _
vbCritical + vbOKOnly, "Error"
txtPwd.Text = ""
txtPwd.SetFocus
MaxLogin = MaxLogin + 1
Else
MsgBox "ANDA BUKAN USER YANG BERHAK!", _
vbCritical + vbOKOnly, "Error"
End
Call BukaDatabase
Call TampilGridData
Call FormMati
TbHapus.Enabled = False
TbSimpan.Enabled = False
TbUbah.Enabled = False
End Sub
Sub FormKosong()
txtKode.Text = ""
txtNama.Text = ""
End Sub
Sub FormHidup()
txtKode.Enabled = True
txtNama.Enabled = True
End Sub
Sub FormMati()
txtKode.Enabled = False
txtNama.Enabled = False
End Sub
Sub FormNormal()
TbTambah.Enabled = True
TbHapus.Enabled = False
TbSimpan.Enabled = False
TbUbah.Enabled = False
TbKeluar.Caption = "Keluar"
End Sub
Sub BuatKodeJenis()
Rs_Jenis.Requery
Set Rs_Jenis = New ADODB.Recordset
Set Rs_Jenis = New ADODB.Recordset
Rs_Jenis.Open "SELECT * FROM Jenis_Barang", _
KoneksiDB, adOpenDynamic, _
adLockBatchOptimistic
If Rs_Jenis.BOF Then
KodeJenis = "K0001"
Exit Sub
Else
Rs_Jenis.MoveLast
KodeJenis = Rs_Jenis!Kode_Jenis
KodeJenis = Right(KodeJenis, 4)
KodeJenis = Val(KodeJenis) + 1
Sub AktifGridJenis()
With GridJenis
.RowHeightMin = 300
.Col = 0
.Row = 0
.Text = "NO"
.CellFontBold = True
.ColWidth(0) = 400
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.RowHeightMin = 300
.Col = 1
.Col = 2
.Row = 0
.Text = "NAMA JENIS"
.CellFontBold = True
.ColWidth(2) = 6000
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
End With
End Sub
Sub TampilGridData()
Dim Baris As Integer
GridJenis.Clear
AktifGridJenis
GridJenis.Rows = 2
Baris = 0
Call BukaDatabase
If Rs_Jenis.BOF Then
MsgBox "Tabel Jenis masih kosong!", _
vbOKOnly + vbInformation, "Perhatian"
Exit Sub
Else
With Rs_Jenis
.MoveFirst
Do While Not .EOF
On Error Resume Next
Baris = Baris + 1
GridJenis.Rows = Baris + 1
GridJenis.TextMatrix(Baris, 0) = Baris
GridJenis.TextMatrix(Baris, 1) = !Kode_Jenis
GridJenis.TextMatrix(Baris, 2) = !Nama_Jenis
.MoveNext
Loop
End With
End If
End Sub
Call FormHidup
txtNama.SetFocus
GridObjIndex = GridJenis.Row
If Rs_Jenis.BOF Then
MsgBox "Tabel jenis Barang masih kosong!", _
vbOKOnly + vbInformation, "Perhatian"
Exit Sub
Call FormNormal
Else
Rs_Jenis.MoveFirst
Do While Not Rs_Jenis.EOF
On Error Resume Next
txtKode.Text = Rs_Jenis!Kode_Jenis
txtNama.Text = Rs_Jenis!Nama_Jenis
Rs_Jenis.MoveNext
Loop
End If
End Sub
Call BuatKodeJenis
txtKode.Text = KodeJenis
TbSimpan.Enabled = True
TbTambah.Enabled = False
TbUbah.Enabled = False
TbHapus.Enabled = False
TbKeluar.Caption = "Batal"
txtNama.SetFocus
Call TampilGridData
End Sub
Call Form_Load
End If
End Sub
Call BukaDatabase
Call TampilGridData
Call FormMati
TbHapus.Enabled = False
TbSimpan.Enabled = False
TbUbah.Enabled = False
Call CmbJenis_Click
Call cmbJenis_DropDown
End Sub
Sub FormKosong()
txtKode.Text = ""
CmbJenis.ListIndex = -1
txtNama.Text = ""
txtHarga.Text = "0"
txtStok.Text = "0"
txtKeterangan.Text = ""
End Sub
Sub FormHidup()
txtKode.Enabled = True
CmbJenis.Enabled = True
txtNama.Enabled = True
txtHarga.Enabled = True
txtStok.Enabled = True
txtKeterangan.Enabled = True
End Sub
Sub FormMati()
txtKode.Enabled = False
CmbJenis.Enabled = False
txtNama.Enabled = False
txtHarga.Enabled = False
txtStok.Enabled = False
txtKeterangan.Enabled = False
End Sub
Sub FormNormal()
Call FormKosong
Call FormMati
txtStok.Locked = False
Sub BuatKodeBarang()
Rs_Barang.Requery
Set Rs_Barang = New ADODB.Recordset
Rs_Barang.Open "SELECT Barang.*, " _
& " Jenis_Barang.Nama_Jenis " _
& " FROM Barang, Jenis_Barang WHERE " _
& " Jenis_Barang.Kode_Jenis=Barang.Kode_Jenis " _
& " ORDER BY Kode_Barang ASC ", _
KoneksiDB, adOpenDynamic, adLockBatchOptimistic
If Rs_Barang.BOF Then
KodeBarang = "B0001"
Exit Sub
Else
Sub AktifGridBarang()
With GridBarang
.RowHeightMin = 300
.Col = 0
.Row = 0
.Text = "NO"
.CellFontBold = True
.ColWidth(0) = 400
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.RowHeightMin = 300
.Col = 1
.Row = 0
.Text = "KODE"
.CellFontBold = True
.ColWidth(1) = 750
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 2
.Row = 0
.Text = "JENIS"
.CellFontBold = True
.ColWidth(2) = 1900
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 3
.Row = 0
.Text = "NAMA BARANG"
.CellFontBold = True
.ColWidth(3) = 3300
.AllowUserResizing = flexResizeColumns
.Col = 4
.Row = 0
.Text = "HARGA [Rp.]"
.CellFontBold = True
.ColWidth(4) = 1600
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 5
.Row = 0
.Text = "STOK"
.CellFontBold = True
.ColWidth(5) = 1600
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 6
.Row = 0
.Text = "KETERANGAN"
.CellFontBold = True
.ColWidth(6) = 3000
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
End With
End Sub
Sub TampilGridData()
Dim Baris As Integer
GridBarang.Clear
Call AktifGridBarang
GridBarang.Rows = 2
Baris = 0
Call BukaDatabase
If Rs_Barang.BOF Then
MsgBox "Tabel Barang masih kosong!", _
vbOKOnly + vbInformation, "Perhatian"
Exit Sub
Else
With Rs_Barang
.MoveFirst
Do While Not .EOF
On Error Resume Next
Baris = Baris + 1
Call FormHidup
CmbJenis.SetFocus
GridObjIndex = GridBarang.Row
If Rs_Barang.BOF Then
MsgBox "Tabel Barang masih kosong!", _
vbOKOnly + vbInformation, "Perhatian"
Exit Sub
Call FormNormal
Else
Rs_Barang.MoveFirst
Do While Not Rs_Barang.EOF
On Error Resume Next
txtKode.Text = Rs_Barang!Kode_Barang
CmbJenis.Text = Rs_Barang!Nama_Jenis
txtNama.Text = Rs_Barang!Nm_Barang
End Sub
TbSimpan.Enabled = True
TbTambah.Enabled = False
TbUbah.Enabled = False
TbHapus.Enabled = False
TbKeluar.Caption = "Batal"
CmbJenis.SetFocus
Call TampilGridData
End Sub
Call Form_Load
End If
End Sub
Call BukaDatabase
Call TampilGridData
cmbStatus.Clear
cmbStatus.AddItem ("KASIR")
cmbStatus.AddItem ("ADMIN")
TbUbah.Enabled = False
Call FormMati
End Sub
Sub FormKosong()
txtUserId.Text = ""
txtPassword.Text = ""
txtNama.Text = ""
cmbStatus.ListIndex = -1
End Sub
Sub FormHidup()
txtUserId.Enabled = True
txtPassword.Enabled = True
txtNama.Enabled = True
cmbStatus.Enabled = True
txtUserId.BackColor = &HFFFFFF
txtPassword.BackColor = &HFFFFFF
txtNama.BackColor = &HFFFFFF
cmbStatus.BackColor = &HFFFFFF
End Sub
Sub FormMati()
txtUserId.Enabled = False
txtPassword.Enabled = False
txtNama.Enabled = False
cmbStatus.Enabled = False
txtUserId.BackColor = &HC0FFFF
txtPassword.BackColor = &HC0FFFF
txtNama.BackColor = &HC0FFFF
cmbStatus.BackColor = &HC0FFFF
End Sub
Sub FormNormal()
Call FormKosong
Call FormMati
TbBaru.Enabled = True
TbUbah.Enabled = False
TbHapus.Enabled = False
TbSimpan.Enabled = False
TbKeluar.Caption = "Keluar"
End Sub
Sub AktifGridPengguna()
.RowHeightMin = 300
.Col = 0
.Row = 0
.Text = "USER ID"
.CellFontBold = True
.ColWidth(0) = 1300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 1
.Row = 0
.Text = "PASSWORD"
.CellFontBold = True
.ColWidth(1) = 1300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 2
.Row = 0
.Text = "NAMA PEMILIK"
.CellFontBold = True
.ColWidth(2) = 3700
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 3
.Row = 0
.Text = "STATUS"
.CellFontBold = True
.ColWidth(3) = 1300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
End With
End Sub
Sub TampilGridData()
Dim Baris As Integer
GridPengguna.Clear
Call AktifGridPengguna
GridPengguna.Rows = 2
Baris = 0
Call FormHidup
txtPassword.SetFocus
GridBaris = GridPengguna.Row
If Rs_Pengguna.BOF Then
MsgBox "TABEL MASIH KOSONG", _
vbOKOnly + vbInformation, "Perhatian"
Exit Sub
Call FormNormal
Else
Rs_Pengguna.MoveFirst
Do While Not Rs_Pengguna.EOF
On Error Resume Next
TmpPassword = Rs_Pengguna!PassId
Rs_Pengguna.MoveNext
Loop
End If
End Sub
TbSimpan.Enabled = True
TbBaru.Enabled = False
TbHapus.Enabled = False
TbKeluar.Caption = "Batal"
txtUserId.Locked = False
txtUserId.SetFocus
End Sub
Call FormNormal
Call Form_Load
MsgBox "DATA PENGGUNA BARU TELAH TERSIMPAN", _
vbOKOnly + vbInformation, "Sukses"
End If
End Sub
Rs_Barang.Requery
Call FormNormal
End Sub
Rs_Pengguna.Requery
Call FormNormal
Call FormMati
Call TampilGridData
Else
Call FormNormal
End If
End Sub
Call BukaDatabase
Call FormMati
SkinLabel7.Visible = False
txtStokLama.Visible = False
TbCari.Enabled = False
TbSimpan.Enabled = False
End Sub
Sub FormKosong()
txtKode.Text = ""
txtJenis.Text = ""
txtNama.Text = ""
txtHarga.Text = "0"
txtStok.Text = "0"
txtStokLama.Text = ""
txtKeterangan.Text = ""
End Sub
Sub FormHidup()
txtKode.Enabled = True
txtJenis.Enabled = True
txtNama.Enabled = True
txtHarga.Enabled = True
txtStok.Enabled = True
txtKeterangan.Enabled = True
End Sub
Sub FormMati()
txtKode.Enabled = False
txtJenis.Enabled = False
txtNama.Enabled = False
Sub FormNormal()
Call FormKosong
Call FormMati
txtStok.Locked = False
SkinLabel7.Visible = False
txtStokLama.Visible = False
TbCari.Enabled = False
TbTambah.Enabled = True
TbSimpan.Enabled = False
TbKeluar.Caption = "Keluar"
End Sub
SqlUpdate = ""
SqlUpdate = "UPDATE Barang" _
& " SET Stok_Barang=Stok_Barang + " _
& Val(txtStok.Text) & "" _
& " WHERE Kode_Barang='" & txtKode.Text & "'"
Call Form_Load
End If
End Sub
Call BukaDatabase
Call TampilGridData
End Sub
Sub AktifGridBarang()
With GridBarang
.RowHeightMin = 300
.Col = 0
.Row = 0
.Text = "NO"
.CellFontBold = True
.ColWidth(0) = 400
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.RowHeightMin = 300
.Col = 1
.Row = 0
.Text = "KODE"
.CellFontBold = True
.ColWidth(1) = 750
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 3
.Row = 0
.Text = "NAMA BARANG"
.CellFontBold = True
.ColWidth(3) = 3300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 4
.Row = 0
.Text = "HARGA [Rp.]"
.CellFontBold = True
.ColWidth(4) = 1600
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 5
.Row = 0
.Text = "STOK"
.CellFontBold = True
.ColWidth(5) = 1600
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 6
.Row = 0
.Text = "KETERANGAN"
.CellFontBold = True
.ColWidth(6) = 3000
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
End With
End Sub
Sub TampilGridData()
Dim Baris As Integer
GridBarang.Clear
Call AktifGridBarang
If Rs_Barang.BOF Then
MsgBox "Tabel Barang masih kosong!", _
vbInformation + vbOKOnly, "Informasi"
Exit Sub
Else
With Rs_Barang
.MoveFirst
Do While Not .EOF
Baris = Baris + 1
GridBarang.Rows = Baris + 1
GridBarang.TextMatrix(Baris, 0) = Baris
GridBarang.TextMatrix(Baris, 1) = !Kode_Barang
GridBarang.TextMatrix(Baris, 2) = !Nama_Jenis
GridBarang.TextMatrix(Baris, 3) = !Nm_Barang
GridBarang.TextMatrix(Baris, 4) = !Hrg_Satuan
GridBarang.TextMatrix(Baris, 5) = !Stok_Barang
GridBarang.TextMatrix(Baris, 6) = UCase(!Keterangan)
.MoveNext
Loop
End With
End If
End Sub
frmTambahStok.SkinLabel7.Visible = True
frmTambahStok.txtStokLama.Visible = True
FrmUtama.Enabled = False
frmTambahStok.Enabled = True
Unload Me
End Sub
If Rs_Barang.BOF Then
MsgBox "Tidak menemukan nama Barang! " _
& " - " & txtCari.Text & " - dalam tabel", _
vbInformation, "Informasi"
txtCari.Text = ""
txtCari.SetFocus
Else
Call TampilGridData
End If
If Rs_Barang.BOF Then
MsgBox "Tidak menemukan kode Barang! " _
& " - " & txtCari.Text & " - dalam tabel", _
vbInformation, "Informasi"
txtCari.Text = ""
txtCari.SetFocus
Else
Call TampilGridData
End If
End If
End Sub
Call BukaDatabase
Call FormMati
TbSimpan.Enabled = False
TbCari.Enabled = False
TbMasuk.Enabled = False
End Sub
Sub FormKosong()
txtNoNota.Text = ""
txtTgl.Text = "__/__/____"
txtKode.Text = ""
txtNama.Text = ""
txtStok.Text = ""
txtHarga.Text = "0"
Baris = 1
GridPenjualan.Clear
GridPenjualan.Rows = 2
Call AktifGridJual
End Sub
Sub FormTransKosong()
txtTotalHarga.Text = "0"
txtCash.Text = ""
txtKembali.Text = "0"
End Sub
Sub FormMati()
txtNoNota.Enabled = False
txtTgl.Enabled = False
txtKode.Enabled = False
txtNama.Enabled = False
txtStok.Enabled = False
txtHarga.Enabled = False
txtJumlah.Enabled = False
txtTotal.Enabled = False
txtTotalHarga.Enabled = False
txtCash.Enabled = False
txtKembali.Enabled = False
End Sub
Sub FormHidup()
txtNoNota.Enabled = True
txtTgl.Enabled = True
txtKode.Enabled = True
txtNama.Enabled = True
txtStok.Enabled = True
txtHarga.Enabled = True
txtJumlah.Enabled = True
txtTotal.Enabled = True
txtTotalHarga.Enabled = True
txtCash.Enabled = True
txtKembali.Enabled = True
End Sub
Sub FormNormal()
FormMati
FormKosong
Sub BuatNotaJual()
Rs_Penjualan.Requery
Set Rs_Penjualan = New ADODB.Recordset
Rs_Penjualan.Open " SELECT * FROM " _
& " Penjualan ORDER BY No_Nota ", _
KoneksiDB, adOpenDynamic, _
adLockBatchOptimistic
If Rs_Penjualan.BOF Then
NoNota = "JL-00001"
Exit Sub
Else
Rs_Penjualan.MoveLast
NoNota = Rs_Penjualan!No_Nota
NoNota = Right(NoNota, 5)
NoNota = Val(NoNota) + 1
Sub AktifGridJual()
With GridPenjualan
.Col = 0
.Row = 0
.Text = "KODE"
.CellFontBold = True
.ColWidth(0) = 1300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 1
.Row = 0
.Text = "NAMA Barang"
.CellFontBold = True
.ColWidth(1) = 4200
.Col = 2
.Row = 0
.Text = "HARGA (Rp)"
.CellFontBold = True
.ColWidth(2) = 1800
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 3
.Row = 0
.Text = "JUMLAH"
.CellFontBold = True
.ColWidth(3) = 1300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 4
.Row = 0
.Text = "SUBTOTAL (Rp)"
.CellFontBold = True
.ColWidth(4) = 1800
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
End With
End Sub
Call BuatNotaJual
txtNoNota.Text = NoNota
TbBaru.Enabled = False
TbCari.Enabled = True
TbKeluar.Caption = "Batal"
TbSimpan.Enabled = True
TbMasuk.Enabled = True
Baris = 1
End Sub
txtTotalHarga.Text = _
Val(txtTotalHarga.Text) + Val(txtTotal.Text)
Baris = Baris + 1
Call BersihBarang
For i = 1 To Baris - 1
SqlInsert = ""
SqlInsert = "INSERT INTO Detail_Penjualan" _
& "(No_Nota,Kode_Barang,Harga_Jual, " _
& " Jumlah_Jual,SubTotal)" _
& " VALUES ('" & txtNoNota.Text & "','" _
& GridPenjualan.TextMatrix(i, 0) & "','" _
& GridPenjualan.TextMatrix(i, 2) & "','" _
& GridPenjualan.TextMatrix(i, 3) & "','" _
& GridPenjualan.TextMatrix(i, 4) & "')"
KoneksiDB.Execute SqlInsert, , adCmdText
SqlUpdate = ""
SqlUpdate = "UPDATE Barang SET " _
& " Stok_Barang=Stok_Barang - " _
Call FormNormal
Call FormTransKosong
End If
End Sub
Sub BersihBarang()
txtKode.Text = ""
txtNama.Text = ""
txtHarga.Text = "0"
txtStok.Text = "0"
txtJumlah.Text = ""
txtTotal.Text = "0"
End Sub
If Rs_StokBarang.BOF Then
MsgBox "KODE BARANG TIDAK DIKENALI ..", _
vbInformation, "Info"
Else
With Rs_StokBarang
txtStok.Text = !Stok_Barang
txtNama.Text = !Nm_Barang
Call BukaDatabase
Call TampilGridData
End Sub
Sub AktifGridBarang()
With GridBarang
.RowHeightMin = 300
.Col = 1
.Row = 0
.Text = "KODE"
.CellFontBold = True
.ColWidth(1) = 750
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 2
.Row = 0
.Text = "JENIS"
.CellFontBold = True
.ColWidth(2) = 1900
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 3
.Row = 0
.Text = "NAMA BARANG"
.CellFontBold = True
.ColWidth(3) = 3300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 4
.Row = 0
.Text = "HARGA [Rp.]"
.CellFontBold = True
.ColWidth(4) = 1600
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
.Col = 5
.Row = 0
.Text = "STOK"
.CellFontBold = True
.ColWidth(5) = 1600
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
Sub TampilGridData()
Dim Baris As Integer
GridBarang.Clear
Call AktifGridBarang
GridBarang.Rows = 2
Baris = 0
If Rs_StokBarang.BOF Then
MsgBox "Tabel Barang masih kosong!", _
vbInformation + vbOKOnly, "Informasi"
Exit Sub
Else
With Rs_StokBarang
.MoveFirst
Do While Not .EOF
Baris = Baris + 1
GridBarang.Rows = Baris + 1
GridBarang.TextMatrix(Baris, 0) = Baris
GridBarang.TextMatrix(Baris, 1) = !Kode_Barang
GridBarang.TextMatrix(Baris, 2) = !Nama_Jenis
GridBarang.TextMatrix(Baris, 3) = !Nm_Barang
GridBarang.TextMatrix(Baris, 4) = !Hrg_Satuan
GridBarang.TextMatrix(Baris, 5) = !Stok_Barang
.MoveNext
Loop
End With
End If
End Sub
FrmUtama.Enabled = False
frmJual.Enabled = True
Unload Me
End Sub
txtCari.Text = ""
txtCari.SetFocus
Else
Call TampilGridData
End If
If Rs_StokBarang.BOF Then
MsgBox "Tidak menemukan kode Barang! " _
& " - " & txtCari.Text & " - dalam tabel", _
vbInformation, "Informasi"
txtCari.Text = ""
txtCari.SetFocus
Else
Call TampilGridData
End If
End If
End Sub
With Rs_Jenis
' Memeriksa keberadaan data
Call BukaDatabase
With Rs_Jenis
'Memeriksa keberadaan data jenis barang
If .BOF Then
Exit Sub
Else
'Jika data jenisa barang, maka ditampilkan
.MoveFirst
Do While Not .EOF
CmbJenis.AddItem ![Nama_Jenis]
.MoveNext
Loop
End If
End With
End Sub
End Sub
DTPicker1.Value = Now
End Sub
MonthView1.Value = Now
End Sub
DTPicker1.Value = Now
DTPicker2.Value = Now
End Sub
DTPicker1.Value = Now
DTPicker2.Value = Now
End Sub