Sistem informasi penjualan dan persediaan barang minimarket berbasis linux.

(1)

ABSTRAK

Penulisan skripsi ini bertujuan untuk membuat Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux. Pengguna dari sistem ini adalah kasir, operator pergudangan dan manager. Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux ini berhasil dibuat dengan menggunakan Gambas dan database MySql di Linux. Dengan menggunakan sistem ini pihak minimarket tidak harus membayar lisensi.


(2)

ABSTRACT

The aim of thesis is developing Linux Based Selling and Inventory Information System of a Minimarket. The users of this system are cashiers, storeroom staffs and the managers. This system was successfully developed by Gambas and MySql in Linux. Using this system, the minimarket must not pay the licency fee.


(3)

SISTEM INFORMASI PENJUALAN DAN PERSEDIAAN

BARANG MINIMARKET BERBASIS

LINUX

S K R I P S I

Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains

Program Studi Ilmu Komputer

Oleh:

Bernadus Rano Laksono NIM: 033124006

PROGRAM STUDI ILMU KOMPUTER JURUSAN MATEMATIKA

FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA

YOGYAKARTA 2008


(4)

THE LINUX BASED SELLING AND INVENTORY

INFORMATION SYSTEM OF A MINIMARKET

T H E S I S

Presented As Partial Fulfillment Of The Requirements To Obtain The Sarjana Sains Degree

Study Program Computer Sciences

By:

Bernadus Rano Laksono NIM: 033124006

STUDY PROGRAM OF COMPUTER SCIENCES MANAGEMENT OF MATHEMATICS FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY YOGYAKARTA

2008


(5)

(6)

(7)

PERSEMBAHAN

Yesus Kristus Penuntun langkahku yang setia

Bunda Maria yang selalu setia mendengarkan doa-doaku

Orang tuaku tercinta,

Matheus Kastono dan Eufrozina Soares Martins

Kakakku tersayang, Antanasia Rini Antari

Adik-adikku tersayang Kristina Martins, Delfina Kastono Martins,

Zelasio Suryo Nugroho, Antonia Kastono Martins, Maria Magdalena

Kastono Martins, Martinus Filipe Kastono Martins dan Euphemia

Jaimah Martins Kastono yang selalu mendukungku

Keluarga Bapak Adi Sutrisno di Jitar

yang telah bersedia menjadikanku anak angkat

Rosa Tani Susanti yang menjadi semangat bagiku


(8)

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, 20 September 2008

Penulis,

Bernadus Rano Laksono


(9)

ABSTRAK

Penulisan skripsi ini bertujuan untuk membuat Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux. Pengguna dari sistem ini adalah kasir, operator pergudangan dan manager. Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux ini berhasil dibuat dengan menggunakan Gambas dan database MySql di Linux. Dengan menggunakan sistem ini pihak minimarket tidak harus membayar lisensi.


(10)

ABSTRACT

The aim of thesis is developing Linux Based Selling and Inventory Information System of a Minimarket. The users of this system are cashiers, storeroom staffs and the managers. This system was successfully developed by Gambas and MySql in Linux. Using this system, the minimarket must not pay the licency fee.


(11)

LEMBAR PERNYATAAN PERSETUJUAN

PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma : Nama : Bernardus Rano Laksono

NIM : 033124006

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :

“Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Dibuat di Yogyakarta

Pada tanggal 21 Oktober 2008 Yang menyatakan


(12)

KATA PENGANTAR

Puji syukur ke hadirat Tuhan Yang Maha Esa yang telah melimpahkan rahmat-Nya sehingga penulis dapat menyelesaikan skripsi ini.

Skripsi ini ditulis untuk memenuhi salah satu syarat memperoleh gelar sarjana sains Fakultas Sains dan Teknologi, Program Studi Ilmu Komputer Universitas Sanata Dharma Yogyakarta.

Dalam penulisan skripsi ini banyak hal yang penulis alami, baik suka maupun duka, dimana hal tersebut telah membantu penulis untuk menjadi pribadi yang utuh. Penulis menyadari bahwa banyak peran dari pihak-pihak yang telah membantu penulis dalam menyelesaikan skripsi ini, sehingga penulis ingin mengucapkan banyak terima kasih kepada:

1. Romo Ir. Greg. Heliarko S.J., S.S, B.S.T., M.A., M.Sc selaku Dekan FST Universitas Sanata Dharma

2. Iwan Binanto, S.Si. selaku dosen pembimbing I yang telah bersedia memberikan bimbingan, arahan, dan ketelitiannya dalam penyusunan skripsi ini.

3. Ibu P.H. Prima Rosa, S.Si., M.Sc. selaku KaProdi Ilmu Komputer.

4. Orangtua penulis Bapak Matheus Kastono dan Ibu Eufrozina Soares Martins di Timor-Timur.

5. Bpk. Tukijo dan Bu Linda di sekretariat yang dengan ramah telah membantu melayani penulis.

6. Kakakku dan ketujuh adikku.

7. Rosa Tani Susanti yang menjadi semangat bagi penulis.

8. Bpk. Adi Sutrisno dan Ibu Florentina Ngatiyem yang telah memberikan tempat untuk mengerjakan skripsi.

9. Saudaraku sekaligus sahabatku Slamet Widodo yang telah mau mendengarkan cerita-ceritaku dan telah mengajariku banyak hal.

10.Sahabatku Hardi, Marjuki dan Pintoko.

11.Sahabatku Arui dan sekeluarga yang telah meminjamkan laptop untuk bekerja. 12.Sahabatku Donny yang telah banyak membantu.


(13)

13.Pihak-pihak yang belum disebutkan yang telah membantu dalam penyelesaian skripsi ini.

Penulis menyadari bahwa skripsi ini masih terdapat banyak kekurangan, sehingga kritik maupun saran sangat diharapkan penulis sehingga skripsi ini bisa menjadi lebih baik lagi.

Yogyakarta, 20 September 2008

Bernadus Rano Laksono


(14)

xi

DAFTAR ISI

HALAMAN JUDUL ... i

TITLE ... ii

HALAMAN PERSETUJUAN PEMBIMBING ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN PERSEMBAHAN ... v

PERNYATAAN KEASLIAN KARYA ... vi

ABSTRAK ... vii

ABSTRACT ... viii

KATA PENGANTAR ... ix

DAFTAR ISI ... xi

DAFTAR GAMBAR ... xvi

BAB I PENDAHULUAN ... 1

A. Latar Belakang …………... 1

B. Rumusan Masalah …... 2

C. Batasan Masalah ... 2

D. Tujuan ……... 4

E. Metodologi ... 4

F. Sistematika Penulisan ... 4

BAB II LANDASAN TEORI ... 6

A. Sistem Informasi Penjualan dan Persediaan Barang ... 6

1. Konsep Dasar Sistem ... 6

2. Konsep Dasar Informasi ... 6

3. Konsep Dasar Sistem Informasi ... 6

4. Konsep Dasar Sistem Informasi Penjualan dan Persediaan barang ... 7

B. Konsep Dasar Open Source ... 7

C. Diagram Alir Data (DAD)/Data Flow Diagram (DFD) …... 10

D. Entity Relationship Diagram (ERD) ... 10


(15)

xii

2. One to many relationship 2 entitas ... 11

3. Many to many relationship 2 entitas ... 11

E. Basis Data ... 12

F. Kamus Data ... 12

G. Normalisasi ... 13

H. MySQL ... 14

I. Gambas ... 16

BAB III ANALISA DAN PERANCANGAN SISTEM …... 18

A. ANALISA SISTEM ... 18

1. Latar Belakang Pengembangan Sistem ... 18

2. Gambaran Umum Sistem ... 19

3. Analisa Kebutuhan ... 21

B. DESKRIPSI UMUM SISTEM ... 22

C. DESAIN PROSES ... 22

1. Diagram konteks ... 23

2. Diagram alir data level 1 Sisi kasir... 25

3. Diagram alir data level 1 Sisi operator ... 25

4. Diagram alir data level 1 Sisi manager ... 26

5. Diagram alir data level 2 untuk proses Penjualan ... 26

6. Diagram alir data level 2 untuk proses Pergudangan ... 27

7. Diagram alir data level 2 untuk proses Admin ... 29

8. Diagram alir data level 3 untuk proses rekam data penjualan ... 30

9. Diagram alir data level 3 untuk proses Update data barang ... 30

10.Diagram alir data Level 3 untuk proses Update data Supplier ... 32

11.Diagram alir data level 3 untuk proses Update User ... 32

12.Kamus data/Data dictionary ... 33

D. DESAIN BASIS DATA …... 35


(16)

xiii

2. Mendefinisikan tabel dalam program

untuk sistem (mapping) ... 36

3. Relasi ternormalisasi ... 37

E. DESAIN INPUT DAN OUTPUT ... 41

1. Input kepada sistem ... 41

2. Output dari sistem ... 42

F. DESAIN ANTARMUKA PEMAKAI ... 43

1. Rancangan Struktur Menu ... 43

A. Manager ... 43

B. Operator Pergudangan ... 44

C. Kasir ... 44

2. Rancangan Halaman Antarmuka ... 45

BAB IV IMPLEMENTASI SISTEM ... 51

A. Implementasi Basis Data …... 51

B. Implementasi Antarmuka Pengguna ... 53

1. Halaman Utama Admin/Manager ... 54

2. Halaman Lihat Data Barang (Manager) ... 55

3. Halaman Lihat Detail Data Barang (Manager) ... 56

4. Halaman Lihat Data Supplier (Manager) ... 56

5. Halaman Lihat Laporan ... 57

6. Halaman Laporan Stok Barang ... 57

7. Halaman Lihat Laporan Penjualan ... 58

8. Halaman Lihat Laporan Penjualan Harian ... 58

9. Halaman Laporan Penjualan Harian ... 59

10.Halaman Lihat Laporan Penjualan Bulanan ... 59

11.Halaman Laporan Penjualan Bulanan ... 60

12.Halaman Lihat Laporan Penjualan Tahunan ... 60

13.Halaman Laporan Penjualan Tahunan ... 61

14.Halaman Lihat Data User... 61

15.Halaman Lihat Detail Data User ... 62


(17)

xiv

17.Halaman Utama Kasir... 63

18.Halaman Bantuan Kasir ... 65

19.Halaman Utama Operator pergudangan ... 66

20.Halaman Lihat Data Barang (Operator pergudangan) ... 67

21.Halaman Lihat Detail Data Barang (Operator pergudangan) ... 67

