Upload
tranthuy
View
229
Download
0
Embed Size (px)
Citation preview
37
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Latar Belakang Perusahaan
3.1.1 Sejarah Berdirinya PT. Horison
PT. Horison berdiri sejak tahun 1980 sebagai salah satu
perusahaan importir dan distributor terkemuka di Indonesia untuk
peralatan digital pracetak (Computer To Plate, Computer To Film,
Workflow Solution) dengan merk Screen, dan bahan baku grafika
(Film, PS Plate and chemicals), dengan pengalaman di bidang grafika
lebih dari 20 tahun.
PT. Horison merupakan agen tunggal dari produk Dainippon
Screen Mfg. Co., Ltd (Kyoto, Japan) di Indonesia. Dengan lebih dari
20 tahun, PT. Horison telah ikut berkontribusi untuk memajukan dunia
grafika di Indonesia dengan segala produk yang dijualnya. Kini hampir
di seluruh wilayah Indonesia PT. Horison telah memiliki rekan kerja
yang telah menggunakan produk mesin pra cetak dengan merk Screen.
PT. Horison berlokasi di Gedung Maspion Plaza, Mangga Dua
dengan Workshop & Service Centre yang berada di Utan Kayu.
Dengan dukungan tenaga marketing dan teknisi yang handal, PT.
Horison senantiasa berkomitmen untuk terus memberikan yang terbaik
terhadap setiap pengguna mesin pracetak merk Screen.
Berkat dukungan penuh dari produsen dan dukungan dari para
relasi serta langganan, PT. Horison terus berkembang mengikuti trend
38
teknologi pra cetak yang telah memasuki era digital guna terus
menghadirkan mesin-mesin berkualitas.
3.1.2 Visi
Terdepan dalam tekhnologi, terbaik dalam kualitas, tercepat
dalam pelayanan.
3.1.3 Misi
1. PT. Horison mendapatkan kepercayaan pelanggan dengan
memberikan pelayanan yang terbaik, terdepan dan memuaskan
baik dalam bentuk produk maupun jasa.
2. PT. Horison menyampaikan apa yang dijanjikan dalam waktu
cepat.
3. PT. Horison adalah kumpulan orang yang siap bekerja keras,
efektif, efisien dan berintegritas tinggi yang siap melayani
kebutuhan pelanggan.
39
3.1.4 Struktur Organisasi
Berangkat dari hal tersebut, PT. Horison hadir guna
memberikan solusi dari kebutuhan tersebut. Sejak didirikan pada tahun
1980, PT. Horison telah hadir menyediakan berbagai macam
kebutuhan dalam dunia grafika, baik itu berupa mesin ataupun media
pendukung lainnya. Dibawah ini merupakan struktur organisasi PT.
Horison :
ORGANIZAZION STRUCTURE
Gambar 3.1 Organisasi Dasar Perusahaan
DIREKTUR UTAMA
DIREKTUR UMUM
DIREKTUR MARKETING
MANAGER MARKETING
MANAGER TEKNIK
HRD & ADMIN DEPT
SALES DEPT TEKNIK DEPT
Bagian Keuangan
Bagian Personalia
Bagian Hubungan Langganan
Bagian Umum
40
3.1.5 Uraian Jabatan
Uraian jabatan pada struktur organisasi PT. Horison, di uraikan
level Direktur Utama hingga Manager Teknik.
Direktur Utama
Ikhtisar Jabatan :
Direktur Utama mempunyai tugas memimpin dan
mengkoordinasikan semua kegiatan Direktur Umum, Direktur
Marketing, dan cabang. Mengawasi dan bertanggung jawab atas
kelancaran perusahaan secara keseluruhan, sesuai dengan norma-
norma yang berlaku yang pelaksanaannya berdasarkan rencana dan
kebijakan yang di tetapkan para pemegang saham.
Tugas Pekerjaan :
1. Menetapkan serta bertanggung jawab kepada pemegang saham
terhadap kebijakan pelaksanaan kegiatan perusahaan secara
keseluruhan dan mengawasi pelaksanaannya agar rencana, visi
dan misi perusahaan tercapai.
2. Menetapkan program kerja, rencana kegiatan dan anggaran
perusahaan serta mengawasi pelaksanaannya agar dapat berjalan
efektif dan efisien.
3. Mengarahkan dan menetapkan kebijakan kegiatan dengan
orientasi kebutuhan pasar dan layanan jasa yang memuaskan
pelanggan agar dapat mencapai target penghasilan yang ditetapkan
41
dan perluasan pengembangan usaha yang dapat meningkatkan
keuntungan perusahaan.
4. Dalam melaksanakan tugas pekerjaan harus memperhatikan aspek
keselamatan kerja, kesehatan kerja dan lindungan lingkungan
kerja perusahaan.
5. Membina pekerja di lingkungan perusahaan agar tercipta disiplin
kerja yang baik, meningkatkan kemampuan dan karier pekerja
serta kesejahteraan pekerja.
6. Mengkoordinir dalam menyiapkan dan memberikan laporan
secara berkala maupun sewaktu-waktu diperlukan tentang
pelaksanaan kegiatan dan hasil-hasilnya agar dapat diketahui
keberhasilan dan kendala-kendala yang dihadapi kepada
pemegang saham melalui Dewan Komisaris.
Bertanggung jawab kepada :
1) Pemegang Saham melalui Dewan Komisaris
Bertanggung jawab atas :
1) Direktur Umum.
2) Direktur Marketing.
Direktur Umum
Ikhtisar Jabatan :
a. Divisi Sumber Daya Manusia (Human Resource Departement).
42
Pemimpin bagian pengembangan SDM, bertanggung
jawab dalam hal analisis kepegawaian, analisis pelatihan, dan
asisten pengembangan SDM.
b. Divisi Admin Dept.
Pemimpin bagian administrasi kepegawaian, bertanggun
jawab dalam hal analisis kesejahteraan pegawai dan asisten
administrasi kepegawaian.
Tugas Pekerjaan :
1. Mengkoordinasikan dan mengendalikan kegiatan-kegiatan
dibidang administrasi keuangan, kepegawaian dan kesekretariatan.
2. Mengkoordinasikan dan mengendalikan kegiatan pengadaan dan
peralatan perlengkapan.
3. Merencanakan dan mengembangkan sumber-sumber pendapatan
serta pembelanjaan dan kekayaan perusahaan.
4. Mengendalikan uang pendapatan,
5. Melaksanakan tugas-tugas yang diberikan Direktur Utama.
6. Dalam melaksanakan tugas-tugas Direktur Umum bertanggung
jawab kepada Direktur Utama.
7. Dalam melaksanakan tugas pekerjaan harus memperhatikan aspek
keselamatan kerja, kesehatan kerja dan lindungan lingkungan
kerja perusahaan.
8. Mengkoordinir dalam menyiapkan dan memberikan laporan
secara berkala maupun sewaktu-waktu diperlukan tentang
pelaksanaan kegiatan dan hasil-hasilnya agar dapat diketahui
43
keberhasilan dan kendala-kendala yang dihadapi kepada
pemegang saham melalui Dewan Komisaris.
Bertanggung jawab kepada :
1) Direktur Utama
Bertanggung jawab atas :
1) HRD.
2) Admin Dept.
3) Bagian Umum.
Direktur Marketing
Ikhtisar Jabatan :
Memimpin, membina, mengawasi dan bertanggung jawab atas
kelancaran pelaksanaan kegiatan Marketing Analysis Division, Market
Development Division dan Customer Service Division dengan
menganalisa kebutuhan pasar dan kemampuan perusahaan dalam
melayani para pelanggan dan calon pelanggan agar pendapatan dan
keuntungan perusahaan dapat tercapai sesuai yang direncanakan
dengan memperhatikan kepuasan para pengguna jasa perusahaan.
Tugas Pekerjaan :
1. Mengkoordinasikan dan mengendalikan kegiatan dibidang
Perencanaan Tehnik, Produksi, Distribusi dan Perawatan Tehnik.
2. Mengkoordinasikan dan mengendalikan pemeliharaan instalasi
produksi.
44
3. Mengkoordinasikan kegiatan-kegiatan pengujian peralatan tehnik
dan bahan-bahan utama percetakan.
4. Melaksanakan tugas-tugas lain yang diberikan oleh Direktur
Utama.
5. Dalam menjalankan tugasnya, Direktur Tehnik bertanggung jawab
kepada Direktur Utama.
6. Mengkoordinasikan dan mengarahkan pelaksanaan kegiatan
Market Development Division meliputi Planning & Development
dan Pricing & Promotion agar rencana pengembangan pasar,
perhitungan tarif dan penjualan jasa perusahaan dapat mencapai
target pendapatan dan keuntungan yang telah ditetapkan.
7. Dalam melaksanakan tugas pekerjaan harus memperhatikan aspek
keselamatan kerja, kesehatan kerja dan lindungan lingkungan
kerja perusahaan.
8. Menyiapkan dan memberikan laporan secara berkala maupun
sewaktu-waktu diperlukan tentang pelaksanaan tugas dan hasil-
hasilnya agar dapat diketahui keberhasilan dan kendala-kendala
yang dihadapi kepada Pemegang Saham melalui Dewan
Komisaris.
Bertanggung jawab kepada :
1) Direktur Utama.
Bertanggung jawab atas :
1) Manager Marketing.
2) Manager Teknik.
45
Manager Marketing
Ikhtisar Jabatan :
Memimpin, membina, mengawasi dan bertanggung jawab atas
aparatur dan kelancaran pelaksanaan kegiatan Teknik Division
meliputi kegiatan penelitian dan pelatihan terhadap para staff teknik
sehingga dapat meningkatkan kinerja karyawan teknik yang
berkualitas dan memiliki skill yang memumpuni.
Tugas Pekerjaan :
1. Membuat program kerja, rencana kegiatan pelatihan, serta
mengawasi pelaksanaannya agar dapat berjalan dengan efektif dan
efisien.
2. Mengatur dan mengarahkan pelaksanaan kegiatan penelitian,
kajian dan identifikasi kebutuhan pasar dan pelanggan, kekuatan
dan kelemahan di internal dan ekstenal perusahaan lain yang
sejenis (kompetitor) secara tepat.
3. Mengatur dan mengarahkan pelaksanaan kegiatan perumusan
peningkatan kapabilitas dan standart kualitas produk jasa
percetakan perusahaan yang berorientasi pada pasar agar
mendapat nilai tambah dibandingkan produk jasa dari perusahaan
lain yang sejenis sehingga dapat menciptakan pasar baru dan
mengembangkan produk jasa percetakan sehingga dapat
meningkatkan pendapatan dan keuntungan bagi perusahaan.
46
4. Dalam melaksanakan tugas pekerjaan harus memperhatikan aspek
keselamatan kerja, kesehatan kerja dan lindungan lingkungan
kerja perusahaan
5. Membina pekerja di lingkungan Teknik Division agar tercipta
disiplin kerja yang dan saling pengertian yang baik serta
peningkatan kemampuan dan karier pekerja
6. Menyiapkan dan memberikan laporan secara berkala maupun
sewaktu-waktu diperlukan tentang pelaksanaan tugas dan hasil-
hasilnya agar dapat diketahui keberhasilan dan kendala-kendala
yang dihadapi.
Bertanggung jawab kepada :
1) Direktur Marketing
Bertanggung jawab atas :
1) Teknik Dept.
3.2 Analisis Permasalahan
3.2.1 Sistem Yang Sedang Berjalan
Sistem yang sedang berjalan pada PT. Horison adalah dengan
menggunakan sistem manual, dimana pencatatan traksaksi penjualan
dan persediaan barang masih menggunakan pembukuan.
Perusahaan ini juga menyimpan semua data – data konsumen,
stock, dan data penjualan dalam bentuk dokumen.
Berikut ini adalah prosedur – prosedur yang sedang berjalan
pada PT. Horison :
47
1. Prosedur penjualan barang
a. Bagian penjualan menerima pesanan dari pelanggan.
b. Bagian penjualan mengecek persediaan dan mengidentifikasi
kuantitas barang. Jika persediaan kosong maka pemesanan
selesai dan jika tidak dilakukan prosedur selanjutnya.
c. Bagian penjualan membuat surat pesanan rangkap dua.
d. Bagian penjualan memberikan surat pesanan kepada direktur.
e. Direktur memeriksa surat pesanan dan memberikan keputusan
pesanan diterima atau tidak. Jika ditolak maka pesanan
dibatalkan dan jika tidak maka surat pesanan ditandatangani
dan diteruskan ke bagian keuangan.
f. Surat pesanan rangkap dua diterima oleh bagian keuangan.
Bagian keuangan memeriksa pembayaran dari pelanggan.
Bagian keuangan mempertimbangkan surat pesanan diterima
apa ditolak. Jika ditolak maka pesanan dibatalkan dan jika
tidak maka surat pesanan ditandatangani dan diteruksan ke
bagian penjualan. Bagian keuangan menyimpan satu rangkap
surat pesanan sebagai arsip pembukuan
g. Bagian penjualan menerima surat pesanan rangkap ke satu
dan membuat surat jalan rangkap lima. Surat pesanan dan
surat jalan diteruskan ke bagian gudang.
h. Bagian gudang menyiapkan barang dan menyerahkan surat
pesanan rangkap kesatu dan surat jalan rangkap kesatu dan
kedua kebagian penjualan besertadengan barangnya, dan surat
48
jalan keempat dan kelima disimpan oleh bagian gudang
sebagai arsip dan bukti keluar barang.
i. Barang, surat jalan, dan surat pesanan diterima oleh bagian
penjualan. Bagian penjualan membuat faktur penjualan
rangkap tiga.
j. Faktur rangkap kedua dan ketiga disimpan oleh bagian
keuangan. Faktur tersebut sebagai bukti penagihan kepada
pelanggan jika telah jatuh tempo.
k. Faktur rangkap kesatu dan surat jalan rangkap kesatu dan
kedua diberikan kepada pelanggan untuk ditandatangani.
Surat jalan kedua menjadi arsip bagi perusahaan setelah
ditandatangani oleh pelanggan.
l. Bagian keuangan memperbaharui buku piutang dagang.
2. Prosedur persediaan barang
a. Bagian gudang membuat laporan perhitungan fisik rangkap
dua.
b. Laporan perhitungan fisik rangkap kesatu ditunjukan kepada
bagian keuangan dan rangkap kedua ditunjukan kepada
direktur marketing.
c. Bagian keuangan mengecek laporan perhitungan fisik dan
memperbaharui daftar persediaan barang.
d. Jika terdapat kekurangan stok maka bagian keuangan akan
memberitahu bagian pembelian untuk memesan barang dan
jika tidak maka proses selesai
49
3.2.2 Diagram Konteks
Berikut ini adalah diagram konteks dari prosedur yang sedang
berjalan :
Gambar 3.2 Diagram Konteks
50
3.2.3 DFD Nol
Dibawah ini Merupakan DFD level nol yang menggambarkan
sistem yang sedang berjalan pada PT. Horison :
Gambar 3.3 DFD Nol
51
3.2.4 Diagram Aliran Data
Berikut ini adalah diagram aliran data dari prosedur yang sedang
berjalan :
Gambar 3.4 Prosedur Penjualan Barang
52
Diagram Aliran Data Penjualan (Lanjutan)Admin
Bag. Pemasaran & Sales Marketing
Surat Jalan
Faktur
Surat Jalan
FakturFaktur
Surat Jalan
Admin Gudang
Surat JalanSurat Jalan
Surat JalanSurat Jalan
Surat Jalan
AdminBag.KeuanganDirekturDataCustomer
Menerima Surat Jalan
Surat Jalan
Surat JalanSurat Jalan
Menyiapkan Barang
Surat Pesanan
2
Surat Pesanan
2
Surat JalanSurat Jalan
Membuat Faktur
Faktur
Pengiriman Barang Ke Customer
Surat Jalan
1
Customer
Faktur
Ditanda tangani
Faktur
Surat Jalan
23
4
12
34
12
12
3
12
3
12
12
Surat Jalan
Faktur Penjualan
Mencatat Piutang
Penjualan
Selesai
Buku Piutang Penjualan
3
3
Gambar 3.5 Prosedur Penjualan Barang (Lanjutan)
53
Gambar 3.6 Prosedur Persediaan
54
3.2.5 Permasalahan Yang Dihadapi
Setelah melakukan observasi terhadap sistem yang sedang
berjalan saat ini, maka ditemukan beberapa masalah yang terjadi pada
perusahaan tersebut, yaitu :
1. Sistem yang berjalan masih manual dan belum terkomputerisasi
sehingga pencarian data masih lambat. Karena masih harus mencari
berkas yang disimpan secara kurang terstruktur.
2. Kesulitan dalam mengetahui persediaan barang secara akurat karena
pencatatan data yang masih manual sehingga berakibat pada
lambatnya kinerja gudang dalam mengecek ketersediaan barang di
gudang.
3. Sistem yang masih manual menyebabkan kurangnya koordinasi antara
pihak marketing dan pihak gudang. Hal ini mengakibatkan data
penjualan barang yang ada tidak ter-update dengan baik dan terjadi
ketidakkonsistenan data yang didapat antara pihak marketing dan
pihak gudang. Selain itu memerlukan waktu yang lama untuk
membuat laporan penjualan dan persediaan barang dan pihak
marketing kesulitan dalam mengetahui barang masih tersedia atau
tidak.
55
3.2.6 Usulan Pemecahan Masalah
Setelah mengetahui masalah yang dihadapi perusahaan maka
diterapkan sistem basis data yang menggantikan sistem manual yang ada
saat ini. Basis data yang dirancang mencakup sistem penjualan serta
persediaan.
Kemudian penerapan program aplikasi yang berhubungan dengan
penjualan dan transaksi yang sedang berjalan dengan perusahaan.
Perancangan program ini dapat membantu dan menyediakan informasi
yang lebih cepat dan akurat. Serta program ini dapat menyediakan
laporan penjualan dan persediaan yang dibutuhkan oleh perusahaan.
Selain itu sistem atau aplikasi ini dapat melakukan update terhadap
jumlah persediaan barang sehingga baik bagian marketing maupun
gudang dapat melihat perubahan data dan mendapatkan data yang
konsisten. Dengan demikian diharapkan aplikasi basis data ini dapat
meningkatkan efisiensi dan efektivitas kerja perusahaan secara total.
3.3 Perancangan Basis Data Konseptual
3.3.1 Indentifikasi Tipe Entiti
Pada tahap ini kita menentukan entiti dari sistem yang akan
dibangun. Entiti – entiti ini diperbolehkan ketika user requirement
dikumpulkan. Berikut ini adalah tabel yang menjelaskan entiti – entiti
yang digunakan dalam perancangan, antara lain :
56
Tabel 3.1 Indentifikasi Tipe Entiti
Nama Entiti Deskripsi
User Merupakan entiti yang berisi informasi tentang
Admin, Sales, dan report viewer
Customer Merupakan entiti yang berisi informasi tentang
pelanggan
Product Merupakan entiti yang berisi informasi tentang
mesin cetak maupun bahan baku percetakan
Category Merupakan entiti yang berisi informasi tentang
kategori
Merk Merupakan entiti yang berisi informasi tentang
merk
Order Merupakan entiti yang berisi informasi tentang
Pesanan
Supplier Merupakan entiti yang berisi informasi tentang
pemasok barang
Payment Merupakan entiti yang berisi informasi tentang
pembayaran
3.3.2 Indentifikasi Tipe Relasi
Tujuan dari tahap ini adalah untuk mengidentifikasi hubungan
antara entiti – entiti yang telah diidentifikasikan. Langkah – langkah
dalam identifikasi tipe relasional adalah :
57
3. Membuat ER diagram.
Berikut ini adalah ER diagram Konseptual :
Gambar 3.7 Entity Relationship (ER)
58
4. Menentukan pembatasan multiplicity dari tipe relasi :
Berikut ini adalah tabel hubungan antara semua entiti :
Tabel 3.2 Indentifikasi Hubungan
Nama Entiti Multiplicity Hubungan Nama Entiti Multiplicity
Customer 1..1 Melakukan Orders 1..*
User 1..1 Melakukan Orders 1..*
Order 1..1 Memiliki Payment 1..1
Product 1..* Memiliki Orders 1..*
Category 1..1 Memiliki Product 1..*
Merk 1..1 Memiliki Product 1..*
Supplier 1..1 Menghasilkan Product 1..*
3.3.3 Menentukan Suatu Entiti
Tujuannya adalah untuk menidentifikasi atribut setiap entiti
yang ada.
Tabel 3.3 Atribut
Nama Entiti Atribut Deskripsi Null Multivalue
Customer Id_customer Berisi kode pelanggan No No
Full_Name Berisi Nama Lengkap
Pelanggan
No No
Username Berisi username
pelanggan
No No
Password Berisi password No No
59
pelanggan
Email Berisi alamat email
pelanggan
Yes No
Country Nama Negara
Pelanggan
No No
Phone_Custo
mer
Nomer telpon
pelanggan
No Yes
Address Berisi alamat
pelanggan
No No
Postcode Nomer kodepos
pelanggan
No No
User Id_user Berisi kode karyawan No No
Username Berisi username
karyawan
No No
Password Berisi password
karyawan
No No
Name_user Berisi nama lengkap
karyawan
No No
Divisi Bagian karyawan No No
Level Level karyawan No No
Product Id_product Berisi kode barang No No
Id_merk Berisi kode jenis
barang
No No
60
Id_category Berisi kode kategory No No
Id_supplier Berisi kode pemasok No No
No_product Nomer barang No No
Name_produ
ct
Berisi nama barang No No
Description Berisi penjelasan
barang
No No
Purchase_pri
ce
Harga beli barang No No
Price Harga jual barang No No
Total_cost Berisi harga total
barang
No No
Qty_stock Berisi jumlah barang
yang tersedia
No No
Supplier_cat
aloge_numbe
r
Nomer dari pemasok No No
Input_date Tanggal barang masuk No No
Last_update Tanggal terakhir di
update
No No
Input_by Input barang oleh pihak
karyawan.
No No
Category Id_category Berisi kode kategori No No
61
barang
Category Berisi jenis kategori
dari barang
No No
Merk Id_merk Berisi kode dari tipe
barang
No No
Merk Berisi jenis dari tipe
barang
No No
Supplier Id_supplier Berisi kode dari
pemasok
No No
Name_suppli
er
Berisi nama pemasok No No
Address Berisi alamat pemasok No No
Phone_suppli
er
Nomer telp pemasok No Yes
Email Alamat email pemasok Yes No
Payment Id_payment Berisi kode
pembayaran
No No
Id_kind_of_p
ayment
Kode Jenis pembayaran No No
Kind_of_pay
ment
Jenis Pembayaran No No
Lot_of_paym
ent
Banyaknya angsuran No No
62
Limit_date Batas tanggal
pelunasan
No No
Nominal Besarnya jumlah
angsuran
No No
Paying Jumlah yang telah
dibayarkan
No No
Last_paid Tanggal pelunasan
pembayaran
No No
Status Status pembayaran No No
Order Id_order Kode pesanan No No
Id_customer Kode pelanggan No No
Id_merk Kode tipe barang No No
Id_payment Kode pembayaran No No
Id_product Kode barang No No
Id_user Kode karyawan No No
Sale_total_co
st
Total penjualan No No
Paid_with Cara pembayaran No No
Qty_purchas
e
Jumlah barang yang
dipesan
No No
Order_date Tanggal Pesanan No No
Handle_by Berisi nama karyawan No No
63
3.3.4 Menentukan atribut domain
Tujuan dari tahap ini adalah untuk menentukan domain dari
suatu atribut, seperti panjang dan tipe dari atribut.
Tabel 3.4 Atribut domain
Nama Entiti Atribut Panjang dan Tipe
Data
Customer Id_customer Int (10)
Full_Name Varchar (50)
Username Varchar (50)
Password Varchar (50)
Email Varchar (100)
Country Varchar (30)
Phone_Customer Varchar (20)
Address Text
Postcode Int (10)
User Id_user Int (10)
Username Varchar (50)
Password Varchar (50)
Name_user Varchar (50)
Divisi Varchar (30)
Level Int (2)
Product Id_product Int (10)
Id_merk Int (10)
64
Id_category Int (10)
Id_supplier Int (10)
No_product Int (10)
Name_product Varchar (100)
Description Text
Purchase_price Float
Price Float
Total_cost Float
Qty_stock Int (10)
Supplier_cataloge_number Int (10)
Input_date Datetime
Last_update Datetime
Input_by Varchar (20)
Category Id_category Int (10)
Category Varchar (50)
Merk Id_merk Int (10)
Merk Varchar (20)
Supplier Id_supplier Int (10)
Name_supplier Varchar (50)
Address Text
Phone_supplier Varchar (20)
Email Varchar (50)
Country Varchar (30)
65
Postcode Int (15)
Payment Id_payment Int (10)
Id_kind_of_payment Varchar (10)
Kind_of_payment Varchar (10)
Lot_of_payment Int (2)
Limit_date Date
Nominal Float
Paying Float
Last_paid Datetime
Status Varchar (10)
Order Id_order Int (10)
Id_customer Int (10)
Id_merk Int (10)
Id_payment Int (10)
Id_product Int (10)
Id_user Int (10)
Sale_total_cost Float
Paid_with Varhcar (10)
Qty_purchase Int (10)
Order_date Datetime
Handle_by Varchar (10)
66
3.3.5 Identifikasi Candidate key dan Primary key
Tujuan dari tahap ini adalah untuk menentukan candidate key
dan primary key :
Tabel 3.5 Candidate key dan Primary key
Nama Entiti Primary key Candidate key
Customer Id_customer Id_customer
User Id_User Id_User
Product Id_Product Id_Product
Category Id_category Id_category
Merk Id_merk Id_merk
Supplier Id_supplier Id_supplier
Payment Id_payment Id_payment
Id_kind_of_payment
Order Id_order Id_order
3.3.6 Mengecek Redudansi
Tujuan dari langkah ini adalah untuk mengecek apakah ada
redudansi dari model database.
Langkah – langkah pengecekan redudansi :
1. Memeriksa kembali hubungan one to one ( 1 : 1 )
Setelah diperiksa, kami tidak menemukan entitas – entitas yang
menggambarkan satu objek yang sama.
67
2. Menghilangkan redudansi dari suatu relasi
Setelah diperiksa, kami menemukan relasi yang redundan dalam
kasus ini.
3.3.7 Memvalidasi model konseptual lokal terhadap transaksi user
Dalam tahap ini, memastikan bahwa model konseptual lokal
mendukung transaksi yang dibutuhkan.
68
Gambar 3.8 Entity Relationship (ER) dengan Data Flow
Deskripsi transaksi :
1. Mengecek customer melakukan order (penjualan)
2. Mengecek user melakukan order (penjualan).
69
3. Mengecek product ( barang ) yang dijual.
4. Mengecek supplier ( pemasok ) dari product ( barang ) yang djual.
5. Mengecek category ( kategori ) dari product ( barang ) yang dijual.
6. Mengecek merk ( tipe ) dari product ( barang ) yang dijual.
7. Mengecek payment ( pembayaran ) berdasarkan penjualan.
3.3.8 Meninjau Ulang Lokal Konseptual Data Model dengan Pengguna
Setelah ditinjau dengan pengguna, rancangan basis data
konseptual yang dirancang sampai tahap ini dianggap mampu
mewakili keinginan pengguna sistem PT. Horison.
3.4 Perancangan Basis Data Logikal
3.4.1 Menghilangkan Fitur Yang Tidak Sesuai dengan Model Logikal
Tujuan dari tahap ini adalah untuk menghasilkan relasi pada
model data logikal lokal untuk mempresentasikan entiti, relasi, dan
atribut yang telah diidentifikasi.
70
1. Menghilangkan tipe relasi binary many - to – many ( *:* )
Gambar 3.9 Diagram Entity Relationship (ER) setelah
menghilangkan many to many
2. Menghilangkan atribut multivalue
a) Menghilangkan atribut multivalue pada customer
Gambar 3.10 Diagram Entity Relationship (ER) setelah
Menghilangkan atribut multivalue pada customer
71
b) Menghilangkan atribut multivalue pada supplier
Gambar 3.11 Diagram Entity Relationship (ER) setelah
Menghilangkan atribut multivalue pada supplier
3.4.2 Menentukan Relasi untuk Model Logikal Global
Tujuannya adalah untuk membuat relasi untuk model data
logikal lokal untuk memberitahukan entiti, hubungan dan atribut yang
telah diidentifikasikan. Berikut ini adalah relasi dari struktur model
yang memungkinkan :
1. Tipe entiti kuat
Customer ( Id_customer, Full_name, Username, Password,
Email, Country, Address, Postcode )
Primary key ( Id_customer )
User ( Id_user, Username, Password, Name_user,
Divisi, Level )
Primary key ( Id_user )
72
Product ( Id_product, No_product, Name_product,
Description, Purchase_price, Price, Total_cost,
Supplier_cataloge_number, Input_date,
Qty_stock, Last_update, Input_by )
Primary key ( Id_product )
Category ( Id_category, Category )
Primary key ( Id_category )
Merk ( Id_merk, Merk )
Primary key ( Id_merk )
Supplier ( Id_supplier, Name_supplier, Address, Email,
Country, Postcode)
Primary key ( Id_supplier )
Payment ( Id_payment, Id_kind_of_payment,
Kind_of_payment, Lot_of_payment, Limit_date,
Nominal, Paying, Last_paid, status)
Primary key ( Id_Payment )
Order ( Id_order, Sale_total_cost, Paid_with,
Qty_purchase, Order_date, Handle_by )
Primary key ( Id_order )
73
2. Tipe entiti lemah
Order_product ( Qty )
Primary key ( Tidak ada untuk saat ini )
Phone_customer ( Id_customer, Phone_customer )
Primary key ( Phone_customer )
Phone_supplier ( Id_supplier, Phone_supplier )
Primary key ( Phone_supplier )
74
3. One – to – many ( 1:* ) binary relationship types
Berikut ini adalah relasi-relasi one to many (1:*) serta hasil
posting dari entity – entity yang berhubungan satu dengan yang
lainnya :
a. Relasi antara Customer dengan Order melakukan posting
Id_customer ke entity Order
Customer ( Id_customer,
Full_name, Username,
Password, Email, Country,
Address, Postcode )
Primary Key ( Id_customer )
Order ( Id_order,
Id_customer, Id_user,
Id_product, Sale_total_cost,
Paid_with, Qty_purchase,
Order_date, Handle_by )
Primary Key ( Id_order )
Foreign Key ( Id_customer)
reference Customer
(Id_customer)
Foreign Key ( Id_user)
reference User (Id_user)
Foreign Key ( Id_product)
reference Product (Id_product)
81
b. Relasi antara User dengan Order melakukan posting Id_user
ke entity Order
User ( Id_user, Username,
Password, Name_user, Divisi,
Level )
Primary Key ( Id_user )
Order ( Id_order,
Id_customer, Id_user,
Id_product, Sale_total_cost,
Paid_with, Qty_purchase,
Order_date, Handle_by )
Primary Key ( Id_order )
Foreign Key ( Id_customer)
reference Customer
(Id_customer)
Foreign Key ( Id_user)
reference User (Id_user)
Foreign Key ( Id_product)
reference Product (Id_product )
82
c. Relasi antara Product dengan Order memiliki posting
Id_product ke entity Order
Product (Id_product,
Id_merk, Id_category,
Id_supplier, No_product,
Name_product, Description,
Purchase_price, Price, Total,
Qty_stock,
Supplier_cataloge_number,
Input_date, Last_update,
Input_by )
Primary Key ( Id_product )
Foreign Key ( Id_merk)
reference Merk (Id_merk)
Foreign Key ( Id_category)
reference Category
(Id_category)
Foreign Key ( Id_supplier)
reference Supplier (Id_supplier )
Order ( Id_order,
Id_customer, Id_user,
Id_product, Sale_total_cost,
Paid_with, Qty_purchase,
Order_date, Handle_by )
Primary Key ( Id_order )
Foreign Key ( Id_customer)
reference Customer
(Id_customer)
Foreign Key ( Id_user)
reference User (Id_user)
Foreign Key ( Id_product)
reference Product (Id_product )
83
d. Relasi antara Type dengan Product memiliki posting Id_type
ke entity Product
Merk (Id_merk, Merk)
Primary Key ( Id_merk )
Product (Id_product,
Id_merk, Id_category,
Id_supplier, No_product,
Name_product, Description,
Purchase_price, Price, Total,
Qty_stock,
Supplier_cataloge_number,
Input_date, Last_update,
Input_by )
Primary Key ( Id_product )
Foreign Key ( Id_merk)
reference Merk (Id_merk)
Foreign Key ( Id_category)
reference Category
(Id_category)
Foreign Key ( Id_supplier)
reference Supplier (Id_supplier )
84
e. Relasi antara Category dengan Product memiliki posting
Id_category ke entity Product
Category (Id_category,
Category)
Primary Key ( Id_category )
Product (Id_product,
Id_merk, Id_category,
Id_supplier, No_product,
Name_product, Description,
Purchase_price, Price, Total,
Qty_stock,
Supplier_cataloge_number,
Input_date, Last_update,
Input_by )
Primary Key ( Id_product )
Foreign Key ( Id_merk)
reference Merk (Id_merk)
Foreign Key ( Id_category)
reference Category
(Id_category)
Foreign Key ( Id_supplier)
reference Supplier (Id_supplier )
85
f. Relasi antara Category dengan Product memiliki posting
Id_category ke entity Product
Supplier (Id_supplier,
Supplier, Name_supplier,
Address, Email )
Primary Key ( Id_supplier )
Product (Id_product,
Id_merk, Id_category,
Id_supplier, No_product,
Name_product, Purchase_price,
Price, Total, Qty_stock,
Supplier_cataloge_number,
Input_date, Last_update,
Input_by )
Primary Key ( Id_product )
Foreign Key ( Id_merk)
reference Merk (Id_merk)
Foreign Key ( Id_category)
reference Category
(Id_category)
Foreign Key ( Id_supplier)
reference Supplier (Id_supplier )
86
4. One – to – one ( 1:1 ) binary relationship types
Mandatory participation on Both Side Of a 1:1 relationship antara
Order dan Payment
Order ( Id_order,
Id_customer, Id_user,
Id_product, Sale_total_cost,
Paid_with, Qty_purchase,
Order_date, Handle_by )
Primary Key ( Id_order )
Foreign Key ( Id_customer )
reference Customer
(Id_customer )
Foreign Key ( Id_user)
reference User ( Id_user )
Foreign Key ( Id_product )
reference Product ( Id_product )
Payment ( Id_payment,
Id_kind_of_payment,
,Kind_of_payment,
Lot_of_payment, Limit_date,
Nominal, Paying Id_order,
Last_paid, Status )
Primary Key ( Id_payment)
Foreign Key ( Id_order )
reference Order (Id_order )
87
5. Many – to – many ( *:* ) binary relationship types
Order ( Id_order,
Id_customer, Id_user,
Id_product, Sale_total_cost,
Paid_with, Qty_purchase,
Order_date, Handle_by )
Primary Key ( Id_order )
Foreign Key ( Id_customer )
reference Customer
(Id_customer )
Foreign Key ( Id_user)
reference User ( Id_user )
Product (Id_product,
Id_merk, Id_category,
Id_supplier, No_product,
Name_product, Description,
Purchase_price, Price, Total,
Qty_stock,
Supplier_cataloge_number,
Input_date, Last_update,
Input_by )
Primary Key ( Id_product )
Foreign Key ( Id_merk)
reference Merk (Id_merk)
Foreign Key ( Id_category)
reference Category
(Id_category)
Foreign Key ( Id_supplier)
reference Supplier (Id_supplier )
Order_Product (Id_order_Product, Id_order, Id_product,
Qty_purchase, Purchase_price, Price, Total_cost )
Primary Key ( Id_order_product )
88
Foreign Key ( Id_order) reference Order ( Id_order )
Foreign Key ( Id_product) reference Product ( Id_product )
6. Multivalue attribute
Post Id_customer ke Phone_customer
Customer ( Id_customer,
Full_name, Username,
Password, Email, Country,
Address, Postcode )
Primary Key ( Id_customer )
Phone_customer (Id_customer,
Phone_customer )
Primary Key (phone_customer)
Foreign Key ( Id_customer)
reference Customer
(Id_customer)
Post Id_supplier ke Phone_supplier
Supplier ( Id_supplier,
Name_supplier, Address, Email)
Primary Key ( Id_supplier )
Phone_supplier (Id_Supplier,
Phone_supplier )
Primary Key (phone_supplier)
Foreign Key ( Id_supplier)
reference Supplier (Id_supplier)
89
3.4.3 Validasi Relasi dengan Normalisasi
Tujuan dari langkah ini adalah untuk menghilangkan redudansi
dan menghindari data yang tidak konsisten terutama bila dilakuakan
penghapusan atau penambahan data sebagai akibat adanya data
rangkap.
1. Customer
UNF
Customer : Id_customer + Full_Name + Username +
Password + Email + Country + Address +
Postcode
1 NF
Customer : @Id_customer + Full_Name + Username +
Password + Email + Country + Address +
Postcode
2 NF
Customer : @Id_customer + Full_Name + Username +
Password + Email + Country + Address +
Postcode
3 NF
Customer : @Id_customer + Full_Name + Username +
Password + Email + Country + Address +
Postcode
90
2. Payment
UNF
Payment : Id_payment + Id_kind_of_payment +
Kind_of_payment + Lot_of_payment +
Limit_date + Nominal + Paying + Last_paid +
Status
1 NF
Payment : @ Id_payment + Id_kind_of_payment +
Kind_of_payment + Lot_of_payment +
Limit_date + Nominal + Paying + Last_paid +
Status
2 NF
Payment : @ Id_payment + Id_kind_of_payment +
Kind_of_payment + Lot_of_payment +
Limit_date + Nominal + Paying + Last_paid +
Status
3 NF
Payment : @Id_payment + @Id_kind_of_payment +
Lot_of_payment + Limit_date + Nominal +
Paying + Last_paid + Status
Kind_of_payment: @Id_kind_of_payment + Kind_of_payment
91
3. User
UNF
User : Id_user + Username + Password + Name_user
+ Divisi + Level
1 NF
User : @Id_user + Username + Password +
Name_user + Divisi + Level
2 NF
User : @Id_user + Username + Password +
Name_user + Divisi + Level
3 NF
User : @Id_user + Username + Password +
Name_user + Divisi + Level
4. Supplier
UNF
Supplier : Id_supplier + Name_supplier + Address +
1 NF
Supplier : @Id_supplier + Name_supplier + Address +
2 NF
Supplier : @Id_supplier + Name_supplier + Address +
92
3 NF
Supplier : @Id_supplier + Name_supplier + Address +
5. Merk
UNF
Merk : Id_merk + Merk
1 NF
Merk : @Id_merk + Type
2 NF
Merk : @Id_merk + Type
3 NF
Merk : @Id_merk + Type
6. Category
UNF
Category : @Id_category + Category
1 NF
Category : @Id_ category + Category
2 NF
Category : @Id_ category + Category
3 NF
Category : @Id_ category + Category
93
7. Product
UNF
Product : Id_Product + Id_merk + Id_category +
Id_supplier + Merk + Category + Nama_supplier
+No_product + Name_product + Description
+Purchase_price + Price + Total _cost + Qty_stock
+ Supplier_cataloge_number + Input_date +
Last_update + Input_by
1 NF
Product : @Id_Product + Id_merk + Id_category +
Id_supplier + Merk + Category + Nama_supplier
+No_product + Name_product + Description
+Purchase_price + Price Qty_stock +
Supplier_cataloge_number + Input_date +
Last_update + Input_by
2 NF
Product : @Id_Product + Id_merk + Id_category +
Id_supplier + No_product + Name_product +
Description +Purchase_price + Price + Qty_stock
+ Supplier_cataloge_number + Input_date +
Last_update + Input_by
Merk : @Id_merk + Merk
Category : @Id_category + Category
Supplier : @Id_supplier + Name_supplier
94
3 NF
Product : @Id_Product + Id_merk + Id_category +
Id_supplier + No_product + Name_product +
Description +Purchase_price + Price + Qty_stock
+ Supplier_cataloge_number + Input_date +
Last_update + Input_by
Merk : @Id_merk + Merk
Category : @Id_category + Category
Supplier : @Id_supplier + Name_supplier
8. Order
UNF
Order : Id_order + Id_customer + Id_user + Id_product
+ Id_payment + Sale_total_cost + Paid_with +
Qty_purchase + Order_date + Handle_by +
Full_name + Merk + Name_user +
Id_kid_of_payment + Last_paid +
Kind_of_payment
1 NF
Order : @Id_order + Id_customer + Id_user +
Id_product + Id_payment + Sale_total_cost +
Paid_with + Qty_purchase + Order_date +
Handle_by + Full_name + Merk + Name_user +
95
Id_kid_of_payment + Last_paid +
Kind_of_payment
2 NF
Order : @Id_order + Id_customer + Id_user +
Id_product + Id_payment + Sale_total_cost +
Paid_with + Qty_purchase + Order_date +
Handle_by + Full_name + Merk + Name_user +
Id_kid_of_payment + Last_paid +
Kind_of_payment
Order_product : @Id_product + @Id_order_product +
Qty_purchace
3 NF
Order : @Id_order + Paid_with + Handle_by
Order_product : @Id_product + @Id_order_product +
Qty_purchace
Customer : @Id_customer + Full_name
User : @Id_user + Name_user
Payment : @Id_payment + @Id_kind_of_payment +
Last_paid
Kind_of_payment : @Id_kind_of_payment + Kind_of_payment
96
3.4.4 Membuat Model Data Logikal Global
Tujuan dari langkah ini adalah untuk menggabungkan model
data logical lokal individual ke dalam sebuah model data logical
global. Berikut ini adalah tabel model data logical global :
Tabel 3.6 Model Basis Data Logikal Global
Customer ( Id_customer, Full_name, Username, Password, Email,
Company, Address, Postcode )
Primary Key ( Id_customer )
User ( Id_user, Username, Password, Name_user, Divisi, Level )
Primary Key ( Id_user )
Merk (Id_merk, Merk)
Primary Key ( Id_merk)
Category (Id_category, Category)
Primary Key ( Id_category )
Supplier (Id_supplier, Supplier, Name_supplier, Address, Email )
Primary Key ( Id_supplier )
Payment ( Id_payment, Id_kind_of_payment, Id_order, Last_paid,
Status )
Primary Key ( Id_payment )
Foreign Key ( Id_order ) reference Order (Id_order )
Kind_of_payment (Id_payment, Id_kind_of_payment,
Kind_of_payment, Lot_of_payment, Limit_date, Nominal, Paying )
Primary Key ( Id_kind_of_payment)
97
Phone_customer (Id_customer, Phone_customer)
Primary Key ( Phone_customer )
Foreign Key ( Id_customer ) reference Customer (Id_customer )
Phone_supplier (Id_supplier, Phone_supplier)
Primary Key ( Phone_supplier )
Foreign Key ( Id_supplier ) reference Supplier (Id_supplier )
Order_Product (Id_order_Product, Id_order, Id_product,
Qty_purchase, Purchase_price, Price, Total_cost )
Primary Key ( Id_order_product )
Foreign Key ( Id_order) reference Order ( Id_order )
Foreign Key ( Id_product) reference Product ( Id_product )
Product (Id_product, Id_merk, Id_category, Id_supplier,
No_product, Name_product, Purchase_price, Price, Total, Qty_stock,
Supplier_cataloge_number, Input_date, Last_update, Input_by )
Primary Key ( Id_product )
Foreign Key ( Id_merk) reference Merk (Id_merk)
Foreign Key ( Id_category) reference Category (Id_category)
Foreign Key ( Id_supplier) reference Supplier (Id_supplier )
Order ( Id_order, Id_customer, Id_user, Id_product,
Id_payment, Sale_total_cost, Paid_with, Qty_purchase, Order_date,
Handle_by )
Primary Key ( Id_order )
Foreign Key ( Id_customer ) reference Customer (Id_customer )
98
Foreign Key ( Id_user) reference User ( Id_user )
Foreign Key ( Id_payment) reference Paymeny ( Id_payment )
99
Gambar 3.12 Entity Relationship (ER) Global
Tabel Master : Tabel product, Tabel merk, Tabel category, Tabel customer, Tabel
supplier, Tabel phone_customer, Tabel phone_supplier, Tabel user.
Tabel Transaksi : Tabel order, Tabel order_product, Tabel payment, Tabel
kind_of_payment.
100
CREATE TABLE Customer
(
Id_customer INT(10) NOT NULL PRIMARY KEY,
Full_name VARCHAR(50) NOT NULL,
Username VARCHAR(50) NOT NULL,
Password VARCHAR(50) NOT NULL,
Email VARCHAR(100) NULL,
Country VARCHAR(30) NOT NULL,
Address TEXT NOT NULL,
Postcode INT(10) NOT NULL,
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Phone_customer
(
Phone_customer VARCHAR(20) NOT NULL PRIMARY KEY,
Id_customer INT(10) NOT NULL,
FOREIGN KEY (Id_customer) REFERENCES Customer (Id_customer)
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Supplier
(
Id_supplier INT(10) NOT NULL PRIMARY KEY,
Name_supplier VARCHAR(50) NOT NULL,
Email VARCHAR(50) NULL,
101
Address TEXT NOT NULL,
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Phone_supplier
(
Phone_supplier VARCHAR(20) NOT NULL PRIMARY KEY,
Id_supplier INT(10) NOT NULL,
FOREIGN KEY (Id_supplier) REFERENCES Supplier (Id_supplier)
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Merk
(
Id_merk INT(10) NOT NULL PRIMARY KEY,
Merk VARCHAR(20) NOT NULL ,
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Category
(
Id_category INT(10) NOT NULL PRIMARY KEY,
Category VARCHAR(20) NOT NULL ,
ON DELETE CASCADE ON UPDATE CASCADE
);
102
CREATE TABLE User
(
Id_user INT(10) NOT NULL PRIMARY KEY,
Username VARCHAR(50) NOT NULL,
Password VARCHAR(50) NOT NULL,
Name_user VARCHAR(50) NOT NULL,
Divisi VARCHAR(30) NOT NULL,
Level INT(2) NOT NULL,
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Product
(
Id_product INT(10) NOT NULL PRIMARY KEY,
Id_merk INT(10) NOT NULL,
Id_categoryINT(10) NOT NULL,
Id_supplier INT(10) NOT NULL,
No_product INT(10) NOT NULL,
Name_product VARCHAR(100) NOT NULL,
Description TEXT NOT NULL,
Purchase_price FLOAT NOT NULL,
Price FLOAT NOT NULL,
Total_cost FLOAT NOT NULL,
Qty_stock INT (10) NOT NULL,
Supplier_cataloge_number INT (10) NOT NULL,
103
Input_date DATETIME,
Last_update DATETIME,
Input_by VARCHAR (20)
FOREIGN KEY (Id_merk) REFERENCES Merk (Id_merk),
FOREIGN KEY (Id_category) REFERENCES Category (Id_category),
FOREIGN KEY (Id_supplier) REFERENCES Supplier (Id_supplier)
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Order
(
Id_order INT(10) NOT NULL PRIMARY KEY,
Id_product INT(10) NOT NULL,
Id_customer (10) NOT NULL,
Id_user INT(10) NOT NULL,
Sale_total_cost FLOAT NOT NULL,
Paid_with VARCHAR (10) NOT NULL,
Qty_purchase INT (10) NOT NULL,
Order_date DATETIME,
Handle_by VARCHAR (10)
FOREIGN KEY (Id_product) REFERENCES Product (Id_product),
FOREIGN KEY (Id_customer) REFERENCES Customer (Id_customer),
FOREIGN KEY (Id_user) REFERENCES User (Id_user)
ON DELETE CASCADE ON UPDATE CASCADE
);
104
CREATE TABLE Order_product
(
Id_order_product INT(10) NOT NULL PRIMARY KEY,
Id_order INT(10) NOT NULL,
Id_product (10) NOT NULL,
Qty_purchase INT (10) NOT NULL,
Purchase_price FLOAT NOT NULL,
Price FLOAT NOT NULL,
Total_cost FLOAT NOT NULL
FOREIGN KEY (Id_order) REFERENCES Order (Id_order),
FOREIGN KEY (Id_product) REFERENCES Product (Id_product)
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE Payment
(
Id_payment INT(10) NOT NULL PRIMARY KEY,
Id_kind_of_payment INT(10) NOT NULL,
Id_order (10) NOT NULL,
Last_paid DATETIME NOT NULL,
Status VARCHAR(10) NOT NULL
FOREIGN KEY (Id_order) REFERENCES Order (Id_order),
ON DELETE CASCADE ON UPDATE CASCADE
);
105
CREATE TABLE Kind_of_payment
(
Id_payment INT(10) NOT NULL PRIMARY KEY,
Id_kind_of_payment INT(10) NOT NULL,
Kind_of_payment VARCHAR (10) NOT NULL,
Lot_of_payment INT(2) NOT NULL,
Limite_date DATE NOT NULL,
Nominal FLOAT NOT NULL,
Paying FLOAT NOT NULL
FOREIGN KEY (Id_payment) REFERENCES Payment (Id_paymnet),
ON DELETE CASCADE ON UPDATE CASCADE
);
106
3.4.5 Mengecek Adanya Pertumbuhan di Masa Mendatang
Setalah diperiksa, tidak ditemukan perubahan yang signifikan.
3.5 Peracangan Basis Data Fisikal
3.5.1 Merancang Relasi Dasar
Tujuannya adalah untuk memutuskan bagaimana
merepresentasikan relasi dasar yang diidentifikasi pada model data
logikal lokal ke dalam sasaran DBMS.
Berikut ini merupakan hasil dari langkah ini.
Customer
Domain Id_customer Tipe data int, length 10
Domain Full_Name Tipe data variable cha racter, length
50
Domain Username Tipe data variable character, length
50
Domain Password Tipe data variable character, length
50
Domain Email Tipe data variable character, length
100
Domain Country Tipe data variable character, length
30
Domain Address Tipe data text
Domain Postcode Tipe data int, length 10
107
Customer (
Id_customer Id pelanggan NOT NULL,
Full_Name Nama pelanggan NOT NULL,
Username Username NOT NULL,
Password Password NOT NULL,
Email Email NULL,
Country Country NOT NULL,
Address Alamat pelanggan NOT NULL,
Postcode Kode pos NOT NULL,
PRIMARY KEY (Id_customer) );
Phone_customer
Domain Phone_customer Tipe data variable character, length
20 Format : [0-9] untuk setiap
character
Domain Id_customer Tipe data int, length 10
Phone_customer (
Phone_customer No telp pelanggan NOT NULL,
Id_customer Id pelanggan NOT NULL,
PRYMARY KEY (Phone_customer)
FOREIGN KEY (Id_customer) references Customer (Id_customer) ON
UPDATE CASCADE ON DELETE NO ACTION );
108
Supplier
Domain Id_supplier Tipe data int, length 10
Domain Name_supplier Tipe data variable cha racter, length
50
Domain Address Tipe data text
Domain Email Tipe data variable character, length
50
Supplier (
Id_supplier Id supplier NOT NULL,
Name_supplier Nama supplier NOT NULL,
Address Alamat supplier NOT NULL,
Email Email NULL,
PRIMARY KEY (Id_supplier) );
Phone_supplier
Domain Phone_supplier Tipe data variable character, length
20 Format : [0-9] untuk setiap
character
Domain Id_ supplier Tipe data int, length 10
Phone_Supplier (
Phone_ supplier No telp supplier NOT NULL,
Id_ supplier Id supplier NOT NULL,
PRYMARY KEY (Phone_ supplier)
FOREIGN KEY (Id_ supplier) references Supplier (Id_ supplier) ON
109
UPDATE CASCADE ON DELETE NO ACTION );
Merk
Domain Id_merk Tipe data int, length 10
Domain Merk Tipe data variable cha racter, length
20
Merk (
Id_merk Id merk NOT NULL,
Merk Merk barang NOT NULL,
PRIMARY KEY (Id_merk) );
Category
Domain Id_category Tipe data int, length 10
Domain Category Tipe data variable cha racter, length
20
Category (
Id_ category Id category NOT NULL,
Category Kategori barang NOT NULL,
PRIMARY KEY (Id_category) );
User
Domain Id_user Tipe data int, length 10
Domain Username Tipe data variable character, length
50
110
Domain Password Tipe data variable character, length
50
Domain Name_user Tipe data variable cha racter, length
50
Domain Divisi Tipe data variable character, length
30
Domain Level Tipe data int, length 2
User (
Id_user Id pelanggan NOT NULL,
Username Username NOT NULL,
Password Password NOT NULL,
Name_user Nama user NOT NULL,
Divisi Bagian pegawai NOT NULL,
Level Level pegawai NOT NULL,
PRIMARY KEY (Id_user) );
Product
Domain Id_product Tipe data int, length 10
Domain Id_merk Tipe data int, length 10
Domain Id_category Tipe data int, length 10
Domain Id_supplier Tipe data int, length 10
Domain No_product Tipe data int, length 10
Domain Name_product Tipe data variable character, length
100
111
Domain Description Tipe data Text
Domain Purchase_price Tipe data Float
Domain Price Tipe data Float
Domain Total _cost Tipe data Float
Domain Qty_stock Tipe data int, length 10
Domain Supplier_cataloge_number Tipe data int, length 10
Domain Input_date Tipe data datetime
Domain Last_update Tipe data datetime
Domain Input_by Tipe data variable character, length
20
Product (
Id_customer Id pelanggan NOT NULL,
Id_ merk Id merk NOT NULL,
Id_category Id kategori NOT NULL,
Id_supplier Id supplier NOT NULL,
No_product No barang NOT NULL,
Name_product Nama barang NOT NULL,
Description penjelasan barang NOT NULL,
Purchase_price Harga beli NOT NULL,
Price Harga jual NOT NULL,
Total_cost Harga total NOT NULL,
Qty_stock Barang tersedia NOT NULL,
Supplier_cataloge_number No supplier NOT NULL,
Input_date Barang masuk NOT NULL,
112
Last_update Tanggal update NOT NULL,
Input_by Input by NOT NULL,
PRIMARY KEY (Id_product)
FOREIGN KEY (Id_ merk) references Merk (Id_ merk) ON
UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (Id_ category) references Category (Id_ category) ON
UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (Id_ supplier) references Supplier (Id_ supplier) ON
UPDATE CASCADE ON DELETE NO ACTION );
Order
Domain Id_order Tipe data int, length 10
Domain Id_product Tipe data int, length 10
Domain Id_customer Tipe data int, length 10
Domain Id_user Tipe data int, length 10
Domain Sale_total_cost Tipe data Float
Domain Paid_with Tipe data variable character, length
10
Domain Qty_purchase Tipe data int, length 10
Domain Order_date Tipe data datetime
Domain Handle_by Tipe data variable character, length
10
Order (
Id_order Id order NOT NULL,
113
Id_product Id product NOT NULL,
Id_customer Id pelanggan NOT NULL,
Id_user Id pegawai NOT NULL,
Sale_total_cost Total penjualan NOT NULL,
Paid_with Cara pembayaran NOT NULL,
Qty_purchase Harga beli NOT NULL,
Order_date Tanggal order NOT NULL,
Handle_by Handle by NOT NULL,
PRIMARY KEY (Id_order)
FOREIGN KEY (Id_ product) references Product (Id_ product) ON
UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (Id_ customer) references Customer (Id_ customer)
ON UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (Id_ user) references User (Id_ user) ON
UPDATE CASCADE ON DELETE NO ACTION );
Order_product
Domain Id_order_product Tipe data int, length 10
Domain Id_order Tipe data int, length 10
Domain Id_product Tipe data int, length 10
Domain Qty_purchase Tipe data int, length 10
Domain Purchase_price Tipe data float
Domain Price Tipe data float
Domain Total_cost Tipe data float
114
Order_product (
Id_order_product Id order product NOT NULL,
Id_order Id order NOT NULL,
Id_product Id product NOT NULL,
Qty_purchase banyak pembelian NOT NULL,
Purchase_price Harga beli NOT NULL,
Price Harga jual NOT NULL,
Total_cost Jumlah penjulan NOT NULL,
PRIMARY KEY (Id_order_product)
FOREIGN KEY (Id_ order) references Order (Id_ order) ON UPDATE
CASCADE ON DELETE NO ACTION,
FOREIGN KEY (Id_ product) references Product (Id_ product) ON
UPDATE CASCADE ON DELETE NO ACTION );
Payment
Domain Id_payment Tipe data int, length 10
Domain Id_kind_of_payment Tipe data int, length 10
Domain Id_order Tipe data int, length 10
Domain Last_paid Tipe data datetime
Domain Status Tipe data variable character, length
10
Payment (
Id_payment Id payment NOT NULL,
Id_kind_of_payment Id kind of payment NOT NULL,
115
Id_order Id order NOT NULL,
Last_paid Tanggal lunas NOT NULL,
Status Status NOT NULL,
PRIMARY KEY (Id_payment)
FOREIGN KEY (Id_kind_of_payment) references Kind_of_payment
(Id_kind_of_payment) ON UPDATE CASCADE ON DELETE NO
ACTION,
FOREIGN KEY (Id_order) references Order (Id_order) ON
UPDATE CASCADE ON DELETE NO ACTION );
Kind_of_payment
Domain Id_payment Tipe data int, length 10
Domain Id_kind_of_payment Tipe data int, length 10
Domain Kind_of_payment Tipe data variable character, length
10
Domain Lot_of_payment Tipe data int, length 2
Domain Limit_date Tipe data date
Domain Nominal Tipe data float
Domain Paying Tipe data float
Kind_of_payment (
Id_payment Id payment NOT NULL,
Id_kind_of_payment Id jenis pembayaran NOT NULL,
Kind_of_payment Jenis pembayaran NOT NULL,
Lot_of_payment Banyaknya angsuran NOT NULL,
116
Limit_date Batas Tanggal NOT NULL,
Nominal Jumlah yng dibayar NOT NULL,
Paying Yang telah dibayar NOT NULL
PRIMARY KEY (Id_kind_of_payment));
3.5.2 Merancang Representasi dari Data Turunan
Tujuan dari langkah ini adalah untuk memutuskan bagaimana
merepresentasikan suatu data turunan pada global logikal data model
pada DBMS yang dipakai. Data turunan yang diidentifikasikan yaitu :
1. Total cost yang merepresentasikan besar harga dari semua product
yang ada. Nilai ini didapat dari jumlah quantity purchase dikali
dengan price.
2. Sale total cost yang merepresentasikan besar penjualan dari semua
product yang ada. Nilai ini didapat dari jumlah quantity purchase
dikali dengan unit price.
3.5.3 Menganalisa Transaksi
Tujuannya adalah untuk memahami fungsionalitas dari
transaksi yang akan berjalan pada basis data dan untuk menganalisa
transaksi yang penting. Transaksi – transaksi yang ada sebagai berikut:
A. Memasukan, mengubah dan menghapus data barang.
B. Cek dan menambah stok barang yang melewati stok minimum
barang.
C. Memasukan, mengubah dan menghapus data pelanggan.
117
D. Memasukan, mengubah dan menghapus data pegawai.
E. Memasukan, mengubah dan menghapus data supplier.
F. Menerima pesanan dari pelanggan.
G. Menerima stok dari supplier.
H. Menghapus pemesanan barang dari pelanggan.
Tabel 3.7 Analisis Transaksi
A B C D
R U D I R U D I R U D I R U D I
Product x x x x x x
Merk x x x x x x
Category x x x x x x
Customer x x x
Phone_customer x x x
Order
Order_product
Supplier
Phone_supplier
Payment
Kind_of_payment
User x x x
118
Tabel 3.8 Analisis Transaksi (Lanjutan)
E F G H
R U D I R U D I R U D I R U D I
Product x x x
Merk x
Category x
Customer x
Phone_customer
Order x x x
Order_product x x x
Supplier x x x x x
Phone_supplier x x x x
Payment x
Kind_of_payment
User
Keterangan :
R = Read, U = Update, D = Delete, I = Insert
119
3.5.4 Mengestimasi Kapasitas Penyimpanan Yang Dibutuhkan
Tujuannya adalah untuk menghitung jumlah kapasitas yang
dibutuhkan. Berikut adalah tabel perkiraan kapasitas :
Tabel 3.9 Customer
Field Type Ukuran
Id_customer Interger 10
Full_Name Varchar 50
Username Varchar 50
Password Varchar 50
Email Varchar 100
Country Varchar 30
Address Text ----
Postcode Integer 10
Kapasitas dari Table Customer adalah 300 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan pelanggan baru
Dalam satu tahun pertumbuhan dari Tabel Customer adalah 10 * 30 *
12 *300 = 1080000 bytes atau 1.080 Kbytes
120
Tabel 3.10 Supplier
Field Type Ukuran
Id_supplier Interger 10
Name_supplier Varchar 50
Address Text ----
Email Varchar 50
Kapasitas dari Table Supplier adalah 110 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Customer adalah 10 * 30 *
12 * 110 = 396000 bytes atau 396 Kbytes
Tabel 3.11 Phone_customer
Field Type Ukuran
Phone_customer Varchar 20
Id_customer Integer 10
Kapasitas dari Table Phone_customer adalah 30 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Phone_customer adalah 10 *
30 * 12 * 30 = 108000 bytes atau 108 Kbytes
121
Tabel 3.12 Phone_supplier
Field Type Ukuran
Phone_supplier Varchar 20
Id_supplier Integer 10
Kapasitas dari Table Phone_supplier adalah 30 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Phone_supplier adalah 10 *
30 * 12 * 30 = 108000 bytes atau 108 Kbytes
Tabel 3.13 Merk
Field Type Ukuran
Id_merk Integer 10
Merk Varchar 20
Kapasitas dari Table Merk adalah 30 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Merk adalah 10 * 30 *12 *
30 = 108000 bytes atau 108 Kbytes
122
Tabel 3.14 Category
Field Type Ukuran
Id_category Integer 10
Category Varchar 20
Kapasitas dari Table Category adalah 30 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Category adalah 10 * 30 *12
* 30 = 108000 bytes atau 108 Kbytes
Tabel 3.15 User
Field Type Ukuran
Id_user Interger 10
Username Varchar 50
Password Varchar 50
Name_user Varchar 50
Divisi Varchar 30
Level Integer 2
Kapasitas dari Table User adalah 182 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel User adalah 10 * 30 * 12
*182 = 655200 bytes atau 655,2 Kbytes
123
Tabel 3.16 Product
Field Type Ukuran
Id_product Interger 10
Id_merk Interger 10
Id_category Interger 10
Id_supplier Interger 10
No_product Interger 10
Nama_product Varchar 100
Purchase_price Float ----
Price Float ----
Total_cost Float ----
Qty_stock Integer 10
Supplier_cataloge_numb
er
Integer 10
Input_date Datetime ----
Last_update Datetime ----
Input_by Varchar 20
Kapasitas dari Table User adalah 190 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel User adalah 10 * 30 * 12
*190 = 684000 bytes atau 684 Kbytes
124
Tabel 3.17 Order
Field Type Ukuran
Id_order Interger 10
Id_product Interger 10
Id_customer Interger 10
Id_user Interger 10
Sale_total_cost Float ----
Paid_with Varchar 10
Qty_purchase Integer 10
Order_date Datetime ----
Handle_by Varchar 10
Kapasitas dari Table Order adalah 70 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Order adalah 10 * 30 * 12
*70 = 252000 bytes atau 252 Kbytes
125
Tabel 3.18 Order_product
Field Type Ukuran
Id_order_product Interger 10
Id_ order Interger 10
Id_ product Interger 10
Qty_purchase Interger 10
Purchase_price Float ----
Price Float ----
Total_cost Float ----
Kapasitas dari Table Order adalah 40 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Order adalah 10 * 30 * 12
*40 = 144000 bytes atau 144 Kbytes
126
Tabel 3.19 payment
Field Type Ukuran
Id_payment Interger 10
Id_kind_of_payment Interger 10
Id_ order Interger 10
Last_paid Datetime ----
Status Varchar 10
Kapasitas dari Table Payment adalah 40 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
Dalam satu tahun pertumbuhan dari Tabel Payment adalah 10 * 30 * 12
*40 = 144000 bytes atau 144 Kbytes
Tabel 3.20 Kind_of_payment
Field Type Ukuran
Id_payment Interger 10
Id_kind_of_payment Interger 10
Kind_of_payment Varchar 10
Lot_of_payment Integer 2
Limit_date Date ----
Nominal Float ----
Paying Float ----
Kapasitas dari Table Kind_of_payment adalah 32 bytes
Diperkirakan dalam 1 hari terjadi 10 penambahan.
127
alam satu tahun pertumbuhan dari Tabel Kind_of_payment adalah 10 *
30 * 12 *32 = 115200 bytes atau 115,2 Kbytes
Tabel 3.21 Estimasi Disk Space
Nama Tabel Kapasitas Yang Dibutuhkan Dalam 1 Tahun
Customer 1.080 Kbytes
Supplier 396 Kbytes
Merk 108 Kbytes
Category 108 Kbytes
Phone_customer 108 Kbytes
Phone_supplier 108 Kbytes
Order 252 Kbytes
Order_product 144 Kbytes
Payment 144 Kbytes
Kind_of_payment 115,2 Kbytes
Product 684 Kbytes
User 655,2 Kbytes
Total kapasitas kebutuhan dalam 1 tahun adalah 3902.4 Kbytes
Diperkirakan kapasitas yang dibutuhkan dalam 5 tahun adalah 5 * 3902,4
= 19.512 Kbytes
128
3.5.5 Pembuatan Index Setiap Entiti
Berikut ini merupakan pembuatan indeks untuk setiap entiti
yang ada pada table yang dilakukan pada primary key setiap entiti
antara lain :
Tabel 3.22 Pembuatan Index Setiap Entiti
Table Entiti Field Nama Indeks
Customer Id_customer Indx_customer
Supplier Id_supplier Indx _supplier
Merk Id_merk Indx _merk
Category Id_category Indx _category
Users Id_users Indx _users
Payment Id_payment Indx _payment
Kind_of_payment Id_kind_of_payment Indx _kind_of_payment
Phone_customer Id_phone_customer Indx _phone_customer
Phone_supplier Id_phone_supplier Indx _phone_supplier
Order Id_order Indx _order
Order_product Id_order_product Indx _order_product
Product Id_product Indx _product
129
3.5.6 Merancang Mekanisme Keamanan
Tujuannya adalah merancang mekanisme keamanan pada basis
data seperti yang dispesifikasi.
Berikut ini adalah perancangan mekanisme keamanan :
(Admin)
GRANT ALL ON Customer to ADMIN
GRANT ALL ON Supplier to ADMIN
GRANT ALL ON Merk to ADMIN
GRANT ALL ON Category to ADMIN
GRANT ALL ON User to ADMIN
GRANT ALL ON Payment to ADMIN
GRANT ALL ON Kind_of_payment to ADMIN
GRANT ALL ON Phone_customer to ADMIN
GRANT ALL ON Phone_supplier to ADMIN
GRANT ALL ON Order_product to ADMIN
GRANT ALL ON Order to ADMIN
GRANT ALL ON Product to ADMIN
(Report viewer)
GRANT ALL ON Customer to Rerpot Viewer
GRANT ALL ON Supplier to Rerpot Viewer
GRANT ALL ON Merk to Rerpot Viewer
GRANT ALL ON Category to Rerpot Viewer
GRANT ALL ON User to Rerpot Viewer
GRANT ALL ON Payment to Rerpot Viewer
130
GRANT ALL ON Kind_of_payment to Rerpot Viewer
GRANT ALL ON Phone_customer to Rerpot Viewer
GRANT ALL ON Phone_supplier to Rerpot Viewer
GRANT ALL ON Order_product to Rerpot Viewer
GRANT ALL ON Order to Rerpot Viewer
GRANT ALL ON Product to Rerpot Viewer
3.6 Perancangan Aplikasi
Berikut ini adalah perancangan aplikasi yang dibuat dan akan
digunakan oleh PT. Horison. Dalam perancangan aplikasi ini, meliputi
perancangan struktur menu, pembuatan State Transation Diagram ( STD ), dan
spesifikasi proses.
3.6.1 Struktur Menu
Berikut ini merupakan struktur menu dari aplikasi yang dibuat
antara lain :
131
Gambar 3.13 Struktur Menu Admin
132
Gambar 3.14 Struktur Menu Customer
133
3.6.2 State Transition Diagram
State transition diagram merupakan diagram yang
menjelaskan aliran suatu state ke state yang lain dalam sebuah aplikasi.
Berikut ini merupakan state transition diagram dari aplikasi yang
dirancang :
Gambar 3.15 State Transition Diagram Layar Utama pada Customer
134
Gambar 3.16 State Transition Diagram Layar Customer
135
Gambar 3.17 State Transition Diagram Layar Login dan Utama Admin
136
Contact Us
Klik “ Contact Us”
Daftar Contact Us
Klik “Cancel”
Halaman Utama
Tampil layar contact us
Klik “ Depan” Tampil halaman
utama
Tampil halaman utama
Klik “salah satu menu dari daftar contact us”
Lihat request dari customer
Gambar 3.18 State Transition Diagram Layar Contact Us pada Admin
137
Gambar 3.19 State Transition Diagram Layar Ubah Password pada Admin
138
Product
Klik “product “
Daftar Product
Klik “Save/Delete”
Halaman Utama
Tampil layar product
Klik “ Depan” Tampil halaman
utama
Tampil halaman utama
Klik “salah satu menu dari daftar product”View, Update, & delete product
Form Insert Product
Insert Product
Klik “Save”
Tampil halaman utama
Gambar 3.20 State Transition Diagram Layar Product pada Admin
139
Gambar 3.21 State Transition Diagram Layar Supplier pada Admin
140
Gambar 3.22 State Transition Diagram Layar Member Registration pada Admin
141
Gambar 3.23 State Transition Diagram Layar Penjualan Product pada Admin
142
Gambar 3.24 State Transition Diagram Layar Penjualan Supplies pada Admin
143
Gambar 3.25 State Transition Diagram Layar Report pada Admin
144
3.6.3 Spesifikasi Proses
Berikut ini merupakan spesifikasi proses dari aplikasi
penjualan :
Form Login
Mulai Form
Tulis username
Tulis password
Jika pilih “Login”
Buka data Login
Baca data Login
Cek username, password
Tutup data Login
Akhir Jika
Akhir Form
Form Ubah Sandi
Mulai Form
Tulis field-field yang ada di groupbox “ubah password”
Jika pilih “Submit”
Buka data Login
Baca Data Login
Cek Username, Password
Jika Benar
145
Masukkan data-data yang ada di groupbox ”ubah password”
Akhir Jika
Tutup data Login
Akhir Jika
Form Penjualan Product, Supplies & Media
Mulai Form
Tulis field-field yang ada di groupbox “Penjualan Product, Supplies &
Media”
Jika pilih “Submit”
Buka data Penjualan Product, Supplies & Media
Baca data Penjualan Product, Supplies & Media
Pengisian detail-detail ke data Product & Supplies
Akhir Jika
Jika pilih “Cancel”
Semua field-field kembali seperti awal
Akhir Jika
Akhir Form
Form Contact Us
Mulai Form
Tulis field-field yang ada di groupbox “Contact Us”
Jika pilih “Submit”
Buka data Contact Us
146
Baca data Contact Us
Pengisian detail-detail ke data Contact Us
Akhir Jika
Jika pilih “Reset”
Semua field-field kembali seperti awal
Akhir Jika
Akhir Form
Form Insert Product, Supplies & Media
Mulai Form
Generate Id_Product
Tulis field-field yang ada di groupbox tambah “Product”
Jika pilih “Save”
Buka data Product
Baca data Product
Pengisian detail-detail ke data Product
Akhir Jika
Akhir Form
From Update & Delete Product, Supplies & Media
Mulai Form
Generate Id_Product
Buka data Product, Supplies & Media
147
Baca data Product, Supplies & Media
Tampilkan detail-detail data Product, Supplies & Media
Jika pilih “Add”
Buka detail Product, Supplies & Media
Baca detail Product, Supplies & Media
Pengisian detail& ke data Product, Supplies & Media
Akhir Jika
Pengisian detail-detail ke data Product, Supplies & Media
Jika pilih “Delete”
Hapus data yang sedang dipilih di gridview Product, Supplies & Media
Akhir Jika
Akhir Form
Form Order Product, Supplies & Media
Mulai Form
Generate Id_Product
Generate Id_Admin
Buka data Order_product
Baca data Order_product
Tampilkan detail-detail data Order_product
148
Jika pilih “Approve”
Pengisian detail-detail ke data Order_Process
Akhir Jika
Jika pilih “Reject”
Hapus data yang sedang dipilih di gridview Order_product
Akhir Jika
Akhir Form
Form Order_Process product, Supplies & Media
Mulai Form
Generate Id_Product
Generate Id_ Order_product
Generate Id_Admin
Buka Order_Process
Baca Order_Process
Tampilkan detail-detail data Order_Process
Jika pilih “Pending”
Pengisian detail-detail ke data Order_Process dengan status “pending”
Akhir Jika
Jika pilih “Process”
Pengisian detail-detail ke data Order_Process dengan status “Process”
149
Akhir Jika
Jika pilih “Done”
Kembali ke menu Order_Process
Akhir Jika
Jika pilih “Submit”
Pengisian detail-detail ke data Order_Process
Akhir Jika
Jika pilih “Reset”
Semua field-field kembali seperti awal
Akhir Jika
Akhir Form
Form Contact Us
Mulai Form
Buka data Contact Us
Baca data Contact Us
Tampilkan detail-detail data Contact Us
Jika pilih “Done”
Pengisian detail-detail ke data Contact Us
Akhir Jika
150
Jika pilih “Cancel”
Hapus data yang sedang dipilih di gridview Contact Us
Akhir Jika
Akhir Form
Form Insert Suppliers
Mulai Form
Buka data Supplier
Baca data Supplier
Tampilkan detail-detail data Supplier
Jika pilih “Save”
Pengisian detail-detail ke data Supplier
Akhir Jika
Akhir Form
Form Insert Member Registration
Mulai Form
Buka data Customer
Baca data Customer
Tampilkan detail-detail data Customer
Jika pilih “Save”
151
Pengisian detail-detail ke data Customer
Akhir Jika
Akhir Form
3.7 Perancangan Layar
Berikut ini adalah perancangan layar secara keseluruhan pada aplikasi
yang dibuat, antara lain
Gambar 3.26 Rancangan Layar Halaman Product Pada Customer
152
Gambar 3.27 Rancangan Layar Halaman Supplies & Media Pada Customer
153
Gambar 3.28 Rancangan Layar Halaman Detail Product Pada Customer
154
Gambar 3.29 Rancangan Layar Halaman Buy This Product Pada Customer
155
Gambar 3.30 Rancangan Layar Halaman Detail Supplies & Media Pada Customer
Gambar 3.31 Rancangan Layar Halaman Buy This Supplies & Media Pada Customer
156
Gambar 3.32 Rancangan Layar Halaman About Us Pada Customer
Gambar 3.33 Rancangan Layar Halaman Our Address Pada Customer
157
Gambar 3.34 Rancangan Layar Halaman Contact Us Pada Customer
158
Gambar 3.35 Rancangan Layar Halaman Login Pada Customer
Gambar 3.36 Rancangan Layar Halaman Purchase History Pada Customer
159
Logo Screen
Login
Username
Password
Date dan Time
Gambar 3.37 Rancangan Layar Halaman Login Pada Admin
Gambar 3.38 Rancangan Layar Halaman Home Pada Admin
160
Gambar 3.39 Rancangan Layar Halaman Daftar Penjualan Product Pada Admin
161
Gambar 3.40 Rancangan Layar Halaman Daftar Order Process Penjualan Product
Pada Admin
162
Gambar 3.41 Rancangan Layar Halaman Daftar Credit Trans Penjualan Product
Pada Admin
163
Gambar 3.42 Rancangan Layar Halaman Daftar Cash Trans Penjualan Product
Pada Admin
164
Gambar 3.43 Rancangan Layar Halaman Daftar Penjualan Supplies Pada Admin
165
Gambar 3.44 Rancangan Layar Halaman Daftar Order Process Penjualan Supplies
Pada Admin
166
Gambar 3.45 Rancangan Layar Halaman Daftar Credit Trans Penjualan Supplies
Pada Admin
167
Gambar 3.46 Rancangan Layar Halaman Daftar Cash Trans Penjualan Supplies
Pada Admin
168
Gambar 3.47 Rancangan Layar Halaman Report Pada Admin
Gambar 3.48 Rancangan Layar Halaman Ubah Password Pada Admin
169
Gambar 3.49 Rancangan Layar Halaman Insert Product Pada Admin
170
Gambar 3.50 Rancangan Layar Halaman Insert Supplier Pada Admin
171
Gambar 3.51 Rancangan Layar Halaman Insert Member Pada Admin