BAB 3 ANALISIS DAN PERANCANGAN
|
|
|
- Sudomo Tedja
- 8 tahun lalu
- Tontonan:
Transkripsi
1 35 BAB 3 ANALISIS DAN PERANCANGAN 3.1 Latar Belakang Perusahaan Sejarah Perusahaan PT Mejisinar Kasih merupakan perusahaan yang bergerak di bidang Air Minum Dalam Kemasan (AMDK). Perusahaan ini beralamat di Jalan Raya Bogor Km. 26,6 Ciracas Jakarta dan didirikan pada tanggal 14 Juni 1990, dimana pada awalnya perusahaan ini berada di bawah manajemen PT Astra Internasional sebagai perusahaan pendukung dalam penyediaan air minum. Sejalan dengan perjalanan waktu, perusahaan mulai berkembang menjadi perusahaan menengah dengan produknya yang mulai dikenal oleh pasar dan mulai menyuplai air minum ke perusahaan dan pabrik lain. Pada tahun 1998 terjadi krisis moneter di Indonesia dan menyebabkan perusahaan ini berhenti beroperasi selama 4 tahun, sehingga pada akhir tahun 2002 perusahaan ini berganti kepemilikan dan sudah tidak di bawah manajemen PT Astra Internasional. Perusahaan ini memproduksi Air Minum Dalam Kemasan (AMDK) dengan label produk Bonanza dan Osmosis. Air baku yang digunakan adalah sumber air dari sumur dalam yang kemudian diproses kembali dengan menggunakan metode Reverse Osmosis. Pada saat ini sesuai dengan kemampuannya perusahaan ini telah memproduksi air minum dalam kemasan galon, botol, dan gelas. Menanggapi persyaratan pasar, pihak perusahaan berkeinginan menjaga mutu produksinya secara
2 36 konsisten yang mengacu kepada persyaratan Standar Nasional Indonesia (SNI) dan tetap memperhatikan akan kesehatan, keselamatan, keamanan, dan lingkungan hidup Visi dan Misi Perusahaan Perusahaan memiliki sebuah visi yaitu berkomitmen untuk selalu memenuhi harapan dan kepuasan pelanggan dalam hal mutu produk Air Minum Dalam Kemasan (AMDK) yang akan diberikan. Sedangkan misinya adalah bertekad untuk selalu memenuhi mutu produksi dan menjaga secara konsisten berdasarkan pada acuan Standar Nasional Indonesia (SNI) Perusahaan ini selalu melakukan evaluasi terhadap sistem mutu yang diterapkan di perusahaannya, antara lain: Meningkatkan dan menjaga mutu produksi Air Minum Dalam Kemasan (AMDK) berdasarkan Standar Nasional Indonesia (SNI). Meningkatkan kekompakan kerja seluruh karyawan untuk menghasikan produk AMDK yang bermutu dan higienis.
3 Struktur Organisasi Berikut ini adalah struktur organisasi PT Mejisinar Kasih : Direktur Personalia Keuangan Produksi / QC Pemasaran Keamanan Kasir Produksi Penjualan Pembelian Teknik / Listrik Gudang Gambar 3.1 Struktur Organisasi Tugas dan Tanggung Jawab 1. Direktur Tugas - Menyetujui dan mengesahkan rencana kerja untuk satu tahun anggaran. - Mengesahkan dokumen sistem manajemen mutu. - Memantau pelaksanaan manajemen keuangan perusahaan setiap hari kerja.
4 38 Tanggung jawab - Memimpin, mengkoordinasi, mengarahkan, dan mengawasi seluruh kegiatan perusahaan. - Mengambil keputusan dan kebijakan yang telah ditetapkan oleh perusahaan. - Memilih Wakil Manajemen untuk penerapan sistem manajemen mutu perusahaan. - Menerima dan mengevaluasi laporan pelaksanaan kegiatan di perusahaan. - Mengangkat dan memberhentikan karyawan tetap. 2. Personalia Tugas - Menerima dan mendistribusikan surat surat masuk ke perusahaan. - Menyimpan dan memelihara dokumen karyawan. - mengevaluasi laporan dari keamanan. - Menjalankan administrasi karyawan. Tanggung jawab - Merencanakan penerimaan karyawan. - Merencanakan pelatihan internal karyawan. - Mengembangkan dan menetapkan peraturan karyawan yang disesuaikan dengan peraturan Pemerintah.
5 39 - Merencanakan program kerja sama dengan lingkungan masyarakat. 3. Keuangan Tugas - Mengeluarkan dan membayarkan uang pembelian bahan penolong serta gaji karyawan dan pembayaran pembayaran lainnya sesuai aturan perusahaan. - Melaporkan kegiatan keuangan triwulan kepada direktur. - Membicarakan kegiatan arus keuangan setiap hari atau setiap saat dengan direktur. - Mengevaluasi kegiatan penggunaan uang setiap hari. - Mencatat seluruh kegiatan keuangan setiap hari. - Menerima laporan kegiatan keuangan dari kasir dan pembelian. Tanggung jawab - Menyusun kebijakan keuangan yang berhubungan dengan kegiatan akuntansi, administrasi keuangan, pengaturan sumber dana, dan penggunaan dana perusahaan. - Mengkoordinir dan mengawasi transaksi keuangan. - Menugaskan kasir membayar gaji karyawan. - Mengawasi kelancaran keuangan perusahaan.
6 40 4. Produksi / QC Tugas - Mengkoordinir karyawan dalam proses produksi untuk melaksanakan tugasnya sesuai prosedur yang telah diterapkan. - Mengatur kelancaran proses produksi dari tahap bahan baku air sampai produk jadi. - Memeriksa dan menguji bahan baku, produksi jadi sesuai dengan Standar Nasional Indonesia (SNI). - Menyiapkan standar mutu sebagai acuan. Tanggung jawab - Bertanggung jawab di dalam proses produksi. - Bertanggung jawab atas mutu bahan baku air. - Bertanggung jawab atas kesesuaian mutu produk akhir. - Bertanggung jawab atas arus persediaan bahan penolong. 5. Distribusi / Pemasaran Tugas - Mengkoordinasikan dan mengidentifikasi informasi pasar. - Melaksanakan program promosi untuk mengikatkan daya saing. - Memelihara dan menyimpan dokumen penjualan. - Membuat dan melaporkan mekanisme pasar kepada direktur selama tiga bulan penjualan. Tanggung jawab - Bertanggung jawab atas pencapaian target penjualan.
7 41 - Bertanggung jawab atas perkembangan pasar penjualan. - Bertanggung jawab atas kebijakan promosi dan penagihan. - Bertanggung jawab atas pelayanan dan hubungan baik dengan konsumen dan distributor. 6. Keamanan Tugas - Memegang dan melaksanakan absensi karyawan. - Membuat laporan absensi dan disampaikan ke bagian personalia. - Menjaga keamanan pabrik. 7. Kasir Tugas - Menerima semua uang masuk, baik berupa tunai, giro, maupun cek. - Membantu bagian keuangan menyetor cek atau giro ke rekening bank. - Mengelola kas kecil untuk pengeluaran dana harian yang berjumlah kecil. - Membayar gaji dan uang lembur karyawan. 8. Pembelian Tugas - Menentukan persyaratan supplier.
8 42 - Mendata kemampuan supplier untuk memasok barang, harga barang, mutu, jumlah, dan jadwal pengiriman barang. - Menyiapkan order pembelian untuk disetujui bagian keuangan. - Mengawasi penerimaan barang sesuai dengan order. - Memelihara dan menyimpan seluruh catatan pembelian bahan penolong. Tanggung jawab - Bertanggung jawab atas kesesuaian persyaratan mutu barang barang yang dibeli. 9. Produksi Tugas - Mencatat jumlah produksi ke dalam buku induk / harian. - Melaporkan kepada bagian produksi atas temuan ketidaksesuaian proses produksi dan mutu produksi. - Memeriksa tingkat kebersihan galon sebelum diisi. - Membuat laporan produksi setiap 3 bulan kepada Direktur. Tanggung jawab - Bertanggung jawab atas tersedia wadah di tempat produksi. - Bertanggung jawab atas kebersihan ruangan atau tempat produksi. - Bertanggung jawab kepada bagian produksi (QC) atas mutu produksi.
9 43 - Bertanggung jawab atas penyelesaian klaim pelanggan atau masyarakat pemakai. 10. Teknik / listrik Tugas - Mengajukan alternatif dan usulan pembelian suku cadang serta peralatan produksi. - Memeriksa tingkat kebersihan alat / mesin produksi baik sebelum dan sesudah dioperasikan. - Memelihara, merawat mesin / peralatan dan instalasi listrik. Tanggung jawab - Bertanggung jawab atas kesiapan operasi alat alat produksi. - Bertanggung jawab atas pelaksanaan perawatan alat alat produksi. 11. Gudang Tugas - Mencatat jumlah bahan penolong yang keluar masuk gudang. - Mencatat jumlah produksi akhir yang keluar masuk gudang. - Menjaga tingkat kerapian, kebersihan, dan keamanan gudang. - Memberi identifikasi barang setiap barang masuk gudang dan melaksanakan penggunaan barang dengan sistem FIFO. Tanggung jawab - Bertanggung jawab atas keselamatan bahan penolong dan produksi yang tersimpan dalam gudang.
10 44 - Bertanggung jawab atas pemberian identifikasi atas bahan baku dan produk jadi yang ada dalam gudang. 12. Penjualan Tugas - Menganalisa dan mendata persaingan yang terjadi di pasar. - Mengusulkan program promosi untuk meningkatkan penjualan dan memperluas pasar. - Mengajukan anggaran biaya untuk keperluan promosi. - Melaporkan kepada bagian pembelian kendala kendala yang terjadi di pasar. Tanggung jawab - Bertanggung jawab atas naik turunnya tingkat penjualan. - Bertanggung jawab atas pengiriman produk jadi kepada pasar. 3.2 Analisis Permasalahan Sistem yang Sedang Berjalan Berikut ini adalah prosedur sistem transaksi yang dilakukan pada PT Mejisinar Kasih : Prosedur pendaftaran pelanggan Sebelum melakukan transaksi pemesanan barang, calon pelanggan harus melakukan pendaftaran terlebih dahulu kepada staf bagian distribusi / pemasaran. Pendaftaran dilakukan agar staf bagian distribusi dapat mengecek kelayakan calon pelanggan, jika calon
11 45 pelanggan dianggap layak maka staf bagian distribusi akan meneruskan pendaftaran calon pelanggan kepada staf bagian penjualan. Staf bagian penjualan kemudian akan menerbitkan Bukti Pesanan (BP) 4 rangkap. Lembar 1 (putih) ditujukan ke bagian penjualan. Lembar 2 (merah) ditujukan ke bagian distribusi. Lembar 3 (kuning) diberikan kepada pelanggan. Lembar 4 (hijau) dijadikan sebagai arsip. Jika pelanggan sudah tidak ingin berlangganan lagi, maka lembar 1 akan dikembalikan kepada pelanggan.
12 46 Gambar 3.2 Diagram Alir Dokumen pada Tahap Pendaftaran Prosedur pemesanan barang Jika pelanggan tidak melakukan perubahan pesanan, maka barang akan dikirim secara rutin sesuai dengan perjanjian yang ada di BP. Jika pelanggan ingin melakukan perubahan pesanan, maka pelanggan harus melakukannya minimal sehari sebelum jadwal pengiriman barang dan
13 47 paling lambat sampai dengan jam siang. Staf bagian penjualan akan melihat jadwal pengiriman barang pada hari tersebut, kemudian menerbitkan Puchased Order (PO) 2 rangkap. Lembar 1 (putih) ditujukan ke bagian distribusi. Lembar 2 (merah) ditujukan ke bagian penjualan. Gambar 3.3 Diagram Alir Dokumen pada Tahap Pemesanan
14 48 Prosedur pengeluaran barang Setelah menerima PO dari bagian penjualan, maka staf bagian distribusi akan membuat Rencana Kerja Distribusi (RKD) 3 rangkap. RKD lembar 2 akan digunakan oleh driver sebagai panduan dalam melakukan distribusi barang. Lembar 1 (putih) ditujukan ke bagian gudang. Lembar 2 (merah) ditujukan ke driver. Lembar 3 (Kuning) digunakan sebagai arsip. Kemudian staf bagian distribusi juga akan menerbitkan Bukti Pengeluaran Barang Jadi (BPBJ) 3 rangkap yang digunakan agar staf bagian gudang dapat mengeluarkan barang yang diminta dan nantinya digunakan untuk mencocokkan antara barang yang diminta, barang yang diberikan, dan barang yang dijual. Lembar 1 (putih) ditujukan kepada bagian distribusi. Lembar 2 (merah) ditujukan kepada bagian gudang. Lembar 3 (hijau) ditujukan kepada pengambil / driver. Staf bagian distribusi juga akan menerbitkan Surat Jalan (SJ) 4 rangkap yang berisi nama dan alamat pelanggan, nama barang dan jumlah barang yang dijual akan diisi oleh driver. Lembar 1 (putih) dan lembar 4 (hijau) diberikan kepada pelanggan (lembar 1 diberikan apabila pembayaran telah dilakukan). Lembar 2 (merah) ditujukan ke bagian penjualan. Lembar 3 (kuning) digunakan sebagai arsip.
15 49 Staf bagian distribusi akan menyerahkan RKD lembar 2, seluruh BPBJ, dan seluruh SJ ke staf bagian gudang. Gambar 3.4 Diagram Alir Dokumen pada Tahap Pengeluaran Barang
16 50 Prosedur pengiriman barang Setelah menerima BPBJ dari staf bagian distribusi, maka staf bagian gudang akan memberikan barang sesuai dengan yang diminta kepada driver beserta RKD lembar 2 dan seluruh SJ. Driver akan mengirim barang sesuai dengan RKD dan akan mengisi SJ pelanggan sesuai dengan jumlah barang yang dipesan atau sesuai dengan jumlah galon kosong yang tersedia di pihak pelanggan. Untuk pengiriman produk galon, jika barang yang diminta oleh pelanggan lebih besar dari jumlah pemesanan di RKD, maka driver harus mengecek apakah jumlah barang yang tersedia masih dapat mencukupi seluruh pesanan pelanggan. Jika ternyata jumlah barang masih mencukupi, maka perubahan pesanan dapat dilakukan. Jika tidak, maka jumlah barang yang diberikan sesuai dengan jumlah yang tertera di RKD.
17 Gambar 3.5 Diagram Alir Dokumen pada Tahap Pengiriman 51
18 52 Gambar 3.6 Diagram Alir Dokumen pada Tahap Pengiriman (Lanjutan) Prosedur penagihan Setiap akhir bulan staf bagian penjualan membuat Surat Penagihan (SP) rangkap 3 berdasarkan pada SJ pelanggan pada bulan tersebut. Lembar 1 (putih) dan lembar 3 (kuning) diberikan kepada pelanggan (lembar 1 SP diberikan apabila pembayaran telah dilakukan beserta dengan lembar 1 SJ). Lembar 2 (merah) digunakan sebagai arsip. Jika tidak langsung melakukan pembayaran, maka pihak pelanggan harus memberikan tanda terima bahwa telah menerima SP dari PT Mejisinar Kasih dan akan diberikan batas waktu sesuai dengan perjanjian. Kolektor akan melakukan penagihan kembali sesuai dengan batas waktu yang telah dijanjikan.
19 53 Gambar 3.7 Diagram Alir Dokumen pada Tahap Penagihan Untuk pelanggan dengan jenis pembayaran lunas, maka pada saat dilakukan pengiriman barang selain diterbitkan SJ, diterbitkan pula SP yang berisi nama pelanggan, alamat pelanggan, dan harga barang. Jumlah barang akan diisi sendiri oleh driver karena harus sesuai dengan SJ. Jika pembayaran telah dilakukan maka driver akan
20 54 menyerahkan SJ lembar 1 dan 4 kepada pelanggan, serta SP lembar 1 dan 3. Prosedur serah terima produk jadi Setelah melakukan produksi, staf bagian produksi akan memindahkan barang ke gudang beserta Bukti Serah Terima Produk Jadi (BSTPJ) 2 rangkap. Lembar 1 (putih) ditujukan ke bagian produksi. Lembar 2 (merah) ditujukan ke bagian gudang. Gambar 3.8 Diagram Alir Dokumen pada Tahap Penerimaan Barang
21 55 Prosedur retur barang Jika pelanggan ingin melakukan retur barang, maka pada saat pengiriman barang pelanggan dapat langsung mengajukan retur ke driver. Driver akan memeriksa apakah barang tersebut dapat diretur, jika dapat diretur maka barang yang ingin diretur dapat langsung ditukar dengan barang yang baru selama masih terdapat sisa barang di armada dan driver akan mengeluarkan Surat Retur (SR) 3 rangkap. Lembar 1 (putih) yang ditujukan ke bagian gudang. Lembar 2 (merah) yang ditujukan ke bagian produksi. Lembar 3 (kuning) yang ditujukan ke bagian pelanggan. Jika barang tidak tersedia di armada, maka retur barang akan dilakukan pada pengiriman berikutnya setelah driver mempersiapkan barang yang akan diretur.
22 Gambar 3.9 Diagram Alir Dokumen pada Tahap Retur Barang 56
23 57 Berikut ini adalah DFD (Data Flow Diagram) yang sedang berjalan dalam perusahaan. Diagram konteks Gambar 3.10 DFD Diagram Konteks
24 58 Diagram nol Gambar 3.11 DFD Diagram l Permasalahan yang Dihadapi Saat ini PT Mejisinar Kasih sudah mempunyai sekitar 500 pelanggan tetap dengan jumlah rata rata transaksi sebesar 150 transaksi setiap harinya. Berdasarkan gambaran sistem yang sedang berjalan dapat diketahui permasalahan permasalahan yang dihadapi oleh perusahaan ini, antara lain:
25 59 Prosedur pemesanan barang Bagian penjualan mengalami kesulitan dalam membuat PO untuk pelanggan, sebab bagian penjualan harus selalu mengecek jadwal pengiriman beserta jumlah barang yang akan dikirimkan kepada setiap pelanggan berdasarkan BP yang telah disepakati antara pihak pelanggan dengan pihak perusahaan. Prosedur pengeluaran dan penerimaan barang Karena data belum terintegrasi antara bagian gudang, distribusi dan penjualan, maka bagian distribusi dan penjualan harus selalu menghubungi bagian gudang terlebih dahulu untuk mendapatkan informasi mengenai sisa barang yang ada di gudang barang jadi. Prosedur penagihan Perhitungan tagihan pelanggan masih dilakukan secara manual sehingga memungkinkan terjadinya kesalahan. Selain itu harga barang yang dijual untuk setiap pelanggan tidak sama, karena semua harga tergantung pada BP yang telah disepakati antara pihak pelanggan dengan pihak perusahaan. Permasalahan yang lainnya adalah bagian penjualan tidak dapat langsung mengetahui pelanggan mana yang tagihannya sudah melewati tanggal jatuh tempo karena harus melakukan pengecekan terlebih dahulu terhadap setiap tagihan yang ada.
26 Usulan Pemecahan Masalah Prosedur pemesanan barang Dibuat sebuah sistem yang dapat mengelompokkan pelanggan berdasarkan hari kirim beserta barang dan jumlah barang yang akan dikirimkan, sehingga dapat mempercepat proses pembuatan PO dan pengiriman barang. Prosedur pengeluaran dan penerimaan barang Dibuat sebuah sistem yang terintegrasi antara bagian gudang, distribusi dan penjualan, sehingga bagian distribusi dan penjualan dapat langsung mengetahui persediaan barang yang ada saat ini dan tidak perlu menanyakan ke bagian gudang terlebih dahulu lagi. Prosedur penagihan Dibuat sebuah sistem yang dapat menghitung jumlah tagihan yang harus dibayar oleh semua pelanggan berdasarkan jumlah barang yang telah diterima dan harga barang untuk masing masing pelanggan. Selain itu sistem juga akan memberitahukan daftar pelanggan yang penagihannya sudah melewati jatuh tempo. Berdasarkan usulan pemecahan masalah di atas, maka solusi yang baik dan bermanfaat bagi pihak perusahaan adalah dengan membuat suatu sistem basis data, sehingga segala jenis data, seperti PO, surat pengeluaran barang, surat jalan, dapat tersimpan dengan baik. Dan ketika dibutuhkan, dapat dengan cepat memperoleh data data yang diperlukan.
27 Perancangan Basis Data Koseptual Mengidentifikasi Tipe Entiti Berikut ini merupakan tabel yang menjelaskan entiti entiti yang digunakan dalam perancangan basis data. Entiti Deskripsi Alias Kemunculan Pegawai Berhubungan dengan semua pegawai yang Staf Setiap pegawai dapat melayani banyak PO, bekerja pada PT RKD, BPBJ, SJ, retur Mejisinar Kasih jual, penagihan dan Pelanggan Jabatan BP PO Berhubungan dengan semua pelanggan yang membeli barang pada PT Mejisinar Kasih Berhubungan dengan semua jabatan yang berlaku dalam proses bisnis PT Mejisinar Kasih Berhubungan dengan semua jenis barang yang dipesan oleh pelanggan, jumlah pengiriman barang, harga dari setiap barang dan jadwal pengiriman barang Berhubungan dengan semua pemesanan barang yang dilakukan oleh pelanggan Konsumen pembayaran. Setiap pelanggan dapat memesan barang dan dapat melakukan retur penjualan Position Setiap pegawai memiliki satu jabatan sesuai dengan tugas dan tanggung jawabnya Pendaftaran Setiap BP dibuat pada awal pemesanan barang milik pelanggan serta bila terjadi perubahan jadwal kirim, harga barang, jumlah pengiriman barang dan penambahan atau pengurangan jenis barang Invoice Setiap PO dibuat berdasarkan BP, tetapi masih dimungkinkan untuk mengalami perubahan jika ada pemberitahuan perubahan pesanan oleh pelanggan
28 62 Entiti Deskripsi Alias Kemunculan SJ Berhubungan dengan Surat Jalan Informasi pengiriman semua pengiriman barang berupa jumlah barang terhadap barang yang diterima pelanggan serta oleh pelanggan ditulis jumlah barang yang kedalam SJ setiap kali diterima oleh melakukan pengiriman pelanggan barang Penagihan Berhubungan dengan Penagihan Penagihan dilakukan semua penagihan setiap hari atau setiap penjualan terhadap bulan berdasarkan pada pelanggan jenis pembayaran pelanggan yang ada di BP Barang Barang yang dijual Produk Barang dibutuhkan oleh PT Mejisinar dalam transaksi Kasih penjualan BPBJ Berhubungan dengan Pengeluaran Barang dikeluarkan jumlah barang yang Barang dari gudang barang jadi keluar dari gudang pada saat ada BSTPJ ReturJual RKD Kendaraan Berhubungan dengan jumlah barang yang masuk ke gudang Berhubungan dengan semua pengembalian barang yang dilakukan pelanggan Berhubungan dengan semua urutan jadwal pengiriman barang untuk pelanggan Berhubungan dengan informasi semua kendaraan pengirim barang pengiriman barang Peneriman Pemasukkan barang Barang jadi dari produksi ke gudang barang jadi Retur Pelanggan dapat menukarkan barang yang dipesannya jika terjadi kerusakan pada barang yang diterima Rencana Setiap kali melakukan Kerja pengiriman barang Distribusi bagian distribusi membuat RKD untuk tiap kendaraan tertentu Armada Kendaraan digunakan pada saat pengiriman barang kepada pelanggan Tabel 3.1 Identifikasi Tipe Entiti
29 Mengidentifikasi Tipe Relasi Entiti Multiplicity Relasi Entiti Multiplicity Pegawai 1..1 Menangani PO 0..* Pegawai 1..1 Menangani BP 0..* Pegawai 1..1 Menangani Penagihan 0..* Pegawai 1..1 Menangani Penagihan 0..* Pegawai 1..1 Menangani Penagihan 0..* Pegawai 1..1 Menangani RKD 0..* Pegawai 1..1 Menangani RKD 0..* Pegawai 1..1 Menangani RKD 0..* Pegawai 1..1 Menangani RKD 0..* Pegawai 1..1 Menangani ReturJual 0..* Pegawai 1..1 Menangani BPBJ 0..* Pegawai 1..1 Menangani BSTPJ 0..* Pegawai 1..1 Menangani SJ 0..* Jabatan 1..1 Mempunyai Pegawai 1..* Pelanggan 1..1 Memiliki BP 1..* Pelanggan 1..1 Memiliki ReturJual 0..* BP 1..* Memiliki Barang 1..* PO 1..* Memiliki Barang 1..* PO 1..1 Memiliki SJ 1..1 BP 1..1 Memiliki PO 1..* BSTPJ 1..* Menambah Barang 1..* RKD 1..1 Memiliki PO 1..* RKD 1..1 Menghasilkan BPBJ 1..1 Kendaraan 1..1 Digunakan RKD 1..* Penagihan 1..1 BerdasarkanPada SJ 1..* BPBJ 1..* Mengurangi Barang 1..* ReturJual 0..* Memiliki Barang 1..* SJ 1..* Memiliki Barang 1..* Tabel 3.2 Identifikasi Tipe Relasi
30 64 Gambar 3.12 Diagram ER yang menunjukkan tipe entiti dan relasi Identifikasi Atribut dan Tipe Entitas Entiti Atribut Panjang Jenis Null MultiValue Derived Pegawai kodepegawai namapegawai alamatpegawai kota kodepos kecamatan kelurahan tgllahir jeniskelamin tglmasukkerja notelepon nohp statuspegawai Char VarChar VarChar VarChar Integer VarChar VarChar DateTime Char DateTime VarChar VarChar Boolean Yes Yes
31 65 Entiti Atribut Panjang Jenis Null MultiValue Derived Pelanggan kodepelanggan namapelanggan alamatpengiriman kotakirim kodeposkirim keckirim kelkirim alamatpenagihan kotatagih kodepostagih kectagih keltagih NPWP notelepon nofa statuspelanggan Char VarChar VarChar VarChar Integer VarChar VarChar VarChar VarChar Integer VarChar VarChar VarChar VarChar VarChar Boolean Yes Yes Yes Yes Jabatan kodejabatan namajabatan 6 30 Char VarChar BP kodebp tgl jenispembayaran jmlpinjamangalon hargapinjamangalon harikirim statusbp Char DateTime Char Integer Money VarChar Boolean Yes PO kodepo tgl 10 8 Char DateTime BSTPJ kodebstpj tgl 10 8 Char DateTime BPBJ kodebpbj tgl 10 8 Char DateTime Barang kodebarang namabarang merek satuan stok Char VarChar VarChar VarChar Integer RKD koderkd tgl keterangan Char DateTime VarChar Yes
32 66 Entiti Atribut Panjang Jenis Null MultiValue Derived Kendaraan nopolisi merekmobil tipe tahun kapasitasstd kapasitasopt statuskendaraan keterangan VarChar VarChar VarChar Integer Integer Integer Boolean VarChar Yes SJ Penagihan ReturJual kodesj tgl totaldijual kodepenagihan tglpenagihan tgljatuhtempo tglpembayaran jumlah disc ppn totalpenagihan statustagih kodereturjual tgl Char DateTime Money Char DateTime DateTime DateTime Money Float Float Money Boolean Char DateTime Yes Tabel 3.3 Menentukan Atribut dan Tipe Entitas Yes Yes Yes Yes Menentukan Domain Atribut Nama Atribut kodepegawai Domain Atribut Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 3 karakter pertama diisi dengan kode PGW 2 karakter selanjutnya menunjukkan tahun masuk pegawai dengan range ( ) 2 karakter selanjutnya menunjukkan bulan masuk pegawai dengan range ( ) 3 karakter terakhir menunjukkan urutan masuk pegawai pada tahun dan bulan yang sama dengan range ( ) Contoh kodepegawai : PGW , artinya pegawai masuk pada tahun 2006 bulan Januari dan merupakan orang ke 1 yang masuk pada tahun dan bulan tersebut.
33 67 Nama Atribut jeniskelamin kodepelanggan Domain Atribut Terdiri dari 1 karakter dengan tipe Char, yang berisi nilai L untuk pria atau P untuk wanita. Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 3 karakter pertama diisi dengan kode PLG 2 karakter selanjutnya menunjukkan tahun masuk pelanggan dengan range ( ) 2 karakter selanjutnya menunjukkan bulan masuk pelanggan dengan range ( ) 3 karakter terakhir menunjukkan urutan masuk pelanggan pada tahun dan bulan yang sama dengan range ( ) Contoh kodepelanggan : PLG , artinya pelanggan masuk pada tahun 2006 bulan Januari dan merupakan orang ke 1 yang masuk pada tahun dan bulan tersebut. kodebp jenispembayaran kodereturjual Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi yaitu Pendaftaran dengan kode BP 2 karakter selanjutnya menunjukkan tahun dibuatnya kodebp dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya kodebp dengan range ( ) 4 karakter terakhir menunjukkan urutan nomor kodebp yang dibuat pada tahun dan bulan yang sama dengan range ( ) Contoh kodebp : BP , artinya BP ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut. Terdiri dari 1 karakter dengan tipe Char, yang berisi nilai K untuk kredit atau L untuk lunas. Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi yaitu returjual dengan kode RJ 2 karakter selanjutnya menunjukkan tahun dibuatnya kodereturjual dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya kodereturjual dengan range ( )
34 68 Nama Atribut kodepo kodebarang koderkd Domain Atribut 4 karakter terakhir menunjukkan urutan nomor kodereturjual yang dibuat pada tahun dan bulan yang sama dengan range ( ) Contoh kodereturjual : RJ , artinya ReturJual ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut. Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi, yaitu Penjualan dengan kode PO 2 karakter selanjutnya menunjukkan tahun dibuatnya kodepo dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya kodepo dengan range ( ) 4 karakter terakhir menunjukkan urutan nomor kodepo yang dibuat pada tahun dan bulan yang sama dengan range ( ) Contoh kodepo : PO , artinya PO ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut. Terdiri dari 6 karakter dengan tipe Char, dengan cara penulisan : 3 karakter pertama diisi dengan kode BRG 3 karakter terakhir menunjukkan urutan nomor kodebarang dengan range ( ) Contoh kodebarang : BRG001 Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi, yaitu RKD dengan kode RD 2 karakter selanjutnya menunjukkan tahun dibuatnya koderkd dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya koderkd dengan range ( ) 4 karakter terakhir menunjukkan urutan nomor koderkd yang dibuat pada tahun dan bulan yang sama dengan range ( ) Contoh koderkd : RD , artinya RKD ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut.
35 69 Nama Atribut kodesj kodepenagihan kodebstpj Domain Atribut Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi yaitu SuratJalan, dengan kode SJ 2 karakter selanjutnya menunjukkan tahun dibuatnya kodesj dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya kodesj dengan range ( ) 4 karakter terakhir menunjukkan urutan kodesj yang dibuat pada tahun dan bulan yang sama dengan range ( ) Contoh kodesj : SJ , artinya SJ ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut. Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi yaitu Penagihan, dengan kode PH 2 karakter selanjutnya menunjukkan tahun dibuatnya kodepenagihan dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya kodepenagihan dengan range ( ) 4 karakter terakhir menunjukkan urutan kodepenagihan yang dibuat pada tahun dan bulan yang sama dengan range ( ) Contoh kodepenagihan : PH , artinya Penagihan ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi yaitu Penerimaan Barang, dengan kode TB 2 karakter selanjutnya menunjukkan tahun dibuatnya kodebstpj dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya kodebstpj dengan range ( ) 4 karakter terakhir menunjukkan urutan kodebstpj yang dibuat pada tahun dan bulan yang sama dengan range ( )
36 70 Nama Atribut kodebpbj statustagih statusbp statuspegawai statuspelanggan statuskendaraan kodepos kodeposkirim kodepostagih kodejabatan Domain Atribut Contoh kodebstpj : TB , artinya BSTPJ ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan : 2 karakter pertama menunjukkan jenis transaksi yaitu Pengeluaran Barang, dengan kode PB 2 karakter selanjutnya menunjukkan tahun dibuatnya kodebpbj dengan range ( ) 2 karakter selanjutnya menunjukkan bulan dibuatnya kodebpbj dengan range ( ) 4 karakter terakhir menunjukkan urutan kodebpbj yang dibuat pada tahun dan bulan yang sama dengan range ( ) Contoh kodebpbj : PB , artinya BPBJ ini dibuat pada tahun 2006 bulan Januari dengan urutan pembuatan ke 1 pada tahun dan bulan tersebut Terdiri dari 1 karakter dengan tipe Boolean, yang berisi nilai true (1) untuk Lunas atau false (0) untuk belumlunas. Terdiri dari 1 karakter dengan tipe Boolean, yang berisi nilai true (1) Valid atau false (0) untuk tidakvalid. Terdiri dari 1 karakter dengan tipe Boolean, yang berisi nilai true (1) untuk Aktif atau false (0) untuk tidakaktif Terdiri dari 1 karakter dengan tipe Boolean, yang berisi nilai true (1) untuk Aktif atau false (0) untuk tidakaktif Terdiri dari 1 karakter dengan tipe Boolean, yang berisi nilai true (1) untuk Available atau false (0) untuk Unavailable Terdiri dari 5 digit angka dengan tipe Integer Terdiri dari 6 karakter dengan tipe Char, dengan cara penulisan : 3 karakter pertama diisi dengan kode JBT 3 karakter terakhir menunjukkan urutan nomor kodejabatan dengan range ( ) Contoh kodejabatan : JBT001 Tabel 3.4 Menentukan Domain Atribut
37 Menentukan Atribut Candidate dan Primary Key Entiti Candidate Key Primary Key Pegawai kodepegawai kodepegawai notelepon nohp Pelanggan kodepelanggan kodepelanggan notelepon nofa Jabatan kodejabatan kodejabatan namajabatan Barang kodebarang kodebarang namabarang BSTPJ kodebstpj kodebstpj BPBJ kodebpbj kodebpbj BP kodebp kodebp PO kodepo kodepo RKD koderkd koderkd Kendaraan nopolisi nopolisi SJ kodesj kodesj Penagihan kodepenagihan kodepenagihan ReturJual kodereturjual kodereturjual Tabel 3.5 Menentukan Atribut Candidate dan Primary Key
38 72 Gambar 3.13 Diagram ER dengan Penambahan Primary Key Memeriksa Model Terhadap Redundansi Berdasarkan model yang telah dihasilkan, tidak terdapat model yang redundansi.
39 Validasi Model Konseptual Lokal Terhadap Transaksi User Data Entry a) Masukkan detail dari pelanggan b) Masukkan detail dari jabatan c) Masukkan detail dari pegawai d) Masukkan detail dari Penagihan e) Masukan detail dari Kendaraan f) Masukkan detail dari Barang g) Masukkan detail dari BP h) Masukkan detail dari RKD i) Masukkan detail dari BPBJ j) Masukkan detail dari BSTPJ k) Masukkan detail dari PO l) Masukkan detail dari ReturJual m) Masukkan detail dari SJ Data Update/Deletion a) Mengubah / menghapus detail dari pegawai b) Mengubah / menghapus detail dari jabatan c) Mengubah / menghapus detail dari pelanggan d) Mengubah detail dari RKD e) Mengubah / menghapus detail dari barang f) Mengubah / menghapus detail dari kendaraan g) Mengubah detail dari BP
40 74 h) Mengubah detail dari SJ i) Mengubah detail dari penagihan j) Mengubah detail dari PO k) Mengubah detail dari retur l) Mengubah detail dari BPBJ m) Mengubah detail dari BSTPJ Data Query a) Tampilkan detail pegawai berdasarkan kode jabatan b) Tampilkan detail pelanggan berdasarkan hari pengiriman c) Tampilkan detail barang beserta harga untuk pelanggan tertentu d) Tampilkan nama pelanggan dan detail dari penagihan yang belum dibayar pada bulan dan tahun tertentu e) Tampilkan detail persediaan barang f) Tampilkan detail PO beserta detail Barang yang dipesan berdasarkan koderkd tertentu g) Tampilkan detail SJ berdasarkan bulan dan kodepelanggan tertentu dari PO h) Tampilkan detail SJ berdasarkan kode penagihan tertentu i) Tampilkan detail barang berdasarkan kode retur tertentu j) Tampilkan detail barang berdasarkan kode BPBJ tertentu k) Tampilkan detail barang berdasarkan kode BSTPJ tertentu l) Tampilkan detail barang berdasarkan kode PO tertentu
41 75 m) Tampilkan detail kendaraan yang diurut berdasarkan kapasitas standart terbesar Gambar 3.14 Menggunakan Pathway untuk Memeriksa Bahwa Model Konseptual Mendukung Transaksi Query Data
42 Perancangan Basis Data Logikal Menghilangkan Fitur yang Tidak Sesuai Dengan Model Relasional 1. Menghilangkan tipe relasi binary many-to-many (*:*) Relasi Memiliki (BP-Barang) Gambar 3.15 Relasi many-to-many BP-Barang Gambar 3.16 Dekomposisi Relasi many-to-many BP-Barang Dilakukan identifikasi entiti baru BPDetail sehingga relasi Memiliki diganti dengan dua relasi one-to-many (1:*). Relasi many-to-many (*:*) Memiliki direpresentasikan sebagai BP Memiliki BPDetail dan Barang Mempunyai BPDetail. Relasi Menambah (BSTPJ-Barang) Gambar 3.17 Relasi many-to-many BSTPJ-Barang
43 77 Gambar 3.18 Dekomposisi Relasi many-to-many BSTPJ-Barang Dilakukan identifikasi entiti baru BSTPJDetail sehingga relasi Menambah diganti dengan dua relasi one-to-many (1:*). Relasi manyto-many (*:*) Menambah direpresentasikan sebagai BSTPJ Memiliki BSTPJDetail dan Barang Mempunyai BSTPJDetail. Relasi Memiliki (PO-Barang) Gambar 3.19 Relasi many-to-many PO-Barang Gambar 3.20 Dekomposisi Relasi many-to-many PO-Barang Dilakukan identifikasi entiti baru PODetail sehingga relasi Memiliki diganti dengan dua relasi one-to-many (1:*). Relasi many-to-many (*:*) Memiliki direpresentasikan sebagai PO Memiliki PODetail dan Barang Mempunyai PODetail.
44 78 Relasi Memiliki (ReturJual-Barang) Gambar 3.21 Relasi many-to-many ReturJual-Barang Gambar 3.22 Dekomposisi Relasi many-to-many ReturJual-Barang Dilakukan identifikasi entiti baru ReturJualDetail sehingga relasi Memiliki diganti dengan dua relasi one-to-many (1:*). Relasi manyto-many (*:*) Memiliki direpresentasikan sebagai ReturJual Memiliki ReturJualDetail dan Barang Mempunyai ReturJualDetail. Relasi Mengurangi (BPBJ-Barang) Gambar 3.23 Relasi many-to-many BPBJ-Barang
45 79 Gambar 3.24 Dekomposisi Relasi many-to-many BPBJ-Barang Dilakukan identifikasi entiti baru BPBJDetail sehingga relasi Mengurangi diganti dengan dua relasi one-to-many (1:*). Relasi many-to-many (*:*) Mengurangi direpresentasikan sebagai BPBJ Memiliki BPBJDetail dan Barang Mempunyai BPBJDetail. Relasi Memiliki (SJ-Barang) Gambar 3.25 Relasi many-to-many SJ-Barang Gambar 3.26 Dekomposisi Relasi many-to-many SJ-Barang Dilakukan identifikasi entiti baru SJDetail sehingga relasi Memiliki diganti dengan dua relasi one-to-many (1:*). Relasi many-to-many
46 80 (*:*) Memiliki direpresentasikan sebagai SJ Memiliki SJDetail dan Barang Mempunyai SJDetail. 2. Menghilangkan atribut multi-valued Pada entiti BP Terdapat atribut multi-valued harikirim. Gambar 3.27 Entiti BP dengan multi-valued Gambar 3.28 Dekomposisi Atribut harikirim Menjadi Entiti JadwalKirim Pada entiti Pelanggan Terdapat atribut multi-valued notelepon dan nofa
47 81 Gambar 3.29 Entiti Pelanggan dengan multi-valued Gambar 3.30 Dekomposisi Atribut notelepon dan nofa Menjadi Entiti TeleponPlgn dan FaPlgn
48 Menurunkan Relasi untuk Model Data Logikal Lokal 1. Strong entity types Jabatan (kodejabatan, namajabatan) Primary Key kodejabatan Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, statuspegawai) Primary Key kodepegawai Pelanggan (kodepelanggan, namapelanggan, alamatpengiriman, kotakirim, kodeposkirim, keckirim, kelkirim, alamatpenagihan, kotatagih, kodepostagih, kectagih, keltagih, NPWP, statuspelanggan) Primary Key (kodepelanggan) TeleponPlgn (notelepon) Primary Key notelepon FaPlgn (nofa) Primary Key nofa Kendaraan (nopolisi, merekmobil, tipe, tahun, kapasitasstd, kapasitasopt, statuskendaraan, keterangan) Primary Key nopolisi BP (kodebp, tgl, jenispembayaran, jmlpinjamangalon, hargapinjamangalon, statusbp) Primary Key kodebp JadwalKirim (harikirim, kodebp) Primary Key harikirim, kodebp RKD (koderkd, tgl, keterangan) Primary Key koderkd PO (kodepo, tgl) Primary Key kodepo Penagihan (kodepenagihan, tglpenagihan, tglpembayaran, disc, ppn, statustagih) Primary Key kodepenagihan Derived jumlah ( (SJ.totalDijual), Derived tgljatuhtempo(dateadd(day,10,tglpenagihan)), Derived totalpenagihan ((jumlah (jumlah * disc)) + (jumlah (jumlah * disc)) * ppn) SJ (kodesj, tgl) Primary Key kodesj Derived totaldijual ( (SJDetail.jumlahDijual)) BPBJ (kodebpbj, tgl) Primary Key kodebpbj
49 83 BSTPJ (kodebstpj, tgl) Primary Key kodebstpj ReturJual (kodereturjual, tgl) Primary Key kodereturjual Tabel 3.6 Strong Entity Types 2. Weak entity types BPDetail (hargabarang, jmldefaultkirim) Primary Key belum ada (saat ini) BSTPJDetail (qtymasuk) Primary Key belum ada (saat ini) PODetail (qtydiminta) Primary Key belum ada (saat ini) ReturJualDetail (qtyretur, keterangan) Primary Key belum ada (saat ini) BPBJDetail (qtydiberikan, qtysisabarang, keterangan) Primary Key belum ada (saat ini) SJDetail (qtydijual, keterangan) Primary Key belum ada (saat ini) Derived jumlahdijual (qtydijual * PODetail.hargaBarang) Tabel 3.7 Weak Entity Types 3. One-to-many (1:*) binary relationship types Jabatan Mempunyai Pegawai Jabatan (kodejabatan, namajabatan) Primary Key kodejabatan Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan)
50 84 Pelanggan Memiliki BP Pegawai Menangani BP Pelanggan (kodepelanggan, namapelanggan, alamatpengiriman, kotakirim, kodeposkirim, keckirim, kelkirim, alamatpenagihan, kotatagih, kodepostagih, kectagih, keltagih, NPWP, statuspelanggan) Primary Key kodepelanggan Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) Pelanggan Memiliki TeleponPlgn Pelanggan (kodepelanggan, namapelanggan, alamatpengiriman, kotakirim, kodeposkirim, keckirim, kelkirim, alamatpenagihan, kotatagih, kodepostagih, kectagih, keltagih, NPWP, statuspelanggan) Primary Key kodepelanggan Pelanggan Memiliki FaPlgn Pelanggan (kodepelanggan, namapelanggan, alamatpengiriman, kotakirim, kodeposkirim, keckirim, kelkirim, alamatpenagihan, kotatagih, kodepostagih, kectagih, keltagih, NPWP, statuspelanggan) Primary Key kodepelanggan BP (kodebp, tgl, jenispembayaran, jmlpinjamangalon, hargapinjamangalon, statusbp, kodepelanggan, kodepegawai) Primary Key kodebp Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) TeleponPlgn (notelepon, kodepelanggan) Primary Key notelepon Foreign Key kodepelanggan references Pelanggan(kodePelanggan) FaPlgn (nofa, kodepelanggan) Primary Key nofa Foreign Key kodepelanggan references Pelanggan(kodePelanggan)
51 85 BP Memiliki JadwalKirim BP (kodebp, tgl, jenispembayaran, jmlpinjamangalon, hargapinjamangalon, statusbp, kodepelanggan, kodepegawai) Primary Key kodebp Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) Pegawai Menangani BSTPJ Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) Pegawai Menangani RKD Pegawai Menangani RKD Pegawai Menangani RKD Pegawai Menangani RKD Kendaraan Digunakan RKD Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) Kendaraan (nopolisi, merekmobil, tipe, tahun, kapasitasstd, kapasitasopt, statuskendaraan, keterangan) Primary Key Kendaraan JadwalKirim (harikirim, kodebp) Primary Key harikirim, kodebp Foreign Key kodebp references BP(kodeBP) BSTPJ (kodebstpj, tgl, kodepegawai) Primary Key kodebstpj Foreign Key kodepegawai references Pegawai(kodePegawai) RKD (koderkd, tgl, keterangan, kodepegawai, kodedriver, kodehelper1, kodehelper2, kodekendaraan) Primary Key koderkd Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key kodedriver references Pegawai(kodePegawai) Foreign Key kodehelper1 references Pegawai(kodePegawai) Foreign Key kodehelper2 references Pegawai(kodePegawai) Foreign Key kodekendaraan references Kendaraan(noPolisi)
52 86 Pelanggan Memiliki ReturJual Pegawai Menangani ReturJual Pelanggan (kodepelanggan, namapelanggan, alamatpengiriman, kotakirim, kodeposkirim, keckirim, kelkirim, alamatpenagihan, kotatagih, kodepostagih, kectagih, keltagih, NPWP, statuspelanggan) Primary Key kodepelanggan Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) Pegawai Menangani Penagihan Pegawai Menangani Penagihan Pegawai Menangani Penagihan Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) ReturJual (kodereturjual, tgl, kodepelanggan, kodepegawai) Primary Key kodereturjual Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) Penagihan (kodepenagihan, tglpenagihan, tglpembayaran, disc, ppn, statustagih, kodekolektor, kodepegawaibyr, kodepegawaitgh) Primary Key kodepenagihan Foreign Key kodekolektor references Pegawai(kodePegawai) Foreign Key kodepegawaibyr references Pegawai(kodePegawai) Foreign Key kodepegawaitgh references Pegawai(kodePegawai) Derived jumlah ( (SJ.totalDijual) Derived tgljatuhtempo(dateadd( day, 10, tglpenagihan)) Derived totalpenagihan ((jumlah (jumlah * disc)) + (jumlah (jumlah * disc)) * ppn)
53 87 Pegawai Menangani BPBJ Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) Pegawai Menangani PO RKD Memiliki PO BP Memiliki PO Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) RKD (koderkd, tgl, keterangan, kodepegawai, kodedriver, kodehelper1, kodehelper2, kodekendaraan) Primary Key koderkd Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key kodedriver references Pegawai(kodePegawai) Foreign Key kodehelper1 references Pegawai(kodePegawai) Foreign Key kodehelper2 references Pegawai(kodePegawai) Foreign Key kodekendaraan references Kendaraan(noPolisi) BP (kodebp, tgl, jenispembayaran, jmlpinjamangalon, hargapinjamangalon, statusbp, BPBJ (kodebpbj, tgl, kodepegawai) Primary Key kodebpbj Foreign Key kodepegawai references Pegawai(kodePegawai) PO (kodepo, tgl, kodepegawai, koderkd, kodebp) Primary Key KodePO Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key koderkd references RKD(kodeRKD) Foreign Key kodebp references BP(kodeBP)
54 88 kodepelanggan, kodepegawai) Primary Key kodebp Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) Pegawai Menangani SJ Penagihan BerdasarkanPada SJ Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) Penagihan (kodepenagihan, tglpenagihan, tglpembayaran, disc, ppn, statustagih, kodekolektor, kodepegawaibyr, kodepegawaitgh) Primary Key kodepenagihan Foreign Key kodekolektor references Pegawai(kodePegawai) Foreign Key kodepegawaibyr references Pegawai(kodePegawai) Foreign Key kodepegawaitgh references Pegawai(kodePegawai) Derived jumlah ( (SJ.totalDijual) Derived tgljatuhtempo(dateadd( day, 10, tglpenagihan)) Derived totalpenagihan ((jumlah (jumlah * disc)) + (jumlah (jumlah * disc)) * ppn) BP Memiliki BPDetail Barang Mempunyai BPDetail BP (kodebp, tgl, jenispembayaran, jmlpinjamangalon, hargapinjamangalon, statusbp, kodepelanggan, kodepegawai) Primary Key kodebp SJ (kodesj, tgl, kodepegawai, kodepenagihan) Primary Key kodesj Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key kodepenagihan references Penagihan(kodePenagihan) Derived totaldijual ( (SJDetail.jumlahDijual)) BPDetail (kodebp, kodebarang, hargabarang, jmldefaultkirim) Primary Key kodebp, kodebarang Foreign Key kodebp references
55 89 Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang BSTPJ Memiliki BSTBJDetail Barang Mempunyai BSTPJDeatail BSTPJ (kodebstpj, tgl, kodepegawai) Primary Key kodebstpj Foreign Key kodepegawai references Pegawai(kodePegawai) Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang PO Memiliki PODetail Barang Mempunyai PODetail PO (kodepo, tgl, kodepegawai, koderkd, kodebp) Primary Key KodePO Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key koderkd references RKD(kodeRKD) Foreign Key kodebp references BP(kodeBP) Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang ReturJual Memiliki ReturJualDetail Barang Mempunyai ReturJualDetail ReturJual (kodereturjual, tgl, kodepelanggan, kodepegawai) Primary Key kodereturjual Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang BP(kodeBP) Foreign Key kodebarang references Barang(kodeBarang) BSTPJDetail (kodebstpj, kodebarang, qtymasuk) Primary Key kodebstpj, kodebarang Foreign Key kodebstpj references BSTPJ(kodeBSTPJ) Foreign Key kodebarang references Barang(kodeBarang) PODetail (kodepo, kodebarang, qtydiminta) Primary Key kodepo, kodebarang Foreign Key kodepo references PO(kodePO) Foreign Key kodebarang references Barang(kodeBarang) ReturJualDetail (kodereturjual, kodebarang, qtyretur, keterangan) Primary Key kodereturjual, kodebarang Foreign Key kodereturjual references ReturJual(kodeReturJual) Foreign Key kodebarang references Barang(kodeBarang)
56 90 BPBJ Memiliki BPBJDetail Barang Mempunyai BPBJDetail BPBJ (kodebpbj, tgl, kodepegawai) Primary Key kodebpbj Foreign Key kodepegawai references Pegawai(kodePegawai) Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang SJ Memiliki SJDetail Barang Mempunyai SJDetail SJ (kodesj, tgl, kodepegawai, kodepenagihan) Primary Key kodesj Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key kodepenagihan references Penagihan(kodePenagihan) Derived totaldijual ( (SJDetail.jumlahDijual)) Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang BPBJDetail (kodebpbj, kodebarang, qtydiberikan, qtysisabarang, keterangan) Primary Key kodebpbj, kodebarang Foreign Key kodebpbj references BPBJ(kodeBPBJ) Foreign Key kodebarang references Barang(kodeBarang) SJDetail (kodesj, kodebarang, qtydijual, keterangan) Primary Key kodesj, kodebarang Foreign Key kodesj references SJ(kodeSJ) Foreign Key kodebarang references Barang(kodeBarang) Derived jumlahdijual (qtydijual * PODetail.hargaBarang) Tabel 3.8 One-to-many (1:*) binary relationship types 4. One-to-one (1:1) binary relationship types RKD Menghasilkan BPBJ (patisipasi mandatory pada satu sisi) RKD (koderkd, tgl, keterangan, kodepegawai, kodedriver, kodehelper1, kodehelper2, kodekendaraan) Primary Key koderkd Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key kodedriver references Pegawai(kodePegawai) Foreign Key kodehelper1 references Pegawai(kodePegawai) Foreign Key kodehelper2 references Pegawai(kodePegawai) Foreign Key kodekendaraan references Kendaraan(noPolisi) BPBJ (kodebpbj, tgl, kodepegawai, koderkd) Primary Key kodebpbj Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key koderkd references RKD(kodeRKD)
57 91 PO Memiliki SJ (patisipasi mandatory pada satu sisi) PO (kodepo, tgl, kodepegawai, koderkd, kodebp) SJ Primary Key KodePO Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key koderkd references RKD(kodeRKD) Foreign Key kodebp references BP(kodeBP) (kodesj, tgl, kodepegawai, kodepenagihan, kodepo) Primary Key kodesj Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key kodepenagihan references Penagihan(kodePenagihan) Foreign Key kodepo references PO(kodePO) Derived totaldijual ( (SJDetail.jumlahDijual)) Tabel 3.9 One-to-one (1:1) Binary Relationship Types 5. Dokumentasi relasi dan atribut Foreign Key Jabatan (kodejabatan, namajabatan) Primary Key kodejabatan Pegawai (kodepegawai, namapegawai, alamatpegawai, kota, kodepos, kecamatan, kelurahan, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, notelepon, nohp, statuspegawai) Primary Key kodepegawai Foreign Key kodejabatan references Jabatan(kodeJabatan) TeleponPlgn (notelepon, kodepelanggan) Primary Key notelepon Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Kendaraan (nopolisi, merekmobil, tipe, tahun, kapasitasstd, kapasitasopt, statuskendaraan, keterangan) Primary Key nopolisi Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang Pelanggan (kodepelanggan, namapelanggan, alamatpengiriman, kotakirim, kodeposkirim, keckirim, kelkirim, alamatpenagihan, kotatagih, kodepostagih, kectagih, keltagih, NPWP, statuspelanggan) Primary Key kodepelanggan FaPlgn (nofa, kodepelanggan) Primary Key nofa Foreign Key kodepelanggan references Pelanggan(kodePelanggan) RKD (koderkd, tgl, keterangan, kodepegawai, kodedriver, kodehelper1, kodehelper2, kodekendaraan) Primary Key koderkd Foreign Key kodepegawai references
58 92 BP (kodebp, tgl, jenispembayaran, jmlpinjamangalon, hargapinjamangalon, statusbp, kodepelanggan, kodepegawai) Primary Key kodebp Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) JadwalKirim (harikirim, kodebp) Primary Key harikirim, kodebp Foreign Key kodebp references BP(kodeBP) PO (kodepo, tgl, kodepegawai, koderkd, kodebp) Primary Key KodePO Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key koderkd references RKD(kodeRKD) Foreign Key kodebp references BP(kodeBP) Pegawai(kodePegawai) Foreign Key kodedriver references Pegawai(kodePegawai) Foreign Key kodehelper1 references Pegawai(kodePegawai) Foreign Key kodehelper2 references Pegawai(kodePegawai) Foreign Key kodekendaraan references Kendaraan(noPolisi) BPDetail (kodebp, kodebarang, hargabarang, jmldefaultkirim) Primary Key kodebp, kodebarang Foreign Key kodebp references BP(kodeBP) Foreign Key kodebarang references Barang(kodeBarang) Penagihan (kodepenagihan, tglpenagihan, tglpembayaran, disc, ppn, statustagih, kodekolektor, kodepegawaibyr, kodepegawaitgh) Primary Key kodepenagihan Foreign Key kodekolektor references Pegawai(kodePegawai) Foreign Key kodepegawaibyr references Pegawai(kodePegawai) Foreign Key kodepegawaitgh references Pegawai(kodePegawai) Derived jumlah ( (SJ.totalDijual) Derived tgljatuhtempo(dateadd( day, 10, tglpenagihan)) Derived totalpenagihan ((jumlah (jumlah * disc)) + (jumlah (jumlah * disc)) * ppn) PODetail (kodepo, kodebarang, qtydiminta) Primary Key kodepo, kodebarang Foreign Key kodepo references PO(kodePO) Foreign Key kodebarang references Barang(kodeBarang)
59 93 SJ (kodesj, tgl, kodepegawai, kodepenagihan, kodepo) Primary Key kodesj Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key kodepenagihan references Penagihan(kodePenagihan) Foreign Key kodepo references PO(kodePO) Derived totaldijual ( (SJDetail.jumlahDijual)) BPBJ (kodebpbj, tgl, koderkd, kodepegawai) Primary Key kodebpbj Foreign Key kodepegawai references Pegawai(kodePegawai) Foreign Key koderkd references RKD(kodeRKD) BSTPJ (kodebstpj, tgl, kodepegawai) Primary Key kodebstpj Foreign Key kodepegawai references Pegawai(kodePegawai) ReturJual (kodereturjual, tgl, kodepelanggan, kodepegawai) Primary Key kodereturjual Foreign Key kodepelanggan references Pelanggan(kodePelanggan) Foreign Key kodepegawai references Pegawai(kodePegawai) SJDetail (kodesj, qtydijual, kodebarang, keterangan) Primary Key kodesj, kodebarang Foreign Key kodesj references SJ(kodeSJ) Foreign Key kodebarang references Barang(kodeBarang) Derived jumlahdijual (qtydijual * PODetail.hargaBarang) BPBJDetail (kodebpbj, kodebarang, qtydiberikan, qtysisabarang, keterangan) Primary Key kodebpbj, kodebarang Foreign Key kodebpbj references BPBJ(kodeBPBJ) Foreign Key kodebarang references Barang(kodeBarang) BSTPJDetail (kodebstpj, kodebarang, qtymasuk) Primary Key kodebstpj, kodebarang Foreign Key kodebstpj references BSTPJ(kodeBSTPJ) Foreign Key kodebarang references Barang(kodeBarang) ReturJualDetail (kodereturjual, kodebarang, qtyretur, keterangan) Primary Key kodereturjual, kodebarang Foreign Key kodereturjual references ReturJual(kodeReturJual) Foreign Key kodebarang references Barang(kodeBarang) Tabel 3.10 Dokumentasi Relasi dan Atribut Foreign Key
60 Validasi Relasi Menggunakan rmalisasi Pegawai UNF : Pegawai = kodepegawai + namapegawai + alamatpegawai + kota + kodepos + namakec + namakel + tgllahir + jeniskelamin + tglmasukkerja + kodejabatan + notelepon + nohp + statuspegawai 1NF : Pegawai + namapegawai + alamatpegawai + kota + kodepos + kecamatan + kelurahan + tgllahir + jeniskelamin + tglmasukkerja + kodejabatan + notelepon + nohp + statuspegawai Primary Key kodepegawai 2NF : Pegawai + namapegawai + alamatpegawai + kota + kodepos + kecamatan + kelurahan + tgllahir + jeniskelamin + tglmasukkerja + kodejabatan + notelepon + nohp + statuspegawai Primary Key kodepegawai
61 95 3NF : Pegawai + namapegawai + alamatpegawai + kodekel + tgllahir + jeniskelamin + tglmasukkerja + kodejabatan + notelepon + nohp + statuspegawai Primary Key kodepegawai Foreign Key kodekel references Kelurahan(kodeKel) Kelurahan + namakel + kodekec + kodekota + kodepos Primary Key kodekel Foreign Key kodekec references Kecamatan(kodeKec) Foreign Key kodekota references Kota(kodeKota) Foreign Key kodepos references Pos(kodePos) Kecamatan + namakec Primary Key kodekec Kota + namakota Primary Key kodekota Pos Primary Key kodepos
62 96 Pelanggan : UNF Pelanggan = kodepelanggan + namapelanggan + alamatpengiriman + kotakirim + kodeposkirim + keckirim + kelkirim + alamatpenagihan + kotatagih + kodepostagih + kectagih + keltagih + NPWP + statuspelanggan 1NF Pelanggan = kodepelanggan + namapelanggan + alamatpengiriman + kotakirim + kodeposkirim + keckirim + kelkirim + alamatpenagihan + kotatagih + kodepostagih + kectagih + keltagih + NPWP + statuspelanggan Primary Key kodepelanggan 2NF Pelanggan = kodepelanggan + namapelanggan + alamatpengiriman + kotakirim + kodeposkirim + keckirim + kelkirim + alamatpenagihan + kotatagih + kodepostagih + kectagih + keltagih + NPWP + statuspelanggan Primary Key kodepelanggan
63 97 3NF Pelanggan = kodepelanggan + namapelanggan + alamatpengiriman + kodekelkirim + alamatpenagihan + kodekeltagih + NPWP + statuspelanggan Primary Key kodepelanggan Foreign Key kodekelkirim references Kelurahan(kodeKel) Foreign Key kodekeltagih references Kelurahan(kodeKel) Kelurahan + namakel + kodekec + kodekota + kodepos Primary Key kodekel Foreign Key kodekec references Kecamatan(kodeKec) Foreign Key kodekota references Kota(kodeKota) Foreign Key kodepos references Pos(kodePos) Kecamatan + namakec Primary Key kodekec Kota + namakota Primary Key kodekota Pos Primary Key kodepos
64 Mendefinisikan Integrity Constraints Jabatan (kodejabatan, namajabatan) Primary Key kodejabatan Barang (kodebarang, namabarang, merek, satuan, stok) Primary Key kodebarang Kota (kodekota, namakota) Primary Key kodekota Kecamatan (kodekec, namakec) Primary Key kodekec Pos (kodepos) Primary Key kodepos Kelurahan (kodekel, namakel, kodekec, kodekota, kodepos) Primary Key kodekel Foreign Key kodekec references Kecamatan(kodeKec) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodekota references Kota(kodeKota) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodepos references Pos(kodePos) ON UPDATE CASCADE ON DELETE CASCADE Pegawai (kodepegawai, namapegawai, alamatpegawai, kodekel, tgllahir, jeniskelamin, tglmasukkerja, notelepon, nohp, kodejabatan, statuspegawai) Primary Key kodepegawai Foreign Key kodekel references Kelurahan(kodeKel) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodejabatan references Jabatan(kodeJabatan) ON UPDATE Pelanggan CASCADE ON DELETE NO ACTION (kodepelanggan, namapelanggan, alamatpengiriman, kodekelkirim, alamatpenagihan, kodekeltagih, NPWP, statuspelanggan) Primary Key kodepelanggan Foreign Key kodekelkirim references Kelurahan(kodeKel) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodekeltagih references Kelurahan(kodeKel) ON UPDATE CASCADE ON DELETE CASCADE TeleponPlgn (notelepon, kodepelanggan) Primary Key notelepon Foreign Key kodepelanggan references Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE CASCADE FaPlgn (nofa, kodepelanggan) Primary Key nofa Foreign Key kodepelanggan references Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE CASCADE
65 99 Kendaraan (nopolisi, merekmobil, tipe, tahun, kapasitasstd, kapasitasopt, statuskendaraan, keterangan) Primary Key Kendaraan BP (kodebp, tgl, jenispembayaran, jmlpinjamangalon, hargapinjamangalon, statusbp, kodepelanggan, kodepegawai) Primary Key kodebp Foreign Key kodepelanggan references Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodepegawai references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION BPDetail (kodebp, kodebarang, hargabarang, jmldefaultkirim) Primary Key kodebp, kodebarang Foreign Key kodebp references BP(kodeBP) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodebarang references Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION JadwalKirim (harikirim, kodebp) Primary Key harikirim, kodebp Foreign Key kodebp references BP(kodeBP) ON UPDATE CASCADE ON DELETE CASCADE RKD (koderkd, tgl, keterangan, kodepegawai, kodedriver, kodehelper1, kodehelper2, kodekendaraan) Primary Key koderkd Foreign Key kodepegawai references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodedriver references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodehelper1references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodehelper2references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodekendaraan references Kendaraan(noPolisi) ON UPDATE CASCADE ON DELETE NO ACTION PO (kodepo, tgl, kodepegawai, koderkd, kodebp) Primary Key KodePO Foreign Key kodepegawai references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key koderkd references RKD(kodeRKD) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodebp references BP(kodeBP) ON UPDATE CASCADE ON DELETE NO ACTION
66 100 PODetail (kodepo, kodebarang, qtydiminta) Primary Key kodepo, kodebarang Foreign Key kodepo references PO(kodePO) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodebarang references Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION Penagihan (kodepenagihan, tglpenagihan, tglpembayaran, disc, ppn, statustagih, kodekolektor, kodepegawaibyr, kodepegawaitgh) Primary Key kodepenagihan Foreign Key kodekolektor references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodepegawaibyr references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodepegawaitgh references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Derived jumlah ( (SJ.totalDijual) Derived tgljatuhtempo(dateadd(day, 10, tglpenagihan)) Derived totalpenagihan ((jumlah (jumlah * disc)) + (jumlah (jumlah * disc)) * ppn) SJ (kodesj, tgl, kodepegawai, kodepenagihan, kodepo) Primary Key kodesj Foreign Key kodepegawai references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodepenagihan references Penagihan(kodePenagihan) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodepo references PO(kodePO) ON UPDATE CASCADE ON DELETE NO ACTION Derived totaldijual ( (SJDetail.jumlahDijual)) SJDetail (kodesj, kodebarang, qtydijual, keterangan) Primary Key kodesj, kodebarang Foreign Key kodesj references SJ(kodeSJ) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodebarang references Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION Derived jumlahdijual (qtydijual * PODetail.hargaBarang) BPBJ (kodebpbj, tgl, koderkd, kodepegawai) Primary Key kodebpbj Foreign Key kodepegawai references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key koderkd references RKD(kodeRKD) ON UPDATE CASCADE ON DELETE NO ACTION
67 101 BPBJDetail (kodebpbj, kodebarang, qtydiberikan, qtysisabarang, keterangan) Primary Key kodebpbj, kodebarang Foreign Key kodebpbj references BPBJ(kodeBPBJ) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodebarang references Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION BSTPJ (kodebstpj, tgl, kodepegawai) Primary Key kodebstpj Foreign Key kodepegawai references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION BSTPJDetail (kodebstpj, kodebarang, qtymasuk) Primary Key kodebstpj, kodebarang Foreign Key kodebstpj references BSTPJ(kodeBSTPJ) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodebarang references Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION ReturJual (kodereturjual, tgl, kodepelanggan, kodepegawai) Primary Key kodereturjual Foreign Key kodepelanggan references Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key kodepegawai references Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION ReturJualDetail (kodereturjual, kodebarang, qtyretur, keterangan) Primary Key kodereturjual, kodebarang Foreign Key kodereturjual references ReturJual(kodeReturJual) ON UPDATE CASCADE ON DELETE CASCADE Foreign Key kodebarang references Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION Tabel 3.11 Mendefinisikan Integrity Constraints
68 102 Gambar 3.31 Diagram ER dengan Penambahan Primary Key dan Foreign Key 3.5 Perancangan Basis Data Fisikal Merancang Relasi Dasar Relasi Jabatan : Domain kodejabatan: fied length character string, length 6 Domain namajabatan: variable length character string, length 30
69 103 Jabatan ( kodejabatan namajabatan KodeJabatan NOT NULL, NamaJabatan NOT NULL, PRIMARY KEY (kodejabatan)); Relasi Barang : Domain kodebarang: fied length character string, length 6 Domain namabarang: variable length character string, length 30 Domain merek: variable length character string, length 30 Domain satuan: variable length character string, length 30 Domain stok: integer Barang ( kodebarang namabarang KodeBarang NOT NULL, NamaBarang NOT NULL, merek NamaMerek NOT NULL, satuan NamaSatuan NOT NULL, stok StokBarang NOT NULL, PRIMARY KEY (kodebarang)); Relasi Kota Domain kodekota: fied length character string, length 6 Domain namakota: variable length character string, length 30 Kota ( kodekota KodeKota NOT NULL,
70 104 namakota NamaKota NOT NULL, PRIMARY KEY (kodekota)); Relasi Kecamatan Domain kodekec: fied length character string, length 6 Domain namakec: variable length character string, length 30 Kecamatan ( kodekec KodeKecamatan NOT NULL, namakec NamaKecamatan NOT NULL, PRIMARY KEY (kodekec)); Relasi Pos Domain kodepos: integer, in the range Pos ( KodePos KodePos NOT NULL, PRIMARY KEY (kodepos)); Relasi Kelurahan Domain kodekel fied length character string, length 6 Domain namakel: variable length character string, length 30 Domain kodekec: fied length character string, length 6 Domain kodekota: fied length character string, length 6 Domain kodepos: integer, in the range
71 105 Kelurahan ( kodekel KodeKelurahan NOT NULL, namakel NamaKelurahan NOT NULL, kodekec KodeKecamatan NOT NULL, kodekota KodeKota NOT NULL, kodepos KodePos NOT NULL, PRIMARY KEY (kodekel), FOREIGN KEY kodekec REFERENCES Kecamatan(kodeKec) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodekota REFERENCES Kota(kodeKota) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodepos REFERENCES Pos(kodePos) ON UPDATE CASCADE ON DELETE CASCADE); Relasi Pegawai : Domain kodepegawai: fied length character string, length 10 Domain namapegawai: variable length character string, length 30 Domain alamatpegawai: variable length character string, length 100 Domain kodekel: fied length character string, length 6 Domain tgllahir: Domain jeniskelamin: Domain tglmasukkerja: date, must be less than now() single character, must be one of L, P date Domain notelepon variable length character string, length 12 Domain nohp: variable length character string, length 12
72 106 Domain kodejabatan: fied length character string, length 6 Domain statuspegawai: boolean Pegawai( kodepegawai KodePegawai NOT NULL, namapegawai NamaPegawai NOT NULL, alamatpegawai AlamatPegawai NOT NULL, kodekel KodeKelurahan NOT NULL, tgllahir TanggalLahir NOT NULL, jeniskelamin JenisKelamin NOT NULL, tglmasukkerja notelepon nohp TanggalMasukKerja NOT NULL, mortelepon, morhp, kodejabatan KodeJabatan NOT NULL, statuspegawai StatusPegawai NOT NULL, PRIMARY KEY (kodejabatan), FOREIGN KEY kodekel REFERENCES Kelurahan(kodeKel) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodejabatan REFERENCES Jabatan(kodeJabatan) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi Pelanggan : Domain kodepelanggan: fied length character string, length 10 Domain namapelanggan: variable length character string, length 30 Domain alamatpengiriman: variable length character string, length 100
73 107 Domain kodekelkirim: fied length character string, length 6 Domain alamatpenagihan: variable length character string, length 100 Domain kodekeltagih: fied length character string, length 6 Domain NPWP: variable length character string, length 25 Domain statuspelanggan: Boolean Pelanggan ( kodepelanggan KodePelanggan NOT NULL, namapelanggan NamaPelanggan NOT NULL, alamatpengiriman AlamatPengiriman NOT NULL, kodekelkirim KodeKelurahanKirim NOT NULL, alamatpenagihan AlamatPenagihan NOT NULL, kodekeltagih NPWP KodeKelurahanTagih NOT NULL, morwajibpajak, statuspelanggan StatusPelanggan NOT NULL, PRIMARY KEY (kodepelanggan), FOREIGN KEY kodekelkirim REFERENCES Kelurahan(kodeKel) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodekeltagih REFERENCES Kelurahan(kodeKel) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi TeleponPlgn : Domain notelepon: variable length character string, length 12 Domain kodepelanggan: fied length character string, length 10 TeleponPlgn (
74 108 notelepon mortelepon NOT NULL, kodepelanggan KodePelanggan NOT NULL, PRIMARY KEY (notelepon), FOREIGN KEY kodepelanggan REFERENCES Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE CASCADE); Relasi FaPlgn : Domain nofa: variable length character string, length 12 Domain kodepelanggan: fied length character string, length 10 FaPlgn ( nofa morfaimile NOT NULL, kodepelanggan KodePelanggan NOT NULL, PRIMARY KEY (nofa), FOREIGN KEY kodepelanggan REFERENCES Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE CASCADE); Relasi Kendaraan : Domain nopolisi: variable length character string, length 8 Domain merekmobil: variable length character string, length 30 Domain tipe: variable length character string, length 30 Domain tahun: Domain kapasitasstd: integer integer
75 109 Domain kapasitasopt: Domain statuskendaraan: integer boolean Domain keterangan: variable length character string, length 100 Kendaraan ( nopolisi morpolisi NOT NULL, merekmobil Merek NOT NULL, tipe Tipe NOT NULL, tahun Tahun NOT NULL, kapasitasstd KapasitasStandart NOT NULL, kapasitasopt KapasitasOptimal NOT NULL, statuskendaraan StatusKendaraan NOT NULL, keterangan Keterangan, PRIMARY KEY (nopolisi)); Relasi BP : Domain kodebp: fied length character string, length 10 Domain tgl: Domain jenispembayaran: Domain jmlpinjamangalon: date single character, must be one of K, L integer Domain hargapinjamangalon:monetary value Domain statusbp: boolean Domain kodepelanggan: fied length character string, length 10 Domain kodepegawai: fied length character string, length 10
76 110 BP ( kodebp KodeBP NOT NULL, tgl Tanggal NOT NULL, jenispembayaran JenisPembayaran NOT NULL, jmlpinjamangalon JumlahPinjamanGalon NOT NULL, hargapinjamangalon HargaPinjamanGalon NOT NULL, statusbp StatusBP NOT NULL, kodepelanggan KodePelanggan NOT NULL, kodepegawai KodePegawai NOT NULL, PRIMARY KEY (kodebp), FOREIGN KEY kodepelanggan REFERENCES Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodepegawai REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi BPDetail : Domain kodebp: fied length character string, length 6 Domain kodebarang: fied length character string, length 6 Domain hargabarang: Domain jmldefaultkirim: monetary value integer BPDetail ( kodebp KodeBP NOT NULL, kodebarang KodeBarang NOT NULL,
77 111 hargabarang HargaBarang NOT NULL, jmldefaultkirim JumlahDefaultKirim NOT NULL, PRIMARY KEY (kodebp, kodebarang), FOREIGN KEY kodebp REFERENCES BP(kodeBP) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodebarang REFERENCES Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi JadwalKirim : Domain harikirim: variable length character string, length 6 Domain kodebp: fied length character string, length 10 JadwalKirim ( harikirim HariKirim NOT NULL, kodebp KodeBP NOT NULL, PRIMARY KEY (HariKirim, KodeBP), FOREIGN KEY kodebp REFERENCES BP(kodeBP) ON UPDATE CASCADE ON DELETE CASCADE); Relasi RKD : Domain koderkd: fied length character string, length 10 Domain tgl: date Domain keterangan: variable length character string, length 100 Domain kodepegawai: fied length character string, length 10 Domain kodedriver: fied length character string, length 10
78 112 Domain kodehelper1: fied length character string, length 10 Domain kodehelper2: fied length character string, length 10 Domain kodekendaraan: variable length character string, length 8 RKD ( koderkd KodeRKD NOT NULL, tgl Tanggal NOT NULL, keterangan Keterangan, kodepegawai KodePegawai NOT NULL, kodedriver Supir NOT NULL, kodehelper1 PembantuSupir1 NOT NULL, kodehelper2 PembantuSupir2 NOT NULL, kodekendaraan KodeKendaraan NOT NULL, PRIMARY KEY (koderkd), FOREIGN KEY kodepegawai REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodedriver REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodehelper1 REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodehelper2 REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodekendaraan REFERENCES Kendaraan(noPolisi) ON UPDATE CASCADE ON DELETE NO ACTION);
79 113 Relasi PO : Domain kodepo: fied length character string, length 10 Domain tgl: date Domain kodepegawai: fied length character string, length 10 Domain koderkd: fied length character string, length 10 Domain kodebp: fied length character string, length 10 PO ( kodepo KodePO NOT NULL, tgl Tanggal NOT NULL, kodepegawai KodePegawai NOT NULL, koderkd KodeRKD, kodebp KodeBP NOT NULL, PRIMARY KEY (kodepo), FOREIGN KEY kodepegawai REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY koderkd REFERENCES RKD(kodeRKD) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodebp REFERENCES BP(kodeBP) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi PODetail : Domain kodepo: fied length character string, length 10 Domain kodebarang: fied length character string, length 6 Domain qtydiminta: integer
80 114 PODetail ( kodepo kodepo NOT NULL, kodebarang KodeBarang NOT NULL, qtydiminta KuantitiDiminta NOT NULL, PRIMARY KEY (kodepo, kodebarang), FOREIGN KEY kodepo REFERENCES PO(kodePO) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodebarang REFERENCES Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi Penagihan : Domain kodepenagihan: fied length character string, length 10 Domain tglpenagihan: Domain tgljatuhtempo: Domain tglpembayaran: Domain jumlah: Domain disc: Domain ppn: Domain totalpenagihan: Domain statustagih: date date date monetary value float float monetary value boolean Domain kodekolektor: fied length character string, length 10 Domain kodepegawaibyr: fied length character string, length 10 Domain kodepegawaitgh: fied length character string, length 10
81 115 Penagihan ( kodepenagihan kodepenagihan NOT NULL, tglpenagihan TanggalPenagihan NOT NULL, tglpembayaran TanggalPembayaran NOT NULL, jumlah Jumlah NOT NULL, disc PotonganHarga NOT NULL, ppn PajakPertambahanNilai NOT NULL, totalpenagihan TotalPenagihan NOT NULL, statustagih StatusTagih NOT NULL, kodekolektor kodepegawaibyr KodeKolektor, KodePegawaiBayar, kodepegawaitgh KodePegawaiTagih NOT NULL, PRIMARY KEY (kodepenagihan), FOREIGN KEY kodekolektor REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodepegawaibyr REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodepegawaitgh REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, Derived jumlah ( (SJ.totalDijual), Derived tgljatuhtempo (dateadd(day, 10, tglpenagihan)), Derived totalpenagihan ((jumlah (jumlah * disc)) + (jumlah (jumlah * disc)) * ppn);
82 116 Relasi SJ : Domain kodesj: fied length character string, length 10 Domain tgl: Domain totaldijual: date monetary value Domain kodepegawai: fied length character string, length 10 Domain kodepo: fied length character string, length 10 Domain kodepenagihan: fied length character string, length 10 SJ ( kodesj KodeSJ NOT NULL, tgl Tanggal NOT NULL, totaldijual TotalDijual, kodepegawai KodePegawai NOT NULL, kodepo KodePO NOT NULL, kodepenagihan KodePenagihan, PRIMARY KEY (kodesj), FOREIGN KEY kodepegawai REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodepo REFERENCES PO(kodePO) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodepenagihan REFERENCES Penagihan(kodePenagihan) ON UPDATE CASCADE ON DELETE NO ACTION), Derived totaldijual ( (SJDetail.jumlahDijual));
83 117 Relasi SJDetail : Domain kodesj: fied length character string, length 10 Domain kodebarang: fied length character string, length 6 Domain qtydijual: Domain jumlahdijual integer monetary value Domain keterangan: variable length character string, length 100 SJDetail ( kodesj KodeSJ NOT NULL, kodebarang KodeBarang NOT NULL, qtydijual jumlahdijual keterangan KuantitiDijual, Jumlah Dijual, Keterangan, PRIMARY KEY (kodesj, kodebarang), FOREIGN KEY kodesj REFERENCES SJ(kodeSJ) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodebarang REFERENCES Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION, Derived jumlahdijual (qtydijual * PODetail.hargaBarang); Relasi BPBJ : Domain kodebpbj: fied length character string, length 10 Domain tgl: date Domain koderkd: fied length character string, length 10 Domain kodepegawai: fied length character string, length 10
84 118 BPBJ ( kodebpbj KodeBPBJ NOT NULL, tgl Tanggal NOT NULL, koderkd KodeRKD NOT NULL, kodepegawai KodePegawai NOT NULL, PRIMARY KEY (kodebpbj), FOREIGN KEY koderkd REFERENCES RKD(kodeRKD) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodepegawai REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi BPBJDetail : Domain kodebpbj: fied length character string, length 10 Domain kodebarang: fied length character string, length 6 Domain qtydiberikan: Domain qtysisabarang: integer integer Domain keterangan: variable length character string, length 100 BPBJDetail ( kodebpbj KodeBPBJ NOT NULL, kodebarang KodeBarang NOT NULL, qtydiberikan KuantitiDiberikan NOT NULL, qtysisabarang keterangan KuantitiSisaBarang, Keterangan, PRIMARY KEY (kodebpbj, kodebarang),
85 119 FOREIGN KEY kodebpbj REFERENCES BPBJ(kodeBPBJ) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodebarang REFERENCES Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION, Relasi BSTPJ : Domain kodebstpj: fied length character string, length 10 Domain tgl: date Domain kodepegawai: fied length character string, length 10 BSTPJ ( kodebstpj kodebstpj NOT NULL, tgl Tanggal NOT NULL, kodepegawai KodePegawai NOT NULL, PRIMARY KEY (kodebstpj), FOREIGN KEY kodepegawai REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION); Relasi BSTPJDetail : Domain kodebstpj: fied length character string, length 10 Domain kodebarang: fied length character string, length 6 Domain qtymasuk: integer BSTPJDetail ( kodebstpj KodeBSTPJ NOT NULL, kodebarang KodeBarang NOT NULL,
86 120 qtymasuk KuantitiMasuk NOT NULL, PRIMARY KEY (kodebstpj, kodebarang), FOREIGN KEY kodebstpj REFERENCES BSTPJ(kodeBSTPJ) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodebarang REFERENCES Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION, Relasi ReturJual : Domain kodereturjual: fied length character string, length 10 Domain tgl: date Domain kodepelanggan: fied length character string, length 10 Domain kodepegawai: fied length character string, length 10 ReturJual ( kodereturjual KodeReturJual NOT NULL, tgl Tanggal NOT NULL, kodepelanggan KodePelanggan NOT NULL, kodepegawai KodePegawai NOT NULL, PRIMARY KEY (kodereturjual), FOREIGN KEY kodepelanggan REFERENCES Pelanggan(kodePelanggan) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY kodepegawai REFERENCES Pegawai(kodePegawai) ON UPDATE CASCADE ON DELETE NO ACTION);
87 121 Relasi ReturJualDetail : Domain kodereturjual: fied length character string, length 10 Domain kodebarang: fied length character string, length 6 Domain qtyretur: integer Domain keterangan: variable length character string, length 100 ReturJualDetail ( kodereturjual KodeReturJual NOT NULL, kodebarang KodeBarang NOT NULL, qtyretur Kuantiti NOT NULL, keterangan Keterangan, PRIMARY KEY (kodereturjual, kodebarang), FOREIGN KEY kodereturjual REFERENCES ReturJual(kodeReturJual) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY kodebarang REFERENCES Barang(kodeBarang) ON UPDATE CASCADE ON DELETE NO ACTION);
88 Menganalisa Transaksi Data Entry Transaksi/ Relasi (a) (b) (c) (d) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.12 Transaction/Relation Cross-Referenced Matri Entri Data Transaksi (a) - (d) a) Masukkan detail dari Kota b) Masukkan detail dari Kecamatan c) Masukkan detail dari Pos d) Masukkan detail dari Kelurahan
89 123 Transaksi/ Relasi (e) (f) (g) (h) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.13 Transaction/Relation Cross-Referenced Matri Entri Data Transaksi (e) - (h) e) Masukkan detail dari pelanggan f) Masukkan detail dari jabatan g) Masukkan detail dari pegawai h) Masukkan detail dari Penagihan
90 124 Transaksi/ Relasi (i) (j) (k) (l) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.14 Transaction/Relation Cross-Referenced Matri Entri Data Transaksi (i) - (l) i) Masukan detail dari Kendaraan j) Masukkan detail dari Barang k) Masukkan detail dari BP l) Masukkan detail dari RKD
91 125 Transaksi/ Relasi (m) (n) (o) (p) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.15 Transaction/Relation Cross-Referenced Matri Entri Data Transaksi (m) - (p) m) Masukkan detail dari BPBJ n) Masukkan detail dari BSTPJ o) Masukkan detail dari PO p) Masukkan detail dari ReturJual
92 126 Transaksi/ Relasi (q) (r) I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.16 Transaction/Relation Cross-Referenced Matri Entri Data Transaksi (q) - (r) q) Masukkan detail dari JadwalKirim r) Masukkan detail dari SJ
93 127 Update / Delete Data Transaksi/ Relasi (a) (b) (c) (d) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.17 Transaction/Relation Cross-Referenced Matri Mengubah dan Menghapus Data Transaksi (a) (d) a) Mengubah / menghapus detail dari kota b) Mengubah / menghapus detail dari kecamatan c) Mengubah / menghapus detail dari pos d) Mengubah / menghapus detail dari kelurahan
94 128 Transaksi/ Relasi (e) (f) (g) (h) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.18 Transaction/Relation Cross-Referenced Matri Mengubah dan Menghapus Data Transaksi (e) (h) e) Mengubah / menghapus detail dari jabatan f) Mengubah / menghapus detail dari pegawai g) Mengubah / menghapus detail dari pelanggan h) Mengubah detail dari RKD
95 129 Transaksi/ Relasi (i) (j) (k) (l) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.19 Transaction/Relation Cross-Referenced Matri Mengubah dan Menghapus Data Transaksi (i) (l) i) Mengubah / menghapus detail dari barang j) Mengubah / menghapus detail dari kendaraan k) Mengubah detail dari BP l) Mengubah detail dari SJ
96 130 Transaksi/ Relasi (m) (n) (o) (p) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.20 Transaction/Relation Cross-Referenced Matri Mengubah dan Menghapus Data Transaksi (m) (p) m) Mengubah detail dari penagihan n) Mengubah detail dari PO o) Mengubah detail dari retur p) Mengubah detail dari BPBJ
97 131 Transaksi/ Relasi (q) I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.21 Transaction/Relation Cross-Referenced Matri Mengubah dan Menghapus Data Transaksi (q) q) Mengubah detail dari BSTPJ
98 132 Data Query Transaksi/ Relasi (a) (b) (c) (d) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.22 Transaction/Relation Cross-Referenced Matri Melihat Data Transaksi (a) (d) a) Tampilkan detail pegawai berdasarkan kode jabatan b) Tampilkan detail pelanggan berdasarkan hari pengiriman c) Tampilkan detail barang beserta harga untuk pelanggan tertentu d) Tampilkan nama pelanggan dan detail dari penagihan yang belum dibayar pada bulan dan tahun tertentu
99 133 Transaksi/ Relasi (e) (f) (g) (h) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.23 Transaction/Relation Cross-Referenced Matri Melihat Data Transaksi (e) (h) e) Tampilkan detail persediaan barang f) Tampilkan detail PO beserta detail barang yang dipesan oleh pelanggan berdasarkan koderkd tertentu
100 134 g) Tampilkan detail SJ beserta detail barang dan harga barang yang diterima pelanggan berdasarkan bulan, tahun, dan kodepelanggan tertentu h) Tampilkan detail SJ berdasarkan kode penagihan tertentu Transaksi/ Relasi (i) (j) (k) (l) I R U D I R U D I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.24 Transaction/Relation Cross-Referenced Matri Melihat Data Transaksi (i) (l) i) Tampilkan detail barang berdasarkan kode retur tertentu j) Tampilkan detail barang berdasarkan kode BPBJ tertentu
101 135 k) Tampilkan detail barang berdasarkan kode BSTPJ tertentu l) Tampilkan detail barang berdasarkan kode PO tertentu Transaksi/ Relasi (m) (n) I R U D I R U D Jabatan Barang Kota Kecamatan Pos Kelurahan Pegawai Pelanggan TeleponPlgn FaPlgn Kendaraan BP BPDetail JadwalKirim RKD PO PODetail Penagihan SJ SJDetail BPBJ BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail I = Insert; R = Read; U = Update; D = Delete Tabel 3.25 Transaction/Relation Cross-Referenced Matri Melihat Data Transaksi (m) (n) m) Tampilkan detail kendaraan yang diurut berdasarkan kapasitas standart terbesar
102 136 n) Tampilkan namapelanggan, kodesj, kodepo, namabarang, qtydiminta pada PO, dan qtydijual pada SJ yang jumlah qtydiminta pada PO tidak sama dengan qtydijual pada SJ untuk transaksi PO yang terjadi pada bulan tertentu Transaction/relation cross-referenced matri di atas menunjukkan bahwa relasi Jabatan diakses oleh 5 transaksi, relasi Pegawai diakses oleh 20 transaksi, relasi Pelanggan diakses oleh 11 transaksi, relasi TeleponPlgn diakses oleh 3 transaksi, relasi FaPlgn diakses oleh 3 transaksi, relasi Barang diakses oleh 22 transaksi, relasi BP diakses oleh 10 transaksi, relasi BPDetail diakses oleh 4 transaksi, relasi RKD diakses oleh 6 transaksi, relasi SJ diakses oleh 7 transaksi, relasi SJDetail diakses oleh 6 transaksi, relasi PO diakses oleh 9 transaksi, relasi PODetail diakses oleh 5 transaksi, relasi BPBJ diakses oleh 3 transaksi, relasi BPBJDetail diakses oleh 3 transaksi, relasi BSTPJ diakses oleh 3 transaksi, relasi BSTPJDetail diakses oleh 3 transaksi, relasi returjual diakses oleh 3 transaksi, relasi returjualdetail diakses oleh 3 transaksi, relasi Penagihan diakses oleh 5 transaksi, relasi Kota diakses oleh 6 transaksi, relasi Pos diakses oleh 6 transaksi, relasi Kecamatan diakses oleh 6 transaksi, relasi Kelurahan diakses oleh 4 transaksi, relasi Kendaraan diakses oleh 5 transaksi, relasi JadwalKirim diakses oleh 2 transaksi.
103 137 Transaction Analysis Form Transaksi (c) Tampilkan detail barang beserta harga untuk pelanggan tertentu Volume Transaksi Average: 30 per hour Peak: 70 per hour ( antara dan Senin Jumat ) SELECT c.kodebarang, namabarang, satuan, merek, hargabarang FROM Pelanggan a INNER JOIN BP b ON a.kodepelanggan = b.kodepelanggan INNER JOIN BPDetail c ON b.kodebp = c.kodebp INNER JOIN Barang d ON c.kodebarang = d.kodebarang WHERE b.kodepelanggan = PLG AND statusbp = 1 Predicate: b.kodepelanggan = PLG060101, statusbp = 1 Join Attributes: a.kodepelanggan = b.kodepelanggan, b.kodebp = c.kodebp, c.kodebarang = d.kodebarang Ordering attribute: none Grouping attribute: none Built-in function: none Attribute updated: none Transaction usage map
104 138 Access Entity Type of of References Access Per Transaction Avg per Hour Peak per Hour 1 Pelanggan R BP R BPDetail R Barang R Total References Tabel 3.26 Transaction Analysis Form untuk Transaksi Query Data (c) Transaction Analysis Form Transaksi (d) Tampilkan nama pelanggan dan detail dari penagihan yang belum dibayar pada bulan dan tahun tertentu Volume Transaksi Average: 5 per hour Peak: 10 per hour ( antara dan Senin - Jumat ) SELECT namapelanggan, a.* FROM Penagihan a INNER JOIN SJ b ON a.kodepenagihan = b.kodepenagihan INNER JOIN PO c ON b.kodepo = c.kodepo INNER JOIN Pelanggan d ON c.kodepelanggan = d.kodepelanggan WHERE MONTH(tglPenagihan) = 1 AND YEAR(tglPenagihan) = 2006 AND statustagih = 0 Predicate: MONTH(tglPenagihan) = 1, YEAR(tglPenagihan) = 2006, statustagih = 0 Join Attributes: a.kodepenagihan = b.kodepenagihan, b.kodepo = c.kodepo, c.kodepelanggan = d.kodepelanggan Ordering attribute: none Grouping attribute: none Built-in function: none Attribute updated: none
105 139 Transaction usage map Access Entity Type of of References Access Per Transaction Avg per Hour Peak per Hour 1 Penagihan R SJ R PO R Pelanggan R Total References Tabel 3.27 Transaction Analysis Form untuk Transaksi Query Data (d) Transaction Analysis Form Transaksi (f) Tampilkan detail PO beserta detail Barang yang dipesan pelanggan berdasarkan koderkd tertentu Volume Transaksi Average: 10 Peak 50 ( antara dan Senin Jumat ) SELECT b.kodepo, tgl, b.kodepegawai, koderkd, kodebp, b.kodebarang, Predicate: koderkd = RD Join Attributes: a.koderkd =
106 140 namabarang, merek, satuan,qtydiminta FROM RKD a INNER JOIN PO b ON a.koderkd = b.koderkd INNER JOIN PODetail c ON b.kodepo = c.kodepo INNER JOIN Barang d ON c.kodebarang = d.kodebarang WHERE b.koderkd = RD b.koderkd, b.kodepo = c.kodepo, c.kodebarang = d.kodebarang Ordering attribute: none Grouping attribute: none Built-in function: none Attribute updated: none Transaction usage map Access Entity Type of Access of References Avg per Hour Per Peak per Hour Transaction 1 RKD R PO R PODetail R Barang R Total References Tabel 3.28 Transaction Analysis Form untuk Transaksi Query Data (f)
107 141 Transaction Analysis Form Transaksi (g) Tampilkan detail SJ beserta detail barang dan harga barang yang diterima pelanggan berdasarkan bulan, tahun, dan kodepelanggan tertentu Volume Transaksi Average: 10 Peak: 15 ( antara dan Senin Jumat ) SELECT a.*, b.*,hargabarang FROM SJ a INNER JOIN SJDetail b ON a.kodesj = b.kodesj INNER JOIN PO c ON a.kodepo = c.kodepo INNER JOIN BP d ON c.kodebp = d.kodebp INNER JOIN BPDetail e ON d.kodebp = e.kodebp WHERE MONTH(a.tgl) = 1 AND YEAR(a.tgl) = 2006 AND kodepelanggan = PLG Predicate: MONTH(c.tgl) = 1, YEAR(a.tgl) = 2006, kodepelanggan = PLG Join Attributes: a.kodesj = b.kodesj, a.kodepo = c.kodepo, c.kodebp = d.kodebp, d.kodebp = e.kodebp Ordering attribute: none Grouping attribute: none Built-in function: none Attribute updated: none Transaction usage map Access Entity Type of Access of References Avg per Hour Per Peak per Hour Transaction 1 SJ R SJDetail R PO R
108 142 4 BP R BPDetail R Total References Tabel 3.29 Transaction Analysis Form untuk Transaksi Query Data (g) Transaction Analysis Form Transaksi (n) Tampilkan namapelanggan, kodesj, kodepo, namabarang, qtydiminta pada PO, dan qtydijual pada SJ yang jumlah qtydiminta pada PO tidak sama dengan qtydijual pada SJ untuk transaksi PO yang terjadi pada bulan dan tahun tertentu dari PO Volume Transaksi Average: 5 Peak 10 ( antara dan Senin Jumat ) SELECT namapelanggan, kodesj, kodepo, namabarang, qtydiminta, qtydijual FROM PO a INNER JOIN PODetail b ON a.kodepo = b.kodepo INNER JOIN BP c ON a.kodebp = c.kodebp INNER JOIN Pelanggan d ON c.kodepelanggan = d.kodepelanggan INNER JOIN SJ e ON a.kodepo = e.kodepo INNER JOIN SJDetail f ON e.kodesj = f.kodesj WHERE MONTH(a.tgl) = 1 AND YEAR(a.tgl) = 2006 AND qtydiminta <> qtydijual Predicate: MONTH(a.tgl) = 1, YEAR(a.tgl) = 2006, qtydiminta <> qtydijual Join Attributes: a.kodepo = b.kodepo, a.kodebp = c.kodebp, c.kodepelanggan = d.kodepelanggan, a.kodepo = e.kodepo, e.kodesj = f.kodesj Ordering attribute: none Grouping attribute: none Built-in function: none Attribute updated: none
109 143 Transaction usage map Access Entity Type of of References Access Per Transaction Avg per Hour Peak per Hour 1 PO R PODetail R Barang R BP R Pelanggan R SJ R SJDetail R Total References Tabel 3.30 Transaction Analysis Form untuk Transaksi Query Data (n)
110 Memilih Organisasi File DBMS yang digunakan untuk mengimplementasi basis data PT Mejisinar Kasih ini adalah Microsoft SQL Server Oleh karena itu organisasi file yang digunakan adalah B Tree Memilih Indeks Berikut ini merupakan pembuatan indeks untuk masing masing tabel. Tabel Nama Indeks Field Jabatan JabatanKodeJabatanInd (Primary Inde) kodejabatan JabatanNamaJabatanInd (Secondary Inde) namajabatan Barang BarangKodeBarangInd (Primary Inde) kodebarang BarangNamaBarangInd (Secondary Inde) namabarang Kota KotaKodeKotaInd (Primary Inde) kodekota KotaNamaKotaInd (Secondary Inde) namakota Kecamatan KecamatanKodeKecInd (Primary Inde) kodekec KecamatanNamaKecInd (Secondary Inde) namakec Pos PosKodePosInd (Primary Inde) kodepos Kelurahan KelurahanKodeKelInd (Primary Inde) kodekel KelurahanNamaKelInd (Secondary Inde) namakel Pegawai PegawaiKodePegawaiInd (Primary Inde) kodepegawai PegawaiNamaPegawaiInd (Secondary Inde) namapegawai Pelanggan PelangganKodePelangganInd (Primary kodepelanggan Inde) PelangganNamaPelangganInd (Secondary namapelanggan Inde) TeleponPlgn TeleponPlgnTeleponInd (Primary Inde) notelepon TeleponKodePelangganInd (Secondary kodepelanggan Inde) FaPlgn FaPlgnFaInd (Primary Inde) nofa FaPlgnKodePelangganInd (Secondary kodepelanggan Inde) Kendaraan KendaraanPolisiInd (Primary Inde) nopolisi BP BPKodeBPInd (Primary Inde) kodebp BPTanggalInd (Secondary Inde) tgl BPKodePelangganInd (Secondary Inde) kodepelanggan BPKodePegawaiInd (Secondary Inde) kodepegawai
111 145 Tabel Nama Indeks Field BPDetail BPDetailKodeBPKodeBarangInd (Primary kodebp, Inde) kodebarang BPDetailKodeBPInd (Secondary Inde) kodebp BPDetailKodeBarangInd (Secondary Inde) kodebarang JadwalKirim JadwalKirimHariKirimKodeBPInd (Primary Inde) harikirim, kodebp JadwalKirimHariKirimInd (Secondary Inde) harikirim JadwalKirimKodeBPInd (Secondary Inde) kodebp RKD RKDKodeRKDInd (Primary Inde) koderkd RKDTanggalInd (Secondary Inde) tgl RKDKodeKendaraanInd (Secondary Inde) kodekendaraan RKDKodeDriverInd (Secondary Inde) kodedriver RKDKodeHelper1Ind (Secondary Inde) kodehelper1 RKDKodeHelper2Ind (Secondary Inde) kodehelper2 RKDKodePegawaiInd (Secondary Inde) kodepegawai PO POKodePOInd (Primary Inde) kodepo POTanggalInd (Secondary Inde) tgl POKodePegawaiInd (Secondary Inde) kodepegawai PODetail PODetailKodePOKodeBarangInd (Primary kodepo, Inde) kodebarang PODetailKodePOInd (Secondary Inde) kodepo PODetailKodeBarangInd (Secondary Inde) kodebarang Penagihan PenagihanKodePenagihanInd (Primary kodepenagihan Inde) PenagihanTglPenagihanInd (Secondary tglpenagihan Inde) PenagihanTglJatuhTempoInd (Secondary tgljatuhtempo Inde) PenagihanTglPembayaranInd (Secondary tglpembayaran Inde) PenagihanKodeKolektorInd (Secondary kodekolektor Inde) PenagihanKodePegawaiByrInd (Secondary kodepegawaibyr Inde) PenagihanKodePegawaiTghInd (Secondary kodepegawaitgh Inde) SJ SJKodeSJInd (Primary Inde) kodesj SJTanggalInd (Secondary Inde) tgl SJKodePOInd (Secondary Inde) kodepo SJKodePegawaiInd (Secondary Inde) kodepegawai SJKodePenagihanInd (Secondary Inde) kodepenagihan SJDetail SJDetailKodeSJKodeBarangInd (Primary kodesj, Inde) kodebarang SJDetailKodeSJInd (Secondary Inde) kodesj
112 146 Tabel Nama Indeks Field SJDetailKodeBarangInd (Secondary Inde) kodebarang BPBJ BPBJKodeBPBJInd (Primary Inde) kodebpbj BPBJTanggalInd (Secondary Inde) tgl BPBJKodeRKDInd (Secondary Inde) koderkd BPBJKodePegawaiInd (Secondary Inde) kodepegawai BPBJDetail BPBJDetailKodeBPBJKodeBarangInd (Primary Inde) kodebpbj, kodebarang BPBJDetailKodeBPBJInd (Secondary Inde) kodebpbj BPBJDetailKodeBarangInd (Secondary kodebarang Inde) BSTPJ BSTPJKodeBSTPJInd (Primary Inde) kodebstpj BSTPJTanggalInd (Secondary Inde) tgl BSTPJKodePegawaiInd (Secondary Inde) kodepegawai BSTPJDetail BSTPJDetailKodeBSTPJKodeBarangInd (Primary Inde) kodebstpj, kodebarang BSTPJDetailKodeBSTPJInd (Secondary kodebstpj Inde) BSTPJDetailKodeBarangInd (Secondary kodebarang Inde) ReturJual ReturJualKodeReturInd (Primary Inde) koderetur ReturJualTanggalInd (Secondary Inde) tgl ReturJualKodePelangganInd (Secondary kodepelanggan Inde) ReturJualKodePegawaiInd (Secondary Inde) kodepegawai ReturJualDetail ReturJualDetailKodeReturKodeBarangInd (Primary Inde) koderetur, kodebarang ReturJualDetailKodeReturInd (Secondary koderetur Inde) ReturJualDetailKodeBarangInd (Secondary kodebarang Inde) Table 3.31 Indeks yang Digunakan pada Tabel (Primary Inde / Clustered Inde dan Secondary Inde / nclustered Inde)
113 3.5.5 Memperkirakan Kebutuhan Disk Space a) Menghitung Estimasi Pertumbuhan Jumlah Baris Dalam 3 Tahun NAMA TABEL R i Jumlah Baris dalam 3 tahun (Num_Rows) Kota Kecamatan Pos Kelurahan Pelanggan TeleponPlgn FaPlgn Jabatan Pegawai Barang Kendaraan RKD BP BPDetail JadwalKirim Penagihan PO PODetail SJ SJDetail BPBJ
114 NAMA TABEL R i Jumlah Baris dalam 3 tahun (Num_Rows) BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail Tabel 3.32 Estimasi Perhitungan Baris Dalam 3 Tahun Keterangan : R = jumlah baris dalam 1 tahun i = persentase pertumbuhan data dalam 1 tahun Num_Rows = jumlah baris dalam 3 tahun, dihitung dengan rumus: R n = R (i + 1) n 1 untuk tabel transaksi dan R n = R (i + 1) n untuk tabel master n = estimasi untuk berapa tahun ke depan. Pada rumus terdapat n 1 karena transaksi yang terjadi sebelum pembuatan database tidak dimasukkan. 148
115 b) Menghitung Space untuk Menyimpan Data Num_ Rows Num_ Cols Fied_ Data_ Num_ Variable_ Cols Ma_ Var_ Null_ Bitmap Variable_ Data_ Row_ Rows_ Per_ Page Free_ Rows_ Per_ Page NAMA TABEL Kota Kecamatan Pos Kelurahan Pelanggan TeleponPlgn FaPlgn Jabatan Pegawai Barang Kendaraan RKD BP BPDetail JadwalKirim Penagihan PO PODetail SJ SJDetail BPBJ Num_ Pages Table_ 149
116 Num_ Rows Num_ Cols Fied_ Data_ Num_ Variable_ Cols Ma_ Var_ Null_ Bitmap Variable_ Data_ Row_ Rows_ Per_ Page Free_ Rows_ Per_ Page NAMA TABEL BPBJDetail BSTPJ BSTPJDetail ReturJual ReturJualDetail Total Ukuran Data_Space_Used (bytes) Num_ Pages Table_ Keterangan : Tabel 3.33 Perhitungan Space untuk Menyimpan Data Num_Rows = banyaknya baris Num_Cols = banyaknya kolom Fied_Data_ = total ukuran(bytes) kolom yang panjangnya tetap Num_Variable_Cols = banyaknya kolom yang panjangnya tidak tetap Ma_Var_ = total ukuran(bytes) maksimal kolom yang panjangnya tidak tetap Null_Bitmap = Jika terdapat panjang kolom yang tetap pada tabel, sebuah bagian baris, dikenal dengan null bitmap, disiapkan untuk menangani kemungkinan null pada kolom (column nullability). Untuk menghitung ukurannya : Null_Bitmap = 2 + ((Num_Cols + 7) / 8) 150
117 Variable_Data_ = jika terdapat kolom yang panjangnya tidak tetap pada tabel, tentukan berapa banyak tempat penyimpanan kolom dalam baris : Variable_Data_ = 2 + (Num_Variable_Cols 2) + Ma_Var_ Jika tidak terdapat kolom dengan panjang yang tidak tetap, maka Variable_Data_ menjadi 0. Row_ = menghitung ukuran baris Row_ = Fied_Data_ + Variable_Data_ + Null_Bitmap + 4 Nilai akhir yaitu 4 mewakili header baris data. Rows_Per_Page = menghitung jumlah baris per halaman (8096 bytes per halaman): Rows_Per_Page = 8096 / (Row_ + 2) Free_Rows_Per_Page = jika sebuah clustered inde akan dibuat pada tabel, hitung jumlah baris cadangan yang kosong per halaman, tergantung pada penetapan fill factor. Jika tidak ada clustered inde yang akan dibuat, tetapkan fill factor menjadi 100. Free_Rows_Per_Page = 8096 ((100 fill factor) / 100) / (Row_ + 2) Num_Pages = Menghitung banyaknya halaman yang dibutuhkan untuk menyimpan semua baris Num_Pages = Num_Rows / (Rows_Per_Page Free_Rows_Per_Page) 151
118 Data_Space_Used = menghitung jumlah tempat penyimpanan yang dibutuhkan untuk menyimpan data pada tabel (total 8192 bytes per halaman): Data_Space_Used = 8192 Num_Pages c) Menghitung space untuk Menyimpan Clustered Inde Num Ckey Cols Fied Ckey Num Varia ble Ckey Cols Ma Var_ Ckey_ CInde _ Null_ Bitmap Varia ble Ckey Nama Clustered Inde KotaKodeKotaInd CInd e Row CInde Rows Per Page Data_ Space_ Used Num Pages Clevel_ 0 Num Pages Clevel_ 1 Num _Cin de_ Pages Clustered _ Inde_ KecamatanKodeK ecind PosKodePosInd KelurahanKodeK elind PelangganKodePe langganind TeleponPlgnTe leponind FaPlgnFaInd JabatanKodeJabat anind PegawaiKodePeg awaiind
119 Nama Clustered Inde BarangKodeBara ngind KendaraanPoli siind RKDKodeRKDIn d Num Ckey Cols Fied Ckey Num Varia ble Ckey Cols Ma Var_ Ckey_ CInde _ Null_ Bitmap Varia ble Ckey CInd e Row CInde Rows Per Page Data_ Space_ Used Num Pages Clevel_ 0 Num Pages Clevel_ 1 Num _Cin de_ Pages Clustered _ Inde_ BPKodeBPInd BPDetailKodeBP KodeBarangInd JadwalKirimHari KirimKodeBPInd PenagihanKodePe nagihanind POKodePOInd PODetailKodePO KodeBarangInd SJKodeSJInd SJDetailKodeSJK odebarangind BPBJKodeBPBJI nd BPBJDetailKode BPBJKodeBarang Ind BSTPJKodeBSTP JInd
120 Nama Clustered Inde BSTPJDetailKode BSTPJKodeBaran gind ReturJualKodeRet urind ReturJualDetailK odereturkodebar angind Num Ckey Cols Fied Ckey Num Varia ble Ckey Cols Ma Var_ Ckey_ CInde _ Null_ Bitmap Varia ble Ckey CInd e Row CInde Rows Per Page Data_ Space_ Used Num Pages Clevel_ 0 Num Pages Clevel_ 1 Num _Cin de_ Pages Clustered _ Inde_ Total ukuran Clustered_Inde_ (bytes) Keterangan : Num Ckey Cols = banyaknya kolom pada kunci inde Tabel 3.34 Perhitungan Space untuk Menyimpan Clustered Inde Fied Ckey = jumlah bytes pada semua panjang kolom kunci yang tetap Num Variable Ckey Cols = banyaknya kunci yang panjang kolomnya tidak tetap Ma Var_Ckey_ = total ukuran(bytes) maksimal kolom kunci yang panjangnya tidak tetap CInde_Null_Bitmap = Jika terdapat panjang kolom yang tetap pada clustered inde, bagian pada baris inde disiapkan untuk null bitmap. Untuk menghitung ukurannya : 154
121 Cinde_Null_Bitmap = 2 + ((Num_Ckey_Cols + 7) / 8) Variable Ckey = jika terdapat panjang kolom pada inde yang tidak tetap, tentukan berapa banyak tempat penyimpanan yang digunakan untuk menyimpan kolom dalam baris inde : Variable Ckey = 2 + (Num Variable Ckey Cols 2) + Ma Var_Ckey_ Jika tidak ada panjang kolom pada inde yang tidak tetap, maka Variable Ckey menjadi 0. Cinde Row = menghitung ukuran kolom inde Cinde Row = Fied Ckey + Variable Ckey + Cinde_Null_Bitmap Cinde Rows Per Page = menghitung banyaknya baris inde per halaman (8096 bytes bebas per halaman): Cinde Rows Per Page = 8096 / (Cinde Row + 2) Num Page Clevel_0 dan Num Pages Clevel_1 = menghitung banyaknya halaman yang dibutuhkan untuk menyimpan semua baris inde pada tiap level inde. Num Page Clevel_0 = (Data_Space_Used / 8192) / Cinde Rows Per Page Num Pages Clevel_1 = Num Page Clevel_0 / Cinde Rows Per Page Num_Cinde_Pages = jumlah halaman yang digunakan untuk menyimpan setiap level inde Num_Cinde_Pages = Num Page Clevel_0 + Num Pages Clevel_1 155
122 Clustered_Cinde_ =menghitung ukuran dari clustered inde Clustered_Cinde_ = 8192 Num_Cinde_Pages d) Menghitung Space untuk Menyimpan nclustered Inde Tambahan Nama Inde KotaN amako taind Kecam atanna makec Ind Kelura hanna makel Ind Pelang ganna mapel anggan Ind Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
123 Nama Inde Telepo nkode Pelang ganind FaPlg nkode Pelang ganind Jabata nnama Jabata nind Pegaw ainam apega waiind Barang Nama Barang Ind RKDT anggal Ind Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
124 Nama Inde RKDK odeke ndaraa nind RKDK odedri verind RKDK odehel per1in d RKDK odehel per2in d RKDK odepe gawaii nd BPTan ggalin d BPKo depela nggani nd Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
125 Nama Inde BPKo depega waiind BPDet ailkod ebpin d BPDet ailkod ebaran gind Jadwal Kirim HariKi rimind Jadwal Kirim KodeB PInd Penagi hantgl Penagi hanind Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
126 Nama Inde Penagi hantgl JatuhT empoi nd Penagi hantgl Pemba yarani nd Penagi hanko dekole ktorin d Penagi hanko depega waiby rind Penagi hanko depega waitg hind Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
127 Nama Inde POTan ggalin d POKo depega waiind PODet ailkod epoin d PODet ailkod ebaran gind SJTan ggalin d SJKod epoin d SJKod epega waiind Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
128 Nama Inde SJKod epenag ihanin d SJDeta ilkode SJInd SJDeta ilkode Barang Ind BPBJT anggal Ind BPBJ KodeR KDInd BPBJ KodeP egawai Ind BPBJ Detail KodeB PBJIn d Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
129 Nama Inde BPBJ Detail KodeB arangi nd BSTPJ Tangg alind BSTPJ KodeP egawai Ind BSTPJ Detail KodeB STPJI nd BSTPJ Detail KodeB arangi nd ReturJ ualtan ggalin d Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_
130 Nama Inde ReturJ ualko depela nggani nd ReturJ ualko depega waiind ReturJ ualdet ailkod eretur Ind ReturJ ualdet ailkod ebaran gind Num Key Cols Fi ed key Num Vari able key Cols Ma Var _ key_ In de_ Null _ Bit map Vari able key NL_ In de_ Row _ NL_ In de_ Rows_ Per_ Pages Cin de Row In de Row In de Rows Per Page Free In de Row Per Page Num_ Rows Num Pages Level _0 Num Pages Level _1 Num Pages Level _2 Num_ In de_ Pages n ClusTer ed_ Inde_ Total ukuran nclustered_inde_ (bytes) Keterangan : Tabel 3.35 Perhitungan Space untuk Menyimpan Setiap nclustered Inde Tambahan Num Key Cols = banyaknya kolom pada kunci inde 164
131 Fied key = jumlah bytes pada semua panjang kolom kunci yang tetap Num Variable key Cols = banyaknya kunci yang panjang kolomnya tidak tetap Ma Var_key_ = total ukuran(bytes) maksimal kolom kunci yang panjangnya tidak tetap Inde_Null_Bitmap = Jika terdapat panjang kolom yang tetap pada clustered inde, bagian pada baris inde disiapkan untuk null bitmap. Untuk menghitung ukurannya : Cinde_Null_Bitmap = 2 + ((Num_Ckey_Cols + 7) / 8) Variable key = jika terdapat panjang kolom pada inde yang tidak tetap, tentukan berapa banyak tempat penyimpanan yang digunakan untuk menyimpan kolom dalam baris inde : Variable Ckey = 2 + (Num Variable Ckey Cols 2) + Ma Var_Ckey_ Jika tidak ada panjang kolom pada inde yang tidak tetap, maka Variable Ckey menjadi 0. NL_Inde_Row_ = menghitung baris inde nonleaf NL_Inde_Row_ = Fied key + Variable key + Inde_Null_Bitmap NL_Inde_Rows_Per_Pages = menghitung banyaknya baris inde nonleaf per halaman NL_Inde_Rows_Per_Pages = 8096 / (NL_Inde_Row_ + 2) Inde Row = menghitung ukuran kolom inde 165
132 Inde Row = CInde Row + Fied key + Variable key + inde_null_bitmap + 1 Inde Rows Per Page = menghitung jumlah baris inde level leaf per halaman Inde Rows Per Page = 8096 / (Inde Row + 2) Free Inde Rows Per Page = menghitung jumlah baris inde kosong cadangan per halaman berdasarkan pada fill factor yang ditetapkan untuk nonclustered inde Free Inde Rows Per Page = 8096 ((100 fill factor) / 100) / (Inde Row + 2) Num Pages level_0, Num Pages level_1, Num Pages level_2 = menghitung jumlah halaman yang dibutuhkan untuk menyimpan semua baris inde pada tiap level inde Num Pages level_0 = Num_Rows / (Inde Rows Per Page - Free Inde Rows Per Page) Num Pages level_1 = Num Pages level_0 / NL_Inde_Rows_Per_Pages Num Pages level_2 = Num Pages level_1 / NL_Inde_Rows_Per_Pages Num_Inde_Pages = jumlah halaman yang digunakan untuk menyimpan setiap level inde Num_Inde_Pages = Num Page level_0 + Num Pages level_1 + Num Pages level_2 nclustered_inde_ = menghitung ukuran nonclustered inde nclustered_inde_ = 8192 Num_Inde_Pages 166
133 167 e) Menghitung Ukuran Tabel Menghitung ukuran seluruh tabel : Total seluruh tabel (bytes) = Data_Space_Used + Clustered Inde + n Clustered Inde = = Bytes = MegaBytes f) Perhitungan Total Kebutuhan Disk Space untuk Server Berdasarkan perhitungan tersebut, dapat disimpulkan bahwa server membutuhkan kapasitas sekitar : Kriteria DBMS (Microsoft SQL Server 2000) OS (Microsoft Windows XP Home Edition) Ukuran seluruh tabel Total Besar Kapasitas 817 MegaBytes 1,9 GigaBytes 235,34 MegaBytes 2,93 GigaBytes Tabel 3.36 Perhitungan Total Kebutuhan Disk Space untuk Server Merancang User View Berikut ini adalah perancangan user view berdasarkan transaksi yang telah dijabarkan di atas.
134 168 Tampilkan detail dari retur jual CREATE VIEW VReturJual AS SELECT a.kodereturjual AS [Kode Retur], tgl AS [Tanggal], a.kodepelanggan AS [Kode Pelanggan],namaPelanggan AS [Nama Pelanggan], a.kodepegawai AS [Kode Pegawai],namaPegawai AS [Nama Pegawai], kodebarang AS [Kode Barang],qtyRetur AS [QTY Retur] FROM ReturJual a INNER JOIN ReturJualDetail b ON a.kodereturjual = b.kodereturjual INNER JOIN Pegawai c ON a.kodepegawai = c.kodepegawai INNER JOIN Pelanggan d ON a.kodepelanggan = d.kodepelanggan Tampilkan detail dari penagihan CREATE VIEW VPenagihan AS SELECT a.kodepenagihan AS [Kode Penagihan], tglpenagihan AS [Tgl Penagihan], tgljatuhtempo AS [Tgl Jatuh Tempo], jumlah AS [Jumlah Tagihan], disc AS [Discount],ppn AS [PPN], totalpenagihan AS [Total Penagihan], statustagih AS [Status Tagih], kodepegawaitgh AS [Kode Pegawai Tagih], b.namapegawai AS [Nama Pegawai Tagih], f.kodepelanggan AS [Kode Pelanggan], namapelanggan AS [Nama Pelanggan], alamatpenagihan AS [Alamat Tagih]
135 169 FROM Penagihan a INNER JOIN Pegawai b ON a.kodepegawaitgh = b.kodepegawai INNER JOIN SJ c ON a.kodepenagihan = c.kodepenagihan INNER JOIN PO d ON c.kodepo = d.kodepo INNER JOIN BP e ON d.kodebp = e.kodebp INNER JOIN Pelanggan f ON e.kodepelanggan = f.kodepelanggan Tampilkan detail dari pembayaran CREATE VIEW VPembayaran AS SELECT a.kodepenagihan AS [Kode Penagihan], tglpenagihan AS [Tgl Penagihan], tgljatuhtempo AS [Tgl Jatuh Tempo], tglpembayaran AS [Tgl Pembayaran], jumlah AS [Jumlah Tagihan], disc AS [Discount],ppn AS [PPN], totalpenagihan AS [Total Penagihan], statustagih AS [Status Tagih], a.kodepegawaibyr AS [Kode Pegawai Bayar],b.namaPegawai AS [Nama Pegawai Bayar], kodepegawaitgh AS [Kode Pegawai Tagih], c.namapegawai AS [Nama Pegawai Tagih], kodekolektor AS [Kode Kolektor], d.namapegawai AS [Nama Kolektor],h.kodePelanggan AS [Kode Pelanggan], namapelanggan AS [Nama Pelanggan], alamatpenagihan AS [Alamat Tagih] FROM Penagihan a INNER JOIN Pegawai b ON a.kodepegawaibyr = b.kodepegawai INNER JOIN Pegawai C ON a.kodepegawaitgh = c.kodepegawai INNER JOIN Pegawai d ON a.kodekolektor = d.kodepegawai INNER JOIN SJ e ON a.kodepenagihan = e.kodepenagihan INNER JOIN PO f ON f.kodepo = f.kodepo
136 170 INNER JOIN BP g ON f.kodebp = g.kodebp INNER JOIN Pelanggan h ON g.kodepelanggan = h.kodepelanggan Tampilkan kode dan nama pelanggan berdasarkan hari kirim CREATE VIEW VJadwal AS SELECT b.kodepelanggan AS [Kode Pelanggan], namapelanggan AS [Nama Pelanggan], harikirim AS [Hari Kirim], a.kodebp AS [Kode BP] FROM JadwalKirim a INNER JOIN BP b ON a.kodebp = b.kodebp INNER JOIN Pelanggan c ON b.kodepelanggan = c.kodepelanggan Tampilkan detail dari BP CREATE VIEW VBP AS SELECT a.kodebp AS [kodebp], tgl AS [Tanggal], jenispembayaran AS [Jenis Pembayaran], jmlpinjamangalon AS [Jml Pinjaman Galon],hargaPinjamanGalon AS [Harga Pinjaman Galon], statusbp AS [Status BP], a.kodepelanggan AS [Kode Pelanggan], kodepegawai AS [Kode Pegawai], b.kodebarang AS [Kode Barang], namabarang AS [Nama Barang],hargaBarang AS [Harga Barang], jmldefaultkirim AS [Jml Default Kirim] FROM BP a INNER JOIN BPDetail b ON a.kodebp = b.kodebp INNER JOIN Pelanggan c ON a.kodepelanggan = c.kodepelanggan INNER JOIN Barang d ON b.kodebarang = d.kodebarang
137 171 Tampilkan detail dari PO CREATE VIEW VPO AS SELECT a.kodepo AS [Kode PO], tgl AS [Tanggal], kodepegawai [Kode Pegawai], koderkd AS [Kode RKD], kodebp AS [Kode BP], b.kodebarang AS [Kode Barang], namabarang AS [Nama Barang], qtydiminta AS [Qty Diminta] FROM PO a INNER JOIN PODetail b ON a.kodepo = b.kodepo INNER JOIN Barang c ON b.kodebarang = c.kodebarang Tampilkan detail dari SJ CREATE VIEW VSJ AS SELECT a.kodesj AS [Kode SJ], tgl AS [Tanggal], totaldijual AS [Total Dijual], kodepegawai AS [Kode Pegawai], kodepo AS [Kode PO], kodepenagihan AS [Kode Penagihan], b.kodebarang AS [Kode Barang], namabarang AS [Nama Barang], qtydijual AS [QTY Dijual], jumlahdijual AS [Jumlah Dijual], Keterangan FROM SJ a INNER JOIN SJDetail b ON a.kodesj = b.kodesj INNER JOIN Barang c ON b.kodebarang = c.kodebarang Tampilkan detail dari BPBJ CREATE VIEW VBPBJ AS
138 172 SELECT a.kodebpbj AS [Kode BPBJ], tgl AS [Tanggal], koderkd AS [Kode RKD], kodepegawai AS [Kode Pegawai], b.kodebarang AS [Kode Barang], namabarang AS [Nama Barang], qtydiberikan AS [Qty Diberikan], qtysisabarang AS [Qty Sisa Barang], Keterangan FROM BPBJ a INNER JOIN BPBJDetail b ON a.kodebpbj = b.kodebpbj INNER JOIN Barang c ON b.kodebarang = c.kodebarang Tampilkan detail dari BSTPJ CREATE VIEW BSTPJ AS SELECT a.kodebstpj AS [Kode BSTPJ], tgl AS [Tanggal], kodepegawai AS [Kode Pegawai], kodebarang AS [Kode Barang], namabarang AS [Nama Barang], qtymasuk AS [Qty Masuk] FROM BSTPJ a INNER JOIN BSTPJDetail b ON a.kodebstpj = b.kodebstpj INNER JOIN Barang c ON b.kodebarang = c.kodebarang Tampilkan detail dari pelanggan CREATE VIEW VPelanggan AS SELECT kodepelanggan AS [Kode Plgn], namapelanggan AS [Nama Plgn], alamatpengiriman AS [Alamat Kirim], b.namakel AS [Kelurahan Kirim], c.namakec AS [Kecamatan Kirim], b.kodepos
139 173 AS [Kode Pos Kirim], d.namakota AS [Kota Kirim], alamatpenagihan AS [Alamat Tagih], e.namakel AS [Kelurahan Tagih], f.namakec AS [Kecamatan Tagih], e.kodepos AS [Kode Pos Tagih], g.namakota AS [Kota tagih], NPWP, statuspelanggan AS [Status Plgn] FROM Pelanggan a INNER JOIN Kelurahan b ON a.kodekelkirim = b.kodekel INNER JOIN Kecamatan c ON b.kodekec = c.kodekec INNER JOIN Kota d ON b.kodekota = d.kodekota INNER JOIN Kelurahan e ON a.kodekeltagih = e.kodekel INNER JOIN Kecamatan f ON e.kodekec = f.kodekec INNER JOIN Kota g ON e.kodekota = g.kodekota Tampilkan nomor telepon pelanggan CREATE VIEW VTelpPlgn AS SELECT a.kodepelanggan AS [Kode Pelanggan], namapelanggan AS [Nama Pelanggan], notelepon AS [mor Telp] FROM TeleponPlgn a INNER JOIN Pelanggan b ON a.kodepelanggan = b.kodepelanggan Tampilkan nomor fa pelanggan CREATE VIEW vfaplgn AS SELECT a.kodepelanggan AS [Kode Pelanggan], namapelanggan AS [Nama Pelanggan], nofa AS [mor Fa]
140 174 FROM FaPlgn a INNER JOIN Pelanggan b ON a.kodepelanggan = b.kodepelanggan Tampilkan BPDetail CREATE VIEW VBPDetail AS SELECT a.kodebarang AS [Kode Barang], namabarang AS [Nama Barang], satuan AS [Satuan], jmldefaultkirim AS [Jml Default Kirim], hargabarang AS [Harga Barang] FROM BPDetail a INNER JOIN Barang b ON a.kodebarang = b.kodebarang Tampilkan PODetail CREATE VIEW VPODetail AS SELECT namabarang AS [Nama Barang], satuan AS [Satuan], qtydiminta AS [Qty Diminta] FROM PODetail a INNER JOIN Barang b ON a.kodebarang = b.kodebarang Tampilkan SJDetail CREATE VIEW VSJDetail SELECT a.kodebarang AS [Kode Barang], namabarang AS [Nama Barang], satuan AS [Satuan], qtydiminta AS [Qty Diminta], hargabarang AS [Harga Barang]
141 175 FROM PODetail a INNER JOIN PO b ON a.kodepo = b.kodepo INNER JOIN BP c ON b.kodebp = c.kodebp INNER JOIN BPDetail d ON c.kodebp = d.kodebp INNER JOIN Barang e ON a.kodebarang = e.kodebarang WHERE a.kodebarang = d.kodebarang Tampilkan SJ yang belum ada penagihan CREATE VIEW VTagihSJ AS SELECT b.kodebp AS [Kode BP], kodesj AS [Kode SJ], totaldijual AS [Total Dijual] FROM SJ a INNER JOIN PO b ON a.kodepo = b.kodepo INNER JOIN BP c ON b.kodebp = c.kodebp WHERE kodepenagihan IS NULL Tampilkan Barang yang ada di RKD CREATE VIEW VBrgRKD AS SELECT b.kodebarang AS [Kode Barang], namabarang AS [Nama Barang], satuan AS [Satuan], SUM(qtyDiminta) AS [QTY Dibutuhkan] FROM PO a INNER JOIN PODetail b ON a.kodepo = b.kodepo INNER JOIN Barang c ON b.kodebarang = c.kodebarang GROUP BY b.kodebarang,namabarang,satuan
142 Merancang Mekanisme Keamanan Berikut ini adalah perancangan mekanisme keamanan yang meliputi nama tabel beserta hak akses yang dimiliki oleh user untuk masing masing tabel. Hak Akses Nama Tabel User I R U D Pelanggan Admin Distribusi Kasir Keuangan Penjualan TeleponPlgn Admin Distribusi Kasir Keuangan Penjualan FaPlgn Admin Distribusi Kasir Keuangan Penjualan Jabatan Admin Distribusi Gudang Kasir Keuangan Penjualan Personalia Pegawai Admin Distribusi Gudang Kasir Keuangan Penjualan Personalia Barang Admin Distribusi Gudang Kasir Keuangan Penjualan
143 177 Hak Akses Nama Tabel User I R U D Kendaraan Admin Distribusi Gudang RKD Admin Distribusi Gudang BP Admin Distribusi Kasir Keuangan Penjualan BPDetail Admin Distribusi Kasir Keuangan Penjualan JadwalKirim Admin Distribusi Penjualan Gudang Penagihan Admin Kasir Keuangan Penjualan PO Admin Distribusi Kasir Keuangan Penjualan PODetail Admin Distribusi Kasir Keuangan Penjualan SJ Admin Distribusi Kasir Keuangan Penjualan SJDetail Admin Distribusi Kasir Keuangan
144 178 Hak Akses Nama Tabel User I R U D Penjualan BPBJ Admin Distribusi Gudang Penjualan BPBJDetail Admin Distribusi Gudang Penjualan BSTPJ Admin Gudang BSTPJDetail Admin Gudang ReturJual Admin Distribusi Gudang Penjualan ReturJualDetail Admin Distribusi Gudang Penjualan Kota Admin Penjualan Distribusi Kecamatan Admin Penjualan Distribusi Pos Admin Penjualan Distribusi Kelurahan Admin Penjualan Distribusi Tabel 3.37 Merancang Mekanisme Keamanan
BAB III ANALISIS DAN PERANCANGAN
BAB III ANALISIS DAN PERANCANGAN 3.1 Analisis 3.1.1 Riwayat Perusahaan PT. Musi Langgeng Mandiri, merupakan salah satu produsen air mineral di Indonesia yang dikenal dengan merek Drinka. Drinka telah lulus
TAMPILAN LAYAR PROTOTIPE APLIKASI
L1 TAMPILAN LAYAR PROTOTIPE APLIKI Layar Utama Tampilan Layar Utama Layar ini akan muncul pada saat prototipe aplikasi dijalankan oleh user, jika user belum melakukan autentifikasi maka hanya menu File
BAB 4 RANCANGAN SISTEM YANG DIUSULKAN
BAB 4 RANCANGAN SISTEM YANG DIUSULKAN 4.1 Tata Laksana yang dirancang Rancangan tata laksana pada PT. Solusi Corporindo Teknologi adalah sebagai berikut: 4.1.1 Tata Laksana Penjualan Pelanggan yang tertarik
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
BAB 3 ANALISIS SISTEM YANG BERJALAN
BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Tentang Perusahaan 3.1.1 Sejarah Perusahaan PD. Cahaya Fajar adalah perusahaan yang bergerak di bidang industri manufaktur. Perusahaan ini menjalankan usahanya dalam
BAB 3 ANALISIS SISTEM YANG BERJALAN
BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1. Latar belakang perusahaan PT. Mitra Eka Persada, merupakan perusahaan dagang yang bergerak di bidang penjualan kertas. Awal mulanya PT. Mitra Eka Persada hanyalah
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
BAB 3 ANALISIS DAN PERANCANGAN. laminating seperti U.V.varnish (memberikan hasil yang mengkilat), blister pack varnish
BAB 3 ANALISIS DAN PERANCANGAN 3.1 Riwayat Perusahaan PT. Kharisma Indah Warna adalah perusahaan yang bergerak di bidang jasa percetakan laminating. Perusahaan ini memproduksi berbagai macam jenis percetakan
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
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
BAB 3 ANALISIS DAN PERANCANGAN SISTEM 3.1 Riwayat Perusahaan PT. Bahagia Idkho Mandiri adalah perusahaan yang bergerak dibidang industri kosmetik dengan merk dagang MBK. Logo MBK berupa kembang sepatu
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
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
BAB 3 GAMBARAN SISTEM YANG BERJALAN. bermotor. Produk-produk yang dihasilkan dipasarkan
BAB 3 GAMBARAN SISTEM YANG BERJALAN 3.1 Sejarah Singkat Perusahaan Perusahaan perorangan Speed Power Racing adalah perusahaan yang bergerak dalam industri pembuatan spare parts (perlengkapan) kendaraan
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
ANALISIS DAN PERANCANGAN SISTEM INFORMASI AKUNTANSI PENJUALAN TUNAI PADA CAHAYA MOTOR
Fendy 22210720 Jurusan Akuntansi ANALISIS DAN PERANCANGAN SISTEM INFORMASI AKUNTANSI PENJUALAN TUNAI PADA CAHAYA MOTOR Fakultas Ekonomi Universitas Gunadarma 2010 Dosen Pembimbing : Prof. Dr. Dharma Tintri
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
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
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
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
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.
BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN
BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN 3.1 Latar Belakang Perusahaan 3.1.1 Sejarah Berdirinya CV. Asoka Sukses Makmur CV. Asoka Sukses Makmur berlokasi di Jl. Raya Puri Kembangan no.1, Jakarta Barat.
BAB III ANALISIS DAN PERANCANGAN SISTEM. System Development Life Cycle (SDLC) yang berfungsi untuk memberi gambaran
11 BAB III ANALISIS DAN PERANCANGAN SISTEM Pembuatan sistem informasi ini pada dasarnya menerapkan metode System Development Life Cycle (SDLC) yang berfungsi untuk memberi gambaran tahapan-tahapan utama
BAB III GAMBARAN UMUM PERUSAHAAN
BAB III GAMBARAN UMUM PERUSAHAAN III.1. Sejarah dan Perkembangan Perusahaan PT TARGET MAKMUR SENTOSA merupakan sebuah perusahaan yang berbentuk perseroan terbatas yang bergerak di bidang produksi dan distribusi
BAB 4 RENCANA IMPLEMENTASI
BAB 4 RENCANA IMPLEMENTASI 4. Implementasi Pada tahap ini dilakukan rencana implementasi yang terkait pada aplikasi basis data yang diusulkan, serta dilakukan evaluasi terhadap beberapa aspek terkait integrity
BAB 3 ANALISIS SISTEM INFORMASI AKUNTANSI PENJUALAN, PIUTANG, DAN PENERIMAAN KAS PT. AROMATECH INTERNATIONAL
BAB 3 ANALISIS SISTEM INFORMASI AKUNTANSI PENJUALAN, PIUTANG, DAN PENERIMAAN KAS PT. AROMATECH INTERNATIONAL 3.1 Analisis Sistem Informasi Akuntansi Penjualan dan Piutang Usaha PT. Aromatech International
BAB IV ANALISA DAN PERANCANGAN SISTEM
BAB IV ANALISA DAN PERANCANGAN SISTEM.1. Analisis Sistem Yang Berjalan Bab ini diterangkan secara singkat mengenai analisa sistem yang ada di toko sahabat teknik, untuk mempermudah dalam mengetahui kelemahan
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
BAB 3 ANALISIS DAN PERANCANGAN. perusahaan-perusahaan yang menjual hardware dan software lalu menjualnya
51 BAB 3 ANALISIS DAN PERANCANGAN 3.1 Riwayat Perusahaan Perusahaan Trijaya Multi Pratama didirikan di Jakarta pada tahun 1996 beralamat di Gunung Sahari XII Blok B no 1 Komplek Gunung Sahari Megah, Jakarta
Pelanggan Admin Manager. Fotokopi ktp Fotokopi kk. Input data penjualan tunai. Cetak faktur tunai. Faktur tunai. Faktur di tandatangani.
50 Prosedur Penjualan Tunai Motor Usulan Pelanggan Admin Manager Fotokopi ktp Fotokopi kk Fotokopi ktp Fotokopi kk DB_PM Input data penjualan tunai Cetak faktur tunai Faktur tunai Faktur tunai Faktur di
DEWAN KOMISARIS DIREKTUR UTAMA MANAJER UMUM MANAJER PERSONALIA MANAJER KEUANGAN MANAJER MANAJER MANAJER PENJUALAN MANAJER PEMASARAN PEMBELIAN
Struktur Organisasi Perusahaan Setiap perusahaan mempunyai struktur organisasi tersendiri. Struktur organisasi merupakan suatu rangkaian hubungan antara individu dengan individu, dan individu dengan kelompok.
BAB 3 SISTEM YANG SEDANG BERJALAN
23 BAB 3 SISTEM YANG SEDANG BERJALAN 3.1 Sejarah Perusahaan PT. Catur Griya Naradipa adalah sebuah perusahaan yang bergerak di bidang perdagangan barang yaitu furniture. Perusahaan ini berdiri pada tanggal
BAB III OBJEK PENELITIAN PT. GROOVY MUSTIKA SEJAHTERA
BAB III OBJEK PENELITIAN PT. GROOVY MUSTIKA SEJAHTERA III.1 Gambaran Umum Perusahaan III.1.1 Riwayat PT.Groovy Mustika Sejahtera PT.Groovy Mustika Sejahtera adalah perusahaan yang bergerak di bidang produksi
BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN
53 BAB 3 ANALISIS SISTEM YANG SEDANG BERJALAN 3.1 Gambaran Umum Perusahaan 3.1.1 Sejarah Perusahaan PT. Nabatindah Sejahtera adalah sebuah perusahaan nasional yang resmi didirikan di Jakarta, sejak tanggal
BAB 3 ANALISIS SISTEM BERJALAN. dalam bidang industri air minum dalam kemasan. PT. PUSAKA KALI
BAB 3 ANALISIS SISTEM BERJALAN 3.1 Riwayat Perusahaan PT. PUSAKA KALI AGUNG adalah perusahaan yang bergerak dalam bidang industri air minum dalam kemasan. PT. PUSAKA KALI AGUNG berdiri sejak tahun 1954
BAB 3 ANALISIS SISTEM BERJALAN
BAB 3 ANALISIS SISTEM BERJALAN 3.1. Informasi Perusahaan 3.1.1. Sejarah Perusahaan PT Mulia Dharma Sejahtera adalah perusahaan yang bergerak di bidang ekspedisi. Perusahaan ini berdiri sejak tahun 2009
BAB 3 ANALISIS SISTEM INFORMASI AKUNTANSI SIKLUS PENDAPATAN PT. TIRTAKENCAN A TATAWARN A YANG BERJALAN
BAB 3 ANALISIS SISTEM INFORMASI AKUNTANSI SIKLUS PENDAPATAN PT. TIRTAKENCAN A TATAWARN A YANG BERJALAN 3.1. Profil Perusahaan PT. Tirtakencana Tatawarna adalah perusahaan yang bergerak dalam distribusi
BAB IV METODE PENELITIAN. ditemukan solusi yang tepat sesuai dengan harapan pihak perusahaan.
BAB IV METODE PENELITIAN 4.1 Identifikasi Masalah Sebelum membuat aplikasi penjualan pada PT. Bahtera Citra Abadi, perlu dilakukan identifikasi masalah yang ada pada perusahaan. Hal ini dilakukan agar
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,
Standard Operating Procedure (SOP) Sistem CV. BS. Jl. Lebak Indah No. 22, Surabaya STANDARD OPERATING PROCEDURE PROSEDUR SISTEM PERSEDIAAN
Lampiran 1. Persediaan Standard Operating Procedure (SOP) Sistem CV. BS Jl. Lebak Indah No. 22, Surabaya STANDARD OPERATING PROCEDURE PROSEDUR SISTEM PERSEDIAAN 1. TUJUAN Standard Operating Procedure sistem
BAB IV PERANCANGAN SISTEM
BAB IV PERANCANGAN SISTEM Perancangan sistem dilakukan untuk memberikan informasi yang lebih baik mengenai sistem informasi penjualan dan pembelian alat bangunan TOKO VENUS JAYA khususnya untuk bagian
guna memenuhi kebutuhan furniture di Indonesia.
BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Riwayat Perusahaan 3.1.1 Sejarah Perusahaan PT. Amerindo Sentosa adalah sebuah perusahaan berkembang yang bergerak di bidang industri springbed, dimana keberadaanya
BAB III OBJEK PENELITIAN
BAB III OBJEK PENELITIAN III.1 Sejarah dan Latar Belakang Perusahaan PT Trans Makmur Abadi berdiri pada tanggal 28 Agustus 2002, Kantornya terletak di TRANS MOBIL Jl.Bandengan Utara dalam no.38d Jakarta
BAB 3 ANALISIS KEBUTUHAN DAN PERANCANGAN BASIS DATA
BAB 3 ANALISIS KEBUTUHAN DAN PERANCANGAN BASIS DATA 3.1 Sejarah Perusahaan PT. Flash Mobile adalah perusahaan yang bergerak di bidang jasa telekomunikasi selular nasional berbasis CDMA dengan menggunakan
BAB III. Objek Penelitian. PT. Rackindo Setara Perkasa merupakan salah satu perusahaan swasta yang
BAB III Objek Penelitian III.1. Sejarah singkat Perusahaan PT. Rackindo Setara Perkasa merupakan salah satu perusahaan swasta yang bergerak di bidang furniture / meubel. Kegiatan utama dari perusahaan
BAB 3 ANALIS IS S IS TEM YANG BERJALAN
BAB 3 ANALIS IS S IS TEM YANG BERJALAN 3.1. Riwayat Perusahaan PT. Sinar Buana adalah sebuah perusahaan dagang yang bergerak dalam bidang distribusi permesinan dan bahan kimia industri. PT. Sinar Buana
BAB III ANALISIS DAN PERANCANGAN SISTEM. Bangun Aplikasi Penjualan dan Pengiriman Spare part komputer pada Bismar
BAB III ANALISIS DAN PERANCANGAN SISTEM Pada bab ini akan dibahas tentang identifikasi permasalahan, analisis permasalahan, solusi permasalahan dan perancangan sistem dalam Rancang Bangun Aplikasi Penjualan
3.2.4 Data Flow Diagram Level DFD Level 1 Penjualan. Gambar 3.8 DFD Level 1 Penjualan
78 3.2.4 Data Flow Diagram Level 1 3.2.4.1 DFD Level 1 Penjualan Gambar 3.8 DFD Level 1 Penjualan 79 3.2.4.2 DFD Level 1 Pembelian Gambar 3.9 DFD Level 1 Pembelian 80 3.2.4.3 DFD Level 1 Pembayaran Penjualan
LAMPIRAN Apa saja jabatan yang ada pada PD Berkat Cahaya Kontraktor? 7. Pelaksana 1 dan 2 (Surveyor) 8. Pelaksana 3 (pengawas lapangan)
LAMPIRAN 1 Hasil wawancara pertama dengan Bapak Hendra Sunarso, Project Manager PD Berkat Cahaya Kontraktor. Tanggal 2 Oktober 2007. 1. Apa saja jabatan yang ada pada PD Berkat Cahaya Kontraktor? 1. Direktur
BAB IV ANALISIS DAN DESAIN SISTEM. perangkat keras, perangkat lunak, dan pengguna. Analisis ini diperlukan sebagai
BAB IV ANALISIS DAN DESAIN SISTEM 4.1 Analisis Sistem Analisis sistem bertujuan untuk mengidentifikasi permasalahanpermasalahan yang ada pada sistem dimana aplikasi dibangun yang meliputi perangkat keras,
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
BAB 3 ANALISIS DAN PERANCANGAN SISTEM 3.1 Gambaran Umum dan Sejarah Perusahaan Pendirian Klinik Kharisma Citra Medika pada awalnya dikarenakan adanya kebutuhan masyarakat akan pelayanan kesehatan yang
BAB 3 ANALISIS SISTEM BERJALAN CV. SUMBER HASIL. Daerah Istimewa Jogjakarta. CV. Sumber Hasil bergerak dalam bidang hasil bumi.
BAB 3 ANALISIS SISTEM BERJALAN CV. SUMBER HASIL 3. Sejarah Singkat Perusahaan CV. Sumber Hasil terletak di Jalan Godean km 5 no 03 Godean, Sleman 55292, Daerah Istimewa Jogjakarta. CV. Sumber Hasil bergerak
BAB III OBJEK DAN METODE PENELITIAN. Indonesia yang didirikan pada tanggal 10 Mei Perusahaan didirikan oleh Endang
BAB III OBJEK DAN METODE PENELITIAN III.1 Sejarah Singkat PT. BERLIAN TECHPRINT INDONESIA merupakan salah satu perusahaan di Indonesia yang didirikan pada tanggal 10 Mei 2007. Perusahaan didirikan oleh
LAMPIRAN. Lampiran 1 Notasi untuk Flowchart Diagram
L.1 LAMPIRAN Lampiran 1 Notasi untuk Flowchart Diagram Gambar L1 Simbol Notasi Flowchart Diagram Gambar L2 Notasi Hubungan untuk Flowchart Diagram L.2 L.3 Lampiran 2 Entity Relationship Diagram dari User
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
BAB III ANALISIS SISTEM YANG BERJALAN
BAB III ANALISIS SISTEM YANG BERJALAN 3.1 Sejarah Singkat Perusahaan PT. MQ Consumer Goods & Retail yang berlokasi di Jalan Gegerkalong Girang No. 14 Bandung adalah suatu perusahaan yang bergerak dalam
BAB IV ANALISIS DAN DESAIN SISTEM
BAB IV ANALISIS DAN DESAIN SISTEM Dalam pengembangan teknologi informasi saat ini, dibutuhkan analisa dan perancangan sistem pengolah data yang baik. Sistem pengolah data tersebut diharapkan mampu meningkatkan
BAB IV PERANCANGAN SISTEM
BAB IV PERANCANGAN SISTEM 4.1 Perancangan Sistem Perancangan sistem adalah suatu gambaran sketsa sistem atau pengaturan dari beberapa elemen yang terpisah ke dalam kesatuan yang utuh dan berfungsi. Perancangan
Lampiran 1. Hasil Wawancara
Lampiran 1. Hasil Wawancara 117 1. Apakah perusahaan ini memiliki struktur oraganisasi dan pembagian tugas yang jelas? Perusahaan tidak mempunyai struktur organisasi dan pembagian tugas secara tertulis
BAB IV ANALISIS DAN PERANCANGAN SISTEM. organisasi, maka harus dilakukan analisis sistem yang sedang berjalan terlebih dahulu
BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1. Analisi Sistem Yang Berjalan Sebelum melakukan perancangan sistem informasi yang baru pada suatu organisasi, maka harus dilakukan analisis sistem yang sedang
BAB 3 ANALISIS PERUSAHAAN. PT. Sarana Prima Kencana merupakan perusahaan yang berdiri di
BAB 3 ANALISIS PERUSAHAAN 3.1 Sejarah Perusahaan PT. Sarana Prima Kencana merupakan perusahaan yang berdiri di Palembang, Sumatera Selatan pada 12 Mei 2004, didirikan oleh Sadioso Harmono, yang berlokasi
BAB IV ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem adalah penguraian dari suatu sistem informasi yang utuh
33 BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1. Analisis Sistem Yang Berjalan Analisis sistem adalah penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk
ANALISIS DAN PERANCANGAN SISTEM BASISDATA PEMBELIAN DAN PERSEDIAAN PADA PT. INDO PRIMA FOODS
UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Genap tahun 2005/2006 ANALISIS DAN PERANCANGAN SISTEM BASISDATA PEMBELIAN DAN PERSEDIAAN PADA PT. INDO PRIMA FOODS
DATA FLOW DIAGRAM STUDI KASUS ANALISA SISTEM BERJALAN
PERTEMUAN 2 DATA FLOW DIAGRAM STUDI KASUS ANALISA SISTEM BERJALAN a. Prosedur Order Penjualan Setiap costumer dapat memesan barang datang langsung atau melalui faximile dengan menyertakan dokumen PO yang
BAB 3 ANALISIS SISTEM INFORMASI AKUNTANSI SIKLUS PENJUALAN, PENAGIHAN PIUTANG, DAN PENERIMAAN KAS YANG SEDANG BERJALAN PT RACKINDO SETARA PERKASA
41 BAB 3 ANALISIS SISTEM INFORMASI AKUNTANSI SIKLUS PENJUALAN, PENAGIHAN PIUTANG, DAN PENERIMAAN KAS YANG SEDANG BERJALAN PT RACKINDO SETARA PERKASA 3.1 Profile Perusahaan PT Rackindo Setara Perkasa merupakan
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
BAB 3 ANALISIS SISTEM BERJALAN. dengan akta bernomor 26 oleh notaris Silvia, SH yang bertempat di Jalan Suryopranoto
BAB 3 ANALISIS SISTEM BERJALAN 3.1 Gambaran Umum Perusahaan PT Cakra Supra Aditia didirikan pada tanggal 11 Juni 1998 oleh Ibu Lily Liu sebagai salah satu pemegang saham utama dan beberapa pemegang saham
BAB 4 PERANCANGAN SISTEM BASIS DATA
BAB 4 PERANCANGAN SISTEM BASIS DATA 4.1 Gambaran Posisi UMAS Gambar 4.1 Gambaran Posisi UMAS (1) Keterangan: : Jika aplikasi tidak memerlukan approval : Jika aplikasi memerlukan approval Jika transaksi
BAB III PROSES PENGUMPULAN DATA. III.1. Sejarah Singkat PT Kurnia Mulia Citra Lestari
BAB III PROSES PENGUMPULAN DATA III.. Sejarah Singkat PT Kurnia Mulia Citra Lestari PT Kurnia Mulia Citra Lestari adalah perusahaan swasta yang didirikan berdasarkan akta notaris no.67 dihadapan Emmy Halim.SH,
. BAB IV ANALISIS HASIL DAN PEMBAHASAN. A. Prosedur dalam Sistem Penjualan Kredit. 1. Prosedur Penjualan Kredit dan Piutang Dagang
43. BAB IV ANALISIS HASIL DAN PEMBAHASAN A. Prosedur dalam Sistem Penjualan Kredit. 1. Prosedur Penjualan Kredit dan Piutang Dagang Jaringan prosedur yang membentuk sistem penjualan kredit pada PT.Triteguh
BAB 4 PEMBAHASAN, IMPLEMENTASI, DAN EVALUASI. Pada metode ini, terdapat tiga fase utama yaitu: data dari informasi yang digunaan oleh perusahaan.
BAB 4 PEMBAHASAN, IMPLEMENTASI, DAN EVALUASI 4.1 Metode Perancangan Basis Data Pada metode ini, terdapat tiga fase utama yaitu: a. Perancangan basis data konseptual: merupakan proses pembuatan basis data
BAB 3 METODOLOGI. 3.1 Metodologi Berikut ini merupakan flowchart kerangka keseluruhan untuk melakukan penelitian.
BAB 3 METODOLOGI 3.1 Metodologi Berikut ini merupakan flowchart kerangka keseluruhan untuk melakukan penelitian. M u lai Studi Pustaka Pengum pulan Data Identifikasi M asalah Analisa Sistem Pengem bangan
Pembuatan Sistem Informasi Akuntansi, Penjualan, Pembelian dan Persediaan Barang Pada Toserba X
Pembuatan Sistem Informasi Akuntansi, Penjualan, Pembelian dan Persediaan Barang Pada Toserba X Fendy Jauwalatta Program Studi Teknik Informatika [email protected] Abstrak - Toserba X merupakan Toserba
BAB IV ANALISIS DAN PERANCANGAN SISTEM. Berikut ini adalah analisis dokumen yang digunakan di bagian penjualan pada
30 BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1 Analisis Sistem Yang Berjalan Berkut ini adalah sistem yang sedang berjalan di bagian penjualan pada PT Kasta Timbul. 4.1.1 Analisis Dokumen Berikut ini adalah
BAB 3 OBJEK DAN METODE PENELITIAN
BAB 3 OBJEK DAN METODE PENELITIAN 3.1 Sejarah perusahaan PD. Hutama Waserda merupakan perusahaan berbadan hukum yang bergerak di bidang retail dan didirikan pada tanggal 8 oktober 1993 oleh Bpk. Wendy
BAB IV ANALISA HASIL DAN PEMBAHASAN
BAB IV ANALISA HASIL DAN PEMBAHASAN A. Sistem Informasi Akuntansi Pembelian Pada PT Arwana Citramulia, Tbk Untuk mengetahui tentang prosedur pembelian pada PT Arwana Citramulia, Tbk, maka penerapan prosedur
BAB 4 PERANCANGAN SISTEM INFORMASI AKUNTANSI PENJUALAN KREDIT DAN PIUTANG PADA PT. LUMAS JAYA INDUSTRY
BAB 4 PERANCANGAN SISTEM INFORMASI AKUNTANSI PENJUALAN KREDIT DAN PIUTANG PADA PT. LUMAS JAYA INDUSTRY 4.1 Dokumen yang Digunakan Untuk sistem yang diusulkan terhadap PT. Lumas Jaya Industry, terdapat
SISTEM INFORMASI PEMBELIAN BARANG PADA PT. KIKIJAYA AIRCONINDO
Konferensi Nasional Ilmu Sosial & Teknologi (KNiST) Maret 2015, pp. 551~558 SISTEM INFORMASI PEMBELIAN BARANG PADA PT. KIKIJAYA AIRCONINDO 551 Sri Muryani AMIK BSI Bekasi e-mail: [email protected] Abstrak
BAB IV ANALISIS DAN DESAIN SISTEM. Berdasarkan hasil survey dan pengamatan yang dilakukan di CV. Mitra
2. Analisis Sistem BAB IV ANALISIS DAN DESAIN SISTEM Berdasarkan hasil survey dan pengamatan yang dilakukan di CV. Mitra Karya Persada, maka didapatkan proses-proses yang terjadi dalam pencatatan data
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
BAB IV ANALISIS DAN PERANCANGAN SISTEM. gerlong futsal yang sedang berjalan. Analisis sistem yang sedang berjalan
BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1. Analisis Sistem yang Berjalan Pada bab ini akan dijelaskan mengenai Analisis Sistem pembokingan di gerlong futsal yang sedang berjalan. Analisis sistem yang
BAB 3 ANALIS IS S IS TEM YANG BERJALAN. produk. Ada dua jenis produk yang didistribusikan, yaitu cat dan aneka furniture.
BAB 3 ANALIS IS S IS TEM YANG BERJALAN 3.1 Latar Belakang Perusahaan PT. Tirtakencana Tatawarna adalah perusahaan yang bergerak dalam distribusi produk. Ada dua jenis produk yang didistribusikan, yaitu
BAB III ANALISIS DAN PERANCANGAN SISTEM. UMKM Fredshoes. Dalam pengumpulan data yang digunakan untuk bahan
BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1. Analisis Sistem Tahap analisis sistem merupakan suatu proses untuk menganalisis dan mengumpulkan data yang ada di perusahaan. Tujuan dari tahap ini adalah agar
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
BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah. CV. Langgeng Jaya merupakan suatu usaha dagang yang bergerak dalam
BAB I PENDAHULUAN 1.1 Latar Belakang Masalah CV. Langgeng Jaya merupakan suatu usaha dagang yang bergerak dalam bidang penjualan minyak goreng kemasan dengan merk Iga Mas. Perusahaan ini memulai usahanya
BAB IV ANALISIS DAN PERANCANGAN SISTEM
52 BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1 Analisis Sistem Yang Berjalan Analisis sistem merupakan tahap yang kritis dan sangat penting di dalam sebuah sistem informasi. Karena kesalahan-kesalahan yang
BAB III OBJEK DAN METODE PENELITIAN. Penulis melakukan penelitian pada Toko Nada Bandung yang beralamat di
BAB III OBJEK DAN METODE PENELITIAN 3.1. Objek Penelitian Penulis melakukan penelitian pada Toko Nada Bandung yang beralamat di Jl. Naripan No.111 Bandung 40112 Toko ini masih menggunakan sosial media
Basisdata, sistem basisdata, perancangan sistem basisdata.
UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Program Studi Ilmu Komputer Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007 ANALISIS DAN PERANCANGAN SISTEM BASISDATA PENJUALAN PADA PD. CAHAYA
BAB IV ANALISIS DAN PERANCANGAN SISTEM. untuk mengetahui lebih jelas bagaimana cara kerja sistem tersebut dan masalah
BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1 Analisis Sistem Yang Berjalan Analisis sistem yang berjalan pada bengkel Mandiri Motor bertujuan untuk mengetahui lebih jelas bagaimana cara kerja sistem tersebut
BAB 3 ANALISIS SISTEM YANG BERJALAN
BAB 3 ANALISIS SISTEM YANG BERJALAN 3.1 Gambaran Umum Perusahaan Awal berdirinya PT.MASJATI GARMENTAMA adalah pada tahun 1989 dan menjadi perusahaan berbadan hukum pada tahun 1992 berdasarkan akte No.634/09.02/PB/V/92.
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)
Ujian Akhir Semester:
Ujian Akhir Semester: KASUS: PT. CIPTA KREASINDO adalah sebuah perusahaan yang bergerak di bidang produksi tas tangan. Berikut ini adalah penjelasan tentang sistem informasi penjualannya. Pada PT. CIPTA
