Class Diagram Rancangan Database

commit to user 42

3.6 Class Diagram

Class diagram dibuat setelah objek, properti dan method pada sequence diagram teranalisa, berikut ini adalah class diagram dari hasil analisa seperti terlihat padaGambar3.32. commit to user 43

3.7 Rancangan Database

Dalam membuat sistem Point of Sales ini diperlukan sebuah rancangan database yaitu sebagai berikut :

1. Tabel user

Tabel user digunakan sebagai autentifikasi pengguna saat akan memasuki sistem . Data yang disimpan pada tabel ini adalah username, password, status. Struktur tabel user digambarkan pada tabel 3.2 Primary Key : username Tabel 3.2 Tabel user Field Type Length Null Keterangan username varchar 10 not null Nama pengguna password varchar 100 not null password status varchar 10 not null Status berisi 3 pengguna yaitu admin, kasir dan pengelola

2. Tabel customer

Tabel customer digunakan untuk menyimpan data-data dari customer yang dibutuhkan saat penjualan noncash. Struktur tabel customer digambarkan pada tabel 3.3 Primary Key : kdcust Tabel 3.3. Tabel customer Field Type Length Null Keterangan kdcust varchar 15 not null Berisi kode dari customer sebagai primary key nmcust varchar 20 not null Nama lengkap dari customer alamat varchar 50 not null Berisi alamat dari customer kota varchar 20 not null Kota dari customer commit to user 44 telp varchar 14 not null No telp dari customer email varchar 50 null Berisi alamat email dari customer

3. Tabel supplier

Tabel supplier berfungsi untuk mencatat data supplier yang berhubungan dengan pembelian barang di toko. Struktur tabel supplier digambarkan pada tabel 3.4 Primary Key : Kdsupplier Tabel 3.4. Tabel Supplier Field Type Length Null Keterangan kdsupplier varchar 15 not null Kode dari masing-masing supplier nama varchar 30 not null Nama lengkap dari supplier alamat varchar 50 not null Alamat dari supplier kota varchar 20 not null Kota supplier berada no_telp varchar 14 not null No telp dari supplier email varchar 50 null Alamat email valid dari supplier

4. Tabel data_buku

Tabel data_buku berfungsi untuk mencatat data-data dari buku yang dijual. Struktur tabel data_buku digambarkan pada tabel 3.5 Primary Key : kdbrg Tabel 3.5 Tabel data_buku Field Type Length Null Keterangan kdbrg varchar 10 not null Kode dari setiap masing – masing judul buku judul varchar 50 not null Menyimpan judul dari buku pengarang varchar 50 not null Berisi keterangan pengarang dari sebuah judul buku commit to user 45 penerbit varchar 30 not null Menyimpan nama penerbit dari buku

5. Tabel beli_header

Tabel beli_header berfungsi untuk mencatat data –data awal dari sebuah transaksi pembelian yang terjadi antara toko dan supplier. Primary Key : nopo Tabel 3.6 Tabel beli_header Field Type Length Null Keterangan nopo varchar 15 not null Berisi nomor pembelian dari transaksi sesuai dengan tanggal. tanggal date not null Berisi tanggal transaksi kdsupplier varchar 10 not null Berisi kode dari supplier yang melakukan transaksi saat itu terbayar int null Berisi tentang jumlah yang telah dibayarkan dari pembelian noncash tot_hutang int null Berisi tentang jumlah hutang yang terjadi dari pembelian noncash keterangan varchar 11 null Berisi keterangan lunas atau belum lunas dari pembelian noncash status varchar 6 not null Berisi tentang status pembelian yang terjadi tunai atau kredit uang_cash int null Berisi uang yang dibayarkan untuk pembelian secara cash username varchar 10 not null Berisi nama petugas yang menginputkan data pembelian commit to user 46

6. Tabel beli_detail

Tabel beli_detail ini berfungsi untuk menyimpan data – data pembelian secara rinci dan merupakan kelanjutan dari tabel beli_header. Primary Key : nourut, nopo Tabel 3.7 Tabel beli_detail Field Type Length Null Keterangan nourut int not null Berisi nomor urut dari detail pembelian per-barang nopo varchar 15 not null Berisi nomor pembelian kdbrg varchar 10 not null Berisi kode barang yang dibeli jmlbeli int not null Berisi jumlah barang yang dibeli hrg_beli int not null Berisi harga beli dari sebuah barang diskon_beli int null Berisi jumlah diskon yang diberikan supplier kepada toko untuk sebuah barangbuku. hrg_akhir int not null Berisi harga akhir dari total harga semua dikurangi diskon untuk sebuah jenis barangbuku.

7. Tabel harga

Tabel harga berfungsi untuk menentukan harga jual sebuah barangbuku yang ditentukan dengan harga beli terbaru dengan diskon dan laba yang di inginkan. Primary Key : nourut Tabel 3.8 Tabel harga Field Type Length Null Keterangan nourut int not null Berisi nomor urut kdbrg varchar 15 not null Berisi kode dari barang commit to user 47 tgl_proses date not null Berisi tanggal memproses harga jual baru harga_jual int not null Berisi harga jual dari sebuah buku status varchar 15 not null Berisi status dari harga jual yang digunakan

8. Tabel hutang

