View
242
Download
5
Category
Preview:
Citation preview
61
BAB 3
ANALISIS DAN PERANCANGAN
3.1 Analisis
3.1.1 Riwayat Perusahaan
PT. Integrasindo Mitra Mandiri (d/h Yayasan Immanance Perkasa
Abadi) merupakan suatu perusahaan yang bergerak dalam bidang
pengembangan teknologi informasi di bidang marketing, termasuk di
dalamnya adalah IT Solution, IT Training, serta Network Development and
Management. Produk yang dihasilkan oleh PT. Integrasindo Mitra Mandiri
diharapkan dapat memberikan Total Solution atas segala permasalahan di
bidang teknologi informasi dalam dunia marketing.
Didirikan pada bulan September tahun 2000, PT. Integrasindo
Mitra Mandiri terus-menerus berkembang pesat, dari menawarkan
pelatihan Teknologi Informasi, hingga menyediakan jasa outsourcing bagi
perusahaan-perusahaan yang membutuhkan tenaga IT profesional. Sejak
tahun 2002 hingga saat ini, PT. Integrasindo Mitra Mandiri memfokuskan
diri pada pengembangan di bidang Jaringan (networking), Desain
Multimedia, Web Database, dan Software Development khusus untuk pasar
swalayan (hypermart) dan minimarket. Dengan tenaga profesional yang
berpengalaman, aktif, dan dinamis, maka riset dan development pun terus
dilakukan seiring dengan perkembangan dari teknologi informasi, tak lupa
didukung dengan infrastruktur teknologi yang tinggi.
62
Minimarket Pentamart
Minimarket Pentamart didirikan pada tahun 2010 dengan tujuan
untuk mempermudah masyarakat yang ingin berbelanja kebutuhan sehari-
hari, tanpa perlu harus pergi ke pasar tradisional, dan juga menyediakan
berbagai kebutuhan sehari-hari dari yang buatan dalam negeri sampai
dengan buatan luar negeri. Minimarket Pentamart awalnya dibangun di
daerah Kelapa Gading Permai dan dengan seiring berjalannya waktu, serta
dengan melihat peluang usaha yang ada sekarang ini, di mana
pertumbuhan minimarket cukup pesat dan memiliki nilai usaha yang cukup
menjanjikan, maka dibukalah satu cabang lagi dari Minimarket Pentamart
yang berlokasi di daerah Gading Hybrid.
Minimarket Pentamart sendiri memfokuskan penjualannya dengan
menyediakan berbagai kebutuhan yang berasal dari luar negeri atau produk
import tetapi juga produk dalam negeri atau produk lokal. Kegiatan usaha
Minimarket Pentamart sendiri didukung oleh sejumlah karyawan yang
bekerja secara kontrak di tempat ini.
3.1.2 Visi dan Misi
Visi Minimarket Pentamart adalah menjadi salah satu pusat
perbelanjaan terkemuka di Indonesia dengan kerja keras dan dilakukan
secara menyenangkan, dengan pertumbuhan yang cepat, dan dengan
profitabilitas yang tinggi. Serta mengutamakan keberhasilan jangka
panjang dan pelayanan memuaskan kepada setiap pelanggan.
63
Misi Minimarket Pentamart adalah membuat pelanggan menjadi
loyal dalam membeli produk, berusaha berkembang di pasar nasional,
menjaga image perusahaan yang bersih, jujur dan juga ramah, serta
memperhatikan kinerja karyawan sebagai tenaga kerja yang merupakan
penggerak utama untuk mencapai tujuan perusahaan.
3.1.3 Struktur Organisasi
Struktur Organisasi PT. Integrasindo Mitra Mandiri
Gambar 3.1 Bagan Struktur Organisasi Minimarket Pentamart
64
` 3.1.4 Pembagian Tugas dan Wewenang
• PT. Integrasindo Mitra Mandiri
1. Direktur Utama
Bertanggung jawab secara luas atas seluruh kegiatan baik
operasional maupun administrasi keuangan kepada PT Integrasindo
Mitra Mandiri.
2. Direktur Administrasi Dan Keuangan
Membawahi Biro (Divisi) Sekretariat Perusahaan, Akuntansi dan
Keuangan yang dibawahnya masih terdapat bagian Humas dan Hukum,
Administrasi Perusahaan, Rumah Tangga Umum, Akuntansi, Keuangan,
pajak dan piutang. Memiliki tanggung jawab terhadap bagian
Administrasi dan Keuangan dan bagian yang menjadi lingkup
dibawahnya.
3. Direktur Operasi
Bertanggung jawab secara luas terhadap bidang operasional
perusahaan yang melingkupi Biro (divisi) di bawahnya yaitu Aneka
Usaha, pelatihan, perdagangan komputer, outsource tenaga kerja ke
perusahaan lain. Di bawah Direktur Operasi masih terdapat General
Manager yang bertanggung jawab atas divisi Humas dan Hukum, serta
divisi Sumber Daya Manusia (SDM).
4. Administrasi Perusahaan
Bertugas dalam bidang administrasi perusahaan secara luas.
65
5. Rumah Tangga Perusahaan dan Umum
Mengurusi bidang rumah tangga perusahaan dan bagian umum
yang berkaiatan dengan hal tersebut.
6. Sumber Daya Manusia
Mengepalai bagian Perencanaan dan Pengembangan Sumber
Daya Manusia serta Operasional dan Kesejahteraan. Bertanggung jawab
secara keseluruhan kegiatan Sumber Daya Manusia.
Data Sumber Daya Manusia PT Integrasindo Mitra Mandiri
tersusun dalam suatu database SDM yang dibuat oleh bagian Sistem
Informasi Manajemen dan data dinput oleh bagian SDM itu sendiri.
7. Operasional dan Technical Support
Memiliki tugas dan tanggung jawab dalam perawatan barang-
barang operasional perusahaan, seperti memperbaiki dan memelihara
perangkat keras yang ada di perusahaan.
8. Tenaga Kerja Tetap dan Honorer
Tenaga kerja ini meliputi karyawan bagian kasir, gudang, dan
sebagainya, yang bekerja berdasarkan jam-jam tertentu (shift).
Pegawai PT Integrasindo Mitra Mandiri terdiri dari :
− Pegawai tetap (TTP) : Karyawan yang telah memperoleh
pengangkatan dari perusahaan menjadi pegawai tetap.
66
− Karyawan Ikatan Kerja (KIK) : Karyawan yang terikat kerja
dengan perusahaan tetapi memiliki batas usia minimal yang
ditentukan oleh perusahaan, misalnya 20 tahun.
− Pegawai Honorer : Pegawai yang dibutuhkan oleh perusahaan di
posisi-posisi dan jabatan tertentu, serta bekerja berdasarkan
kontrak atau ketentuan tertentu.
• Minimarket Pentamart
1. Owner
a. Menentukan semua kebijakan yang ada, serta menetapkan
sistem dan prosedur yang berjalan di dalam Minimarket
Pentamart.
b. Merekrut dan memberhentikan karyawan.
c. Melakukan order dan retur produk.
d. Menghitung pengeluaran dan anggaran belanja secara berkala.
e. Memberi kompensasi berupa gaji kepada setiap karyawannya
setiap bulan.
f. Memeriksa dan menganalisis laporan yang diberikan oleh
manajer untuk pengambilan keputusan yang efektif dan efisien.
2. Manajer
a. Menganalisis dan menyusun laporan penjualan, pembelian, dan
persediaan barang dari admin sebelum diberikan kepada owner.
b. Mengawasi dan mengevaluasi kinerja karyawan.
67
3. Admin
a. Menangani penyimpanan data-data penjualan, pembelian, dan
persediaan barang sehari-hari.
b. Membantu manajer dalam penyusunan laporan.
4. Bagian Stok
a. Memantau setiap produk yang ada apakah sudah habis dari
tempatnya di lemari display atau belum.
b. Mencatat setiap barang yang sudah habis dan memberikan
laporannya kepada admin.
5. Kasir
Melayani customer yang akan membayar barang belanjaannya.
6. Keamanan
Menjaga keamanan di lingkungan minimarket.
7. Kebersihan
a. Menjaga kebersihan minimarket sehari-hari.
b. Memberi laporan kepada manajer tentang barang apa saja yang
dibutuhkan di bagian kebersihan.
3.1.5 Sistem yang Sedang Berjalan
3.1.5.1 Prosedur Pembelian
Pada tahap ini akan dijelaskan bagaimana sistem akan
memproses pembelian barang dari supplier. Barang ini nantinya
akan digunakan sebagai barang penjualan dan stok.
68
Prosedur yang berjalan dimulai dari pihak manajemen
atau owner membeli barang dari pihak supplier untuk dipakai
sebagai barang penjualan. Dari pembelian tersebut, nantinya
juga ada sebagian barang yang dipakai sebagai stok di gudang.
Pihak manajemen mencatat jumlah stok dan barang-barang apa
saja yang mau dipesan nantinya. Kemudian dari daftar pesanan
tersebut dibuatkan faktur pembelian, faktur ini dicetak rangkap
tiga, yaitu untuk distributor, untuk digunakan sebagai arsip, dan
yang terakhir digunakan sebagai bukti tagihan.
Pembelian terdiri dari pemesanan bulanan, pemesanan
biasa dan pemesanan musiman. Pemesanan bulanan dilakukan
pada setiap akhir bulan dan pemesanan yang dilakukan tersebut
merupakan pemesanan untuk dua bulan berikutnya. Pemesanan
bulanan bersifat tidak dapat dibatalkan, dan apabila pada bulan
dimana barang tersebut harusnya dikirim namun stok kosong di
pihak supplier, maka barang tersebut akan dikirim atau diantar
secepatnya ketika barang tersebut telah tersedia.
Jika sampai akhir bulan barang tidak dikirim, maka pihak
supplier akan mengirimkan surat yang berisi daftar barang yang
belum dikirim dan jumlahnya. Barang itu kemudian akan masuk
dalam daftar rencana pembelian pada bulan berikutnya.
Pemesanan biasa adalah jenis pemesanan yang dilakukan
secara mendadak apabila ada jumlah barang yang sudah berada
69
di bawah stok minimal atau stok barang habis. Sedangkan
pemesanan musiman adalah pemesanan yang hanya dapat
dilakukan ketika barang tersebut berada pada waktu tertentu
saja, misalkan buah-buahan (durian, mangga, dsb) yang hanya
dapat dikirim ketika sudah musim panen tiba.
Gambar 3.2 Flowchart Prosedur Pembelian Barang
70
3.1.5.2 Prosedur Penjualan
Pada tahap ini akan dijelaskan bagaimana sistem
penjualan yang sedang berjalan. Proses penjualan dimulai
dengan setiap karyawan (setiap karyawan memiliki waktu
operasionalnya masing-masing dan berbeda antara karyawan
yang satu dengan karyawan yang lainnya) memilah antara
berapa banyak produk yang akan dijual dan dipajang sebagai
display dan berapa banyak produk yang akan digunakan sebagai
stock, yang nantinya akan kemudian dicatat dalam satu
pembukuan oleh owner.
Proses penjualan dimulai dengan dibukanya minimarket
ini sesuai dengan jam operasional yang sudah diberlakukan oleh
pihak manajemen dan setiap karyawan telah standby di
bagiannya masing-masing, ada yang bersiap di bagian kasir, ada
juga yang bersiap di bagian pengecekan barang (stok), dan ada
juga yang merangkap untuk membersihkan minimarket agar
selalu terlihat rapi. Bagian kasir selalu berada di posisinya yaitu
di meja kasir untuk dapat melayani customer dengan cepat dan
baik, sedangkan bagian stok akan berkeliling untuk melihat
barang mana saja yang sudah mulai habis dari display, dan
apabila ada barang yang habis dari display maka karyawan
tersebut akan segera pergi ke gudang untuk mengecek apakah
71
masih ada stok untuk barang yang bersangkutan, apabila masih
ada maka akan diambil untuk kemudian dipakai sebagai display.
Apabila barang tersebut ternyata sudah habis sama sekali
stoknya di gudang, maka karyawan akan memberitahukan
kepada pihak manajemen untuk kemudian dicatat. Tujuan dari
pencatatan ini adalah agar barang yang habis dapat segera
dipesan lagi.
Proses penjualan kepada customer dimulai ketika
customer datang dan masuk ke dalam minimarket, memilih
barang yang mereka inginkan, dan kemudian diakhiri dengan
mendatangi kasir untuk membayar barang tersebut. Pembayaran
dapat dilakukan secara cash, menggunakan sistem debit atau
dapat pula dengan menggunakan kartu kredit.
72
Gambar 3.3 Flowchart Prosedur Penjualan Barang
73
3.1.5.3 Prosedur Persediaan
Pada tahap ini akan dijelaskan bagaimana sistem yang
sedang berjalan memproses persediaan barang. Sistem yang ada
sekarang ini masih berjalan sendiri-sendiri, dalam artian satu
cabang dan cabang lainnya memiliki laporan persediaan barang
yang terpisah (pembelian dan penjualan juga terpisah).
Prosedur yang berjalan dimulai dari pihak manajemen
atau owner melakukan pemeriksaan stok barang. Jika stok
barang tidak kurang, maka tidak diperlukan tindakan lebih lanjut
dan prosedur persediaan berakhir sampai di sini.
Lain halnya jika ternyata jumlah stok barang kurang,
maka pihak manajemen akan menghubungi supplier untuk
kembali melakukan prosedur pembelian. Setelah supplier
menerima order barang, dan melakukan pengiriman barang,
maka pihak manajemen akan melakukan pemeriksaan apakah
barang yang diterima sudah sesuai dengan pesanan. Prosedur
persediaan ini kemudian diakhiri apabila pihak manajemen
sudah melakukan update persediaan barang terbaru.
74
Gambar 3.4 Flowchart Prosedur Persediaan Barang
75
3.1.6 Data Flow Diagram (DFD)
Gambar 3.5 Diagram Konteks
76
Gambar 3.6 DFD Level 0
77
3.1.7 Analisis Kebutuhan Pengguna
3.1.7.1 Kebutuhan Informasi
1. Informasi mengenai penjualan barang
Dibutuhkan informasi mengenai transaksi penjualan
yang telah dilakukan, contohnya informasi mengenai waktu
penjualan dan informasi mengenai total penjualan harian.
2. Informasi mengenai pembelian barang
Dibutuhkan informasi mengenai transaksi pembelian
yang telah dilakukan, contohnya tanggal terjadinya pembelian
dan total pembelian.
3. Informasi mengenai persediaan barang
Dibutuhkan informasi mengenai persediaan barang di
gudang, contohnya stok barang yang ada dan barang yang
keluar-masuk dari gudang.
4. Informasi mengenai karyawan
Dibutuhkan informasi mengenai data-data karyawan,
contohnya seperti nama karyawan serta jabatannya.
5. Informasi mengenai pemasok
Dibutuhkan informasi mengenai pemasok, misalnya
seperti nama, alamat, dan telepon pemasok.
6. Informasi mengenai barang
Dibutuhkan informasi mengenai barang, seperti nama
barang, jenis barang, harga jual, dan sebagainya.
78
3.1.7.2 Kebutuhan Keamanan Data
Keamanan data merupakan hal yang terpenting dan harus
dijaga agar kerahasiaan data perusahaan, dapat terjamin.
Keamanan data ini dibutuhkan untuk menghindari kehilangan
data dari berbagai pihak yang tidak diinginkan. Oleh karena itu,
diperlukan adanya kewenangan dalam mengakses data yang ada.
Diharapkan sistem ini nantinya dapat menangani otoritas
dalam mengakses data sehingga hanya orang yang
berkepentingan atau orang yang memiliki hak akses saja yang
dapat mengakses data tersebut.
3.1.7.3 Kebutuhan Integrasi
Suatu organisasi atau perusahaan membutuhkan suatu
aplikasi yang memiliki basis data yang terintegrasi dengan suatu
sistem. Sistem ini nantinya harus dapat memenuhi kebutuhan
data, yang sebelumnya belum terkoordinasi menjadi suatu
informasi yang memang dibutuhkan oleh perusahaan tersebut.
Oleh karena itu, integrasi data ini merupakan hal yang
penting untuk menghasilkan informasi yang dibutuhkan
perusahaan, seperti laporan pembelian, laporan penjualan, dan
laporan persediaan barang.
79
3.1.7.4 Kebutuhan Transaksi
Dengan adanya aplikasi sistem basis data yang akan
diimplementasikan ini, diharapkan dapat membantu di dalam
mengorganisir data-data yang berhubungan dengan transaksi
penjualan, pembelian dan persediaan barang.
Aplikasi ini akan meng-update, men-delete, dan meng-
insert data yang ada jika terjadi suatu transaksi baru. Oleh
karena itu, dengan adanya aplikasi sistem basis data yang dapat
mengorganisir data transaksi seperti ini, diharapkan nantinya
dapat mengurangi kesalahan yang terjadi dalam sistem manual
dan dapat memudahkan di dalam membuat laporan transaksi
yang ada.
3.1.7.5 Kebutuhan Kecepatan Akses Data
Semua bagian dalam minimarket membutuhkan
informasi data yang tepat, akurat dan cepat. Dengan informasi
yang tepat, akurat, dan cepat maka proses transaksi akan berjalan
lebih lancar, sekaligus memudahkan setiap bagian agar dapat
dengan tepat dan cepat mampu mengambil keputusan yang baik.
Dengan adanya kecepatan akses data tersebut, bagian-
bagian dalam minimarket dapat membuat laporan dalam bentuk
yang ringkas dan mudah dicari.
80
3.1.8 Permasalahan yang Dihadapi
Berdasarkan hasil analisa kuesioner dan wawancara yang dilakukan
pada Minimarket Pentamart, ternyata terdapat masalah-masalah yang
dihadapi seperti :
1. Kesalahan di dalam memasukkan data
Misalnya kesalahan dalam memasukkan data pemesanan
barang ke supplier, atau kesalahan yang berhubungan dengan
proses pembelian dan penjualan seperti tidak adanya catatan barang
yang akan dipesan atau tidak adanya catatan stok barang apa saja
yang masih kosong. Hal ini dikarenakan sistem yang dijalankan
masih manual dan belum mampu memenuhi semua kebutuhan
pengguna.
2. Keamanan data yang rendah
Dikarenakan belum adanya aplikasi sistem basis data dalam
Minimarket Pentamart, maka keamanan dari data yang ada sangat
rendah. Karyawan dapat mengetahui segala sesuatu yang berada di
dalam proses pembelian, penjualan dan persediaan barang sehingga
dapat menimbulkan ketidakamanan data.
3. Kesulitan dalam proses pencarian data
Dengan sistem yang masih manual, maka karyawan akan
kesulitan dalam mencari suatu data, misalnya dalam mencari suatu
barang untuk mengetahui masih ada atau tidaknya stok barang
tersebut.
81
4. Kesulitan dalam mengakses data
Dikarenakan data dalam minimarket sangat banyak, dan
sistem yang digunakan masih manual, maka kinerja sehari-hari
akan menjadi sangat lambat. Hal ini dikarenakan dalam mengakses
data harus mencari ke lemari arsip terlebih dahulu, sehingga
menjadi sangat tidak efektif dan efisien.
5. Kesulitan untuk melihat data pembelian dan penjualan barang
dalam bentuk laporan.
Dengan sistem manual, sering terjadi kesalahan dalam
memasukkan data oleh pengguna, sehingga data yang tersimpan
menjadi tidak akurat. Proses pemeriksaan dan koreksi data ini
membutuhkan waktu yang lama dan mempersulit penyusunan
laporan penjualan, pembelian, dan persediaan barang.
6. Kesulitan di dalam menyajikan data dalam bentuk laporan
pembelian, penjualan dan persediaan barang pada saat dibutuhkan.
Dengan sistem yang masih belum terkomputerisasi, maka
pembuatan laporan menjadi sangat sulit, sehingga tidak mungkin
dapat menyajikan data laporan terbaru kapan saja ketika laporan
tersebut dibutuhkan.
3.1.9 Usulan Pemecahan Masalah
Melihat masalah yang dihadapi oleh perusahaan ini, maka usulan
pemecahan masalahnya adalah sebagai berikut :
82
1. Membangun aplikasi sistem basis data pembelian, penjualan dan
persediaan barang yang saling berhubungan dalam berbagai
transaksi yang terjadi di dalam minimarket. Dengan menggunakan
sistem basis data, maka pengolahan data akan menjadi lebih cepat,
efisien, akurat, dan mengurangi kesalahan karena sistem yang
bersangkutan sudah saling terhubung satu sama lain.
2. Melengkapi sistem basis data tersebut dengan keamanan,
mengingat pengguna yang bersangkutan memiliki kewenangan
yang berbeda-beda. Tidak sembarangan orang dapat menggunakan
sistem basis data tersebut.
3. Merancang dan membangun sistem basis data yang dapat
memudahkan pengguna untuk membuat laporan sesuai dengan
kriteria dari perusahaan dan mengelola laporan yang ada pada saat
dibutuhkan.
4. Dengan merancang tampilan aplikasi yang user friendly, sehingga
dapat meminimalkan terjadinya human error seperti kesalahan
input data penjualan. Jika masih terdapat kesalahan yang dilakukan
oleh pengguna, aplikasi ini juga menyediakan tombol yang
berfungsi untuk membatalkan transaksi.
83
3.2 Perancangan
3.2.1 Perancangan Basis Data Konseptual
3.2.1.1 Mengidentifikasi Tipe-Tipe Entitas
Tabel 3.1 Identifikasi Tipe Entitas
Nama Entitas Deskripsi Alias Kejadian
Employee Merupakan entitas yang
memberikan informasi
tentang karyawan
Pegawai Pegawai yang
bekerja di
Pentamart
Item Merupakan entitas yang
memberikan informasi
tentang data barang
Produk Setiap barang
yang dijual,
dibeli, dan
disimpan oleh
Pentamart.
Vendor Merupakan entitas yang
memberikan informasi
tentang pemasok.
Pemasok Pemasok yang
melayani
pembelian
barang dari
Pentamart.
Branch Merupakan entitas yang
memberikan informasi
tentang cabang dari
minimarket
Cabang Cabang
minimarket
yang terdaftar
di Pentamart.
BranchItem Merupakan entitas yang
memberikan informasi
tentang barang yang ada
di cabang minimarket
Produk
Cabang
Setiap barang
yang dijual,
dibeli, dan
disimpan oleh
cabang
Pentamart.
84
Member Merupakan entitas yang
memberikan informasi
tentang data pembeli
Anggota Pembeli yang
membeli
barang di
Pentamart.
PO Merupakan entitas yang
memberikan informasi
tentang pembelian
barang (purchase order)
Pembelian Pentamart
membeli dan
memesan
barang ke
pemasok.
Tx Merupakan entitas yang
memberikan informasi
tentang pejualan barang
(sales transaction)
Penjualan Penjualan
barang dari
Pentamart ke
pembeli.
ItemMutation Merupakan entitas yang
memberikan informasi
tentang mutasi barang
dari satu cabang ke
cabang lain
Pemindahan
Barang
Mutasi barang
dari satu
cabang ke
cabang lain.
85
3.2.1.2 Mengidentifikasi Tipe-Tipe Relasi
Tabel 3.2 Identifikasi Tipe Relationship
Nama Entitas Mutiplicity Relationship Nama Entitas Multiplicity
Employee 1…1 menangani Branch 1…1
Employee 1…1 melakukan PO 1…*
PO 1…* menambah BranchItem 1…*
Vendor 1…1 melayani PO 1…*
Tx 1…* mengurangi BranchItem 1…*
Member 1…1 melakukan Tx 1…*
ItemMutation 1…* mengurangi BranchItem 1…*
Branch 1…1 melakukan ItemMutation 1…*
Branch 1…1 mempunyai Item 1…*
Gambar 3.7 Entity Relationship Diagram dengan Relationship
86
3.2.1.3 Mengidentifikasi dan Menghubungkan Atribut dengan
Entitas atau Tipe-Tipe Relasi
1. Tabel Employee
Atribut Deskripsi Panjang
dan Tipe
Data
Nulls Multi-valued
EID Kode dari
karyawan
Int No No
BID Kode dari cabang Int No No
EFirstName Nama depan dari
karyawan
Varchar(20) No No
ELastName Nama akhir dari
karyawan
Varchar(25) No No
EPOB Tempat lahir
karyawan
Varchar(20) No No
EDOB Tanggal lahir
karyawan
Date No No
EGender Jenis kelamin dari
karyawan
Char(1) No No
EReligion Agama dari
karyawan
Varchar(10) No No
EAddress Alamat karyawan Varchar(60) No No
EPhone1 No telp karyawan Varchar(15) No No
EPhone2 No telp lain dari
karyawan
Varchar(15) Yes No
UName Nama pengguna Varchar(30) No No
PName Nama posisi Varchar(30) No No
87
2. Tabel Item
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-valued
IID Kode dari barang Int No No
SellingPrice Harga dari
penjualan
Decimal
(20,2)
No No
IName Nama barang Varchar(20) No No
IGName Grup barang Varchar(20) No No
UOMName Satuan barang Varchar(10) No No
TDDiscType Jenis diskon Int No No
MrName Nama merchant Varchar(20) No No
Value Nilai kurs Decimal(20,2) No No
Operator Mata uang Varchar(20) No No
Picture Gambar barang Varchar(50) No No
ItemCode Kode barcode Varchar(13) No No
3. Tabel BranchItem
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-valued
BIID Kode item cabang Int No No
BID Kode cabang Int No No
IID Kode barang Int No No
Stock Stok barang Int No No
MinimumStock Persediaan
minimum barang
Int No No
Price Harga barang Decimal(20,2) No No
88
4. Tabel Vendor
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-valued
VID Kode dari vendor Int No No
IID Kode dari barang Int No No
VGName Nama dari grup
vendor
Varchar(30) No No
VCP Nama dari contact
person vendor
Varchar(25) No No
RGName Nama region Varchar(30) No No
VBankName Nama bank Varchar(30) No No
VName Nama dari vendor Varchar(30) No No
VAddr Alamat dari vendor Varchar(60) No No
VCity Kota vendor Varchar(20) No No
VPostalCode Kode pos vendor Varchar(7) No No
VPhone1 No telepon 1 vendor Varchar(15) No No
VPhone2 No telepon 2 vendor Varchar(15) Yes No
VFax Fax Vendor Varchar(15) No No
VEmail Email Vendor Varchar(60) No No
VCHP Handphone vendor Varchar(13) Yes No
5. Tabel Branch
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-valued
BID Kode dari cabang Int No No
TBAID Kode billing
announcement
Int No No
TxCBID Kode cashier
balance
Int No No
IsCentral Penanda toko Int No No
89
BName Nama cabang Varchar(30) No No
BAddress Alamat cabang Varchar(60) No No
BCity Kota cabang Varchar(15) No No
BHead Kepala cabang Varchar(30) No No
BQty Jumlah cabang Varchar(2) No No
BPostalCode Kode Pos Cabang Varchar(7) No No
BCountry Negara dari cabang Varchar(15) No No
BPhone1 No Telp 1 cabang Varchar(15) No No
BPhone2 No Telp 2 cabang Varchar(15) Yes No
BFax Fax cabang Varchar(15) No No
BEmail Email cabang Varchar(60) No No
RGName Nama region Varchar(30) No No
6. Tabel Member
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-valued
MID Kode dari Anggota Int No No
MFirstName Nama Pertama dari
anggota
Int No No
MLastName Nama Akhir dari
anggota
Int No No
MDOB Tanggal lahir
anggota
Datetime No No
MPOB Tempat lahir
anggota
Varchar(20) No No
MGender Jenis kelamin dari
anggota
Char(1) No No
MAddress Alamat anggota Varchar(60) No No
MPhone No Telp anggota Varchar(13) No No
MEmail Email Anggota Varchar(60) No No
90
MJoinDate Tanggal pendaftaran
anggota
Datetime No No
MExpiredDate Tanggal kadaluarsa
anggota
Datetime No No
MTName Nama tipe
keanggotaan
Varchar(30) No No
7. Tabel Tx
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-
valued
TxID Kode dari
transaksi
penjualan
Int No No
UID Kode dari user Int No No
MID Kode dari anggota Int No No
BID Kode dari cabang Int No No
BIID Kode dari item
cabang
Int No No
TxDate Tanggal transaksi Datetime No No
Qty Banyak barang Int No No
Disc Diskon barang Float No No
Price Harga barang Decimal (20,2) No No
TxTax Pajak transaksi Float No No
TxDisc Diskon transaksi Float No No
TxGrandTotal Total transaksi Decimal (20,2) No No
Payment Type Tipe pembayaran Varchar(10) No No
PaymentCode Kode dari
pembayaran
Char(20) No No
TxGrandTotalFinal Total seluruh
transaksi
Decimal (20,2) No No
91
8. Tabel PO
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-valued
TxPOID Kode dari transaksi
pembelian
Int No No
EID Kode dari karyawan Int No No
VID Kode dari vendor Int No No
IID Kode dari barang Int No No
BIID Kode item cabang Int No No
TxDate Tanggal Transaksi Datetime No No
Qty Banyak barang Int No No
PurchPrice Harga pembelian Decimal
(20,2)
No No
Disc Diskon barang Float No No
TxGrandTotal Total transaksi PO Decimal
(20,2)
No No
Status Status PO Varchar(10) No No
9. Tabel ItemMutation
Atribut Deskripsi Panjang dan
Tipe Data
Nulls Multi-valued
TxIMID Kode dari mutasi
barang
Int No No
BID Kode dari cabang Int No No
BIID Kode dari item
cabang
Int No No
UID Kode user Int No No
TxDate Tanggal transaksi Datetime No No
92
Status Status Mutasi Varchar(10) No No
Reason Alasan Mutasi
barang
Text No No
Qty Banyak barang Int No No
Notes Catatan Varchar(100) No No
3.2.1.4 Menentukan Domain Atribut
1. Tabel Employee
Atribut Domain Value
EID autonumber
BID autonumber
EFirstName Range Value a-z, A-Z
ELastName Range Value a-z, A-Z
EPOB Range Value a-z, A-Z
EDOB Range Value 0-9, ‘/’
EGender Range Value L atau P
EReligion Range Value a-z, A-Z
EAddress Range Value a-z, A-Z, 0-9, ‘.’, ‘,’
EPhone1 Range Value 0-9
EPhone2 Range Value 0-9
UName Range Value a-z, A-Z
PName Range Value a-z, A-Z
93
2. Tabel Item
Atribut Domain Value
IID autonumber
SellingPrice Range Value a-z, A-Z
IName Range Value a-z, A-Z
IGName Range Value a-z, A-Z, 0-9
UOMName Range Value a-z, A-Z
TDDiscType Range Value a-z, A-Z, 0-9
MrName Range Value a-z, A-Z
Value Range Value 0-9
Operator Range Value a-z, A-Z
Picture Range Value a-z, A-Z
ItemCode Range Value 0-9
3. Tabel BranchItem
Atribut Domain Value
BIID autonumber
BID autonumber
IID autonumber
Stock Range Value 0-9
MinimumStock Range Value 0-9
Price Range Value 0-9
94
4. Tabel Vendor
Atribut Domain Value
VID autonumber
IID autonumber
RGName Range Value a-z, A-Z
VGName Range Value a-z, A-Z
VBankName Range Value a-z, A-Z
VName Range Value a-z, A-Z
VCP Range Value a-z, A-Z
VAddr Range Value a-z, A-Z, 0-9, ‘.’, ‘,’
VCity Range Value a-z, A-Z
VPostalCode Range Value 0-9
VPhone1 Range Value 0-9
VPhone2 Range Value 0-9
VFax Range Value 0-9
VEmail Range Value a-z, A-Z, 0-9, ‘.’, ‘,’,’_’
VCHP Range Value 0-9
5. Tabel Branch
Atribut Domain Value
BID autonumber
TBAID autonumber
TxCBID autonumber
95
IsCentral Range Value T, F
BName Range Value a-z, A-Z
BAddress Range Value a-z, A-Z, 0-9, ‘.’, ‘,’
BCity Range Value a-z, A-Z, ‘.’
BHead Range Value a-z, A-Z
BQty Range Value a-z, A-Z
BPostalCode Range Value 0-9
BCountry Range Value a-z, A-Z
BPhone1 Range Value 0-9
BPhone2 Range Value 0-9
BFax Range Value 0-9
BEmail Range Value a-z, A-Z, 0-9, ‘.’, ‘,’,’_’
RGName Range Value a-z, A-Z
6. Tabel Member
Atribut Domain Value
MID autonumber
MFirstName Range Value a-z, A-Z
MLastName Range Value a-z, A-Z
MDOB Range Value 0-9, ‘/’
MPOB Range Value a-z, A-Z
MGender Range Value L atau P
MAddress Range Value a-z, A-Z, 0-9, ‘.’, ‘,’
96
MPhone Range Value 0-9
MEmail Range Value a-z, A-Z, 0-9, ’@’, ‘.’, ‘,’, ’_’
MJoinDate Range Value 0-9, ‘/’
MExpiredDate Range Value 0-9, ‘/’
MTName Range Value a-z, A-Z
7. Tabel ItemMutation
Atribut Domain Value
TxIMID autonumber
BID autonumber
BIID autonumber
UID autonumber
TxDate Range Value 0-9, ‘/’
Status Range Value a-z, A-Z
Reason Range Value a-z, A-Z
Qty Range Value 0-9
Notes Range Value a-z, A-Z, 0-9
8. Tabel Tx
Atribut Domain Value
TxID autonumber
BIID autonumber
UID autonumber
BID autonumber
MID automember
97
TxDate Range Value 0-9, ‘/’
TxGrandTotal Range Value 0-9
TxDisc Range Value 0-9,’,’
TxTax Range Value 0-9,’%’
Qty Range Value 0-9
Disc Range Value 0-9,’,’
Price Range Value 0-9,’,’
PaymentType Range Value a-z, A-Z
PaymentCode Range Value 0-9
TxGrandTotalFinal Range Value 0-9, ‘/’
9. Tabel PO
Atribut Domain Value
TxPOID autonumber
EID autonumber
VID autonumber
IID autonumber
BID autonumber
TxDate Range Value 0-9, ‘/’
Qty Range Value 0-9
PurchPrice Range Value 0-9
Disc Range Value 0-9,’,’
TxGrandTotal Range Value 0-9
Status Range Value a-z, A-Z
98
3.2.1.5 Menentukan Atribut Candidate Key dan Primary Key
No. Entitas Candidate Key Primary Key
1. Employee EID
BID
EID
2. Item IID IID
3. Vendor VID
IID
VID
4. BranchItem BIID
BID
IID
BIID
5. Branch BID
TBAID
TxCBID
BID
6. Member MID MID
7. Tx TxID
MID
BIID
BID
UID
TxID
8. PO TxPOID
IID
EID
VID
BID
TxPOID
9. ItemMutation TxIMID
BIID
BID
UID
TxIMID
99
Gambar 3.8 Entity Relationship Diagram dengan Primary Key
3.2.1.6 Mempertimbangkan konsep pemodelan enhanced (optional)
Tujuan dari langkah ini adalah untuk mempertimbangkan
penggunaan enhanced modelling concept. Pada desain basis data,
sejauh ini tidak ditemukan kebutuhan untuk menggunakan model
enhanced sehingga langkah ini dilewati.
3.2.1.7 Memeriksa model akan adanya redundansi
Tujuan dari langkah ini adalah untuk menghindari adanya
redundansi pada model data. Ada dua langkah yang dilakukan,
yaitu :
1. Memeriksa hubungan one-to-one relationship (1:1)
Dapat dilakukan dengan cara mengidentifikasikan
dua entitas yang sebenarnya memiliki arti yang sama,
100
namun dalam penulisan memiliki nama entitas yang
berbeda, dan kedua relasi memiliki hubungan one to one
(1:1). Kemudian dapat dilakukan penggabungan menjadi
satu entitas, di mana jika kedua entitas tersebut memiliki
primary key yang berbeda, maka harus dipilih satu primary
key untuk entitas yang dihasilkan dari penggabungan
tersebut.
Tetapi ada kasus lain di mana terdapat hubungan
one to one (1:1), tetapi kedua entitas tersebut tidak
menggambarkan obyek yang sama dalam perusahaan,
maka kedua entitas tersebut tidak dapat digabungkan.
Contoh:
Relasi 1 : 1 Entitas Employee dan Branch
Gambar 3.9 Hubungan Employee dan Branch
Entitas Employee dan Branch mempunyai
hubungan one to one, namun obyek dari keduanya berbeda
dan tidak memiliki arti yang sama. Entitas employee berisi
karyawan yang bertugas menangani cabang minimarket,
sedangkan Branch berisi cabang yang dimiliki oleh
101
Minimarket Pentamart, sehingga entitas ini tidak dapat
digabungkan.
2. Menghilangan redundansi relasi
Setelah dilakukan pemeriksaan terhadap ERD
model konseptual, tidak ditemukan adanya relasi yang
redundan.
3.2.1.8 Memvalidasi model konseptual terhadap user transactions
Tujuan dari langkah ini adalah untuk memastikan bahwa
model konseptual telah mendukung transaksi-transaksi yang
dibutuhkan. Pendekatan yang dilakukan adalah dengan
menggunakan transaction pathways.
Gambar 3.10 ERD Konseptual dengan User Transaction
102
Keterangan :
1. List pesanan barang yang akan dibeli.
2. List pembayaran.
3. Menampilkan informasi barang yang telah terjual di cabang.
4. Menampilkan informasi pemeriksaan stok barang antar
cabang.
5. Menampilkan informasi barang yang akan di mutasi ke
cabang lain.
6. Menampilkan informasi pengurangan barang karena mutasi.
7. List pembelian barang atau purchase order.
8. Memberikan informasi barang yang dibeli kepada vendor.
9. Memberikan informasi purchase order dan pembayaran.
10. Menampilkan informasi penerimaan barang yang telah dibeli
dari vendor sehingga menambah persediaan barang.
11. Menampilkan informasi persediaan barang yang ada di tiap
cabang.
3.2.1.9 Review model data konseptual dengan user
Tujuan dari langkah ini adalah untuk memastikan bahwa
model data tersebut secara tepat menggambarkan transaksi dan
kebutuhan data secara nyata dalam perusahaan. Model data yang
telah dibuat dirasa sudah sudah cukup mendukung Minimarket
Pentamart.
103
3.2.2 Pemilihan Database Management System (DBMS)
Pemilihan DBMS ini merupakan langkah yang akan dilakukan
untuk menentukan DMBS yang akan digunakan oleh perusahaan. DBMS
yang menjadi pertimbangan adalah MySQL dan SQL Express 2005.
DBMS Hardware Spesifikasi
MySQL Processor Windows : 166 M Hz atau lebih
Linux : Intel 32- bit, Intel 64-bit,
S/3909672 generation atau lebih,
Multiprise 3000, eServer z-Series.
Solaris: Solaris UltraSPARC-based
computer
Memory RAM : 128 MB (256 MB diutamakan)
Virtual memory : Initial size 50 MB,
Ukuran Maksimal 400 MB
Hard disk space 100 MB (diutamakan)
Cost $0 (License Umum)
SQL Express 2005 Processor Windows : Minimum 600MHz – 1GHz
atau lebih.
Memory RAM :
Minimum 512 MB atau lebih.
Maksimum, disesuaikan dengan sistem
operasi.
Hard disk space 53.5MB
Cost $0 (License Umum)
104
Keuntungan SQL Server Express :
- Secara umum digunakan karena mudah diinstalasi, mudah dipakai,
dan mudah diatur.
- Pelaksanaannya sederhana, otomatis menjalankan basis data dengan
tampilan yang optimal.
- Tools pengelolaan dan maintenance gratis.
- Integrasi langsung yang mudah dengan perangkat lunak lain,
contohnya dengan Visual Studio Express Edition.
Keuntungan MySQL :
- Cepat dan sederhana, baik untuk basis data web.
- Dapat mendukung platform lain, tidak hanya berdasarkan platform
Windows saja.
- Hardware yang dibutuhkan lebih sedikit, sehingga lebih cost
efficient
- Dapat diperoleh dengan mudah, karena merupakan software open
source atau free software.
105
3.2.3 Perancangan Basis Data Logikal
Perancangan basis data logikal adalah proses membangun model
informasi yang digunakan perusahaan atau organisasi berdasarkan model
data tertentu, tetapi tidak bergantung dari Database Management System
(DBMS) dan pertimbangan fisik lainnya. Berikut adalah langkah-langkah
perancangan basis data logikal :
3.2.3.1 Menghilangkan Fitur-Fitur yang Tidak Sesuai dengan Model
Relasional
a. Menghilangkan relasi binary many-to-many (*:*)
• Hubungan (*:*) Tx dan BranchItem menghasilkan entitas
baru bernama TxDetail.
106
menjadi :
Gambar 3.11 Hubungan antara Tx dengan BranchItem
• Hubungan (*:*) PO dan Item menghasilkan entitas baru
bernama PODetail.
menjadi :
Gambar 3.12 Hubungan antara PO dengan BranchItem
107
• Hubungan (*:*) ItemMutation dan BranchItem
menghasilkan entitas baru bernama ItemMutationDetail.
menjadi :
Gambar 3.13 Hubungan antara ItemMutation dengan BranchItem
b. Menghilangkan tipe relasi rekursif many-to-many (*:*)
• Item
Gambar 3.14 Relasi Rekursif (*:*) Item
108
menjadi :
• Employee
Gambar 3.15 Relasi Rekursif (*:*) Employee
menjadi :
109
• Vendor
Gambar 3.16 Relasi Rekursif (*:*) Vendor
menjadi :
• Member
Gambar 3.17 Relasi Rekursif (*:*) Member
110
menjadi :
c. Menghilangkan tipe relasi kompleks
Dalam pemodelan logikal data lokal, tidak ditemukan
adanya tipe relasi kompleks.
d. Menghilangkan atribut multi-valued
Dalam pemodelan logikal data lokal, tidak ditemukan
adanya multi-valued attributes.
3.2.3.2 Menurunkan Relasi untuk Model Data Logikal
a. Tipe Entitas Kuat
Entitas kuat merupakan entitas yang dapat berdiri
sendiri dan tidak bergantung pada entitas lainnya, yang
termasuk di antaranya adalah :
111
• Branch (BID, TxCBID, TBAID, IsCentral, BName,
BAddress, BCity, BHead, BQty, BPostalCode,
BCountry, BPhone1, BPhone2, BFax, BEmail, RGName)
Primary Key BID
• Employee (EID, BID, EFirstName, ELastName, EPOB,
EDOB, EGender, EReligion, EAddress, EPhone1,
EPhone2, UName, PName)
Primary Key EID
• Vendor (VID, IID, RGName, VBankName, VGName,
VName, VAddr, VCity, VPostalCode, VPhone1,
VPhone2, VFax, VEmail, VCHP)
Primary Key VID
• Member (MID, MFirstName, MLastName, MDOB,
MPOB, MGender, MAddress, MPhone, MEmail,
MJoinDate, MexpiredDate, MTName)
Primary Key MID
• Item (IID, SellingPrice, IName, IGName, UOMName,
TDDiscType, MrName, Value, Operator, Picture,
ItemCode)
Primary Key IID
112
b. Tipe Entitas Lemah
Merupakan kebalikan dari tipe entitas kuat, di mana
entitas ini memiliki ketergantungan terhadap entitas lain,
yang termasuk di antaranya adalah :
• BranchItem (BIID, BID, IID, Stock, MinimumStock,
Price)
Primary Key BIID
• TxHeader (TxID, MID, UID, BID, BIID, TxDate, Qty,
Disc, Price, TxDisc, TxTax, TxGrandTotal,
PaymentType, PaymentCode, TxGrandTotalFinal)
Primary Key TxID
• TxDetail (TxID, BIID, Qty, Disc, Price)
Primary Key TxID, BIID
• POHeader (TxPOID, EID, VID, IID, BIID, TxDate,
Qty, PurchPrice, Disc, TxGrandTotal, Status)
Primary Key TxPOID
• PODetail (TxPOID, BIID, Qty, PurchPrice, Disc)
Primary Key TxPOID, BIID
• ItemMutationHeader (TxIMID, UID, BID,BIID,
TxDate, Status, Reason, Qty, Notes)
Primary Key TxIMID
• ItemMutationDetail (TxIMID, BIID, Qty)
Primary Key TxIMID, BIID
113
• ItemGroup (IGID, IGName, IGDesc)
Primary Key IGID
• Position (PID, PName, PDesc)
Primary Key PID
• VendorGroup (VGID, VGName)
Primary Key VGID
• MembershipType (MTID, MTName, MTDesc,
MTDiscExpression)
Primary Key MTID
c. Mengidentifikasi Tipe Relasi Biner One to One (1:1)
• Hubungan antara Employee dengan Branch
Employee (EID, BID, EFirstName, ELastName, EPOB, EDOB, EGender, EReligion, EAddress, EPhone1, EPhone2, UName, PName) Primary Key EID
Branch (BID, EID, TxCBID, TBAID, IsCentral, BName, BAddress, BCity, BHead, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail, RGName) Primary Key BID Foreign Key EID references Employee(EID)
114
d. Mengidentifikasi Tipe Relasi Biner One to Many (1:*)
• Hubungan antara Employee dengan POHeader
Employee (EID, BID, EFirstName, ELastName, EPOB, EDOB, EGender, EReligion, EAddress, EPhone1, EPhone2, UName, PName) Primary Key EID
POHeader (TxPOID, EID, VID, IID, BIID, TxDate, Qty, PurchPrice, Disc, TxGrandTotal, Status) Primary Key TxPOID Foreign Key EID references Employee(EID)
• Hubungan antara Vendor dengan POHeader
Vendor (VID, IID, RGName, VGName, VBankName, VName, VAddr, VCity, VPostalCode, VPhone1, VPhone2, VFax, VEmail, VCHP) Primary Key VID
POHeader (TxPOID, EID, VID, IID, BIID, TxDate, Qty, PurchPrice, Disc, TxGrandTotal, Status) Primary Key TxPOID Foreign Key EID references Employee(EID) Foreign Key VID references Vendor(VID)
• Hubungan antara Member dengan TxHeader
Member (MID, MFirstName, MLastName, MDOB, MPOB, MGender, MAddress, MPhone, MEmail, MJoinDate, MexpiredDate, MTName) Primary Key MID
TxHeader (TxID, MID, UID, BID, BIID, TxDate, Qty, Disc, Price, TxDisc,TxTax,TxGrandTotal, PaymentType, PaymentCode, TxGrandTotalFinal) Primary Key TxID Foreign Key MID references Member(MID)
115
• Hubungan antara Branch dengan ItemMutationHeader
Branch (BID, EID, TxCBID, TBAID, IsCentral, BName, BAddress, BCity, BHead, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail, RGName) Primary Key BID
ItemMutationHeader (TxIMID, BID, UID, BIID, Status, TxDate, Reason, Qty, Notes) Primary Key MID Foreign Key BID references Branch(BID)
• Hubungan antara Branch dengan Item
• Hubungan antara ItemGroup dengan Item
ItemGroup (IGID, IGName, IGDesc) Primary Key IGID
Item (IID, BID, IGID, SellingPrice, IName, IGName, UOMName, TDDiscType, MrName, Value, Operator, Picture, ItemCode) Primary Key IID Foreign Key IGID references ItemGroup(IGID)
Branch ( BID, EID, TxCBID, TBAID, IsCentral, BName, BAddress, BCity, BHead, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail, RGName) Primary Key BID
Item (IID, BID, SellingPrice, IName, IGName, UOMName, TDDiscType, MrName, Value, Operator, Picture, ItemCode) Primary Key IID Foreign Key BID references Branch(BID
116
• Hubungan antara Position dengan Employee
Position (PID, PName, PDesc) Primary Key PID
Employee (EID, BID, PID EFirstName, ELastName, EPOB, EDOB, EGender, EReligion, EAddress, EPhone1, EPhone2, UName, PName) Primary Key EID Foreign Key PID references Position(PID)
• Hubungan antara VendorGroup dengan Vendor
VendorGroup (VGID, VGName) Primary Key VGID
Vendor (VID, IID, VGID, VGName, VBankName, RGName, VName, VAddr, VCity, VPostalCode, VPhone1, VPhone2, VFax, VEmail, VCHP) Primary Key VID Foreign Key VGID references VendorGroup(VGID)
• Hubungan antara MembershipType dengan Member
MembershipType (MTID, MTName, MTDesc, MTDiscExpression) Primary Key MTID
Member (MID, MTID, MFirstName, MLastName, MDOB, MPOB, MGender, MAddress, MPhone, MEmail, MJoinDate, MexpiredDate, MTName) Primary Key MID Foreign Key MTID references MembershipType(MTID)
117
e. Mengidentifikasi Tipe Relasi Biner Many to Many (*:*)
• Hubungan antara POHeader dengan BranchItem
POHeader (TxPOID, EID, VID, IID, BIID, TxDate, Qty, PurchPrice, Disc, TxGrandTotal, Status) Primary Key TxPOID Foreign Key EID references Employee(EID) Foreign Key VID references Vendor(VID)
BranchItem (BIID, BID, IID, Stock, MinimumStock, Price) Primary Key BIID
PODetail (TxPOID, BIID, Qty, PurchPrice, Disc) Primary Key (TxPOID, IID)
Foreign Key TxPOID references PO(TxPOID) Foreign Key BIID references BranchItem(BIID)
• Hubungan antara TxHeader dengan BranchItem
TxHeader (TxID, MID, UID, BID, BIID, TxDate, Qty, Disc, Price, TxDisc, TxTax,TxGrandTotal,PaymentType, PaymentCode, TxGrandTotalFinal) Primary Key TxID Foreign Key MID references Member(MID)
BranchItem (BIID, BID, IID, Stock, MinimumStock, Price) Primary Key BIID
TxDetail (TxID, BIID, Qty, Disc, Price)
Primary Key (TxID, BIID) Foreign Key TxID references Tx(TxID) Foreign Key BIID references BranchItem(BIID)
118
• Hubungan antara ItemMutationHeader dengan BranchItem
ItemMutationHeader (TxIMID, BID, UID, BIID, Status, TxDate, Notes, Reason, Qty) Primary Key MID Foreign Key BID references Branch(BID)
BranchItem (BIID, BID, IID, Stock, MinimumStock, Price) Primary Key BIID
ItemMutationDetail (TxIMID, BIID, Qty, Notes) Primary Key (TxIMID, BIID) Foreign Key TxIMID references ItemMutationHeader(TxIMID) Foreign Key BIID references BranchItem(BIID)
f. Mengidentifikasi Atribut Multi-Valued
Dalam pemodelan logikal data lokal, tidak ditemukan
adanya multi-valued attributes.
3.2.3.3 Validasi Relasi dengan Normalisasi
Langkah ini bertujuan untuk memvalidasikan relasi dalam
model data logikal lokal dengan menggunakan teknik normalisasi.
Validasi dengan teknik normalisasi pada relasi dalam model data
logikal lokal yang terjadi adalah sebagai berikut :
• Employee
UNF
Employee (EID, PID, EFirstName, ELastName, EPOB, EDOB, EGender,
EReligion, EAddress, EPhone1, EPhone2, UName, PName)
119
Tabel 3.3 Normalisasi Entitas Employee
1NF Dalam tahap ini ditentukan bahwa PK dari relasi Employee adalah EID. Dalam relasi Employee tidak terdapat repeating group serta unsur perhitungan, berarti relasi Employee sudah berada dalam keadaan normal pertama (1NF) karena sudah memenuhi syarat 1NF.
2NF
Dalam relasi Employee tidak terdapat ketergantungan parsial, berarti relasi Employee sudah berada dalam bentuk normal kedua (2NF) karena sudah memenuhi syarat 2NF.
3NF
Dalam relasi Employee terdapat ketergantungan transitif, maka akan menjadi : Employee (EID, BID, PID, UID, EFirstName, ELastName, EPOB, EDOB, EGender, EReligion, EAddress, EPhone1, EPhone2) Positition (PID, PName, PDesc) User (UID, UName, UPass, UCreatedTime)
• Item
UNF
Item (IID, BID, IName, SellingPrice, IGName, UOMName, Value, Operator,
TDDiscType, MrName, Picture, ItemCode)
Tabel 3.4 Normalisasi Entitas Item
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi Item adalah IID. Dalam relasi Item tidak terdapat repeating group serta unsur perhitungan, berarti relasi Item sudah berada dalam keadaan normal
2NF
Dalam relasi Item terdapat ketergantungan parsial, maka akan menjadi : Item (IID, IName, SellingPrice, IGName, UOMName, Picture, ItemCode) ItemDisc (IID, TDID,
3NF
Dalam relasi Item terdapat ketergantungan transitif, maka akan menjadi : Item (IID, IGID, UOMID, IName, SellingPrice, Picture, ItemCode) ItemDisc (IID, TDID, isActive) ItemGroup (IGID, IGName,
120
pertama (1NF) karena sudah memenuhi syarat 1NF.
TDDiscType, MrName) Conversion (IID, CID, Value, Operator)
IGDesc) UOM (UOMID,UOMName) Conversion (CID, IID, Value, Operator) TxDiscount (TDID, MRID, TDStartDate, TDEndDate, TDDiscType, TDValue, UOMID, Qty, QtyToBuy, IsFreeItem, IsMultiple) Merchant (MRID,MRName, MRDesc)
• Vendor
UNF
Vendor (VID, IID, VGID, VName, VAddr, VCity, VPostalCode, VPhone1,
VPhone2, VFax, VEmail, VCHP, RGName, VGName, VBankName)
Tabel 3.5 Normalisasi Entitas Vendor
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi Vendor adalah VID. Dalam relasi Vendor tidak terdapat repeating group dan unsur perhitungan, berarti relasi Vendor sudah berada dalam keadaan normal pertama (1NF) karena sudah memenuhi syarat 1NF.
2NF
Dalam relasi Vendor terdapat ketergantungan parsial, maka akan menjadi : Vendor (VID, VGID, VName, VAddr, VCity, VPostalCode, VPhone1, VPhone2, VFax, VEmail, VCHP, RGName, VGName) VendorRegister (VID, IID) VBank (VBID, VID,
3NF
Dalam relasi Vendor terdapat ketergantungan transitif, maka akan menjadi : Vendor (VID, VGID, RGID, VName, VAddr, VCity, VPostalCode, VPhone1, VPhone2, VFax, VEmail, VCHP) VendorRegister (VID, IID, Price) Item (IID, IGID, UOMID, IName, SellingPrice, Picture,
121
VBankName)
ItemCode) VBank (VBID, VID, VBankName, VNumRek, VBankHolder) VendorGroup (VGID, VGName) Region (RGID, RGName)
• Branch
UNF
Branch (BID, TBAID, TxCBID, IsCentral, BName, BAddress, BCity, BQty,
BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail, BHead, RGName)
Tabel 3.6 Normalisasi Entitas Branch
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi Branch adalah BID. Dalam relasi Branch tidak terdapat repeating group, dan unsur perhitungan, berarti relasi Branch sudah berada dalam keadaan normal pertama (1NF) karena sudah memenuhi syarat 1NF.
2NF
Dalam relasi Branch terdapat ketergantungan parsial, maka akan menjadi: Branch (BID, TBAID, TxCBID, IsCentral, BName, BAddress, BCity, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail) TxBillingAnnouncement (TBAID, BID) TxCashierBalance (TxCBID, BID)
3NF
Dalam relasi Branch terdapat ketergantungan transitif, maka akan menjadi: Branch (BID, RGID, IsCentral, BName, BAddress, BCity, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail) Region (RGID, RGName) TxBillingAnnouncement (TBAID, BID, TBAContent,TBAStartDate, TBAEndDate) TxCashierBalance (TxCBID, BID, TxCBTerminal,
122
TxCBOpenBalance, TxCBCloseBalance, TxCBOpenBalanceTime, TxCBCloseBalanceTime, TxCBCreateTime, TxCreator, TxApproveTime, TxApproverID, IsVerify)
• Member
UNF
Member (MID, MTID, MFirstName, MLastName, MBOD, MPOB, MGender,
MAddress, MPhone, MEmail, MJoinDate, MExpiredDate, MTName)
Tabel 3.7 Normalisasi Entitas Member
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi Member adalah MID. Dalam relasi Member tidak terdapat repeating group dan unsur perhitungan, berarti relasi Member sudah berada dalam keadaan normal pertama (1NF) karena sudah memenuhi syarat 1NF.
2NF
Dalam relasi Member tidak terdapat ketergantungan parsial, berarti relasi Member sudah berada dalam bentuk normal kedua (2NF) karena sudah memenuhi syarat 2NF.
3NF
Dalam relasi Branch terdapat ketergantungan transitif, maka akan menjadi: Member (MID, MTID, MFirstName, MLastName, MDOB, MPOB, MGender, MAddress, MPhone, MEmail, MJoinDate, MExpiredDate) MembershipType (MTID, MTName, MTDesc, MTDiscExpression)
• BranchItem
UNF
BranchItem (BIID, BID, IID, TxPOID, Stock, MinimumStock, Price)
123
Tabel 3.8 Normalisasi Entitas BranchItem
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi BranchItem adalah BIID.
Dalam relasi BranchItem tidak terdapat repeating group dan unsur perhitungan, berarti relasi BranchItem sudah berada dalam keadaan normal pertama (1NF) karena sudah memenuhi syarat 1NF.
2NF
Dalam relasi BranchItem tidak terdapat ketergantungan parsial, berarti relasi BranchItem sudah berada dalam bentuk normal kedua (2NF) karena sudah memenuhi syarat 2NF.
3NF
Dalam relasi BranchItem terdapat ketergantungan transitif, maka akan menjadi: BranchItem (BIID, BID, IID, Stock, Price, MinimumStock) Branch (BID, RGID, IsCentral, BName, BAddress, BCity, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail, IsCentral) Item (IID, IGID, UOMID, IName, SellingPrice, Picture, ItemCode)
• PO
UNF
PO (TxPOID, EID, VID, IID, BIID, TxDate, Qty, PurchPrice, Disc,
TxGrandTotal, Status)
Tabel 3.9 Normalisasi Entitas PO
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi PO adalah TxPOID.
Dalam relasi PO tidak terdapat repeating group, tetapi terdapat unsur perhitungan seperti
2NF
Dalam relasi PO terdapat ketergantungan parsial, maka akan menjadi: POHeader (TxPOID, EID, VID, BIID, TxDate, Status)
3NF
Dalam relasi PO terdapat ketergantungan transitif, maka akan menjadi: POHeader (TxPOID, EID, VID, BIID, TxDate, Status)
124
TxGrandTotal. Pada tahap 1NF perhitungan ini harus dihilangkan menjadi : PO (TxPOID, EID, VID, IID, BIID, TxDate, Qty, PurchPrice, Disc, Status)
PODetail (TxPOID, IID, Qty, PurchPrice, Disc)
PODetail (TxPOID, IID, Qty, PurchPrice, Disc) Employee (EID, BID, PID, UID, EFirstName, ELastName, EPOB, EDOB, EGender, EReligion, EAddress, EPhone1, EPhone2) BranchItem (BIID, BID, IID, Stock, MinimumStock, Price) Vendor (VID, VGID, RGID, VName, VAddr, VCity, VPostalCode, VPhone1, VPhone2, VFax, VEmail, VCHP)
• Tx
UNF
Tx (TxID, UID, MID, BID, BIID, TxTax , TxDisc, TxDate, Qty, Disc, Price,
TxGrandTotal, PaymentCode, PaymentType, TxGrandTotalFinal)
Tabel 3.10 Normalisasi Entitas Tx
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi Tx adalah TxID. Dalam relasi Tx tidak terdapat repeating group, tetapi terdapat unsur perhitungan seperti TxGrandTotal dan TxGrandTotalFinal.
2NF
Dalam relasi Tx terdapat ketergantungan parsial, maka akan menjadi: TxHeader (TxID, UID, MID, BID, TxTax , TxDisc, TxDate, PaymentCode, PaymentType) TxDetail (TxID, BIID,
3NF
Dalam relasi Tx terdapat ketergantungan transitif, maka akan menjadi: TxHeader (TxID, UID, MID, BID, TxTax, TxDisc, TxDate, PaymentType, PaymentCode, IsClosed)
125
Pada tahap 1NF perhitungan ini harus dihilangkan menjadi : Tx (TxID, UID, MID, BID, BIID, TxTax , TxDisc, TxDate, Qty, Disc, Price, PaymentCode, PaymentType)
Qty, Disc, Price)
TxDetail (TxID, BIID, Qty, Disc Price) Branch (BID, RGID, IsCentral, BName, BAddress, BCity, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail, IsCentral) Member (MID, MFirstName, MLastName, MBOD, MPOB, MGender, MAddress, MPhone, MEmail, MJoinDate, MExpiredDate) User (UID, UName, UPass, UCreatedTime)
• ItemMutation
UNF
ItemMutation (TxIMID, BID, UID, BIID, Status, Reason, TxDate, Qty, Notes)
Tabel 3.11 Normalisasi Entitas ItemMutation
1NF
Dalam tahap ini ditentukan bahwa PK dari relasi ItemMutation adalah TxIMID. Dalam relasi ItemMutation tidak terdapat repeating group dan unsur perhitungan, berarti relasi ItemMutation sudah berada dalam keadaan normal pertama
2NF
Dalam relasi ItemMutation terdapat ketergantungan parsial, maka akan menjadi: ItemMutationHeader (TxIMID, Status, Reason, TxDate) ItemMutationDetail (TxIMID, BIID, Qty, Notes)
3NF
Dalam relasi ItemMutation terdapat ketergantungan transitif, maka akan menjadi: ItemMutationHeader (TxIMID, BID, UID, BIID, Status, Reason, TxDate) ItemMutationDetail (TxIMID, BIID, Qty, Notes)
126
(1NF) karena sudah memenuhi syarat 1NF.
User (UID, UName, UPass, UCreatedTime) BranchItem (BIID, BID, IID, Stock, Price, MinimumStock) Branch (BID, RGID, IsCentral, BName, BAddress, BCity, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail, IsCentral)
127
Gambar 3.18 ERD Logikal
128
3.2.3.4 Validasi Relasi melalui Transaksi Pengguna
Gambar 3.19 Validasi Relasi melalui Transaksi Pengguna
129
Keterangan :
a. Menampilkan informasi barang yang ada di tiap cabang.
b. Menampilkan data-data penjualan yang ada dalam setiap transaksi yang
terjadi di tiap cabang.
c. Menampilkan data-data pembelian barang ke vendor yang terjadi di tiap
cabang.
d. Menampilkan informasi mutasi barang yang terjadi antar cabang.
e. Menampilkan informasi keanggotaan tiap member.
f. Menampilkan data-data informasi transaksi yang terjadi, termasuk total
jumlah uang yang masuk pada kasir dan informasi yang dicetak pada bukti
pembayaran.
g. Menampilkan data balancing pada kasir ketika minimart dibuka tiap
harinya dan catatan penjualan pada hari itu.
h. Menghasilkan laporan penjualan barang yang di-summary dari setiap
transaksi yang terjadi sehari-hari berdasarkan data-data yang ada.
i. Menghasilkan laporan pembelian barang ke vendor yang terjadi
berdasarkan data-data yang ada.
j. Menghasilkan laporan mutasi barang yang terjadi antar cabang.
3.2.3.5 Mendefinisikan Integrity Constraint
Pada bagian ini akan mendefinisikan tindakan yang akan
dilakukan pada saat terjadi update atau delete pada foreign key
130
yang terdapat pada setiap entiti, sehingga terjadi kesamaan data
antara data yang terdapat pada primary key dan foreign key.
Tabel 3.12 Referential Integrity Constraint
Employee (EID, BID, PID, UID, EFirstName, ELastName, EPOB, EDOB, EGender, EReligion, EAddress, EPhone1, EPhone2) Primary Key EID Foreign Key BID references Branch(BID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key PID references Position(PID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key UID references User(UID) ON UPDATE CASCADE ON DELETE NO ACTION Branch (BID, RGID, IsCentral, BName, BAddress, BCity, BQty, BPostalCode, BCountry, BPhone1, BPhone2, BFax, BEmail) Primary Key BID Foreign Key RGID references Region(RGID) ON UPDATE CASCADE ON DELETE NO ACTION Vendor (VID, VGID, RGID, VName, VAddr, VCity, VCP, VPostalCode, VPhone1, VPhone2, VFax, VEmail, VCHP) Primary Key VID Foreign Key VGID references VendorGroup(VGID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key RGID references Region(RGID) ON UPDATE CASCADE ON DELETE NO ACTION VendorRegister (VID, IID, Price) Primary Key VID, IID Foreign Key VID references Vendor(VID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key IID references Item(IID) ON UPDATE CASCADE ON DELETE NO ACTION Item (IID, IGID, UOMID, IName, SellingPrice, Picture, ItemCode) Primary Key IID Foreign Key IGID references ItemGroup(IGID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key UOMID references UOM(UOMID) ON UPDATE CASCADE ON DELETE NO ACTION ItemDisc (IID, TDID, isActive) Primary Key IID, TDID Foreign Key IID references Item(IID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key TDID references TxDiscount(TDID) ON UPDATE CASCADE ON DELETE NO ACTION
131
BranchItem (BIID, BID, IID, Stock, MinimumStock, Price) Primary Key BIID Foreign Key BID references Branch(BID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key IID references Item(IID) ON UPDATE CASCADE ON DELETE NO ACTION Conversion (CID, IID, Value, Operator) Primary Key CID Foreign Key IID references Item(IID) ON UPDATE CASCADE ON DELETE NO ACTION VBank (VBID, VID, VBankName, VNumRek, VBankHolder) Primary Key VBID Foreign Key VID references Vendor(VID) ON UPDATE CASCADE ON DELETE NO ACTION Membership (MID, MTID, MFirstName, MLastName, MDOB, MPOB, MGender, MAddress, MPhone, MEmail, MJoinDate, MExpiredDate) Primary Key MID Foreign Key MTID references MembershipType(MTID) ON UPDATE CASCADE ON DELETE NO ACTION POHeader (TxPOID, EID, VID, BIID, TxDate, Status) Primary Key TxPOID Foreign Key EID references Employee(EID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key VID references Vendor(VID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key BIID references BranchItem(BIID) ON UPDATE CASCADE ON DELETE NO ACTION PODetail (TxPOID, IID, Qty, PurchPrice, Disc) Primary Key TxPOID, IID Foreign Key TxPOID references POHeader(TxPOID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key IID references Item(IID) ON UPDATE CASCADE ON DELETE NO ACTION TxHeader (TxID, UID, MID, BID, TxTax , TxDisc, TxDate, PaymentType, PaymentCode, IsClosed) Primary Key TxID Foreign Key UID references User(UID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key MID references Member(MID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key BID references Branch(BID) ON UPDATE CASCADE ON DELETE NO ACTION TxDetail (TxID, BIID, Qty, Disc Price) Primary Key TxID, BIID Foreign Key TxID references Tx(TxID) ON UPDATE CASCADE ON DELETE NO ACTION
132
Foreign Key BIID references BranchItem(BIID) ON UPDATE CASCADE ON DELETE NO ACTION ItemMutationHeader (TxIMID, BID, UID, BIID, Status, Reason, TxDate) Primary Key TxIMID Foreign Key UID references User(UID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key BID references Branch(BID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key BIID references BranchItem(BIID) ON UPDATE CASCADE ON DELETE NO ACTION ItemMutationDetail (TxIMID, BIID, Qty, Notes) Primary Key TxIMID, BIID Foreign Key TxIMID references ItemMutationDetail(TxIMID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key BIID references BranchItem(BIID) ON UPDATE CASCADE ON DELETE NO ACTION TxDiscount (TDID, MRID, TDStartDate, TDEndDate, TDDiscType, TDValue, UOMID, Qty, QtyToBuy, IsFreeItem, IsMultiple Primary Key TDID Foreign Key MRID references Merchant(MRID) ON UPDATE CASCADE ON DELETE NO ACTION TxBillingAnnouncement (TBAID, BID, TBAContent, TBAStartDate, TBAEndDate) Primary Key TBAID, BID Foreign Key TBAID references TxBillingAnnouncement (TBAID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key BID references Branch(BID) ON UPDATE CASCADE ON DELETE NO ACTION TxCashierBalance (TxCBID, BID, TxCBTerminal, TxCBOpenBalance,TxCBCloseBalance,TxCBOpenBalanceTime, TxCBCloseBalanceTime, TxCBCreateTime, TxCreatorID, IsVerify TxApproveTime, TxApproverID) Primary Key TxCBID, BID Foreign Key TxCBID references TxCashierBalance (TxCBID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key BID references Branch(BID) ON UPDATE CASCADE ON DELETE NO ACTION
3.2.3.6 Memeriksa Model Data Logikal dengan Pengguna
Bertujuan untuk meninjau kembali dan memastikan bahwa
model data logikal lokal sudah merupakan representasi yang benar
dari kebutuhan-kebutuhan data perusahaan.
133
3.2.3.7 Menggabungkan Model Data Logikal Lokal menjadi Model
Global
Bertujuan untuk menggabungkan model data logikal lokal
yang ada menjadi sebuah model data logikal global perusahaan.
Dalam perancangan ini hanya menggunakan satu view yang
merepresentasikan model data lokal, oleh karena itu tidak perlu
dilakukan penggabungan model data lokal karena model data
lokal akan langsung menjadi model data global.
3.2.3.8 Memeriksa Model terhadap Future Growth
Bertujuan untuk memastikan apakah ada perubahan yang
signifikan di masa mendatang, dan memperkirakan apakah model
data logikal global dapat mengakomodasinya.
Perancangan basis data yang telah dibuat masih
memungkinkan untuk diperluas jika perusahaan memiliki
kebutuhan baru, contohnya jika perusahaan menginginkan sistem
informasi gaji karyawan yang dapat sekaligus melakukan
perhitungan komisi yang didapatkannya, maka rancangan basis
data ini masih dapat dikembangkan lagi sesuai dengan kebutuhan
perusahaan kelak.
134
3.2.4 Perancangan Basis Data Fisikal
3.2.4.1 Penerjemahan Model Data Logikal Global untuk DBMS
Target
• Perancangan Relasi Dasar
Tujuan dari langkah ini adalah untuk mengidentifikasikan
basis data relasional dalam model data logikal global yang
digunakan dalam DBMS dengan menggunakan DBDL
(Database Design Language).
Berikut ini merupakan perancangan DBDL (Database
Design Language) untuk setiap entitas :
1. DBDL Employee
Domain EID : Integer, length 11
Domain UID : Integer, length 11
Domain BID : Integer, length 11
Domain PID : Integer, length 11
Domain EFirstName : Variable length character string, length 20
Domain ELastName : Variable length character string, length 25
Domain EPOB : Variable length character string, length 20
Domain EDOB : Datetime
Domain EGender : Single character, ‘L’ atau ‘P’
Domain EReligion : Variable length character string, length 10
Domain EAddress : Variable length character string, length 60
135
EPhone1 : Variable length character string, length 15
EPhone2 : Variable length character string, length 15
Employee (
EID EID NOT NULL auto_increment ,
UID UID NOT NULL,
BID BID NOT NULL,
PID PID NOT NULL,
EFirstName EFirstName NOT NULL,
ELastName ELastName NOT NULL,
EPOB EPOB NOT NULL,
EDOB EDOB NOT NULL,
EGender EGender NOT NULL,
EReligion EReligion NOT NULL,
EAddress EAddress NOT NULL,
EPhone1 EPhone1 NOT NULL,
EPhone2 EPhone2 NOT NULL,
Primary Key (EID),
Foreign Key BID references Branch(BID) ON UPDATE CASCADE
ON DELETE NO ACTION,
Foreign Key PID references Position(PID) ON UPDATE CASCADE
ON DELETE NO ACTION,
Foreign Key UID references User(UID) ON UPDATE CASCADE
ON DELETE NO ACTION );
136
2. DBDL Membership
Domain MID : Integer, length 11
Domain MTID : Integer, length 11
Domain MFirstName : Variable length character string, length 20
Domain MLastName : Variable length character string, length 25
Domain MDOB : Datetime
Domain MPOB : Variable length character string, length 20
Domain MGender : Single character, ‘L’ atau ‘P’
Domain MAddress : Variable length character string, length 60
Domain MPhone : Variable length character string, length 15
Domain MEmail : Variable length character string, length 15
Domain MJoinDate : Datetime
Domain MExpiredDate : Datetime
Membership (
MID MID NOT NULL auto_increment,
MTID MTID NOT NULL,
MFirstName MFirstName NOT NULL,
MLastName MLastName NOT NULL,
MDOB MDOB NOT NULL,
MPOB MPOB NOT NULL,
MGender MGender NOT NULL,
MAddress MAddress NOT NULL,
MPhone MPhone NOT NULL,
137
MEmail MEmail NOT NULL,
MJoinDate MJoinDate NOT NULL,
MExpiredDate MExpiredDate NOT NULL,
Primary Key (MID),
Foreign Key MTID references MembershipType (MTID) ON
UPDATE CASCADE ON DELETE NO ACTION
);
3. DBDL Item
Domain IID : Integer, length 11
Domain UOMID : Integer, length 11
Domain IGID : Integer, length 11
Domain SellingPrice : Decimal (20,2)
Domain IName : Variable length character string, length 25
Domain Picture : Variable length character string, length 25
Domain ItemCode : Variable length character string, length 30
Item (
IID IID NOTNULL auto_increment,
UOMID UOMID NOT NULL,
IGID IGID NOT NULL,
SellingPrice SellingPrice NOT NULL,
IName IName NOT NULL,
Picture Picture NOT NULL,
138
ItemCode ItemCode NOT NULL,
Primary Key (IID),
Foreign Key IGID references ItemGroup(IGID) ON UPDATE
CASCADE ON DELETE NO ACTION,
FOREIGN KEY UOMID REFERENCES UOM(UOMID) ON
UPDATE CASCADE ON DELETE NO ACTION
);
4. DBDL Vendor
Domain VID : Integer, length 11
Domain VGID : Integer, length 11
Domain RGID : Integer, length 11
Domain VName : Variable length character string, length 25
Domain VCP : Variable length character string, length 25
Domain VAddr : Variable length character string, length 60
Domain VCity : Variable length character string, length 20
Domain VPostalCode : Variable length character string, length 10
Domain VPhone1 : Variable length character string, length 15
Domain VPhone2 : Variable length character string, length 15
Domain VFax : Variable length character string, length 15
Domain VEmail : Variable length varchar string, length 30
Domain VCHP : Variable length varchar string, length 15
Vendor (
139
VID VID NOT NULL auto_increment,
VGID VGID NOT NULL,
RGID RGID NOT NULL,
VName VName NOT NULL,
VCP VCP NOT NULL,
VAddr VAddr NOT NULL,
VCity VCity NOT NULL,
VPostalCode VPostalCode NOT NULL,
VPhone1 VPhone1 NOT NULL,
VPhone2 VPhone2 NOT NULL,
VFax VFax NOT NULL,
VEmail VEmail NOT NULL,
VCHP VCHP NOT NULL,
Primary Key (VID),
Foreign Key RGID references Region(RGID) ON UPDATE
CASCADE ON DELETE NO ACTION,
Foreign Key VGID references VendorGroup(VGID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
5. DBDL Branch
Domain BID : Integer, length 11
Domain RGID : Integer, length 11
140
Domain IsCentral : Integer, length 1
Domain BName : Variable length varchar string, length 20
Domain BAddress : Variable length varchar string, length 60
Domain BCity : Variable length varchar string, length 20
Domain BQty : Variable length varchar string, length 2
Domain BPostalCode : Variable length character string, length 15
Domain BCountry : Variable length character string, length 25
Domain BPhone1 : Variable length character string, length 15
Domain BPhone2 : Variable length character string, length 15
Domain BFax : Variable length character string, length 15
Domain BEmail : Variable length character string, length 25
Branch (
BID BID NOT NULL auto_increment,
RGID RGID NOT NULL,
IsCentral IsCentral NOT NULL,
BName BName NOT NULL,
BAddress BAddress NOT NULL,
BCity BCity NOT NULL,
BPostalCode BPostalCode NOT NULL,
BCountry BCountry NOT NULL,
BPhone1 BPhone1 NOT NULL,
BPhone2 BPhone2 NOT NULL,
BFax BFax NOT NULL,
141
BEmail BEmail NOT NULL,
Primary Key (BID),
Foreign Key RGID references Region(RGID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
6. DBDL User
Domain UID : Integer, length 11
Domain UName : Variable length character string, length 25
Domain UPass : Variable length character string, length 30
Domain UCreatedTime : Datetime
User (
UID UID NOT NULL auto_increment,
UName UName NOT NULL,
UPass UPass NOT NULL,
UCreatedTime UCreated NOT NULL,
Primary Key (UID),
);
7. DBDL Position
Domain PID : Integer, length 11
Domain PName : Variable length character string, length 25
Position (
142
PID PID NOT NULL auto_increment,
PName PName NOT NULL,
PDesc PDesc NOTNULL,
Primary Key (PID)
);
8. DBDL BranchItem
Domain BIID : Integer, length 11
Domain BID : Integer, length 11
Domain IID : Integer, length 11
Domain Stock : Integer, length 11
Domain MinimumStock : Integer, length 11
Domain Price : Decimal (20,2)
BranchItem (
BIID BIID NOT NULL auto_increment,
BID BID NOT NULL,
IID IID NOT NULL,
Stock Stock NOT NULL,
MinimumStock MinimumStock NOT NULL,
Price Price NOT NULL,
Primary Key (BIID),
Foreign Key BID references Branch(BID) ON UPDATE
CASCADE ON DELETE NO ACTION,
143
Foreign Key IID references Item(IID) ON UPDATE CASCADE ON
DELETE NO ACTION,
);
9. DBDL MembershipType
Domain MTID : Integer, length 11
Domain MTName : Variable length character string, length 25
Domain MTDesc : Variable length character string, length 100
Domain MTDiscExpression : Variable length character string, length 50
Membership (
MTID MTID NOT NULL,
MTName MTName NOT NULL,
MTDesc MTDesc NOT NULL,
MTDiscExpression MTDiscExpression NOT NULL,
Primary Key (MTID)
);
10. DBDL VendorGroup
Domain VGID : Integer, length 11
Domain VGName : Variable length character string, length 25
VendorGroup (
VGID VGID NOT NULL auto_increment,
VGName VGID NOT NULL,
144
Primary Key (VGID)
);
11. DBDL VBank
Domain VBID : Integer, length 11
Domain VID : Integer, length 11
Domain VBankName : Variable length character string, length 25
Domain VNumRek : Variable length character string, length 20
Domain VBankHolder : Variable length character string, length 30
VBank (
VBID VBID NOT NULL auto_increment,
VID VID NOT NULL,
VBankName VBankName NOT NULL,
VNumRek VNumRek NOT NULL,
VBankHolder VBankHolder NOT NULL,
Primary Key (VBID),
Foreign Key VID references Vendor(VID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
12. DBDL ItemGroup
Domain IGID : Integer, length 11
Domain IGName : Variable length character string, length 25
145
Domain IGDesc : Variable length character string, length 100
ItemGroup (
IGID IGID NOT NULL auto_increment,
IGName IGName NOT NULL,
IGDesc IGDesc NOT NULL,
Primary Key (IGID)
);
13. DBDL UOM
Domain UOMID : Integer, length 11
Domain UOMName : Variable length character string, length 25
UOM (
UOMID UOMID NOT NULL auto_increment,
UOMName UOMName NOT NULL,
Primary Key (UOMID)
);
14. DBDL Conversion
Domain CID : Integer, length 11
Domain IID : Integer, length 11
Domain Value : Double
Domain Operator : Variable length character string, length 30
Conversion (
146
CID CID NOT NULL auto_increment,
IID IID NOT NULL,
Value Value NOT NULL,
Operator Operator NOT NULL,
Primary Key (CID),
Foreign Key IID references Item(IID) ON UPDATE CASCADE ON
DELETE NO ACTION,
);
15. DBDL ItemDisc
Domain IID : Integer, length 11
Domain TDID : Integer, length 11
Domain isActive : Integer, length 11
ItemDisc (
IID IID NOT NULL,
TDID TDID NOT NULL,
isActive isActive NOT NULL,
Primary Key (IID, TDID),
Foreign Key IID references Item(IID) ON UPDATE CASCADE
ON DELETE NO ACTION,
Foreign Key TDID references TxDiscount(TDID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
147
16. DBDL Merchant
Domain MRID : Integer, length 11
Domain MRName : Variable length character string, length 25
Domain MRDesc : Variable length character string, length 100
Merchant (
MRID MRID NOT NULL auto_increment,
MRName MRName NOT NULL,
MRDesc MRDesc NOT NULL,
Primary Key (MRID),
);
17. DBDL Region
Domain RGID : Integer, length 11
Domain RGName : Variable length character string, length 25
Region (
RGID RGID NOT NULL auto_increment,
RGName RGName NOT NULL,
Primary Key (RGID)
);
18. DBDL VendorRegister
Domain IID : Integer, length 11
Domain VID : Integer, length 11
148
Domain Price : Decimal (20,2)
VendorRegister (
IID IID NOT NULL,
VID VID NOT NULL,
Price Price NOT NULL,
Primary Key (IID, VID)
);
19. DBDL TxItemMutationHeader
Domain TxIMID : Integer, length 11
Domain BID : Integer, length 11
Domain UID : Integer, length 11
Domain BIID : Integer, length 11
Domain TxDate : Datetime
Domain Reason : Text
Domain Status : Variable length character string, length 2
TxItemMutationHeader (
TxIMID TxIMID NOT NULL auto_increment,
BID BID NOT NULL,
UID UID NOT NULL,
BIID BIID NOT NULL,
Status Status NOT NULL,
Reason Reason NOT NULL,
149
TxDate TxDate NOT NULL,
Primary Key (TxIMID),
Foreign Key BID references Branch(BID) ON UPDATE CASCADE
ON DELETE NO ACTION,
Foreign Key UID references User(UID) ON UPDATE CASCADE
ON DELETE NO ACTION,
Foreign Key BIID references BranchItem(BIID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
20. DBDL TxItemMutationDetail
Domain TxIMID : Integer, length 11
Domain BIID : Integer, length 11
Domain Qty : Integer, length 11
Domain Notes : Variable length character string, length 100
TxItemMutationDetail (
TxIMID TxIMID NOT NULL,
BIID BIID NOT NULL,
Qty Qty NOT NULL,
Notes Notes NOT NULL,
Primary Key (TxIMID, BIID),
Foreign Key BIID references BranchItem(BIID) ON UPDATE
CASCADE ON DELETE NO ACTION,
150
Foreign Key TxIMID references TxItemMutationHeader (TxIMID)
ON UPDATE CASCADE ON DELETE NO ACTION
);
21. DBDL TxHeader
Domain TxID : Integer, length 11
Domain UID : Integer, length 11
Domain BID : Integer, length 11
Domain MID : Integer, length 11
Domain TxTax : Float
Domain TxDisc : Float
Domain TxDate : Datetime
Domain PaymentCode : Character string, length 20
Domain PaymentType : Integer, length 11
Domain IsClosed : Variable length character string, length 1
TxHeader (
TxID TxID NOT NULL auto_increment,
UID UID NOT NULL,
BID BID NOT NULL,
MID MID NOT NULL,
TxTax TxTax NOT NULL,
TxDisc TxDisc NOT NULL,
TxDate TxDate NOT NULL,
151
PaymentType PaymentType NOT NULL,
PaymentCode PaymentCode NOT NULL,
IsClosed IsClosed NOT NULL,
Primary Key (TxID),
Foreign Key BID references Branch(BID) ON UPDATE CASCADE
ON DELETE NO ACTION,
Foreign Key MID references Member(MID) ON UPDATE
CASCADE ON DELETE NO ACTION,
Foreign Key UID references User(UID) ON UPDATE CASCADE
ON DELETE NO ACTION
);
22. DBDL TxDetail
Domain TxID : Integer, length 11
Domain BIID : Integer, length 11
Domain Qty : Integer, length 11
Domain Disc : Float
Domain Price : Decimal (20,2)
TxDetail (
TxID TxID NOT NULL,
BIID BIID NOT NULL,
Qty Qty NOT NULL,
Disc Disc NOT NULL,
152
Price Price NOT NULL,
Primary Key (TxID, BIID),
Foreign Key BIID references BranchItem(BIID) ON UPDATE
CASCADE ON DELETE NO ACTION,
Foreign Key TxID references TxHeader(TxID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
23. DBDL TxDiscount
Domain TDID : Integer, length 11
Domain MRID : Integer, length 11
Domain UOMID : Integer, length 11
Domain TDStartDate : Datetime
Domain TDEndDate : Datetime
Domain TDDiscType : Integer, length 11
Domain TDValue : Float
Domain Qty : Integer, length 11
Domain QtyToBuy : Integer, length 11
Domain IsFreeItem : Integer, length 1
Domain IsMultiple : Integer, length 1
TxDiscount (
TDID TDID NOT NULL auto_increment,
MRID MRID NOT NULL,
153
TDStartDate TDStartDate NOT NULL,
TDEndDate TDEndDate NOT NULL,
TDDiscType TDDiscType NOT NULL,
TDValue TDValue NOT NULL,
UOMID UOMID NOT NULL,
Qty Qty NOT NULL,
QtyToBuy QtyToBuy NOT NULL,
IsFreeItem IsFreeItem NOT NULL,
IsMultiple IsMultiple NOT NULL,
Primary Key (TDID),
Foreign Key MRID references Merchant(MRID) ON UPDATE
CASCADE ON DELETE NO ACTION,
Foreign Key UOMID references UOM(UOMID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
24. DBDL TxCashierBalance
Domain TxCBID : Integer, length 11
Domain BID : Integer, length 11
Domain TxCBTerminal : Variable length character string, length 30
Domain TxCBOpenBalance : Decimal (20,2)
Domain TxCBCloseBalance : Decimal (20,2)
Domain TxCBOpenBalanceTime : Datetime
154
Domain TxCBCloseBalanceTime : Datetime
Domain IsVerify : Integer, length 1
Domain TxCBCreateTime : Datetime
Domain TxCreator : Integer, length 11
Domain TxApproverID : Integer, length 11
Domain TxApproveTime : Datetime
TxCashierBalance (
TxCBID TxCBID NOT NULL auto_increment,
BID BID NOT NULL,
TxCBTerminal TxCBTerminal NOT NULL,
TxCBOpenBalance TxCBOpenBalance NOT NULL,
TxCBCloseBalance TxCBCloseBalance NOT NULL,
TxCBOpenBalanceTime TxCBOpenBalanceTime NOT NULL,
TxCBCloseBalanceTime TxCBCloseBalanceTime NOT NULL,
IsVerify IsVerify NOT NULL,
TxCBCreateTime TxCBCreateTime NOT NULL,
TxCreatorID TxCreatorID NOT NULL,
TxApproveTime TxApprove NOT NULL,
TxApproverID TxApproveID NOT NULL,
Primary Key (TxCBID),
Foreign Key BID references Branch(BID) ON UPDATE CASCADE
ON DELETE NO ACTION
);
155
25. DBDL POHeader
Domain TxPOID : Integer, length 11
Domain VID : Integer, length 11
Domain EID : Integer, length 11
Domain BIID : Integer, length 11
Domain TxDate : Datetime
Domain Status : Integer, length 11
POHeader (
TxPOID TxPOID NOT NULL auto_increment,
VID VID NOT NULL,
EID EID NOT NULL,
BIID BIID NOT NULL,
TxDate TxDate NOT NULL,
Status Status NOT NULL,
Primary Key (TxPOID)
Foreign Key BIID references BranchItem(BIID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
26. DBDL PODetail
Domain TxPOID : Integer, length 11
Domain IID : Integer, length 11
Domain Qty : Integer, length 11
Domain PurchPrice : Decimal (20,2)
156
Domain Disc : Float
PODetail (
TxPOID TxPOID NOT NULL,
IID IID NOT NULL,
Qty Qty NOT NULL,
PurchPrice PurchPrice NOT NULL,
Disc Disc NOT NULL,
Primary Key (TxPOID, IID),
Foreign Key IID references Item(IID) ON UPDATE CASCADE ON
DELETE NO ACTION,
Foreign Key TxPOID references POHeader(TxPOID) ON UPDATE
CASCADE ON DELETE NO ACTION
);
27. DBDL TxBillingAnnouncement
Domain TBAID : Integer, length 11
Domain BID : Integer, length 11
Domain TBAContent : Variable length character string, length 100
Domain TBAStartDate : Datetime
Domain TBAEndDate : Datetime
TxBillingAnnouncement (
TBAID TBAID NOT NULL auto_increment,
BID BID NOT NULL,
157
TBAContent TBAContent NOT NULL,
TBAStartDate TBAStartDate NOT NULL,
TBAEndDate TBAEndDate NOT NULL,
Primary Key (TBAID),
Foreign Key BID references Branch(BID) ON UPDATE CASCADE
ON DELETE NO ACTION
);
3.2.4.2 Perancangan Representasi Fisikal
3.2.4.2.1 Analisa Transaksi
Tujuan dari langkah ini adalah untuk memahami
fungsionalitas dari setiap transaksi yang akan berjalan
pada basis data dan untuk menganalisa transaksi yang
penting.
Langkah-langkah yang dilakukan dalam analisa
transaksi, yaitu :
1. Memetakan semua jalur transaksi dalam relasi.
2. Menentukan relasi mana yang paling sering diakses
oleh transaksi.
3. Menganalisa penggunaan data dari relasi yang
dipilih pada langkah sebelumnya.
158
Berikut ini adalah transaksi yang dilakukan :
a. Masukkan / Hapus / Ubah data Penjualan
b. Masukkan / Hapus / Ubah data Pembelian
c. Masukkan / Hapus / Ubah data Pengiriman Barang
d. Masukkan / Hapus / Ubah data Penerimaan Barang
e. Masukkan / Hapus / Ubah data Billing
Announcement
f. Masukkan / Hapus / Ubah data Cashier Balance
g. Tampilkan data Employee
h. Tampilkan data Vendor
i. Tampilkan data Member
j. Tampilkan data Item
k. Tampilkan data Branch
l. Tampilkan data BranchItem
m. Tampilkan data ItemDisc
159
Tabel 3.13 Analisa Transaksi
160
161
3.2.4.2.2 Pemilihan Index
Tabel 3.14 Pemilihan Index Cluster atau Noncluster
Tabel Nama Index Field
Employee Idx_EID (Clustered indeks) EID
Member Idx_MID (Clustered indeks) MID
Item Idx_IID (Clustered indeks) IID
Vendor Idx_VID (Clustered indeks) VID
Branch Idx_BID (Clustered indeks) BID
User Idx_UID (Clustered indeks) UID
Position Idx_PID (Clustered indeks) PID
BranchItem Idx_BIID (Clustered indeks) BIID
MembershipType Idx_MTID (Clustered indeks) MTID
VendorGroup Idx_VGID (Clustered indeks) VGID
VendorRegister Idx_VID (Clustered indeks) VID
VBank Idx_VBID (Clustered indeks) VBID
ItemGroup Idx_IGID (Clustered indeks) IGID
UOM Idx_UOMID (Clustered indeks) UOMID
Conversion Idx_CID (Clustered indeks) CID
ItemDisc Idx_TDID (Clustered indeks) TDID
Merchant Idx_MRID (Clustered indeks) MRID
Region Idx_RGID (Clustered indeks) RGID
TxItemMutationHeader Idx_TxIMID (Clustered indeks) TxIMID
TxItemMutationDetail Idx_TxIMID (Clustered indeks) TxIMID
162
TxHeader Idx_TxID (Clustered indeks) TxID
TxDetail Idx_TxID (Clustered indeks) TxID
POHeader Idx_TxPOID (Clustered indeks) TxPOID
PODetail Idx_TxPOID (Clustered indeks) TxPOID
TxDiscount Idx_TDID (Clustered indeks) TDID
TxCashierBalance Idx_TxCBID (Clustered indeks) TxCBID
TxBillingAnnouncement Idx_TBAID (Clustered indeks) TBAID
3.2.4.2.3 Estimasi Kebutuhan Media Penyimpanan
Estimasi kebutuhan akan media penyimpanan
dilakukan dengan cara menghitung besar kapasitas disk
yang terpakai untuk setiap tabel atau entitas dengan
atribut-atribut yang ada di dalamnya dan tipe data yang
digunakan.
Estimasi dari kebutuhan media penyimpanan
adalah sebagai berikut :
1. Employee
Atribut Tipe Data Ukuran
EID Integer (11) 4
BID Integer (11) 4
PID Integer (11) 4
UID Integer (11) 4
EFirstName Varchar (20) 20
ELastName Varchar (25) 25
EPOB Varchar (20) 20
163
EDOB Datetime 8
EGender Boolean 1
EReligion Varchar (10) 10
EAddress Varchar (60) 60
EPhone1 Varchar (15) 15
EPhone2 Varchar (15) 15
Jumlah = 190 byte
2. Member
Atribut Tipe Data Ukuran
MID Integer (11) 4
MTID Integer (11) 4
MFirstName Varchar (20) 20
MLastName Varchar (25) 25
MPOB Varchar (20) 20
MDOB Datetime 8
MGender Boolean 1
MAddress Varchar (60) 60
MPhone Varchar (15) 15
MEmail Varchar (15) 15
MJoinDate Datetime 8
MExpiredDate Datetime 8
Jumlah = 188 byte
3. Item
Atribut Tipe Data Ukuran
IID Integer (11) 4
UOMID Integer (11) 4
IGID Integer (11) 4
SellingPrice Decimal (20,2) 20
164
IName Varchar (25) 25
Picture Varchar (25) 25
ItemCode Varchar (30) 30
Jumlah = 112 byte
4. Vendor
Atribut Tipe Data Ukuran
VID Integer (11) 4
VGID Integer (11) 4
RGID Integer (11) 4
VName Varchar (25) 25
VCP Varchar (25) 25
VAddr Varchar (60) 60
VCity Varchar (20) 20
VPostalCode Varchar (10) 10
VPhone1 Varchar (15) 15
VPhone2 Varchar (15) 15
VFax Varchar (25) 15
VEmail Varchar (30) 30
VCHP Varchar (15) 15
Jumlah = 242 byte
5. Branch
Atribut Tipe Data Ukuran
BID Integer (11) 4
RGID Integer (11) 4
IsCentral Integer (11) 4
BName Varchar (20) 20
BAddress Varchar (60) 60
BCity Varchar (20) 20
165
BPostalCode Varchar (15) 15
BCountry Varchar (15) 15
BQty Varchar (2) 2
BPhone1 Varchar (15) 15
BPhone2 Varchar (15) 15
BFax Varchar (15) 15
BEmail Varchar (25) 25
Jumlah = 214 byte
6. User
Atribut Tipe Data Ukuran
UID Integer (11) 4
UName Varchar (25) 25
UPass Varchar (30) 30
UCreatetime Datetime 8
Jumlah = 67 byte
7. Position
Atribut Tipe Data Ukuran
PID Integer (11) 4
PName Varchar (25) 25
PDesc Varchar (100) 100
Jumlah = 129 byte
8. BranchItem
Atribut Tipe Data Ukuran
BIID Integer (11) 4
BID Integer (11) 4
IID Integer (11) 4
Stock Integer (11) 4
166
MininumStock Integer (11) 4
Price Decimal (20,2) 20
Jumlah = 40 byte
9. MembershipType
Atribut Tipe Data Ukuran
MTID Integer (11) 4
MTName Varchar (25) 25
MTDesc Varchar (100) 100
MTDiscExpression Varchar (50) 50
Jumlah = 179 byte
10. VendorGroup
Atribut Tipe Data Ukuran
VGID Integer (11) 4
VGName Varchar (25) 25
Jumlah = 29 byte
11. VBank
Atribut Tipe Data Ukuran
VBID Integer (11) 4
VID Integer (11) 4
VBankName Varchar (2) 2
VNumRek Varchar (20) 20
VBankHolder Varchar (30) 30
Jumlah = 60 byte
12. ItemGroup
Atribut Tipe Data Ukuran
IGID Integer (11) 4
167
IGName Varchar (25) 25
IGDesc Varchar (100) 100
Jumlah = 129 byte
13. UOM
Atribut Tipe Data Ukuran
UOMID Integer (11) 4
UOMName Varchar (25) 25
Jumlah = 29 byte
14. Conversion
Atribut Tipe Data Ukuran
CID Integer (11) 4
IID Integer (11) 4
Value Double 8
Operator Varchar (30) 30
Jumlah = 46 byte
15. ItemDisc
Atribut Tipe Data Ukuran
IID Integer (11) 4
TDID Integer (11) 4
isActive Integer(11) 4
Jumlah = 12 byte
16. Region
Atribut Tipe Data Ukuran
RGID Integer (11) 4
RGName Varchar (25) 25
Jumlah = 29 byte
168
17. Merchant
Atribut Tipe Data Ukuran
MRID Integer (11) 4
MRName Varchar (25) 25
MRDesc Varchar (100) 100
Jumlah = 129 byte
18. VendorRegister
Atribut Tipe Data Ukuran
VID Integer (11) 4
IID Integer (11) 4
Price Decimal (20,2) 20
Jumlah = 28 byte
19. TxItemMutationHeader
Atribut Tipe Data Ukuran
TxIMID Integer (11) 4
BID Integer (11) 4
BIID Integer (11) 4
UID Integer (11) 4
TxDate Datetime 8
Reason Varchar (200) 200
Status Varchar (2) 2
Jumlah = 226 byte
20. TxItemMutationDetail
Atribut Tipe Data Ukuran
TxIMID Integer (11) 4
BIID Integer (11) 4
Qty Integer (11) 4
169
Notes Varchar 100
Jumlah = 112 byte
21. TxHeader
Atribut Tipe Data Ukuran
TxID Integer (11) 4
UID Integer (11) 4
BID Integer (11) 4
MID Integer (11) 4
TxTax Float 4
TxDisc Float 4
TxDate Datetime 8
PaymentCode Char (20) 20
PaymentType Integer (11) 4
IsClosed Integer 4
Jumlah = 60 byte
22. TxDetail
Atribut Tipe Data Ukuran
TxID Integer (11) 4
BIID Integer (11) 4
Qty Integer (11) 4
Disc Float 4
Price Decimal (20,2) 20
Jumlah = 36 byte
23. TxDiscount
Atribut Tipe Data Ukuran
TDID Integer (11) 4
MRID Integer (11) 4
170
UOMID Integer (11) 4
TDStartDate Datetime 8
TDEndDate Datetime 8
TDDiscType Integer (11) 4
TDValue Float 4
Qty Integer (11) 4
QtyToBuy Integer (11) 4
IsFreeItem Integer 4
IsMultiple Integer 4
Jumlah = 52 byte
24. POHeader
Atribut Tipe Data Ukuran
TxPOID Integer (11) 4
VID Integer (11) 4
EID Integer (11) 4
BIID Integer (11) 4
TxDate Datetime 8
Status Integer (11) 4
Jumlah = 28 byte
25. PODetail
Atribut Tipe Data Ukuran
TxPOID Integer (11) 4
IID Integer (11) 4
Qty Integer (11) 4
PurchPrice Decimal (20,2) 20
Disc Float 4
Jumlah = 36 byte
171
26. TxCashierBalance
Atribut Tipe Data Ukuran
TxCBID Integer (11) 4
BID Integer (11) 4
TxCBTerminal Varchar (30) 30
TxCBOpenBalance Decimal (20,2) 20
TxCBCloseBalance Decimal (20,2) 20
TxCBOpenBalanceTime Datetime 8
TxCBCloseBalanceTime Datetime 8
TxCBCreateTime Datetime 8
TxApproveTime Datetime 8
IsVerify Integer 4
TxCreatorID Integer 4
TxApproveID Integer 4
Jumlah = 122 byte
27. TxBillingAnnouncement
Atribut Tipe Data Ukuran
TBAID Integer (11) 4
BID Integer (11) 4
TBAContent Varchar (100) 100
TBAStartDate Datetime 8
TBAEndDate Datetime 8
Jumlah = 124 byte
Dari tabel di atas, diperkirakan besar ukuran
record yang dapat digunakan untuk transaksi yang
dilakukan setiap harinya adalah :
172
Tabel 3.15 Perkiraan Ukuran Record Transaksi
Tabel Size 1 Record
(byte)
Perkiraan
Transaksi Perhari
Size Record
Perhari (byte)
TxItemMutationHeader 226 30 6780
TxItemMutationDetail 112 30 3360
TxHeader 60 400 24000
TxDetail 36 400 14400
POHeader 28 30 840
PODetail 36 30 1080
TxDiscount 52 400 20800
TxCashierBalance 122 3 366
TxBillingAnnouncement 124 2 248
Jumlah : 71.874 byte
Perkiraan kebutuhan kapasitas disk untuk
transaksi sebesar 71.874 Byte/hari
Untuk satu minggunya maka 71.874 x 7 hari =
503.118 Byte/ minggu
Untuk satu tahunnya maka 503.118 x 52 minggu =
26.162.136 Byte/tahun = 25.548,96 KB/tahun = 24,95
MB/tahun.
Untuk tabel master seperti Employee, Member,
Item, Vendor, Branch, User, Position, BranchItem,
173
MembershipType, VendorGroup, VendorRegister,
Vbank, ItemGroup, UOM, Conversion, ItemDisc,
Merchant, dan Region perhitungan akan dilakukan
dengan cara berbeda karena jarang terjadi pertambahan
data.
Tabel 3.16 Perkiraan Ukuran Record Master
Tabel Size 1 Record
(Byte)
Perkiraan Jumlah
Record Awal
Jumlah Size
Record (Byte)
Employee 190 50 9500
Member 188 100 18800
Item 112 3000 336000
Vendor 242 50 12100
Branch 214 3 642
User 67 25 1675
Position 129 20 2580
BranchItem 40 2950 118000
MembershipType 179 3 537
VendorGroup 29 50 1450
VendorRegister 28 50 1400
VBank 60 15 900
ItemGroup 129 100 12900
UOM 29 20 580
174
Conversion 46 30 1380
ItemDisc 12 25 300
Merchant 129 30 3870
Region 29 25 725
Jumlah : 523.339 Byte
Maka perkiraan total kapasitas disk seluruhnya
untuk tahun pertama adalah :
- Tabel Master = 523.339 Byte = 511,07 KB = 0.5 MB
- Transaksi = 24,95 MB/tahun
- Total = 0.5 + 24, 95 = 25,45 MB = 26 MB
Bila diperkirakan pertumbuhan data tiap tahunnya
adalah 15 % maka kapasitas disk yang dibutuhkan
dalam 5 tahun mendatang adalah :
Tabel 3.17 Kebutuhan Kapasitas Disk dalam 5 tahun
Tahun
ke-n
Jumlah disk
tahun ke n-1
Pertumbuhan data
tiap tahun (15%)
Kebutuhan
Total
II 26 MB 3.9 MB 29.9 MB
III 29,9 MB 4,485 MB 34,385 MB
IV 34,385 MB 5,16 MB 39,55 MB
V 39,55 MB 5,93 MB 45,48 MB
175
3.2.4.3 Perancangan Mekanisme Pengamanan Data
Basis data merupakan tempat penyimpanan informasi
yang sangat penting bagi suatu perusahaan dan bersifat rahasia,
jadi tidak sembarangan orang dapat mengakses basis data tersebut.
Setiap pengguna dibatasi haknya untuk mengakses data, sehingga
kerahasiaan informasi tersebut dapat terjaga dan tidak terjadi
suatu hal yang tidak diinginkan, misalnya kehilangan data ataupun
pencurian data.
Tabel 3.18 Pengamanan Data
Admin Cashier Manajer
Employee RUDI - R
Member RUDI R RUDI
Item RUDI R R
Vendor RUDI R RUDI
Branch RUDI R RUDI
User RUDI R R
Position RUDI R RUDI
BranchItem RUDI R R
MembershipType RUDI R R
VendorGroup RUDI R RUDI
VBank RUDI - RUDI
ItemGroup RUDI R R
Service
Entitas
176
UOM RUDI R R
Conversion RUDI R R
ItemDisc RUDI R R
Merchant RUDI R R
Region RUDI R R
TxItemMutationHeader RUDI RI R
TxItemMutationDetail RUDI RI R
TxHeader RUDI RI R
TxDetail RUDI RI R
POHeader RUDI - RUDI
PODetail RUDI - RUDI
TxDiscount RUDI RI R
TxCashierBalance RUDI RI R
TxBillingAnnouncement RUDI R R
3.2.5 Perancangan Program Aplikasi
Di bagian ini akan dibahas mengenai perancangan aplikasi, di
mana terdapat antara lain struktur menu, STD (State Transition Diagram),
perancangan layar, perancangan laporan dan spesifikasi proses.
3.2.5.1 Struktur Menu
Struktur menu menjelaskan tentang susunan dari menu
yang ada di dalam perancangan aplikasi yang akan digunakan.
177
Gambar 3.20 Struktur Menu pada Server (Web)
Gambar 3.21 Struktur Menu pada Client (Desktop)
178
3.2.5.2 STD
Berikut ini adalah State Transition Diagram yang
merupakan gambaran tentang perubahan kondisi jika aplikasi
dijalankan.
Halaman Registrasi Login
Gambar 3.22 STD Registrasi Login
Gambar ini merupakan State Transition Diagram , dimana
ketika pengguna akan login untuk masuk ke halaman Home maka
pengguna harus mengisi terlebih dahulu form-form yang ada.
Setelah form terisi terisi maka pengguna akan mengklik “login”,
jika userID dan password pengguna salah maka akan kembali ke
halaman tersebut apabila berhasil, dan jika berhasil login maka
akan ditampilkan halaman Home.
179
Apabila pengguna lupa dengan passwordnya, klik Forget
Password, kemudian pengguna akan masuk ke halaman forget
password dimana akan dilakukan reset password dengan
memasukkan id dan tanggal lahir pengguna. Setelah selesai maka
pengguna dapat memilih “login” untuk kembali ke halaman
Login.
Halaman Home
Gambar 3.23 STD Halaman Home
Gambar ini merupakan State Transition Diagram dimana
ketika pengguna sukses melakukan login, akan ditampilkan
halaman Home. Di dalam halaman home terdapat tab-tab menu
180
seperti system initialization, reference table, master table,
transaction, dan report. Jika pengguna ingin melihat isi dari tab
tersebut, pengguna harus mengarahkan kursor ke tab yang
diinginkan, sehingga muncul menu-menu yang ada di tab tersebut.
Pengguna juga bisa melakukan pergantian password dengan
mengklik Change Password, untuk kembali ke halaman home
maka pengguna dapat mengklik tab Home.
Halaman System Initialization
Gambar 3.24 STD Halaman System Initialization
181
Gambar ini merupakan State Transition Diagram dari
halaman System Initialization, di mana terdapat beberapa menu di
dalamnya, yaitu halaman General Setup dan halaman Billing
Announcement. Untuk sampai ke halaman General Setup,
pengguna harus mengarahkan kursor terlebih dahulu ke drop
down menu System Initialization kemudian klik “General Setup”.
Setelah masuk ke halaman General Setup, pengguna dapat
mengetahui dan mengubah pajak dari transaksi penjualan. Setelah
selesai, maka akan dilakukan penyimpanan perubahan data. Untuk
kembali ke halaman Home maka pengguna dapat mengklik
“Home”.
Halaman Billing Announcement merupakan halaman
untuk melihat, menambahkan, mengubah, dan menghapus footer
dari sebuah struk transaksi penjualan. Jika ingin mengubahnya,
maka klik “icon Edit” dan pengguna dapat mengubah langsung
footer yang ingin diubah. Sedangkan jika ingin menambahkan
footer baru, maka klik “icon Add”, akan terdapat form yang harus
diisi, kemudian pengguna dapat langsung menyimpannya. Untuk
menghapus maka klik “icon Delete” dan untuk kembali ke
halaman sebelumnya klik “icon Back”.
182
Halaman Master Table
Gambar 3.25 STD Halaman Master Table
183
Gambar ini merupakan State Transition Diagram dari
halaman Master Table, di mana di dalamnya terdapat halaman
Item, halaman Vendor, halaman Branch, halaman Employee, dan
halaman Discount. Klik menu Master Table dan kemudian pilih
Item, maka pengguna akan masuk ke halaman Item. Di dalam
halaman Item, pengguna dapat melihat barang- barang apa saja
yang dijual oleh Minimarket Pentamart. Jika pengguna ingin
menambahkan barang maka klik icon Add dan pengguna akan
masuk ke halaman Add Item. Di halaman ini terdapat form untuk
mengisi barang yang akan ditambahkan. Setelah selesai diisi,
maka klik icon Save dan jika berhasil disimpan maka akan
kembali ke halaman tersebut.
Jika ingin mengubah informasi barang, maka pilih barang
yang akan diubah informasinya kemudian klik icon Edit, maka
pengguna akan masuk ke halaman Edit Item. Di halaman ini
pengguna dapat langsung mengubah informasi barang, setelah
selesai diubah maka klik icon Save untuk menyimpannya. Untuk
menghapus barang, pengguna memilih barang yang akan dihapus
kemudian klik icon Delete dan untuk kembali ke halaman
sebelumnya klik icon Back. Hal ini berlaku pula jika pengguna
ingin masuk ke halaman Vendor, Branch, Employee, dan
Discount, pengguna dapat melakukan cara yang sama seperti
halaman Item ini.
184
Halaman Reference Table
Gambar 3.26 STD Halaman Reference Table
Gambar ini merupakan State Transition Diagram dari
halaman Reference Table, dimana di dalam terdapat halaman Item
Group, halaman Vendor Group, halaman Merchant, halaman
185
Position, dan halaman Region. Jika pengguna ingin masuk ke
halaman ItemGroup maka pertama kali pengguna harus memilih
menu Reference Table, kemudian pilih ItemGroup, maka
pengguna akan masuk ke halaman Item. Di dalam halaman
ItemGroup, pengguna dapat melihat jenis barang apa saja yang di
jual oleh Minimarket Pentamart. Jika pengguna ingin
menambahkan jenis barang, maka klik icon Add sehingga
kemudian akan masuk ke halaman Add Item. Di halaman ini
terdapat form untuk mengisi barang yang akan ditambahkan.
Setelah selesai diisi, maka klik icon Save dan jika berhasil di
simpan maka akan kembali ke halaman tersebut.
Jika ingin mengubah informasi barang, maka pilih barang
yang akan diubah informasinya kemudian klik icon Edit, maka
pengguna akan masuk ke halaman Edit Item Group. Di halaman
ini pengguna dapat langsung mengubah informasi barang dan
setelah selesai diubah maka klik Save untuk menyimpannya.
Untuk menghapus barang, pengguna memilih barang yang akan
dihapus kemudian klik icon Delete dan untuk kembali ke halaman
sebelumnya klik icon Back. Hal ini juga berlaku apabila pengguna
ingin masuk ke halaman Vendor Group, Merchant, Position, dan
Region, pengguna dapat melakukan cara yang sama seperti masuk
ke halaman Item Group.
186
Halaman Transaction
Gambar 3.27 STD Halaman Transaction
Gambar ini merupakan State Transition Diagram untuk
melakukan purchase order. Untuk masuk ke halaman ini, pertama
pengguna harus mengarahkan kursor ke menu Transaction dan
187
mengklik “Purchase Order”, setelah itu akan ditampilkan
halaman Purchase Order. Di dalam halaman ini, pengguna dapat
melihat histori dari purchase order dan melakukan delete, update,
dan insert data. Untuk delete, pengguna dapat mengklik icon
Delete, dan jika delete berhasil maka akan kembali ke halaman
tersebut. Begitu pula dengan update yang memiliki prosedur sama
dengan delete. Jika pengguna ingin insert data, maka pengguna
dapat mengklik icon Add sehingga masuk ke halaman untuk
melakukan purchase order baru.
Setelah selesai mengisi data yang ada, pengguna dapat
memesan barang dengan mengklik icon “Add” pada Order Detail.
Setelah pengguna melakukan insert dan berhasil, maka akan
kembali ke halaman tersebut, dan jika ingin kembali ke halaman
sebelumnya pengguna dapat mengklik icon Back ( ). Jika ingin
kembali ke halaman Home, klik “Home”. Hal ini juga berlaku
pada halaman Item Mutation dan Update Plan, pengguna dapat
melakukan hal yang sama seperti prosedur masuk ke halaman
Purchase Order ini.
188
Halaman Report
Gambar 3.28 STD Halaman Report
Gambar State Transition Diagram ini merupakan gambar
dari halaman Report. Di sini pengguna hanya akan melihat satu
menu yaitu Transaction Report. Untuk melihat laporan tersebut
maka pengguna dapat mengklik Transaction Report pada drop
down menu Report. Setelah masuk pada halaman tersebut, ada
pilihan View di mana pengguna dapat melihat laporan transaksi
untuk waktu tertentu dan dapat melihat grafiknya.
189
Selain itu, pengguna dapat melihat Top Ten Item pada
waktu tertentu beserta grafik penjualannya untuk mengetahui
sepuluh barang terlaris pada kurun waktu tersebut. Untuk kembali
ke halaman Home maka klik Home dan untuk keluar dari web ini
maka klik Logout.
3.2.5.3 Perancangan Layar
Gambar-gambar berikut merupakan rancangan layar yang
akan di bangun dan berfungsi sebagai sarana untuk memasukkan
data ke dalam aplikasi. Rancangan layar untuk aplikasi ini terbagi
atas dua yaitu rancangan layar server dan client. Berikut ini adalah
gambar rancangan layar yang telah dibuat :
a. Rancangan Layar Server
LOGO
POS
Pentamart
EMPLOYEE ID
EMPxxx
PASSWORD
xxxx
LOGIN
Gambar 3.29 Rancangan Layar Login
190
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Save
General Setup
Company Name xxx
Tax Percentage x‐100‐x
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.30 Rancangan Layar Halaman System Initialization
191
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Billing Announcement Add Remove All
Find By Search Reset
Content Start Date End Date Actions
xxxx dd‐mm‐yyyy dd‐mm‐yyyy Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.31 Rancangan Layar Billing Announcement
192
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Billing Announcement Back Save
Billing Announcement Information
Start
Date dd‐mm‐yyyy
End
Date dd‐mm‐yyyy
Content xxxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.32 Rancangan Layar Menu Tambah/Ubah Data Billing Announcement
193
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
UnitofMeasurement Add Remove All
Find By Search Reset
Unit of Measurement
Name Actions
xxxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.33 Rancangan Layar Unit of Measurement
194
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Unit of Measurement Back Save
UOM Information
UOM
Name xxxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.34 Rancangan Layar Menu Tambah/Ubah Unit of Measurement
195
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Merchant Add Remove All
Find By Search Reset
Merchant Name Description Actions
xxxx xxxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.35 Rancangan Layar Merchant
196
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Merchant Back Save
Merchant Information
Merchant Name
Description
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.36 Rancangan Layar Menu Tambah/Ubah Merchant
197
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Vendor Group Add Remove All
Find By Search Reset
Vendor Group Name Actions
xxxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.37 Rancangan Layar Vendor Group
198
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Vendor Group Back Save
Vendor Group Information
Vendor Group Name xxxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.38 Rancangan Layar Menu Tambah/Ubah Vendor Group
199
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Item
Group Add Remove All
Find By Search Reset
Item Group
Name Description Actions
xxxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.39 Rancangan Layar Item Group
200
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Item Group Back Save
Item Group Information
Item Group Name xxxx
Description xxxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.40 Rancangan Layar Menu Tambah/Ubah Item Group
201
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Region Add Remove All
Find By Search Reset
Region Name Actions
xxxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.41 Rancangan Layar Region
202
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Region Back Save
Region Information
Region Name xxxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.42 Rancangan Layar Menu Tambah/Ubah Region
203
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Employee Position Add Remove All
Find By Search Reset
Position Name Higher Position Description Actions
xxxx xxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.43 Rancangan Layar Halaman Employee Position
204
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Employee Position Back Save
Employee Position Information
Parent Position xxxx
Position Name xxxx
Description xxxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.44 Rancangan Layar Menu Tambah/Ubah Employee Position
205
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Vendor Add Remove All
Find By Search Reset
Vendor Name Vendor Group Region City Address Phone Actions
xxx xxx xxx xxx xxx x‐15‐x Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.45 Rancangan Layar Vendor
206
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Vendor Back Save
VendorInformation
Vendor Group xxxx S
Region xxxx S
Name xxxx
Address xxxx
City xxx
Postal Code xxx
Phone 1 xxx
Phone 2 xxx
Fax xxx
Email xxxx@xxx.xx
Handphone xxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.46 Rancangan Layar Menu Tambah/Ubah Vendor
207
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Item Add Remove All
Find By Search Reset
Code Item Group Item Name UOM Selling Price Price Actions
xxx xxx xxx xxx xxx xxxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.47 Rancangan Layar Item
208
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Item Back Save
Item Information
Item
Group xxxx S
UOM xxxx S
Item Code
Name
Selling Price
Picture
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.48 Rancangan Layar Menu Tambah/Ubah Item
209
POS
LOGO Pentamart
Home System Initialization Reference Table Master Table Transaction
Information Vendor Register
UOM
Conversion Update Plan
Item Information
Detail
Item Code xxx
UOM xxx
Group xxx
Name xxx
Selling Price xxx
Picture
Point of
Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.49 Rancangan Layar Item Information Detail
210
POS
LOGO Pentamart
Home System Initialization Reference Table Master Table Transaction
Information Vendor Register UOM Conversion Update Plan
Vendor Register Add Remove All
Find By Search Reset
Vendor UOM Price Actions
xxx xxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.50 Rancangan Layar Vendor Register
211
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Vendor Register Back Save
Vendor Information
Vendor xxxx S
UOM xxxx S
Price
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.51 Rancangan Layar Menu Tambah/Ubah Vendor Register
212
POS
LOGO Pentamart
Home System Initialization Reference Table Master Table Transaction
Informatio
n Vendor Register UOM Conversion Update Plan
UOM Conversion Add Remove All
Find By Search Reset
Item Name From UOM To UOM
Operator
Value Actions
xxx xxx xxx x x Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.52 Rancangan Layar UOM Conversion
213
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Conversion Back Save
Conversion Information
To UOM xxxx S
Value xxxx
Operator
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.53 Rancangan Layar Menu Tambah/Ubah UOM Conversion
214
POS
LOGO Pentamart
Home System Initialization Reference Table Master Table Transaction
Informatio
n Vendor Register UOM Conversion Update Plan
Update Plan Add Remove All
Find By Search Reset
Start date Update price Actions
xx‐xx‐xxxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.54 Rancangan Layar Update Plan
215
POS
LOGO Pentamart
Home System Initialization
Reference
Table
Master
Table Transaction
Update Plan Back Save
Update Plan Information
Start Date xx‐xx‐xxxx
Update Price xxxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.55 Rancangan Layar Menu Tambah/Ubah Update Plan
216
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Branch Add Remove All
Find By Search Reset
Branch Name Region City Address Phone Actions
xxx xxx xxx xxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.56 Rancangan Layar Halaman Branch
217
POS
LOGO
Pentamart
Home System
Initialization
Reference
Table
Master
Table Transaction
Update Plan Back Save
Update Plan Information
Region S
Billing Announcement S
Name
Address
Country
City
Postal Code
Phone 1
Phone 2
Fax
Central Branch
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.57 Rancangan Layar Menu Tambah/Ubah Branch
218
POS
LOGO Pentamart
Home System Initialization Reference Table Master Table Transaction
Information Employee Branch Item
Item Information Detail
Branch Group xxx
Billing Announcement xxx
Region xxx
Name xxx
Address xxx
Country xxx
City xxx
Postal Code xxx
Phone 1 xxx
Phone 2 xxx
Fax xxx
Email xxx
Central xxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.58 Rancangan Layar Branch Information Detail
219
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Information Employee Branch Item
Branch Employee Add Remove All
Find By Search Reset
Employee Code Employee Name Position Address Phone Email Actions
xxx xxx xxx xxx xxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.59 Rancangan Layar Branch Employee
220
POS
LOGO Pentamart
Home System Initialization
Reference Table
Master Table Transaction
Update Plan Back Save
Update Plan Information
Code
Branch
Position
First Name
Last Name
Place of Birth
Date of Birth
Gender
Religion
Address
Phone 1
Phone 2
Super User
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.60 Rancangan Layar Menu Tambah Branch Employee
221
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Information Employee Branch Item
Branch Item Add Remove All
Find By Search Reset
Code Name No. PO Stock Minimum Stock Price Actions
xxx xxx xxx xxx xxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.61 Rancangan Layar Branch Item
222
POS
LOGO Pentamart
Home System Initialization
Reference
Table Master Table Transaction
Purchase Order Add Remove All
Find By Search Reset
No. PO Vendor Branch Date Acceptance Date Status Actions
xxx xxx xxx xxx xxx xxx Update
Delete
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Gambar 3.62 Rancangan Layar Purchase Order
223
POS
LOGO Pentamart
Home System Initialization
Reference Table Master Table
Transaction
Item Information Detail
SAVE
No. PO Date
Employee ID
Employee Name
Vendor S
To Branch S
Discount
PPn
Detail Order No
. Item Code Item Name UOM Discount Quantity Price Total Actions
1 xx xxx xxx xxx xx xxx xxx Update Delete
Subtotal xxx Additional Discount xxx Tax
xxx
Grand Total xxx
Point of Sales © 2010 POS. Allright reserved. Privacy and Policy. Gambar 3.63 Rancangan Layar Menu Tambah Purchase Order
224
b. Rancangan Layar Client
Employee ID
Password
Login
Gambar 3.64 Rancangan Layar Login
Employee ID
Password
Close Balance
Close Cancel
Gambar 3.65 Rancangan Layar Close Balance
Employee ID
Password
Open Balance
Open Cancel
Gambar 3.66 Rancangan Layar Open Balance
225
Item Code
Item Name Total
Price
Discount
Item Code Item Name Price Qty Sub Total Discount Total
Gambar 3.67 Rancangan Layar Transaction
Total Belanja
Jenis Pembayaran
Kode Pembayaran
Discount
Tax
Grand Total
Bayar
Total Kembali
Gambar 3.68 Rancangan Layar Payment
226
3.2.5.4 Perancangan Layar Laporan
Gambar 3.69 Rancangan Layar Laporan Transaksi
POS LOGO Pentamart
Home System Initialization Reference Table Master Table
Transaction Report
View Transaction
From To Transaction Date Branch Employee Total Payment Type Payment Code
xxx xxx xxx xxx xxx xxx Point of Sales © 2010 POS. Allright reserved. Privacy and Policy.
Recommended