BAB 3 METODOLOGI Metodologi

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB 3 METODOLOGI Metodologi"

Transkripsi

1 BAB 3 METODOLOGI 3.1. Metodologi Pada pembahasan ini akan dibahas mengenai metodologi yang digunakan, yaitu metodologi Database System Development Lifecycle Database Planning Database Planning yaitu aktivitas manajemen yang memungkinkan tahapan dari Database System Development Lifecycle untuk direalisasikan seefisien dan seefektif mungkin. Terdapat dua langkah dalam tahapan perencaanan basis data, yaitu: Mission Statement Mission statement dari perencanaan basis data ini yaitu menghasilkan aplikasi basis data yang dapat memasukkan, menyimpan, mengubah, dan menampilkan data untuk proses pemesanan, produksi, persediaan dan pembeliaan bahan baku secara terstruktur dan terintegrasi dengan baik Mission Objective Mission objective dari perencanaan basis data ini yaitu: 1. Memelihara (insert, update) dan melihat data pelanggan 2. Memelihara (insert, update)dan melihat data pengajuan pemesanan 3. Memelihara (insert, update) dan melihatdata pemesanan 4. Memelihara (insert, update) dan melihatdata kontrak 5. Memelihara (insert, update) dan melihat data jadwal 6. Memelihara (insert, update) dan melihatdata produksi 7. Memelihara (insert, update) dan melihat data rumus bahan baku 8. Memelihara (insert, update) dan melihatdata rancangan kusen 9. Memelihara (insert, update) dan melihatdata tugas produksi 10. Memelihara (insert, update) dan melihat data pengambilan bahan baku 11. Memelihara (insert, update) dan melihatdata barang jadi 41

2 Memelihara (insert, update) dan melihatdata pemasangan 13. Memelihara (insert, update) dan melihat data bahan baku 14. Memelihara (insert, update) dan melihat data pengajuan pembelian 15. Memelihara (insert, update) dan melihat data retur pembelian 16. Memelihara (insert, update) dan melihat data pengiriman 17. Memelihara (insert, update) dan melihat data pemasok 18. Memelihara (insert, update) dan melihatdata pembelian 19. Memelihara (insert, update) dan melihatdata karyawan 20. Memelihara (insert, update) dan melihatdata pembayaran pemesanan 21. Memelihara (insert, update) dan melihatdata pembayaran pembelian 22. Membuat surat kontrak, PO pemesanan, danlaporan pemesanan 23. Membuat bukti pembayaran danlaporan pembayaran pemesanan 24. Membuat laporan pembayaran pembelian 25. Membuat surat retur pembelian 26. Membuat surat persetujuan rancangan 27. Membuat laporan pengambilan bahan baku 28. Membuat surat jalan dan laporan pengiriman 29. Membuat surat pemasangan danlaporan pemasangan System Definition System definition mendeskripsikan jangkauan dan batasan dari batasan aplikasi basis data dan pandangan-pandangan utama para pengguna. Ruang lingkup untuk aplikasi basis data yang akan dirancang sudah didefinisikan pada Bab 1.3 dan user views bagi para karyawan dalam mengakses aplikasi basis data juga sudah didefinisikan berdasarkan tugas dan wewenang, serta melakukan evaluasi ulang dengan Wakil Direktur PT Luxus Indo Prima Requirement Collection and Analysis Requirement collection and analysis yaitu proses mengumpulkan dan menganalisa informasi tentang bagian dariperusahaanyangakan didukungoleh sistem basis data dan menggunakan informasi ini untuk mengidentifikasi kebutuhan pemakai terhadap sistembaru.

3 Proses pengumpulan informasi-informasi yang diperlukan dilakukan dengan cara dan penjelasan berikut: Wawancara Kegiatan wawancara dilakukan beberapa kali dengan Wakil Direktur PT Luxus Indo Prima pada tanggal dan tujuan berikut: 1. memahami proses bisnis yang sedang berjalan pada PT Luxus Indo Prima 2. membahas mengenai dokumen-dokumen bisnis dari PT Luxus Indo Prima 3. mengevaluasi dengan pihak PT Luxus Indo Prima bahwa perancangan yang dilakukan pada setiap tahapan sudah memenuhi kebutuhan dari pihak perusahaan Menguji Dokumentasi Beberapa dokumen penting, seperti faktur pembelian, pemesanan, rumus perhitungan, kontrak, dan surat lainnya diberikan oleh pihak PT Luxus Indo Prima agar dapat mendukung kelancaran dalam menganalisa sistem Observasi Observasi dilakukan pada PT Luxus Indo Prima dengan tujuan: 1. Melihat secara langsung proses kerja yang berlangsung pada PT Luxus Indo Prima 2. Mendapatkan informasi lainnya yang belum diperoleh sebelumnya ketika mewawancarai karyawan-karyawan lain Kuesioner Kuesioner dilakukan untuk mengukur tanggapan dan memperoleh saran dari pengguna mengenai aplikasi basis data yang dihasilkan.pertanyaan kuesioner disusun dengan mempertimbangkan aturan Eight Golden Rules.

4 Database Design Database design yaitu proses pembuatan desain yang mendukung mission statement dan mission objective perusahaan untuk keperluan sistem basis data. Tiga fase dalam perancangan basis data yaitu: Peracangan Basis Data Koseptual Pada perancangan basis data konseptual akan dibangun model data konseptual yang terdiri dari sembilan langkah dan akan dirancang pada Bab Peracangan Basis Data Logikal Pada perancangan basis data logikal akan dibangun dan divalidasi model data logikal yang terdiri dari tujuh langkah dan akan dirancang pada Bab Peracangan Basis Data Fisikal Peracangan basis data fisikal terdiri dari enam langkah, yang meliputi perancangan file organization, indexes, space, user views, security, dan pertimbangan yang lainnya. Tahapan ini akan dibahas pada Bab DBMS Selection DBMS selection yaitu proses pemilihan DBMS yang tepat yang mendukung sistem basis data. Proses pemilihan DBMS ini dilakukan pada Bab Application Design Application design yaitu proses merancang user interface dan program aplikasi yang digunakan dan diproses oleh basis data. Terdapat dua aspek dalam merancang aplikasi, yaitu: Transaction Design Transaction design meliputi penentuan transaksi-transaksi yang diperlukan dan akan ditentukan pada Bab 3.2.

5 User Interface Design User interface design meliputi perancangan StateTransitionDiagram, layar input, output. Peracangan user interface juga didesain mengikuti Eight Golden Rules, yang meliputi: 1. Strive for Consistency 2. Cater to Universal Usability 3. Offer Informative Feedback 4. Design Dialogs to Yield Closure 5. Prevent Errors 6. Permit Easy Reversal of Actions 7. Support Internal Locus of Control 8. Reduce Short Term Memory Load Peracangan user interfaceakan dibahas secara lebih detil dengan gambar-gambar rancangan pada Bab Prototyping Prototypingyaitu prosesmembangunmodelkerjadarisistembasisdata dan merupakan langkah pilihan. Langkah ini tidak dilakukan karena perancangan layar dan State Transition Diagram yang didesain dapat memberikan gambaran yang jelas mengenai aplikasi basis data yang akan dihasilkan Implementation Implementationyaitu proses realisasi secarafisikdaribasis datadandesainaplikasi. Implementasi sistem basis data meliputi instalasi perangkat keras, lunak, jaringan, dan sebagainya. Tahapan ini akan dibahas secara lebih detil pada Bab Data Coversion and Loading Dataconversionandloading yaitu prosesmemindahkan data yang ada ke dalam basis data baru dan mengkonversi setiap aplikasi yang sudah ada untuk dijalankan di dalam basis data baru.

6 46 Pada tahapan ini, data-data yang diperlukan dalam proses bisnis PT Luxus Indo Prima, seperti data karyawan, pemasok, pelanggan, pemesanan, dan lainnya akan dikonversi ke dalam basis data yang sudah dirancang. Estimasi konversi data manual ke dalam basis data akan ditampilkan pada Lampiran Estimasi Konversi Data PT Luxus Indo Prima Testing Testing yaitu prosesmenjalankan sistem basis data dengan tujuan untuk menemukan kesalahan. Testing yang akan dilakukan meliputi System Integration Testing dan User Acceptance Testing yang akan dibahas pada Bab Operational Maintenance Operationalmaintenanceyaitu proses memantau danmemelihara sistem basis data setelah melakukan instalasi. Proses pemantauan dan pemeliharaan perlu dilakukan secara rutin agar dapat menjamin bahwa aplikasi basis data PT Luxus Indo Prima dapat selalu berfungsi dengan baik Analisis Masalah Pada pembahasan ini akan dianalisa sistem manual yang berjalan, kebutuhan, dan masalah pada PT Luxus Indo Prima, serta pemberian usulan pemecahan masalah Analisis Sistem yang Berjalan Pada pembahasan ini akan dibahas tentang riwayat perusahaan, divisi yang terlibat, dan alur bisnis dari proses bisnis yang terkait Riwayat Perusahaan Pada awal tahun delapan puluhan, kondisi ekonomi di Indonesia sangat buruk, apalagi bagi yang menetap di pulau-pulau dan daerah-daerah kecil. Oleh karena itu, banyak penduduk yang merantau ke kota Jakarta dengan tujuan bisa memiliki penghasilan yang lebih banyak di kota mutiara ini. Salah satunya adalah Bapak Francis Cahyadi.

7 47 Bapak Francis Cahyadi lahir pada tahun 1953 di pulau Belitung.Beliau datang Jakarta ketika berumur tiga puluhan.modal yang dimiliki beliau saat itu bukanlah uang ataupun pendidikan yang tinggi, melainkan keinginan dan tekad yang kuat. Karena tidak memiliki pendidikan yang tinggi, maka pekerjaan yang bisa dilakukan saat itu sangat terbatas, seperti tukang bengkel, supir lori, dan lainnya. Namun, usaha dan kerja keras dari Bapak Francis tidaklah sia-sia, pada saat sekitar umur empat puluh, beliau mampu memiliki perusahaan sendiri yang bergerak di bidang perminyakan sehingga hasil dari usaha beliau bisa terlihat dari bisnis yang dimiliki. Pada akhir tahun 2011, Bapak Francis merencanakan untuk memulai usaha baru yang bergerak di bidang kusen pintu jendela. Maka, beliau mengajak dua orang teman yang bernama Erwin Sutrisno dan Ign Jasin untuk bekerja sama. Kedua teman tersebut setuju dan berperan sebagai pemangku saham.kemudian, Bapak Francis mengajak keponakannya yang bernama Jen Min untuk berperan sebagai Wakil Direktur dalam perusahaan tersebut. Tidak lama kemudian, yaitu pada bulan Mei 2012, usaha kusen pintu jendela dari Bapak Francis Cahyadi didirikan dengan nama PT Luxus Indo Prima dan berlokasi di Kapuk Business Park Blok BH, Jl. Kapuk Raya No.28 Jakarta Barat. Pada awal berdirinya PT Luxus Indo Prima, karyawan yang bekerja hanya ada sekitar enam yang terdiri dari tiga karyawan produksi, dua karyawan pengiriman dan pemasangan, serta satu karyawan penggambar desain.pembagian divisi perusahaan pada saat itu juga belum jelas.untuk hal eksternal yang melibatkan pencarian pelanggan dan negosiasi dengan pelanggan dilakukan oleh Direktur sendiri, yaitu Bapak Francis Cahyadi. Untuk hal internal yang melibatkan perhitungan rincian bahan baku, pengontrolan stok gudang, dan pembelian bahan baku dilakukan oleh Wakil Direktur, yaitu Bapak Jen Min. Pada enam bulan pertama, PT Luxus Indo Prima tidak mendapatkan pemesanan yang banyak. PO yang diterima setiap bulan oleh bagian produksi hanya sekitar tiga sampai lima. Hal ini mengakibatkan Direktur dan Wakil Direktur menimbulkan pemikiran untuk menghentikan bisnis yang kurang berpotensi ini.namun, pemikiran tersebut tidak mempengaruhi tekad dan keingingan Direktur PT Luxus Indo Prima.Beliau tidak menyerah, melainkan

8 48 bekerja secara lebih sungguh-sungguh dengan Wakil Direktur agar dapat membuahkan kesusksesan dalam bisnis UPVC. Dengan usaha dan kemauan yang besar, ternyata pada bulan November tahun 2012, PT Luxus Indo Prima mengalami kemajuan.po yang diterima meningkat hingga belasan untuk setiap bulan.proyek yang diterima juga bervariasi, dari perumahan hingga gedung.karena proyek yang diterima bertambah banyak, maka tenaga kerja yang diperlukan juga lebih banyak, mulai dari karyawan untuk bagian pemasaran, produksi, gudang, akuntansi, dan pembelian. Kemajuan bisnis PT Luxus Indo Prima lebih terlihat pada bulan Agustus 2012 dengan jumlah PO yang diterima sekitar dua puluhan.pemesanan proyek tersebut bukan hanya berasal dari Jakarta, melainkan juga kota-kota luar seperti Bekasi, Makassar, dan Semarang. Selain itu, PT Luxus Indo Prima juga berhasil bekerja sama dengan pihak distributor dari Cengkareng dan Makassar. Hal ini bisa terjadi karena kualitas dari produksi yang dikerjakan dan sikap ramah dari pihak PT Luxus Indo Prima dalam melayani pelanggan Visi dan Misi 1. Visi: Menjadi pemasok pintu dan jendela UPVC terbaik di Indonesia 2. Misi: a. Berkomitmen tinggi, positif, berpikiran sukses, dan maju, jujur dalam melayani pelanggan yang membutuhkan pintu dan jendela UPVC yang berkualitas b. Bekerja keras dan sungguh-sungguh untuk melayani semua pelanggan dengan memberikan pelayanan terbaik dengan sepenuh hati c. Menawarkan produk pintu dan jendela UPVC yang berkualitas tinggi dengan harga yang terjangkau sesuai dengan kebutuhan setiap pelanggan d. Meningkatkan dan memperbaiki kinerja agar lebih baik dalam melayani pelanggan baik sekarang maupun pada masa yang akan datang

9 49 e. Menjalankan perusahaan dengan Good Corporate Governance supaya dapat menjadi sumber kesejahteraan bagi pemilik, karyawan, dan pelanggan PT Luxus Indo Prima Struktur Organisasi Indo Prima: Berikut adalah gambar diagram struktur organisasi dalam PT Luxus Gambar 3.1Struktur organisasi PT Luxus Indo Prima Tugas dan Wewenang 1. Direktur a. Memimpin rapat dan mengambil keputusan akhir b. Mengangkat dan memberhentikan manajer dan karyawan c. Membina hubungan yang baik dengan pihak luar d. Membuat peraturan perusahaan 2. Wakil Direktur a. Membantu dan memberi dukungan kepada Direktur b. Menggantikan posisi Direktur jika tidak berada di tempat c. Mengawasi seluruh kegiatan perusahaan d. Menerima laporan dari berbagai divisi

10 50 3. Pemasaran a. Membina hubungan yang baik dengan pelanggan b. Bertanggungjawab atas kelancaran proses pemesanan produk c. Bertanggungjawab untuk memantau kelancaran selama proses produksi hingga pemasangan d. Mempersiapkan semua dokumen yang diperlukan dalam proses pemesanan hingga pemasangan e. Membuat laporan pemesanan 4. Produksi Divisi Produksi dibagi menjadi tiga bagian yang masing-masing memiliki tugas dan wewenang yang berbeda. a. Estimasi Harga 1. Membuat rancangan desain produk sesuai permintaan pelanggan 2. Memperhitungkan estimasi harga dan waktu produksi b. Produksi 1. Menghasilkan produk yang berkualitas tinggi 2. Menjaga dan merawat mesin dengan baik agar selalu berada dalam kondisi yang maksimal 3. Membuat laporan produksi dan dokumen lainnya yang diperlukan c. Pemasangan 1. Menjalan proses pemasangan pintu jendela UPVC dengan maksimal 2. Bertanggungjawab atas produk kusen pintu jendela selama proses pemasangan 5. Gudang 1. Bagian gudang bertanggungjawab atas Gudang Bahan Baku dan Gudang Bahan Jadi 2. Mengontrol stok bahan baku agar selalu tersedia 3. Bertanggungjawab untuk memelihara stok bahan baku dan produk jadi

11 51 4. Bertanggungajawab atas semua proses penambahan dan pengeluaran stok maupun produk jadi 5. Membuat laporan persediaan barang dan dokumen lainnya yang diperlukan 6. Pembelian 1. Bertanggungjawab atas pengajuan penambahan persediaan barang dari pihak Gudang sesuai jadwal 2. Membina hubungan yang baik dengan pihak pemasok 3. Membuat laporan pembelian dan dokumen lainnya yang diperlukan

12 Proses Bisnis 1. Flowchart Pemesanan Gambar 3.2Flowchart Proses Pemesanan

13 53 Berikut merupakan tahapan-tahapan dalam menjalankan proses pemesanan: 1. Divisi pemasaran akan menerima gambar model kusen pintu yang diberikan oleh pelanggan kemudian melakukan duplikasi gambar model tersebut menjadi dua rangkap. 2. Rangkap gambar model pertama akan disimpan oleh Divisi Pemasaran sebagai arsip. 3. Rangkap gambar model kedua akan diberikan kepada Divisi Produksi Bagian Estimasi Harga untuk melakukan perhitungan harga. 4. Sebelum melakukan perhitungan harga, Bagian Estimasi Harga dari Divisi Produksi akan melakukan pengecekan rumus yang sesuai untuk menghitung harga berdasarkan gambar model dan ukuran kusen pintu jendela. 5. Jika rumus yang dibutuhkan tidak ada, maka Bagian Estimasi Harga akan membuat rumus baru dan rumus baru tersebut akan disimpan dalam daftar rumus. 6. Jika rumus yang dibutuhkan sudah tersedia, maka akan dibuat daftar bahan baku yang berisi jumlah dan jenis bahan baku yang dihitung berdasarkan rumus yang sesuai. 7. Berdasarkan daftar bahan baku dan daftar harga bahan baku, maka Bagian Estimasi Harga akan menghitung daftar biaya produksi. 8. Divisi Pemasaran akan membuat surat penawaran harga sebanyak dua rangkap yang mengandung kontrak berdasarkan daftar biaya produksi yang dibuat oleh Bagian Estimasi Harga. Kedua rangkap surat tersebut akan diberikan kepada pelanggan untuk dibaca 9. Apabila pelanggan tidak menyetujui surat penawaran harga tersebut, maka pelanggan dapat melakukan negosiasi harga dengan menghubungi Divisi Pemasaran untuk menambahkan diskon yang diberikan. Kemudian, Divisi Pemasaran akan menentukan harga baru yang disepekati. Surat penawaran harga

14 54 yang baru akan dikirim ulang oleh Divisi Pemasaran kepada pelanggan. 10. Apabila pelanggan menyetujui surat penawaran harga tersebut, maka pelanggan akan menandatangani kedua rangkap surat penawaran harga yang diberikan. 11. Rangkap pertama akan disimpan oleh pelanggan dan rangkap kedua akan dikembalikan kepada Divisi Pemasaran untuk disimpan sebagai arsip. 12. Kemudian Divisi Pemasaran akan membuat PO sebanyak empat rangkap. Rangkap pertama disimpan oleh Divisi Pemasaran, rangkap kedua akan diberikan ke Pelanggan, rangkap ketiga akan diberikan ke Divisi Produksi Bagian Produksi untuk memulai produksi, sedangkan rangkap keempat akan diberikan ke Divisi Keuangan yang akan diarsip untuk pembayaran pemesanan. 13. Setelah membuat PO, Divisi Pemasaran akan membuat jadwal pemasangan sebanyak dua rangkap. Rangkap pertama akan disimpan oleh Divisi Pemasaran sebagai arsip dan rangkap kedua akan diberikan ke Divisi Produksi sebagai target proses produksi. 14. Pelanggan akan melakukan pembayaran sesuai PO yang diberikan ke Divisi Keuangan. Selanjutnya Divisi Keuanganakan membuat bukti pembayaran sebanyak dua rangkap. Rangkap pertama disimpan oleh Divisi Keuangan, sedangkan rangkap kedua akan diberikan kepada pelanggan.

15 55 2. Flowchart Produksi Gambar 3.3Flowchart Proses Produksi

16 56 Berikut merupakan tahapan-tahapan dalam menjalankan prosesproduksi: 1. Divisi Produksi akan menerima PO dan jadwal pemasangan yang dibuat oleh Divisi Pemasaran. 2. Divisi Produksi akan membuat rancangan detil kusen pintu jendela sesuai dengan PO yang diterima. Rancangan tersebut dibuat sebanyak dua rangkap. 3. Rangkap pertama akan disimpan oleh divisi produksi sebagai arsip, sedangkan rangkap kedua akan diberikan ke divisi pemasaran. 4. Divisi pemasaran akan membuat surat persetujuan rancangan sebanyak dua rangkap yang berisi pernyataan kesesuaian rancangan dan rancangan detil yang sebelumnya telah diberikan oleh Divisi produksi. 5. Kedua rangkap surat persetujuan rancangan diberikan ke pelanggan untuk dibaca. 6. Apabila pelanggan tidak menyetujui rancangan detil yang diberikan, maka pelanggan akan mengajukan revisi rancangan. Kemudian Divisi produksi akan membuat ulang rancangan detil kusen sesuai dengan permintaan revisi pelanggan. 7. Apabila pelanggan menyetujui rancangan yang dibuat, maka pelanggan akan menandatangani kedua rangkap surat persetujuan rancangan tersebut. 8. Rangkap pertama surat persetujuan rancangan yang sudah ditandatangani akan disimpan oleh pelanggan, sedangkan rangkap keduanya akan kembalikan ke Divisi Pemasaran. 9. Setelah menerima persetujuan rancangan dari pelanggan selanjutnya Divisi Produksi akan membuat daftar pembagian tugas untuk memulai produksi barang jadi. Daftar pembagian tugas tersebut berisi tugas-tugas yang harus dikerjakan oleh Divisi Produksi Bagian Produksi. 10. Divisi Produksi akan mengambil bahan baku yang sesuai dengan daftar bahan baku yang sudah ditentukan sebelumnya.

17 Setiap kali pengambilan bahan baku, Divisi Produksi akan mencatat bahan baku apa saja yang telah diambil dalam catatan pengambilan sementara. 12. Kemudian berdasarkan catatan pengambilan sementara akan dibuat surat pengambilan bahan baku yang berisi daftar bahan baku yang diambil selama satu hari proses produksi. Surat tersebut dibuat sebanyak dua rangkap. 13. Rangkap pertama surat pengambilan bahan baku akan disimpan oleh Divisi Produksi sebagai arsip, sedangkan rangkap kedua akan diberikan ke Gudang Bahan Baku yang selanjutnya akan dicek oleh Gudang Bahan Baku. 14. Setelah barang selesai diproduksi, Divisi Produksi akan membuat surat penyerahan barang jadi sebanyak dua rangkap. 15. Rangkap pertama surat penyerahan barang jadi akan disimpan sebagai arsip, sedangkan rangkap kedua akan diberikan kepada Gudang Barang Jadi beserta dengan barang jadi, kemudian Gudang Barang Jadi akan menambahkan stok barang jadi pada buku stok barang jadi sesuai dengan surat penyerahan barang jadi tersebut. 16. Apabila jumlah barang jadi yang diproduksi sudah cukup untuk melakukan proses pemasangan, maka Divisi Produksi akan membuat laporan barang jadi sebanyak dua rangkap. 17. Rangkap pertama laporan barang jadi akan disimpan oleh Divisi Produksi sebagai arsip, sedangkan rangkap kedua akan diberikan ke Divisi Pemasaran sebagai pemberitahuan barang jadi sudah selesai diproduksi dan siap dikirimkan kepada pelanggan.

18 58 3. FlowchartProses Pembelian dan Persediaan Bahan Baku Gambar 3.4Flowchart Proses Pembelian dan Persediaan Bahan Baku

19 59 Berikut merupakan tahapan-tahapan dalam menjalankan proses pembelian dan persediaan bahan baku: 1. Gudang Bahan Baku akan menerima surat pengambilan bahan baku yang diberikan oleh Divisi Produksi. Berdasarkan surat pengambilan bahan baku tersebut, Gudang Bahan Baku akan melakukan pengurangan stok bahan baku pada buku stok bahan baku. 2. Gudang Bahan Baku akan melakukan pengecekan stok bahan baku setiap kali melakukan pengurangan stok. Pengecekan stok dilakukan berdasarkan buku stok bahan baku. 3. Apabila stok bahan baku berada di bawah batas minimal, maka Gudang Bahan Baku akan mengajukan surat pengajuan pembelian barang sebanyak dua rangkap. Rangkap pertama akan disimpan oleh Gudang Bahan Baku dan rangkap kedua akan diberikan ke Divisi Pembelian. 4. Berdasarkan surat pengajuan pembelian barang yang diajukan oleh Gudang Bahan Baku, Divisi Pembelian akan membuat PO pembelian sebanyak empat rangkap. 5. Rangkap PO pertama akan disimpan oleh Divisi Pembelian sebagai arsip. 6. Rangkap PO kedua akan diberikan kepada Gudang Bahan Baku untuk mengecek barang yang akan diterima dari pemasok. 7. Rangkap PO ketiga akan diberikan ke Divisi Keuangan yang digunakan sebagai arsip untuk melakukan pembayaran. 8. Rangkap PO keempat akan diberikan ke pemasok. Pemasok akan memenuhi PO yang diterima, kemudian mengantarkan barang dan memberikan surat jalan ke Gudang Bahan Baku. 9. Gudang Bahan Baku akan mengecek barang yang dikirimkan pemasok. Apabila barang tidak sesuai dengan PO pembelian, maka Gudang Bahan Baku akan membuat surat pengajuan retur yang diberikan pada Divisi Pembelian. 10. Selanjutnya Divisi Pembelian akan membuat faktur retur pembelian sesuai dengan surat pengajuan retur yang diterima sebanyak dua rangkap.

20 Rangkap pertama faktur retur pembelian akan disimpan oleh Divisi Pembelian sebagai arsip dan rangkap kedua faktur retur pembelian akan berikan ke pemasok beserta bahan baku yang tidak sesuai. Kemudian pemasok akan kembali memenuhi PO pembelian sebelumnya. 12. Apabila barang sesuai dengan PO pembelian, maka Gudang Bahan Baku akan melakukan penambahan stok bahan baku pada buku stok bahan baku dan membuat laporan penerimaan barang sebanyak dua rangkap. 13. Rangkap pertama laporan penerimaan barang disimpan oleh Gudang Bahan Baku sebagai arsip. 14. Rangkap kedua laporan penerimaan barang akan diberikan ke Divisi Keuangan yang digunakan untuk melakukan pembayaran sesuai dengan PO yang diberikan sebelumnya. 15. Beberapa minggu setelah pengiriman bahan baku, pihak pemasok akan memberikan faktur pembelian ke Divisi Keuangan untuk menagih pembayaran yang harus dilakukan oleh Divisi Keuangan. Divisi Keuangan keuangan akan memeriksa faktur pembelian tersebut dengan PO pembelian dan laporan penerimaan barang yang diterima sebelumnya. Pembayaran akan dilakukan jika faktur pembelian tersebut cocok dengan laporan penerimaan barang dan PO pembelian.

21 61 4. Flowchart Pengiriman dan Pemasangan Gambar 3.5Flowchart Proses Pengiriman dan Pemasangan

22 62 Berikut merupakan tahapan-tahapan dalam menjalankan proses pengiriman dan pemasangan: 1. Divisi Pemasaran akan melihat Jadwal pemasangan untuk memperoleh informasi mengenai nama proyek dan tanggal pemasangan di lokasi pelanggan. 2. Selanjutnya, Divisi Pemasaran akan mengecek ketersediaan barang jadi melalui laporan barang jadi untuk proyek yang batas akhir pemasangan sisa sehari. 3. Apabila barang jadi yang diperlukan untuk pemasangan tidak tersedia, maka Divisi Pemasaran akan melakukan pengunduran jadwal pemasangan sesuai dengan kondisi dari Divisi Produksi. 4. Apabila barang jadi yang diperlukan untuk pemasangan sudah tersedia, maka Divisi Pemasaran akan menghubungi pelanggan untuk mengkonfirmasi pengiriman barang jadi ke lokasi pelanggan. 5. Apabila pelanggan belum siap untuk dikirimkan barang, maka Divisi Pemasaran akan mencatat tanggal pemasangan baru yang diajukan oleh pelanggan. Selanjutnya Divisi Pemasaran akan menghubungi ulang pelanggan pada tanggal yang ditentukan. 6. Apabila pelanggan sudah siap untuk dikirimkan barang, maka Divisi Pemasaran akan membuat surat jalan sebanyak tiga rangkap. Surat jalan tersebut berisi data pelanggan yang dituju dan produk jadi yang akan dikirimkan. 7. Rangkap pertama surat jalan akan disimpan oleh Divisi Pemasaran sebagai arsip, sedangkan rangkap kedua dan ketiga surat jalan akan diberikan ke Gudang untuk melakukan pengiriman barang jadi. 8. Gudang Barang Jadi akan mengurangi stok barang jadi pada buku stok barang jadi dan membuat laporan pengeluaran barang jadi sesuai dengan surat jalan yang diberikan oleh Divisi Pemasaran. 9. Gudang Barang Jadi akan mengirimkan barang jadi pada lokasi pelanggan sesuai dengan surat jalan tersebut. 10. Pelanggan akan menerima barang yang dikirim dan menandatangani kedua rangkap surat jalan yang diberikan.

23 Rangkap kedua surat jalan akan disimpan oleh pelanggan sedangkan rangkap ketiga surat jalan akan dikembalikan ke Divisi Pemasaran sebagai bukti bahwa produk sudah diterima oleh pelanggan. 12. Divisi Pemasaran akan membuat surat pemasangan sebanyak dua rangkap. Surat pemasangan tersebut berisi informasi mengenai proyek yang akan diselesaikan. 13. Rangkap pertama surat pemasangan akan disimpan oleh Divisi Pemasaran sebagai arsip sedangkan rangkap kedua surat pemasangan akan diberikan ke Divisi Produksi Bagian Pemasangan untuk memulai pelaksanaan pemasangan. 14. Divisi Pemasaran akan membuat surat penyelesaian pemasangan apabila pemasangan yang dilakukan oleh Divisi Produksi Bagian Pemasangan sudah hampir selesai. Surat penyelesaian pemasangan tersebut dibuat sebanyak dua rangkap. 15. Pada hari terakhir pemasangan, pelanggan akan menerima kedua rangkap surat penyelesaian pemasangan tersebut dan menandatanganinya. 16. Rangkap pertama surat penyelesaian pemasangan akan dikembalikan kepada Divisi Pemasaran sebagai akhir dari kontrak, sedangkan rangkap kedua surat penyelesaian pemasangan akan disimpan oleh pelanggan Analisis Kebutuhan Kebutuhan yang akan dianalisa meliputi kebutuhan informasi, transaksi, keamanan, akses, dan integritas Kebutuhan Informasi Kebutuhan informasi yang diperlukan dalam sistem bisnis pada PT Luxus Indo Prima meliputi:

24 64 Tabel 3.1Kebutuhan Informasi Informasi Isi Pihak yang memerlukan Pengajuan Pemesanan Data-data pemesanan yang diajukan oleh pelanggan meliputi gambar Pemasaran, Produksi (Bagian Estimasi Harga), kusen pintu jendela dan yang pelanggan lainnya Bahan baku Data-data yang berkaitan dengan semua bahan baku yang ada Produksi (Bagian Estimasi Harga), Produksi (Bagian Produksi) Rumus bahan Data tentang rumus-rumus Produksi (Bagian Estimasi baku pembuatan bahan baku Harga) Produksi Data-data bahan baku yang Produksi (Bagian Estimasi diperlukan dalam sebuah produksi Harga),Pemasaran termasuk harga bahan baku Kontrak Data-data yang berkaitan dengan Pemasaran, pelanggan kontrak proyek kusen pintu jendela dengan pelanggan Pemesanan Data-data yang berkaitan dengan pemesanan pelanggan Produksi (Bagian Produksi), Pemasaran, pelanggan Pembayaran Data-data yang berkaitan dengan Keuangan, pelanggan, pemesanan pembayaran yang dilakukan Pemasaran pelanggan Rancangan Rancangan detil yang dibuat oleh Pemasaran, Produksi kusen pintu bagian estimasi harga sesuai gambar (Bagian Estimasi Harga), jendela model yang diajukan oleh pelanggan pelanggan Target produksi Jadwal yang berisi tanggal-tanggal pemasangan dan pengiriman Produksi (Bagian Produksi dan Pemasangan), Pemasaran Tugas produksi Data-data tentang tugas yang harus dikerjakan oleh bagian produksi Produksi(Bagian Produksi)

25 65 Informasi Isi Pihak yang Memerlukan Pengambilan Data-data tentang jumlah Gudang bahan baku, bahan baku pengambilan bahan baku yang Produksi (bagian produksi) digunakan untuk produksi Barang jadi Data-data tentang informasi barang jadi yang sudah diproduksi seperti nama barang jadi,tanggal selesai Produksi(bagian produksi), Pemasaran, Gudang barang jadi produksi, dan yang lainnya Pengajuan pembelian Data-data tentang bahan baku yang ingin beli Produksi(bagian produksi), Pembelian barang Pembelian Data-data yang berkaitan dengan pembelian bahan baku ke pemasok Produksi(bagian produksi), Pembelian, Keuangan Pembayaran Data-data yang berkaitan dengan Keuangan pembelian pembayaran yang dilakukan perusahaan ke pemasok Retur Data-data yang berkaitan dengan Pembelian, Gudang Bahan pembelian pengembalian bahan baku ke Baku bahan baku pemasok Pemasok Data-data yang berkaitan dengan Pembelian, Keuangan pemasok Pelanggan Data-data yang berkaitan dengan Pemasaran pelanggan Pengiriman Data-data yang berkaitan dengan pengiriman barang jadi ke lokasi Pemasaran, Gudang barang jadi, pelanggan pelanggan Pemasangan Data-data yang berkaitan dengan pemasangan barang jadi di lokasi pelanggan Pemasarang, Produksi (Bagian Produksi), pelanggan Karyawan Data-data yang berkaitan dengan karyawan Produksi (Bagian Produksi), Pemasaran

26 Kebutuhan Transaksi Untuk mendukung proses bisnis agar dapat berjalan dengan efektif dan efisien, perusahaan membutuhkan transaksi-transaksi sebagai berikut: 1. Memasukkan dan mengubah data pengajuan pemesanan 2. Memasukkan dan mengubah data pelanggan 3. Memasukkan dan mengubah data rumus bahan baku 4. Memasukkan dan mengubah data produksi 5. Memasukkan dan mengubah data kontrak 6. Memasukkan dan mengubah data rancangan kusen pintu jendela 7. Memasukkan dan mengubah data pemesanan 8. Memasukkan dan mengubah data target produksi 9. Memasukkan dan mengubah data tugas produksi 10. Memasukkan dan mengubah data pengambilan bahan baku 11. Memasukkan dan mengubah data barang jadi 12. Memasukkan dan mengubah data bahan baku 13. Memasukkan dan mengubah data pemasok 14. Memasukkan dan mengubah data pengajuan pembelian 15. Memasukkan dan mengubah data pembelian 16. Memasukkan dan mengubah data retur pembelian 17. Memasukkan dan mengubah data pengiriman 18. Memasukkan dan mengubah data pemasangan 19. Memasukkan dan mengubah data karyawan 20. Memasukkan dan mengubah data pembayaran pemesanan 21. Memasukkan dan mengubah data pembayaran pembelian 22. Menampilkan pengajuan pemesanan berdasarkan identitas pelanggan. 23. Menampilkan data bahan baku berdasarkan rumus bahan baku 24. Menampilkan data produksi berdasarkan nomor pengajuan pemesanan 25. Menampilkan rancangan kusen pintu jendela berdasarkan nomor pengajuan pemesanan 26. Menampilkan kontrak sesuai dengan identitas pelanggan dan pemesanan yang diajukan 27. Menampilkan pemesanan yang dibuat oleh karyawan 28. Menampilkan target produksi berdasarkan nomor pengajuan pemesanan

27 Menampilkan data tugas produksi dan nama karyawan yang terlibat didalamnya 30. Menampilkan data pengambilan bahan baku berdasarkan nama karyawan 31. Menampilkan data barang jadi berdasarkan kode produksi 32. Menampilkan data pembelian berdasarkan nomor pengajuan pembelian 33. Menampilkan data retur pembelian berdasarkan nomor pembelian 34. Menampilkan data pengiriman berdasarkan nomor pengajuan pemesanan 35. Menampilkan data pemasangan berdasarkan nomor pengajuan pemesanan 36. Menampilkan detil pengajuan pemesanan yang dibuat berdasarkan data karyawan 37. Menampilkan kontrak yang diurus oleh karyawan 38. Menampilkan data pengajuan pembelian yang diajukan oleh karyawan 39. Menampilkan data pembelian yang dibuat oleh karyawan 40. Menampilkan data retur pembelian yang diurus oleh karyawan 41. Menampilkan data pengiriman dan karyawan yang terlibat di dalamnya 42. Menampilkan data pemasangan yang dilakukan oleh karyawan 43. Menampilkan data barang jadi yang dikirim 44. Menampilkan rumus yang digunakan untuk produksi 45. Menampilkan tugas produksi sesuai nomor produksi 46. Menampilkan bahan baku yang dibeli melalui pembelian 47. Menampilkan pembelian berdasarkan nama pemasok 48. Menampilkan daftar bahan baku dalam pengajuan pembelian 49. Menampilkan daftar bahan baku dalam retur pembelian 50. Menampilkan daftar bahan baku dalam pengambilan bahan baku 51. Menampilkan data pembayaran pemesanan berdasarkan nama karyawan yang mengurusnya dan nomor pemesanan 52. Menampilkan data pembayaran pembelian berdasarkan nama karyawan yang mengurusnya dan nomor pembelian

28 Kebutuhan Keamanan Data merupakan salah satu yang terpenting dalam sebuah sistem informasi. Oleh karena itu, dalam merancang dan membuat aplikasi basis data, ada beberapa hal yang diperhatikan dalam menjaga kemanan data, yaitu: 1. Untuk mengakses basis data diperlukan password agar pihak yang berwenang saja yang dapat mengakses basis data tersebut 2. Setiap karyawan diberikan hak akses aplikasi sesuai dengan tugas dan wewenang yang dimilikinya Kebutuhan Akes Aplikasi basis data yang dirancang memungkinkan pengaksesan kebutuhan data yang lebih cepat bagi PT Luxus Indo Prima. Pengaksesan kebutuhan data yang tersebut meliputi, laporan-laporan yang dibutuhkan oleh Direktur dan Wakil Direktur, status pemesanan pelanggan oleh Divisi Pemasaran, pengajuan pembelian bahan baku oleh Divisi Pembelian, dan yang lainnya Kebutuhan Integritas Integritas data setiap divisi yang terlibat dalam proses pemesanan, produksi, persediaan dan pembelian bahan baku, pengiriman dan pemasangan sangat diperlukan. Integrasi data tersebut meliputi: 1. Integrasi data antara Divisi Pemasaran dan Produksi sehingga Divisi pemasaran dapat mengetahui status produksi yang berlangsung dan informasi lainnya dalam prose pemesanan. 2. Integrasi data antara Divisi Pembelian dan Gudang Bahan Baku sehingga Divisi Pembelian dapat mengetahui daftar bahan baku yang perlu dibeli dan informasi lainnya dalam proses persediaan dan pembelian. 3. Integrasi data antara Divisi Produksi, Pemasaran, Gudang Barang Jadi, sehingga Divisi Pemasaran dapat mengetahui status barang yang sudah selesai diproduksi dan informasi lainnya dalam proses pengiriman dan pemasangan kusen pintu jendela. 4. Integrasi data antara Divisi Produksi dan Gudang Bahan Baku sehingga Gudang Bahan Baku dapat mengetahui bahan baku yang

29 69 diambil oleh Divisi Produksi dalam memproduksi barang jadi dan informasi lainnya dalam proses produksi. 5. Integrasi setiap divisi dalam proses pemesanan hingga pemasangan, sehingga Direktur dan Wakil Direktur dapat memperoleh laporanlaporan yang diperlukan dengan mudah dan cepat Identifikasi Masalah Identifikasi masalah untuk sistem manual yang sedang berjalan pada PT Luxus Indo Prima dilakukan dengan dua cara, yaitu wawancara dan observasi. Berikut akan disampaikan masalah yang diperoleh dari hasil mengidentfikasi Wawancara Tujuan dari wawancara yaitu memahami sistem manual yang berjalan secara lebih detil dan menemukan masalah yang terjadi pada sistem manual tersebut. Wawancara dilakukan dengan Wakil Direktur dan beberapa karyawan PT Luxus Indo Prima. Beberapa masalah yang ditemukan ketika melakukan wawancara, yaitu: 1. Setiap transaksi bisnis yang dilakukan memakan waktu yang lebih lama karena memerlukan tatap muka antar divisi yang terlibat 2. Perhitungan rumus bahan baku dengan MicrosoftExcel memerlukan waktu yang lebih banyak 3. Terjadi pemborosan kertas karena sebagian besar data perlu dicetak dalam bentuk kertas 4. Resiko terjadinya kehilangan data karena data-data yang disimpan dalam kertas atau buku 5. Sulit untuk membuat laporan dari setiap divisi karena data-data dari kertas harus dikumpulkan terlebih dahulu Observasi Tujuan dari observasi yaitu melihat secara langsung sistem manual yang berjalan dan menemukan masalah yang belum diidentifikasikan sebelumnya. Observasi dilakukan dengan mengunjungi kantor dan pabrik produksi PT Luxus Indo Prima secara langsung. Pihak yang terlibat dalam

30 70 observasi yaitu Divisi Pemasaran, Produksi yang meliputi Bagian Pembuatan dan Estimasi Harga, serta Bagian Gudang. Beberapa masalah ditemukan setelah meninjau perusahaan secara langsung, yaitu: 1. Banyak tumpukan kertas ditemukan pada meja-meja karyawan 2. Data-data bahan baku dan rumus perhitungan yang disimpan dalam Microsoft Excel mengakibatkan kesulitan dalam memanipulasi data 3. Sebagian data dicatat dalam kertas seperti pengambilan dan pengajuan pembelian bahan baku 4. Sebagian data dicetak dalam kertas seperti jadwal target produksi dan rancangan kusen Kesimpulan Masalah Kesimpulan masalah yang diperoleh dari hasil wawancara dan observasi terhadap sistem yang berjalan saat ini pada PT Luxus Indo Prima yaitu: 1. Proses bisnis PT Luxus Indo Prima memerlukan waktu yang lebih banyak karena sistem manual yang berjalan mengakibatkan setiap divisi harus bertatapan muka untuk melakukan setiap transaksi 2. Perhitungan bahan baku yang masih menggunakan Microsoft Excel mengakibatkan kerumitan dalam menghitung sehingga menghabiskan waktu yang lama, apalagi dalam menghadapi proyek yang berskala besar 3. Jumlah transaksi yang banyak mengakibatkan penggunaan kertas yang banyak sehingga menimbulkan berbagai masalah, seperti pemborosan kertas, kesulitan dalam penyimpanan berkas, dan resiko kehilangan data 4. Data-data yang disimpan dalam kertas dan buku mengakibatkan pembuatan laporan yang sulit dari berbagai divisi sehingga laporan diberikan secara tidak rutin kepada Direktur dan Wakil Direktur Usulan Pemecahan Masalah Dalam mengatasi masalah yang dihadapi, akan dirancang sebuah aplikasi basis data pemesanan, produksi, persedian, dan pembelian bahan baku

31 71 serta pengiriman dan pemasangan yang diharapkan dapat memudahkan prosesproses yang berjalan di PT Luxus Indo Prima. Pemecahan masalah yang diusulkan pada PT Luxus Indo Prima untuk mengatasi masalah masalah yang dihadapi antara lain: 1. Membuat sebuah basis data yang digunakan untuk menyimpan datadata yang diperlukan dalam mendukung proses pemesanan, produksi, persedian, dan pembelian bahan baku, serta pengiriman dan pemasangan barang jadi. 2. Membangun sebuah aplikasi berbasis web yang digunakan untuk mengakses data-data terkait proses pemesanan, produksi, persedian, dan pembelian bahan baku, serta pengiriman dan pemasangan barang jadi sehingga mempermudah karyawan dalam melaksanakan tugasnya. 3. Membangun sebuah aplikasi berbasis web yang dapat menghasilkan surat-surat seperti PO pemesanan, PO pembelian, laporan persediaan barang, laporan produksi, laporan pemesanan, laporan pembelian, serta laporan pemasangan dengan format yang konsisten. Penjelasan detil mengenai cara kerja aplikasi basis data agar dapat mengatasi masalah-masalah pada PT Luxus Indo Prima akan disampaikan dengan flowchart beserta deskripsinya.

32 72 Gambar 3.6Flowchart Proses Pemesanan dengan menggunakan Basis Data

33 73 Berikut merupakan usulan tahapan-tahapan dalam menjalankan proses pemesanan melalui aplikasi basis data: 1. Divisi Pemasaran akan menyimpan data pemesanan yang diajukan oleh pelanggan ke dalam tabel pengajuan pemesanan. 2. Setelah melihat data pengajuan pemesanan, Divisi Produksi akan menggunakan atau membuat rumus baru berdasarkan tabel rumus bahan baku yang ada pada basis data untuk menghitung jumlah bahan baku dan estimasi harga untuk menjalankan produksi. Hasil tersebut akan disimpan dalam tabel produksi. 3. Divisi Pemasaran akan membuat surat penawaran harga berdasarkan tabel produksi dan disimpan dalam tabel kontrak. 4. Surat penawaran harga tersebut akan dicetak sebanyak dua rangkap dan diberikan kepada pelanggan untuk dipertimbangkan 5. Apabila pelanggan tidak menyetujui isi kontrak, maka pelanggan dapat melakukan negosiasi dengan Divisi Pemasaran dan menghasilkan surat penawaran harga yang baru. 6. Apabila pelanggan setuju dengan surat penawaran yang diberikan, maka pelanggan akan menandatangani kedua surat penawaran harga. Rangkap pertama akan disimpan oleh pelanggan dan rangkap kedua akan dikembalikan kepada Divisi Pemasaran. 7. Setelah surat penawaran harga ditandatangani, Divisi Pemasaran akan membuat PO dan menyimpan data PO tersebut ke dalam tabel pemesanan. 8. Selanjutnya PO akan dicetak sebanyak dua rangkap, rangkap pertama akan disimpan sebagai arsip dan rangkap kedua akan dikirimkan kepada pelanggan. 9. Divisi Pemasaran akan membuat jadwal target pemasangan dan pengiriman, kemudian disimpan dalam tabel jadwal yang akan diakses oleh Divisi Produksi untuk melihat jadwal tersebut. 10. Setelah menerima PO, pelanggan akan melakukan pembayaran pada Divisi Keuangan. Divisi Keuangan akan menyimpan data pembayaran tersebut dan mencetak bukti pembayaran untuk pelanggan.

34 74 Gambar 3.7Flowchart Proses Produksi dengan menggunakan Basis Data

35 75 Berikut merupakan usulan tahapan-tahapan dalam menjalankan proses produksi melalui aplikasi basis data: 1. Divisi Produksi akan mengakses tabel pemesanan dan jadwal untuk melihat PO dan jadwal. 2. Setelah itu, Divisi Produksi akan mebuat rancangan detil kusen berdasarkan data pemesanan yang diterima. Rancangan kusen akan disimpan ke dalam tabel rancangan kusen. 3. Divisi Pemasaran akan melihat rancangan kusen dari tabel rancangan kusen, kemudian membuat surat persetujuan rancangan sebanyak dua rangkap dan diberikan kepada pelanggan. 4. Pelanggan akan membaca surat persetujuan rancangan. Apabila pelanggan tidak setuju dengan rancangan yang diberikan, maka Divisi Produksi akan menghasilkan rancangan yang baru hingga diterima oleh pelanggan. 5. Jika pelanggan menyetujui dan menandatangani kedua rangkap surat persetujuan rancangan tersebut. Maka rangkap pertama akan disimpan oleh pelanggan dan rangkap kedua diberikan kepada Divisi Pemasaran. 6. Divisi Produksi akan membuat daftar pembagian tugas produksi dan daftar tersebut disimpan dalam tabel tugas produksi. 7. Divisi Produksi akan mengambil jumlah bahan baku yang diperlukan untuk memproduksi, kemudian menambahkan jumlah data pengambilan pada tabel pengambilan bahan baku. 8. Setelah produk jadi selesai dikerjakan, maka akan disimpan dalam gudang barang jadi dan menambahkan data barang jadi pada tabel barang jadi.

36 76 Gambar 3.8Flowchart Proses Persediaan dan Pembelian Bahan Baku dengan menggunakan Basis Data

37 77 Berikut merupakan usulan tahapan-tahapan dalam menjalankan proses persediaan dan pembelian bahan baku melalui aplikasi basis data: 1. Berdasarkan data pengambilan bahan baku pada basis data, Bagian Gudang akan mengurangi jumlah stok bahan baku pada tabel bahan baku sesuai jumlah yang diambil. 2. Jika terdapat bahan baku yang jumlahnya berada di bawah batas minimal, maka Bagian Gudang akan membuat pengajuan pembelian bahan baku yang disimpan pada tabel pengajuan pembelian. 3. Divisi Pembelian akan melihat tabel pengajuan pembelian mengenai bahan baku yang diajukan dari Bagian Gudang. 4. Divisi Pembelian akan membuat pembelian sesuai dengan jumlah dan tipe yang diajukan. Data pembelian tersebut akan disimpan pada tabel pembelian. 5. Selanjutnya Divisi Pembelian akan mencetak PO pembelian dan memberikannya kepada pemasok. Pemasok akan memenuhi permintaan PO pembelian dan kemudian mengirimkan barang yang diminta beserta surat jalan. 6. Bagian Gudang akan menerima barang dari pemasok dan mengecek apakah barang yang diterima sudah sesuai dengan data pembelian atau belum. 7. Apabila bahan baku yang diterima sudah sesuai, maka stok bahan baku pada tabel bahan baku akan ditambah dan status pembelian pada tabel pembelian akan diubah menjadi Diterima. 8. Apabila bahan baku yang diterima tidak sesuai, maka Bagian Gudang akan membuat retur pembelian dan disimpan dalam tabel retur pembelian. 9. Setelah itu, Divisi Pembelian akan mencetak retur pembelian dan dikirimkan kepada pemasok agar dapat dipenuhi lagi. 10. Setelah pengiriman bahan baku, pihak pemasok akan memberikan faktur pembelian kepada Divisi Keuangan untuk menagih. Divisi Keuangan akan memeriksa faktur pembelian tersebut dengan data pembelian dan status penerimaan yang ada pada tabel pembelian.

38 78 Pembayaran akan dilakukan jika faktur pembelian tersebut sudah sesuai dengan data yang ada pada tabel pembelian. Gambar 3.9Flowchart Proses Pengiriman dan Pemasangan dengan menggunakan Basis Data

39 79 Berikut merupakan usulan tahapan-tahapan dalam menjalankan proses pengiriman dan pemasangan melalui aplikasi basis data: Berikut merupakan tahapan-tahapan dalam menjalankan proses pengiriman dan pemasangan melalui aplikasi basis data: 1. Divisi Pemasaran akan melihat jadwal pemasangan, pengiriman dan barang jadi yang berkaitan dengan pemesanan pada basis data. 2. Apabila tanggal pemesanan sudah tiba dan barang jadi sudah tersedia, maka Divisi Pemasaran akan menghubungi pelanggan mengenai kepastian pengiriman dan pemasangan. 3. Apabila barang jadi belum tersedia dan pelanggan menginginkan penundaan jadwal, maka Divisi Pemasaran akan mengundur jadwal pengiriman dan pemasangan dengan mengubah tanggal pada tabel jadwal. 4. Apabila pelanggan sudah setuju dengan tanggal pengiriman dan pemasangan, maka Divisi Pemasaran akan membuat data pengiriman untuk Bagian Gudang. 5. Selanjutnya, Bagian Gudang akan mencetak surat jalan sebanyak dua rangkap, mengirimkan barang jadi, dan mengurangi barang jadi pada tabel barang jadi. 6. Setelah menerima barang jadi yang dikirim, pelanggan akan menandatangani surat jalan tersebut. Rangkap pertama akan disimpan oleh pelanggan, kemudian rangkap kedua akan diberikan pada Divisi Pemasaran. 7. Divisi Pemasaran akan membuat data pemasangan pada tabel pemasangan setelah menerima surat jalan yang ditandatangani. 8. Divisi Produksi akan mencetak surat pemasangan berdasarkan data pemasangan pada tabel pemasangan, melakukan pemasangan, dan mengubah status pemasangan. 9. Jika status pemasangan berada pada kondisi tahap akhir, maka Divisi Produksi akan mencetak surat penyelesaian pemasangan sebanyak dua rangkap dan diberikan kepada pelanggan. 10. Pelanggan akan menandatangani surat tersebut. Rangkap pertama akan disimpan oleh pelanggan, sedangkan rangkap kedua akan dikembalikan kepada Divisi Pemasaran.

40 Perancangan Basis Data BerdasarkanDatabase System Development Lifecycle, terdapat tiga tahapan dalam melakukan perancangan basis data, yaitu: 1. Perancangan Basis Data Konseptual 2. Perancangan Basis Data Logikal 3. Perancangan Basis Data Fisikal Perancangan Basis Data Konseptual Perancangan basis data konseptual yaitu proses membangun sebuah model data konseptual dari kebutuhan data perusahaan. Hal-hal yang perlu dilakukan dalam tahap ini yaitu membangun model data konseptual yang meliputi langkah-langkah: 1. Mengidentifikasi tipe entitas 2. Mengidentifikasi tipe relationship 3. Mengidentifikasi dan mengasosiasikan atribut dengan tipe entitas atau relationship 4. Menentukan domain atribut 5. Menentukan atribut dari candidate key dan primary key 6. Mempertimbangkan penggunaan dari enhanced modeling concept 7. Memeriksa redudansi dari model 8. Memvalidasikan model konseptual lokal terhadap transaksi pengguna 9. Meninjau kembali model konseptual data lokal terhadap kebutuhan pengguna Mengidentifikasi Tipe-TipeEntity Tujuannya untuk mengidentifikasi tipe entitas yang diperlukan. Setelah menganalisa sistem yang berjalan pada PT Luxus Indo Prima, berikut adalah tipe-tipe entias yang ditemukan:

41 81 Tabel 3.2Tipe Entitas Tipe Entitas Deskripsi Alias Occurance Pengajuan Semua detil pengajuan Pemesanan Setiap pengajuan pemesanan Pemesanan pemesanan yang dilakukan Awal yang dilakukan pelanggan oleh pelanggan ke PT dapat dilihat oleh Divisi Luxus Indo Prima Pemasaran dan Produksi BahanBaku Jenis-jenis dan jumlah Setiap bahan baku yang bahan baku yang dimiliki digunakan dalam proses oleh perusahaan produksi kusen pintu jendela RumusBahan Rumus-rumus bahan baku Baku untuk produksi yang dimiliki oleh perusahaan Produksi Semua detil produksi yang dilakukan oleh perusahaan Kontrak Detil perjanjian antara pelanggan dan perusahaan Pemesanan Semua detil barang yang akan dibeli oleh pelanggan sesuai dengan pengajuan pemesanan pelanggan Formula Setiap rumus bahan baku BahanBaku yang digunakan untuk menentukan bahan baku yang digunakan dalam proses produksi kusen pintu jendela Produksi Produksi yang dilakukan akan menambah jumlah barang jadi Surat Perjanjian Setiap kontrak menentukan kelanjutan dari proses produksi Faktur Setiap PO pemesanan dibuat Pemesanan berdasarkan pemesanan yang dilakukan pelanggan dan menandakan kontrak sudah disetujui oleh pelanggan Pembayaran Semua detil pembayaran Setiap pembayaran pemesanan yang dilakukan oleh pemesanan yang dilakukan pelanggan ke perusahaan oleh pelanggan sesuai dengan pemesanan yang ada

42 82 Tipe Entitas Deskripsi Alias Occurance Rancangan Rancangan detil dari kusen Rancangan Setiap rancangan kusen Kusen pintu jendela yang akan dibuat oleh perusahaan Kusen pintu jendela yang dibuat oleh Divisi Produksi sesuai dengan gambar yang diberikan oleh pelanggan Target Detil tanggal pemasangan Jadwal Setiap jadwal pemasangan Produksi dan pengiriman dari kusen dibuat oleh Divisi pintu jendela yang sudah Pemasaran dan dilihat oleh selesai diproduksi Divisi Produksi untuk menentukan target produksi sehingga pemasangan dan pengiriman barang dapat dilakukan tepat pada waktunya Tugas Detil pembagian tugas Jadwal Setiap pembagian tugas Produksi yang dibuat untuk Produksi akan dilihat oleh karyawan mencapai target produksi Divisi Produksi Pengambilan Detil pengambilan bahan Setiap pengambilan bahan BahanBaku baku yang digunakan baku akan mengurangi stok untuk proses produksi bahan baku di gudang barang jadi BarangJadi Detil barang jadi yang sudah diproduksi Setiap barang jadi yang diproduksi oleh perusahaan Pengajuan Detil pengajuan bahan Pengajuan Setiap pengajuan pembelian Pembelian baku yang ingin dibeli oleh perusahaan Pembelian dibuat oleh Bagian Gudang bahan baku untuk dilihat oleh divisi pembelian Pembelian Detil pembelian bahan Faktur Setiap PO pembelian akan baku yang dilakukan oleh Pembelian menambah jumlah bahan perusahaan ke pemasok baku gudang Karyawan Karyawan yang bekerja Pegawai Karyawan yang bekerja pada PT Luxus Indo Prima pada PT Luxus Indo Prima

43 83 Tipe Entitas Deskripsi Alias Occurance Pembayaran Detil pembayaran yang Setiap pembayaran Pembelian dilakukan oleh perusahaan ke pemasok pembelian akan mengubah status pembelian menjadi lunas Retur Detill pengembalian bahan Retur Perusahaan akan Pembelian baku yang dibeli oleh Pembelian mengembalikan bahan baku perusahaan ke pemasok yang tidak sesuai dengan pemesanan yang dilakukan Pemasok Pemasok yang Supplier Setiap pemasok yang menyediakan bahan baku menjadi rekan PT Luxus untuk PT Luxus Indo Indo Prima dalam Prima menyediakan bahan baku Pelanggan Organisasi atau individu yang memesan atau membeli produk yang ditawarkan oleh PT Luxus Indo Prima Customer Setiap pelanggan yang melakukan pemesanan dan pelanggan bisa membatalkan pemesanan sebelum Pengiriman Detil pengiriman barang Delivery Setiap pengiriman barang jadi yang dilakukan jadi yang dilakukan oleh perusahaan ke pelanggan karyawan akan mengubah status barang jadi Pemasangan Detil pemasangan kusen Instalasi Setiap pemasangan pintu jendela yang dilakukan karyawan akan dilakukan perusahaan di lokasi pelanggan mengubah status pemesanan pelanggan

44 Mengidentifikasi Tipe-TipeRelationship Tujuannya untukmengidentifikasi hubungan-hubungan penting yang ada antaratipe-tipe entitas. Berikut merupakan hasil identifikasi tipe relationship setiap tipe entitas: Tabel 3.3Tipe Relationship Entity Name Multiplicity Relationship Entity Name Multiplicity Pelanggan 1..1 Memesan PengajuanPemesanan 1..* 1..1 Menandatangani Kontrak 1..* Karyawan 1..1 Melayani PengajuanPemesanan 0..* 1..1 Mengurus Kontrak 0..* 1..1 Membuat Pemesanan 0..* 1..* Melaksanakan TugasProduksi 0..* 1..1 Melakukan PengambilanBahan 0..* Baku 1..1 Mengajukan PengajuanPembelian 0..* 1..1 Membuat Pembelian 0..* 1..1 Mengurus ReturPembelian 0..* 1..1 Melakukan Pengiriman 0..* 1..* Menjalankan Pemasangan 0..* 1..1 Mengurus Pembayaran 0..* Pembelian 1..1 Mengurus Pembayaran 0..* Pemesanan Pengajuan 1..1 Mempunyai Kontrak 1..* Pemesanan 1..1 Memiliki TargetProduksi 0..* 1..1 Mengakibatkan Pemesanan Memproduksi Produksi 1..* 1..1 Menghasilkan RancanganKusen 1..* 1..1 Memiliki Pengiriman 0..* 1..1 Memiliki Pemasangan 0..* Pengiriman 1..1 Mengirim BarangJadi 1..* 1..* Menuju Pelanggan 1..1 Rumus 1..1 Menghasilkan Produksi 1..* Bahan Baku 1..* Menghitung BahanBaku 1..* Pemasangan 1..* Memasang Pelanggan 1..1 Produksi 1..1 Membagi TugasProduksi 1..* 1..1 Menghasilkan BarangJadi 1..1

45 85 Entity Name Multiplicity Relationship Entity Name Multiplicity Pembelian 1..1 Menimbulkan Retur Pembelian * Menambah BahanBaku 1..* 1..1 Memiliki Pembayaran 1..* Pembelian Pemasok 1..1 Memenuhi Pembelian 1..* Pemesanan 1..1 Memiliki Pembayaran 1..* Pemesanan Pengajuan 1..* Mengajukan BahanBaku 1..* Pembelian 1..1 Menyebabkan Pembelian 1..* Retur 1..* Mengembalikan BahanBaku 1..* Pembelian Pengambilan 1..* Mengurangi BahanBaku 1..* BahanBaku Rumus 1..1 Menghasilkan Produksi 1..* Bahan Baku 1..* Menghitung BahanBaku 1..* Pemasangan 1..* Memasang Pelanggan 1..1 Produksi 1..1 Membagi TugasProduksi 1..* 1..1 Menghasilkan BarangJadi 1..1

46 86 Gambar 3.10ERD Setelah Bab

47 TipeEntity atau Relationship Tujuannyauntukmenghubungkan atribut-atribut dengan tipe entitas atau relationship. Berikut adalah atribut-atribut yang diidentifikasikan untu setiap entitas: 1. PengajuanPemesanan Atribut Tabel 3.4Atribut-Atribut PengajuanPemesanan Deskripsi Tipe dan Panjang Data Nulls KdPengPemesanan Kode dari pengajuan pemesanan Char 7 No No TglPengPemesanan Tanggal pengajuan pemesanan Datetime No No GmbPengPemesanan Image path Gambar yang dipesan Varchar 30 No No StatusPengPemesanan Status dari pengajuan pemesanan Char 1 No No NamaProyek Nama dari proyek pemesanan Varchar 40 No No AlamatPemesanan Alamat pemesanan Varchar 100 No No KotaPemesanan Kota pemesanan Varchar 20 No No KecPemesanan Kecamatan pemasok Varchar 20 Yes No KelPemesanan Kelurahan pemasok Varchar 20 Yes No KdPosPemesanan Kode pos pemasok Char 5 No No Mengidentifikasi dan Mengasosiasikan Atribut-Atribut dengan Tipe- Multivalued 87

48 88 2. BahanBaku Atribut Tabel 3.5Atribut-Atribut BahanBaku Deskripsi Tipe dan Panjang Data Nulls KdBahanBaku Kode dari bahan baku Char 5 No No NamaBahanBaku Nama bahan baku Varchar 40 No No KdTipeBahan Kode dari tipe bahan baku Char 3 No No TipeBahanBaku Tipe dari bahan baku Varchar 20 No No KdSatuanBahan Kode dari satuan bahan baku Char 3 No No SatuanBahanBaku Satuan yang dimiliki bahan baku Varchar 5 No No (cm/mm/pcs) Harga Harga terkini dari bahan baku Integer No No Stok Stok dari bahan baku SmallInteger No No StokMin Stok minimal dari bahan baku SmallInteger No No Multi valued 3. RumusBahanBaku Atribut Tabel 3.6 Atribut Atribut RumusBahanBaku Deskripsi Tipe dan Panjang Data Nulls KdRumus Kode rumus bahan baku Char 5 No No NamaRumus Nama dari rumus Varchar 20 No No SatuanRumus Satuan dari bahan baku Char 1 No No RumusUkuran Rumus menghitung ukuran dari bahan baku Varchar100 No No yang diperlukan Gambar Image path dari gambar kusen pintu jendela Varchar 30 No No Deskripsi Keterangan mengenai rumus Varchar 100 No No Multivalued

49 89 4. Produksi Atribut Tabel 3.7Atribut-Atribut Produksi Tipe dan Deskripsi Panjang Data Nulls KdProduksi Kode dari produksi Char 7 No No NamaBarang Nama barang yang diproduksi Varchar 20 No No TglMulaiProduksi Tanggal mulai produksi Datetime No No StatusProduksi Status dari produksi Char 1 No No JumlahProduksi Jumlah barang yang diproduksi SmallInteger No No UkTinggi Ukuran tinggi produksi Small Integer No No UkLebar Ukuran lebar produksi Small Integer No No HargaProduksi Biaya yang diperlukan untuk produksi Integer No No 5. Kontrak Atribut Tabel 3.8Atribut-Atribut Kontrak Deskripsi Tipe dan Panjang Data Nulls KdKontrak Nomor dari kontrak Char 7 No No Spesifikasi Spesifikasi dari produk yang ditawarkan Varchar 200 No No Keterangan Keterangan kontrak Varchar 200 No No TglKontrak Tanggal dibuatnya kontrak Datetime No No StatusKontrak Status dari kontrak Char 1 No No Diskon Besarnya diskon yang diberikan TinyInteger No No Multivalued Multivalued

50 90 6. Pemesanan 7. PembayaranPemesanan Tabel 3.10Atribut-Atribut PembayaranPemesanan Atribut Deskripsi KdPembPemesanan Kode dari pembayaran pemesanan TglPembPemesanan Tanggal dari pembayaran Jumlah yang Jumlah Bayar dibayarkan untuk pemesanan produk 8. RancanganKusen valued Tabel 3.9Atribut-Atribut Pemesanan Atribut Deskripsi Tipe dan Multivalued Nulls Panjang Data KdPemesanan Nomor faktur dari pemesanan Char 7 No No TglPemesanan Tanggal dibuatnya PO Datetime No No Tipe dan Multivalued Nulls Panjang Data Char 7 No No Datetime No No Integer No No Atribut Tabel 3.11Atribut-Atribut RancanganKusen Deskripsi Tipe dan Panjang Data Nulls KdRancangan Kode rancangan kusen Char 7 No No TglRancangan Tanggal dibuatnya rancangan Datetime No No GmbRancangan Image path dari gambar rancangan Varchar 30 No No StatusRancangan Status dari rancangan Char 1 No No UkLubang Ukuran lubang Varchar 15 No No UkJendela Ukuran jendela Varchar 15 No No Keterangan Keterangan tambahan untuk rancangan Varchar 100 No No Multi-

51 91 9. TargetProduksi Atribut TglPengiriman TglPemasangan Keterangan Tabel 3.12Atribut-Atribut TargetProduksi Deskripsi Tanggal dari pemasangan Tanggal dari pemasangan Keterangan dari pemasangan Tipe dan Panjang Data Nulls Date No No Date No No Varchar 100 No No 10. TugasProduksi Tabel 3.13Atribut-Atribut TugasProduksi Atribut Deskripsi Tipe dan Panjang Data Nulls KdTugas Kode dari pembagian Char 7 No No Keterangan Keterangan tugas secara keseluruhan Varchar 100 No No Deadline Tanggal batas pengerjaan Datetime No No StatusTugas Status pengerjaan Char 1 No No TglMulai Tanggal mulai pengerjaan Datetime No No TglSelesai Tanggal selesai pengerjaan Datetime No No DeskTugas Deskripsi dari setiap tugas yang diberikan Varchar(80) No No Multivalued Multivalued

52 PengambilanBahanBaku Tabel 3.14Atribut-Atribut PengambilanBahanBaku Atribut Deskripsi Tipe dan Panjang Data Nulls KdPengambilan Kode pengambilan bahan baku Char 7 No No TglPengambilan Tanggal pengambilan Datetime No No JumlahAmbil Jumlah bahan baku yang diambil SmallInteger No No 12. BarangJadi Tabel 3.15Atribut-Atribut BarangJadi Atribut Deskripsi Tipe dan Panjang Data Nulls KdBarangJadi Kode dari barang jadi Char 7 No No TglBarangMasuk Tanggal barang masuk Datetime No No StatusBarangJadi Status dari barang jadi Char 1 No No 13. PengajuanPembelian Atribut Tabel 3.16Atribut-Atribut PengajuanPembelian Deskripsi Tipe dan Panjang Data Nulls KdPengajuan Kode pengajuan Char 7 No No TglPengajuan Tanggal pengajuan Datetime No No StatusPengajuan Status dari pengajuan Char 1 No No JumlahAju Jumlah barang yang diajukan SmallInteger No No Multivalued Multivalued Multivalued

53 Pembelian Atribut Tabel 3.17Atribut-Atribut Pembelian Deskripsi Tipe dan Panjang Data Nulls KdPembelian Kode dari pembelian Char 7 No No TglPembelian Tangal pembelian Datetime No No HargaBeli Harga barang yang dibeli Integer No No JumlahBeli Jumlah barang yang dibeli SmallInteger No No TotalPembelian Diperoleh dari HargaBeli * Derived - - JumlahBeli StatusPembelian Status dari pembelian Char 1 No No 15. PembayaranPembelian Tabel 3.18Atribut-Atribut PembayaranPembelian Atribut KdPembPembelian TglPembPembelian JumlahBayar Deskripsi Kode dari pembayaran pembelian Tanggal pembayaran pembelian Jumlah yang dibayarkan untuk pembelian bahan baku Multivalued Tipe dan Multivalued Nulls Panjang Data Char 7 No No Datetime No No Integer No No

54 ReturPembelian Tabel 3.19Atribut-Atribut ReturPembelian Atribut Deskripsi Tipe dan Panjang Data Nulls 17. Pemasok Tabel 3.20Atribut-Atribut Pemasok Atribut Deskripsi Tipe dan Multivalued Nulls Panjang Data KdPem Kode pemasok Char 5 No No NamaPem Nama dari pemasok Varchar 40 No No AlamatPem Alamat dari pemasok Varchar 100 No No KotaPem Kota pemasok Varchar 20 No No KecPem Kecamatan pemasok Varchar 20 Yes No KelPem Kelurahan pemasok Varchar 20 Yes No KdPosPem Kode pos pemasok Char 5 No No Pem dari pemasok Varchar 50 Yes No TelpPem Nomor Telpon pemasok Varchar 15 No Yes FaxPem Nomor fax pemasok Varchar 15 Yes No Multivalued KdReturPemb Nomor retur pembelian Char 7 No No TglRetur Tanggal retur pembelian Datetime No No StatusRetur Status retur Char 1 No No JumlahRetur Jumlah barang yang diretur SmallInteger No No AlasanRetur Alasan retur barang Varchar 50 No No

55 Pelanggan Tabel 3.21Atribut-Atribut Pelanggan Atribut Deskripsi Tipe dan Multivalued Nulls Panjang Data KdPel Kode untuk pelanggan Char 5 No No NamaPel Nama dari pelanggan Varchar 40 No No AlamatPel Alamat dari pelanggan Varchar 100 No No KotaPel Kota pelanggan Varchar 20 No No KecPel Kecamatan pelanggan Varchar 20 Yes No KelPel Kelurahan pelanggan Varchar 20 Yes No KdPosPel Kode pos pelanggan Char 5 No No Pel dari pelanggan Varchar 50 No No TelpPel Nomor Telpon pelanggan Varchar 15 No Yes FaxPel Nomor fax pelanggan Varchar 15 Yes No 19. Pengiriman Tabel 3.22Atribut-Atribut Pengiriman Atribut Deskripsi Tipe dan Multivalued Nulls Panjang Data KdPengiriman Kode dari pengiriman Char 7 No No TglPengiriman Tanggal pengiriman Datetime No No StatusPengiriman Status dari pengiriman Char 1 No No

56 Pemasangan valued Tabel 3.23Atribut-Atribut Pemasangan Atribut Deskripsi Tipe dan Multivalued Nulls Panjang Data KdPemasangan Kode dari pemasangan Char 7 No No TglPemasangan Tanggal pemasangan Datetime No No FotoHasil Image path dari gambar pemasangan Varchar 30 No No StatusPemasangan Status dari pemasangan Char 1 No No 21. Karyawan Atribut Tabel 3.24Atribut-Atribut Karyawan Deskripsi Tipe dan Panjang Data Nulls KdKar Kode karyawan Char 5 No No NamaKar Nama dari karyawan Varchar 40 No No Multi- KdPosisi Kode dari posisi karyawan Char 3 No No PosisiKar Posisi dari karyawan Varchar 40 No No AlamatKar Alamat dari karyawan Varchar 100 No No KotaKar Kota karyawan Varchar 20 No No KecKar Kecamatan karyawan Varchar 20 Yes No KelKar Kelurahan karyawan Varchar 20 Yes No KdPosKar Kode pos karyawan Char 5 No No Kar dari karyawan Varchar 50 No No TelpKar Nomor Telpon karyawan Varchar 15 No Yes JenisKelamin Jenis kelamin dari karyawan Char 1 No No FotoKar Image path dari foto karyawan Varchar 20 No No

57 Menentukan Domain Atribut Tujuannyauntukmenentukandomainbagiatribut-atributdalam 97 model datakonseptual. Berikut adalah domain-domain yang diidentifikasikan untuk setiap atribut pada entitas: 1. PengajuanPemesanan Nama Atribut KdPengPemesanan TglPengPemesanan GmbPengPemesanan StatusPengPemesanan NamaProyek AlamatPemesanan KotaPemesanan KecPemesanan KelPemesanan KdPosPemesanan Tabel 3.25Domain Atribut PengajuanPemesanan Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah O yang mengidentifikasikan order, huruf kedua menentukan urutan KdPengPemesanan dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Varchar dengan panjang 30 karakter, terdiri dari karakter A-Z, a-z, 0-9, / dan - Char dengan panjang 1 karakter, terdiri dari karakter P yang menyatakan pending, A yang menyatakan approved, R yang menyatakan rejected, dan D yang menyatakan deal Varchar dengan panjang 40 karakter, terdiri dari karakter A-Z, a-z, dan 0-9 Varchar dengan panjang 100 karakter, terdiri dari karakter A-Z, a-z, (spasi) dan 0-9 Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) Char dengan panjang 5 karakter, terdiri dari angka 0-9

58 98 2. BahanBaku Tabel 3.26Domain Atribut BahanBaku Nama Atribut Domain Atribut Char dengan panjang 5 karakter, dua karakter pertama huruf, huruf pertama adalah M yang KdBahanBaku mengidentifikasikan material, huruf kedua menentukan urutan KdBahanBaku dengan nilai A-Z, tiga karakter selanjutnya berupa angka dengan nilai NamaBahanBaku Varchar dengan panjang 40 karakter, terdiri dari karakter A-Z, a-z, 0-9, (spasi), -, dan _ KdTipeBahan Char dengan panjang 3 karakter, terdiri dari karakter A-Z, a-z, dan 0-9 TipeBahanBaku Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z, dan 0-9 KdSatuanBahan Char dengan panjang 3 karakter, terdiri dari karakter A-Z, a-z, dan 0-9 Varchar dengan panjang 5 karakter, terdiri dari SatuanBahanBaku karakter A-Z, a-z,., dan 0-9, contohnya: 100cm, 5m, 0.5mm, pcs Harga Integer Stok Small Integer StokMin Small Integer

59 99 3. RumusBahanBaku Nama Atribut KdRumus NamaRumus SatuanRumus RumusUkuran Gambar Deskripsi Tabel 3.27Domain Atribut RumusBahanBaku Domain Atribut Char dengan panjang 5 karakter, dua karakter pertama huruf, huruf pertama adalah F yang mengidentifikasikan formula, huruf kedua menentukan urutan KdRumus dengan nilai A-Z, tiga karakter selanjutnya berupa angka dengan nilai Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z, 0-9, -, _ dan (spasi) Char dengan panjang 1 karakter, terdiri dari karakter H yang menyatakan height, W yang menyatakan width dan - yang menyatakan tidak memiliki satuan Varchar dengan panjang 100 karakter, terdiri dari karakter w, l, 0-9, /, -, '+', 'x' Varchar dengan panjang 30 karakter, terdiri dari karakter A-Z, a-z, 0-9, / dan - Varchar dengan panjang 100 karakter, terdiri dari karakter A-Z, a-z, 0-9, /, -,., dan,

60 Produksi Nama Atribut KdProduksi NamaBarang TglMulaiProduksi StatusProduksi JumlahProduksi UkTinggi UkLebar HargaProduksi Tabel 3.28Domain Atribut Produksi Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah R yang mengidentifikasikan production, huruf kedua menentukan urutan KdProduksi dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai varchar dengan panjang 40 karakter, terdiri dari karakter A-Z, a-z, 0-9, (spasi), -, dan _ Datetime Char dengan panjang 1 karakter, terdiri dari karakter D yang menyatakan delay, P yang menyatakan production, dan F yang menyatakan finish Small Integer Small Integer Small Integer Integer

61 Kontrak Nama Atribut KdKontrak Spesifikasi Keterangan TglKontrak StatusKontrak Diskon Tabel 3.29Domain Atribut Kontrak Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah K yang mengidentifikasikan contract, huruf kedua menentukan urutan KdKontrak dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Varchar dengan panjang 200 karakter, terdiri dari karakter A-Z, a-z, 0-9,., (spasi), dan, Varchar dengan panjang 200 karakter, terdiri dari karakter A-Z, a-z, 0-9,., (spasi), dan, Datetime Char dengan panjang 1 karakter, terdiri dari karakter P yang menyatakan pending, R yang menyatakan rejected, dan A yang menyatakan approved Tiny Integer 6. Pemesanan Nama Atribut KdPemesanan TglPemesanan Tabel 3.30Domain Atribut Pemesanan Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah P yang mengidentifikasikan Purchase Order, huruf kedua menentukan urutan KdPemesanan dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime

62 PembayaranPemesanan Nama Atribut KdPembPemesanan TglPembPemesanan JumlahBayar Tabel 3.31Domain Atribut PembayaranPemesanan Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah M yang mengidentifikasikan pembayaran pemesanan, huruf kedua menentukan urutan KdPembPemesanan dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Integer 8. RancanganKusen Nama Atribut KdRancangan TglRancangan GmbRancangan StatusRancangan UkLubang UkJendela Tabel 3.32Domain Atribut RancanganKusen Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah D yang mengidentifikasikan design, huruf kedua menentukan urutan KdRancangan dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Varchar dengan panjang 30 karakter, terdiri dari karakter A-Z, a-z, 0-9, / dan - Char dengan panjang 1 karakter, berisikan karakter A yang menyatakan approved, dan R yang menyatakan rejected Varchar dengan panjang 15 karakter, terdiri dari karakter A-Z, a-z, 0-9, contoh : 1000cm Varchar dengan panjang 15 karakter, terdiri dari karakter A-Z, a-z, 0-9, contoh : 1000cm

63 TargetProduksi Nama Atribut TglPengiriman TglPemasangan Keterangan Tabel 3.33Domain Atribut TargetProduksi Domain Atribut Date Date Varchar dengan panjang 100 karakter, terdiri dari karakter A-Z, a-z dan TugasProduksi Nama Atribut KdTugas Keterangan Deadline StatusTugas TglMulai TglSelesai DeskTugas Tabel 3.34Domain Atribut TugasProduksi Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah T yang mengidentifikasikan task, huruf kedua menentukan urutan KdPembagian dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Varchar dengan panjang 100 karakter, terdiri dari karakter A-Z, a-z, 0-9,., (spasi), dan, Datetime Char dengan panjang 1 karakter, terdiri dari karakter W yang menyatakan working, dan D yang menyatakan done Datetime Datetime Varchar dengan panjang 80 karakter, terdiri dari karakter A-Z, a-z, 0-9,., (spasi), dan,

64 PengambilanBahanBaku Tabel 3.35Domain Atribut PengambilanBahanBaku Nama Atribut Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah A yang mengidentifikasikan take, huruf kedua menentukan KdPengambilan urutan KdPengambilan dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai TglPengambilan Datetime JumlahAmbil Small Integer 12. BarangJadi Nama Atribut KdBarangJadi TglBarangMasuk StatusBarangJadi Tabel 3.36 Domain Atribut BarangJadi Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah G yang mengidentifikasikan goods, huruf kedua menentukan urutan KdBarangJadi dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Char dengan panjang 1 karakter, terdiri dari karakter R yang menyatakan ready dan S yang menyatakan sent

65 PengajuanPembelian Nama Atribut KdPengajuan TglPengajuan StatusPengajuan JumlahAju Tabel 3.37Domain Atribut PengajuanPembelian Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah Q yang mengidentifikasikan request, huruf kedua menentukan urutan KdPengajuan dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Char dengan panjang 1 karakter, terdiri dari karakter P yang menyatakan pending, A yang menyatakan approved, dan R yang menyatakan rejected Small Integer 14. Pembelian Nama Atribut KdPembelian TglPembelian HargaBeli JumlahBeli StatusPembelian Tabel 3.38Domain Atribut Pembelian Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah B yang mengidentifikasikan purchase, huruf kedua menentukan urutan KDPembelian dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Integer Small Integer Char dengan panjang 1 karakter, terdiri dari karakter P yang menyatakan pending, A yang menyatakan approved, R yang menyatakan rejected, dan V yang menyatakan verified

66 PembayaranPembelian Tabel 3.39Domain Atribut PembayaranPembelian Nama Atribut Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah Y yang mengidentifikasikan pembayaran pembelian, huruf KdPembPembelian kedua menentukan urutan KdPembPemesanan dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai TglPembPembelian Datetime JumlahBayar Integer 16. ReturPembelian Nama Atribut KdReturPemb TglRetur StatusRetur JumlahRetur AlasanRetur Tabel 3.40Domain Atribut ReturPembelian Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah N yang mengidentifikasikan return, huruf kedua menentukan urutan KdReturPemb dengan nilai A-Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Char dengan panjang 1 karakter, terdiri dari karakter P yang menyatakan pending, A yang menyatakan approved, R yang menyatakan rejected, dan V yang menyatakan verified Small Integer Varchar dengan panjang 200 karakter, terdiri dari karakter A-Z, a-z, 0-9,., (spasi), dan,

67 Pemasok Nama Atribut KdPem NamaPem AlamatPem KotaPem KecPem KelPem Tabel 3.41Domain Atribut Pemasok Domain Atribut Char dengan panjang 5 karakter, dua karakter pertama huruf, huruf pertama adalah S yang mengidentifikasikan supplier, huruf kedua menentukan urutan KdPemasok dengan nilai A-Z, tiga karakter selanjutnya berupa angka dengan nilai Varchar dengan panjang 40 karakter, terdiri dari karakter A-Z, a-z dan (spasi) Varchar dengan panjang 100 karakter, terdiri dari karakter A-Z, a-z, (spasi) dan 0-9 Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) Varchar dengan panjang 20 karakter, berisikan karakter A-Z, a-z dan (spasi) KdPosPem Char dengan panjang 5 karakter, terdiri dari angka 0-9 Varchar dengan panjang 50 karakter, tersusun atas kombinasi karakter yang diawali dengan karakter huruf A-Z dan a-z diikuti dengan kombinasi karakter A-Z, a-z, 0-9 dan maksimal satu Pem karakter., yang kemudian diikuti dengan dan. tidak boleh bersampingan, selanjutnya diikuti lagi dengan karakter A-Z, a-z, dan 0-9 kemudian diberi tanda., selanjutnya diakhiri dengan karakter A-Z, a-z, dan 0-9 TelpPem Varchar dengan panjang 15 karakter, terdiri dari angka 0-9 FaxPem varchar dengan panjang 15 karakter, terdiri dari angka 0-9 KategoriPem Varchar dengan panjang 15 karakter, terdiri dari karakter A-Z, a-z dan 0-9

68 Pelanggan Nama Atribut Tabel 3.42Domain Atribut Pelanggan Domain Atribut Char dengan panjang 5 karakter, dua karakter pertama huruf, huruf pertama adalah C yang KdPel mengidentifikasikan customer, huruf kedua menentukan urutan KdPelanggan dengan nilai A-Z, tiga karakter selanjutnya berupa angka dengan nilai NamaPel Varchar dengan panjang 40 karakter, terdiri dari karakter A-Z, a-z, dan (spasi). AlamatPel Varchar dengan panjang 100 karakter, terdiri dari karakter A-Z, a-z, (spasi) dan 0-9. KotaPel Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi). KecPel Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi). KelPel Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi). KdPosPel Char dengan panjang 5 karakter, terdiri dari angka Pel TelpPel FaxPel Varchar dengan panjang 50 karakter, tersusun atas kombinasi karakter yang diawali dengan karakter huruf A-Z dan a-z diikuti dengan kombinasi karakter A-Z, a-z, 0-9 dan maksimal satu karakter., kemudian diikuti dengan dan. tidak boleh bersampingan, selanjutnya diikuti lagi dengan karakter A-Z, a-z, dan 0-9 kemudian diberi tanda., selanjutnya diakhiri dengan karakter A-Z, a-z, dan 0-9. Varchar dengan panjang 15 karakter, terdiri dari angka 0-9. Varchar dengan panjang 15 karakter, terdiri dari angka 0-9.

69 Pengiriman Nama Atribut KdPengiriman TglPengiriman StatusPengiriman Tabel 3.43Domain Atribut Pengiriman Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah V yang mengidentifikasikan deliver, huruf kedua menentukan urutan KdPengiriman dengan nilai A- Z, limakarakter selanjutnya berupa angka dengan nilai Datetime Char dengan panjang 1 karakter, terdiri dari karakter P yang menyatakan pending, S yang menyatakan sending, dan D yang menyatakan done 20. Pemasangan Nama Atribut KdPemasangan TglPemasangan FotoHasil StatusPemasangan Tabel 3.44Domain Atribut Pemasangan Domain Atribut Char dengan panjang 7 karakter, dua karakter pertama huruf, huruf pertama adalah I yang mengidentifikasikan installation, huruf kedua menentukan urutan KdPemasangan dengan nilai A- Z, lima karakter selanjutnya berupa angka dengan nilai Datetime Varchar dengan panjang 30 karakter, terdiri dari karakter A-Z, a-z, 0-9, / dan - Char dengan panjang 1 karakter, terdiri dari karakter P yang menyatakan pending, I yang menyatakan installing, dan D yang menyatakan done

70 Karyawan Tabel 3.45Domain Atribut Karyawan Nama Atribut Domain Atribut Char dengan panjang 5 karakter, dua karakter pertama huruf, huruf pertama adalah E yang KdKar mengidentifikasikan employee, huruf kedua menentukan urutan KdKaryawan dengan nilai A-Z, tiga karakter selanjutnya berupa angka dengan nilai NamaKar Varchar dengan panjang 40 karakter, terdiri dari karakter A-Z, a-z dan (spasi) KdPosisi Char dengan panjang 3 karakter, terdiri dari karakter A- Z, a-z, dan 0-9 PosisiKar Varchar dengan panjang 40 karakter, terdiri dari karakter A-Z, a-z dan (spasi) AlamatKar Varchar dengan panjang 100 karakter, terdiri dari karakter A-Z, a-z, (spasi) dan 0-9 KotaKar Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) KecKar Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) KelKar Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z dan (spasi) KdPosKar Char dengan panjang 5 karakter, terdiri dari angka 0-9 Varchar dengan panjang 50 karakter, tersusun atas kombinasi karakter yang diawali dengan karakter huruf A-Z dan a-z diikuti dengan kombinasi karakter A-Z, a-z, 0-9 dan maksimal satu Kar karakter., yang kemudian diikuti dengan dan. tidak boleh bersampingan, selanjutnya diikuti lagi dengan karakter A-Z, a-z, dan 0-9, kemudian diberi tanda., selanjutnya diakhiri dengan karakter A-Z, a-z, dan 0-9 TelpKar Varchar dengan panjang 15 karakter, terdiri dari angka 0-9 Char dengan panjang 1 karakter, terdiri dari karakter M JenisKelamin yang menyatakan laki-laki dan F yang menyatakan perempuan FotoKar Varchar dengan panjang 20 karakter, terdiri dari karakter A-Z, a-z, 0-9, / dan -

71 Menentukan Atribut-Atribut Candidate, Primary, dan Alternate Key Tujuannya untuk mengidentifikasikan candidate key untuk setiap tipe entitas dan jika terdapat lebih dari satu candidate key, memilih salah satu sebagai primary key dan sisanya sebagai alternate key. Terdapat beberapa panduan dalam memilih primary keydi antara sejumlah candidate key, yaitu: a. Candidate key dengan kumpulan atribut yang minimal b. Candidate key yang nilainya jarang berubah c. Candidate key dengan karakter-karakter yang paling sedikit (untuk yang memiliki textual attributes) d. Candidate key dengan nilai maksimum paling rendah (untuk yang memiliki numerical attributes) e. Candidate key yang paling mudah digunakan dari sudut pandang user Dari hasil panduan di atas, maka didapatkan beberapa candidate key dan sebuah primary key, yaitu: Tabel 3.46Candidate Key dan Primary Key Entity Name Candidate Key Primary Key Pelanggan KdPel, Pel KdPel Karyawan KdKar, Kar KdKar Pemasok KdPem, Pem KdPem RumusBahanBaku KdRumus KdRumus BahanBaku KdBahanBaku KdBahanBaku PengajuanPemesanan KdPengPemesanan KdPengPemesanan TargetProduksi - - Pemesanan KdPemesanan KdPemesanan RancanganKusen KdRancangan KdRancangan Produksi KdProduksi KdProduksi BarangJadi KdBarangJadi KdBarangJadi Pengiriman KdPengiriman KdPengiriman Pemasangan KdPemasangan KdPemasangan Kontrak KdKontrak KdKontrak

72 112 Entity Name Candidate Key Primary Key TugasProduksi KdTugas KdTugas PengambilanBahanBaku KdPengambilan KdPengambilan PengajuanPembelian KdPengajuan KdPengajuan Pembelian KdPembelian KdPembelian ReturPembelian KdReturPemb KdReturPemb PembayaranPembelian KdPembPembelian KdPembPembelian PembayaranPemesanan KdPembPemesanan KdPembPemesanan Mempertimbangkan Penggunaan Enhanced Modeling Concept Tujuannya untuk mempertimbangkan penggunaan enhanced modeling concept, sepertispecialization/generalization, aggregation, dan composition. Setelah melakukan analisa, ERD yang sudah ada tidak memerlukan penggunaan enhanced modeling concept sehingga tahap ini tidak dilakukan Memeriksa Model untuk Redundansi Tujuannya untuk memeriksa redundasi yang muncul dalam model. Terdapat tiga hal yang perlu diperiksa dalam langkah ini, yaitu: a. Mengecek kembali hubungan satu-satu (1:1) 1. Pembelian yang memiliki relasi memiliki dengan ReturPembelian Gambar 3.11Redundansi Pembelian dan ReturPembelian Entitas Pembelian dan ReturPembelian adalah dua entitas yang tidak bisa digabung karena masing-masing merupakan dua object yang berbeda dalam perusahaan. 2. PengajuanPemesanan yang memiliki relasi mengakibatkan dengan Pemesanan.

73 113 Gambar 3.12Redundansi PengajuanPemesan dan Pemesanan Dalam hal ini, entitas PengajuanPemesanan dan Pemesanan merepresentasikan entitas yang sama dalam perusahaan, sehingga pada tahap ini dilakukan penggabungan PengajuanPemesanan dengan Pemesanan menjadi entitas Pemesanan. Gambar 3.13Hasil Redundansi PengajuanPemesan dan Pemesanan b. Menghapus hubungan yang berulang 1. Relationship memasang antara entitas Pemasangan dan Pelanggan Gambar 3.14Redundansi Hubungan Memasang Relationship memasang antara entitas Pemasangan dan Pelanggan merupakan hubungan yang redundant karena hubungan memasang tersebut tidak memberikan informasi tambahan antara entitas Pemasangan

74 114 dan Pelanggan yang dapat diperoleh dengan lebih tepat melalui entitas Pemesanan.Oleh karena itu, relationship memasang dapat dihilangkan untuk memperoleh model yang minimal. Gambar 3.15Hasil Redundansi Hubungan Memasang 2. Relationship menuju antara entitas Pengiriman dan Pelanggan Gambar 3.16Redundansi Hubungan Menuju Relationship menuju antara entitas Pengiriman dan Pelanggan merupakan hubungan yang redundant karena hubungan menuju tersebut tidak memberikan informasi tambahan antara Pengiriman dan Pelanggan yang dapat diperoleh dengan lebih tepat melalui entitas Pemesanan. Oleh karena itu, relationship menuju dapat dihilangkan untuk memperoleh model yang minimal.

75 115 Gambar 3.17Hasil Redundansi Hubungan Menuju 3. Relationship menandatangani antara entitas Pelanggan dan Kontrak Gambar 3.18Redundansi Hubungan Menandatangani Relationship menandatangani antara entitas Pelanggan dan Kontrak merupakan hubungan yang redundant karena hubungan menandatangani tersebut tidak memberikan informasi tambahan antara Kontrak dan Pelanggan yang dapat diperoleh dengan lebih tepat melalui entitas Pemesanan. Oleh karena itu, relationship menuju dapat dihilangkan untuk memperoleh model yang minimal.

76 116 Gambar 3.19Hasil Redundansi Hubungan Menandatangani Berikut adalah ERD yang sudah disederhanakan melalui pengidentifikasian hubungan yang redundant dari model dan penambahan primary key pada setiap entitas:

77 Gambar 3.20ERD Setelah Bab

78 Memvalidasikan Model Konseptual terhadap Transaksi-Transaksi Pengguna Tujuannyauntukmemastikanmodelkonseptualmendukungtransaksi yangdibutuhkan.terdapat dua pendekatan yang bisa digunakan untuk mendukung tujuan ini, yaitu: a. Mendeskripsikan transaksi-transaksi 1. Data entries dan data updates 1. Memasukkan dan mengubah data pengajuan pemesanan 2. Memasukkan dan mengubah data pelanggan 3. Memasukkan dan mengubah data rumus bahan baku 4. Memasukkan dan mengubah data produksi 5. Memasukkan dan mengubah data kontrak 6. Memasukkan dan mengubah data rancangan kusen pintu jendela 7. Memasukkan dan mengubah data pemesanan 8. Memasukkan dan mengubah data target produksi 9. Memasukkan dan mengubah data tugas produksi 10. Memasukkan dan mengubah data pengambilan bahan baku 11. Memasukkan dan mengubah data barang jadi 12. Memasukkan dan mengubah data bahan baku 13. Memasukkan dan mengubah data pemasok 14. Memasukkan dan mengubah data pengajuan pembelian 15. Memasukkan dan mengubah data pembelian 16. Memasukkan dan mengubah data retur pembelian 17. Memasukkan dan mengubah data pengiriman 18. Memasukkan dan mengubah data pemasangan 19. Memasukkan dan mengubah data karyawan 20. Memasukkan dan mengubah data pembayaran pemesanan 21. Memasukkan dan mengubah data pembayaran pembelian 2. Data queries 1. Menampilkan pengajuan pemesanan berdasarkan identitas pelanggan 2. Menampilkan data bahan baku berdasarkan rumus bahan baku

79 Menampilkan data produksi berdasarkan nomor pengajuan pemesanan 4. Menampilkan rancangan kusen pintu jendela berdasarkan nomor pengajuan pemesanan 5. Menampilkan kontrak sesuai dengan pemesanan yang diajukan 6. Menampilkan pemesanan yang dibuat oleh karyawan 7. Menampilkan target produksi berdasarkan nomor pengajuan pemesanan 8. Menampilkan data tugas produksi dan nama karyawan yang terlibat didalamnya 9. Menampilkan data pengambilan bahan baku berdasarkan nama karyawan 10. Menampilkan data barang jadi berdasarkan kode produksi 11. Menampilkan data pembelian berdasarkan nomor pengajuan pembelian 12. Menampilkan data retur pembelian berdasarkan nomor pembelian 13. Menampilkan data pengiriman berdasarkan nomor pengajuan pemesanan 14. Menampilkan data pemasangan berdasarkan nomor pengajuan pemesanan 15. Menampilkan detil pengajuan pemesanan yang dibuat berdasarkan data karyawan 16. Menampilkan kontrak yang diurus oleh karyawan 17. Menampilkan data pengajuan pembelian yang diajukan oleh karyawan 18. Menampilkan data pembelian yang dibuat oleh karyawan 19. Menampilkan data retur pembelian yang diurus oleh karyawan 20. Menampilkan data pengiriman dan karyawan yang terlibat di dalamnya 21. Menampilkan data pemasangan yang dilakukan oleh karyawan 22. Menampilkan data barang jadi yang dikirim

80 Menampilkan rumus yang digunakan untuk produksi 24. Menampilkan pembagian tugas sesuai dengan nomor produksi 25. Menampilkan bahan baku yang dibeli melalui pembelian 26. Menampilkan pembelian berdasarkan nama pemasok 27. Menampilkan daftar bahan baku dalam pengajuan pembelian 28. Menampilkan daftar bahan baku dalam retur pembelian 29. Menampilkan daftar bahan baku dalam pengambilan bahan baku 30. Menampilkan data pembayaran pemesanan berdasarkan nama karyawan yang mengurusnya dan nomor pemesanan 31. Menampilkan data pembayaran pembelian berdasarkan nama karyawan yang mengurusnya dan nomor pembelian

81 121 b. Menggunakan alur-alur transaksi Gambar 3.21Transaction Pathways

82 Meninjau Kembali Model Data Konseptual denganpengguna Tujuannyauntukmeninjau kembali model data konseptual dengan pengguna untuk memastikan bahwa model tersebut merupakan representasi dari keperluan data perusahaan. Setelah melakukan pembahasan kembali dengan pengguna, model tersebut sudah memenuhi keperluan dan permintaan dari pengguna Pemilihan Database Management System Tujuannya untuk memilih Database Management System yang tepat dan bisa mendukung sistem basis data. Berikut merupakan perbandingan dari tiga DBMS yang ditemukan, yaitu MySql, MicrosoftSQLServer, dan Microsoft Access. Perbandingan Sistem operasi Tabel 3.47Perbandingan DBMS MySql Windows, Mac OS, Linux, UNIX Microsoft SQL Server Windows Ms Access Windows, Mac OS Lisensi Gratis Berbayar Berbayar Ukuran maksimal blob atau clob Ukuran maksimal basis data Ukuran maksimal nama kolom Ukuran maksimal baris Maksimal kolom per baris Ukuran maksimal tipe data number Ukuran maksimal tipe data character 4GB 2GB 64KB Tidak terbatas 524,258 TB 2GB 64 karakter 128 karakter Tidak diketahui 64KB Tidak terbatas 16MB 4096 kolom kolom 255 kolom 64 bits 126bits 32bits 64KB 2GB 255B

83 123 Setelah melakukan perbandingan antar ketiga DBMS tersebut, dapat disimpulkan bahwamysql merupakan DBMS yang paling cocok untuk aplikasi basis data PT Luxus Indo Prima karena memiliki kapasitas penyimpanan yang memadai dan berlisensi gratis. Selain itu, MySQL juga mendukung tahapan normalisasi yang akan diidentifikasikan berikutnya. Normalisasi dapat mengatasi masalah redundansi sehingga dapat mengurangi penggunaan ruang penyimpanan, memungkinkan data agar dapat disimpan dengan lebih baik dan memudahkan pencarian, serta dapat meningkatkan integritas data.hal ini dapat menjawab masalah penyimpanan dan integritas data yang dialami oleh PT Luxus Indo Prima. Engine yang dipilih dari MySQL yaitu innodb karena innodb mendukung foreign key constraint, serta dapat menjalakan perintah commit dan rollback.selain itu, innodb juga memungkinkan pemulihan dari kerusakan yang terjadi. Pemulihan bisa dilakukan dengan menjalankan ulang (restart) MySQL, kemudian innodb akan melakukan pemeriksaan terhadap logs dan kembali pada kondisi ketika transaksi yang terakhir belum dijalankan. Selama proses pemulihan, MySQL akan menampilkan perintah seperti ini: InnoDB: Database was not shut down normally. InnoDB: Starting recovery from log files... InnoDB: Starting log scan based on checkpoint at InnoDB: log sequence number InnoDB: Doing recovery: scanned up to log sequence number InnoDB: Doing recovery: scanned up to log sequence number InnoDB: Doing recovery: scanned up to log sequence number InnoDB: Doing recovery: scanned up to log sequence number InnoDB: Doing recovery: scanned up to log sequence number InnoDB: Doing recovery: scanned up to log sequence number InnoDB: Doing recovery: scanned up to log sequence number InnoDB: 1 uncommitted transaction(s) which must be rolled back InnoDB: Starting rollback of uncommitted transactions

84 124 InnoDB: Rolling back trx no InnoDB: Rolling back of trx no completed InnoDB: Rollback of uncommitted transactions completed InnoDB: Starting an apply batch of log records to the database... InnoDB: Apply batch completed InnoDB: Started mysqld: ready for connections Perancangan Basis Data Logikal Perancangan basis data logikal yaitu proses menerjemahkan model data konseptual ke dalam model data logikal dan memvalidasi model ini untuk mengecek bahwa bentuk strukturalnya sudah benar, serta mampu mendukung transaksi yang diperlukan. Hal-hal yang perlu dilakukan dalam tahap ini yaitu membangun dan memvalidasi model data logikal yang meliputi langkah-langkah: 1. Menurunkan hubungan untuk model data logikal 2. Memvalidasi relasi dengan menggunakan normalisasi 3. Memvalidasi relasi dengan user transaction 4. Memeriksa integrity constraints 5. Review model data logikal dengan user 6. Menggabungkan model data logikal ke dalam model global 7. Mempertimbangkan perkembangan di masa depan Menurunkan Relasi untuk Model Data Logikal Tujuannya untuk menciptakan relasi-relasi untuk model data logikal yang merepresentasikan entitas, relasi, dan atribut yang sudah ditentukan. Hal-hal yang akan muncul dan perlu diidentifikasikan dari yaitu: 1. Strong Entity 1. Pelanggan (KdPel, NamaPel, AlamatPel, KotaPel, KecPel, KelPel, KdPosPel, Pel, TelpPel, FaxPel) PrimaryKey (KdPel)

85 Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) 3. Pemasok (KdPem, NamaPem, AlamatPem, KotaPem, KecPem, KelPem,KdPosPem, Pem, TelpPem, FaxPem) PrimaryKey (KdPem) 4. RumusBahanBaku (KdRumus, NamaRumus, SatuanRumus, RumusUkuran, Gambar, Deskripsi) PrimaryKey (KdRumus) 5. BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, TipeBahanBaku, KdSatuanBahan, SatuanBahanBaku, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) 6. Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) 7. PembayaranPemesanan(KdPembPemesanan, TglPembPemesnan, JumlahBayar) PrimaryKey (KdPembPemesanan) 8. RancanganKusen (KdRancangan, TglRancangan, GmbRancangan, StatusRancangan, UkLubang, UkJendela, Keterangan) PrimaryKey (KdRancangan) 9. Produksi (KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaProduksi) PrimaryKey (KdProduksi) 10. BarangJadi (KdBarangJadi, TglBarangMasuk, StatusBarangJadi) PrimaryKey (KdBarangJadi)

86 Pengiriman (KdPengiriman, TglPengiriman, StatusPengiriman) PrimaryKey (KdPengiriman) 12. Pemasangan (KdPemasangan, TglPemasangan, FotoHasil, StatusPemasangan) PrimaryKey (KdPemasangan) 13. Kontrak (KdKontrak, Spesifikasi, Keterangan, Diskon, TglKontrak, StatusKontrak) PrimaryKey (KdKontrak) 14. TugasProduksi (KdTugas, Keterangan, Deadline, StatusTugas, TglMulai, TglSelesai, DeskTugas) PrimaryKey (KdTugas) 15. PengambilanBahanBaku (KdPengambilan, TglPengambilan, JumlahAmbil) PrimaryKey (KdPengambilan) 16. PengajuanPembelian (KdPengajuan, TglPengajuan, StatusPengajuan, JumlahAju) PrimaryKey (KdPengajuan) 17. Pembelian (KdPembelian, TglPembelian, StatusPembelian, HargaBeli, JumlahBeli) PrimaryKey (KdPembelian) 18. PembayaranPembelian (KdPembPembelian, TglPembPembelian, JumlahBayar) PrimaryKey (KdPembPembelian) 19. ReturPembelian (KdReturPemb, TglRetur, StatusRetur, AlasanRetur, JumlahRetur) PrimaryKey (KdReturPemb) 2. Weak Entity 1. TargetProduksi (TglPengiriman, TglPemasangan, Keterangan)

87 Tipe relasi binary one to many (1:*) Relasi ini diatasi dengan menempatkan atribut primary key dari entitas parent ke dalam entitas child untuk berfungsi sebagai foreign key. Berikut merupakan hasil dari relasi binary one to many (1:*): MenempatkanKdPel ke Pemesanan untuk model 1:* relasi Memesan Pelanggan (KdPel, NamaPel, AlamatPel, KotaPel, KecPel, KelPel, KdPosPel, Pel, TelpPel, FaxPel) PrimaryKey (KdPel) Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan, KdPel) PrimaryKey (KdPemesanan) ForeignKeyKdPelreferences Pelanggan (KdPel) MenempatkanKdKar ke Pemesanan untuk model 1:* relasimelayani Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan, KdKar) PrimaryKey (KdPemesanan) ForeignKeyKdKarreferences Karyawan(KdKar) MenempatkanKdKar ke Kontrak untuk model 1:* relasimengurus Karyawan (KdKar, NamaKar,KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) Kontrak (KdKontrak, Spesifikasi, Keterangan, Diskon, TglKontrak, StatusKontrak, KdKar) PrimaryKey (KdKontrak) ForeignKeyKdKarreferences Karyawan (KdKar)

88 128 MenempatkanKdKar ke PengambilanBahanBaku untuk model 1:* relasi Melakukan Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) PengambilanBahanBaku (KdPengambilan, TglPengambilan, JumlahAmbil, KdKar) PrimaryKey (KdPengambilan) ForeignKeyKdKarreferences Karyawan (KdKar) MenempatkanKdKar ke PengajuanPembelian untuk model 1:* relasimengajukan Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) PengajuanPembelian (KdPengajuan, TglPengajuan, StatusPengajuan, JumlahAju, KdKar) PrimaryKey (KdPengajuan) ForeignKeyKdKarreferences Karyawan (KdKar) Menempatkan KdKar ke Pembelian untuk model 1:* relasimembuat Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) Pembelian (KdPembelian, TglPembelian, StatusPembelian, HargaBeli, JumlahBeli, KdKar) PrimaryKey (KdPembelian) ForeignKeyKdKarreferences Karyawan (KdKar) MenempatkanKdKar ke ReturPembelian untuk model 1:* relasimengurus Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) ReturPembelian (KdReturPemb, TglRetur, StatusRetur, AlasanRetur, JumlahRetur, KdKar) PrimaryKey (KdReturPemb) ForeignKeyKdKarreferences Karyawan (KdKar)

89 129 MenempatkanKdKar ke Pengiriman untuk model 1:* relasimelakukan Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) Pengiriman (KdPengiriman, TglPengiriman, StatusPengiriman, KdKar) PrimaryKey (KdPengiriman) ForeignKeyKdKarreferences Karyawan (KdKar) MenempatkanKdKar ke PembayaranPembelian untuk model 1:* relasimengurus Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) PembayaranPembelian (KdPembPembelian, TglPembPembelian, JumlahBayar, KdKar) PrimaryKey (KdPembPembelian) ForeignKeyKdKarreferences Karyawan (KdKar) MenempatkanKdKar ke PembayaranPemesanan untuk model 1:* relasi Mengurus Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) PembayaranPemesanan (KdPembPemesanan, TglPembPemesanan, JumlahBayar, KdKar) PrimaryKey (KdPembPemesanan) ForeignKeyKdKarreferences Karyawan (KdKar) MenempatkanKdPemesanan ke Kontrak untuk model 1:* relasimempunyai Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) Kontrak (KdKontrak, Spesifikasi, Keterangan, Diskon, TglKontrak, StatusKontrak, KdPemesanan) PrimaryKey (KdKontrak) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan)

90 130 MenempatkanKdPemesanan ke TargetProduksi untuk model 1:* relasimemiliki Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) TargetProduksi (TglPengiriman, TglPemasangan, Keterangan, KdPemesanan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) MenempatkanKdPemesanan ke Produksi untuk model 1:* relasimemproduksi Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) Produksi (KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaProduksi, KdPemesanan) PrimaryKey (KdProduksi) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) MenempatkanKdPemesanan ke RancanganKusen untuk model 1:* relasi Menghasilkan Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) RancanganKusen (KdRancangan, TglRancangan, GmbRancangan, StatusRancangan, UkLubang, UkJendela, Keterangan, KdPemesanan) PrimaryKey (KdRancangan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan)

91 131 MenempatkanKdPemesanan ke Pengiriman untuk model 1:* relasimemiliki Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) Pengiriman (KdPengiriman, TglPengiriman, StatusPengiriman, KdPemesanan) PrimaryKey (KdPengiriman) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) MenempatkanKdPemesanan ke Pemasangan untuk model 1:* relasimemiliki Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) Pemasangan (KdPemasangan, TglPemasangan, FotoHasil, StatusPemasangan, KdPemesanan) PrimaryKey (KdPemasangan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) MenempatkanKdPengiriman ke BarangJadi untuk model 1:* relasimengirim Pengiriman (KdPengiriman, TglPengiriman, StatusPengiriman) PrimaryKey (KdPengiriman) BarangJadi (KdBarangJadi, TglBarangMasuk, StatusBarangJadi, KdPengiriman) PrimaryKey (KdBarangJadi) ForeignKeyKdPengiriman references Pengiriman(KdPengiriman) MenempatkanKdRumus ke Produksi untuk model 1:* relasi Menghasilkan RumusBahanBaku (KdRumus, NamaRumus, SatuanRumus, RumusUkuran, Gambar, Deskripsi) PrimaryKey (KdRumus) Produksi (KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaProduksi, KdRumus) PrimaryKey (KdProduksi) ForeignKeyKdRumusreferences RumusBahanBaku(KdRumus)

92 132 MenempatkanKdProduksi ke TugasProduksi untuk model 1:* relasimembagi Produksi (KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaProduksi) PrimaryKey (KdProduksi) TugasProduksi (KdTugas, Keterangan, Deadline, StatusTugas,, TglMulai, TglSelesai, DeskTugas, KdProduksi) PrimaryKey (KdTugas) ForeignKeyKdProduksireferences Produksi(KdProduksi) MenempatkanKdProduksi ke BarangJadi untuk model 1:* relasimenghasilkan Produksi (KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaProduksi) PrimaryKey (KdProduksi) BarangJadi (KdBarangJadi, TglBarangMasuk, StatusBarangJadi, KdProduksi) PrimaryKey (KdBarangJadi) ForeignKeyKdProduksireferences Produksi(KdProduksi) MenempatkanKdPembelian ke PembayaranPembelian untuk model 1:* relasi Memiliki Pembelian (KdPembelian, TglPembelian, StatusPembelian, HargaBeli, JumlahBeli) PrimaryKey (KdPembelian) PembayaranPembelian (KdPembPembelian, TglPembPembelian, JumlahBayar, KdPembelian) PrimaryKey (KdPembPembelian) ForeignKeyKdPembelianreferences Pembelian(KdPembelian)

93 133 MenempatkanKdPem ke Pembelian untuk model 1:* relasi Memenuhi Pemasok (KdPem, NamaPem, AlamatPem, KotaPem, KecPem, KelPem,KdPosPem, Pem, TelpPem, FaxPem) PrimaryKey (KdPem) Pembelian (KdPembelian, TglPembelian, StatusPembelian, HargaBeli, JumlahBeli, KdPem) PrimaryKey (KdPembelian) ForeignKeyKdPemreferences Pemasok(KdPem) MenempatkanKdPemesanan ke PembayaranPemesanan untuk model 1:* relasimemiliki Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan) PrimaryKey (KdPemesanan) PembayaranPemesanan (KdPembPemesanan, TglPembPemesanan, JumlahBayar, KdPemesanan) PrimaryKey (KdPembPemesanan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) MenempatkanKdPengajuan ke Pembelian untuk model 1:* relasimenyebabkan PengajuanPembelian (KdPengajuan, TglPengajuan, StatusPengajuan, JumlahAju) PrimaryKey (KdPengajuan) Pembelian (KdPembelian, TglPembelian, StatusPembelian, HargaBeli, JumlahBeli, KdPengajuan) PrimaryKey (KdPembelian) ForeignKeyKdPengajuan references PengajuanPembelian(KdPengajuan) 4. Tipe relasi binary one to one (1:1) Untuk relasi binary one to one (1:1) berikut dapat diatasi dengan menempatkan atribut primary key dari entitas parent ke dalam entitas child untuk berfungsi sebagai foreign key. Berikut merupakan hasil dari relasi binary one to one (1:1):

94 134 MenempatkanKdPembelian ke ReturPembelian untuk model 1:1 relasimenimbulkan Pembelian (KdPembelian, TglPembelian, StatusPembelian, HargaBeli, JumlahBeli, KdKar, KdPengajuan, KdPemasok) PrimaryKey (KdPembelian) ForeignKeyKdKar references Karyawan (KdKar) ForeignKeyKdPengajuan references PengajuanPembelian(KdPengajuan) ForeignKeyKdPemasok references Pemasok(KdPemasok) ReturPembelian(KdReturPemb, TglRetur, StatusRetur, AlasanRetur, JumlahRetur, KdKar, Kd ) PrimaryKey (KdReturPemb) ForeignKeyKdKar references Karyawan (KdKar) ForeignKeyKdPembelian references Pembelian(KdPembelian) 5. Tipe relasi recursive one to one (1:1) Pada perancangan basis data konseptual ini tidak ditemukan tip relasi recursive (1:1) sehingga tahap ini tidak perlu dilakukan. 6. Tipe relasi superclass atau subclass Pada perancangan basis data konseptual ini tidak ditemukan tipe relasi superclass atau subclass sehingga tahap ini tidak perlu dilakukan. 7. Tipe relasi binary many to many (*:*) Untuk relasi binary many to many (*:*)dapat diatasi dengan menciptakan sebuah relasi dan memindahkan atribut ke yang bersangkutan ke dalam relasi tersebut. Kemudian menempatkan atribut primary key dari entitas-entitasparent ke dalam relasi baruuntuk berfungsi sebagai foreign key. Satu atau kedua dari foreign key tersebut juga akan menjadi primary key. Berikut merupakan hasil dari relasi many to many (*:*):

95 135 Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) TugasProduksi (KdTugas, Keterangan, KdProduksi) PrimaryKey (KdTugas) ForeignKeyKdProduksireferences Produksi(KdProduksi) DetilTugas (KdKar, KdTugas, StatusTugas, TglMulai, TglSelesai, DeskTugas, Deadline) PrimaryKeyKdKar, KdTugas ForeignKeyKdKar referenceskaryawan(kdkar) ForeignKeyKdTugas referencestugasproduksi(kdtugas) Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) Pemasangan (KdPemasangan, TglPemasangan, FotoHasil, KdPemesanan) PrimaryKey (KdPemasangan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) DetilPemasangan (KdKar, KdPemasangan, StatusPemasangan) PrimaryKeyKdKar, KdPemasangan ForeignKeyKdKar referenceskaryawan(kdkar) ForeignKeyKdPemasanganreferencesPemasangan(KdPemasangan)

96 136 RumusBahanBaku (KdRumus, NamaRumus, Gambar, Deskripsi) PrimaryKey (KdRumus BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, TipeBahanBaku, KdSatuanBahan, SatuanBahanBaku, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) DetilRumus (KdRumus, KdBahanBaku, SatuanRumus, RumusUkuran) Primary Key KdRumus, KdBahanBaku ForeignKeyKdRumusreferencesRumusBahanBaku(KdRumus) ForeignKeyKdBahanBakureferencesBahanBaku(KdBahanBaku) Pembelian (KdPembelian, TglPembelian, StatusPembelian, KdKar, KdPengajuan, KdPem) PrimaryKey (KdPembelian) ForeignKeyKdKary references Karyawan(KdKar) ForeignKeyKdPengajuanreferences PengajuanPembelian(KdPengajuan) ForeignKeyKdPemreferences Pemasok(KdPem) BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, TipeBahanBaku, KdSatuanBahan, SatuanBahanBaku, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) DetilPembelian (KdPembelian, KdBahanBaku,HargaBeli, JumlahBeli) PrimaryKeyKdPembelian, KdBahanBaku ForeignKeyKdPembelianreferencesPembelian(KdPembelian) ForeignKeyKdBahanBakureferencesBahanBaku(KdBahanBaku)

97 137 PengajuanPembelian (KdPengajuan, TglPengajuan, StatusPengajuan, KdKar) PrimaryKey (KdPengajuan) ForeignKeyKdKar references Karyawan(KdKar) BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, TipeBahanBaku, KdSatuanBahan, SatuanBahanBaku, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) DetilPengajuanBeli (KdPengajuan, KdBahanBaku, JumlahAju) PrimaryKeyKdPengajuan, KdBahanBaku ForeignKeyKdPengajuanreferencesPengajuanPembelian(KdPengajuan) ForeignKeyKdBahanBakureferencesBahanBaku(KdBahanBaku) ReturPembelian (KdReturPemb, TglRetur, StatusRetur, AlasanRetur, KdKar, KdPembelian) PrimaryKey (KdReturPemb) ForeignKeyKdKarreferences Karyawan(KdKar) ForeignKeyKdPembelianreferences Pembelian(KdPembelian) BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, TipeBahanBaku, KdSatuanBahan, SatuanBahanBaku, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) DetilReturBeli (KdReturPemb, KdBahanBaku, JumlahRetur) PrimaryKeyKdReturPemb, KdBahanBaku ForeignKeyKdReturPemb referencesreturpembelian(kdreturpemb) ForeignKeyKdBahanBakureferencesBahanBaku(KdBahanBaku)

98 138 PengambilanBahanBaku (KdPengambilan, TglPengambilan, JumlahAmbil, KdKar) PrimaryKey (KdPengambilan) ForeignKeyKdKar references Karyawan(KdKar) BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, TipeBahanBaku, KdSatuanBahan, SatuanBahanBaku, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) DetilPengambilanBahan (KdPengambilan, KdBahanBaku, JumlahAmbil) PrimaryKeyKdPengambilan, KdBahanBaku ForeignKeydPengambilanreferences PengambilanBahanBaku (KdPengambilan) ForeignKeyKdBahanBakureferencesBahanBaku(KdBahanBaku) 8. Tipe relasi kompleks Pada peracangan basis data konseptual ini tidak ditemukan tipe relasi kompleks sehingga tahap ini tidak perlu dilakukan. 9. Atribut-atribut multi-valued Atribut multi-valued dapat diatasi dengan menciptakan relasi baru untuk merepresentasikan atribut multi-valued dan memberikan primarikey dari entitas ke dalam relasi baru untuk berfungsi sebagai foreignkey. Berikut merupakan hasil dari atribut multi-valued:

99 139 Menempatkan KdKar ke TelpKaryawan Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, JenisKelamin, FotoKar) PrimaryKey (KdKaryawan) TelpKaryawan(KdKar,TelpKar) PrimaryKey TelpKar ForeignKey KdKar references Karyawan(KdKar) Menempatkan KdPel ke TelpPelanggan Pelanggan (KdPel, NamaPel, AlamatPel, KotaPel, KecPel, KelPel, KdPosPel, Pel, TelpPel, FaxPel) PrimaryKey (KdPel) TelpPelanggan( KdPel,TelpPel) PrimaryKey TelpPel ForeignKeyKdPelreferences Pelanggan(KdPel) Menempatkan KdPem ke TelpPemasok Pemasok (KdPem, NamaPem, AlamatPem, KotaPem, KecPem, KelPem, KdPosPem, Pem, FaxPem, KategoriPem) PrimaryKey (KdPem) TelpPemasok( KdPem,TelpPem) PrimaryKey TelpPem ForeignKey KdPemreferences Pemasok( KdPem ) Berikut merupakan hasil akhir dari tahapan menurunkan hubungan untuk model data logikal: Tabel 3.48Hasil dari Menurunkan Hubungan untuk Model Data Logikal Karyawan (KdKar, NamaKar, KdPosisi, PosisiKar, AlamatKar, KotaKar, KecKar, KelKar,KdPosKar, Kar, TelpKar, JenisKelamin, FotoKar) PrimaryKey (KdKar) Pelanggan (KdPel, NamaPel, AlamatPel, KotaPel, KecPel, KelPel, KdPosPel, Pel, TelpPel, FaxPel) PrimaryKey (KdPel) Pemasok (KdPem, NamaPem, AlamatPem, KotaPem, KecPem, KelPem,KdPosPem, Pem, TelpPem, FaxPem) PrimaryKey (KdPem)

100 140 TugasProduksi (KdTugas, Keterangan, KdProduksi) PrimaryKey (KdTugas) ForeignKeyKdProduksireferences Produksi(KdProduksi) DetilTugas (KdKar, KdTugas, StatusTugas, TglMulai, TglSelesai, DeskTugas, Deadline) PrimaryKey (KdKar, KdTugas) ForeignKeyKdKar references Karyawan(KdKar) ForeignKeyKdTugas references TugasProduksi(KdTugas) Pemasangan (KdPemasangan, TglPemasangan, FotoHasil, KdPemesanan) PrimaryKey (KdPemasangan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) DetilPemasangan (KdKar, KdPemasangan, StatusPemasangan) PrimaryKey (KdKar, KdPemasangan) ForeignKeyKdKar references Karyawan(KdKar) ForeignKeyKdPemasanganreferences Pemasangan(KdPemasangan) RumusBahanBaku (KdRumus, NamaRumus, Gambar, Deskripsi) PrimaryKey (KdRumus) DetilRumus (KdRumus, KdBahanBaku, SatuanRumus, RumusUkuran ) Primary Key (KdRumus, KdBahanBaku) ForeignKeyKdRumusreferences RumusBahanBaku(KdRumus) ForeignKeyKdBahanBakureferences BahanBaku(KdBahanBaku) Pembelian (KdPembelian, TglPembelian, StatusPembelian, KdKar, KdPengajuan, KdPem) PrimaryKey (KdPembelian) ForeignKeyKdKar references Karyawan(KdKar) ForeignKeyKdPengajuanreferences PengajuanPembelian(KdPengajuan) ForeignKeyKdPemreferences Pemasok(KdPem) DetilPembelian (KdPembelian, KdBahanBaku,HargaBeli, JumlahBeli) PrimaryKey (KdPembelian, KdBahanBaku) ForeignKeyKdPembelianreferences Pembelian(KdPembelian) ForeignKeyKdBahanBakureferences BahanBaku(KdBahanBaku) PengajuanPembelian (KdPengajuan, TglPengajuan, StatusPengajuan, KdKar) PrimaryKey (KdPengajuan) ForeignKeyKdKar references Karyawan(KdKar) DetilPengajuanBeli (KdPengajuan, KdBahanBaku, JumlahAju) PrimaryKey (KdPengajuan, KdBahanBaku) ForeignKeyKdPengajuanreferences PengajuanPembelian(KdPengajuan) ForeignKeyKdBahanBakureferences BahanBaku(KdBahanBaku) ReturPembelian (KdReturPemb, TglRetur, StatusRetur, AlasanRetur, KdKar, KdPembelian) PrimaryKey(KdReturPemb) ForeignKeyKdKar references Karyawan (KdKar) ForeignKeyKdPembelian references Pembelian (KdPembelian) DetilReturBeli (KdReturPemb, KdBahanBaku, JumlahRetur) PrimaryKey (KdReturPemb, KdBahanBaku) ForeignKeyKdReturPemb references ReturPembelian(KdReturPemb) ForeignKeyKdBahanBakureferences BahanBaku(KdBahanBaku)

101 141 PengambilanBahanBaku (KdPengambilan, TglPengambilan, KdKar) PrimaryKey (KdPengambilan) ForeignKeyKdKar references Karyawan(KdKar) DetilPengambilanBahan (KdPengambilan, KdBahanBaku, JumlahAmbil) PrimaryKey (KdPengambilan, KdBahanBaku) ForeignKeyKdPengambilanreferences PengambilanBahanBaku(KdPengambilan) ForeignKeyKdBahanBakureferences BahanBaku(KdBahanBaku) TelpKaryawan (KdKar,TelpKar) PrimaryKey (TelpKar) ForeignKeyKdKar references Karyawan (KdKar) TelpPelanggan (KdPel,TelpPel) PrimaryKey (TelpPel) ForeignKeyKdPelreferences Pelanggan(KdPel) TelpPemasok (KdPem,TelpPem) PrimaryKey (TelpPem) ForeignKeyKdPemreferences Pemasok (KdPem) BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, TipeBahanBaku, KdSatuanBahan, SatuanBahanBaku, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) Produksi (KdProduksi, NamaBarang TelpPem, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaProduksi, KdRumus, KdPemesanan) PrimaryKey (KdProduksi) ForeignKeyKdRumusreferences RumusBahanBaku(KdRumus) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) TargetProduksi (TglPengiriman, TglPemasangan, Keterangan, KdPemesanan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) PembayaranPembelian (KdPembPembelian, TglPembPembelian, JumlahBayar, KdPembelian, KdKar) PrimaryKey (KdPembPembelian) ForeignKeyKdPembelianreferences Pembelian(KdPembelian) ForeignKeyKdKar references Karyawan (KdKar) BarangJadi (KdBarangJadi, TglBarangMasuk, StatusBarangJadi, KdPengiriman, KdProduksi) PrimaryKey (KdBarangJadi) ForeignKeyKdPengiriman references Pengiriman(KdPengiriman) ForeignKeyKdProduksireferences Produksi(KdProduksi) Pengiriman (KdPengiriman, TglPengiriman, StatusPengiriman, KdPemesanan, KdKar) PrimaryKey (KdPengiriman) ForeignKeyKdKarreferences Karyawan (KdKar) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) Kontrak (KdKontrak, Spesifikasi, Keterangan, Diskon, TglKontrak, StatusKontrak, KdKar, KdPemesanan) PrimaryKey (KdKontrak) ForeignKeyKdKar references Karyawan (KdKar)

102 142 ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek,AlamatPemesanan, KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan KdPel, KdKar) PrimaryKey (KdPemesanan) ForeignKeyKdPel references Pelanggan(KdPel) ForeignKeyKdKar references Karyawan (KdKar) RancanganKusen (KdRancangan, TglRancangan, GmbRancangan, StatusRancangan, UkLubang, UkJendela, Keterangan, KdPemesanan) PrimaryKey (KdRancangan) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan) PembayaranPemesanan (KdPembPemesanan, TglPembPemesanan, JumlahBayar, KdKar, KdPemesanan) PrimaryKey (KdPembPemesanan) ForeignKeyKdKar references Karyawan (KdKar) ForeignKeyKdPemesananreferences Pemesanan(KdPemesanan)

103 Memvalidasi Relasi dengan Menggunakan Normalisasi Tujuannya untuk memvalidasi relasi-relasi dalam model data logikal dengam normalisasi.berikut ini merupakan hasil dari normalisasi: 1. Karyawan (1NF) Sudah memuhi aturan normalisasi 1NF karena tidak ditemukan grup yang berulang dan hasil perhitungan. Kd Kar Nama Kd Posisi Kar Posisi Kar Alamat Kota Kar Kar Kec Kar Kel Kar KdPos Kar Jenis Kar Kelamin Foto Kar fd1(primary Key) fd2(transitivedependency) fd3(transitivedependency) (2NF) Sudah memenuhi aturan normalisasi 2NF karena tidak ditemukan ketergantungan parsial. (3NF) Karyawan = KdKar, NamaKar, AlamatKar, Kar, JenisKelamin, FotoKar, KdPosKar, KdPosisi PosisiKaryawan =KdPosisi, PosisiKar PosKaryawan = KdPosKar, KotaKar, KecKar, KelKar 2. Pelanggan (1NF) Sudah memuhi aturan normalisasi 1NF karena tidak ditemukan grup yang berulang dan hasil perhitungan. Kd Pel Nama Pel Alamat Pel Kota Pel Kec Pel Kel Pel KdPos Pel Pel Fax Pel fd1(primary Key) fd2(transitivedependency)

104 144 (2NF) Sudah memenuhi aturan normalisasi 2NF karena tidak ditemukan ketergantungan parsial. (3NF) Pelanggan = KdPel, NamaPel, AlamatPel, Pel, FaxPel, KdPosPel PosPelanggan = KdPosPel, KotaPel, KecPel, KelPel 3. Pemasok (1NF) Sudah memuhi aturan normalisasi 1NF karena tidak ditemukan grup yang berulang dan hasil perhitungan. KdPem NamaPem AlamatPem KotaPem KecPem KelPem KdPosPem Pem FaxPem fd1(primary Key) fd2(transitivedependency) (2NF) Sudah memenuhi aturan normalisasi 2NF karena tidak ditemukan ketergantungan parsial. (3NF) Pemasok = KdPem, NamaPem, AlamatPem, Pem, FaxPem, KdPosPem PosPemasok = KdPosPem, KotaPem, KecPem, KelPem 4. TugasProduksi Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdTugas Keterangan KdProduksi fd1(primary Key)

105 145 TugasProduksi = KdTugas, Keterangan, KdProduksi 5. DetilTugas Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdKar KdTugas StatusTugas TglMulai TglSelesai DeskTugas Deadline fd1(primary Key) DetilProduksi = KdKar, KdTugas, StatusTugas, TglMulai, TglSelesai, DeskTugas, Deadline 6. Pemasangan Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPemasagan TglPemasangan FotoHasil KdPemesanan fd1(primary Key) Pemasangan = KdPemasangan, TglPemasangan, FotoHasil, KdPemesanan 7. DetilPemasangan Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdKar KdPemasangan StatusPemasangan fd1(primary Key) DetilPemasangan = KdKar, KdPemasangan, StatusPemasangan

106 RumusBahanBaku Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdRumus NamaRumus Gambar Deskripsi fd1(primary Key) RumusBahanBaku = KdRumus, NamaRumus, Gambar, Deskripsi 9. DetilRumus Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdRumus KdBahanBaku SatuanRumus RumusUkuran fd1(primary Key) DetilRumus = KdRumus, KdBahanBaku, SatuanRumus,RumusUkuran 10. Pembelian Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPembelian TglPembelian StatusPembelian KdKar KdPengajuan KdPem fd1(primary Key) Pembelian = KdPembelian, TglPembelian, StatusPembelian, KdKaryawan, KdPengajuan, KdPem

107 DetilPembelian Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPembelian KdBahanBaku HargaBeli JumlahBeli fd1(primary Key) DetilPembelian = KdPembelian, KdBahanBaku, HargaBeli, JumlahBeli 12. PengajuanPembelian Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPengajuan TglPengajuan StatusPengajuan KdKar fd1(primary Key) PengajuanPembelian = KdPengajuan, TglPengajuan, StatusPengajuan, KdKar 13. DetilPengajuanBeli Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPengajuan KdBahanBaku JumlahAju fd1(primary Key) DetilPengajuanBeli = KdPengajuan, KdBahanBaku, JumlahAju

108 ReturPembelian Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdReturPemb TglRetur StatusRetur AlasanRetur KdKar KdPembelian fd1(primary Key) ReturPembelian = KdReturPemb, TglRetur, StatusRetur, AlasanRetur, KdKar, KdPembelian 15. DetilReturBeli Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdReturPemb KdBahanBaku JumlahRetur fd1(primary Key) DetilReturBeli = KdReturPemb, KdBahanBaku, JumlahRetur 16. PengambilanBahanBaku Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPengambilan TglPengambilan KdKar fd1(primary Key) PengambilanBahanBaku = KdPengambilan, TglPengambilan, KdKar

109 DetilPengambilanBahan Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPengambilan KdBahanBaku JumlahAmbil fd1(primary Key) DetilPengambilanBahan = KdPengambilan, KdBahanBaku, JumlahAmbil 18. TelpKayawan Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. TelpKar KdKar fd1(primary Key) TelpKaryawan = KdKar, TelpKar 19. TelpPelanggan Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. TelpPel KdPel fd1(primary Key) TelpPelanggan = KdPel, TelpPel

110 TelpPemasok Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. TelpPem KdPem fd1(primary Key) TelpPemasok = KdPem, TelpPem 21. BahanBaku (1NF) Sudah memuhi aturan normalisasi 1NF karena tidak ditemukan grup yang berulang dan hasil perhitungan. KdBahan NamaBahan Baku Baku KdTipe Bahan TipeBahan Baku KdSatuan SatuanBahan Harga Stok Bahan Baku Stok Min fd1(primary Key) fd2(transitive Dependecy) fd3(transitive Dependecy) (2NF) Sudah memenuhi aturan normalisasi 2NF karena tidak ditemukan ketergantungan parsial. (3NF) BahanBaku TipeBahan SatuanBahan = KdBahanBaku, NamaBahanBaku,Harga, Stok, StokMin, KdTipeBahan, KdSatuanBahan = KdTipeBahan, TipeBahanBaku = KdSatuanBahan, SatuanBahanBaku

111 Produksi Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta tidak ditemukan ketergantungan parsial dan transitif. Kd Nama TglMulai Status Jumlah Uk Uk Harga Kd Kd Produksi Barang Produksi Produksi Produksi Panjang Lebar Produksi Rumus Pemesanan fd1(primary Key) Produksi = KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkPanjang, UkLebar, HargaProduksi, KdRumus, KdPemesanan 23. TargetProduksi (1NF) TargetProduksi = TglPengiriman, TglPemasangan, Keterangan, KdPemesanan (2NF dan 3NF) Sudah memuhi aturan normalisasi 2NF, dan 3NF karena tidak ditemukan ketergantungan parsial dan transitif. TglPengiriman TglPemasangan Keterangan KdPemesanan fd1(primary Key) TargetProduksi = TglPengiriman, TglPemasangan, Keterangan, KdPemesanan 24. PembayaranPembelian Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif.

112 152 KdPembPembelian TglPembPembelian JumlahBayar KdPembelian KdKar fd1(primary Key) PembayaranPembelian = KdPembPembelian, TglPembPembelian, JumlahBayar, KdPembelian, KdKar 25. BarangJadi Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdBarangJadi TglBarangMasuk StatusBarangJadi KdPengiriman KdProduksi fd1(primary Key) BarangJadi = KdBarangJadi, TglBarangMasuk, StatusBarangJadi, KdPengiriman, KdProduksi 26. Pengiriman Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPengiriman TglPengiriman StatusPengiriman KdKar KdPemesanan fd1(primary Key) Pengiriman = KdPengiriman, TglPengiriman, StatusPengiriman, KdPemesanan, KdKar 27. Kontrak Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif.

113 153 KdKontrak Spesifikasi Keterangan Diskon TglKontrak StatusKontrak KdKar fd1(primary Key) Kontrak = KdKontrak, Spesifikasi, Keterangan, Diskon, TglKontrak, StatusKontrak, KdKar, KdPemesanan 28. Pemesanan (1NF) Sudah memuhi aturan normalisasi 1NF karena tidak ditemukan grup yang berulang dan hasil perhitungan. Kd Tgl Kd Kd TglPeng GmbPeng StatusPeng Nama Alamat Pemesanan Pemesanan Pel Kar Pemesanan Pemesanan Pemesanan Proyek Pemesanan fd1(primary Key) KdPosPemesanan KotaPemesanan KelPemesanan KecPemesanan fd2(transitive Dependency) (2NF) Sudah memenuhi aturan normalisasi 2NF karena tidak ditemukan ketergantungan parsial. (3NF) Pemesanan = KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPel, KdKar, KdPosPemesanan PosPemesanan = KdPosPemesanan, KotaPemesanan, KelPemesanan, KecPemesanan

114 RancanganKusen Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. Kd Rancangan Tgl Rancangan Gmb Rancangan Status Rancangan Uk Lubang Uk Jendela Keterangan Kd Pemesanan fd1(primary Key) RancanganKusen= KdRancangan, TglRancangan, GmbRancangan, StatusRancangan, UkLubang, UkJendela, Keterangan, KdPemesanan 30. PembayaranPemesanan Sudah memuhi aturan normalisasi 1NF, 2NF, dan 3NF karena tidak ditemukan grup yang berulang dan hasil perhitungan, serta ketergantungan parsial dan transitif. KdPembPemesanan TglPembPemesanan JumlahBayar KdKar KdPemesanan fd1(primary Key) PembayaranPemesanan = KdPembPemesanan, TglPembPemesanan, JumlahBayar, KdKar, KdPemesanan

115 Gambar 3.22ERD Setelah Normalisasi 155

116 Memvalidasi Relasi dengan User Transaction Tujuan dari langkah ini yaitu memastikan bahwa relasi-relasi yang berada dalam model data logikal sudah mendukung transaksi yang diperlukan. Transaksi-transaksi yang telah diidentifikasi, yaitu: 1. Data entries dan data updates 1. Memasukkan dan mengubah data pengajuan pemesanan 2. Memasukkan dan mengubah data pelanggan 3. Memasukkan dan mengubah data rumus bahan baku 4. Memasukkan dan mengubah data produksi 5. Memasukkan dan mengubah data kontrak 6. Memasukkan dan mengubah data rancangan kusen pintu jendela 7. Memasukkan dan mengubah data pemesanan 8. Memasukkan dan mengubah data target produksi 9. Memasukkan dan mengubah data tugas produksi 10. Memasukkan dan mengubah data pengambilan bahan baku 11. Memasukkan dan mengubah data barang jadi 12. Memasukkan dan mengubah data bahan baku 13. Memasukkan dan mengubah data pemasok 14. Memasukkan dan mengubah data pengajuan pembelian 15. Memasukkan dan mengubah data pembelian 16. Memasukkan dan mengubah data retur pembelian 17. Memasukkan dan mengubah data pengiriman 18. Memasukkan dan mengubah data pemasangan 19. Memasukkan dan mengubah data karyawan 20. Memasukkan dan mengubah data pembayaran pemesanan 21. Memasukkan dan mengubah data pembayaran pembelian 2. Data queries 1. Menampilkan pengajuan pemesanan berdasarkan identitas pelanggan 2. Menampilkan data bahan baku berdasarkan rumus bahan baku 3. Menampilkan data produksi berdasarkan nomor pengajuan pemesanan

117 Menampilkan rancangan kusen pintu jendela berdasarkan nomor pengajuan pemesanan 5. Menampilkan kontrak sesuai dengan pemesanan yang diajukan 6. Menampilkan pemesanan yang dibuat oleh karyawan 7. Menampilkan target produksi berdasarkan nomor pengajuan pemesanan 8. Menampilkan data tugas produksi dan nama karyawan yang terlibat didalamnya 9. Menampilkan data pengambilan bahan baku berdasarkan nama karyawan 10. Menampilkan data barang jadi berdasarkan kode produksi 11. Menampilkan data pembelian berdasarkan nomor pengajuan pembelian 12. Menampilkan data retur pembelian berdasarkan nomor pembelian 13. Menampilkan data pengiriman berdasarkan nomor pengajuan pemesanan 14. Menampilkan data pemasangan berdasarkan nomor pengajuan pemesanan 15. Menampilkan detil pengajuan pemesanan yang dibuat berdasarkan data karyawan 16. Menampilkan kontrak yang diurus oleh karyawan 17. Menampilkan data pengajuan pembelian yang diajukan oleh karyawan 18. Menampilkan data pembelian yang dibuat oleh karyawan 19. Menampilkan data retur pembelian yang diurus oleh karyawan 20. Menampilkan data pengiriman dan karyawan yang terlibat di dalamnya 21. Menampilkan data pemasangan yang dilakukan oleh karyawan 22. Menampilkan data barang jadi yang dikirim 23. Menampilkan rumus yang digunakan untuk produksi 24. Menampilkan pembagian tugas sesuai dengan nomor produksi

118 Menampilkan bahan baku yang dibeli melalui pembelian 26. Menampilkan pembelian berdasarkan nama pemasok 27. Menampilkan daftar bahan baku dalam pengajuan pembelian 28. Menampilkan daftar bahan baku dalam retur pembelian 29. Menampilkan daftar bahan baku dalam pengambilan bahan baku 30. Menampilkan data pembayaran pemesanan berdasarkan nama karyawan yang mengurusnya dan nomor pemesanan 31. Menampilkan data pembayaran pembelian berdasarkan nama karyawan yang mengurusnya dan nomor pembelian

119 Gambar 3.23ERDdengan Transaction Pathway 159

120 Memeriksa Integrity Constraints Tujuannya untuk memeriksa integrity constraint yang direpresentasikan dalam model data logikal.integrity Constraintsterdiri dari enam tipe, yaitu: 1. Required data Constraint ini sudah diidentifikasi pada perancangan basis data konseptualtahapan ketiga, yaitu mengidentifikasi dan mengasosiasikan atribut dengan tipe entitas atau relationship( ). 2. Attribute domain constraint Constraint ini sudah diidentifikasi pada perancangan basis data konseptual tahapan keempat, yaitu menentukan domain atribut( ). 3. Multiplicity Constraint ini sudah diidentifikasi pada perancangan basis data konseptual tahapan kedua, yaitu mengidentifikasi tipe relationship( ). 4. Entity Integrity Constraint ini sudah diidentifikasi pada perancangan basis data konseptual tahapan kelima, yaitu menentukan atribut dari candidate key dan primary key( ). 5. Referential Integrity Berikut adalah referentialintegrityyang telah dibuat: Tabel 3.49Hasil Referential Integrity Karyawan (KdKar, NamaKar, AlamatKar, Kar, JenisKelamin, FotoKar, KdPosKar, KdPosisi) PrimaryKey (KdKar) Foreign Key KdPosKarreferences PosKaryawan (KdPosKar) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KdPosisireferences PosisiKaryawan(KdPosisi) ON UPDATE CASCADE ON DELETE NO ACTION PosisiKaryawan (KdPosisi, PosisiKar) PrimaryKey (KdPosisi) PosKaryawan (KdPosKar, KotaKar, KecKar, KelKar) PrimaryKey (KdPosKar)

121 161 Pelanggan (KdPel, NamaPel, AlamatPel, Pel, FaxPel, KdPosPel) PrimaryKey (KdPel) Foreign KeyKdPosPelreferences PosPelanggan(KdPosPel) ON UPDATE CASCADE ON DELETE NO ACTION PosPelanggan (KdPosPel, KotaPel, KecPel, KelPel) PrimaryKey (KdPosPel) Pemasok (KdPem, NamaPem, AlamatPem, Pem, FaxPem, KdPosPem) PrimaryKey (KdPem) Foreign KeyKdPosPemreferences PosPemasok(KdPosPem) ON UPDATE CASCADE ON DELETE NO ACTION PosPemasok (KdPosPem,KotaPem, KecPem, KelPem) PrimaryKey (KdPosPem) TugasProduksi (KdTugas, Keterangan, KdProduksi) PrimaryKey (KdTugas) Foreign KeyKdProduksireferences Produksi (KdProduksi) ON UPDATE CASCADE ON DELETE NO ACTION DetilTugas (KdKar, KdTugas, StatusTugas, TglMulai, TglSelesai, DeskTugas, Deadline) PrimaryKey (KdKar, KdTugas) Foreign Key KdKarreferences Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdTugasreferences TugasProduksi (KdTugas) ON UPDATE CASCADE ON DELETE NO ACTION Pemasangan (KdPemasangan, TglPemasangan, FotoHasil, KdPemesanan) PrimaryKey (KdPemasangan) Foreign KeyKdPemesananreferences Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION DetilPemasangan (KdKar, KdPemasangan, StatusPemasangan) PrimaryKey (KdKar, KdPemasangan) Foreign Key KdKarreferences Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdPemasanganreferences Pemasangan (KdPemasangan) ON UPDATE CASCADE ON DELETE NO ACTION RumusBahanBaku (KdRumus, NamaRumus, Gambar, Deskripsi) PrimaryKey (KdRumus)

122 162 DetilRumus (KdRumus, KdBahanBaku, SatuanRumus, RumusUkuran) Primary Key (KdRumus, KdBahanBaku) Foreign KeyKdRumusreferences RumusBahanBaku (KdRumus) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdBahanBakureferences BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION Pembelian (KdPembelian, TglPembelian, StatusPembelian, KdKar, KdPengajuan, KdPem) PrimaryKey (KdPembelian) Foreign Key KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdPengajuanreferences PengajuanPembelian (KdPengajuan) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdPemreferences Pemasok (KdPem) ON UPDATE CASCADE ON DELETE NO ACTION DetilPembelian (KdPembelian, KdBahanBaku, HargaBeli, JumlahBeli) PrimaryKey (KdPembelian, KdBahanBaku) Foreign KeyKdPembelianreferences Pembelian (KdPembelian) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdBahanBakureferences BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION PengajuanPembelian (KdPengajuan, TglPengajuan, StatusPengajuan, KdKar) PrimaryKey (KdPengajuan) Foreign Key KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION DetilPengajuanBeli (KdPengajuan, KdBahanBaku, JumlahAju) PrimaryKey (KdPengajuan, KdBahanBaku) Foreign KeyKdPengajuanreferences PengajuanPembelian (KdPengajuan) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdBahanBakureferences BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION ReturPembelian (KdReturPemb, TglRetur, StatusRetur, AlasanRetur, KdKar, KdPembelian) PrimaryKey(KdReturPemb) Foreign Key KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KdPembelian references Pembelian (KdPembelian) ON UPDATE CASCADE

123 163 ON DELETE NO ACTION DetilReturBeli (KdReturPemb, KdBahanBaku, JumlahRetur) PrimaryKey (KdReturPemb, KdBahanBaku) Foreign KeyKdReturPembreferences ReturPembelian (KdReturPemb) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdBahanBakureferences BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION PengambilanBahanBaku (KdPengambilan, TglPengambilan, KdKar) PrimaryKey (KdPengambilan) Foreign Key KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION DetilPengambilanBahan (KdPengambilan, KdBahanBaku, JumlahAmbil) PrimaryKey (KdPengambilan, KdBahanBaku) Foreign KeyKdPengambilanreferences PengambilanBahanBaku (KdPosPem) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdBahanBakureferences BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION TelpKaryawan (KdKar,TelpKar) PrimaryKeyTelpKar Foreign KeyKdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION TelpPelanggan (KdPel, TelpPel) PrimaryKeyTelpPel Foreign KeyKdPelreferences Pelanggan (KdPel) ON UPDATE CASCADE ON DELETE NO ACTION TelpPemasok (KdPem, TelpPem) PrimaryKeyTelpPem Foreign KeyKdPemreferences Pemasok (KdPem) ON UPDATE CASCADE ON DELETE NO ACTION BahanBaku (KdBahanBaku, NamaBahanBaku, KdTipeBahan, KdSatuanBahan, Harga, Stok, StokMin) PrimaryKey (KdBahanBaku) Foreign KeyKdTipeBahanreferences TipeBahan (KdTipeBahan) ON UPDATE CASCADE ON DELETE NO ACTION

124 164 Foreign KeyKdSatuanBahanreferences SatuanBahan (KdSatuanBahan) ON UPDATE CASCADE ON DELETE NO ACTION TipeBahan (KdTipeBahan, TipeBahanBaku) PrimaryKey (KdTipeBahan) SatuanBahan (KdSatuanBahan, SatuanBahanBaku) PrimaryKey (KdSatuanBahan) Produksi (KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaProduksi, KdRumus, KdPemesanan) PrimaryKey (KdProduksi) Foreign KeyKdRumusreferences RumusBahanBaku (KdRumus) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdPemesananreferences Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION TargetProduksi (TglPengiriman, TglPemasangan, Keterangan, KdPemesanan) PrimaryKey (TglPengiriman, TglPemasangan, KdPemesanan) Foreign KeyKdPemesananreferences Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION PembayaranPembelian (KdPembPembelian, TglPembPembelian, JumlahBayar, KdPembelian, KdKar) PrimaryKey (KdPembPembelian) Foreign KeyKdPembelianreferences Pembelian (KdPembelian) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION BarangJadi (KdBarangJadi, TglBarangMasuk, StatusBarangJadi, KdPengiriman, KdProduksi) PrimaryKey (KdBarangJadi) Foreign Key KdPengiriman references Pengiriman (KdPengiriman) ON UPDATECASCADE ON DELETE NO ACTION Foreign KeyKdProduksireferences Produksi (KdProduksi) ON UPDATE CASCADE ON DELETE NO ACTION Pengiriman (KdPengiriman, TglPengiriman, StatusPengiriman, KdPemesanan, KdKar) PrimaryKey (KdPengiriman)

125 165 Foreign KeyKdKarreferences Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION ForeignKeyKdPemesananreferences Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION Kontrak (KdKontrak, Spesifikasi, Keterangan, Diskon, TglKontrak, StatusKontrak, KdKar, KdPemesanan) PrimaryKey (KdKontrak) ForeignKey KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION ForeignKeyKdPemesananreferences Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION Pemesanan (KdPemesanan, TglPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, KdPel, KdKar, KdPosPemesanan) PrimaryKey (KdPemesanan) ForeignKey KdPel references Pelanggan (KdPel) ON UPDATE CASCADE ON DELETE NO ACTION ForeignKey KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KdPosPemesanan references PosPemesanan (KdPosPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION PosPemesanan (KdPosPemesanan, KotaPemesanan, KecPemesanan, KelPemesanan) PrimaryKey (KdPosPemesanan) RancanganKusen (KdRancangan, TglRancangan, GmbRancangan, StatusRancangan, UkLubang, UkJendela, Keterangan, KdPemesanan) PrimaryKey (KdRancangan) Foreign KeyKdPemesananreferences Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION PembayaranPemesanan (KdPembPemesanan, TglPembPemesanan, JumlahBayar, KdKar, KdPemesanan) PrimaryKey (KdPembPemesanan) Foreign Key KdKar references Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION Foreign KeyKdPemesananreferences Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION

126 General Constraint PT Luxus Indo Prima memiliki beberapa batasan, yaitu: 1. Seorang karyawan produksi hanya dapat melakukan satu tugas produksi pada waktu yang bersamaan 2. Tugas produksi harus bisa diselesaikan sesuai tanggal pengiriman yang sudah ditentukan 3. Tugas produksi harus bisa diselesaikan sesuai tanggal pemasangan yang sudah ditentukan Review Model Data Logikal dengan User Tujuannya untuk memeriksa ulang model data logikal dengan pengguna untuk memastikan bahwa mereka sudah mempertimbangkan model dengan benar dari data yang diperlukan dalam perusahaan. Perancangan hingga model data logikalsudah dibahas dengan Wakil Direktur PT Luxus Indo Prima dan semua kebutuhan sudah sesuai dengan kebutuhan perusahaan Menggabungkan Model Data Logikal ke Dalam Model Global Tujuannya untuk menggabungkan model data logikal lokal ke dalam model data logikal global tunggal untuk merepresentasikan semua pandangan pengguna terhadap basis data. Tahapan ini hanya dilakukan jika menggunakan multiuserviews, sedangkan perancangan basis data ini menggunakan singeluserviews sehingga tahapan ini tidak dibahas Mempertimbangkan Perkembangan di Masa Depan Tujuan dari langkah ini yaitu menentukan segala perubahan signifikan yang mungkin terjadi pada masa depan dan menaksirkan kemungkinan untuk menangani perubah tersebut. Setelah perancangan basis data logikal ini diperiksa, tidak ditemukan perubahan yang signifikan.

127 Perancangan Basis Data Fisikal Perancangan basis data fisikal yaitu proses yang menghasilkan deskripsi implementasi basis data pada penyimpanan sekunder, mendeskripsikan hubungan dasar, files organization, indeks yang digunakan untuk mencapai akses yang efisien terhadap data, integrityconstraints, dan juga pengukuran keamanan. Hal-hal yang perlu dilakukan dalam tahap ini yaitu: 1. Menerjemahkan model data logikal untuk DBMS yang digunakan 2. Merancang file organizations dan index 3. Merancang user view 4. Merancang mekanisme keamanan 5. Mempertimbangkan pengenalan redundansi terkontrol 6. Mengawasi dan mengendalikan sistem operasional Menerjemahkan Model Data Logikal untuk DBMS yang Digunakan Tujuannya untuk menghasilkan sebuah skema basis data relasional dari model data logis yang dapat diimplementasikan dalam DBMS yang dipilih. Terdapat beberapa langkah dalam tahapan ini, yaitu: 1. Merancang relasi-relasi dasar Tujuannya untuk menentukan cara merepresentasikan relasi-relasi dasar yang diidentifikasikan dalam model data logikal global ke dalam target DBMS.Berikut merupakan informasi yang diidentifikasikan melalui Database Design Language (DBDL): 1. Karyawan Domain KodeKaryawan: Fixed length character string, length 5 Domain NamaKaryawan: Variable length varchar string, length 40 Domain AlamatKaryawan: Variable length varchar string, length 100 Domain Karyawan: Variable length varchar string, length 50 Domain JenisKelamin: Fixed length character string, length 1 Domain FotoKaryawan: Variable length varchar string, length 20

128 168 Domain KodePosKaryawan: Fixed length character string, length 5 Domain KodePosisi: Fixed length character string, length 3 Karyawan( KdKar KodeKaryawan NOT NULL, NamaKar NamaKaryawan NOT NULL, AlamatKar AlamatKaryawan NOT NULL, Kar Karyawan NOT NULL, JenisKelamin JenisKelamin NOT NULL, FotoKar FotoKaryawan NOT NULL, KdPosKar KodePosKaryawan NOT NULL, KdPosisi KodePosisi NOT NULL, PRIMARY KEY (KdKar) FOREIGN KEY (KdPosKar) REFERENCES PosKaryawan (KdPosKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPosisi)REFERENCES PosisiKaryawan(KdPosisi) ON UPDATE CASCADE ON DELETE NO ACTION); 2. PosisiKaryawan Domain KodePosisiKaryawan: Fixed length character string, length 5 Domain PosisiKaryawan: Variable length varchar string, length 40 PosisiKaryawan( KdPosisi KodePosisiKaryawan NOT NULL, PosisiKar PosisiKaryawan NOT NULL, PRIMARY KEY (KdPosisi) ); 3. PosKaryawan Domain KodePosKaryawan: Fixed length character string, length 5 Domain KotaKaryawan: Variable length varchar string, length 40 Domain KecamatanKaryawan: Variable length varchar string, length 40 Domain KelurahanKaryawan: Variable length varchar string, length 40 PosKaryawan(

129 169 KdPosKar KodePosKaryawan NOT NULL, KotaKar KotaKaryawan NOT NULL, KecKar KecamatanKaryawan NOT NULL, KelKar KelurahanKaryawan NOT NULL, PRIMARY KEY (KdPosKar) ); 4. Pelanggan Domain KodePelanggan: Fixed length character string, length 5 Domain NamaPelanggan: Variable length varchar string, length 40 Domain AlamatPelanggan: Variable length varchar string, length 100 Domain Pelanggan: Variable length varchar string, length 50 Domain FaxPelanggan: Variable length varchar string, length 15 Domain KodePosPelanggan: Fixed length character string, length 5 Pelanggan( KdPel KodePelanggan NOT NULL, NamaPel NamaPelanggan NOT NULL, AlamatPel AlamatPelanggan NOT NULL, Pel Pelanggan NOT NULL, FaxPel FaxPelanggan NOT NULL, KdPosPel KodePosPelanggan NOT NULL, PRIMARY KEY (KdPel) FOREIGN KEY (KdPosPel) REFERENCES PosPelanggan (KdPosPel) ON UPDATE CASCADE ON DELETE NO ACTION); 5. PosPelanggan Domain KodePosPelanggan: Fixed length character string, length 5 Domain KotaPelanggan: Variable length varchar string, length 40 Domain KecamatanPelanggan: Variable length varchar string, length 40 Domain KelurahanPelanggan: Variable length varchar string, length 40 Pos Pelanggan( KdPosPel KodePosPelanggan NOT NULL,

130 170 KotaPel KotaPelanggan NOT NULL, KecPel KecamatanPelanggan NOT NULL, KelPel KelurahanPelanggan NOT NULL, PRIMARY KEY (KdPosPel) ); 6. Pemasok Domain KodePemasok: Fixed length character string, length 5 Domain NamaPemasok: Variable length varchar string, length 40 Domain AlamatPemasok: Variable length varchar string, length 100 Domain Pemasok: Variable length varchar string, length 5 Domain FaxPemasok: Variable length varchar string, length 15 Domain KdPosPemasok: Fixed length character string, length 5 Pemasok( KdPem KodePemasok NOT NULL, NamaPem NamaPemasok NOT NULL, AlamatPem AlamatPemasok NOT NULL, Pem Pemasok NOT NULL, FaxPem FaxPemasok NOT NULL, KdPosPem KodePosPemasok NOT NULL, PRIMARY KEY (KdPem) FOREIGN KEY (KdPosPemasok) REFERENCES PosPemasok (KdPosPemasok) ON UPDATE CASCADE ON DELETE NO ACTION); 7. PosPemasok Domain KodePosPemasok: Fixed length character string, length 5 Domain KotaPemasok: Variable length varchar string, length 40 Domain KecamatanPemasok: Variable length varchar string, length 40 Domain KelurahanPemasok: Variable length varchar string, length 40 PosPemasok( KdPosPem KodePosPemasok NOT NULL,

131 171 KotaPem KotaPemasok NOT NULL, KecPem KecamatanPemasok NOT NULL, KelPem KelurahanPemasok NOT NULL, PRIMARY KEY (KdPosPem) ); 8. TugasProduksi Domain KodeTugasProduksi: Fixed length character string, length 7 Domain KeteranganProduksi: Variable length varchar string, length 100 Domain KodeProduksi: Fixed length character string, length 7 TugasProduksi( KdTugas KodeTugasProduksi NOT NULL, Keterangan KeteranganProduksi NOT NULL, KdProduksi KodeProduksi NOT NULL, PRIMARY KEY (KdTugas) FOREIGN KEY (KdProduksi) REFERENCES Produksi (KdProduksi) ON UPDATE CASCADE ON DELETE NO ACTION); 9. DetilTugas Domain KodeKaryawan: Fixed length character string, length 5 Domain KodeTugasProduksi: Fixed length character string, length 7 Domain StatusTugas: Fixed length character string, length 1 Domain JatuhTempoProduksi: Datetime Domain TanggalMulai: Datetime Doman TanggalSelesai: Datetime Domain DeskripsiTugas: Variable length varchar string, length 80 DetilTugas( KdKar KodeKaryawan NOT NULL, KdTugas KodeTugasProduksi NOT NULL, StatusTugas StatusTugas NOT NULL, Deadline JatuhTempoProduksi NOT NULL, TglMulai TanggalMulai NOT NULL,

132 172 TglSelesai TanggalSelesai NOT NULL, DeskTugas DeskripsiTugas NOT NULL, PRIMARY KEY (KdKar, KdTugas) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdTugas) REFERENCES TugasProduksi (KdTugas) ON UPDATE CASCADE ON DELETE NO ACTION); 10. Pemasangan Domain KodePemasangan: Fixed length character string, length 7 Domain TanggalPemasangan: Datetime Domain FotoHasilPemasangan: Variable length varchar string, length 30 Domain KodePemesanan: Fixed length character string, length 7 Pemasangan( KdPemasangan KodePemasangan NOT NULL, TglPemasangan TanggalPemasangan NOT NULL, FotoHasil FotoHasilPemasangan NOT NULL, KdPemesanan KodePemesanan NOT NULL, PRIMARY KEY (KdPemasangan) FOREIGN KEY (KdPemasangan) REFERENCES Pemasangan (KdPemasangan) ON UPDATE CASCADE ON DELETE NO ACTION); 11. DetilPemasangan Domain KodeKaryawan: Fixed length character string, length 5 Domain KodePemasangan: Fixed length character string, length 7 Domain StatusPemasangan: Fixed length character string, length 1 DetilPemasangan( KdKar KodeKaryawan NOT NULL, KdPemasangan KodePemasangan NOT NULL, StatusPemasangan StatusPemasangan NOT NULL,

133 173 PRIMARY KEY (KdKar, KdPemasangan) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPemasangan) REFERENCES Pemasangan (KdPemasangan) ON UPDATE CASCADE ON DELETE NO ACTION); 12. RumusBahanBaku Domain KodeRumusBahan: Fixed length character string, length 5 Domain NamaRumusBahan: Variable length varchar string, length 40 Domain GambarRancangan: Variable length varchar string, length 30 Domain DeskripsiRumus: Variable length varchar string, length 100 RumusBahanBaku( KdRumus KodeRumusBahan NOT NULL, NamaRumus NamaRumusBahan NOT NULL, Gambar GambarRancangan NOT NULL, Deskripsi DeskripsiRumus NOT NULL, PRIMARY KEY (KdRumus) ); 13. DetilRumus Domain KodeRumusBahan: Fixed length character string, length 5 Domain KodeBahanBaku: Fixed length character string, length 5 Domain SatuanRumus: Fixed length character string, length 1 Domain RumusUkuran: Variable length varchar string, length 100 DetilRumus( KdRumus KodeRumusBahan NOT NULL, KdBahanBaku KodeBahanBaku NOT NULL, SatuanRumus SatuanRumus NOT NULL, RumusUkuran RumusUkuran NOT NULL, PRIMARY KEY (KdRumus, KdBahanBaku) FOREIGN KEY (KdRumus) REFERENCES RumusBahanBaku (KdRumus) ON UPDATE CASCADE ON DELETE NO ACTION

134 174 FOREIGN KEY (KdBahanBaku) REFERENCES BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION); 14. Pembelian Domain KodePembelian: Fixed length character string, length 7 Domain TanggalPembelian: Datetime Domain StatusPembelian: Fixed length character string, length 1 Domain KodeKaryawan: Fixed length character string, length 5 Domain KodePengajuanBeli: Fixed length character string, length 7 Domain KodePemasok: Fixed length character string, length 5 Pembelian( KdPembelian KodePembelian NOT NULL, TglPembelian TanggalPembelian NOT NULL, StatusPembelian StatusPembelian NOT NULL, KdKar KodeKaryawan NOT NULL, KdPengajuan KodePengajuanBeli NOT NULL, KdPem KodePemasok NOT NULL, PRIMARY KEY (KdPembelian) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPengajuan) REFERENCES PengajuanPembelian (KdPengajuan) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPem) REFERENCES Pemasok (KdPem) ON UPDATE CASCADE ON DELETE NO ACTION); 15. DetilPembelian Domain KodePembelian: Fixed length character string, length 7 Domain KodeBahanBaku: Fixed length character string, length 5 Domain JumlahBeli: Small Integer Domain HargaBeli: Integer DetilPembelian(

135 175 KdPembelian KodePembelian NOT NULL, KdBahanBaku KodeBahanBaku NOT NULL, JumlahBeli JumlahPembelian NOT NULL, HargaBeli HargaBahanBaku NOT NULL, PRIMARY KEY (KdPembelian, KdBahanBaku) FOREIGN KEY (KdPembelian) REFERENCES Pembelian (KdPembelian) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdBahanBaku) REFERENCES BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION); 16. PengajuanPembelian Domain KodePengajuanBeli: Fixed length character string, length 7 Domain TanggalPengajuanBeli: Datetime Domain StatusPengajuanBeli: Fixed length character string, length 1 Domain KodeKaryawan: Fixed length character string, length 5 PengajuanPembelian( KdPengajuan KodePengajuanBeli NOT NULL, TglPengajuan TanggalPengajuanBeli NOT NULL, StatusPengajuan StatusPengajuanBeli NOT NULL, KdKar KodeKaryawan NOT NULL, PRIMARY KEY (KdPengajuan) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION); 17. DetilPengajuanBeli Domain KodePengajuanBeli: Fixed length character string, length 7 Domain KodeBahanBaku: Fixed length character string, length 5 Domain JumlahPengajuanBeli: Small Integer DetilPengajuanBeli( KdPengajuan KodePengajuanBeli NOT NULL, KdBahanBaku KodeBahanBaku NOT NULL,

136 176 JumlahAju JumlahPengajuanBeli NOT NULL, PRIMARY KEY (KdPengajuan, KdBahanBaku) FOREIGN KEY (KdPengajuan) REFERENCES PengajuanPembelian (KdPengajuan) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdBahanBaku) REFERENCES BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION); 18. ReturPembelian Domain KodeReturBeli: Fixed length character string, length 7 Domain TanggalReturBeli: Datetime Domain StatusReturBeli: Fixed length character string, length 1 Domain AlasanReturBeli: Variable length varchar string, length 20 Domain KodeKaryawan: Fixed length character string, length 5 Domain KodePembelian: Fixed length character string, length 7 ReturPembelian( KdReturPemb KodeReturBeli NOT NULL, TglRetur TanggalReturBeli NOT NULL, StatusRetur StatusReturBeli NOT NULL, AlasanRetur AlasanReturBeli NOT NULL, KdKar KodeKaryawan NOT NULL, KdPembelian KodePembelian NOT NULL, PRIMARY KEY (KdReturPemb) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPembelian) REFERENCES Pembelian (KdPembelian) ON UPDATE CASCADE ON DELETE NO ACTION); 19. DetilReturBeli Domain KodeReturBeli: Fixed length character string, length 7 Domain KodeBahanBaku: Fixed length character string, length 5 Domain JumlahReturBeli: Small Integer

137 177 DetilReturBeli( KdReturPemb KodeReturBeli NOT NULL, KdBahanBaku KodeBahanBaku NOT NULL, JumlahRetur JumlahReturBeli NOT NULL, PRIMARY KEY (KdReturPemb, KdBahanBaku) FOREIGN KEY (KdReturPemb) REFERENCES ReturPembelian (KdReturPemb) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdBahanBaku) REFERENCES BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION); 20. PengambilanBahanBaku Domain KodeAmbilBahan: Fixed length character string, length 7 Domain TanggalAmbilBahan: Datetime Domain KodeKaryawan: Fixed length character string, length 5 PengambilanBahanBaku( KdPengambilan KodeAmbilBahan NOT NULL, TglPengambilan TanggalAmbilBahan NOT NULL, KdKar KodeKaryawan NOT NULL, PRIMARY KEY (KdPengambilan) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION); 21. DetilPengambilanBahan Domain KodeAmbilBahan: Fixed length character string, length 7 Domain KodeBahanBaku: Fixed length character string, length 5 Domain JumlahAmbilBahan: Small Integer DetilPengambilanBahan( KdPengambilan KodeAmbilBahan NOT NULL, KdBahanBaku KodeBahanBaku NOT NULL, JumlahAmbil JumlahAmbilBahan NOT NULL, PRIMARY KEY (KdPengambilan, KdBahanBaku)

138 178 FOREIGN KEY (KdPengambilan) REFERENCES PengambilanBahanBaku (KdPengambilan) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdBahanBaku) REFERENCES BahanBaku (KdBahanBaku) ON UPDATE CASCADE ON DELETE NO ACTION); 22. TelpKayawan Domain KodeKaryawan: Fixed length character string, length 5 Domain TeleponKaryawan: Variable length varchar string, length 15 TelpKaryawan( KdKar KodeKaryawan NOT NULL, TelpKar TeleponKaryawan NOT NULL, PRIMARY KEY (TelpKar) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION); 23. TelpPelanggan Domain KodePelanggan: Fixed length character string, length 5 Domain TeleponPelanggan: Variable length varchar string, length 15 TelpPelanggan( KdPel KodePelanggan NOT NULL, TelpPel TeleponPelanggan NOT NULL, PRIMARY KEY (TelpPel) FOREIGN KEY (KdPel) REFERENCES Pelanggan (KdPel) ON UPDATE CASCADE ON DELETE NO ACTION); 24. TelpPemasok Domain KodePemasok: Fixed length character string, length 5 Domain TeleponPemasok: Variable length varchar string, length 15 TelpPemasok( KdPem KodePemasok NOT NULL,

139 179 TelpPem TeleponPemasok NOT NULL, PRIMARY KEY (TelpPem) FOREIGN KEY (KdPem) REFERENCES Pemasok (KdPem) ON UPDATE CASCADE ON DELETE NO ACTION); 25. BahanBaku Domain KodeBahanBaku: Fixed length character string, length 5 Domain NamaBahanBaku: Variable length varchar string, length 40 Domain KodeTipeBahan: Fixed length character string, length 3 Domain KodeSatuanBahan: Fixed length character string, length 3 Domain HargaBahanBaku: Integer Domain StokBahanBaku: SmallInteger Domain StokMinimalBahan: SmallInteger BahanBaku( KdBahanBaku KodeBahanBaku NOT NULL, NamaBahanBaku NamaBahanBaku NOT NULL, KdTipeBahan KodeTipeBahan NOT NULL, KdSatuanBahan KodeSatuanBahan NOT NULL, Harga HargaBahanBaku NOT NULL, Stok StokBahanBaku NOT NULL, StokMin StokMinimalBahan NOT NULL, PRIMARY KEY (KdBahanBaku) FOREIGN KEY (KdTipeBahan) REFERENCES TipeBahan (KdTipeBahan) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdSatuanBahan) REFERENCES SatuanBahan (KdSatuanBahan) ON UPDATE CASCADE ON DELETE NO ACTION); 26. TipeBahan Domain KodeTipeBahanBaku: Fixed length character string, length 3 Domain TipeBahanBaku: Variable length varchar string, length 20 TipeBahan(

140 180 KdTipeBahan KodeTipeBahanBaku NOT NULL, TipeBahanBaku TipeBahanBaku NOT NULL, PRIMARY KEY (KdTipeBahan) ); 27. SatuanBahan Domain KodeSatuanBahanBaku: Fixed length character string, length 3 Domain SatuanBahanBaku: Variable length varchar string, length 5 SatuanBahan( KdSatuanBahan KodeSatuanBahanBaku NOT NULL, SatuanBahanBaku SatuanBahanBaku NOT NULL, PRIMARY KEY (KdSatuanBahan) ); 28. Produksi Domain KodeProduksi: Fixed length character string, length 7 Domain NamaBarangProduksi: Variable length varchar string, length 40 Domain TanggalMulaiProduksi: Datetime Domain StatusProduksi: Fixed length character string, length 1 Domain JumlahProduksi: Small Integer Domain UkuranTinggi: Small Integer Domain UkuranLebar: Small Integer Domain HargaProduksi: Integer Domain KodeRumusBahan: Fixed length character string, length 5 Domain KodePemesanan: Fixed length character string, length 7 Produksi( KdProduksi KodeProduksi NOT NULL, NamaBarang NamaBarangProduksi NOT NULL, TglMulaiProduksi TanggalMulaiProduksi NOT NULL, StatusProduksi StatusProduksi NOT NULL, JumlahProduksi JumlahProduksi NOT NULL, UkTinggi UkuranTinggi NOT NULL, UkLebar UkuranLebar NOT NULL,

141 181 HargaJual HargaProduksi NOT NULL, KdRumus KodeRumusBahan NOT NULL, KdPemesanan KodePemesanan NOT NULL, PRIMARY KEY (KdProduksi) FOREIGN KEY (KdRumus) REFERENCES RumusBahanBaku (KdRumus) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPemesanan) REFERENCES Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION); 29. TargetProduksi Domain TanggalPengiriman: Date Domain TanggalPemasangan: Date Domain KeteranganTarget: Variable length varchar string, length 100 Domain KodePemesanan: Fixed length character string, length 7 TargetProduksi( TglPengiriman TanggalPengiriman NOT NULL, TglPemasangan TanggalPemasangan NOT NULL, Keterangan KeteranganTarget NOT NULL, KdPemesanan KodePemesanan NOT NULL,PRIMARY KEY (TglPengiriman, TglPemasangan, KdPemesanan) FOREIGN KEY (KdPemesanan) REFERENCES Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION); 30. PembayaranPembelian Domain KodePembayaranBeli: Fixed length character string, length 7 Domain TanggalPembayaranBeli: Datetime Domain JumlahBayar: Integer Domain KodePembelian: Fixed length character string, length 7 Domain KodeKaryawan: Fixed length character string, length 5 PembayaranPembelian( KdPembPembelian KodePembayaranBeli NOT NULL,

142 182 TglPembPembelian TanggalPembayaranBeli NOT NULL, JumlahBayar JumlahBayar NOT NULL, KdPembelian KodePembelian NOT NULL, KdKar KodeKaryawan NOT NULL, PRIMARY KEY (KdPembPembelian) FOREIGN KEY (KdPembelian) REFERENCES Pembelian (KdPembelian) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION); 31. BarangJadi Domain KodeBarangJadi: Fixed length character string, length 7 Domain TanggalBarangMasuk: Datetime Domain StatusBarangJadi: Fixed length character string, length 1 Domain KodePengiriman: Fixed length character string, length 7 Domain KodeProduksi: Fixed length character string, length 7 BarangJadi( KdBarangJadi KodeBarangJadi NOT NULL, TglBarangMasuk TanggalBarangMasuk NOT NULL, StatusBarangJadi StatusBarangJadi NOT NULL, KdPengiriman KodePengiriman NOT NULL, KdProduksi KodeProduksi NOT NULL, PRIMARY KEY (KdBarangJadi) FOREIGN KEY (KdPengiriman) REFERENCES Pengiriman (KdPengiriman) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdProduksi) REFERENCES Produksi (KdProduksi) ON UPDATE CASCADE ON DELETE NO ACTION);

143 Pengiriman Domain KodePengiriman: Fixed length character string, length 7 Domain TanggalPengiriman: Datetime Domain StatusPengiriman: Fixed length character string, length 1 Domain KodePemesanan: Fixed length character string, length 7 Domain KodeKaryawan: Fixed length character string, length 5 Pengiriman( KdPengiriman KodePengiriman NOT NULL, TglPengiriman TanggalPengiriman NOT NULL, StatusPengiriman StatusPengiriman NOT NULL, KdPemesanan KodePemesanan NOT NULL, KdKar KodeKaryawan NOT NULL, PRIMARY KEY (KdPengiriman) FOREIGN KEY (KdPemesanan) REFERENCES Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION); 33. Kontrak Domain KodeKontrak: Fixed length character string, length 7 Domain SpesifikasiKontrak: Variable length varchar string, length200 Domain KeteranganKontrak: Variable length varchar string, length 200 Domain DiskonPemesanan: Tiny Integer Domain TanggalKontrak: Datetime Domain StatusKontrak: Fixed length character string, length 1 Domain KodeKaryawan: Fixed length character string, length 5 Domain KodePemesanan: Fixed length character string, length 7 Kontrak( KdKontrak KodeKontrak NOT NULL, Spesifikasi SpesifikasiKontrak NOT NULL, Keterangan KeteranganKontrak NOT NULL,

144 184 Diskon DiskonPemesanan NOT NULL, TglKontrak TanggalKontrak NOT NULL, StatusKontrak StatusKontrak NOT NULL, KdKar KodeKaryawan NOT NULL, KdPemesanan KodePemesanan NOT NULL, PRIMARY KEY (KdKontrak) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPemesanan) REFERENCES Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION); 34. Pemesanan Domain KodePemesanan: Fixed length character string, length 7 Domain TanggalPemesanan: Datetime Domain TglPengajuanPemesanan: Datetime Domain GmbPengajuanPemesanan: Variable length varchar string, length 30 Domain StatusPengPemesanan: Fixed length character string, length 1 Domain NamaProyek: Variable length varchar string, length 40 Domain AlamatPemesanan: Variable length varchar string, length 100 Domain KodePelanggan: Fixed length character string, length 5 Domain KodeKaryawan: Fixed length character string, length 5 Domain KodePosPemesanan: Fixed length character string, length 5 Pemesanan( KdPemesanan KodePemesanan NOT NULL, TglPemesanan TanggalPemesanan NOT NULL, TglPengPemesanan TglPengajuanPemesanan NOT NULL, GmbPengPemesanan GmbPengajuanPemesanan NOT NULL, StatusPengPemesanan StatusPengPemesanan NOT NULL, NamaProyek NamaProyek NOT NULL, AlamatPemesanan AlamatPemesanan NOT NULL, KdPel KodePelanggan NOT NULL,

145 185 KdKar KodeKaryawan NOT NULL, KdPosPemesanan KodePosPemesanan NOT NULL, PRIMARY KEY (KdPemesanan) FOREIGN KEY (KdPel) REFERENCES Pelanggan (KdPel) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPosPemesanan) REFERENCES PosPemesanan (KdPosPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION); 35. PosPemesanan Domain KodePosPemesanan: Fixed length character string, length 5 Domain KotaPemesanan: Variable length varchar string, length 40 Domain KecamatanPemesanan: Variable length varchar string, length 40 Domain KelurahanPemesanan: Variable length varchar string, length 40 PosPemesanan( KdPosPemesanan KodePosPemesanan NOT NULL, KotaPemesanan KotaPemesanan NOT NULL, KecPemesanan KecamatanPemesanan NOT NULL, KelPemesanan KelurahanPemesanan NOT NULL, PRIMARY KEY (KdPosPemesanan) ); 36. RancanganKusen Domain KodeRancanganKusen: Fixed length character string, length 7 Domain TanggalRancanganKusen: Datetime Domain GmbRancanganKusen: Variable length varchar string, length 30 Domain StatusRancanganKusen: Fixed length character string, length 1 Domain UkuranLubang: Small Integer Domain UkuranJendela: Small Integer Domain KeteranganRancangan: Variable length varchar string, length 100 Domain KodePemesanan: Fixed length character string, length 7

146 186 RancanganKusen( KdRancangan KodeRancanganKusen NOT NULL, TglRancangan TanggalRancanganKusen NOT NULL, GmbRancangan GambarRancanganKusen NOT NULL, StatusRancangan StatusRancanganKusen NOT NULL, UkLubang UkuranLubang NOT NULL, UkJendela UkuranJendela NOT NULL, Keterangan KeteranganRancangan NOT NULL, KdPemesanan KodePemesanan NOT NULL, PRIMARY KEY (KdRancangan) FOREIGN KEY (KdPemesanan) REFERENCES Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION); 37. PembayaranPemesanan Domain KdPembayaranPesan: Fixed length character string, length 7 Domain TglPembayaranPesan: Datetime Domain JumlahBayar: Integer Domain KdKar: Fixed length character string, length 5 Domain KdPemesanan: Fixed length character string, length 7 PembayaranPemesanan( KdPembPemesanan KodePembayaranPesan NOT NULL, TglPembPemesanan TanggalPembayaranPesan NOT NULL, JumlahBayar JumlahBayar NOT NULL, KdKar Kode Karyawan NOT NULL, KdPemesanan Kode Pemesanan NOT NULL, PRIMARY KEY (KdPembPemesanan) FOREIGN KEY (KdKar) REFERENCES Karyawan (KdKar) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (KdPemesanan) REFERENCES Pemesanan (KdPemesanan) ON UPDATE CASCADE ON DELETE NO ACTION);

147 Merancang representasi untuk derived data Tujuannya untuk menentukan cara untuk mewakili derived data yang berada dalam model data logikal dalam DBMS yang dipilih. Terdapat beberapa atribut derived data yang ditemukan, yaitu: a. Atribut TotalPembelian pada DetilPembelian yang merepresentasikan besar pembelian. Atribut ini didapat dari perkalian antara JumlahBeli dan HargaBeli. b. Attribut TotalHargaProduksi pada Produksi yang merepresentasikan besar harga produksi. Attribut ini didapat dari perkalian antara JumlahProduksi dan HargaProduksi. Berdasarkan pertimbangan performa dan efisiensi space maka atribut TotalPembelian dan TotalHargaProduksi tidak direpresentasikan secara fisik di dalam database. Kedua atribut tersebut dapat diperoleh dengan menggunakan query sederhana. 3. Merancang general constraint Tujuannya untuk menentukan general constraint untuk DBMS yang dipilih. Terdapat beberapa general constraint yang sudah ditentukan sebelumnya, yaitu: a. Seorang karyawan produksi hanya dapat melakukan satu tugas produksi pada waktu yang bersamaan. CREATE TRIGGER tugasmaks BEFORE INSERT ON DetilTugas FOR EACH ROW BEGIN DECLARE msg VARCHAR(255); IF EXISTS( SELECT Kdkar FROM detiltugas WHERE StatusTugas='1' and Kdkar=new.Kdkar) THEN SET msg = concat('melanggar General Constraint: Karyawan hanya boleh memiliki satu tugas yang sedang aktif'); SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = msg; END IF;

148 188 END b. Tugas produksi harus bisa diselesaikan sesuai tanggal pengiriman yang sudah ditentukan. CREATE TRIGGER targetpengiriman BEFORE INSERT ON Pengiriman FOR EACH ROW BEGIN DECLARE msg VARCHAR(255); IF EXISTS( SELECT a.tglpengiriman FROM TargetProduksi a WHERE new.tglpengiriman > a.tglpengiriman AND new.kdpemesanan = a.kdpemesanan) THEN SET msg = concat('melanggar General Constraint: Tanggal Pengiriman tidak boleh lebih lama dari Tanggal Pengiriman pada TargetProduksi'); SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = msg; END IF; END c. Tugas produksi harus bisa diselesaikan sesuai tanggal pemasangan yang sudah ditentukan. CREATE TRIGGER targetpemasangan BEFORE INSERT ON Pemasangan FOR EACH ROW BEGIN DECLARE msg VARCHAR(255); IF EXISTS( SELECT a.tglpemasangan FROM TargetProduksi a WHERE new.tglpemasangan > a.tglpemasangan AND new.kdpemesanan = a.kdpemesanan) THEN SET msg = concat('melanggar General Constraint: Tanggal Pemasangan tidak boleh lebih lama dari Tanggal Pemasangan pada TargetProduksi'); SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = msg; END IF; END

149 Merancang File Organizations dan Indexes Tujuannya untuk menentukan file organizationsyang optimal untuk menyimpan relasi-relasi dasar dan indexyang diperlukan. Terdapat beberapa langkah dari tahapan ini, yaitu: 1. Menganalisa transaksi Tujuannya untuk memahami fungsi dari transaksi yang akan dijalankan pada basis data dan menganalisa transaksi-transaksi yang penting. Berikut merupakan transaksi-transaksi yang ditentukan: 1. Memasukkan dan mengubah data pengajuan pemesanan 2. Memasukkan dan mengubah data pelanggan 3. Memasukkan dan mengubah data rumus bahan baku 4. Memasukkan dan mengubah data produksi 5. Memasukkan dan mengubah data kontrak 6. Memasukkan dan mengubah data rancangan kusen pintu jendela 7. Memasukkan dan mengubah data pemesanan 8. Memasukkan dan mengubah data target produksi 9. Memasukkan dan mengubah data tugas produksi 10. Memasukkan dan mengubah data pengambilan bahan baku 11. Memasukkan dan mengubah data barang jadi 12. Memasukkan dan mengubah data bahan baku 13. Memasukkan dan mengubah data pemasok 14. Memasukkan dan mengubah data pengajuan pembelian 15. Memasukkan dan mengubah data pembelian 16. Memasukkan dan mengubah data retur pembelian 17. Memasukkan dan mengubah data pengiriman 18. Memasukkan dan mengubah data pemasangan 19. Memasukkan dan mengubah data karyawan 20. Memasukkan dan mengubah data pembayaran pemesanan 21. Memasukkan dan mengubah data pembayaran pembelian 22. Menampilkan pengajuan pemesanan berdasarkan identitas pelanggan. 23. Menampilkan data bahan baku berdasarkan rumus bahan baku

150 Menampilkan data produksi berdasarkan nomor pengajuan pemesanan 25. Menampilkan rancangan kusen pintu jendela berdasarkan nomor pengajuan pemesanan 26. Menampilkan kontrak sesuai dengan pemesanan yang diajukan 27. Menampilkan pemesanan yang dibuat oleh karyawan 28. Menampilkan target produksi berdasarkan nomor pengajuan pemesanan 29. Menampilkan data tugas produksi dan nama karyawan yang terlibat didalamnya 30. Menampilkan data pengambilan bahan baku berdasarkan nama karyawan 31. Menampilkan data barang jadi berdasarkan kode produksi 32. Menampilkan data pembelian berdasarkan nomor pengajuan pembelian 33. Menampilkan data retur pembelian berdasarkan nomor pembelian 34. Menampilkan data pengiriman berdasarkan nomor pengajuan pemesanan 35. Menampilkan data pemasangan berdasarkan nomor pengajuan pemesanan 36. Menampilkan detil pengajuan pemesanan yang dibuat berdasarkan data karyawan 37. Menampilkan kontrak yang diurus oleh karyawan 38. Menampilkan data pengajuan pembelian yang diajukan oleh karyawan 39. Menampilkan data pembelian yang dibuat oleh karyawan 40. Menampilkan data retur pembelian yang diurus oleh karyawan 41. Menampilkan data pengiriman dan karyawan yang terlibat di dalamnya 42. Menampilkan data pemasangan yang dilakukan oleh karyawan 43. Menampilkan data barang jadi yang dikirim 44. Menampilkan rumus yang digunakan untuk produksi 45. Menampilkan tugas produksi sesuai nomor produksi 46. Menampilkan bahan baku yang dibeli melalui pembelian 47. Menampilkan pembelian berdasarkan nama pemasok 48. Menampilkan daftar bahan baku dalam pengajuan pembelian 49. Menampilkan daftar bahan baku dalam retur pembelian 50. Menampilkan daftar bahan baku dalam pengambilan bahan baku

151 Menampilkan data pembayaran pemesanan berdasarkan nama karyawan yang mengurusnya dan nomor pemesanan 52. Menampilkan data pembayaran pembelian berdasarkan nama karyawan yang mengurusnya dan nomor pembelian

152 192 Tabel 3.50Matriks Menganalisa Transaksi 1-4 Transaction (1) (2) (3) (4) / Relation I R U D I R U D I R U D I R U D Karyawan X X X X PosisiKaryawan X X X X PosKaryawan Pelanggan X X X PosPelanggan X X X Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku X X X DetilRumus X X X Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi X X X TargetProduksi PembayaranPembelian BarangJadi Pengiriman Kontrak Pemesanan X X X PosPemesanan X X X RancanganKusen PembayaranPemesanan

153 193 Tabel 3.51Matriks Menganalisa Transaksi 5-8 Transaction (5) (6) (7) (8) / Relation I R U D I R U D I R U D I R U D Karyawan X X X X PosisiKaryawan X X X X PosKaryawan Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi TargetProduksi X X X PembayaranPembelian BarangJadi Pengiriman Kontrak X X X Pemesanan X X X PosPemesanan X X X RancanganKusen X X X PembayaranPemesanan

154 194 Tabel 3.52Matriks Menganalisa Transaksi 9-12 Transaction (9) (10) (11) (12) / Relation I R U D I R U D I R U D I R U D Karyawan X X X X PosisiKaryawan X X X X PosKaryawan Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi X X X DetilTugas X X X Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku X X X DetilPengambilanBahan X X X TelpKaryawan TelpPelanggan TelpPemasok BahanBaku X X X TipeBahan X X X SatuanBahan X X X Produksi TargetProduksi PembayaranPembelian BarangJadi X X X Pengiriman Kontrak Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan

155 195 Tabel 3.53Matriks Menganalisa Transaksi Transaction (13) (14) (15) (16) / Relation I R U D I R U D I R U D I R U D Karyawan X X X X PosisiKaryawan X X X X PosKaryawan Pelanggan PosPelanggan Pemasok X X X PosPemasok X X X TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian X X X DetilPembelian X X X PengajuanPembelian X X X DetilPengajuanBeli X X X ReturPembelian X X X DetilReturBeli X X X PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi TargetProduksi PembayaranPembelian BarangJadi Pengiriman Kontrak Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan

156 196 Tabel 3.54Matriks Menganalisa Transaksi Transaction (17) (18) (19) (20) / Relation I R U D I R U D I R U D I R U D Karyawan X X X X X X PosisiKaryawan X X X X X X PosKaryawan X X X Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan X X X DetilPemasangan X X X RumusBahanBaku DetilRumus Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi TargetProduksi PembayaranPembelian BarangJadi Pengiriman X X X Kontrak Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan X X X

157 197 Tabel 3.55Matriks Menganalisa Transaksi Transaction (21) (22) (23) (24) / Relation I R U D I R U D I R U D I R U D Karyawan X PosisiKaryawan X PosKaryawan Pelanggan X PosPelanggan X Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku X DetilRumus X Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku X TipeBahan X SatuanBahan X Produksi X TargetProduksi PembayaranPembelian X X X BarangJadi Pengiriman Kontrak Pemesanan X X PosPemesanan X X RancanganKusen PembayaranPemesanan

158 198 Tabel 3.56Matriks Menganalisa Transaksi Transaction (25) (26) (27) (28) / Relation I R U D I R U D I R U D I R U D Karyawan X PosisiKaryawan X PosKaryawan Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi TargetProduksi X PembayaranPembelian BarangJadi Pengiriman Kontrak X Pemesanan X X X X PosPemesanan X X X X RancanganKusen X PembayaranPemesanan

159 199 Tabel 3.57Matriks Menganalisa Transaksi Transaction (29) (30) (31) (32) / Relation I R U D I R U D I R U D I R U D Karyawan X X PosisiKaryawan X X PosKaryawan Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi X DetilTugas X Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian X DetilPembelian X PengajuanPembelian X DetilPengajuanBeli X ReturPembelian DetilReturBeli PengambilanBahanBaku X DetilPengambilanBahan X TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi X TargetProduksi PembayaranPembelian BarangJadi X Pengiriman Kontrak Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan

160 200 Tabel 3.58Matriks Menganalisa Transaksi Transaction (33) (34) (35) (36) / Relation I R U D I R U D I R U D I R U D Karyawan X PosisiKaryawan X PosKaryawan X Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan X DetilPemasangan X RumusBahanBaku DetilRumus Pembelian X DetilPembelian X PengajuanPembelian DetilPengajuanBeli ReturPembelian X DetilReturBeli X PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi TargetProduksi PembayaranPembelian BarangJadi Pengiriman X Kontrak Pemesanan X X X PosPemesanan X X X RancanganKusen PembayaranPemesanan

161 201 Tabel 3.59Matriks Menganalisa Transaksi Transaction (37) (38) (39) (40) / Relation I R U D I R U D I R U D I R U D Karyawan X X X X PosisiKaryawan X X X X PosKaryawan X X X X Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian X DetilPembelian X PengajuanPembelian X DetilPengajuanBeli X ReturPembelian X DetilReturBeli X PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi TargetProduksi PembayaranPembelian BarangJadi Pengiriman Kontrak X Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan

162 202 Tabel 3.60Matriks Menganalisa Transaksi Transaction (41) (42) (43) (44) / Relation I R U D I R U D I R U D I R U D Karyawan X X PosisiKaryawan X X PosKaryawan X X Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan X DetilPemasangan X RumusBahanBaku X DetilRumus X Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi X TargetProduksi PembayaranPembelian BarangJadi X Pengiriman X X Kontrak Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan

163 203 Tabel 3.61Matriks Menganalisa Transaksi Transaction (45) (46) (47) (48) / Relation I R U D I R U D I R U D I R U D Karyawan PosisiKaryawan PosKaryawan Pelanggan PosPelanggan Pemasok X PosPemasok X TugasProduksi X DetilTugas X Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian X X DetilPembelian X X PengajuanPembelian X DetilPengajuanBeli X ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku X X TipeBahan X X SatuanBahan X X Produksi X TargetProduksi PembayaranPembelian BarangJadi Pengiriman Kontrak Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan

164 204 Tabel 3.62Matriks Menganalisa Transaksi Transaction (49) (50) (51) (52) / Relation I R U D I R U D I R U D I R U D Karyawan X X PosisiKaryawan X X PosKaryawan X X Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian X DetilPembelian X PengajuanPembelian DetilPengajuanBeli ReturPembelian X DetilReturBeli X PengambilanBahanBaku X DetilPengambilanBahan X TelpKaryawan TelpPelanggan TelpPemasok BahanBaku X X TipeBahan X X SatuanBahan X X Produksi TargetProduksi PembayaranPembelian X BarangJadi Pengiriman Kontrak Pemesanan X PosPemesanan RancanganKusen PembayaranPemesanan X

165 205 Berdasarkan matriks tersebut, dapat dilihat bahwa tabel yang paling sering diakses adalah tabel Karyawan, yaitu sebanyak tiga belas transaksi dari seluruh transaksi yang ada.oleh karena itu, transaksi-transaksi yang berkaitan dengan tabel Karyawan harus lebih diperhatikan. Transaksi-transaksi tersebut yaitu: 1. Memasukkan dan mengubah data karyawan 2. Menampilkan pemesanan yang dibuat oleh karyawan 3. Menampilkan data tugas produksi dan nama karyawan yang terlibat didalamnya 4. Menampilkan data pengambilan bahan baku berdasarkan nama karyawan 5. Menampilkan detil pengajuan pemesanan yang dibuat berdasarkan data karyawan 6. Menampilkan kontrak sesuai dengan identitas pelanggan dan pemesanan yang diajukan 7. Menampilkan data pengajuan pembelian yang diajukan oleh karyawan 8. Menampilkan data pembelian yang dibuat oleh karyawan 9. Menampilkan data retur pembelian yang diurus oleh karyawan 10. Menampilkan data pengiriman dan karyawan yang terlibat di dalamnya 11. Menampilkan data pemasangan yang dilakukan oleh karyawan 12. Menampilkan data pembayaran pemesanan berdasarkan nama karyawan yang mengurusnya 13. Menampilkan data pembayaran pembelian berdasarkan nama karyawan yang mengurusnya 2. Memilih file organizations Tujuannya untuk untuk menentukan file organizations yang efisien untuk setiap relasi dasar. Terdapat beberapa tipe file organizations yang dapat dipilih untuk mengatur penyimpanan indeks secara fisik yaitu,heap, Hash, Indexed Sequential Access Method (ISAM), B+ Tree dan Clusters. Namun, DBMS yang dipilih adalah MySQL yang tidak memungkinkan untuk memilihfile organizations secara bebas. Pada MySQL, tipe indeksfile organizations yang digunakan bergantung pada

166 206 database engine yang dipilih sedangkan database engine yang dipilih untuk MySQL adalah innodb yang menggunakan organisasi file B + tree untuk index. 3. Memilih index Tujuannya untuk menentukan penambahan indeks yang akan meningkatkan performa sistem. Secara umum,terdapat dua jenis indeks yang sering digunakan, yaitu: a. Primary Index adalah indeks yang pasti akan terbentuk ketika sebuah primary key diciptakan. Dengan kata lain, primary index memiliki sifat yang sama dengan primary key, yaitu bersifat unik dan tidak boleh null. Dalam MySQL, primary index disebut juga cluster index. b. Secondary Index adalah indeks yang memiliki nilai tidak unik atau identik dalam semua kolom indeks. Dalam MySQL, secondary index juga disebut non cluster index. Berikut terdapat tabel-tabel yang sudah ditentukan indeks untuk setiap tabel yang ada basis data:

167 207 Tabel 3.63Penentuan Indeks No Entitas Indeks Nama Indeks Tipe Indeks KdKar PRIMARY Primary 1 Karyawan KdPosKar KdPosKar Secondary KdPosisi KdPosisi Secondary 2 PosisiKaryawan KdPosisi PRIMARY Primary 3 PosKaryawan KdPosKar PRIMARY Primary 4 Pelanggan KdPel PRIMARY Primary KdPosPel KdPosPel Secondary 5 PosPelanggan KdPosPel PRIMARY Primary 6 Pemasok KdPem PRIMARY Primary KdPosPem KdPosPem Secondary 7 PosPemasok KdPosPem PRIMARY Primary 8 TugasProduksi KdTugas PRIMARY Primary KdProduksi KdProduksi Secondary 9 DetilTugas KdKar PRIMARY Primary KdTugas PRIMARY Primary 10 Pemasangan KdPemasangan PRIMARY Primary KdPemesanan KdPemesanan Secondary 11 DetilPemasangan KdKar PRIMARY Primary KdPemasangan PRIMARY Primary 12 RumusBahanBaku KdRumus PRIMARY Primary 13 DetilRumus KdRumus PRIMARY Primary KdBahanBaku PRIMARY Primary KdPembelian PRIMARY Primary 14 Pembelian KdKar KdKar Secondary KdPengajuan KdPengajuan Secondary KdPem KdPem Secondary 15 DetilPembelian KdPembelian PRIMARY Secondary KdBahanBaku PRIMARY Primary 16 PengajuanPembelian KdPengajuan PRIMARY Primary KdKar KdKar Secondary

168 208 No Entitas Indeks Nama Indeks Tipe Indeks 17 DetilPengajuanBeli KdPengajuan PRIMARY Primary KdBahanBaku PRIMARY Primary KdReturPemb PRIMARY Primary 18 ReturPembelian KdKar KdKar Secondary KdPembelian KdPembelian Secondary 19 DetilReturBeli KdReturPemb PRIMARY Primary KdBahanBaku PRIMARY Primary 20 PengambilanBahan KdPengambilan PRIMARY Primary Baku KdKar KdKar Secondary 21 DetilPengambilan KdPengambilan PRIMARY Primary Bahan KdBahanBaku PRIMARY Primary 22 TelpKaryawan TelpKar PRIMARY Primary KdKar KdKar Secondary 23 TelpPelanggan TelpPel PRIMARY Primary KdPel KdPel Secondary 24 TelpPemasok TelpPem PRIMARY Primary KdPem KdPem Secondary KdBahanBaku PRIMARY Primary 25 BahanBaku KdTipeBahan KdTipeBahan Secondary KdSatuanBahan KdSatuanBahan Secondary 26 TipeBahan KdTipeBahan PRIMARY Primary 27 SatuanBahan KdSatuanBahan PRIMARY Primary KdProduksi PRIMARY Primary 28 Produksi KdRumus KdRumus Secondary KdPemesanan KdPemesanan Clustering TglPengiriman PRIMARY Secondary 29 TargetProduksi TglPemasangan PRIMARY Secondary KdPemesanan PRIMARY Secondary

169 209 No Entitas Indeks Nama Indeks Tipe Indeks 30 KdPembPembelian PRIMARY Primary Pembayaran KdPembelian KdPembelian Secondary Pembelian KdKar KdKar Secondary KdBarangJadi PRIMARY Primary 31 BarangJadi KdPengiriman KdPengiriman Secondary KdProduksi KdProduksi Secondary KdPengiriman PRIMARY Primary 32 Pengiriman KdKar KdKar Secondary KdPemesanan KdPemesanan Secondary KdKontrak PRIMARY Primary 33 Kontrak KdKar KdKar Secondary KdPemesanan KdPemesanan Secondary KdPemesanan PRIMARY Primary 34 Pemesanan KdPel KdPel Secondary KdKar KdKar Secondary KdPosPemesanan KdPosPemesanan Secondary 35 PosPemesanan KdPosPemesanan PRIMARY Primary 36 RancanganKusen KdRancangan PRIMARY Primary KdPemesanan KdPemesanan Secondary 37 KdPembPemesanan PRIMARY Primary Pembayaran KdKar KdKar Secondary Pemesanan KdPemesanan KdPemesanan Secondary

170 210 Tabel 3.64Script Indeks 1. Karyawan CREATE UNIQUE INDEX PRIMARY ON Karyawan(KdKar); CREAT INDEX KdPosisi ON Karyawan (KdPosKar); CREAT INDEX KdPosisi ON Karyawan (KdPosisi); 2. PosisiKaryawan CREATE UNIQUE INDEX PRIMARY ON PosisiKaryawan (KdPosisi); 3. PosKaryawan CREATE UNIQUE INDEX PRIMARY ON PosKaryawan (KdPosKar); 4. Pelanggan CREATE UNIQUE INDEX PRIMARY ON Pelanggan (KdPel); CREATE INDEX KdPosPel ON Pelanggan (KdPosPel); 5. PosPelanggan CREATE UNIQUE INDEX PRIMARY ON PosPelanggan (KdPosPel); 6. Pemasok CREATE UNIQUE INDEX PRIMARY ON Pelanggan (KdPem); CREAT INDEX KdPosPem ON Pelanggan (KdPosPem); 7. PosPemasok CREATE UNIQUE INDEX PRIMARY ON PosPemasok (KdPosPem); 8. TugasProduksi CREATE UNIQUE INDEX PRIMARY ON TugasProduksi (KdTugas); CREATE INDEX KdProduksi ON TugasProduksi (KdProduksi); 9. DetilTugas CREATE UNIQUE INDEX PRIMARY ON DetilTugas (KdKar); CREATE UNIQUE INDEX PRIMARY ON DetilTugas (KdTugas); 10. Pemasangan CREATE UNIQUE INDEX PRIMARY ON Pemasangan (KdPemasangan); CREATE INDEX KdPemesanan ON Pemasangan (KdPemesanan); 11. DetilPemasangan CREATE UNIQUE INDEX PRIMARY ON DetilPemasangan (KdKar); CREATE UNIQUE INDEX PRIMARY ON DetilPemasangan (KdPemasangan); 12. RumusBahanBaku CREATE UNIQUE INDEX PRIMARY ON RumusBahanBaku (KdRumus); 13. DetilRumus CREATE UNIQUE INDEX PRIMARY ON DetilRumus (KdRumus); CREATE UNIQUE INDEX PRIMARY ON DetilRumus (KdBahanBaku); 14. Pembelian CREATE UNIQUE INDEX PRIMARY ON Pembelian (KdKar); CREATE INDEX KdKar ON Pembelian (KdKar); CREATE INDEX KdPengajuan ON Pembelian (KdPengajuan); CREATE INDEX KdPem ON Pembelian (KdPem); 15. DetilPembelian CREATE UNIQUE INDEX PRIMARY ON DetilPembelian (KdPembelian);

171 CREATE UNIQUE INDEX PRIMARY ON DetilPembelian (KdBahanBaku); 16. PengajuanPembelian CREATE UNIQUE INDEX PRIMARY ON PengajuanPembelian (KdPengajuan); CREATE INDEX KdKar ON PengajuanPembelian (KdKar); 17. DetilPengajuanBeli CREATE UNIQUE INDEX PRIMARY ON DetilPengajuanBeli (KdPengajuan); CREATE UNIQUE INDEX PRIMARY ON DetilPengajuanBeli (KdBahanBaku); 18. ReturPembelian CREATE UNIQUE INDEX PRIMARY ON ReturPembelian (KdReturPemb); CREATE INDEX KdKar ON ReturPembelian (KdKar); CREATE INDEX KdPembelian ON ReturPembelian (KdPembelian); 19. DetilReturBeli CREATE UNIQUE INDEX PRIMARY ON DetilReturBeli (KdReturPemb); CREATE UNIQUE INDEX PRIMARY ON DetilReturBeli (KdBahanBaku); 20. PengambilanBahanBaku CREATE UNIQUE INDEX PRIMARY ON PengambilanBahanBaku (KdPengambilan); CREATE INDEX KdKar ON PengambilanBahanBaku (KdKar); 21. DetilPengambilanBahan CREATE UNIQUE INDEX PRIMARY ON PengambilanBahanBaku (KdPengambilan); CREATE INDEX KdKar ON PengambilanBahanBaku (KdKar); 22. TelpKayawan CREATE UNIQUE INDEX PRIMARY ON TelpKaryawan (TelpKar); CREATE INDEX KdKar ON TelpKaryawan (KdKar); 23. TelpPelanggan CREATE UNIQUE INDEX PRIMARY ON TelpPelanggan (TelpPel); CREATE INDEX KdPel ON TelpPelanggan (KdPel); 24. TelpPemasok CREATE UNIQUE INDEX PRIMARY ON TelpPemasok (TelpPem); CREATE INDEX KdPem ON TelpPemasok (KdPem); 25. BahanBaku CREATE UNIQUE INDEX PRIMARY ON BahanBaku (KdBahanBaku); CREATE INDEX KdTipeBahan ON BahanBaku (KdTipeBahan); CREATE INDEX KdSatuanBahan ON BahanBaku (KdSatuanBahan); 26. TipeBahan CREATE UNIQUE INDEX PRIMARY ON TipeBahan (KdTipeBahan); 27. SatuanBahan CREATE UNIQUE INDEX PRIMARY ON SatuanBahan (KdSatuanBahan); 28. Produksi CREATE UNIQUE INDEX PRIMARY ON Produksi (KdProduksi); CREATE INDEX KdRumus ON Produksi (KdRumus); CREATE INDEX KdPemesanan ON Produksi (KdPemesanan); 211

172 TargetProduksi CREATE INDEX TglPengiriman ON TargetProduksi (TglPengiriman); CREATE INDEX TglPemasangan ON TargetProduksi (TglPemasangan); CREAT INDEX KdPemesanan ON TargetProduksi (KdPemesanan); 30. PembayaranPembelian CREATE UNIQUE INDEX PRIMARY ON PembayaranPembelian (KdPembPembelian); CREATE INDEX KdPembelian ON PembayaranPembelian (KdPembelian); CREATE INDEX KdKar ON PembayaranPembelian (KdKar); 31. BarangJadi CREATE UNIQUE INDEX PRIMARY ON BarangJadi (KdBarangJadi); CREATE INDEX KdPengiriman ON BarangJadi (KdPengiriman); CREATE INDEX KdProduksi ON BarangJadi (KdProduksi); 32. Pengiriman CREATE UNIQUE INDEX PRIMARY ON Pengiriman (KdPengiriman); CREATE INDEX KdKar ON Pengiriman (KdKar); CREATE INDEX KdPemesanan ON Pengiriman (KdPemesanan); 33. Kontrak CREATE UNIQUE INDEX PRIMARY ON Kontrak (KdKontrak); CREATE INDEX KdKar ON Kontrak (KdKar); CREATE INDEX KdPemesanan ON Kontrak (KdPemesanan); 34. Pemesanan CREATE UNIQUE INDEX PRIMARY ON Pemesanan (KdPemesanan); CREATE INDEX KdPel ON Pemesanan (KdPel); CREATE INDEX KdKar ON Pemesanan (KdKar); CREATE INDEX KdPosPemesanan ON Pemesanan (KdPosPemesanan); 35. PosPemesanan CREATE UNIQUE INDEX PRIMARY ON PosPemesanan (KdPosPemesanan); 36. RancanganKusen CREATE UNIQUE INDEX PRIMARY ON RancanganKusen (KdRancangan); CREATE INDEX KdPemesanan ON RancanganKusen (KdPemesanan); 37. PembayaranPemesanan CREATE UNIQUE INDEX PRIMARY ON PembayaranPemesanan (KdPembPemesanan); CREATE INDEX KdKar ON PembayaranPemesanan (KdKar); CREATE INDEX KdPemesanan ON PembayaranPemesanan (KdPemesanan); 4. Melakukan estimasi kapasitas disk yang diperlukan Berikut terdapat tabel-tabel untuk menghitung estimasi ukuran yang diperlukan untuk seluruh tabel yang ada pada basis data:

173 213 Tabel 3.65Perkiraan Jumlah Baris untuk Setiap Tabel Tabel Perkiraan jumlah baris yang ada sekarang Perkiraan jumlah baris dalam setahun Karyawan PosisiKaryawan PosKaryawan Pelanggan PosPelanggan Pemasok PosPemasok TugasProduksi DetilTugas Pemasangan DetilPemasangan RumusBahanBaku DetilRumus Pembelian DetilPembelian PengajuanPembelian DetilPengajuanBeli ReturPembelian DetilReturBeli PengambilanBahanBaku DetilPengambilanBahan TelpKaryawan TelpPelanggan TelpPemasok BahanBaku TipeBahan SatuanBahan Produksi TargetProduksi PembayaranPembelian BarangJadi Pengiriman Kontrak Pemesanan PosPemesanan RancanganKusen PembayaranPemesanan Total

174 Karyawan Tabel 3.66Penentuan Kapasitas untuk TabelKaryawan Atribut Tipe Data Indeks Ukuran Indeks Ukuran KdKar Char(5) Primary 5 5 NamaKar Varchar(20) 20 AlamatKar Varchar(100) 100 Kar Varchar(50) 50 JenisKelamin Char(1) 1 FotoKar Varchar(20) 20 KdPosKar Char(5) Secondary = 10 5 KdPosisi Char(3) Secondary = 8 3 Total Estimasi ukuran untuk tabel Karyawan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 48 * ( ) = bytes 2. PosisiKaryawan Tabel 3.67Penentuan Kapasitas untuk Tabel PosisiKaryawan Atribut Tipe Data Indeks Ukuran Indeks Ukuran KdKar Char(5) Primary 5 5 PosisiKaryawan Varchar(20) 20 Total Ukuran 5 29 Estimasi ukuran untuk tabel PosisiKaryawan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 20 * (5+29) = 480 bytes 3. PosKaryawan Tabel 3.68Penentuan Kapasitas untuk Tabel PosKaryawan Atribut Tipe Data Indeks Ukuran Indeks Ukuran KdPosKar Char(5) Primary 5 5 KotaKar Varchar(40) 40 KecKar Varchar(40) 40 KelKar Varchar(40) 40 Total Ukuran Estimasi ukuran untuk tabel PosKaryawan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 48 * (5+125) = bytes

175 Pelanggan Tabel 3.69Penentuan Kapasitas untuk Tabel Pelanggan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPel Char(5) Primary 5 5 NamaPel Varchar(40) 40 AlamatPel Varchar(100) 100 Pel Varchar(50) 50 FaxPel Varchar(15) 15 KdPosPel Char(5) Secondary = 10 5 Total Ukuran Estimasi ukuran untuk tabel Pelanggan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 300 * (15+215) = bytes 5. PosPelanggan Tabel 3.70Penentuan Kapasitas untuk Tabel Pemasok Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPosPel Char(5) Primary 5 5 KotaPel Varchar(40) 40 KecPel Varchar(40) 40 KelPel Varchar(40) 40 Total Ukuran Estimasi ukuran untuk tabel PosPelanggan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 310* (5+125) = bytes 6. Pemasok Tabel 3.71Penentuan Kapasitas untuk Tabel Pemasok Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPem Char(5) Primary 5 5 NamaPem Varchar(40) 40 AlamatPem Varchar(100) 100 Pem Varchar(50) 50 FaxPem Varchar(15) 15 KdPosPemasok Char(5) Secondary = 10 5 Total Ukuran Estimasi ukuran untuk tabel Pemasok hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 10 * (15+215) = bytes

176 PosPemasok Tabel 3.72Penentuan Kapasitas untuk Tabel PosPemasok Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPosPem Char(5) Primary 5 5 KotaPem Varchar(40) 40 KecPem Varchar(40) 40 KelPem Varchar(40) 40 Total Ukuran Estimasi ukuran untuk tabel PosPemasok hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 10 * (5+125) = bytes 8. TugasProduksi Tabel 3.73Penentuan Kapasitas untuk Tabel TugasProduksi Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdTugas Char(7) Primary 7 7 Keterangan Varchar(100) 100 KdProduksi Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel TugasProduksi hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 1550 * (21+114) = bytes 9. DetilTugas Tabel 3.74Penentuan Kapasitas untuk Tabel DetilTugas Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdKar Char(5) Primary 5 5 KdTugas Char(7) Primary 7 7 StatusTugas Char(1) 1 TglMulai Datetime 8 TglSelesai Datetime 8 Deadline Datetime 8 DeskTugas Varchar(80) 80 Total Ukuran Estimasi ukuran untuk tabel DetilTugas hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 4500 * (12+130) = bytes

177 Pemasangan Tabel 3.75Penentuan Kapasitas untuk Tabel Pemasangan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPemasangan Char(7) Primary 7 7 TglPemasangan Datetime 8 FotoHasil Varchar(30) 30 KdPemesanan Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel Pemasangan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 900 * (21+52) = bytes 11. DetilPemasangan Tabel 3.76Penentuan Kapasitas untuk Tabel DetilPemasangan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdKar Char(5) Primary 5 5 KdPemasangan Char(7) Primary 7 7 StatusPemasangan Char(1) 1 Total Ukuran Estimasi ukuran untuk tabel DetilPemasangan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 3000 * (12+13) = bytes 12. RumusBahanBaku Tabel 3.77Penentuan Kapasitas untuk Tabel RumusBahanBaku Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdRumus Char(5) Primary 5 5 NamaRumus Varchar(40) 40 Gambar Varchar(30) 30 Deskripsi Varchar(100) 100 Total Ukuran Estimasi ukuran untuk tabel RumusBahanBaku hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 40 * (5+175) = bytes

178 DetilRumus Tabel 3.78Penentuan Kapasitas untuk Tabel DetilRumus Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdRumus Char(5) Primary 5 5 KdBahanBaku Char(5) Primary 5 5 SatuanRumus Char(1) 1 RumusUkuran Varchar(100) 100 Total Ukuran Estimasi ukuran untuk tabel DetilRumus hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 100 * (10+111) = bytes 14. Pembelian Tabel 3.79Penentuan Kapasitas untuk Tabel Pembelian Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPembelian Char(7) Primary 7 7 TglPembelian Datetime 8 StatusPembelian Char(1) 1 KdKar Char(5) 5 KdPengajuan Char(7) Secondary = 14 7 KdPem Char(5) Secondary = 12 5 Total Ukuran Estimasi ukuran untuk tabel Pembelian hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 390 * (33+33) = bytes 15. DetilPembelian Tabel 3.80Penentuan Kapasitas untuk Tabel DetilPembelian Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPembelian Char(7) Primary 7 7 KdBahanBaku Char(5) Primary 5 5 JumlahBeli Small Integer 2 HargaBeli Integer 4 Total Ukuran Estimasi ukuran untuk tabel DetilPembelian hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 1600 * (12+18) = bytes

179 PengajuanPembelian Tabel 3.81Penentuan Kapasitas untuk Tabel PengajuanPembelian Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPengajuan Char(7) Primary 7 7 TglPengajuan Datetime 8 StatusPengajuan Char(1) 1 KdKar Char(5) Secondary = 12 5 Total Ukuran Estimasi ukuran untuk tabel PengajuanPembelian hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 75 * (19+21) = bytes 17. DetilPengajuanBeli Tabel 3.82Penentuan Kapasitas untuk Tabel DetilPengajuanBeli Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPengajuan Char(7) Primary 7 7 KdBahanBaku Char(5) Primary 5 5 JumlahAju Small Integer 2 Total Ukuran Estimasi ukuran untuk tabel DetilPengajuanBeli hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 1600 * (12+14) = bytes 18. ReturPembelian Tabel 3.83Penentuan Kapasitas untuk Tabel DetilPembelian Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdReturPemb Char(7) Primary 7 7 TglRetur Datetime 8 StatusRetur Varchar(1) 1 AlasanRetur Varchar(40) 40 KdKar Char(5) Secondary = 12 5 KdPembelian Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel ReturPembelian hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 10 * (33+68) = bytes

180 DetilReturBeli Tabel 3.84Penentuan Kapasitas untuk Tabel DetilReturBeli Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdReturPemb Char(7) Primary 7 7 KdBahanBaku Char(5) Primary 5 5 JumlahRetur Small Integer 2 Total Ukuran Estimasi ukuran untuk tabel DetilReturBeli hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 50 * (12+14) = bytes 20. PengambilanBahanBaku Tabel 3.85Penentuan Kapasitas untuk Tabel PengambilanBahanBaku Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPengambilan Char(7) Primary 7 7 TglPengambilan Datetime 8 KdKar Char(5) Secondary =12 5 Total Ukuran Estimasi ukuran untuk tabel PengambilanBahanBaku hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 1000 * (19+20) = bytes 21. DetilPengambilanBahan Tabel 3.86Penentuan Kapasitas untuk Tabel DetilPengambilanBahan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPengambilan Char(7) Primary 7 7 KdBahanBaku Char(5) Primary 5 5 JumlahAmbil Small Integer 2 Total Ukuran Estimasi ukuran untuk tabel DetilPengambilanBahan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 1100 * (12+12) = bytes

181 TelpKayawan Tabel 3.87Penentuan Kapasitas untuk Tabel TelpKayawan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran TelpKar Varchar(15) Primary KdKar Char(5) Secondary = 20 5 Total Ukuran Estimasi ukuran untuk tabel TelpKaryawan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 28 * (35+20) = bytes 23. TelpPelanggan Tabel 3.88Penentuan Kapasitas untuk Tabel TelpPelanggan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran TelpPel Varchar(15) Primary KdPel Char(5) Secondary = 20 5 Total Ukuran Estimasi ukuran untuk tabel TelpPelanggan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 550 * (35+20) = bytes 24. TelpPemasok Tabel 3.89Penentuan Kapasitas untuk Tabel TelpPemasok Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran TelpPem Varchar(15) Primary KdPem Char(5) Secondary = 20 5 Total Ukuran Estimasi ukuran untuk tabel TelpPemasok hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 20 * (35+20) = bytes

182 BahanBaku Tabel 3.90Penentuan Kapasitas untuk Tabel BahanBaku Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdBahanBaku Char(5) Primary 5 5 NamaBahanBaku Varchar(40) 40 KdTipeBahan Char(3) Secondary = 8 3 KdSatuanBahan Char(3) Secondary = 8 3 Harga Integer 4 Stok Small Integer 2 StokMin Small Integer 2 Total Ukuran Estimasi ukuran untuk tabel BahanBaku hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 450 * (21+59) = bytes 26. TipeBahan Tabel 3.91Penentuan Kapasitas untuk Tabel TipeBahan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdTipeBahan Char(3) Primary 3 5 TipeBahanBaku Varchar(20) 20 Total Ukuran 3 25 Estimasi ukuran untuk tabel TipeBahan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 15 * (6+25) = 465 bytes 27. SatuanBahan Tabel 3.92Penentuan Kapasitas untuk Tabel SatuanBahan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdSatuanBahan Char(3) Primary 3 5 SatuanBahanBaku Varchar(5) 5 Total Ukuran 3 10 Estimasi ukuran untuk tabel SatuanBahan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 25 * (6+10) = 400 bytes

183 Produksi Tabel 3.93Penentuan Kapasitas untuk Tabel Produksi Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdProduksi Char(7) Primary 7 7 NamaBarang Varchar(40) 40 TglMulaiProduksi Datetime 8 StatusProduksi Char(1) 1 Jumlah Small Integer 2 UkTinggi Small Integer 2 UkLebar Small Integer 2 HargaProduksi Integer 4 KdRumus Char(5) Secondary = 12 5 KdPemesanan Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel Produksi hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 4500 * (33+78) = bytes 29. TargetProduksi Tabel 3.94Penentuan Kapasitas untuk Tabel TargetProduksi Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran TglPengiriman Date Primary 3 3 TglPemasangan Date Primary 3 3 Keterangan Varchar(100) 100 KdPemesanan Char(7) Primary 7 7 Total Ukuran Estimasi ukuran untuk tabel TargetProduksi hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 500 * ( ) = bytes

184 PembayaranPembelian Tabel 3.95Penentuan Kapasitas untuk Tabel PembayaranPembelian Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPembPembelian Char(7) Primary 7 7 TglPembPembelian Datetime 8 JumlahBayar Integer 4 KdPembelian Char(7) Secondary = 14 7 KdKar Char(5) Secondary = 12 5 Total Ukuran Estimasi ukuran untuk tabel PembayaranPembelian hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 90 * (33+23) = bytes 31. BarangJadi Tabel 3.96Penentuan Kapasitas untuk Tabel BarangJadi Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdBarangJadi Char(7) Primary 7 7 TglBarangMasuk Datetime 8 StatusBarangJadi Char(1) 1 KdPengiriman Char(7) Secondary = 14 7 KdProduksi Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel BarangJadi hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 4500 * (35+30) = bytes 32. Pengiriman Tabel 3.97Penentuan Kapasitas untuk Tabel Pengiriman Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPengiriman Char(7) Primary 7 7 TglPengiriman Datetime 8 StatusPengiriman Char(1) 1 KdPemesanan Char(7) Secondary = 14 7 KdKar Char(5) Secondary = 12 5 Total Ukuran Estimasi ukuran untuk tabel Pengiriman hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 700 * (33+28) = bytes

185 Kontrak Tabel 3.98Penentuan Kapasitas untuk Tabel Kontrak Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdKontrak Char(7) Primary 7 7 Spesifikasi Varchar(200) 200 Keterangan Varchar(200) 200 Diskon Tiny Integer 1 TglKontrak Datetime 8 StatusKontrak Char(1) 1 KdKar Char(5) Secondary = 12 5 KdPemesanan Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel Kontrak hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 1000 * (33+429) = bytes 34. Pemesanan Tabel 3.99Penentuan Kapasitas untuk Tabel Pemesanan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPemesanan Char(7) Primary 7 7 TglPemesanan Datetime 8 TglPengPemesanan Datetime 8 GmbPengPemesanan Varchar(30) 30 StatusPengPemesanan Char(1) 1 NamaProyek Varchar(40) 40 AlamatPemesanan Varchar(100) 100 KdPel Char(5) Secondary = 12 5 KdKar Char(5) Secondary = 12 5 KdPosPemesanan Char(5) Secondary = 12 5 Total Ukuran Estimasi ukuran untuk tabel Pemesanan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 500 * (43+209) = bytes

186 PosPemesanan Tabel 3.100Penentuan Kapasitas untuk Tabel PosPemesanan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPosPemesanan Char(5) Primary 5 5 KotaPemesanan Varchar(40) 40 KecPemesanan Varchar(40) 40 KelPemesanan Varchar(40) 40 Total Ukuran Estimasi ukuran untuk tabel PosPemesanan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 430 * (5+125) = bytes 36. RancanganKusen Tabel 3.101Penentuan Kapasitas untuk Tabel RancanganKusen Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdRancangan Char(7) Primary 7 7 TglRancangan Datetime 8 GmbRancangan Varchar(30) 30 StatusRancangan Char(1) 5 UkLubang Small Integer 2 UkJendela Small Integer 2 Keterangan Varchar(100) 100 KdPemesanan Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel RancanganKusen hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 700 * (21+161) = bytes

187 PembayaranPemesanan Tabel 3.102Penentuan Kapasitas untuk Tabel PembayaranPemesanan Atribut Tipe Data Tipe Indeks Ukuran Indeks Ukuran KdPembPemesanan Char(7) Primary 7 7 TglPembPemesanan Datetime 8 JumlahBayar Integer 4 KdKar Char(5) Secondary = 12 5 KdPemesanan Char(7) Secondary = 14 7 Total Ukuran Estimasi ukuran untuk tabel PembayaranPemesanan hingga satu tahun ke depan yaitu: Total Baris * (Total Ukuran Indeks + Total Ukuran) = 1200 * (33+ 31) = bytes Dari perhitungan di atas bisa didapat kesimpulan bahwa total ukuran data sekarang hingga satu tahun ke depan yang perlu disimpan yaitu sebanyak bytes, setara dengan 3,74 MB Merancang User Views Tujuannya untuk merancang pandangan pengguna yang telah diidentifikasikan selama tahap Requirements Collection and Analysisdari Database System Development Lifecyle. Views adalah sekumpulan query yang dibentuk untuk menampilkan sejumlah hasil yang diinginkan, sedangkan StoredProcedures adalah sekumpulan query yang dibentuk untuk memasukkan data baru atau mengubah data-data yang ada. Menurut Indrajani (2011:160) dan Anonim2, kelebihan-kelebihan dari views meliputi: 1. Keamanan, view dapat menghasilkan performa yang diinginkan pengguna tanpa mengakses langsung pada database sehingga konsistensidatabase lebih terjaga. 2. Kenyamanan, views merupakan sekumpulan query yang dibuat terlebih dahulu sehingga memungkinkan penggunaan berulang kali untuk pemanggilan query yang sama. 3. Ketepatan, karena views merupakan query-query yang kebenarannya sudah dipastikan sebelum dibuat sehingga hasil yang ditampilkan selalu tepat.

188 Kompleksitas, views memberikan kemudahan bagi seseorang untuk memahami - query-query yang ada Menurut Indrajani (2011:160) dan Anonim3, kelebihan-kelebihan dari stored procedures meliputi: 1. Keamanan, stored procedures mengenkapsulasi query-query dengan menggabungkan logika akses data ke dalam satu tempat, sehingga mudah untuk dioptimisasi tanpa mengakses langsung pada database sehingga konsistensi database lebih terjaga dan dapat mencegah terjadinya SQL injection 2. Kenyamanan, stored procedures merupakan sekumpulan query yang dibuat terlebih dahulu sehingga memungkinkan penggunaan berulang kali untuk pemanggilan query yang sama. 3. Ketepatan, karena stored procedure merupakan query-query yang kebenarannya sudah dipastikan sebelum dibuat sehingga hasil yang dijalankan selalu tepat. 4. Kecepatan, stored procedure mempercepat waktu eksekusi dan mengurangi lalulintas jaringan dibuat. Berikut terdapat perintah mengenai views dan procedures yang sudah

189 Tabel 3.103User Views Menampilkan pengajuan pemesanan berdasarkan identitas pelanggan CREATE VIEW PengPemesananPel AS SELECT Pel.KdPel, NamaPel, Pel, TelpPel, Pem.KdPemesanan, TglPengPemesanan, GmbPengPemesanan, StatusPengPemesanan, NamaProyek, AlamatPemesanan, Pos.KdPosPemesanan, KotaPemesanan FROM Pelanggan Pel JOIN TelpPelanggan Tel ON Pel.KdPel = Tel.KdPel JOIN Pemesanan Pem ON Pem.KdPel = Pel.KdPel JOIN PosPemesanan Pos ON Pos.KdPosPemesanan = Pem.KdPosPemesanan WHERE StatusPengPemesanan!= 0 2. Menampilkan data bahan baku berdasarkan rumus bahan baku CREATE VIEW BahanBakuRumus AS SELECT Rum.KdRumus, NamaRumus, Gambar, Deskripsi, SatuanRumus, RumusUkuran, Bak.KdBahanBaku, NamaBahanBaku, TipeBahanBaku, SatuanBahanbaku FROM RumusBahanBaku Rum JOIN DetilRumus Det ON Det.KdRumus = Rum.KdRumus JOIN BahanBaku Bak ON Bak.KdBahanBaku = Det.KdBahanBaku JOIN TipeBahan Tip ON Tip.KdTipeBahan = Bak.KdTipeBahan JOIN SatuanBahan Sat ON Sat.KdSatuanBahan = Bak.KdSatuanBahan WHERE Rum.Status!= 0 3. Menampilkan data produksi berdasarkan nomor pengajuan pemesanan CREATE VIEW ProduksiPemesanan AS SELECT Prod.KdProduksi, NamaBarang, Uktinggi,uklebar, JumlahProduksi, HargaJual, (JumlahProduksi*HargaJual) AS TotalHargaProduksi, Pem.KdPemesanan, TglPengPemesanan, NamaProyek, AlamatPemesanan, Diskon FROM Produksi Prod JOIN Pemesanan Pem ON Pem.KdPemesanan = Prod.KdPemesanan JOIN Kontrak kon ON kon.kdpemesanan = Pem.KdPemesanan WHERE StatusProduksi!= 0 4. Menampilkan rancangan kusen pintu jendela berdasarkan nomor pengajuan pemesanan CREATE VIEW RancanganKusenPemesanan AS SELECT Ran.KdRancangan, TglRancangan, GmbRancangan, StatusRancangan, UkLubang, UkJendela, Keterangan, Pem.KdPemesanan, TglPemesanan, NamaProyek, GmbPengPemesanan FROM RancanganKusen Ran JOIN Pemesanan Pem ON Pem.KdPemesanan = Ran.KdPemesanan

190 230 WHERE StatusRancangan!= 0 5. Menampilkan kontrak sesuai dengan nomor pemesanan CREATE VIEW KontrakPemesanan AS SELECT KdKontrak, Spesifikasi, Keterangan, TglKontrak, StatusKontrak, Pel.KdPel, NamaPel, AlamatPel, Pos.KdPosPel, KotaPel, KecPel, KelPel, TelpPel, Pem.KdPemesanan, NamaProyek, AlamatPemesanan, Pos2.KdPosPemesanan, KotaPemesanan, KecPemesanan, KelPemesanan FROM Kontrak Kon JOIN Pemesanan Pem ON Pem.KdPemesanan = Kon.KdPemesanan JOIN PosPemesanan Pos2 ON Pos2.KdPosPemesanan = Pem.KdPosPemesanan JOIN Pelanggan Pel ON Pel.KdPel = Pem.KdPel JOIN TelpPelanggan Tel ON Tel.KdPel = Pel.KdPel JOIN PosPelanggan Pos ON Pos.KdPosPel = Pel.KdPosPel WHERE StatusKontrak!= 0 6. Menampilkan pemesanan yang dibuat oleh karyawan CREATE VIEW PemesananKar AS SELECT Kar.KdKar, NamaKar, Kar, TelpKar, KdPemesanan, TglPemesanan, NamaProyek, StatusPengPemesanan FROM Karyawan Kar JOIN Pemesanan Pem ON Pem.KdKar = Kar.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE StatusPengPemesanan!= 0 7. Menampilkan target produksi berdasarkan nomor pengajuan pemesanan CREATE VIEW TargetProduksiPemesanan AS SELECT TglPengiriman, TglPemasangan, Keterangan, Pem.KdPemesanan, TglPemesanan, NamaProyek, StatusPengPemesanan, AlamatPemesanan,Pos. KdPosPemesanan FROM TargetProduksi Tar JOIN Pemesanan Pem ON Pem.KdPemesanan = Tar.KdPemesanan JOIN PosPemesanan Pos ON Pos.KdPosPemesanan = Pem.KdPosPemesanan WHERE Tar.Status!= 0 8. Menampilkan data tugas produksi dan nama karyawan yang terlibat didalamnya CREATE VIEW TugasProduksiKaryawan AS SELECT Prod.KdProduksi, NamaBarang, JumlahProduksi, TglMulaiProduksi, Tug.KdTugas, Keterangan, Deadline, StatusTugas, Kar.KdKar, NamaKar, TelpKar FROM TugasProduksi Tug JOIN Produksi Prod ON Prod.KdProduksi = Tug.KdProduksi

191 231 JOIN DetilTugas Det ON Det.KdTugas = Tug.KdTugas JOIN Karyawan Kar ON Kar.KdKar = Det.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE Tug.Status!= 0 9. Menampilkan data pengambilan bahan baku berdasarkan nama karyawan CREATE VIEW PengambilanBahanKaryawan AS SELECT KdPengambilan, TglPengambilan, Kar.KdKar, NamaKar, Kar, TelpKar FROM PengambilanBahanBaku Peng JOIN Karyawan Kar ON Kar.KdKar = Peng.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE Peng.Status!= Menampilkan data barang jadi berdasarkan kode produksi CREATE VIEW BarangJadiProduksi AS SELECT KdBarangJadi, TglBarangMasuk, StatusBarangJadi, Prod.KdProduksi, NamaBarang, JumlahProduksi FROM BarangJadi Bar JOIN Produksi Prod ON Prod.KdProduksi = Bar.KdProduksi WHERE StatusBarangJadi!= Menampilkan data pembelian berdasarkan nomor pengajuan pembelian CREATE VIEW PembelianPengajuan AS SELECT Peng.KdPengajuan, TglPengajuan, StatusPengajuan, KdPembelian, TglPembelian, StatusPembelian FROM PengajuanPembelian Peng JOIN Pembelian Pem ON Pem.KdPengajuan = Peng.KdPengajuan WHERE StatusPembelian!= Menampilkan data retur pembelian berdasarkan nomor pembelian CREATE VIEW ReturPembelianv AS SELECT KdReturPemb, TglRetur, StatusRetur, AlasanRetur, Ret.KdKar, Pem.KdPembelian, Psok.KdPem, NamaPem, TelpPem, AlamatPem, Pos.KdPosPem, KotaPem, KecPem, KelPem FROM ReturPembelian Ret JOIN Pembelian Pem ON Pem.KdPembelian = Ret.KdReturPemb JOIN Pemasok Psok ON Psok.KdPem = Pem.KdPem JOIN TelpPemasok Telp ON Telp.KdPem = Psok.KdPem JOIN PosPemasok Pos ON Pos.KdPosPem = Psok.KdPosPem WHERE StatusRetur!= 0

192 Menampilkan data pengiriman berdasarkan nomor pengajuan pemesanan CREATE VIEW PengirimanPemesanan AS SELECT KdPengiriman, TglPengiriman, StatusPengiriman, Kar.KdKar, NamaKar, TelpKar, Pem.KdPemesanan, NamaProyek, AlamatPemesanan, Pos.KdPosPemesanan, KotaPemesanan, KecPemesanan, KelPemesanan,Pel.KdPel, NamaPel, TelpPel FROM Pengiriman Peng JOIN Karyawan Kar ON Kar.KdKar = Peng.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar JOIN Pemesanan Pem ON Pem.KdPemesanan = Peng.KdPemesanan JOIN PosPemesanan Pos ON Pos.KdPosPemesanan = Pem.KdPosPemesanan JOIN Pelanggan Pel ON Pel.KdPel = Pem.KdPel JOIN TelpPelanggan Telp1 ON Telp1.KdPel = Pel.KdPel WHERE StatusPengiriman!= Menampilkan data pemasangan berdasarkan nomor pengajuan pemesanan CREATE VIEW PemasanganPemesanan AS SELECT KdPemasangan, TglPemasangan, Fotohasil, Pem.KdPemesanan, NamaProyek, AlamatPemesanan, Pos.KdPosPemesanan, KotaPemesanan, KecPemesanan, KelPemesanan FROM Pemasangan Peng JOIN Pemesanan Pem ON Pem.KdPemesanan = Peng.KdPemesanan JOIN PosPemesanan Pos ON Pos.KdPosPemesanan = Pem.KdPosPemesanan WHERE Peng.Status!= Menampilkan detil pengajuan pemesanan yang dibuat berdasarkan data karyawan CREATE VIEW PengPemesananKaryawan AS SELECT KdPemesanan, TglPengPemesanan, GmbPengPemesanan, NamaProyek, Kar.KdKar, NamaKar, TelpKar FROM Pemesanan Pem JOIN Karyawan Kar ON Kar.KdKar = Pem.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE StatusPengPemesanan!= Menampilkan kontrak yang diurus oleh karyawan CREATE VIEW KontrakKar AS SELECT KdKontrak, TglKontrak, StatusKontrak, KdPemesanan, Kar.KdKar, NamaKar, TelpKar FROM Kontrak Kon JOIN Karyawan Kar ON Kar.KdKar = Kon.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE StatusKontrak!= 0

193 Menampilkan data pengajuan pembelian yang diajukan oleh karyawan CREATE VIEW PengPembelianKar AS SELECT KdPengajuan, TglPengajuan, StatusPengajuan, Kar.KdKar, NamaKar, Kar, TelpKar FROM PengajuanPembelian Peng JOIN Karyawan Kar ON Kar.KdKar = Peng.KdKarJOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE StatusPengajuan!= Menampilkan data pembelian yang dibuat oleh karyawan CREATE VIEW PembelianKaryawan AS SELECT KdPembelian, TglPembelian, StatusPembelian, KdPengajuan, Pem.KdPem, NamaPem, AlamatPem, Pos.KdPosPem, TelpPem, Kar.KdKar, NamaKar, Kar, TelpKar FROM Pembelian Pemb JOIN Pemasok Pem ON Pem.KdPem = Pemb.KdPemb JOIN PosPemasok Pos ON Pos.KdPem = Pem.KdPos JOIN TelpPemasok Telp ON Telp.KdPem = Pem.KdPem JOIN Karyawan Kar ON Kar.KdKar = Pemb.KdKar OIN TelpKaryawan Telp1 ON Telp1.KdKar = Kar.KdKar WHERE StatusPembelian!= Menampilkan data retur pembelian yang diurus oleh karyawan CREATE VIEW ReturPembKaryawan AS SELECT KdReturPemb, TglRetur, StatusRetur, AlasanRetur, KdPembelian, Kar.KdKar, NamaKar, TelpKar FROM ReturPembelian Ret JOIN Karyawan Kar ON Kar.KdKar = Ret.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE StatusRetur!= Menampilkan data pengiriman dan karyawan yang terlibat di dalamnya CREATE VIEW PengirimanaKar AS SELECT KdPengiriman, TglPengiriman, StatusPengiriman, KdPemesanan, Kar.KdKar, NamaKar, TelpKar FROM Pengiriman Peng JOIN Karyawan Kar ON Kar.KdKar = Peng.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE StatusPengiriman!= Menampilkan data pemasangan yang dilakukan oleh karyawan CREATE VIEW PemasanganKar AS SELECT

194 234 Pems.KdPemasangan, TglPemasangan, fotohasil, KdPemesanan, StatusPemasangan, Kar.KdKar, NamaKar, TelpKar FROM Pemasangan Pems JOIN DetilPemasangan Det ON Det.KdPemasangan = Pems.KdPemasangan JOIN Karyawan Kar ON Kar.KdKar = Det.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar WHERE StatusPemasangan!= Menampilkan data barang jadi yang dikirim CREATE VIEW BarangJadiKirim AS SELECT Peng.KdPengiriman, TglPengiriman, StatusPengiriman, Peng.KdPemesanan, KdBarangJadi, StatusBarangJadi, Bar.KdProduksi, NamaBarang, JumlahProduksi FROM Pengiriman Peng JOIN BarangJadi Bar ON Bar.KdPengiriman = Peng.KdPengiriman JOIN Produksi Prod ON Prod.KdProduksi = Bar.KdProduksi WHERE StatusPengiriman!= Menampilkan rumus yang digunakan untuk produksi CREATE VIEW RumusProduksi AS SELECT Rum.KdRumus, NamaRumus, Gambar, Deskripsi, KdProduksi, NamaBarang, JumlahProduksi, UkTinggi, UkLebar, KdPemesanan FROM RumusBahanBaku Rum JOIN Produksi Prod ON Prod.KdRumus = Rum.KdRumus WHERE Rum.Status!= Menampilkan tugas produksi sesuai nomor produksi CREATE VIEW TugasProduksiV AS SELECT KdTugas, Keterangan, Prod.KdProduksi, NamaBarang, TglMulaiProduksi, JumlahProduksi, UkLebar, Uktinggi, KdPemesanan FROM TugasProduksi Tug JOIN Produksi Prod ON Prod.KdProduksi = Tug.KdProduksi WHERE Tug.Status!= Menampilkan bahan baku yang dibeli melalui pembelian CREATE VIEW BahanBakuPembelian AS SELECT Pemb.KdPembelian, TglPembelian, Pem.KdPem, NamaPem, Bah.KdBahanBaku, NamaBahanBaku, TipeBahanBaku, HargaBeli, JumlahBeli, (HargaBeli*JumlahBeli) TotalBeli FROM Pembelian Pemb JOIN Pemasok Pem ON Pem.KdPem = Pemb.KdPem

195 235 JOIN DetilPembelian Det ON Det.KdPembelian = Pemb.KdPembelian JOIN BahanBaku Bah ON Bah.KdBahanBaku = Det.KdBahanBaku JOIN TipeBahan Tip ON Tip.KdTipeBahan = Bah.KdTipeBahan WHERE StatusPembelian!= Menampilkan pembelian berdasarkan nama pemasok CREATE VIEW PembelianPemasok AS SELECT Pem.KdPemasok, NamaPem, AlamatPem, Pem, FaxPem, TelpPem, KdPosPem, KotaPem, KecPem, KelPem, KdPembelian, TglPembelian, StatusPembelian, KdPengajuan FROM Pemasok Pem JOIN Pembelian Pemb ON Pemb.KdPem =Pem.KdPem JOIN TelpPemasok Telp ON Telp.KdPem = Pem.KdPem JOIN PosPemasok Pos ON Pos.KdPosPem = Pem.KdPosPemasok WHERE StatusPembelian!= Menampilkan daftar bahan baku dalam pengajuan pembelian CREATE VIEW BahanBakuAju AS SELECT Peng.KdPengajuan,TglPengajuan, Bah.KdBahanBaku, NamaBahanBaku, TipeBahanBaku, SatuanBahanBaku, JumlahAju FROM PengajuanPembelian Peng JOIN DetilPengajuanBeli Det ON Det.KdPengajuan = Peng.KdPengajuan JOIN BahanBaku Bah ON Bah.KdBahanBaku = Det.KdBahanBaku JOIN TipeBahan Tip ON Tip.KdTipeBahan = Bah.KdTipeBahan JOIN SatuanBahan Sat ON Sat.KdSatuanBahan = Bah.KdSatuanBahan WHERE StatusPengajuan!= Menampilkan daftar bahan baku dalam retur pembelian CREATE VIEW BahanBakuRetur AS SELECT Ret.KdReturPemb, TglRetur, AlasanRetur, KdPembelian, Bah.KdBahanBaku, NamaBahanBaku, TipeBahanBaku, SatuanBahanBaku, JumlahRetur FROM ReturPembelian Ret JOIN DetilReturBeli Det ON Det.KdReturPemb = Ret. KdReturPemb JOIN BahanBaku Bah ON Bah.KdBahanBaku = Det.KdBahanBaku JOIN TipeBahan Tip ON Tip.KdTipeBahan = Bah.KdTipeBahan JOIN SatuanBahan Sat ON Sat.KdSatuanBahan = Bah.KdSatuanBahan WHERE StatusRetur!= Menampilkan daftar bahan baku dalam pengambilan bahan baku CREATE VIEW BahanBakuAmbil AS SELECT Peng.KdPengambilan, TglPengambilan, KdKar, Bah.KdBahanBaku, NamaBahanBaku, TipeBahanBaku, SatuanBahanBaku, JumlahAmbil

196 236 FROM PengambilanBahanBaku Peng JOIN DetilPengambilanBahan Det ON Det.KdPengambilan = Peng.KdPengambilan JOIN BahanBaku Bah ON Bah.KdBahanBaku = Det.KdBahanBaku JOIN TipeBahan Tip ON Tip.KdTipeBahan = Bah.KdTipeBahan JOIN SatuanBahan Sat ON Sat.KdSatuanBahan = Bah.KdSatuanBahan WHERE Peng.Status!= Menampilkan data pembayaran pemesanan berdasarkan nama karyawan yang mengurusnya dan nomor pemesanan CREATE VIEW PembayaranPemesananV AS SELECT KdPembPemesanan, TglPembPemesanan, Kar.KdKar, NamaKar, TelpKar, Pem.KdPemesanan, TglPemesanan, Diskon, Pel.KdPel, NamaPel, TelpPel FROM PembayaranPemesanan Pemb JOIN Karyawan Kar ON Kar.KdKar = Pemb.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar JOIN Pemesanan Pem ON Pem.KdPemesanan = Pemb.KdPemesanan JOIN Pelanggan Pel ON Pel.KdPel = Pem.KdPel JOIN TelpPelanggan Telp1 ON Telp1.KdPel = Pel.KdPel JOIN Kontrak Kon ON Kon.KdPemesanan = Pem.KdPemesanan WHERE Pemb.Status!= '0' 31. Menampilkan data pembayaran pembelian berdasarkan nama karyawan yang mengurusnya dan nomor pembelian CREATE VIEW AS PembayaranPembelianV AS SELECT KdPembPembelian, TglPembPembelian, Kar.KdKar, NamaKar, TelpKar, Pem.KdPembelian, TglPembelian, StatusPembelian, Pems.KdPem, NamaPem, TelpPem FROM PembayaranPembelian Pemb JOIN Karyawan Kar ON Kar.KdKar = Pemb.KdKar JOIN TelpKaryawan Telp ON Telp.KdKar = Kar.KdKar JOIN Pembelian Pem ON Pem.KdPembelian = Pemb.KdPembelian JOIN Pemasok Pems ON Pems.KdPem = Pem.KdPem JOIN TelpPemasok Telp1 ON Telp1.KdPem = Pems.KdPem WHERE Pemb.Status!= 0

197 237 Tabel 3.104Stored Procedures 1. Memasukkan dan mengubah data pengajuan pemesanan CREATE PROCEDURE SaveOrUpdatePengPemesanan (IN KdPem CHAR(7), IN TglPeng DATETIME,IN TglPem Datetime, IN Dsn tinyint,in GmbPeng VARCHAR(20), IN StatusPeng CHAR(1), IN NamProy VARCHAR(40), IN AlamatPem VARCHAR(100), IN KdPosPem CHAR(5), IN KotaPem VARCHAR(40), IN KecPem VARCHAR(40), IN KelPem VARCHAR(40), IN PelKd CHAR(5), IN KarKd CHAR(5)) BEGIN IF NOT EXISTS ( SELECT KdPosPemesanan FROM PosPemesanan WHERE KdPosPemesanan = KdPosPem ) THEN INSERT INTO PosPemesanan (KdPosPemesanan, KotaPemesanan, KecPemesanan, KelPemesanan) VALUES (KdPosPem, KotaPem, KecPem, KelPem); END IF; IF NOT EXISTS ( SELECT KdPemesanan FROM Pemesanan WHERE KdPemesanan = KdPem) THEN INSERT INTO Pemesanan (kdpemesanan,tglpemesanan,diskon,kdpel,kdkar,tglpengpemesanan,gmbpengpemesa nan,statuspengpemesanan,namaproyek,alamatpemesanan,kdpospemesanan) VALUES (KdPem,TglPem,Dsn,PelKd,KarKd,TglPeng,GmbPeng,StatusPeng,NamProy,AlamatPem, KdPosPem); ELSE UPDATE Pemesanan set kdpemesanan=kdpem,tglpemesanan=tglpem,diskon=dsn,kdpel=pelkd,kdkar=karkd, TglPengPemesanan=TglPeng,GmbPengPemesanan=GmbPeng,StatusPengPemesanan=Stat uspeng,namaproyek=namproy,alamatpemesanan=alamatpem,kdpospemesanan=kdpos Pem WHERE KdPemesanan=KdPem; END IF; END 2. Memasukkan dan mengubah data pelanggan CREATE PROCEDURE SaveOrUpdatePelanggan (IN PelKd CHAR(5), IN PelNama VARCHAR(40), IN PelAlamat VARCHAR(100), IN Pel VARCHAR(50), IN PelTelp VARCHAR(15), IN KdPosP CHAR(5), IN KotaP VARCHAR(20), IN KecP VARCHAR(20), IN KelP VARCHAR(20), IN PelFax VARCHAR (15) ) BEGIN IF NOT EXISTS ( SELECT KdPosPelanggan FROM PosPelanggan WHERE KdPosPel=KdPosP ) THEN INSERT INTO PosPelanggan (KdPosPel, KotaPel, KecPel, KelPel) VALUES (KdPosP, KotaP, KecP, KelP); END IF; INSERT INTO TelpPelanggan (KdPel, TelpPel) VALUES (PelKd, PelTelp); IF NOT EXISTS (SELECT KdPel FROM Pelanggan WHERE KdPel = PelKd ) THEN INSERT INTO TelpPelanggan (KdPel, TelpPel) VALUES (PelKd, PelTelp);

198 238 INSERT INTO Pelanggan (KdPel, NamaPel, AlamatPel, KdPosPel, FaxPel, Pel) VALUES (PelKd, PelNama, PelAlamat, KdPosP, PelFax, Pel ); ELSE UPDATE TelpPelanggan SET TelpPel = PelTelp WHERE KdPel = PelKd; UPDATE Pelanggan SET KdPel= PelKd, NamaPel= PelNama, AlamatPel= PelAlamat, KdPosPel= KdPosP, FaxPel =PelFax, Pel= Pel WHERE KdPel = PelKd; END IF; END 3. Memasukkan dan mengubah data rumus bahan baku CREATE PROCEDURE SaveOrUpdateRumusBahanBaku (IN KdRum Char(5), IN NamaRum VARCHAR (40), IN Gamb VARCHAR(20), IN Des VARCHAR(100)) BEGIN IF EXISTS( SELECT KdRumus FROM RumusBahanBaku WHERE KdRumus = KdRum )THEN update RumusBahanbaku set KdRumus=KdRum, NamaRumus=NamaRum, Gambar= Gamb, Deskripsi=Des where KdRumus=KdRum; ELSE INSERT INTO RumusBahanBaku ( KdRumus,NamaRumus, Gambar,Deskripsi) Values (KdRum, NamaRum, Gamb, Des); END IF; END 4. Memasukkan dan mengubah data produksi CREATE PROCEDURE SaveOrUpdateProduksi (IN KdPro Char (7), IN NamaBar VARCHAR(40),IN TglMulPro DATETIME, IN StatPro CHAR(1), IN Jum INT, IN UkTin INT, IN UkLeb INT, IN HarPro INT,IN KdRum Char(5), IN KdPeme Char(7)) BEGIN IF EXISTS( SELECT KdProduksi FROM Produksi WHERE KdProduksi=KdPro ) THEN Update Produksi set KdProduksi=KdPro, NamaBarang=NamaBar, TglMulaiProduksi=TglMulPro, StatusProduksi=StatPro, JumlahProduksi=Jum, UkTinggi=UkTin, UkLebar=UkLeb, HargaJual=Harpro,KdRumus=KdRum,KdPemesanan=KdPeme where KdProduksi=KdPro; ELSE INSERT INTO Produksi (KdProduksi, NamaBarang, TglMulaiProduksi, StatusProduksi, JumlahProduksi, UkTinggi, UkLebar, HargaJual, KdRumus, KdPemesanan) VALUES (KdPro, NamaBar, TglMulPro, StatPro, Jum, UkTin, UkLeb, HarPro, KdRum, KdPeme); END IF; END

199 5. Memasukkan dan mengubah data kontrak CREATE PROCEDURE SaveOrUpdateKontrak( IN KdKon Char(7),IN Spes VARCHAR(200), IN Ket VARCHAR(200), IN TglKon DATETIME, IN StatKon Char(1), IN Dsn TinyInt, IN KdeKar Char(5), IN KdePeme Char(7)) BEGIN IF EXISTS ( SELECT KdKontrak FROM Kontrak WHERE KdKontrak=KdKon ) THEN UPDATE Kontrak SET KdKontrak = KdKon, Spesifikasi=Spes, Keterangan=Ket, TglKontrak=TglKon, StatusKontrak=StatKon, Diskon=Dsn, KdKar=KdeKar, KdPemesanan=KdePeme WHERE KdKontrak=KdKon; ELSE INSERT INTO Kontrak (KdKontrak, Spesifikasi, Keterangan, TglKontrak, StatusKontrak,Diskon,KdKar,KdPemesanan) VALUES (KdKon, Spes, Ket, TglKon, StatKon, Dsn, KdeKar, KdePeme); END IF; END 6. Memasukkan dan mengubah data rancangan kusen pintu jendela CREATE PROCEDURE SaveOrUpdateRancanganKusen (IN KdRan CHAR(7), IN TglRan DATETIME, IN GmbRan VARCHAR(20), IN StatusRan CHAR(1), IN UkLub INT, IN UkJen INT, IN Ket VARCHAR(100), IN KdPem CHAR(7)) BEGIN IF EXISTS( SELECT KdRancangan FROM RancanganKusen WHERE KdRancangan=KdRan ) THEN UPDATE RancanganKusen SET KdRancangan=KdRan, TglRancangan=TglRan, GmbRancangan=GmbRan, StatusRancangan=StatusRan, UkLubang=Uklub, UkJendela=UkJen, Keterangan=Ket, KdPemesanan=KdPem WHERE KdRancangan=KdRan; ELSE INSERT INTO RancanganKusen (KdRancangan, TglRancangan, GmbRancangan, StatusRancangan, UkLubang, UkJendela, Keterangan, KdPemesanan) VALUES (KdRan, TglRan, GmbRan, StatusRan, UkLub, UkJen, Ket, KdPem); END IF; END 7. Memasukkan dan mengubah data pemesanan (dihapus kata HER) CREATE PROCEDURE SaveOrUpdatePemesanan (IN KdPem CHAR(7), IN TglPem DATETIME, IN Disc INT) BEGIN UPDATE Pemesanan SET TglPemesanan = TglPem, Diskon = Disc WHERE KdPemesanan = KdPem; END 239

200 Memasukkan dan mengubah data target produksi CREATE PROCEDURE SaveOrUpdateTargetProduksi (IN KdPem CHAR(7), IN TglPeng DATE, IN TglPem DATE, IN Ket VARCHAR(100)) BEGIN IF EXISTS ( SELECT KdPemesanan FROM TargetProduksi WHERE Kdpemesanan=KdPem ) THEN UPDATE TargetProduksi SET TglPengiriman=TglPeng, TglPemasangan=TglPem, Keterangan=Ket, KdPemesanan=KdPem WHERE Kdpemesanan=KdPem; ELSE INSERT INTO TargetProduksi (TglPengiriman, TglPemasangan, Keterangan, KdPemesanan) VALUES (TglPeng, TglPem, Ket, KdPem); END IF; END 9. Memasukkan dan mengubah data tugas produksi CREATE PROCEDURE SaveOrUpdateTugasProduksi (IN KdTug CHAR(7), IN Ket VARCHAR(100), IN KdPro CHAR(7)) BEGIN IF EXISTS ( SELECT KdTugas FROM TugasProduksi WHERE KdTugas = KdTug ) THEN UPDATE TugasProduksi SET KdTugas= KdTug, Keterangan= Ket, KdProduksi= KdPro WHERE KdTugas = KdTug; ELSE INSERT INTO TugasProduksi (KdTugas, Keterangan, KdProduksi) VALUES (KdTug, Ket, KdPro); END IF; END 10. Memasukkan dan mengubah data pengambilan bahan baku CREATE PROCEDURE SaveOrUpdatePengambilanBahanBaku (IN KdPeng CHAR(7), IN TglPeng DATETIME, IN KdeKar CHAR(5)) BEGIN IF EXISTS ( SELECT KdPengambilan FROM PengambilanBahanBaku WHERE KdPengambilan=Kdpeng ) THEN UPDATE PengambilanBahanBaku SET KdPengambilan=KdPeng, TglPengambilan=TglPeng, KdKar=KdeKar WHERE KdPengambilan=Kdpeng; ELSE INSERT INTO PengambilanBahanBaku (KdPengambilan,TglPengambilan,KdKar) VALUES (KdPeng,TglPeng,KdeKar); END IF; END

201 11. Memasukkan dan mengubah data barang jadi CREATE PROCEDURE SaveOrUpdateBarangJadi (IN KdBarJad Char(7), IN TglBarMas DATETIME, IN StatBarJadi CHAR(1), IN KdPeng CHAR(7), IN KdProd CHAR(7) ) BEGIN IF EXISTS ( SELECT KdBarangjadi FROM BarangJadi WHERE KdBarangjadi = KdBarJad ) THEN UPDATE BarangJadi SET KdBarangjadi= KdBarJad, TglBarangMasuk= TglBarMas, StatusBarangJadi= StatBarJadi, KdPengiriman= KdPeng, KdProduksi= KdProd WHERE KdBarangjadi = KdBarJad; ELSE INSERT INTO BarangJadi (KdBarangjadi, TglBarangMasuk, StatusBarangJadi, KdPengiriman, KdProduksi) VALUES (KdBarJad, TglBarMas, StatBarJadi, KdPeng, KdProd); END IF; END 12. Memasukkan dan mengubah data bahan baku CREATE PROCEDURE SaveOrUpdateBahanBaku (IN KdBaBaku Char(5), IN NmBBaku VARCHAR(40), IN KdTipBa CHAR(5), IN KdSatBa CHAR(5), IN Har INT, IN Stk INT, IN StkMn INT) BEGIN IF EXISTS ( SELECT KdBahanBaku FROM BahanBaku WHERE KdBahanBaku = KdBaBaku ) THEN UPDATE BahanBaku SET KdBahanBaku=KdBaBaku,NamaBahanBaku=NmBBaku, KdTipeBahan=KdTipBa, KdSatuanBahan=KdSatBa, Harga=Har, Stok=Stk, StokMin=StkMn Where KdBahanBaku = KdBaBaku; ELSE INSERT INTO BahanBaku (KdBahanBaku,NamaBahanBaku, KdTipeBahan, KdSatuanBahan, Harga, Stok, StokMin) VALUES (KdBaBaku, NmBBaku, KdTipBa, KdSatBa, Har, Stk, StkMn); END IF; END 13. Memasukkan dan mengubah data pemasok CREATE PROCEDURE SaveOrUpdatePemasok (IN PemKd CHAR(5), IN PemNama VARCHAR(40), IN PemAlamat VARCHAR(10), IN Pem Varchar(50), IN KdPosP CHAR(5), IN KotaP VARCHAR(20), IN KecP VARCHAR(20), IN KelP VARCHAR(20), IN PemTelp VARCHAR(15), IN PemFax VARCHAR(15)) BEGIN IF NOT EXISTS ( SELECT KdPosPem FROM PosPemasok WHERE KdPosPem = KdPosP ) THEN INSERT INTO PosPemasok (KdPosPem, KotaPem, KecPem, KelPem) VALUES (KdPosP, KotaP, KecP, KelP); END IF; 241

202 242 IF NOT EXISTS (SELECT KdPem FROM Pemasok WHERE KdPem = PemKd ) THEN INSERT INTO TelpPemasok (KdPem, TelpPem) VALUES (PemKd, PemTelp); INSERT INTO Pemasok (KdPem, NamaPem, AlamatPem, KdPosPem, FaxPem, Pem) VALUES (PemKd, PemNama, PemAlamat, KdPosP, PemFax, Pem ); ELSE UPDATE TelpPemasok SET TelpPem = PemTelp WHERE KdPem = PemKd; UPDATE Pemasok SET KdPem= PemKd, NamaPem=PemNama, AlamatPem= PemAlamat, KdPosPem= KdPosP, FaxPem= PemFax, Pem= Pem WHERE KdPem = PemKd ; END IF; END 14. Memasukkan dan mengubah data pengajuan pembelian CREATE PROCEDURE SaveOrUpdatePengajuanPembelian (IN KdePeng CHAR(7), IN TglPeng DATETIME, IN StatPeng CHAR(1), IN KdeKar CHAR(5)) BEGIN IF EXISTS ( SELECT KdPengajuan FROM PengajuanPembelian WHERE KdPengajuan = KdePeng ) THEN UPDATE PengajuanPembelian SET KdPengajuan= KdePeng, TglPengajuan= TglPeng, StatusPengajuan= StatPeng, KdKar= KdeKar WHERE KdPengajuan = KdePeng; ELSE INSERT INTO PengajuanPembelian (KdPengajuan, TglPengajuan, StatusPengajuan, KdKar) VALUES(KdePeng, TglPeng, StatPeng, KdeKar); END IF; END 15. Memasukkan dan mengubah data pembelian CREATE PROCEDURE SaveOrUpdatePembelian (IN KdPemb CHAR(7), IN TglPemb DATETIME, IN StatPemb CHAR(1), IN KdeKar CHAR(5), IN KdePeng CHAR(7), IN KdePem CHAR(5)) BEGIN IF EXISTS ( SELECT KdPembelian FROM Pembelian WHERE KdPembelian = KdPemb) THEN UPDATE Pembelian SET KdPembelian= KdPemb, TglPembelian= TglPemb, StatusPembelian= StatPemb, KdKar= KdeKar, KdPengajuan= KdePeng, KdPem= KdePem WHERE KdPembelian = KdPemb; ELSE INSERT INTO Pembelian (KdPembelian, TglPembelian, StatusPembelian, KdKar, KdPengajuan, KdPem) VALUES(KdPemb, TglPemb, StatPemb, KdeKar, KdePeng, KdePem); END IF; END

203 Memasukkan dan mengubah data retur pembelian CREATE PROCEDURE SaveOrUpdateReturPembelian (IN KdRet CHAR(7), IN TglRet DATETIME, IN StaRet CHAR(1), IN AlasR VARCHAR(20), IN KdeKar Char(5), IN KdePemb CHAR(7)) BEGIN IF EXISTS ( SELECT KdReturPemb FROM ReturPembelian WHERE KdReturPemb = KdRet ) THEN UPDATE ReturPembelian SET KdReturPemb=KdRet, TglRetur=TglRet, StatusRetur=StaRet, AlasanRetur=AlasR, KdKar=KdeKar, KdPembelian=KdePemb WHERE KdReturPemb = KdRet; ELSE INSERT INTO ReturPembelian (KdReturPemb, TglRetur, StatusRetur, AlasanRetur, KdKar, KdPembelian) VALUES (KdRet,TglRet,StaRet,AlasR,KdeKar,KdePemb); END IF; END 17. Memasukkan dan mengubah data pengiriman CREATE PROCEDURE SaveOrUpdatePengiriman(IN KdPeng CHAR(7), IN TglPeng DATETIME, IN StatPeng CHAR(1), IN KdePeme CHAR(7), IN KdeKar CHAR(5)) BEGIN IF EXISTS ( SELECT KdPengiriman FROM pengiriman WHERE KdPengiriman = KdPeng ) THEN UPDATE pengiriman SET KdPengiriman=KdPeng, TglPengiriman=TglPeng, StatusPengiriman= StatPeng, KdPemesanan= KdePeme, KdKar= KdeKar WHERE KdPengiriman = KdPeng; ELSE INSERT INTO pengiriman (KdPengiriman, TglPengiriman, StatusPengiriman, KdPemesanan, KdKar) VALUES (KdPeng, TglPeng, StatPeng, KdePeme, KdeKar); END IF; END 18. Memasukkan dan mengubah data pemasangan CREATE PROCEDURE SaveOrUpdatePemasangan (IN KdePema CHAR(7), IN TglPema DATETIME, IN Gamb VARCHAR(20), IN KdPeme CHAR(7)) BEGIN IF EXISTS ( SELECT KdPemasangan FROM Pemasangan WHERE KdPemasangan = KdePema ) THEN UPDATE Pemasangan SET KdPemasangan= KdePema, TglPemasangan= TglPema, Gambar= Gamb, KdPemesanan= KdPeme WHERE KdPemasangan = KdePema; ELSE INSERT INTO Pemasangan (KdPemasangan, TglPemasangan, Gambar, KdPemesanan) VALUES (KdePema, TglPema, Gamb, KdPeme);

204 244 END IF; END 19. Memasukkan dan mengubah data karyawan CREATE PROCEDURE SaveOrUpdateKaryawan (IN KarKd CHAR(5), IN KarNama VARCHAR(40), IN KarAlamat VARCHAR(10), IN KdPosK CHAR(5), IN KotaK VARCHAR(20), IN KecK VARCHAR(20), IN KelK VARCHAR(20), IN KarTelp VARCHAR(15), IN JenisKel CHAR(1), IN FotoKar VARCHAR(20), IN PosisiKd CHAR(3), IN Kar VARCHAR(50)) BEGIN IF NOT EXISTS ( SELECT KdPosKar FROM PosKaryawan WHERE KdPosKar= KdPosK ) THEN INSERT INTO PosKaryawan (KdPosKar, KotaKar, KecKar, KelKar) VALUES (KdPosK, KotaK, KecK, KelK); END IF; IF NOT EXISTS ( SELECT KdKar FROM Karyawan WHERE KdKar = KarKd ) THEN INSERT INTO TelpKaryawan (KdKar, TelpKar) VALUES (KarKd, KarTelp); INSERT INTO Karyawan (KdKar, NamaKar, AlamatKar, KdPosKar, Kar, KdPosisi, FotoKar, JenisKelamin) VALUES (KarKd, KarNama, KarAlamat, KdPosK, Kar , PosisiKd, KarFoto, JenisKel); ELSE UPDATE TelpKaryawan SET TelpKar = KarTelp WHERE KdKar = KarKd; UPDATE Karyawan SET KdKar= KarKd, NamaKar= KarNama, AlamatKar= KarAlamat, KdPosKar= KdPosK, Kar= Kar , KdPosisi= PosisiKd, FotoKar= KarFoto, JenisKelamin= JenisKel; END IF; END 20. Memasukkan dan mengubah data pembayaran pemesanan CREATE PROCEDURE SaveOrUpdatePembayaranPemesanan (IN KdPPeme CHAR(7), IN TglPPeme DATETIME, IN Jbyar INT, IN KdeKar CHAR(5), IN KdePeme CHAR(7)) BEGIN IF EXISTS ( SELECT Kd PembPemesanan FROM PembayaranPemesanan WHERE KdPembPemesanan = KdPPeme ) THEN UPDATE PembayaranPemesanan SET KdPembPemesanan= KdPPeme, TglPembPemesanan=TglPPeme, JumlahBayar=Jbyar, KdKar=KdeKar, KdPemesanan= KdePeme WHERE KdPembPemesanan = KdPPeme; ELSE INSERT INTO PembayaranPemesanan (KdPembPemesanan, TglPembPemesanan, JumlahBayar, KdKar, KdPemesanan) VALUES (KdPPeme, TglPPeme, Jbyar, KdeKar,KdePeme); END IF; END

205 Memasukkan dan mengubah data pembayaran pembelian CREATE PROCEDURE SaveOrUpdatePembayaranPembelian (IN KdPPemb CHAR(7), IN TglPPemb DATETIME, IN KdPemb CHAR(7), IN KdeKar CHAR(5), IN Jbyar INT) BEGIN IF EXISTS ( SELECT KdPembPembelian FROM PembayaranPembelian WHERE KdPembPembelian = KdPPemb ) THEN UPDATE PembayaranPembelian SET KdPembPembelian= KdPPemb, TglPembPembelian= TglPPemb, KdPembelian= KdPemb, KdKar= KdeKar, JumlahBayar=Jbyar WHERE KdPembPembelian = KdPPemb; ELSE INSERT INTO PembayaranPembelian (KdPembPembelian, TglPembPembelian, KdPembelian, KdKar, JumlahBayar) VALUES ( KdPPemb, TglPPemb, KdPemb, KdeKar, Jbyar); END IF; END Merancang Mekanisme Keamanan Tujuannya untuk merancang mekanisme keamaman untuk basis data yang ditentukan oleh pengguna selama tahap Requirements andcollection dari Database System Development Lifecyle. Berikut terdapat perancangan mekanisme keamanan mengenai hak akses bagi pihak-pihak yang terlibat dalam sistem basis data:

206 246 Tabel 3.105Pemberian Hak Akses 1 Transaction Wakil Direktur / Relation Direktur Pemasaran Pembelian I R U D I R U D I R U D I R U D Karyawan X X X X X X X X PosisiKaryawan X X X X X X X X PosKaryawan X X X X X X Pelanggan X X X X X PosPelanggan X X X X X Pemasok X X X X X PosPemasok X X X X X TugasProduksi X X DetilTugas X X Pemasangan X X X X X DetilPemasangan X X X X X RumusBahanBaku X X DetilRumus X X Pembelian X X X X X DetilPembelian X X X X X PengajuanPembelian X X DetilPengajuanBeli X X ReturPembelian X X X X X DetilReturBeli X X X X X PengambilanBahanBaku X X DetilPengambilanBahan X X TelpKaryawan X X X X X X X X TelpPelanggan X X X X X TelpPemasok X X X X X BahanBaku X X X TipeBahan X X X SatuanBahan X X X Produksi X X TargetProduksi X X X PembayaranPembelian X X X X X BarangJadi X X X Pengiriman X X X X X Kontrak X X X X X Pemesanan X X X X X PosPemesanan X X X X X RancanganKusen X X X PembayaranPemesanan X X X X X

207 247 Tabel 3.106Pemberian Hak Akses 2 Transaction Gudang Produksi Admin / Relation I R U D I R U D I R U D Karyawan X X X X X PosisiKaryawan X X X X X PosKaryawan X X X Pelanggan X X X X X PosPelanggan X X X X Pemasok X X X PosPemasok X X X TugasProduksi X X X X X X DetilTugas X X X X X X Pemasangan X X X X DetilPemasangan X X X X RumusBahanBaku X X X X X X DetilRumus X X X X X X Pembelian X X X DetilPembelian X X X PengajuanPembelian X X X X X X DetilPengajuanBeli X X X X X X ReturPembelian X X X DetilReturBeli X X X PengambilanBahanBaku X X X X X X DetilPengambilanBahan X X X X X X TelpKaryawan X X X X X TelpPelanggan X X X X X TelpPemasok X X X BahanBaku X X X X X X X TipeBahan X X X X X X X SatuanBahan X X X X X X X Produksi X X X X X X TargetProduksi X X X X X X X PembayaranPembelian X X X BarangJadi X X X X X X X Pengiriman X X X X X Kontrak X X X Pemesanan X X X X PosPemesanan X X X X RancanganKusen X X X X X X PembayaranPemesanan X X X

208 Direktur Tabel 3.107Hak Akses bagi Direktur GRANT SELECT, INSERT, UPDATE ON Karyawan TO Direktur GRANT SELECT, INSERT, UPDATE ON PosisiKaryawan TO Direktur GRANT SELECT, INSERT, UPDATE ON PosKaryawan TO Direktur GRANT SELECT, INSERT, UPDATE ON TelpKaryawan TO Direktur GRANT SELECT ON Pelanggan TO Direktur GRANT SELECT ON PosPelanggan TO Direktur GRANT SELECT ON Pemasok TO Direktur GRANT SELECT ON PosPemasok TO Direktur GRANT SELECT ON TugasProduksi TO Direktur GRANT SELECT ON DetilTugas TO Direktur GRANT SELECT ON Pemasangan TO Direktur GRANT SELECT ON DetilPemasangan TO Direktur GRANT SELECT ON RumusBahanBaku TO Direktur GRANT SELECT ON DetilRumus TO Direktur GRANT SELECT ON Pembelian TO Direktur GRANT SELECT ON DetilPembelian TO Direktur GRANT SELECT ON PengajuanPembelian TO Direktur GRANT SELECT ON DetilPengajuanBeli TO Direktur GRANT SELECT ON PengambilanBahanBaku TO Direktur GRANT SELECT ON DetilPengambilanBahan TO Direktur GRANT SELECT ON TelpPelanggan TO Direktur GRANT SELECT ON TelpPemasok TO Direktur GRANT SELECT ON BahanBaku TO Direktur GRANT SELECT ON TipeBahan TO Direktur GRANT SELECT ON SatuanBahan TO Direktur GRANT SELECT ON Produksi TO Direktur GRANT SELECT ON TargetProduksi TO Direktur GRANT SELECT ON PembayaranPembelian TO Direktur GRANT SELECT ON BarangJadi TO Direktur GRANT SELECT ON Pengiriman TO Direktur GRANT SELECT ON Kontrak TO Direktur GRANT SELECT ON Pemesanan TO Direktur GRANT SELECT ON PosPemesanan TO Direktur GRANT SELECT ON RancanganKusen TO Direktur GRANT SELECT ON PembayaranPemesanan TO Direktur

209 Wakil Direktur Tabel Hak Akses bagi Wakil Direktur GRANT SELECT, INSERT, UPDATE ON Karyawan TO Wakil Direktur GRANT SELECT, INSERT, UPDATE ON PosisiKaryawan TO Wakil Direktur GRANT SELECT, INSERT, UPDATE ON PosKaryawan TO Wakil Direktur GRANT SELECT, INSERT, UPDATE ON TelpKaryawan TO Wakil Direktur GRANT SELECT ON Pelanggan TO Wakil Direktur GRANT SELECT ON PosPelanggan TO Wakil Direktur GRANT SELECT ON Pemasok TO Wakil Direktur GRANT SELECT ON PosPemasok TO Wakil Direktur GRANT SELECT ON TugasProduksi TO Wakil Direktur GRANT SELECT ON DetilTugas TO Wakil Direktur GRANT SELECT ON Pemasangan TO Wakil Direktur GRANT SELECT ON DetilPemasangan TO Wakil Direktur GRANT SELECT ON RumusBahanBaku TO Wakil Direktur GRANT SELECT ON DetilRumus TO Wakil Direktur GRANT SELECT ON Pembelian TO Wakil Direktur GRANT SELECT ON DetilPembelian TO Wakil Direktur GRANT SELECT ON PengajuanPembelian TO Wakil Direktur GRANT SELECT ON DetilPengajuanBeli TO Wakil Direktur GRANT SELECT ON PengambilanBahanBaku TO Wakil Direktur GRANT SELECT ON DetilPengambilanBahan TO Wakil Direktur GRANT SELECT ON TelpPelanggan TO Wakil Direktur GRANT SELECT ON TelpPemasok TO Wakil Direktur GRANT SELECT ON BahanBaku TO Wakil Direktur GRANT SELECT ON TipeBahan TO Wakil Direktur GRANT SELECT ON SatuanBahan TO Wakil Direktur GRANT SELECT ON Produksi TO Wakil Direktur GRANT SELECT ON TargetProduksi TO Wakil Direktur GRANT SELECT ON PembayaranPembelian TO Wakil Direktur GRANT SELECT ON BarangJadi TO Wakil Direktur GRANT SELECT ON Pengiriman TO Wakil Direktur GRANT SELECT ON Kontrak TO Wakil Direktur GRANT SELECT ON Pemesanan TO Wakil Direktur GRANT SELECT ON PosPemesanan TO Wakil Direktur GRANT SELECT ON RancanganKusen TO Wakil Direktur GRANT SELECT ON PembayaranPemesanan TO Wakil Direktur

210 Pemasaran Tabel 3.109Hak Akses bagi Divisi Pemasaran GRANT SELECT, INSERT, UPDATE ON Pelanggan TO Pemasaran GRANT SELECT, INSERT, UPDATE ON PosPelanggan TO Pemasaran GRANT SELECT, INSERT, UPDATE ON TelpPelanggan TO Pemasaran GRANT SELECT, INSERT, UPDATE ON Pemasangan TO Pemasaran GRANT SELECT, INSERT, UPDATE ON DetilPemasangan TO Pemasaran GRANT SELECT, INSERT, UPDATE ON Pengiriman TO Pemasaran GRANT SELECT, INSERT, UPDATE ON Kontrak TO Pemasaran GRANT SELECT, INSERT, UPDATE ON Pemesanan TO Pemasaran GRANT SELECT, INSERT, UPDATE ON PosPemesanan TO Pemasaran GRANT SELECT, INSERT, UPDATE ON PembayaranPemesanan TO Pemasaran GRANT SELECT ON Karyawan TO Pemasaran GRANT SELECT ON PosisiKaryawan TO Pemasaran GRANT SELECT ON TelpKaryawan TO Pemasaran GRANT SELECT ON TargetProduksi TO Pemasaran GRANT SELECT ON BarangJadi TO Pemasaran GRANT SELECT ON RancanganKusen TO Pemasaran 4. Pembelian Tabel 3.110Hak Akses bagi Divisi Pembelian GRANT SELECT, INSERT, UPDATE ON Pemasok TO Pembelian GRANT SELECT, INSERT, UPDATE ON PosPemasok TO Pembelian GRANT SELECT, INSERT, UPDATE ON Pembelian TO Pembelian GRANT SELECT, INSERT, UPDATE ON DetilPembelian TO Pembelian GRANT SELECT, INSERT, UPDATE ON ReturPembelian TO Pembelian GRANT SELECT, INSERT, UPDATE ON DetilReturBeli TO Pembelian GRANT SELECT, INSERT, UPDATE ON TelpPemasok TO Pembelian GRANT SELECT, INSERT, UPDATE ON PembayaranPembelian TO Pembelian GRANT SELECT ON Karyawan TO Pembelian GRANT SELECT ON PosisiKaryawan TO Pembelian GRANT SELECT ON TelpKaryawan TO Pembelian GRANT SELECT ON BahanBaku TO Pembelian GRANT SELECT ON TipeBahan TO Pembelian GRANT SELECT ON SatuanBahan TO Pembelian

211 5. Gudang Tabel 3.111Hak Akses bagi Bagian Gudang GRANT SELECT, INSERT, UPDATE ON PengajuanPembelian TO Gudang GRANT SELECT, INSERT, UPDATE ON DetilPengajuanBeli TO Gudang GRANT SELECT, INSERT, UPDATE ON BahanBaku TO Gudang GRANT SELECT, INSERT, UPDATE ON TipeBahan TO Gudang GRANT SELECT, INSERT, UPDATE ON SatuanBahan TO Gudang GRANT SELECT, INSERT, UPDATE ON BarangJadi TO Gudang GRANT SELECT ON Karyawan TO Gudang GRANT SELECT ON PosisiKaryawan TO Gudang GRANT SELECT ON TelpKaryawan TO Gudang GRANT SELECT ON Pelanggan TO Gudang GRANT SELECT ON TelpPelanggan TO Gudang GRANT SELECT ON Karyawan TO Gudang GRANT SELECT ON PosisiKaryawan TO Gudang GRANT SELECT ON TelpKaryawan TO Gudang GRANT SELECT ON PosPelanggan TO Gudang GRANT SELECT ON Pengiriman TO Gudang Produksi Tabel 3.112Hak Akses bagi Divisi Produksi GRANT SELECT, INSERT, UPDATE ON TugasProduksi TO Produksi GRANT SELECT, INSERT, UPDATE ON DetilTugas TO Produksi GRANT SELECT, INSERT, UPDATE ON RumusBahanBaku TO Produksi GRANT SELECT, INSERT, UPDATE ON DetilRumus TO Produksi GRANT SELECT, INSERT, UPDATE ON PengambilanBahanBaku TO Produksi GRANT SELECT, INSERT, UPDATE ON DetilPengambilanBahan TO Produksi GRANT SELECT, INSERT, UPDATE ON Produksi TO Produksi GRANT SELECT, INSERT, UPDATE ON TargetProduksi TO Produksi GRANT SELECT, INSERT, UPDATE ON RancanganKusen TO Produksi GRANT SELECT ON Karyawan TO Produksi GRANT SELECT ON PosisiKaryawan TO Produksi GRANT SELECT ON TelpKaryawan TO Produksi GRANT SELECT ON Pelanggan TO Produksi GRANT SELECT ON PosPelanggan TO Produksi GRANT SELECT ON TelpPelanggan TO Produksi GRANT SELECT ON Pemasangan TO Produksi GRANT SELECT ON DetilPemasangan TO Produksi GRANT SELECT ON BahanBaku TO Produksi

212 252 GRANT SELECT ON TipeBahan TO Produksi GRANT SELECT ON SatuanBahan TO Produksi GRANT SELECT ON BarangJadi TO Produksi GRANT SELECT ON Pengiriman TO Produksi GRANT SELECT ON Pemesanan TO Produksi GRANT SELECT ON PosPemesanan TO Produksi 7. Admin Tabel 3.113Hak Akses bagi Admin GRANT SELECT, INSERT, UPDATE ON Karyawan TO Admin GRANT SELECT, INSERT, UPDATE ON PosisiKaryawan TO Admin GRANT SELECT, INSERT, UPDATE ON PosKaryawan TO Admin GRANT SELECT, INSERT, UPDATE ON TelpKaryawan TO Admin GRANT SELECT, INSERT, UPDATE ON Pelanggan TO Admin GRANT SELECT, INSERT, UPDATE ON PosPelanggan TO Admin GRANT SELECT, INSERT, UPDATE ON Pemasok TO Admin GRANT SELECT, INSERT, UPDATE ON PosPemasok TO Admin GRANT SELECT, INSERT, UPDATE ON TugasProduksi TO Admin GRANT SELECT, INSERT, UPDATE ON DetilTugas TO Admin GRANT SELECT, INSERT, UPDATE ON Pemasangan TO Admin GRANT SELECT, INSERT, UPDATE ON DetilPemasangan TO Admin GRANT SELECT, INSERT, UPDATE ON RumusBahanBaku TO Admin GRANT SELECT, INSERT, UPDATE ON DetilRumus TO Admin GRANT SELECT, INSERT, UPDATE ON Pembelian TO Admin GRANT SELECT, INSERT, UPDATE ON DetilPembelian TO Admin GRANT SELECT, INSERT, UPDATE ON PengajuanPembelian TO Admin GRANT SELECT, INSERT, UPDATE ON DetilPengajuanBeli TO Admin GRANT SELECT, INSERT, UPDATE ON PengambilanBahanBaku TO Admin GRANT SELECT, INSERT, UPDATE ON DetilPengambilanBahan TO Admin GRANT SELECT, INSERT, UPDATE ON TelpPelanggan TO Admin GRANT SELECT, INSERT, UPDATE ON TelpPemasok TO Admin GRANT SELECT, INSERT, UPDATE ON BahanBaku TO Admin GRANT SELECT, INSERT, UPDATE ON TipeBahan TO Admin GRANT SELECT, INSERT, UPDATE ON SatuanBahan TO Admin GRANT SELECT, INSERT, UPDATE ON Produksi TO Admin GRANT SELECT, INSERT, UPDATE ON TargetProduksi TO Admin GRANT SELECT, INSERT, UPDATE ON PembayaranPembelian TO Admin GRANT SELECT, INSERT, UPDATE ON BarangJadi TO Admin GRANT SELECT, INSERT, UPDATE ON Pengiriman TO Admin GRANT SELECT, INSERT, UPDATE ON Kontrak TO Admin GRANT SELECT, INSERT, UPDATE ON Pemesanan TO Admin

213 GRANT SELECT, INSERT, UPDATE ON PosPemesanan TO Admin GRANT SELECT, INSERT, UPDATE ON RancanganKusen TO Admin GRANT SELECT, INSERT, UPDATE ON PembayaranPemesanan TO Admin Mempertimbangkan Pengenalan Redundasi Terkontrol Tujuannya untuk menentukan apakah memperkenalkan redundasi dengan cara terkontrol dan mengendurkan aturan normalisasi akan meningkatkan kinerja sistem. Tahapan ini merupakan penentuan denormalisasi.menurut Connoly dan Begg (2010:546) denormalisasi digunakan untuk penyempurnaan skema relasional. Tahapan ini tidak dilakukan dengan pertimbangan berikut: a. tidak ada kondisi kritis yang memerlukan denormalisasi b. denormalisasi menyebabkan implementasi menjadi lebih rumit c. denormalisasi mengorbankan fleksibilitas Mengawasi dan Mengendalikan Sistem Operasional Tujuannya untuk mengawasi sistem operasional dan meningkatkan performa dari sistem untuk membenarkan keputusan desain yang tidak tepat atau perubahan kebutuhan. Tahapan ini akan dibahas secara lebih detil pada Bab Perancangan Layar Aplikasi Peracangan layar aplikasi terdiri dari: Perancangan Struktur Menu Berikut terdapat rancangan struktur menu aplikasi basis data PT Luxus Indo Prima untuk Direktur dan Wakil Direktur, serta berbagai divisi yang terlibat:

214 Struktur Menu Pemasaran 2. Struktur Menu Produksi Gambar 3.24Struktur Menu Pemasaran Gambar 3.25Struktur Menu Produksi

215 Struktur Menu Gudang Gambar 3.26Struktur Menu Gudang 4. Struktur Menu Pembelian Gambar 3.27Struktur Menu Pembelian

216 Struktur Menu Keuangan Gambar 3.28Struktur Menu Keuangan 6. Struktur Menu Direktur dan Wakil Direktur Gambar 3.29Struktur Menu Direktur dan Wakil Direktur

217 Perancangan State Transition Diagram Berikut terdapat rancangan State Transition Diagram aplikasi basis data PT Luxus Indo Prima untuk Direktur dan Wakil Direktur, serta berbagai divisi yang terlibat: 1. STD untuk Divisi Pemasaran Gambar 3.30STD Halaman Menu Utama Pemasaran Gambar 3.31STD Halaman Menu Pelanggan

218 258 Gambar 3.32STD Halaman Tambah Pelanggan Gambar 3.33STD Halaman Menu Pemesanan Gambar 3.34STD Halaman Daftar Pemesanan

219 259 Gambar 3.35STD Halaman Tambah Pemesanan Gambar 3.36STD Halaman Cetak Faktur Gambar 3.37STD Halaman Rancangan Kusen

220 260 Gambar 3.38 STD Halaman Menu Kontrak Gambar 3.39STD Halaman Menu Jadwal Target Gambar 3.40 STD Halaman Menu Pemasangan

221 261 Gambar 3.41STD Halaman Menu Pengiriman 2. STD untuk Divisi Produksi Gambar 3.42STD Halaman Menu Utama Produksi Gambar 3.43STD Halaman Menu Bahan Baku

222 262 Gambar 3.44STD Halaman Daftar Bahan Baku Gambar 3.45STD Halaman Pengambilan Bahan Baku Gambar 3.46STD Halaman Menu Rumus

223 263 Gambar 3.47STD Halaman Daftar Rumus Gambar 3.48STD Halaman Tambah Rumus Gambar 3.49STD Halaman Menu Pemesanan

224 264 Gambar 3.50 STD Halaman Menu Pembelian Gambar 3.52STD Halaman Menu Produksi Gambar 3.51STD Halaman Daftar Produksi

225 265 Gambar 3.53STD Halaman Estimasi Harga Gambar 3.54STD Halaman Tugas Produksi Gambar 3.55STD Halaman Barang Jadi

226 266 Gambar 3.56STD Halaman Rancangan Kusen Gambar 3.57STD Halaman Menu Pemasangan

227 STD untuk Divisi Gudang Gambar 3.58STD Halaman Menu Utama Gudang Gambar 3.59STD Halaman Menu Bahan Baku Gambar 3.60STD Halaman Bahan Baku

228 268 Gambar 3.61STD Halaman Tipe Bahan Baku Gambar 3.62STD Halaman Satuan Bahan Baku Gambar 3.63STD Halaman Menu Barang Jadi

229 269 Gambar 3.64STD Halaman Daftar Barang Jadi Gambar 3.65STD Halaman Pengiriman Gambar 3.66STD Halaman Menu Pengajuan Pembelian

230 270 Gambar 3.67STD Halaman Pengajuan Pembelian Gambar 3.68STD Halaman Menu Pembelian Gambar 3.69STD Halaman Retur Pembelian

231 STD untuk Divisi Pembelian Gambar 3.70STD Halaman Menu Utama Pembelian Gambar 3.71STD Halaman Menu Pemasok Gambar 3.72STD Halaman Daftar Pemasok

232 272 Gambar 3.73STD Halaman Tambah Pemasok Gambar 3.74STD Halaman Menu Pembelian Gambar 3.75STD Halaman Pengajuan Pembelian

233 273 Gambar 3.76STD Halaman Pembelian Gambar 3.77STD Halaman Menu Retur Pembelian 5. STD untuk Divisi Keuangan Gambar 3.78STD Halaman Menu Utama Keuangan

234 274 Gambar 3.79STD Halaman Menu Pembayaran Pemesanan Gambar 3.80STD Halaman Menu Pembayaran Pembelian

235 STD untuk Direktur dan Wakil Direktur Gambar 3.81STD Halaman Menu Utama Direktur dan Wakil Direktur Gambar 3.82STD Halaman Laporan Gambar 3.83STD Halaman Pengaturan Pengguna

236 276 Gambar 3.84STD Halaman Menu Karyawan Perancangan Input Berikut ini terdapat perancangan tampilan halaman dalam aplikasi basis data PT Luxus Indo Prima.

237 277 Gambar 3.85Perancangan Halaman Log In 1. Perancangan Tamplilan untuk Divisi Pemasaran Gambar 3.86Perancangan Halaman Menu Utama Pemasaran

238 278 Gambar 3.87Perancangan Halaman Daftar Pelanggan Gambar 3.88Perancangan Halaman Tambah Pelanggan

239 279 Gambar 3.89Perancangan Halaman Daftar Pemesanan Gambar 3.90Perancangan Halaman Tambah Pemesanan

240 280 Gambar 3.91Perancangan Halaman Daftar Rancangan Kusen Gambar 3.92Perancangan Halaman Cetak Faktur

241 281 Gambar 3.93Perancangan Halaman Daftar Produksi Gambar 3.94Perancangan Halaman Daftar Kontrak

242 282 Gambar 3.95Perancangan Modal-boxBuat Kontrak Gambar 3.96Perancangan Halaman Daftar Jadwal Target

243 283 Gambar 3.97Perancangan Modal-boxTambah Target Gambar 3.98Perancangan Halaman Daftar Pemasangan

244 284 Gambar 3.99Perancangan Halaman Daftar Pengiriman 2. Perancangan Tamplilan untuk Divisi Produksi Gambar 3.100Perancangan Halaman Menu Utama Produksi

245 285 Gambar 3.101Perancangan Halaman Bahan Baku Produksi Gambar 3.102Perancangan Halaman Daftar Pengambilan Bahan Baku

246 286 Gambar 3.103Perancangan Modal-box Tambah Pengambilan Bahan Baku Gambar 3.104Perancangan Halaman Daftar Rumus

247 287 Gambar 3.105Perancangan Halaman Buat Rumus Gambar 3.106Perancangan Halaman Daftar Pemesanan Produksi

248 288 Gambar 3.107Perancangan Halaman Jadwal Target Produksi Gambar 3.108Perancangan Halaman Daftar Produksi

249 289 Gambar 3.109Perancangan Halaman Daftar Estimasi Harga Gambar 3.110Perancangan Modal-boxTambah Estimasi

250 290 Gambar 3.111Perancangan Halaman Daftar Rancangan Kusen Produksi Gambar 3.112Perancangan Modal-box Tambah Rancangan Kusen

251 291 Gambar 3.113Perancangan Halaman Tugas Produksi Gambar 3.114Perancangan Modal-box Tambah Tugas Produksi

252 292 Gambar 3.115Perancangan Halaman Barang Jadi Produksi Gambar 3.116Perancangan Modal-box Tambah Barang Jadi

253 293 Gambar 3.117Perancangan Halaman Pemasangan Produksi Gambar 3.118Perancangan Modal-box Tambah Pemasangan

254 Perancangan Tamplilan untuk Divisi Gudang Gambar 3.119Perancangan Halaman Menu Utama Gudang Gambar 3.120Perancangan Halaman Bahan Baku Gudang

255 295 Gambar 3.121Perancangan Modal-box Tambah Bahan Baku Gambar 3.122Perancangan Halaman Tipe Bahan Baku

256 296 Gambar 3.123Perancangan Halaman Satuan Bahan Baku Gambar 3.124Perancangan Halaman Barang Jadi Gudang

257 297 Gambar 3.125Perancangan Halaman Pengiriman Gudang Gambar 3.126Perancangan Modal-box Tambah Pengiriman

258 298 Gambar 3.127Perancangan Halaman Pengajuan Pembelian Gudang Gambar 3.128Perancangan Modal-box Tambah Pengajuan Pembelian

259 299 Gambar 3.129Perancangan Halaman Pembelian Gudang Gambar 3.130Perancangan Halaman Retur Pembelian Gudang

260 300 Gambar 3.131Perancangan Modal-box Tambah Retur Pembelian 4. Perancangan Tamplilan untuk Divisi Pembelian Gambar 3.132Perancangan Halaman Menu Utama Pembelian

261 301 Gambar 3.133Perancangan Halaman Daftar Pemasok Gambar 3.134Perancangan Halaman Tambah Pemasok

262 302 Gambar 3.135Perancangan Halaman Pengajuan Pembelian Gambar 3.136Perancangan Halaman Pembelian

263 303 Gambar 3.137Perancangan Modal-box Tambah Pembelian Gambar Perancangan HalamanReturPembelian

264 Perancangan Tamplilan untuk Divisi Keuangan Gambar 3.139Perancangan Halaman Utama Keuangan Gambar 3.140Perancangan Halaman Daftar Pembayaran Pemesanan

265 305 Gambar 3.141Perancangan Modal-box Buat Pembayaran Pemesanan Gambar 3.142Perancangan Halaman Daftar Pembayaran Pembelian

BAB 2 LANDASAN TEORI. beberapa pakar. Definisi tersebut antara lain yaitu : dari beberapa file dokumen yang terhubung secara logis.

BAB 2 LANDASAN TEORI. beberapa pakar. Definisi tersebut antara lain yaitu : dari beberapa file dokumen yang terhubung secara logis. 6 BAB 2 LANDASAN TEORI 2.1 Pengertian Basis Data Ada beberapa macam definisi tentang basis data yang disampaikan oleh beberapa pakar. Definisi tersebut antara lain yaitu : Menurut O Brien (2002, p.166)

Lebih terperinci

Lampiran. : Staff Administrasi dan Guru TIK

Lampiran. : Staff Administrasi dan Guru TIK Lampiran LAMPIRAN 1 Wawancara Kebutuhan Nama Jabatan : Agus : Staff Administrasi dan Guru TIK 1. Sudah adakah sistem pembelajaran yang terkomputerisasi? Jawab : Sebelumnya, pada SMAN 65 belum terdapat

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar belakang

BAB 1 PENDAHULUAN. 1.1 Latar belakang BAB 1 PENDAHULUAN 1.1 Latar belakang Seiring dengan perkembangan zaman, semakin banyak pekerjaan yang dapat dikerjakan oleh teknologi informasi. Dengan fenomena ini, perusahaan mulai menyadari bahwa teknologi

Lebih terperinci

BAB 3 TATA LAKSANA SISTEM YANG BERJALAN

BAB 3 TATA LAKSANA SISTEM YANG BERJALAN BAB 3 TATA LAKSANA SISTEM YANG BERJALAN 3.1 Riwayat Perusahaan CV. Kurnia Agung adalah perusahaan yang bergerak dalam bidang penjualan alat alat tulis untuk digunakan oleh konsumen akhir. CV. Kurnia Agung

Lebih terperinci

BAB 1 PENDAHULUAN Latar Belakang. Perkembangan ilmu pengetahuan dan teknologi pada saat sekarang ini

BAB 1 PENDAHULUAN Latar Belakang. Perkembangan ilmu pengetahuan dan teknologi pada saat sekarang ini BAB 1 PENDAHULUAN 1.1. Latar Belakang Perkembangan ilmu pengetahuan dan teknologi pada saat sekarang ini dalam dunia usaha maupun kehidupan sehari-hari semakin maju. Oleh karena itu, perusahaan dituntut

Lebih terperinci

Bab 1 Pendahuluan 1.1. Latar Belakang

Bab 1 Pendahuluan 1.1. Latar Belakang Bab 1 Pendahuluan 1.1. Latar Belakang Perkembangan teknologi informasi yang sangat pesat menjadi faktor penting untuk perusahaan sekarang ini. Baik perangkat keras ataupun perangkat lunak, kedua hal tersebut

Lebih terperinci

ANALISA DAN PERANCANGAN SISTEM BASIS DATA DISTRIBUSI GULA PASIR PRODUKSI DALAM NEGERI BERBASIS WEB PADA PERUM BULOG SKRIPSI OLEH

ANALISA DAN PERANCANGAN SISTEM BASIS DATA DISTRIBUSI GULA PASIR PRODUKSI DALAM NEGERI BERBASIS WEB PADA PERUM BULOG SKRIPSI OLEH ANALISA DAN PERANCANGAN SISTEM BASIS DATA DISTRIBUSI GULA PASIR PRODUKSI DALAM NEGERI BERBASIS WEB PADA PERUM BULOG SKRIPSI OLEH MUHAMMAD FUADY 0900802746 RUDY WIJAYA 1000839390 GARRY FLORENCE 1000858105

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil Tahun 2007/2008

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil Tahun 2007/2008 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil Tahun 2007/2008 ANALISIS DAN PERANCANGAN SISTEM BASISDATA PERSEDIAAN DAN PENJUALAN

Lebih terperinci

BAB 1 PENDAHULUAN. seluruh kegiatan manusia memanfaatkannya. Tak terkecuali dalam menunjang

BAB 1 PENDAHULUAN. seluruh kegiatan manusia memanfaatkannya. Tak terkecuali dalam menunjang BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Dewasa ini, teknologi informasi berkembang begitu pesat sehingga hampir seluruh kegiatan manusia memanfaatkannya. Tak terkecuali dalam menunjang proses bisnis,

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Genap tahun 2007/2008

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Genap tahun 2007/2008 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Genap tahun 2007/2008 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN DAN PERSEDIAAN BAHAN BAKU PADA PO. DELIRA

Lebih terperinci

BAB 1 PENDAHULUAN. bidang bisnis. Salah satu perkembangan teknologi informasi yang banyak digunakan

BAB 1 PENDAHULUAN. bidang bisnis. Salah satu perkembangan teknologi informasi yang banyak digunakan BAB 1 PENDAHULUAN 1.1 Latar Belakang Pada saat ini, perkembangan teknologi informasi khususnya di bidang komputer memberikan dampak yang sangat besar bagi seluruh aspek kehidupan, terutama di bidang bisnis.

Lebih terperinci

PERANCANGAN BASIS DATA RESERVASI, PERSEDIAAN, DAN PEMBELIAN PERLENGKAPAN KAMAR PADA HOTEL KING STONE.

PERANCANGAN BASIS DATA RESERVASI, PERSEDIAAN, DAN PEMBELIAN PERLENGKAPAN KAMAR PADA HOTEL KING STONE. BAB 1 Pendahuluan 1.1. Latar Belakang Sektor pariwisata mengalami kemajuan yang pesat dan mempunyai prospek masa depan yang cerah. Hal tersebut tidak lepas dengan adanya perkembangan teknologi yang dapat

Lebih terperinci

UNIVERSITAS BINA NUSANTARA

UNIVERSITAS BINA NUSANTARA UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil tahun 2007/2008 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PERSEDIAAN, PRODUKSI, DAN

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG BERJALAN

BAB 3 ANALISIS SISTEM YANG BERJALAN BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Riwayat Perusahaan 3.1.1 Sejarah Organisasi PT PANCAYASA PRIMATANGGUH berdiri pada awal tahun 1990 oleh Budi Arifandi, Yohanes Kaliman dan Soegiarto Simon. PT PANCAYASA

Lebih terperinci

BAB IV EVALUASI SISTEM INFORMASI AKUNTANSI PENJUALAN DAN PENERIMAAN KAS PADA PT. BERNOFARM

BAB IV EVALUASI SISTEM INFORMASI AKUNTANSI PENJUALAN DAN PENERIMAAN KAS PADA PT. BERNOFARM BAB IV EVALUASI SISTEM INFORMASI AKUNTANSI PENJUALAN DAN PENERIMAAN KAS PADA PT. BERNOFARM IV. 1 Evaluasi Sistem Informasi Akuntansi Penjualan Dan Penerimaan Kas Pada PT. Bernofarm. PT. Bernofarm merupakan

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Sistem Informasi Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006

UNIVERSITAS BINA NUSANTARA. Jurusan Sistem Informasi Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 UNIVERSITAS BINA NUSANTARA Jurusan Sistem Informasi Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN PADA PT.

Lebih terperinci

BAB 3 ANALIS IS S IS TEM YANG BERJALAN

BAB 3 ANALIS IS S IS TEM YANG BERJALAN BAB 3 ANALIS IS S IS TEM YANG BERJALAN 3.1 Tentang Perusahaan Berikut ini adalah informasi tentang perusahaan dan sistem yang berjalan di dalamnya : 3.1.1 Sejarah Perusahaan PT. XYZ adalah sebuah perusahaan

Lebih terperinci

Kata Kunci : Sistem Basisdata, Nozzle, Permintaan, Penawaran, Pemesanan, Penjualan

Kata Kunci : Sistem Basisdata, Nozzle, Permintaan, Penawaran, Pemesanan, Penjualan Universitas Bina Nusantara Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2007/2008 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN PT MULIA ASLI Henry Kurniawan 0800738383

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG BERJALAN. Jakarta oleh Bapak Eddy. CV. Mutiara Electronic terletak di Ruko Taman Permata Buana

BAB 3 ANALISIS SISTEM YANG BERJALAN. Jakarta oleh Bapak Eddy. CV. Mutiara Electronic terletak di Ruko Taman Permata Buana BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Sejarah Perusahaan CV. Mutiara Electronic pertama kali didirikan pada tanggal 8 Maret 00 di Jakarta oleh Bapak Eddy. CV. Mutiara Electronic terletak di Ruko Taman

Lebih terperinci

BAB 3. Analisa Kebutuhan Basisdata

BAB 3. Analisa Kebutuhan Basisdata 68 BAB 3 Analisa Kebutuhan Basisdata 3.1 Riwayat Perusahaan 3.1.1 Sejarah Perusahaan CV. Mitratama Uniplast merupakan perusahaan yang bergerak dalam bidang mendaur ulang biji plastik, lalu menjualnya.

Lebih terperinci

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN EVALUASI BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Usulan Prosedur Yang Baru Sistem yang dirancang ini akan diusulkan kepada PT. Republika Media Mandiri untuk membantu pelaporan berita oleh reporter, serta penulisan

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang PT Global Teknindo Berkatama adalah perusahaan swasta yang bergerak di bidang pemotongan plat baja. Perusahaan ini merupakan perusahaan manufaktur yang bertipe make

Lebih terperinci

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENYIMPANAN DAN PENJUALAN PADA PT. SOLUSI CORPORINDO TEKNOLOGI SKRIPSI. Oleh

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENYIMPANAN DAN PENJUALAN PADA PT. SOLUSI CORPORINDO TEKNOLOGI SKRIPSI. Oleh ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENYIMPANAN DAN PENJUALAN PADA PT. SOLUSI CORPORINDO TEKNOLOGI SKRIPSI Oleh Lourensius Erico Gunawan 1000845531 Peter 1000843122 Stefano Sanjaya 1000847700

Lebih terperinci

BAB 3 ANALISIS SISTEM INFORMASI BERJALAN

BAB 3 ANALISIS SISTEM INFORMASI BERJALAN BAB 3 ANALISIS SISTEM INFORMASI BERJALAN 3.1 Sejarah Perusahaan 3.1.1 Sejarah PT. Putra Mas Prima PT. Putra Mas Prima merupakan sebuah perusahaan yang bergerak di bidang jual beli bijih plastik yang berdiri

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Dalam era globalisasi sekarang ini, peranan teknologi sudah sangat luas

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Dalam era globalisasi sekarang ini, peranan teknologi sudah sangat luas BAB 1 PENDAHULUAN 1.1 Latar Belakang Dalam era globalisasi sekarang ini, peranan teknologi sudah sangat luas dalam berbagai bidang perekonomian di Indonesia. Banyak perusahaan yang menganggap teknologi

Lebih terperinci

UNIVERSITAS BINA NUSANTARA

UNIVERSITAS BINA NUSANTARA UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2004/2005 ANALISIS DAN PERANCANGAN BASIS DATA PEMBELIAN DAN PENJUALAN BARANG PADA PT DAVINCI KERAMINDO

Lebih terperinci

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENDAFTARAN PASIEN, RAWAT JALAN, APOTEK DAN LABORATORIUM PADA PUSKESMAS KECAMATAN KALIDERES SKRIPSI.

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENDAFTARAN PASIEN, RAWAT JALAN, APOTEK DAN LABORATORIUM PADA PUSKESMAS KECAMATAN KALIDERES SKRIPSI. ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENDAFTARAN PASIEN, RAWAT JALAN, APOTEK DAN LABORATORIUM PADA PUSKESMAS KECAMATAN KALIDERES SKRIPSI Oleh Audi Mirano 1200946192 Nurul Mukharam 1200946753 Tri

Lebih terperinci

STMIK GI MDP. Program Studi Sistem Informasi Skripsi Sarjana Komputer Semester Genap Tahun 2009/2010

STMIK GI MDP. Program Studi Sistem Informasi Skripsi Sarjana Komputer Semester Genap Tahun 2009/2010 STMIK GI MDP Program Studi Sistem Informasi Skripsi Sarjana Komputer Semester Genap Tahun 2009/2010 SISTEM PENGOLAHAN TRANSAKSI PADA PT SUKSES CITRA PANGAN PALEMBANG Afandi 2005240234 Abstrak Tujuan penulisan

Lebih terperinci

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB 1 PENDAHULUAN 1.1 Latar Belakang 1 BAB 1 PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi informasi di Indonesia saat ini mengalami pertumbuhan yang sangat pesat. Hal ini menyebabkan perubahan yang sangat signifikan di berbagai bidang.

Lebih terperinci

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN DAN PERSEDIAAN PADA UD. SRI REJEKI SKRIPSI. Oleh

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN DAN PERSEDIAAN PADA UD. SRI REJEKI SKRIPSI. Oleh ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN DAN PERSEDIAAN PADA UD. SRI REJEKI SKRIPSI Oleh SHERLY 1000875111 HARIYONO 1000890195 MARTHIAS 1000890440 KELAS / KELOMPOK : 07 PJT / 04

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN 3.1 Tentang Perusahaan Berikut adalah gambaran tentang PT. Phanovindo Suksestama meliputi sejarah perusahaan, struktur, pembagian tugas dan tanggung jawab di

Lebih terperinci

BAB II TINJAUAN PUSTAKA. menerapkan metode UCD (User Centered Design) adalah untuk

BAB II TINJAUAN PUSTAKA. menerapkan metode UCD (User Centered Design) adalah untuk BAB II TINJAUAN PUSTAKA 2.1 Tinjauan Pustaka Situs pada Aplikasi Katalog Wisata Kuliner Berbasis Web dibuat dengan menerapkan metode UCD (User Centered Design) adalah untuk mempermudah penggunakan dalam

Lebih terperinci

UNIVERSITAS BINA NUSANTARA ANALISIS DAN PERANCANGAN SISTEM BASIS DATA SUMBER DAYA MANUSIA PADA PT. SURYA TOTO INDONESIA

UNIVERSITAS BINA NUSANTARA ANALISIS DAN PERANCANGAN SISTEM BASIS DATA SUMBER DAYA MANUSIA PADA PT. SURYA TOTO INDONESIA UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA SUMBER DAYA MANUSIA PADA PT. SURYA TOTO INDONESIA

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Sistem Informasi diharapkan dapat mendukung dan meningkatkan performance pada sebuah perusahaan. Sistem Informasi yang terintegrasi dibangun tidak hanya untuk memecahkan

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 UNIVERSITAS BINA NUSANTARA Abstrak Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 ANALISIS DAN PERANCANGAN SISTEM BASISDATA PEMBELIAN, PERSEDIAAN DAN PENJUALAN PADA

Lebih terperinci

4. BAB IV HASIL DAN PEMBAHASAN. menggunakan metode interview atau wawancara. Hasil dari tahap ini adalah

4. BAB IV HASIL DAN PEMBAHASAN. menggunakan metode interview atau wawancara. Hasil dari tahap ini adalah 4. BAB IV HASIL DAN PEMBAHASAN 4.1. Hasil Pengumpulan Data Pada tahap awal, penulis mengumpulkan data-data yang dibutuhkan sistem menggunakan metode interview atau wawancara. Hasil dari tahap ini adalah

Lebih terperinci

UNIVERSITAS BINA NUSANTARA ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN, PEMBELIAN DAN PERSEDIAAN BARANG PADA PT. VICTORY INDO PERKASA

UNIVERSITAS BINA NUSANTARA ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN, PEMBELIAN DAN PERSEDIAAN BARANG PADA PT. VICTORY INDO PERKASA UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN, PEMBELIAN DAN PERSEDIAAN BARANG PADA

Lebih terperinci

UNIVERSITAS BINA NUSANTARA

UNIVERSITAS BINA NUSANTARA UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Genap tahun 2003/2004 ANALISIS DAN PERANCANGAN BASIS DATA PADA SISTEM INFORMASI PEMBELIAN

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 ANALISIS DAN PERANCANGAN BASISDATA PENJUALAN, PEMBELIAN DAN PERSEDIAAN

Lebih terperinci

1. BAB 1 PENDAHULUAN. 1.1 Latar Belakang

1. BAB 1 PENDAHULUAN. 1.1 Latar Belakang 1. BAB 1 PENDAHULUAN 1.1 Latar Belakang PT Lengkong Putra 2 adalah perusahaan yang bergerak dibidang produksi kusen dan mebeul. Perusahaan ini memiliki banyak cabang di wilayah Jawa Barat. Salah satu cabangnya

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Informasi merupakan dasar dari komunikasi, semua kegiatan bisnis yang dilakukan akan menggunakan informasi, seperti laporan-laporan dalam pengoperasionalan perusahaan.

Lebih terperinci

BAB 3 Analisis dan perancangan

BAB 3 Analisis dan perancangan BAB 3 Analisis dan perancangan 3.1 Riwayat Perusahaan 3.1.1 Sejarah Perusahaan P.D. Rimba Alam Jaya berdiri pada tahun 1983 yang terletak di Jalan Srengseng Jakarta Barat, merupakan sebuah industri perdagangan

Lebih terperinci

Universitas Bina Nusantara

Universitas Bina Nusantara Universitas Bina Nusantara Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2007/2008 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA BERBASISKAN WEB PADA HASIL PRODUKSI DAN PEMASARAN

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG BERJALAN. mekanikal, peralatan elektrikal, peralatan keselamatan kerja.

BAB 3 ANALISIS SISTEM YANG BERJALAN. mekanikal, peralatan elektrikal, peralatan keselamatan kerja. 35 BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Perumusan Objek Penelitian 3.1.1 Latar Belakang Perusahaan PT. Delta Suplindo Internusa adalah sebuah perusahaan distributor yang bergerak di bidang perdagangan

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN.1. Objek dan Lokasi Penelitian Objek penelitian yang dipilih oleh penulis adalah sebuah toko bahan bangunan. Toko bahan bangunan ini bernama TB. Subur. TB. Subur terletak

Lebih terperinci

BAB 1 PENDAHULUAN 1.1. Latar belakang

BAB 1 PENDAHULUAN 1.1. Latar belakang BAB 1 PENDAHULUAN 1.1. Latar belakang Perkembangan teknologi informasi yang pesat telah memberikan berbagai kemudahan bagi manusia di segala bidang kehidupan. Kemajuan teknologi informasi pada saat ini

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2005 / 2006

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2005 / 2006 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2005 / 2006 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PERSEDIAAN DAN PENJUALAN PADA PT. YOUNGINDO UTAMA

Lebih terperinci

MERANCANG WEB DATA BASE UNTUK CONTENT SERVER

MERANCANG WEB DATA BASE UNTUK CONTENT SERVER Oleh Ariya Kusuma, A.Md. MERANCANG WEB DATA BASE UNTUK CONTENT SERVER SKEMA SERVER WEB DATABASE Web yaitu suatu sistem di internet yang memungkinkan siapapun agar bisa menyediakan informasi. Web server

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG BERJALAN. yang berlokasi di Jakarta, Indonesia. PT. SURYAPRABHA JATISATYA

BAB 3 ANALISIS SISTEM YANG BERJALAN. yang berlokasi di Jakarta, Indonesia. PT. SURYAPRABHA JATISATYA BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Gambaran Umum Perusahaan 3.1.1 Sejarah Perusahaan PT. SURYAPRABHA JATISATYA merupakan suatu perusahaan swasta yang berlokasi di Jakarta, Indonesia. PT. SURYAPRABHA

Lebih terperinci

-BAB 3 ANALISIS SISTEM YANG BERJALAN. mendukung sistem baru yang diusulkan penulis, maka kami melakukan survei dan

-BAB 3 ANALISIS SISTEM YANG BERJALAN. mendukung sistem baru yang diusulkan penulis, maka kami melakukan survei dan -BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Kebutuhan Informasi Untuk menentukan kebutuhan sistem yang sedang berjalan terutama untuk mendukung sistem baru yang diusulkan penulis, maka kami melakukan survei

Lebih terperinci

BAB 1 Pendahuluan 1.1. Latar belakang

BAB 1 Pendahuluan 1.1. Latar belakang BAB 1 Pendahuluan 1.1. Latar belakang Pada era modern ini, inovasi merupakan suatu keharusan untuk dapat mempertahankan eksistensi dalam dunia bisnis. Banyak tantangan yang harus dihadapi oleh perusahaan,

Lebih terperinci

Lampiran 1. Hasil Wawancara dengan Pemilik 1. Bagaimana sejarah berdirinya CV Depo Steel? Perusahaan ini berdiri karena adanya ide dari pemilik,

Lampiran 1. Hasil Wawancara dengan Pemilik 1. Bagaimana sejarah berdirinya CV Depo Steel? Perusahaan ini berdiri karena adanya ide dari pemilik, Lampiran 1. Hasil Wawancara dengan Pemilik 1. Bagaimana sejarah berdirinya CV Depo Steel? Perusahaan ini berdiri karena adanya ide dari pemilik, yaitu Bapak Alfred Prasadja yang sebelumnya memiliki pengalaman

Lebih terperinci

BAB 1 Pendahuluan 1.1 Latar Belakang

BAB 1 Pendahuluan 1.1 Latar Belakang BAB 1 Pendahuluan 1.1 Latar Belakang Di zaman era globalisasi saat ini teknologi berkembang sangat pesat, terutama teknologi informasi. Dengan menggunakan teknologi informasi masalah akan lebih mudah dan

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007 ANALISIS DAN PERANCANGAN SISTEM BASISDATA PEMBELIAN, PENJUALAN DAN PERSEDIAN BARANG PADA PT.

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi saat ini mempengaruhi satu per satu perusahaan yang ada untuk memajukan sistemnya agar dapat meningkatkan kinerja usaha perusahaan. Mereka menyadari

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN 69 BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN 3.1 Latar Belakang Perusahaan 3.1.1 Sejarah Perusahaan UD. Sri Rejeki adalah usaha dagang yang bergerak dalam bidang ceramics houseware. Berawal dari keinginan

Lebih terperinci

BINUS UNIVERSITY. Jurusan Teknik Informatika. Skripsi Sarjana Komputer. Semester Ganjil Tahun 2007/2008

BINUS UNIVERSITY. Jurusan Teknik Informatika. Skripsi Sarjana Komputer. Semester Ganjil Tahun 2007/2008 iv BINUS UNIVERSITY Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2007/2008 PERANCANGAN APLIKASI SISTEM BASIS DATA PEMBELIAN STUDI KASUS PT BANDO INDONESIA Hervania (0800735223)

Lebih terperinci

BAB IV HASIL DAN PEMBAHASAN

BAB IV HASIL DAN PEMBAHASAN BAB IV HASIL DAN PEMBAHASAN 4.1 Fungsi-fungsi Aplikasi 4.1.1 Splashscreen Splashscreen merupakan Activity yang pertama kali muncul saat aplikasi dibuka. Gambar 4.1 merupakan tampilan spalshscreen pada

Lebih terperinci

3. Setiap Orang yang dengan tanpa hak dan/atau tanpa izin Pencipta atau

3. Setiap Orang yang dengan tanpa hak dan/atau tanpa izin Pencipta atau DATABASE DESIGN THEORY, PRACTICE, AND CASE STUDY Sanksi Pelanggaran Pasal 113 Undang-Undang Nomor 28 Tahun 2014 tentang Hak Cipta 1. Setiap Orang yang dengan tanpa hak melakukan pelanggaran hak ekonomi

Lebih terperinci

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN, PENYEWAAN, DAN PEMASARAN PADA RAY WHITE SUNTER

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN, PENYEWAAN, DAN PEMASARAN PADA RAY WHITE SUNTER Universitas Bina Nusantara Program Studi Ganda Sistem Informasi dan Manajemen Skripsi Sarjana Komputer dan Sarjana Ekonomi Semester Ganjil 2006/2007 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN,

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN 3.1 Sejarah perusahaan PD. Karya Delitama adalah perusahaan yang didirikan pada 6 Maret 1997. Perusahaan ini bergerak dalam bidang distribusi alat-alat teknik,

Lebih terperinci

akan muncul pesan seperti contoh berikut. diterima Berikut adalah tampilan awal dari form Retur Pembelian:

akan muncul pesan seperti contoh berikut. diterima Berikut adalah tampilan awal dari form Retur Pembelian: L61 apakah penerimaan barang untuk kode order pembelian yang baru saja diterima barangnya sudah lengkap diterima atau belum, apabila sudah lengkap, maka status order pembelian di dalam basis data akan

Lebih terperinci

BAB 3 ANALISIS PERUSAHAAN. sebuah perusahaan yang begerak pada bidang penjualan peralatan olahraga, yang

BAB 3 ANALISIS PERUSAHAAN. sebuah perusahaan yang begerak pada bidang penjualan peralatan olahraga, yang BAB 3 ANALISIS PERUSAHAAN 3.1 Sejarah Perusahaan Berawal dari hobi Bapak Arifin berolahraga, lalu muncul ide untuk mendirikan sebuah perusahaan yang begerak pada bidang penjualan peralatan olahraga, yang

Lebih terperinci

UNIVERSITAS BINA NUSANTARA

UNIVERSITAS BINA NUSANTARA UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil Tahun 2005/2006 ANALISIS DAN PERANCANGAN BASIS DATA PERSEDIAAN BARANG DAN PENJUALAN

Lebih terperinci

BAB IV HASIL DAN PEMBAHASAN. Matching Profile adalah perlunya memasang atau meng-install aplikasi kedalam

BAB IV HASIL DAN PEMBAHASAN. Matching Profile adalah perlunya memasang atau meng-install aplikasi kedalam BAB IV HASIL DAN PEMBAHASAN 4.1 Panduan Pemasangan Aplikasi Hal pertama yang perlu dilakukan untuk dapat menggunakan aplikasi Job Matching Profile adalah perlunya memasang atau meng-install aplikasi kedalam

Lebih terperinci

Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2006/2007

Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2006/2007 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2006/2007 ANALISIS DAN PERANCANGAN BASIS DATA SISTEM PEMBELIAN, PERSEDIAAN DAN PENJUALAN PT. SINAR CIPTA

Lebih terperinci

Universitas Bina Nusantara. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006 / 2007

Universitas Bina Nusantara. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006 / 2007 Universitas Bina Nusantara Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006 / 2007 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PERSEDIAAN DAN PENJUALAN BERBASIS WEB PADA PT.

Lebih terperinci

BAB IV HASIL DAN PEMBAHASAN A. EVALUASI SISTEM INFORMASI AKUNTANSI PENJUALAN KREDIT

BAB IV HASIL DAN PEMBAHASAN A. EVALUASI SISTEM INFORMASI AKUNTANSI PENJUALAN KREDIT BAB IV HASIL DAN PEMBAHASAN Bagian ini menjelaskan hasil analisis terhadap jawaban teknik dari obseravasi, wawancara dan teknik pengumpulan data arsipakan di uraikan mengenai pembahasannya. Responden dalam

Lebih terperinci

BAB 3 ANALIS IS S IS TEM YANG BERJALAN. Timbangan baik mekanik maupun elektronik.

BAB 3 ANALIS IS S IS TEM YANG BERJALAN. Timbangan baik mekanik maupun elektronik. BAB 3 ANALIS IS S IS TEM YANG BERJALAN 3.1 Sejarah Organisasi 3.1.1 Perkembangan Organisasi Perusahaan PT. Indah Sakti terbentuk pada Januari tahun 2004 atas prakarsa dan tujuan serta gagasan, misi yang

Lebih terperinci

BAB 1 PENDAHULUAN. Perkembangan teknologi informasi pada era globalisasi sekarang ini

BAB 1 PENDAHULUAN. Perkembangan teknologi informasi pada era globalisasi sekarang ini BAB 1 PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi informasi pada era globalisasi sekarang ini berkembang semakin cepat. Gabungan dari teknologi dan informasi dapat menghasilkan suatu sistem yang

Lebih terperinci

BAB I PENDAHULUAN. berkembang dengan sangat pesat, khususnya perkembangan internet. Melalui

BAB I PENDAHULUAN. berkembang dengan sangat pesat, khususnya perkembangan internet. Melalui BAB I PENDAHULUAN 1.1 Latar Belakang Dalam beberapa tahun terakhir ini, Teknologi Informasi dan Komunikasi berkembang dengan sangat pesat, khususnya perkembangan internet. Melalui internet, informasi dapat

Lebih terperinci

Universitas Bina Nusantara ANALISIS DAN PERANCANGAN SISTEM BASIS DATA INVENTORY PADA PT BERKAT JAYA KOMPUTINDO

Universitas Bina Nusantara ANALISIS DAN PERANCANGAN SISTEM BASIS DATA INVENTORY PADA PT BERKAT JAYA KOMPUTINDO Universitas Bina Nusantara Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005 / 2006 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA INVENTORY PADA PT BERKAT JAYA KOMPUTINDO Sukmawati

Lebih terperinci

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN DAN PERSEDIAAN BARANG PADA PT. ENERGITAMA MULTIGUNA SOLUSI SKRIPSI.

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN DAN PERSEDIAAN BARANG PADA PT. ENERGITAMA MULTIGUNA SOLUSI SKRIPSI. ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN DAN PERSEDIAAN BARANG PADA PT. ENERGITAMA MULTIGUNA SOLUSI SKRIPSI Oleh PETER JOHN / 0800777195 ADITYA DWINANDA / 1000856535 DHEKA RAMADHAN

Lebih terperinci

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB 1 PENDAHULUAN 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Kemajuan teknologi yang pesat terjadi saat ini secara global telah menuntut perusahaan, baik dari perusahaan berskala kecil, menengah maupun atas, publik maupun privat

Lebih terperinci

BAB 3 ANALISIS SISTEM BERJALAN

BAB 3 ANALISIS SISTEM BERJALAN BAB 3 ANALISIS SISTEM BERJALAN 3. Gambaran Umum Perusahaan 3.. Riwayat Perusahaan PT Hens Chemindo Kurnia didirikan oleh Bapak Teddy Winata dan Bapak Budi Kurniawan, yang dikelola sepenuhnya oleh Bapak

Lebih terperinci

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI. Penerapan Model Human Computer Interaction (HCI) dalam Analisis Sistem

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI. Penerapan Model Human Computer Interaction (HCI) dalam Analisis Sistem BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI 1.1 Tinjauan Pustaka Prihati, Mustafid, Suhartono (2011) membuat sebuah jurnal yang berjudul Penerapan Model Human Computer Interaction (HCI) dalam Analisis Sistem

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Genap tahun 2005 / 2006

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Genap tahun 2005 / 2006 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Genap tahun 2005 / 2006 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PERSEDIAAN, DAN PENJUALAN PT. DELIA

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2005/2006

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2005/2006 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2005/2006 ANALISA & PERANCANGAN BASIS DATA SISTEM OPERASIONAL BERBASIS WEB PADA PT. PELAYARAN MITRABAHARI

Lebih terperinci

BAB 3 DESKRIPSI DAN PENGENDALIAN SISTEM YANG BERJALAN PADA PT CATRA NUSANTARA BERSAMA

BAB 3 DESKRIPSI DAN PENGENDALIAN SISTEM YANG BERJALAN PADA PT CATRA NUSANTARA BERSAMA BAB 3 DESKRIPSI DAN PENGENDALIAN SISTEM YANG BERJALAN PADA PT CATRA NUSANTARA BERSAMA 3.1 Latar Belakang Perusahaan PT Catra Nusantara Bersama adalah perusahaan yang bergerak di bidang chemical, didirikan

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN 3.1 Objek dan Lokasi Penelitian Shinta Photo Album adalah badan usaha yang bergerak di bidang manufakturberupaalbum foto dan buku tamu. Shinta Photo Album berlokasi di di

Lebih terperinci

METODOLOGI PENELITIAN

METODOLOGI PENELITIAN Gambar 1. Perhitungan Harga Pokok Produksi BAB III METODOLOGI PENELITIAN 1. Objek dan Lokasi Penelitian 19 Objek dari penelitian ini adalah PT. Prokon Jaya Bangun Persada yang berada di Jalan Plamongan

Lebih terperinci

BAB 4 PEMBAHASAN 4.1 Penjualan Unsur Pengendalian Internal Pada PT. Tiga Putra Adhi Mandiri

BAB 4 PEMBAHASAN 4.1 Penjualan Unsur Pengendalian Internal Pada PT. Tiga Putra Adhi Mandiri BAB 4 PEMBAHASAN 4.1 Penjualan 4.1.1 Unsur Pengendalian Internal Pada PT. Tiga Putra Adhi Mandiri Penulis mempunyai kriteria tersendiri untuk menilai unsur pengendalian internal dalam perusahaan. Kriteria

Lebih terperinci

BAB I PENDAHULUAN. (Hardware) dan juga berupa perangkat lunak (Software), tetapi mempunyai nilai

BAB I PENDAHULUAN. (Hardware) dan juga berupa perangkat lunak (Software), tetapi mempunyai nilai BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Teknologi dan informasi merupakan dua hal yang tidak dapat dipisahkan dalam perkembangannya. Untuk mengelola informasi dibutuhkan teknologi yang baik dan canggih.

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN

BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN 3.1 Gambaran umum perusahaan 3.1.1 Sejarah Singkat Perusahaan PT Abad Dua Satu Makmur didirikan oleh Lie Maryo Rusdi Hamid, yang sekarang menjabat sebagai Direktur

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Pembelian dan penjualan merupakan kegiatan yang mempengaruhi

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Pembelian dan penjualan merupakan kegiatan yang mempengaruhi 1 BAB 1 PENDAHULUAN 1.1 Latar Belakang Pembelian dan penjualan merupakan kegiatan yang mempengaruhi jumlah persediaan. Kedua hal tersebut saling berkaitan dan merupakan inti dari kegiatan di dalam perusahaan.

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM 53 BAB III ANALISIS DAN PERANCANGAN SISTEM Pada bab ini akan dibahas tentang identifikasi masalah, analisis sistem, perancangan sistem, rancangan pengujian dan evaluasi sistem dalam Rancang Bangun Sistem

Lebih terperinci

BAB 1 PENDAHULUAN Latar Belakang

BAB 1 PENDAHULUAN Latar Belakang BAB 1 PENDAHULUAN 1.1. Latar Belakang Dari 13 sungai yang membelah kota Jakarta, terdapat ratusan industri yang harus selalu dilakukan pengambilan contoh secara berkala. Apabila terdapat industri yang

Lebih terperinci

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PERSEDIAAN, DAN PENJUALAN PADA PD SRIWIJAYA BEKASI SKRIPSI. Oleh

ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PERSEDIAAN, DAN PENJUALAN PADA PD SRIWIJAYA BEKASI SKRIPSI. Oleh ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PERSEDIAAN, DAN PENJUALAN PADA PD SRIWIJAYA BEKASI SKRIPSI Oleh Angela Noviana Welirangan 1000842252 Michael Christanto Djaja 1000879122 Edwardo 1000879135

Lebih terperinci

BINUS University ANALISIS DAN PERANCANGAN SISTEM BASIS DATA BERUPA BUKU ALAMAT ONLINE PADA PT. FINROLL. Lanny Moniaga ( )

BINUS University ANALISIS DAN PERANCANGAN SISTEM BASIS DATA BERUPA BUKU ALAMAT ONLINE PADA PT. FINROLL. Lanny Moniaga ( ) BINUS University Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2007/2008 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA BERUPA BUKU ALAMAT ONLINE PADA PT. FINROLL Lanny Moniaga

Lebih terperinci

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB 1 PENDAHULUAN 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Pada Era Global sekarang ini, sistem basis data sudah menjadi satu hal yang paling penting dan menjadi sorotan utama di dunia. Banyak sekali hal yang terpengaruh oleh

Lebih terperinci

Hasil Wawancara. Berikut ini adalah Hasil wawancara dengan Manager Perusahaan PT.Youngindo Utama.

Hasil Wawancara. Berikut ini adalah Hasil wawancara dengan Manager Perusahaan PT.Youngindo Utama. Hasil Wawancara Berikut ini adalah Hasil wawancara dengan Manager Perusahaan PT.Youngindo Utama. Hasil wawancara telah kami ringkas dan padatkan menjadi beberapa paragraf yang dapat dilihat dibawah ini

Lebih terperinci

BAB 1 PENDAHULUAN. hindari lagi bahwa teknologi dan informasi menjadi suatu kebutuhan penting dalam

BAB 1 PENDAHULUAN. hindari lagi bahwa teknologi dan informasi menjadi suatu kebutuhan penting dalam BAB 1 PENDAHULUAN 1.1 Latar Belakang Pada era teknologi dan informasi yang berkembang pesat saat ini tak dapat di hindari lagi bahwa teknologi dan informasi menjadi suatu kebutuhan penting dalam kehidupan

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 ANALISIS DAN PERANCANGAN BASIS DATA SUMBER DAYA MANUSIA PADA PT MARTHA BEAUTY GALLERY Rinaldi

Lebih terperinci

PROSES PERANCANGAN BASIS DATA

PROSES PERANCANGAN BASIS DATA PROSES PERANCANGAN BASIS DATA Seperti telah disebutkan sebelumnya, sebuah sistem basis data merupakan komponen dasar sistem informasi organisasi yang besar. Oleh karena itu siklus hidup aplikasi basis

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika. Program Studi Strata-1. Skripsi Sarjana Komputer. Semester Ganjil 2005 / 2006

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika. Program Studi Strata-1. Skripsi Sarjana Komputer. Semester Ganjil 2005 / 2006 UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Program Studi Strata-1 Skripsi Sarjana Komputer Semester Ganjil 2005 / 2006 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PENJUALAN PADA PT.TRIJAYA MULTI

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Dewasa ini pertumbuhan dunia usaha semakin pesat, banyak upaya yang ditempuh oleh perusahaan agar tetap mampu bertahan dalam menghadapi persaingan yang terjadi. Untuk

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG BERJALAN. bidang packaging, seperti membuat bungkusan dari suatu produk seperti, chiki,

BAB 3 ANALISIS SISTEM YANG BERJALAN. bidang packaging, seperti membuat bungkusan dari suatu produk seperti, chiki, BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Riwayat Perusahaan PT. Karya Indah Bersama adalah sebuah perusahaan yang bergerak pada bidang packaging, seperti membuat bungkusan dari suatu produk seperti, chiki,

Lebih terperinci

BAB 3 ANALISIS SISTEM YANG BERJALAN. beralamat di Jalan Prepedan Raya No 54, Kalideres, Jakarta Barat.

BAB 3 ANALISIS SISTEM YANG BERJALAN. beralamat di Jalan Prepedan Raya No 54, Kalideres, Jakarta Barat. 36 BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Riwayat Perusahaan PT Prima Plastik Internusa (PPI) adalah suatu perusahaan yang bergerak dalam bidang packaging atau produksi kemasan. PT PPI didirikan tahun

Lebih terperinci

Universitas Bina Nusantara ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN, DAN PERSEDIAAN PADA CV. PROPOSTER INDONESIA

Universitas Bina Nusantara ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN, DAN PERSEDIAAN PADA CV. PROPOSTER INDONESIA Universitas Bina Nusantara Jurusan Teknik Informatika Program Studi Ilmu Komputer Skripsi Sarjana Komputer Semester Ganjil tahun 2006 / 2007 ANALISIS DAN PERANCANGAN SISTEM BASIS DATA PEMBELIAN, PENJUALAN,

Lebih terperinci

BAB 1 PENDAHULUAN. tugas tak bisa dipisahkan dari dunia perkuliahan dan dunia mahasiswa. sumber tersebut adalah perpustakaan.

BAB 1 PENDAHULUAN. tugas tak bisa dipisahkan dari dunia perkuliahan dan dunia mahasiswa. sumber tersebut adalah perpustakaan. BAB 1 PENDAHULUAN 1.1 Latar Belakang Dalam dunia perkuliahan, tugas merupakan hal wajib bagi mahasiswa. Setiap mahasiswa tanpa terkecuali pasti pernah mendapatkan tugas yang harus dikerjakan, baik itu

Lebih terperinci