22.Halaman Lihat Data Supplier (Operator pergudangan) ... 68

23.Halaman Lihat Detail Data Supplier (Operator pergudangan) ... 69

24.Halaman Tambah Data Barang ... 69

25.Halaman Tambah Data Supplier ... 70

26.Halaman Ubah PasswordOperator/Kasir ... 71

27.Halaman Cetak Barcode... 71

C. Implementasi Proses ... 72

1. Implementasi Proses Koneksi ke Basis Data ... 72

2. Implementasi Proses Login ... 74

3. Proses Lihat Data Barang ... 75

4. Proses Cari Data Barang ... 76

5. Proses Lihat Data Supplier ... 77

6. Proses Cari Data Supplier ... 78

7. Proses Lihat Laporan ... 78

a. Proses Lihat Laporan Stok Barang ... 78

b. Proses Lihat Laporan Penjualan Harian ... 81

c. Proses Lihat Laporan Penjualan Bulanan ... 84

d. Proses Lihat Laporan Penjualan Tahunan ... 86

8. Proses Lihat Data User ... 89

9. Proses Tambah Data User ... 90

10.Proses Edit Data User ... 91

11.Proses Hapus Data User ... 93

12.Proses Rekam Penjualan ... 94


(18)

xv

14.Proses Tambah Data Supplier ... 101

15.Proses Edit Data Supplier ... 102

16.Proses Hapus Data Supplier ... 103

17.Proses Tambah Data Barang ... 104

18.Proses Edit Data Barang ... 106

19.Proses Hapus Data Barang ... 107

20.Proses Ubah Password Kasir dan Operator ... 108

21.Proses Cetak Barcode ... 108

D. Evaluasi Dari Pengguna ... 111

BAB V PENUTUP ... 114

A. Kesimpulan ... 114

B. Saran ... 114

DAFTAR PUSTAKA ... 116


(19)

DAFTAR GAMBAR

Gambar 2.1 one to one relationship 2 entitas ………. 11

Gambar 2.2 one to many relationship 2 entitas ……….. 11

Gambar 2.3 many to many relationship 2 entitas ……….. 11

Gambar 3.1 Struktur Organisasi ……….…… 19

Gambar 3.2 Diagram Konteks ……….… 23

Gambar 3.3 DAD level 1 Sisi User ………..… 25

Gambar 3.4 DAD level 1 Sisi operator ……… 25

Gambar 3.5 DAD level 1 Sisi Manager ……… 26

Gambar 3.6 DAD level 2 Proses Penjualan (proses 1) ……… 26

Gambar 3.7 DAD level 2 Proses Pergudangan (proses 2) ………..……… 27

Gambar 3.8 DAD level 2 Proses Admin (proses 3) ……….… 29

Gambar 3.9 DAD level 3 Proses Update Data Barang (proses 1.2) …..… 30

Gambar 3.10 DAD level 3 Proses Update Data Barang (proses 2.2) …… 30

Gambar 3.11 DAD level 3 Proses Update Data Supplier (proses 2.5) ..… 32

Gambar 3.12 DAD level 3 Proses Update User (proses 3.3) ………. 32

Gambar 3.13 Diagram Relasi Entitas ………..… 35

Gambar 3.14 Rancangan Struktur Menu Manager ……….… 43

Gambar 3.15 Rancangan Struktur Menu Operator Pergudangan …….…. 44

Gambar 3.16 Rancangan Struktur Menu Kasir ………..… 44

Gambar 3.17 Antarmuka Login ………..… 45

Gambar 3.18 Antarmuka Halaman Manager dan Operator Pergudangan ………..… 45

Gambar 3.19 Antarmuka Halaman Kasir ……… 46

Gambar 3.20 Antarmuka Halaman Lihat Data (Barang, Supplier, user) ………...… 46

Gambar 3.21 Antarmuka Halaman Detail/Ubah Data Barang ………..… 47

Gambar 3.22 Antarmuka Halaman Detail/Ubah Data Supplier/User …… 47

Gambar 3.23 Antarmuka Halaman Tambah Data (Barang, Supplier, User) ………..… 48

Gambar 3.24 Antarmuka Halaman Pilih Laporan ………..… 48

Gambar 3.25 Antarmuka Halaman Pilih Laporan Penjualan ……….…… 49

Gambar 3.26 Antarmuka Halaman Laporan Penjualan Harian ……….… 49

Gambar 3.27 Antarmuka Halaman Laporan Penjualan Bulanan ……..… 49

Gambar 3.28 Antarmuka Halaman Laporan Penjualan Tahunan …….… 50

Gambar 3.29 Antarmuka Halaman Ubah Password (user, Operator) …… 50

Gambar 4.1 Halaman Login ……….… 54

Gambar 4.2 Pesan Kesalahan Login Gagal ……….… 54

Gambar 4.3 Halaman Utama Admin/Manager ……… 55

Gambar 4.4 Halaman Lihat Data Barang (Manager) ……….… 55

Gambar 4.5 Halaman Detail Data Barang (Manager) ……… 56

Gambar 4.6 Halaman Lihat Data Supplier (Manager) ……… 56

Gambar 4.7 Halaman Lihat Laporan ………..… 57

Gambar 4.8 Halaman Laporan Stok Barang ………..… 57

Gambar 4.9 Halaman Lihat Laporan Penjualan ……….… 58


(20)

Gambar 4.10 Halaman Lihat Laporan Penjualan Harian ……… 58

Gambar 4.11 Halaman Laporan Penjualan Harian ……….……… 59

Gambar 4.12 Halaman Lihat Laporan Penjualan Bulanan ………….…… 59

Gambar 4.13 Halaman Laporan Penjualan Bulanan ………..… 60

Gambar 4.14 Halaman Lihat Laporan Penjualan Tahunan ……… 60

Gambar 4.15 Halaman Laporan Penjualan Tahunan ……….… 61

Gambar 4.16 Halaman Lihat Data User ………..… 61

Gambar 4.17 Halaman Lihat Detail Data User ……… 62

Gambar 4.18 Halaman Tambah User ………..… 62

Gambar 4.19 Halaman Utama Kasir ………...… 63

Gambar 4.20 Pesan Memasukkan Kode Barang ………..…..… 63

Gambar 4.21 Pesan Kesalahan Kode Barang ……….… 64

Gambar 4.22 Halaman Cari Barang Untuk Kasir ………..… 64

Gambar 4.23 Ubah Jumlah Jual Barang ……….… 65

Gambar 4.24 Halaman Pembayaran ……… 65

Gambar 4.25 Halaman Bantuan Kasir ……… 66

Gambar 4.26 Halaman Utama Operator pergudangan ……… 66

Gambar 4.27 Halaman Lihat Data Barang (Operator pergudangan) ….… 67 Gambar 4.28 Halaman Lihat Detail Data Barang (Operator pergudangan) ………..… 68

Gambar 4.29 Halaman Lihat Data Supplier (Operator pergudangan) …… 68

Gambar 4.30 Halaman Lihat Detail Data Supplier (Operator pergudangan) ……… 69

Gambar 4.31 Halaman Tambah Data Barang ……….…… 70

Gambar 4.32 Halaman Tambah Data Supplier ………...… 70

Gambar 4.33 Halaman Ubah PasswordOperator/Kasir ……… 71

Gambar 4.34 Halaman Cetak Barcode Barang ………...… 72


(21)

BAB I

PENDAHULUAN

A. Latar Belakang

Minimarket merupakan suatu tempat di mana kita dapat membeli suatu barang yang kita butuhkan sehari-hari, contohnya alat kantor, alat pribadi, makanan ringan, atau yang lainnya. Di dalam minimarket terdapat beberapa pegawai yang masing-masing memiliki pekerjaan yang berbeda. Salah satu pegawai tersebut adalah kasir. Kasir bertugas dalam hal penjualan dalam melayani pembeli pada saat melakukan pembayaran.

Data merupakan bagian yang sangat penting di dalam suatu peru-sahaan. Oleh karena itu, maka data seharusnya diolah sebaik mungkin sehing-ga dapat digunakan oleh pihak-pihak yang membutuhkan.

Cara yang efektif dan efisien dalam mengolah data salah satunya dengan menggunakan sistem berbasis komputer. Dengan menggunakan sistem berbasis komputer maka proses pengolahan data dapat dilakukan dengan lebih cepat dan akurat serta dapat memperkecil kesalahan yang dilakukan oleh manusia (human error). Berdasarkan uraian di atas dan melihat betapa pentingnya sebuah sistem berbasis komputer, maka penulis ingin membuat sebuah sistem berbasis komputer untuk meningkatkan kinerja kasir dalam pelayanan di minimarket.

Sistem operasi Microsoft Windows sudah tidak asing lagi di kalangan masyarakat pada zaman modern ini. Hampir setiap perusahaan besar di negara kita menggunakan Microsoft Windows untuk membantu menyelesaikan


(22)

pekerjaan mereka di tempat kerja mereka. Banyak perusahaan yang mengeluarkan biaya yang cukup besar untuk mendapatkan sistem operasi

Microsoft windows dikarenakan tuntutan pekerjaan. Seiring dengan mahalnya sistem operasi, maka dibutuhkan sebuah sistem operasi yang lebih murah agar dapat membantu mengurangi pengeluaran dan menambah pemasukan bagi suatu perusahaan.

Sistem operasi Linux adalah sistem operasi yang diberikan secara gratis. Sehingga dapat membantu mengurangi pengeluaran dari suatu perusahaan dan membantu menambah pemasukan bagi perusahaan. Oleh karena itu, pembuatan sistem informasi penjualan minimarket yang akan dibuat, akan berbasis Linux (open source) dengan menggunakan Gambas.

B. Rumusan Masalah

Bagaimana membuat Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux.

C. Batasan Masalah

Penulis membatasi kemampuan sistem dengan batasan sebagai berikut: 1. Sistem Informasi Penjualan dan Persediaan Barang Minimarket memiliki

dua proses yang utama, yaitu:

a. Proses pencatatan penjualan barang b. Proses pengolahan data persediaan barang 2. Pemilik Toko/manager

Pemilik Toko/manager dapat melihat laporan. Laporan terbagi menjadi dua bagian yaitu, laporan persediaan barang dan laporan penjualan (harian,


(23)

bulanan, tahunan). Laporan yang dibuat untuk pihak manager dapat dilihat di dalam sistem ataupun dapat disediakan dalam bentuk kertas. Manager