Tabel hutang berfungsi untuk menyimpan data pembayaran atau pelunasan dari pembelian noncash. Primary Key : nokwi Tabel 3.9 Tabel hutang Field Type Length Null Keterangan nokwi varchar 15 not null Berisi no kwitansi dari pembayaran tgl_kwi date not null Berisi tanggal dari kwitansi pembayaran nopo varchar 15 not null Berisi nomor pembelian angsuran _ke int not null Berisi data jumlah angsuran yang akan dibayar username varchar 10 not null Berisi nama dari petugas yang menginputkan data

9. Tabel stok

Tabel stok berfungsi sebagai penghitung jumlah stok yang ada pada akhir bulan untuk stok awal bulan berikutnya dari suatu judul. Primary Key : nourut Tabel 3.10 Tabel stok Field Type Length Null Keterangan nourut int not null Nomor urut kdbrg varchar 15 not null Berisi kode barang commit to user 48 tanggal date not null Berisi bulan dan tahun peng update tan harga stokawal int not null Berisi stok awal dari sebuah barang judul buku.

10. Tabel retur_header

Tabel retur_header berfungsi untuk mencatat data awal dari sebuah retur pembelian. Primary Key : noret Tabel 3.11 Tabel retur_header Field Type Length Null Keterangan noret varchar 18 not null Berisi nomor retur tgl_ret date not null Berisi tanggal dari retur nopo varchar 15 not null Berisi nomor pembelian dari barang username varchar 10 not null Berisi nama petugas yang menginputkan data

11. Tabel retur_detail

Tabel retur_detail berfungsi untuk menyimpan data detail dari sebuah retur pembelian. Primary Key : noret Tabel 3.12 Tabel retur_detail Field Type Length Null Keterangan nourut int not null Berisi nomor urut dari data retur noret varchar 18 not null Berisi nomor retur dari data sebelumnya kdbrg varchar 10 not null Berisi kode barang yang diretur jmlitem int not null Berisi jumlah item yang diretur commit to user 49

12. Tabel jual_header

Tabel jual_header berfungsi untuk mencatat data – data awal dari sebuah transaksi penjualan yang terjadi antara toko dan pembelicustomer Primary Key : nota Tabel 3.13 Tabel jual_header Field Type Length Null Keterangan nota varchar 15 not null Nomor tansaksi tgl_nota data not null Tanggal transaksi kdcust varchar 15 not null Kode dari setiap customer jenis varchar 10 not null Jenis dari transaksi penjualan cash atau noncash username varchar 10 not null Nama dari petugas yang menginputkan data

13. Tabel jual_detail

Tabel jual_detail berfungsi untuk menyimpan data penjualan rinci sebagai kelanjutan dari penyimpanan pada jual_header. Primary Key : nourutnota Tabel 3.14 Tabel jual_detail Field Type Length Null Keterangan nota varchar 15 not null Nomor transaksi yang berkaitan dengan penyimpanan sebelumnya. nourutnota int not null Nomor urut penjualan barang kdbrg varchar 15 not null Kode barang dari barang yang dijual commit to user 50 jmljual int not null Jumlah item yang dijual diskon_khusus int null Diskon khusus yang diberikan untuk pembelian agen. total_akhir int not null Total harga dari item yang dijual setelah pengurangan diskon jika ada.

14. Tabel piutang

Tabel piutang berfungsi untuk mencatat pembayaran piutang yang muncul dari transaksi penjualan noncash. Struktur tabel piutang digambarkan pada tabel 3.15 Primary Key: nokwi_piutang Tabel 3.15 Tabel piutang Field Type Length Null Keterangan nokwi_piutang varchar 15 not null Nomor kwitansi dari pembayaran piutang tglkwi date not null Tanggal dari kwitansi diproses nota varchar 15 not null Nomor transaksi penjualan noncash angsuran_ke int not null Jumlah angsuran bayar int not null Jumlah nominal pembayan piutang username varchar 10 not null Nama dari petugas yang menginputkan data

15. Tabel biaya

Tabel biaya berfungsi untuk mencatat biaya – biaya yang dikeluarkkan toko. Struktur tabel biaya digambarkan pada tabel 3.16 Primary Key : kdbiaya commit to user 51 Tabel 3.16 Tabel biaya Field Type Length Null Keterangan kdbiaya varchar 10 not null Kode dari biaya jenis varchar 30 not null Jenis dari biaya tanggal date not null Tanggal pemrosesan biaya bayar int not null Jumlan nominal yang dibayarkan username varchar 10 not null Nama dari petugas yang menginputkan data

16. Tabel retur_jual_header

Tabel retur_jual_header berfungsi untuk mencatat data – data awal dari sebuah retur penjualan yang terjadi. Struktur tabel retur_jual_header digambarkan pada tabel 3.17 Primary Key : noret_jual Tabel 3.17 Tabel retur_jual_header Field Type Length Null Keterangan noret_jual varchar 15 not null Nomor retur penjualan tgl_ret date not null Tanggal retur diproses nota varchar 15 not null Nomor transaksi pembelian username varchar 10 not null Nama dari petugas yang menginputkan data

17. Tabel retur_jual_detail

Tabel retur_jual_detail berfungsi untuk menyimpan data detail dari sebuah retur penjualan. Primary Key: nourut Tabel 3.18 Tabel retur_jual_header Field Type Length Null Keterangan nourut int not null Nomor urut commit to user 52 noret_jual varchar 15 not null Nomor retur penjualan kdbrg varchar 10 not null Kode barang yang diretur jumlah int not null Jumlah barang yang diretur

3.8. Rancangan Relasi Tabel