juga dapat menambah, mengubah, atau menghapus data user/pengguna (kasir, operator pergudangan dan manager).

3. Operator penjualan barang/kasir

Tugas operator penjualan barang/kasir adalah mencatat setiap penjualan barang pada saat terjadi transaksi penjualan. Kasir juga dapat mengubah data password sesuai dengan keinginan kasir.

4. Operator pengolahan data persediaan barang/operator pergudangan

Operator memiliki tugas untuk menambah, mengubah atau menghapus data barang sesuai dengan keadaan barang sebenarnya. Operator

pergudangan juga dapat menambah, mengubah atau menghapus data supplier. Selain itu, operator pergudangan juga dapat mengubah data

passwordoperator pergudangan sesuai dengan keinginannya.

Pengembangan Sistem Informasi Penjualan dan Persediaan Barang Minimarket ini akan menggunakan Gambas dan didukung database Mysql

yang bekerja di Linux.

5. Sistem ini merupakan stand alone.

6. Untuk harga yang bernilai desimal dibulat menjadi bilangan bulat.

7. Sistem menggunakan resolusi monitor 1024 x 768 pixel.

8. Sistem belum dilengkapi dengan barcode reader.

9. Sistem belum memiliki menu untuk fasilitas perhitungan keuangan.


(24)

11. Sistem belum dapat menampilkan grafik urutan penjualan terlaris.

12. Sistem belum memiliki form retur penjualan.

13. Sistem belum memiliki fasilitas untuk mengubah profil toko.

D. Tujuan

Adapun tujuan dari penulisan tugas akhir ini adalah membuat Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux.

E. Metodologi

Metode yang digunakan dalam pembuatan tugas akhir ini adalah metode Waterfall. Metode ini memiliki urutan atau langkah sebagai berikut:

1. Rekayasa sistem, menentukan seluruh kebutuhan ke dalam sistem.

2. Analisis, menentukan kebutuhan sistem secara khas.

3. Perancangan (design), membuat rancangan yang akan diimplementasikan ke sistem.

4. Penulisan program (coding), menerjemahkan hasil rancangan ke dalam bahasa sistem.

5. Pengujian, proses mencari segala kemungkinan kesalahan yang ada pada sistem (tanpa mencari-cari kesalahan).

6. Perawatan, proses penambahan fungsi atau peningkatan performansi.

F. Sistematika Penulisan

Tahapan dalam penulisan ini terbagi dalam beberapa bagian, yaitu : BAB I PENDAHULUAN


(25)

Bab ini berisi mengenai latar belakang pemilihan topik, rumusan masalah, batasan masalah, metodologi, manfaat dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini akan membahas mengenai berbagai acuan dan bahan-bahan yang dapat digunakan untuk menjawab permasalahan yang dihadapi, diantaranya tentang suatu sistem informasi, sistem operasi Linux dan keterangan mengenai software yang digunakan penulis sebagai landasan/dasar dalam penulisan.

BAB III ANALISA DAN PERANCANGAN SISTEM

Bab ini berisi tentang analisa atas permasalahan yang dihadapi, kebutuhan pengguna untuk dikembangkan dan menjadi referensi dalam perancangan sistem yang meliputi perancangan proses yang terjadi, sistem yang akan dibuat, basis data, struktur menu, input output, user interface dan rancangan program.

BAB IV IMPLEMENTASI SISTEM

Bab ini akan menyajikan tahap-tahap implementasi program dari aplikasi yang akan dibuat (implementasi program, basis data, antar muka pengguna).

BAB V PENUTUP

Bab ini berisi mengenai kesimpulan dan saran dari implementasi program secara keseluruhan yang telah dilakukan dalam penulisan ini dan disertai saran-saran untuk pengembangan sistem.


(26)

BAB II

LANDASAN TEORI

A. Sistem Informasi Penjualan dan Persediaan Barang

1. Konsep Dasar Sistem

Menurut Oetomo (2002: 168) sistem merupakan kumpulan elemen yang saling berhubungan satu sama lain yang membentuk satu kesatuan dalam usaha mencapai suatu tujuan.

2. Konsep Dasar Informasi

Informasi adalah pemrosesan data yang diperoleh dari setiap elemen sistem tersebut menjadi bentuk yang mudah dipahami dan merupakan pengetahuan yang relevan yang dibutuhkan oleh orang untuk menambah pemahamannya tentang fakta-fakta yang ada (Oetomo, 2002).

3. Konsep Dasar Sistem Informasi

Menurut Oetomo (2002: 11) sistem informasi dapat didefinisikan sebagai kumpulan elemen yang saling berhubungan satu sama lain yang membentuk satu kesatuan untuk mengintegrasikan data, memproses dan menyimpan serta mendistribusikan informasi. Dengan kata lain, sistem informasi merupakan kesatuan elemen-elemen yang saling berkaitan secara sistematis dan teratur untuk menciptakan dan membentuk aliran informasi yang akan mendukung pembuatan keputusan dan melakukan kontrol terhadap jalannya perusahaan.


(27)

4. Konsep Dasar Sistem Informasi Penjualan dan Persediaan barang

a) Sistem informasi penjualan merupakan sistem yang menyediakan informasi penjualan harian, bulanan, triwulan, semesteran dan tahunan dari masing-masing jenis barang dan supplier secara rinci. Sistem informasi ini terkait erat dengan sistem persediaan barang, karena setiap penjualan akan mengurangi persediaan barang (Oetomo, 2002). b) Sistem informasi persediaan barang. Menurut Oetomo (2002: 170)

dengan sistem informasi dapat diperoleh informasi yang rinci tentang item-item barang yang tersedia, dari mana suppliernya, berapa barang yang rusak, berapa yang harus diorder lagi dan berapa banyak yang telah kadaluarsa.

B. Konsep Dasar Open Source

Seperti tertuang dalam OSD (Open Source Definition) yang terdapat pada situs http://www.opensource.org/docs/definition.php dijelaskan bahwa Open source tidak hanya berarti bebasnya akses terhadap kode sumber. Syarat-syarat distribusi open source software harus memenuhi kriteria-kriteria berikut:

1. Distribusi Ulang Gratis

Lisensi distribusi tidak melarang pihak manapun untuk menjual atau memberikan software sebagai bagian dari distribusi software terpadu yang memuat program-program dari beberapa sumber yang berbeda. Lisensi seharusnya tidak mensyaratkan royalti atau biaya lain untuk hal tersebut.


(28)

2. Kode Sumber

Program harus menyertakan kode sumber, dan harus mengizinkan distribusi kode sumber sebagaimana distribusi bentuk terkompilasinya. Jika sebuah produk tidak didistribusikan dengan kode sumbernya, harus ada sarana yang terpublikasi baik untuk mendapatkan kode sumber dengan mudah. Kode sumber harus dalam bentuk yang memudahkan programmer untuk memodifikasi program tersebut. Bentuk intermediet, seperti output preprosesor atau translator tidak diperbolehkan.

3. Kerja Turunan

Lisensi harus mengizinkan modifikasi dan penerusan hasil kerja oleh orang lain, serta harus mengizinkannya untuk didistribusikan di bawah lisensi yang sama dengan software aslinya.

4. Integritas Penulis Kode Sumber

Lisensi dapat melarang kode sumber untuk didistribusikan ulang dalam bentuk termodifikasi hanya jika lisensi mengizinkan distribusi file-file tambahan beserta kode sumber untuk tujuan memodifikasi progran pada masa pembangunan. Lisensi harus secara eksplisit mengizinkan distribusi software

yang dibangun dari modifikasi kode sumber. Lisensi mungkin mensyaratkan hasil kerja turunan untuk menggunakan nama atau versi yang berbeda dari

software aslinya.

5. Tak Ada Diskriminasi terhadap Pribadi atau Golongan

Lisensi tidak boleh mendiskriminasi pribadi atau golongan manapun. 6. Tak Ada Diskriminasi terhadap Bidang atau Usaha Tertentu


(29)

Lisensi tidak boleh melarang siapapun untuk memanfaatkan program dalam bidang atau usaha tertentu. Misalnya, tidak boleh melarang program untuk digunakan di bidang bisnis, atau digunakan dalam riset genetika.

7. Distribusi Lisensi

Hak-hak yang dimiliki oleh program harus dapat diaplikasikan oleh semua orang yang menerima distribusi program tersebut, tanpa perlu penambahan lisensi oleh pihak-pihak yang bersangkutan.

8. Lisensi Tidak Spesifik untuk Satu Produk

Hak-hak yang dimiliki program bukan karena program tersebut menjadi bagian distribusi software tertentu. Jika program tersebut dipisahkan dari distribusi tersebut dan digunakan atau didistribusikan di bawah lisensi program, semua pihak yang menerima distribusi tersebut mempunyai hak yang sama sebagaimana hak yang dipunyai oleh distribusi software asal. 9. Lisensi Tidak Membatasi Software Lain

Lisensi tidak boleh melakukan pembatasan terhadap software lain yang didistribusikan bersama dengan software yang diberi lisensi. Misanya, lisensi tidak boleh memaksa agar semua program lain yang didistribusikan melalui medium yang sama harus merupakan open source software.

10.Lisensi Harus Netral terhadap Teknologi

Tidak ada syarat lisensi yang merupakan predikat dari suatu teknologi atau gaya antarmuka tertentu.


(30)

C. Diagram Alir Data (DAD)/Data Flow Diagram (DFD)

DFD adalah suatu model logika data atau proses yang dibuat untuk menggambarkan darimana asal data dan kemana tujuan data yang keluar dari sistem, di mana data disimpan, proses apa yang menghasilkan data tersebut dan interaksi antara data yang tersimpan dan proses yang dikenakan pada data tersebut (Kristanto, 2003).

Simbol-simbol pada DFD (Sugiarto, 2003):

= penghasil/pemakai informasi yang berada di luar batas sistem (h/w; orang; program lain; sistem lain)

= trasformasi informasi yang berada di dalam sistem

= item data/kumpulan item data, arah anak panah menunjukkan arah aliran data

= gudang data yang tersimpan untuk dipakai oleh satu atau beberapa proses

Entitas Eksternal

proses

item data

Simpanan data

D. Entity Relationship Diagram (ERD)

Menurut Oetomo (2002: 130) E-R Diagram berfungsi untuk

menggambarkan relasi antar dua entitas atau dua tabel. Ada tiga bentuk relasi, yaitu satu-satu, satu-banyak, dan banyak-banyak (Kristanto, 2003).


(31)

1. One to one relationship 2 entitas

Hubungan antara entitas pertama dengan entitas kedua adalah satu banding satu (hubungan 1 : 1). Contoh: satu penjual melayani satu pembeli.

Gambar 2.1 one to one relationship 2 entitas

2. One to many relationship 2 entitas

Hubungan antara entitas pertama dengan entitas kedua adalah satu banding banyak (hubungan 1 : N). Contoh: satu dosen mengajar banyak mahasiswa

Gambar 2.2 one to many relationship 2 entitas

3. Many to many relationship 2 entitas

Hubungan antara entitas pertama dengan entitas kedua adalah banyak banding banyak (hubungan M : N). Contoh: banyak mahasiswa mengambil banyak matakuliah.

Gambar 2.3 many to many relationship 2 entitas

layani Pembeli

1 1 Penjual

ambil

Mahasiswa M N Matakuliah

mengajar Mahasiswa

1 N Dosen


(32)

E. Basis Data

Kumpulan file-file yang mempunyai kaitan antara satu file dengan file yang lain sehingga membentuk satu bangunan data untuk menginformasikan satu perusahaan, instansi dalam batasan tertentu (Kristanto, 2004).

Database merupakan komponen terpenting dalam pembangunan SI, karena menjadi tempat untuk menampung dan mengorganisasikan seluruh data yang ada dalam sistem, sehingga dapat dieksplorasi untuk menyusun informasi-informasi dalam berbagai bentuk. Database merupakan himpunan data yang saling berkaitan. Data tersebut diorganisasikan sedemikian rupa agar tidak terjadi duplikasi yang tidak perlu, sehingga dapat diolah secara cepat dan mudah untuk menghasilkan informasi (Oetomo, 2002).

F. Kamus Data

Kamus data merupakan kumpulan elemen-elemen/simbol-simbol yang digunakan untuk membantu dalam penggambaran atau pengidentifikasian setiap field di dalam sistem (Sugiarto, 2003). Simbol-simbol dari kamus data berupa:

= Æ terdiri dari + Æ dan ( ) Æ pilihan

{ }* Æ iterasi (perulangan) n kali

** Æ komentar

[ ] Æ memilih salah satu alternatif


(33)

G. Normalisasi

Menurut Wijono (2005) bentuk-bentuk normal adalah suatu aturan yang dikenal pada tabel-tabel dalam basisdata dan harus dipenuhi oleh tabel-tabel tersebut pada level-level normalisasi. Suatu tabel dikatakan berada dalam bentuk tertentu jika memenuhi kondisi tertentu.

1. 1nf

Suatu tabel dikatakan dalam bentuk normal pertama atau 1nf jika dan hanya jika setiap atribut bernilai tunggal untuk setiap baris

2. 2nf

Suatu tabel dikatakan dalam bentuk normal pertama atau 2nf jika dan hanya jika

a) Berada pada bentuk 1nf

b) Semua atribut bukan kunci memiliki dependensi sepenuhnya terhadap kunci primer.

3. 3nf

Suatu tabel dikatakan dalam bentuk normal pertama atau 3nf jika dan hanya jika

a) Berada pada bentuk 2nf

b) Setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci primer.


(34)

H. MySQL

Menurut Sidik (2005: 1) MySQL merupakan software sistem manajemen database (Database Management System – DBMS) yang sangat populer di kalangan pemrograman web, terutama di lingkungan Linux. Kepopuleran MySQL dimungkinkan karena kemudahannya untuk digunakan, cepat secara kinerja query, dan mencukupi untuk kebutuhan database

perusahaan-perusahaan skala menengah kecil.

Software database MySQL kini dilepas sebagai software manajemen

database yang open source, sebelumnya merupakan software database yang

shareware. Shareware adalah suatu software yang dapat didistribusikan secara bebas untuk keperluan penggunaan secara pribadi, tetapi jika digunakan secara komersial maka pemakai harus mempunyai lisensi dari pembuatnya.

Software open source menjadikan software dapat didistribusikan secara bebas dan dapat dipergunakan untuk keperluan pribadi atau pun komersial, termasuk di dalamnya source code dari software tersebut.

1. Jenis Perintah SQL

a) Data Definition Language (DDL)

Merupakan kelompok perintah yang digunakan untuk melakukan pendefinisian database dan pendefinisian tabel. Perintah dalam DDL dapat digunakan untuk membuat tabel, mengubah struktur tabel, menghapus tabel, membuat indeks untuk tabel, dan lain-lain yang bermuara pada


(35)

pembentukan struktur database. Contoh perintah membuat database

mahasiswa: create database mahasiswa.

b) Data Manipulation Language (DML)

Merupakan perintah SQL yang digunakan untuk melakukan manipulasi data dalam database, menambahkan (insert), mengubah (update), menghapus (delete), mengambil dan mencari data (query).

c) Data Control Language (DCL)

Merupakan perintah untuk melakukan pendefinisian pemakai yang boleh mengakses database, dan apa saja privelege-nya. Fasilitas ini tersedia pada sistem manajemen database yang memiliki fasilitas daengan membatasi pemakai dan wewenangnya. Perintah SQL DCL: commit, roolback, grant, revoke. Secara umum DCL digunakan untuk melakukan pengelolaan akses dan manipulasi database, terutama perintah grant dan revoke. Perintah

commit dan rollback merupakan kelengkapan fasilitas yang berfungsi untuk menyimpan atau membatalkan transaksi.

2. Fungsi Agregat

Fungsi agregat merupakan fungsi yang disediakan oleh SQL untuk melakukan ringkasan (summary) data, bukan menampilkan data secara keseluruhan. Perintah di dalam fungsi agregat yang disediakan

a) sum()

Fungsi ini digunakan untuk menjumlahkan isi field yang bertype numerik.


(36)

b) avg()

Fungsi ini digunakan untuk menemukan nilai rata-rata dari isi field yang bertype numerik.

c) max()

Fungsi ini digunakan untuk menemukan nilai terbesar dari isi field yang bertype numerik.

d) min()

Fungsi ini digunakan untuk menemukan nilai terkecil dari isi field yang bertype numerik.

e) count()

Fungsi ini digunakan untuk mengetahui jumlah record dari suatu tabel. Parameter pada count() dapat berupa dana field atau karakter.

I. Gambas

Gambas merupakan salah satu produk open source dan free (Ridho, 2006:1).

Gambas bersifat object oriented dan berjalan di lingkungan Linux. Gambas

memiliki banyak kesamaan dengan Visual Basic namun Gambas bukan merupakan kloning dari Visual Basic tetapi murni proyek open source di bawah naungan GPL (General Public Licence).

Komponen dalam Gambas 1. Menu


(37)

2. Toolbox

Jendela toolbox adalah tempat untuk memilih komponen objek yang akan digunakan dalam aplikasi, seperti label, text, table, combo, radiobutton,

button, dll. 3. Properti

Properti merupakan jendela untuk menentukan nilai-nilan dari suatu objek.

4. Form

Form merupakan tempat untuk meletakkan objek seperti label, button,

text, combo, table, dan sebagainya. 5. Kode Editor

Jendela kode editor digunakan untuk menulis semua kode program seperti


(38)

BAB III

ANALISA DAN PERANCANGAN SISTEM

A. ANALISA SISTEM

1. Latar Belakang Pengembangan Sistem

Dalam sebuah minimarket merekam data penjualan selalu dilakukan oleh setiap user (user yang memiliki jabatan sebagai kasir) dalam minimarket pada saat terjadi transaksi penjualan. Setiap transaksi harus dilakukan dengan cepat dan benar. Oleh karena itu dibutuhkan sistem yang dapat membantu kerja user agar pencatatan dapat berjalan dengan baik dan benar. Selain merekam data penjualan, terdapat proses lain di dalam sebuah minimarket yaitu pencatatan data barang yang dilakukan oleh user

yang memiliki jabatan sebagai operator pergudangan. Setiap terjadi pengurangan, penambahan atau pengubahan, data barang harus selalu dicatat agar data barang selalu konsisten antara data di sistem dan data yang nyata di gudang. User yang memiliki jabatan sebagai admin dapat melakukan proses lihat data barang atau supplier serta user tersebut dapat mengupdate data user yang menggunakan sistem. Sistem yang digunakan minimarket pada umumnya masih menggunakan sistem operasi yang terbebankan oleh biaya lisensi.

Untuk itu sistem informasi penjualan dan persediaan barang minimarket menggunakan Gambas dan database Mysql di Linux dibutuhkan untuk membantu mengatasi permasalahan di atas.


(39)

2. Gambaran Umum Sistem

a) Sistem yang sudah ada

Pada umumnya, sistem informasi yang digunakan dalam minimarket menggunakan sistem yang masih dibebani oleh biaya lisensi. Sehingga sebagian keuntungan minimarket harus dialokasikan ke biaya lisensi. b) Sistem yang akan dibuat

Sistem informasi yang akan dibuat menggunakan sistem operasi linux. Dengan menggunakan sistem ini, pihak minimarket tidak dibebani oleh biaya lisensi dari sistem informasi yang digunakan.

Struktur organisasi minimarket secara garis besarnya adalah sebagai berikut:

Manager/Admin

Kasir Operator

Pergudangan

Gambar 3.1 Struktur Organisasi

Minimarket dipimpin oleh manager dalam sistem ini berperan sebagai admin yang memiliki bawahan sebagai berikut:

a) bagian penjualan/user

b) bagian pergudangan/operator pergudangan

Pengguna sistem informasi penjualan dan pergudangan minimarket ini adalah user, operator pergudangan dan manager/admin. Untuk dapat menjadi pengguna sistem ini, maka orang harus mendapat persetujuan dari


(40)

manager/admin minimarket yang berhak penuh terhadap sistem untuk menjadi user. Data user dimasukkan ke sistem oleh admin. User dapat menggunakan sistem ini jika data user telah tercatat di dalam sistem.

User betugas untuk mencatat setiap transaksi penjualan yang terjadi. Orang yang dapat menjadi user adalah orang yang cepat dan lincah dalam menggunakan keyboard. Dalam sistem ini user memasukkan data ke sistem sebagian besar menggunakan keyboard. User tidak dapat menambah, mengubah atau menghapus data barang. User dapat mengubah data password dengan cara memasukkan password yang saat ini di gunakan yang akan disesuaikan dengan password yang ada pada tempat penyimpanan. Jika password sesuai, kemudian user memasukkan

password baru sesuai dengan keinginan user.

Operator pergudangan bertanggung jawab penuh terhadap kebenaran data barang yang ada pada sistem. Artinya, jika ada penambahan barang baru atau ada data barang yang berubah, maka data yang ada pada sistem harus disesuaikan dengan kenyataan digudang.

Operator pergudangan harus teliti pada saat memasukkan, mengubah atau menghapus data barang. Data barang yang ada pada sistem harus sesuai dengan barang yang ada pada gudang. Hal ini dikarenakan data barang berpengaruh pada sistem penjualan dan laporan persediaan barang.

Operator pergudangan juga dapat mengubah password dimana cara mengubah password tidak berbeda dengan cara user mengubah password.


(41)

Manager dalam sistem ini berperan sebagai admin. Admin bertugas sebagai pengendali utama sistem. Admin dapat melihat laporan penjualan harian, bulanan, tahunan dan melihat laporan persediaan barang. Admin

juga dapat mengubah data manager/admin, user, operator pergudangan.

Admin memiliki hak penuh atas sistem. 3. Analisa Kebutuhan

Sistem yang akan dikembangkan ini diharapkan dapat digunakan untuk membantu user dan operator pergudangan dalam merekam data penjualan maupun kontrol sirkulasi barang agar dapat berjalan secara efektif dan efisien. Rincian kebutuhan pemakai sistem adalah sebagai berikut:

Tabel 3.1 Kebutuhan Pemakai

No Pemakai Kebutuhan

1 Bagian kasir a) Mencatat transaksi penjualan b) Mengubah data password

2 Bagian operator pergudangan a) Mencari data barang/supplier

b) Melihat detail data barang/supplier

c) Mencatat data barang baru

d) Mengubah/menghapus data barang e) Menambah data supplier baru f) Mengubah/menghapus data supplier

g) Mengubah data password

3 Bagian manager/admin a) Mencari data barang/supplier

b) Melihat detail data barang/supplier

c) Melihat laporan penjualan d) Mencari data user

e) Menambah data user


(42)

Hardware dan software yang digunakan penulis dalam pembuatan sistem ini: 1) Software

a. Bahasa pemrograman : Gambas 1.9.23 b. Database : MySql 5.0.18 c. Sistem operasi : SUSE Linux 10.1 2) Hardware

a. Proccessor : Intel(R) Pentium(R) 4 CPU 2.80GHz

b. RAM : 1016 MB

c. VGA : 128 MB

d. HardDisk : 80 GB

e. Resolusi monitor : 1024 x 768 pixel

B. DESKRIPSI UMUM SISTEM

Nama Sistem : Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux.

Tujuan sistem : membuat Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux agar kinerja user, manager dan operator

pergudangan lebih efektif dan efisien.

C. DESAIN PROSES

Proses jalannya sistem dapat dilihat dari proses aliran data yang terjadi melalui diagram konteks yang dipandang dari 3 sisi pengguna (User), yaitu: sisi User, Operator Pergudangan dan sisi manager seperti pada gambar berikut.


(43)

1. Diagram konteks

Gambar 3.2 Diagram Konteks

0 SI Penjualan dan

Pergudangan kasir

manager

operator data barang terupdate

Pesan interaksi

data supplier terupdate

Data login password lama password baru data supplier terupdate data supplier baru data hapus supplier

data barang terupdate data barang baru data hapus barang

data login Data cari barang password baru Data jumlah jual barang jumlah bayar

Password lama Data transaksi

pesan interaksi data barang

data jumlah jual barang jumlah kembalian dat a u ser te ru pda te da ta u s e r te ru pd at e d ata su ppli er dat a l og in dat a c ar i lap or an dat a c ar i ba ra ng d ata ba rang d at a ca ri su ppli er dat a u ser baru dat a h apu s us er d ata lapo ra n P esa n i nter aks i

Pada gambar diagram konteks di atas ada beberapa data menggunakan data komposit. Maksudnya, dilakukan pengelompokan data dengan tujuan agar gambar diagram konteks tidak terlalu kompleks dan mudah dimengerti. Berikut penjelasan dari data-data komposit diagram konteks:

a) Data login meliputi id_User(kasir, operator, manager), password.

b) Data User menggantikan data kasir, operator pergudangan dan manager, yaitu meliputi ID user, nama user, alamat, nomer telepon, jenis kelamin, tempat lahir, tanggal lahir, password, jabatan, foto.

c) Password baru dan password lama merupakan data password yang digunakan untuk mengganti password dari user kasir dan user operator


(44)

d) Pesan interaksi merupakan segala bentuk pesan dari sistem ke User yang bertujuan sebagai sarana komunikasi User dengan sistem.

e) Data barang meliputi ID barang, nama barang, jenis barang, warna, jumlah barang, jumlah minimum, discount, harga beli, harga jual, tanggal kadaluarsa, batas kadaluarsa, keterangan barang, ID supplier.

f) Data supplier meliputi ID supplier, nama supplier, alamat toko, nomer telepon, status supplier, website/email.

g) Data laporan merupakan data yang sama dengan data jual meliputi ID jual (ID nota penjualan), tanggal penjualan, jumlah barang yang dijual, total harga, ID user, ID barang.

h) Data cari (barang, supplier, laporan) merupakan data yang digunakan sebagai kata kunci untuk mencari data yang bersangkutan.

i) Data hapus berkaitan dengan data cari, dimana merupakan kata kunci untuk mencari data yang bersangkutan yang akan dihapus.

j) Data transaksi merupakan ID barang, jumlah jual barang.

k) Jumlah bayar atau jumlah kembalian merupakan harga dalam satuan rupiah yang harus dibayar atau dikembalikan.

Dari diagram konteks di atas terdapat proses besar yang dapat dipecah menjadi beberapa level proses. Sehingga sistem yang digambarkan menjadi mudah untuk dimengerti.


(45)

2. Diagram alir data level 1 Sisi kasir 1 Penjualan Kasir data login pesan interaksi user barang jual Data cari barang

password baru Data jumlah jual barang jumlah bayar

data barang

data jumlah jual barang jumlah kembalian

password valid password lama data kasir data barang Data jumlah jual barang

data jual Password lama

Data transaksi

Gambar 3.3 DAD level 1 Sisi kasir

Pada level 1 untuk sisi kasir terdapat tempat penyimpanan jual. Tempat penyimpanan jual akan digunakan sebagai tempat penyimpanan laporan.

3. Diagram alir data level 1 Sisi operator

2 Pergudangan operator

Data login

Pesan interaksi user

barang

data barang terupdate

supplier Data supplier

password lama password baru

data barang

data barang valid

Data op_pergd Password lama

password valid data supplier valid

data supplier terupdate data supplier terupdate data supplier baru data hapus supplier

data barang terupdate data barang baru data hapus barang


(46)

4. Diagram alir data level 1 Sisi manager

Gambar 3.5 DAD level 1 Sisi Manager 5. Diagram alir data level 2 untuk proses Penjualan

Gambar 3.6 DAD level 2 Proses Penjualan (proses 1)

Pada level 2 untuk proses penjualan terdapat 4 proses dan 3 tempat penyimpanan yaitu proses validasi login, rekam data penjualan, ubah

password dan validasi password dan tempat penyimpanannya adalah jual, barang, dan user(user dengan jabatan user). Proses rekam data penjualan

manager

data user terupdate

data user terupdate data supplier

data login data cari laporan

3 Admin user jual Data barang data user data user valid data cari barang

data barang

barang Data supplier supplier

data laporan data cari supplier

data user baru data hapus user

data laporan Pesan interaksi kasir 1.1 Validasi login Data login

Data login invalid

1.2 Rekam data penjualan 1.3 Ubah password Data login valid Data login valid user data kasir Password lama password lama password baru barang Data cari barang

jumlah jual barang jumlah bayar jumlah kembalian Data barang

data jumlah jual barang

data jumlah jual barang Data barang jual Data jual password valid Pesan gagal 1.4 Validasi password password baru

password tidak valid data kasir Data transaksi


(47)

digunakan untuk mencatat setiap transaksi penjualan yang terjadi. Proses ini menggunakan tempat penyimpanan barang untuk pengecekan kebenaran data barang dan tempat penyimpanan jual untuk menyimpan hasil dari transaksi penjualan. Proses validasi login merupakan proses pertama yang dilakukan

user sebelum proses yang lain dapat dilakukan. Proses ini berguna untuk mengecek kebenaran data dari pengguna atau user dengan tempat penyimpanan user. Proses ubah password digunakan oleh user pada saat ingin mengubah password lama yang ada pada tempat penyimpanan user menjadi

password baru sesuai dengan yang diinginkan user. Proses validasi password

digunakan untuk mengecek kebenaran antara password yang dimasukkan dengan password lama yang terdapat pada tempat penyimpanan.

6. Diagram alir data level 2 untuk proses Pergudangan

operator Validasi login2.1

Data login Data login invalid

2.2 Update data barang 2.3 Ubah password Data login valid Data login valid user Data op_pergd Password lama Pas s wor d va lid Password lama Password baru barang Data barang valid

Data barang Data barang terupdate

Data barang terupdate

supplier Data supplier 2.4 Validasi password Pesan gagal password baru password tidak valid Pesan interaksi 2.5 Update data supplier Data login valid Data supplier Data supplier valid

Pesan interaksi Data supplier terupdate

Data supplier terupdate

Data hapus barang Data barang baru Data hapus supplier Data supplier baru


(48)

Pada level 2 untuk proses pergudangan terdapat 5 proses dan 3 tempat penyimpanan yaitu proses validasi login, update data barang, ubah password,

validasi password, update data supplier dan tempat penyimpanannya adalah barang, user (user dengan jabatan operator) dan supplier. Proses update data barang digunakan operator pergundangan untuk menambah, mengubah atau menghapus data barang dengan menggunakan tempat penyimpanan barang. Proses validasi login merupakan proses pertama yang dilakukan operator

pergudangan sebelum proses yang lain dapat dilakukan. Proses ini berguna untuk mengecek kebenaran data dari pengguna atau operator pergudangan dengan tempat penyimpanan user. Proses ubah password digunakan oleh

operator pergudangan pada saat ingin mengubah password lama yang ada pada tempat penyimpanan user menjadi password baru sesuai dengan yang diinginkan operator pergudangan. Proses update data supplier digunakan

operator pergundangan untuk menambah, mengubah atau menghapus data

supplier dengan menggunakan tempat penyimpanan supplier. Proses validasi password digunakan untuk mengecek kebenaran antara password yang dimasukkan dengan password lama yang terdapat pada tempat penyimpanan.


(49)

7. Diagram alir data level 2 untuk proses Admin Manager 3.2 Validasi login 3.3 Update User Data login

Data login invalid

Data login valid

user data user

Data user terupdate

3.1 Lihat laporan jual Data laporan Data login valid Data cari laporan

Data laporan

data user data user valid pesan gagal

pesan interaksi Data user terupdate

3.4 Lihat data barang Data login valid barang Data barang

Data cari barang Data barang pesan gagal

Data hapus user Data user baru

3.5 Lihat data supplier supplier Data supplier Data login valid Data cari supplier

pesan gagal Data supplier

Gambar 3.8 DAD level 2 Proses Admin (proses 3)

Pada level 2 proses admin terdapat 5 proses yaitu lihat laporan, lihat data barang, lihat data supplier, validasi login, dan update User. Proses lihat data barang, lihat data supplier dan lihat laporan digunakan manager untuk menampilkan data supplier, persediaan barang atau laporan penjualan harian, bulanan atau tahunan. Proses ini mengambil data dari tempat penyimpanan jual, tempat penyimpanan supplier atau tempat penyimpanan barang. Proses

validasi login merupakan proses pertama yang dilakukan manager sebelum proses yang lain dapat dilakukan. Proses ini berguna untuk mengecek kebenaran data dari pengguna atau manager dengan tempat penyimpanan

manager. Proses update User digunakan untuk mengubah data User


(50)

Proses ini menggunakan tempat penyimpanan manager, user, dan operator

pergudangan.

8. Diagram alir data level 3 untuk proses rekam data penjualan

kasir 1.2.1 Rekam penjualan login valid user barang Data cari barang

jumlah jual barang jumlah bayar jumlah kembalian Data barang

data jumlah jual barang

data jumlah jual barang Data barang jual Data jual 1.2.2 Cari data barang Data barang login valid Data transaksi Data transaksi Pesan interaksi Data kasir

Gambar 3.9 DAD level 3 Proses Update Data Barang (proses 1.2)

9. Diagram alir data level 3 untuk proses Update data barang

operator 2.2.2 Edit data barang 2.2.1 Tambah data barang 2.2.3 Hapus data barang barang

Data barang baru Data barang baru

Data barang Data hapus barang

Data barang terupdate Data barang terupdate

Informasi hapus data Pesan gagal Pesan gagal 2.2.4 Validasi data barang Data barang tidak valid

Data barang valid Data barang tidak valid supplier Data barang Data supplier login valid login valid login valid Data barang terupdate


(51)

Pada level 3 untuk proses update data barang terdapat 4 proses yaitu proses tambah data barang, edit data barang, hapus data barang, validasi data barang dan terdapat 2 tempat penyimpanan yaitu barang dan supplier. Proses tambah data barang digunakan untuk menambah data barang baru. Proses ini menggunakan tempat penyimpanan barang untuk mengecek data barang pada proses validasi data barang apakah data barang valid atau tidak. Tempat penyimpanan barang pada proses ini terutama digunakan untuk menyimpan data barang yang baru. Sedangkan tempat penyimpanan supplier digunakan untuk mengecek apakah ID supplier yang dimasukkan sama dengan ID yang berada pada tempat penyimpanan supplier pada saat menyimpan data yang baru. Proses edit data barang digunakan untuk mengedit data barang yang sudah ada. Proses ini menggunakan tempat penyimpanan barang untuk mengecek data barang apakah data barang valid atau tidak. Tempat penyimpanan barang pada proses ini terutama digunakan untuk menyimpan data barang yang telah terupdate. Proses hapus data digunakan untuk menghapus data barang yang sudah tidak digunakan lagi. Proses ini menggunakan tempat penyimpanan barang untuk mengecek kebenaran data barang.


(52)

10. Diagram alir data Level 3 untuk proses Update data Supplier operator 2.5.2 Edit data supplier 2.5.1 Tambah data supplier 2.5.3 Hapus data supplier supplier

Data supplier baru Data supplier baru

Data supplier Data hapus supplier

Data supplier terupdate Data supplier terupdate

pesan hapus data Pesan gagal Pesan gagal 2.5.4 Validasi data supplier Data supplier tidak valid

Data supplier valid Data supplier tidak valid Data supplier login valid login valid login valid Data supplier terupdate

Gambar 3.11 DAD level 3 Proses Update Data Supplier (proses 2.5)

11. Diagram alir data level 3 untuk proses Update User

manager 3.3.2 Edit data user

3.3.1 Tambah data user 3.3.3 Hapus data user

Data user baru Data user baru

Data hapus user

Data user terupdate Data user terupdate

Informasi hapus data Pesan gagal Pesan gagal 3.3.4 Validasi data user Data user tidak valid Data user tidak valid login valid login valid login valid Data user terupdate

user

Data user va

lid Data user Dat a user

Gambar 3.12 DAD level 3 Proses Update User (proses 3.3)

Pada DAD level 3 proses update data supplier dan DAD level 3 proses


(53)

Kedua proses ini memiliki fungsi yang sama yaitu mengecek apakah data

supplier atau data User yang ditambahkan atau diubah tersebut sudah sesuai dan benar dengan data yang berada pada tempat penyimpanan supplier dan

User.

12. Kamus data/Data dictionary

Data Penjelasan

Angka { 0-9 }

Huruf { A-Z | a-z }

data login { id_user + passwd }

data loginvalid * keadaan login sudah valid atau benar * data login invalid * keadaan login belum benar ataubelum valid * data user id_user + nm_user + alamat + no_telp + jk +

tmp_lhr + tgl_lhr + passwd + status data user baru * data user yang terbaru dalam sistem * data user terupdate * data user yang telah terupdate *

data uservalid * data user sudah benar atau sudah valid * data user tidak valid * data user tidak benar atau tidak valid *

id_user { angka }5

nm_user { huruf | | }20

Alamat { huruf | | }50

no_telp { angka }12

Jk { pria | wanita }

tgl_lhr Tanggal

tmp_lhr { huruf }10

Tanggal dd + / + mm + / + yyyy

Dd { 01-31 }

Mm { 01-12 }

Yyyy { 19 | 20 }+{ angka }2

Passwd { huruf | angka }8

Status aktif | pasif

pesan gagal * salah satu pesan dari sistem yang menunjukkan bahwa proses yang dilewati gagal *

informasi hapus data * salah satu informasi bahwa data telah terhapus * data supplier baru * data supplier yang terbaru dalam sistem *

data supplier id_supplier + nm_supp + alamat_toko + no_telp + status + website

id_supplier { angka }6

nm_supp { huruf | | }20

alamat_toko { huruf | | }50

data supplier terupdate * data supplier yang telah terupdate * data supplier tidak valid * data supplier tidak benar atau tidak valid *


(54)

data suppliervalid * data supplier sudah benar atau sudah valid *

data barang { id_brg + nm_brg + jenis + warna + jml_brg + jml_min + discount + hrg_beli + harga + v_date + batas + ket + kd_supply }

id_brg { angka }5

nm_brg { huruf }20

Jenis { huruf }20

Warna { huruf }10

jml_brg { angka }3

jml_min { angka }3

Discount { angka }2 + %

hrg_beli Rp + { angka }7

Harga Rp + { angka }7

v_date Tanggal

Batas { angka }3 + hari

Ket { huruf }60

kd_supply id_supplier

data barang baru * data barang yang terbaru dalam sistem * data barang terupdate * data barang yang telah terupdate *

data barang tidak valid * data barang yang tidak benar atau tidak valid * data barang valid * data barang yang sudah benar atau sudah valid * data cari barang { nm_brg | ket | supplier }

data jual { id_jual | tgl_jual | jml_jual_brg | tot_harga | kd_user | kd_brg }

id_jual { angka }6

tgl_jual tanggal + jam

Jam hh + : + mm + : + ss

Hh { 00-23 }

Mm { 00-59 }

Ss { 00-59 }

jml_jual_brg { angka }3

tot_harga Rp + { angka }7

kd_user id_user

kd_brg id_brg

data laporan data jual

pesan interaksi * segala bentuk informasi dari sistem ke User

sebagai sarana komunikasi *

password baru * password yang terbaru dalam sistem *

password lama * password yang ada pada sistem sekarang *

passwordvalid * password sudah benar atau sudah valid *

password tidak valid * password tidak benar atau tidak valid * jumlah kembalian Rp + { angka }7

data jumlah jual barang { angka }3 jumlah bayar Rp + { angka }7 jumlah jual barang { angka }3


(55)

D. DESAIN BASIS DATA

1. Entity Relationship Diagram (ERD)

user jual barang M id_user nm_user passwd alamat no_telp

jk tmp_lhr id_brg

nm_brg jml_brg jum_min v_date discount id_jual waktu jml_jual_brg supply supplier id_supplier nm_supplier status no_telp 1 N alamat_toko N tgl_lhr jabatan status website jenis_brg warna hrg_beli harga ket batas id_jenis

Gambar 3.13 Diagram Relasi Entitas

Dari ERD di atas dapat dilihat banyak user dapat menjual banyak barang sehingga menghasilkan sebuah tabel baru yaitu tabel jual. Dalam hal ini, user

yang berperan adalah user yang memiliki jabatan kasir. Tabel jual digunakan untuk mencatat setiap transaksi penjualan. Key dari tebel jual adalah id_jual.

Di dalam barang akan terdapat atribut kd_supply, hal ini disebabkan oleh relasi antara supplier dan barang one-to-many (1 to N). Kd_supply ini digunakan untuk menemukan supplier dari barang tersebut. Satu supplier


(56)

hanya disupply oleh satu supplier. Ini dimaksudkan untuk mempermudah dalam permintaan barang atau komplain mengenai barang.

2. Mendefinisikan tabel dalam program untuk sistem (mapping)

Sesuai dengan fungsi pertama yaitu penyimpanan data maka penyim-panan data yang ada pada Sistem Informasi ini dibagi dalam suatu kumpulan data yang disimpan dalam suatu file berbentuk tabel. Himpunan entitas tersebut digambarkan pada tabel-tabel seperti di bawah ini:

1. Tabel entitas user

id_user nm_user Alamat no_telp jk

tmp_lhr tgl_lhr Passwd Jabatan status

Dalam tabel user terdapat 10 atribut. Key dari tabel user adalah id_user. Status pada tabel user diatas bermaksud apakah user tersebut masih aktif atau tidak. Untuk user yang berstatus kasir tidak dapat dihapus jika user tersebut pernah melakukan transaksi penjualan. Data user yang dapat dihapus adalah data user yang tidak memiliki hubungan dengan data-data yang ada pada sistem.

2. Tabel entitas barang

id_brg nm_brg jenis_brg id_jenis warna jml_brg

jml_min discount hrg_beli harga v_date ket Batas

Key di dalam tabel barang adalah id_brg. Id_jenis pada tabel barang digunakan untuk menentukan id barang baru yang akan dimasukkan


(57)

selanjutnya. Id_brg ditentukan berdasarkan id_jenis pada jenis barang tertentu dengan melihat acuan nilai id_brg yang paling terakhir. Yang dimaksud dengan v_date pada tabel barang adalah tanggal kadaluarsa. Batas pada tabel barang berarti batas untuk mengingatkan barang tersebut sudah mendekati tanggal kadaluarsa.

3. Tabel entitas supplier

id_supplier nm_supplier no_telp alamat status website

Di dalam tabel supplier, id_supplier merupakan sebuah kunci (key). Status pada tabel di atas berarti apakah supplier tersebut masih aktif mensupply barang atau tidak.

4. Tabel entitas jual

id_jual waktu jml_jual_brg

Tabel jual merupakan tabel yang terbentuk karena adanya hubungan

many-to-many (M to N) antara tabel user dan tabel barang. Di dalam tabel jual, id_jual merupakan kunci (key). Jika terjadi hubungan many-to-many, setiap key dari tabel yang berhubungan akan masuk ke tabel yang baru terbentuk. Kedua key tersebut disebut kunci tamu (foreign key).

3. Relasi ternormalisasi

Basis data dalam suatu sistem harus mengalami proses normalisasi. Syarat normalisasi suatu basis data adalah sebagai berikut:

1. Bentuk normal pertama


(58)

atribut bernilai tunggal untuk setiap baris.

user(id_user, nm_user, alamat, no_telp, jk, tmt_lhr, tgl_lhr, passwd, jabatan, status)

id_user nm_user Alamat no_telp jk

tmp_lhr tgl_lhr Passwd Jabatan status

barang(id_brg, nm_brg, jenis_brg, id_jenis, warna, jml_brg, jml_min,

discount, hrg_beli, harga, v_date, ket, batas, kd_supply)

id_brg nm_brg jenis_brg id_jenis warna jml_brg jml_min

discount hrg_beli Harga v_date ket batas kd_supply

Kd_supply muncul disebabkan relasi antara tabel supplier dan barang one-to-many (1 to M). kd_supply digunakan untuk mencari data supplier dari barang tersebut.

supplier(id_supplier, nm_supp, alamat, no_telp, nm_toko) id_supplier nm_supp alamat no_telp nm_toko

jual (id_jual, kd_brg, kd_user, waktu, jml_jual_brg)

id_jual kd_brg kd_user waktu jml_jual_brg

Pada tabel jual terdapat 3 key yaitu id_jual, kd_brg, kd_user. Kd_brg merupakan atribut yang berasal dari tabel barang dan bernilai sama dengan id_brg pada tabel barang. Sedangkan kd_user merupakan atribut yang berasal


(59)

dari tabel user dengan jabatan kasir, kd_user bernilai sama dengan id_user. Kedua atribut tersebut masuk ke dalam tabel jual karena hubungan antara tabel

user dan barang adalah many-to-many (M to N). 2. Bentuk normal kedua

Suatu tabel dikatakan dalam bentuk normal kedua (2nf) jika tabel berada pada bentuk 1nf dan semua atribut bukan kunci memiliki dependensi sepenuhnya terhadap kunci primer.

user(id_user, nm_user, alamat, no_telp, jk, tmt_lhr, tgl_lhr, passwd, jabatan, status)

Dari setiap atribut pada tabel user sudah memiliki dependensi sepenuhnya terhadap kunci primer

barang(id_brg, nm_brg, jenis_brg, id_jenis, warna, jml_brg, jml_min, discount, hrg_beli, harga, v_date, ket, batas, kd_supply)

Pada tabel barang terdapat atribut id_jenis yang memiliki dependensi terhadap atribut jenis_brg sehingga perlu dibuat tabel baru dengan nama tabel jenis. Sehingga tabel barang dan tabel jenis akan menjadi:

barang(id_brg, nm_brg, jenis_brg, warna, jml_brg, jml_min, discount, hrg_beli, harga, v_date, ket, batas, kd_supply)

jenis(id_jenis, jenis)

Dengan tabel jenis ini maka setiap atribut pada tabel barang memiliki dependensi terhadap kunci primer. Begitu juga dengan tabel jenis, atribut


(60)

jenis memiliki dependensi terhadap id_jenis.

supplier(id_supplier, nm_supp, alamat, no_telp, nm_toko)

Pada tabel supplier setiap atribut sudah memiliki dependensi terhadap kunci primer.

jual (id_jual, kd_brg, kd_user, waktu, jml_jual_brg)

Pada tabel jualsetiap atribut sudah memiliki dependensi terhadap kunci primer.

3. Bentuk normal ketiga

Suatu tabel dikatakan dalam bentuk normal ketiga (3nf) jika tabel berada pada bentuk 2nf dan setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci primer.

Dari tabel-tabel di bawah ini sudah berbentuk normal ketiga. Hal ini disebabkan setiap tabel dibawah ini memiliki makna tunggal untuk setiap atribut. Kemudian dari setiap tabel memiliki atribut-atribut yang bergantung pada kunci primer. Kemudian setiap tabel memiliki atribut-atribut yang bukan kunci tidak memiliki dependensi transitif terhadap kunci primer.

user(id_user, nm_user, alamat, no_telp, jk, tmt_lhr, tgl_lhr, passwd, jabatan, status)


(61)

hrg_beli, harga, v_date, ket, batas, kd_supply) jenis(id_jenis, jenis)

supplier(id_supplier, nm_supp, alamat, no_telp, nm_toko) jual (id_jual, kd_brg, kd_user, waktu, jml_jual_brg)

E. DESAIN INPUT DAN OUTPUT 1. Input kepada sistem

Agar sistem dapat berjalan sebagaimana mestinya, sebuah sistem membutuhkan input yang memadai dengan ketentuan yang telah ditentukan.

Input tersebut dapat berupa data variabel, yaitu: 1. No Id

2. password 3. nama User

4. alamat 5. no telepon 6. jenis kelamin 7. tempat lahir 8. tanggal lahir 9. id barang 10.nama barang

11.jumlah barang 12. discount

13.harga barang 14.tanggal kadaluarsa 15.jumlah bayar 16.kode supplier

17.nama supplier

18.alamat toko 19.website/email

Dari keseluruhan input yang dibutuhkan sistem. Semua input tersebut tidak dimasukkan secara serentak dan bersamaan, tetapi melalui jendela-jendela yang berbeda.


(62)

2. Output dari sistem

Sebuah sistem tentunya dibangun untuk memberikan kemudahan bagi penggunanya dalam melakukan pekerjaan mulai dari proses hingga hasil

output yang dibutuhkan. Sistem Informasi Penjualan dan Persediaan Barang Minimarket Berbasis Linux memiliki beberapa output sebagai berikut:

a) Informasi yang tentang penjualan barang: a. Informasi total harga

b. Informasi harga barang c. Informasi pembayaran

d. Informasi jumlah sisa pembayaran

b) Informasi yang terupdate mengenai persediaan barang a. Informasi data barang

b. Informasi grafik barang

c. Informasi tanggal kadaluarsa barang

c) Laporan penjualan harian, bulanan dan tahunan d) Laporan persediaan barang/stok barang


(63)

F. DESAIN ANTARMUKA PEMAKAI

1. Rancangan Struktur Menu

a) Manager

Login

Lihat Data Laporan Menu User Keluar

Barang

Supplier Detail Barang

Cetak Barcode

Lihat Data Supplier

Lihat Laporan

Stok Barang

Penjualan

Laporan Penjualan Harian

Laporan Penjualan Bulanan

Laporan Penjualan Tahunan

Lihat Data User

Detail Data User

Tambah User

Tambah User

Keluar


(64)

b) Operator Pergudangan

Login

Lihat Data Tambah Data Menu Operator Keluar Barang

Supplier

Detail Barang

Cetak Barcode

Lihat Data Supplier

Barang

Lihat Data Supplier

Supplier

Ubah Profil Keluar

Tambah Barang

Detail Barang

Tambah Barang Lihat Data Supplier

Gambar 3.15 Rancangan Struktur Menu Operator Pergudangan

c) Kasir

Login

Menu Kasir Bantuan

Keluar Bantuan

Keluar

Ubah Profil


(65)

2. Rancangan Halaman Antarmuka

LOGIN

ID user

Password

Login Tutup

Gambar 3.17 Antarmuka Login

Petunjuk/bantuan menu Petunjuk hak akses

MENU MANAGER/OPERATOR

FOTO

MANAGER/OPERATOR

Tentang penulis


(66)

MENU KASIR

NAMA MINIMARKET

Tentang penulis

Petunjuk/bantuan kasir

Total Bayar

Tabel penjualan barang

Kode Nota

Kode barang

Gambar 3.19 Antarmuka Halaman Kasir

Tentang penulis

Keterangan tabel (Jika perlu) Nama

Tabel data barang/supplier/user

Lihat Data Barang/Supplier/user

Tutup

Detail data barang/ supplier/user: Detail1: Detail2: Detail3: Detail4: Dst…

Cari Detail

Kategori 1 Kategori 2


(67)

Detail data barang: Detail1:

Detail2: Detail3: Detail4: Detail5: Detail6: Detail7: Detail8: Detail9: Dst…

Detil Data Barang

Tutup

Grafik penjualan barang bulanan untuk tiap tahun

Cetak barcode Ubah/Simpan Hapus

Gambar 3.21 Antarmuka Halaman Detail/Ubah Data Barang

Detail data supplier/user: Detail1:

Detail2: Detail3: Detail4: Detail5: Detail6: Detail7: Detail8: Detail9: Dst…

Detil Data Supplier/User

Tutup

Petunjuk/ bantuan/ keterangan ubah data supplier/user

Ubah/Simpan Hapus


(68)

Detail data Barang/supplier/user: Detail1:

Detail2: Detail3: Detail4: Dst…

Tambah Data Barang/Supplier/User

Tutup

Petunjuk/ bantuan/ keterangan tambah data barang/ supplier/user

Tambah Ulangi

Gambar 3.23 Antarmuka Halaman Tambah Data (Barang, Supplier, User)

Tutup Stok barang

Penjualan

LIHAT LAPORAN


(69)

Tutup

Harian

Pilih Kategori Penjulan

LAPORAN PENJUALAN

Tahunan Bulanan

Gambar 3.25 Antarmuka Halaman Pilih Laporan Penjualan

Tutup

Harian

LAPORAN PENJUALAN

Tahunan Bulanan

Pilih Tanggal dd mmm yyyy OK

Gambar 3.26 Antarmuka Halaman Laporan Penjualan Harian

Tutup

Harian

LAPORAN PENJUALAN

Tahunan Bulanan

Pilih Tahun Pilih Bulan OK


(70)

Tutup

Harian

LAPORAN PENJUALAN

Tahunan Bulanan

Pilih Tahun OK

Gambar 3.28 Antarmuka Halaman Laporan Penjualan Tahunan

FOTO IDuser

Namauser

Alamat user

Masukkan password

Password baru

Verifikasi Password baru


(71)

BAB IV

IMPLEMENTASI SISTEM

A. Implementasi Basis Data

Setelah membuat perancangan basis data dalam tahap perancangan, maka tahap selanjutnya adalah tahap merealisasikan ke bentuk basis data sebenarnya. Pada bagian awal telah disebutkan sistem ini menggunakan basis data MySql dan menggunakan bahasa pemrograman Gambas pada sistem operasi Linux, maka basis data sistem akan dibuat menggunakan Module pada Gambas. Jika basis data pada MySql belum ada, maka basis data akan dibuat secara otomatis oleh Module ini pada saat sistem dijalankan.

Module yang digunakan diberi nama Mdatabase, berikut adalah programnya:

PROCEDURE CreateDatabase(hConn AS Connection, sDatabase AS String) DIM hTable AS Table

' membuat tabel barang

hTable = hConn.Tables.Add("barang", "MyISAM") WITH hTable

.Fields.Add("id_brg", gb.Integer) .Fields.Add("nm_brg", gb.String, 60) .Fields.Add("jenis_brg", gb.String, 40) .Fields.Add("warna", gb.String, 20) .Fields.Add("jml_brg", gb.Integer) .Fields.Add("jml_min", gb.Integer) .Fields.Add("discount", gb.Integer) .Fields.Add("hrg_beli", gb.Integer) .Fields.Add("harga", gb.Integer) .Fields.Add("v_date", gb.Date)

.Fields.Add("kd_supply", gb.Integer) .Fields.Add("ket", gb.String, 100) .Fields.Add("batas", gb.Integer,, 0)


(72)

.PrimaryKey = ["id_brg"] .Update

END WITH

' membuat tabel jenis

hTable = hConn.Tables.Add("jenis", "MyISAM") WITH hTable

.Fields.Add("id_jenis", gb.Integer)

.Fields.Add("jenis", gb.String, 40) .PrimaryKey = ["id_jenis"]

.Update END WITH

' membuat tabel jual

hTable = hConn.Tables.Add("jual", "MyISAM") WITH hTable

.Fields.Add("id_jual", gb.Integer)

.Fields.Add("kd_brg", gb.Integer) .Fields.Add("kd_kasir", gb.Integer) .Fields.Add("jml_jual_brg", gb.Integer) .Fields.Add("waktu", gb.String, 20)

.PrimaryKey = ["id_jual", "kd_brg", "kd_kasir"]

.Update END WITH

' membuat tabel log digunakan untuk melihat siapa dan kapan sistem digunakan

hTable = hConn.Tables.Add("log", "MyISAM") WITH hTable

.Fields.Add("nama_user", gb.String, 40)

.Fields.Add("jabatan", gb.String, 10) .Fields.Add("waktu", gb.String, 20) .PrimaryKey = ["waktu"]

.Update END WITH


(73)

' membuat tabel suppplier

hTable = hConn.Tables.Add("supplier", "MyISAM") WITH hTable

.Fields.Add("id_supplier", gb.Integer)

.Fields.Add("nm_supplier", gb.String, 50) .Fields.Add("no_telp", gb.String, 14) .Fields.Add("alamat_toko", gb.String, 75) .Fields.Add("status", gb.String, 12) .Fields.Add("website", gb.String, 25) .PrimaryKey = ["id_supplier"]

.Update END WITH

' membuat tabel user

hTable = hConn.Tables.Add("user", "MyISAM")

WITH hTable

.Fields.Add("id_user", gb.Integer)

.Fields.Add("nm_user", gb.String, 50)

.Fields.Add("alamat", gb.String, 75) .Fields.Add("no_telp", gb.String, 14) .Fields.Add("jk", gb.String, 10) .Fields.Add("tmp_lhr", gb.String, 20) .Fields.Add("tgl_lhr", gb.Date)

.Fields.Add("passwd", gb.String, 32) .Fields.Add("jabatan", gb.String, 10) .Fields.Add("foto", gb.String, 10) .PrimaryKey = ["id_user"]

.Update END WITH

END

B. Implementasi Antarmuka Pengguna

Implementasi antarmuka pengguna dibuat berdasarkan acuan rancangan yang telah dibuat pada bab sebelumnya. Antarmuka dibuat menggunakan toolbox yang terdapat pada gambas.


(74)

Pada saat awal memasuki sistem, akan muncul antarmuka Login yang barfungsi sebagai validasi user yang ingin menggunakan sistem.

Gambar 4.1 Halaman Login

Halaman login ini akan meminta user untuk memasukkan id user dan

password user. Jika user salah dalam memasukkan id dan password, maka sistem akan menampilkan pesan kesalahan bahwa login gagal.

Gambar 4.2 Pesan Kesalahan Login Gagal

Jika id dan password yang dimasukkan user sudah benar, maka user

akan masuk ke dalam sistem sesuai dengan jabatan yang dimiliki oleh user. 1. Halaman Utama Admin/Manager

Halaman ini digunakan oleh manager yang barlaku sebagai admin. Di dalam halaman ini terdapat menu-menu yang dapat dilakukan oleh admin. Kegunaan menu tersebut disebutkan dalam petunjuk singkat yang terdapat pada halaman tersebut. Di dalam halaman tersebut juga terdapat beberapa keterangan hak akses yang diberikan oleh sistem.


(75)

Gambar 4.3 Halaman Utama Admin/Manager 2. Halaman Lihat Data Barang (Manager)

Halaman ini digunakan manager untuk melihat data barang. Informasi tambahan yang diberikan adalah, data stok barang yang sudah kurang atau sudah habis, data barang yang hampir atau sudah kadaluarsa. Informasi tambahan tersebut ditampilkan dalam bentuk warna.


(76)

3. Halaman Lihat Detail Data Barang (Manager)

Pada halaman sebelumnya terdapat tombol detail barang, tombol tersebut menuju ke halaman ini. Dalam halaman ini terdapat grafik penjualan barang tiap bulan untuk tiap tahun. Untuk tombol cetak barcode

digunakan untuk mencetak barcode barang.

Gambar 4.5 Halaman Detail Data Barang (Manager)

4. Halaman Lihat Data Supplier (Manager)

Menu lihat data supplier pada halaman utama menuju ke sini.


(77)

5. Halaman Lihat Laporan

Pada halaman utama terdapat menu lihat laporan. Jika menu tersebut ditekan, maka akan tampil halaman ini. Halaman ini terdapat 3 tombol, stok barang digunakan untuk melihat laporan stok barang, penjualan digunakan untuk melihat laporan penjualan barang, tutup untuk menutup halaman.

Gambar 4.7 Halaman Lihat Laporan

6. Halaman Laporan Stok Barang

Jika stok barang ditekan, maka akan muncul halaman ini.


(78)

7. Halaman Lihat Laporan Penjualan

Jika tombol penjualan pada halaman lihat laporan ditekan, maka akan muncul halaman ini. Dalam halaman ini terdapat 3 kategori utama laporan yaitu, harian untuk laporan harian, bulanan untuk laporan bulanan, tahunan untuk laporan tahunan.

Gambar 4.9 Halaman Lihat Laporan Penjualan

8. Halaman Lihat Laporan Penjualan Harian

Jika kategori harian dipilih, maka akan tampil seperti dibawah ini.

Gambar 4.10 Halaman Lihat Laporan Penjualan Harian

Setelah user memilih tanggal menggunakan tombol pilih tanggal, user dapat melihat laporan dengan menekan tombol OK. Jika tombol OK ditekan, maka akan tampil halaman laporan penjualan harian.


(79)

9. Halaman Laporan Penjualan Harian

Gambar 4.11 Halaman Laporan Penjualan Harian

10. Halaman Lihat Laporan Penjualan Bulanan

Jika kategori bulanan dipilih, maka akan tampil seperti dibawah ini.

Gambar 4.12 Halaman Lihat Laporan Penjualan Bulanan

Setelah user memilih bulan dan tahun menggunakan combo pilih bulan dan tahun, user dapat melihat laporan dengan menekan tombol OK. Jika tombol OK ditekan, maka akan tampil halaman laporan penjualan bulanan.


(80)

11. Halaman Laporan Penjualan Bulanan

Gambar 4.13 Halaman Laporan Penjualan Bulanan

12. Halaman Lihat Laporan Penjualan Tahunan

Jika kategori tahunan dipilih, maka akan tampil seperti dibawah ini.

Gambar 4.14 Halaman Lihat Laporan Penjualan Tahunan

Setelah user memilih tahun menggunakan combo pilih tahun, user dapat melihat laporan dengan menekan tombol OK. Jika tombol OK ditekan, maka akan tampil halaman laporan penjualan tahunan.


(81)

13. Halaman Laporan Penjualan Tahunan

Gambar 4.15 Halaman Laporan Penjualan Tahunan

14. Halaman Lihat Data User

Pada halaman utama terdapat menu lihat data user. Jika menu tersebut ditekan, maka akan tampil halaman lihat data user.


(82)

15. Halaman Lihat Detail Data User

Tombol detail pada halaman lihat data user jika ditekan, maka akan muncul halaman lihat detail data user. Halaman ini digunakan untuk melihat atau mengubah data user.

Gambar 4.17 Halaman Lihat Detail Data User

16. Halaman Tambah User

Pada halaman utama atau halaman lihat data user terdapat menu tambah user atau tombol tambah user. Menu dan tombol tersebut jika dipilih akan menampilkan halaman seperti dibawah ini.


(1)

(2)

(3)

(4)

(5)

(6)