BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan...

110
74 BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan Basis Data Pada skripsi ini akan digunakan metode top down dalam merancang sistem basis data pada PT Multitech Label Indonesia. Perancangan basis data yang dilakukan pada PT Multitech Label Indonesia dibagi menjadi tiga tahap. Ketiga tahap itu adalah : 1. perancangan basis data konseptual 2. perancangan basis data logikal 3. perancangan basis data fisikal 4.1.1 Perancangan Basis Data Konseptual Perancangan basis data konseptual adalah proses pembuatan model basis data untuk masing-masing view yang spesifik dengan menggunakan informasi dan data yang diperoleh dari perusahaan, bebas dari segala pertimbangan fisikal. Perancangan basis data konseptual ini terbagi ke dalam beberapa langkah penting sebagai berikut : 1. mengidentifikasi entity 2. mengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang dimiliki masing-masing entity 4. mengidentifikasi candidate key dan primary key masing-masing entity 5. memeriksa redundansi pada model konseptual 6. validasi model konseptual terhadap transaksi user

Transcript of BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan...

Page 1: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

74

BAB 4

PERANCANGAN DAN IMPLEMENTASI

4.1 Perancangan Basis Data

Pada skripsi ini akan digunakan metode top down dalam merancang sistem basis

data pada PT Multitech Label Indonesia. Perancangan basis data yang dilakukan

pada PT Multitech Label Indonesia dibagi menjadi tiga tahap. Ketiga tahap itu

adalah :

1. perancangan basis data konseptual

2. perancangan basis data logikal

3. perancangan basis data fisikal

4.1.1 Perancangan Basis Data Konseptual

Perancangan basis data konseptual adalah proses pembuatan model basis

data untuk masing-masing view yang spesifik dengan menggunakan informasi

dan data yang diperoleh dari perusahaan, bebas dari segala pertimbangan fisikal.

Perancangan basis data konseptual ini terbagi ke dalam beberapa langkah penting

sebagai berikut :

1. mengidentifikasi entity

2. mengidentifikasi relasi antar entity

3. mengidentifikasi atribut yang dimiliki masing-masing entity

4. mengidentifikasi candidate key dan primary key masing-masing entity

5. memeriksa redundansi pada model konseptual

6. validasi model konseptual terhadap transaksi user

Page 2: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

75

4.1.1.1 Identifikasi Entity

Tujuan dari tahapan ini adalah untuk menentukan entities utama

yang dibutuhkan dalam perancangan sistem basis data.

Tabel 4.1 identitfikasi entity

Entity Keterangan

pelanggan entity yang berisi data tentang pelanggan PT Multitech Label

Indonesia

penjualan entity yang berisi data penjualan yang dilakukan PT

Multitech Label Indonesia

OrderDitolak entity yang berisi data order yang ditolak perusahaan beserta

alasan penolakannya.

SPK entity yang berisi data SPK yang diberikan oleh GM ke

bagian produksi

sales entity yang berisi data sales yang menerima penjualan

pembelian entity yang berisi data pembelian bahan baku yang dilakukan

PT Multitech Label Indonesia

barang entity yang berisi data barang yang diproduksi oleh PT.

Multitech Label Indonesia

bank entity yang menyimpan data bank dimana PT. Multitech

Label Indonesia menerima pembayaran penjualan maupun

melakukan pembayaran pembelian.

bahan entity yang berisi data bahan baku yang diperlukan untuk

kebutuhan produksi

produksi entity yang berisi data produksi berjalan pada PT Multitech

Label Indonesia

returPenjualan entity yang berisi data penjualan barang yang dikembalikan

oleh pelanggan

returPembelian entity yang berisi data pembelian barang yang dikembalikan

ke pemasok

Page 3: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

76

pemasok entity yang berisi data pemasok dan harga bahan baku

pengiriman entity yang berisi data pengiriman barang hasil produksi ke

pelanggan

pembayaranJual entity yang berisi data pembayaran atas penjualan

pembayaranBeli entity yang berisi data pembayaran atas pembelian

4.1.1.2 Identifikasi Tipe Relasional

Tahap ini dilakukan untuk menentukan hubungan antar entity

yang telah teridentifikasi. Tahap ini juga terbagi ke dalam beberapa

langkah :

1. membuat ERD (Entity Relationship Diagram)

Pembuatan ERD (Entity Relationship Diagram) akan menunjukkan

hubungan yang terjadi antara entiti. Entiti yang akan ditampilkan

dalam ERD (Entity Relationship Diagram) didapatkan dari

identifikasi entiti yang telah dilakukan pada langkah sebelumnya.

Entiti yang ada adalah entiti pelanggan, penjualan, OrderDitolak, SPK,

sales, pembelian, barang, bank, bahan, produksi, returPenjualan,

returPembelian, pemasok, pengiriman, pembayaranJual,

pembayaranBeli. Selain itu, didalam ERD (Entity Relationship

Diagram) awal ini akan dijelaskan hubungan multiplicity yang terjadi

antara entiti yang saling berhubungan. Berikut ERD (Entity

Relationship Diagram) konseptual awal :

Page 4: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

77

Gambar 4.1 ERD Konseptual Awal

Page 5: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

78

2. menentukan mutiplicity dari model relasional

Tabel 4.2 Multiplicity model relasional

entity multiplicity hubungan entity multiplicity

penjualan 1..1

1..*

1..1

1..1

1..1

melakukan

menjual

melakukan

melakukan

memiliki

pembayaranJual

barang

pengiriman

returPenjualan

produksi

1..*

1..*

1..*

0..*

1..*

pembelian 1..1

1..*

1..1

1..*

melakukan

membeli

melakukan

membeli dari

pembayaranBeli

bahan

returPembelian

pemasok

1..*

1..*

0..*

1..1

produksi 1..*

1..1

1..*

meminta

memiliki

menghasilkan

bahan

SPK

barang

1..*

1..1

1..1

pelanggan 1..1

1..1

memiliki

memesan

OrderDitolak

penjualan

1..*

1..*

pembayaranJual 1..* memiliki bank 1..1

pembayaranBeli 1..* memiliki bank 1..1

pengiriman 1..* mengirim barang 1..*

bahan 1..* memiliki pemasok 1..*

sales 1..1 melakukan penjualan 1..*

returPembelian 0..* mengembalikan bahan 1..*

returPenjualan 0..* mengembalikan barang 1..*

4.1.1.3 Identifikasi dan Asosiasi Atribut Suatu Entity

Dari faktur-faktur dan dokumen-dokumen lainnya yang

didapatkan dari sistem berjalan, dapat diekstrak atribut-atribut untuk

masing-masing entity yang telah didefinisikan di atas.

Page 6: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

79

1. Entity pelanggan

Tabel 4.3 Definisi atribut Entity pelanggan

Atribut Tipe

Data

Uku

ran

Keterangan Nu

ll

Multi

valued

Deri

ved

kdPelanggan

namaPelanggan

alamatPelanggan

telpPelanggan

faxPelanggan

karakter

karakter

karakter

karakter

karakter

8

30

100

15

15

Kode Pelanggan

Nama Pelanggan

Alamat Pelanggan

Telepon Pelanggan

Fax Pelanggan

T

T

T

T

Y

T

T

T

Y

Y

T

T

T

T

T

2. Entity penjualan

Tabel 4.4 Definisi atribut Entity penjualan

Atribut Tipe

Data

Uku

ran

Keterangan Nu

ll

Multi

valued

Deri

ved

kdSO

tglSO

kdPelanggan

namaPelanggan

alamatPelanggan

kdBarang

namaBarang

satuanBarang

hargaSatuan

kuantitas

jumlahHarga

totalPenjualan

keterangan

namaSales

karakter

tanggal

karakter

karakter

karakter

karakter

karakter

karakter

desimal

bilangan

desimal

desimal

teks

karakter

10

8

30

100

8

25

15

10, 2

10, 2

10, 2

30

Kode Sales Order

Tanggal Sales Order

Kode pelanggan

Nama pelanggan

Alamat pelanggan

Kode barang

Nama barang

Satuan yang digunakan

Harga satuan barang

Jumlah yang dipesan

Jumlah harga barang

Harga total penjualan

Keterangan tambahan

Nama sales

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

Y

Y

Y

Y

Y

Y

T

T

T

T

T

T

T

T

T

T

T

T

T

Y

Y

T

T

Page 7: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

80

3. Entity pembelian

Tabel 4.5 Definisi atribut Entity pembelian

Atribut Tipe

Data

Uku

ran

Keterangan Nu

ll

Multi

valued

Deri

ved

kdPO

tglPO

namaPemasok

alamat

kdBahan

namaBahan

satuanBahan

hargaSatuan

kuantitas

jumlahHarga

totPembelian

keterangan

karakter

tanggal

karakter

karakter

karakter

karakter

karakter

desimal

bilangan

desimal

desimal

teks

10

25

100

8

25

10

10,2

10,2

10,2

Kode Purchase Order

Tanggal Purchase Order

Nama Pemasok

Alamat Pemasok

Kode bahan yang dipesan

Nama bahan yang dipesan

Satuan yang digunakan

Harga satuan barang

Jumlah yang dibeli

Jumlah harga per barang

Harga total pembelian

Keterangan tambahan

T

T

T

T

T

T

T

T

T

T

T.

T

T

T

T

T

Y

Y

Y

Y

Y

Y

T

T

T

T

T

T

T

T

T

T

T

Y

Y

T

4. Entity Produksi

Tabel 4.6 Definisi atribut Entity produksi

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdProduksi

tglAwalProduksi

deadline

kdSO

kdBarang

namaBarang

kdBahan

namaBahan

karakter

tanggal

tanggal

karakter

karakter

karakter

karakter

karakter

8

8

8

25

10

30

Kode produksi

Tanggal produksi mulai

Deadline produksi

Kode Sales Order

KodeBarang

Nama Barang

Kode bahan

Nama bahan

T

T

T

T

T

T

T

T

T

T

T

T

T

T

Y

Y

T

T

T

T

T

T

T

T

Page 8: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

81

kuantitasBahan

satuanBahan

caraCetak

finishing

keterangan

bilangan

karakter

karakter

karakter

teks

12

30

40

Jumlah bahan dibutuhkan

Satuan yang digunakan

Cara cetak

Finishing digunakan

Keterangan tambahan

T

T

T

T

T

Y

Y

T

T

T

T

T

T

T

T

5. Entity Bahan

Tabel 4.7 Definisi atribut Entity bahan

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdBahan

namaBahan

satuanBahan

jumlahMin

jumlahStok

keterangan

namaPemasok

tglBeliAkhir

karakter

karakter

karakter

bilangan

bilangan

teks

karakter

tanggal

8

40

20

30

Kode bahan

Nama bahan

Satuan yang digunakan

Jumlah minimal tersedia

Jumlah bahan tersedia

Keterangan tentang bahan

Nama pemasok bahan

Tanggal beli terakhir

T

T

T

T

T

T

T

T

T

T

T

T

T

T

Y

T

T

T

T

T

T

T

T

T

6. Entity returPembelian

Tabel 4.8 Definisi atribut Entity returPembelian

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdReturBeli

kdPO

tglRetur

kdBahan

namaBahan

satuanBahan

karakter

karakter

tanggal

karakter

karakter

karakter

8

10

8

40

10

Kode retur pembelian

Kode Purchase Order

Tanggal retur

Kode bahan digunakan

Nama bahan

Satuan bahan

T

T

T

T

T

T

T

T

T

Y

Y

Y

T

T

T

T

T

T

Page 9: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

82

kuantitas

keterangan

bilangan

teks

Jumlah diretur

Penjelasan alasan retur

T

Y

Y

Y

T

T

7. Entity returPenjualan

Tabel 4.9 Definisi atribut Entity returPenjualan

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdReturJual

kdSO

tglRetur

kdBarang

namaBarang

satuanBarang

kuantitas

keterangan

karakter

karakter

tanggal

karakter

karakter

karakter

bilangan

teks

8

10

8

40

10

Kode retur penjualan

Kode Sales Order

Tanggal retur

Kode barang

Nama barang

Satuan barang

Jumlah diretur

Penjelasan alasan retur

T

T

T

T

T

T

T

Y

T

T

T

Y

Y

Y

Y

Y

T

T

T

T

T

T

T

T

8. Entity SPK

Tabel 4.10 Definisi atribut entity SPK

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdSPK

tglSPK

deadline

kdSO

kdBarang

namaBarang

kdBahan

namaBahan

kuantitas

karakter

tanggal

tanggal

karakter

karakter

karakter

karakter

karakter

bilangan

8

8

8

25

10

30

Kode SPK

Tanggal keluar SPK

Deadline produksi

Kode Sales Order

Kode Barang

Nama Barang

Kode bahan

Nama bahan

Bahan yang dibutuhkan

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

Y

Y

Y

T

T

T

T

T

T

T

T

T

Page 10: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

83

satuanBahan

caraCetak

finishing

keterangan

karakter

karakter

karakter

teks

12

30

40

Satuan yang digunakan

Cara cetak

Finishing

Keterangan tambahan

T

T

T

T

Y

T

T

T

T

T

T

T

9. Entity orderDitolak

Tabel 4.11 Definisi atribut entity orderDitolak

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdOrder

tglOrder

namaPelanggan

telpPelanggan

faxPelanggan

namaBarangTolak

keterangan

alasanPenolakan

karakter

tanggal

karakter

karakter

karakter

karakter

teks

teks

10

30

15

15

40

Kode order

Tanggal order

Nama pelanggan

No telepon pelanggan

No fax pelanggan

Nama barang ditolak

Rincian order

Alasan penolakan

T

T

T

T

Y

T

Y

T

T

T

T

T

T

Y

Y

Y

T

T

T

T

T

T

T

T

10. Entity pengiriman

Tabel 4.12 Definisi atribut entity pengiriman

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdDO

tglPengiriman

kdSO

kdBarang

namaBarang

kuantitasBarang

satuanBarang

karakter

tanggal

karakter

karakter

karakter

bilangan

karakter

10

10

10

30

12

Kode Delivery Order

Tanggal pengiriman

Kode Sales Order

Kode barang

Nama barang

Jumlah barang

Satuan barang

T

T

T

T

T

T

T

T

T

T

Y

Y

Y

Y

T

T

T

T

T

T

T

Page 11: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

84

namaPenerima karakter 30 Nama penerima T T T

11. Entity pemasok

Tabel 4.13 Definisi atribut entity pemasok

Atribut Tipe

Data

Ukur

an

Keterangan Null Multi

valued

Derive

d

kdPemasok

namaPemasok

alamatPemasok

telpPemasok

faxPemasok

karakter

karakter

karakter

karakter

karakter

8

30

100

15

15

Kode Pemasok

Nama Pemasok

Alamat Pemasok

Telepon Pemasok

Fax Pemasok

T

T

T

T

Y

T

T

T

Y

Y

T

T

T

T

T

12. Entity pembayaranBeli

Tabel 4.14 Definisi atribut entity pembayaranBeli

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdBayarBeli

kdPO

tglBayar

caraBayar

namaBank

cabang

noGiro

tglJatuhTempo

jumlahBayar

keterangan

karakter

karakter

tanggal

karakter

karakter

karakter

karakter

tanggal

desimal

teks

10

10

30

20

20

20

10, 2

Kode bayar beli

Kode Purchase Order

Tanggal pembayaran

Cara bayar

Nama bank

Nama cabang bank

No rekening giro

Tanggal jatuh tempo

Total dibayar

Catatan tambahan

T

T

T

Y

T

T

Y

Y

T

Y

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

Page 12: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

85

13. Entity pembayaranJual

Tabel 4.15 Definisi atribut entity pembayaranJual

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdBayarJual

kdSO

tglBayar

caraBayar

namaBank

cabang

noGiro

tglJatuhTempo

jumlahBayar

keterangan

karakter

karakter

tanggal

karakter

karakter

karakter

karakter

tanggal

desimal

teks

10

10

30

20

20

10

10, 2

Kode bayar jual

Kode Sales Order

Tanggal pembayaran

Cara bayar

Nama bank

Nama cabang bank

No rekening giro

Tanggal jatuh tempo

Total dibayar

Catatan tambahan

T

T

T

Y

T

T

T

T

T

Y

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

T

14. Entity bank

Tabel 4.16 Definisi atribut entity Bank

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdBank

namaBank

namaCabang

keterangan

karakter

karakter

karakter

teks

3

40

30

Kode bank

Nama bank

Nama cabang bank

Keterangan

T

T

T

T

T

T

T

T

T

T

T

T

Page 13: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

86

15. Entity Barang

Tabel 4.17 Definisi atribut entity Barang

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdBarang

namaBarang

satuanBarang

keterangan

karakter

karakter

karakter

teks

8

40

20

Kode barang

Nama barang

Satuan yang digunakan

Keterangan

T

T

T

T

T

T

T

T

T

T

T

T

16. Entity Sales

Tabel 4.18 Definisi atribut entity sales

Atribut Tipe

Data

Ukur

an

Keterangan Nu

ll

Multi

valued

Deri

ved

kdSales

namaSales

alamatSales

telpSales

karakter

karakter

karakter

karakter

3

40

100

15

Kode sales

Nama sales

Alamat sales

Nomor telepon sales

T

T

T

T

T

T

T

Y

T

T

T

T

4.1.1.4 Identifikasi Candidate dan Primary Key

Dari entities yang telah teridentifikasi di atas, dapat dijabarkan

candidate key dan primary key masing-masing entity sebagai berikut :

Tabel 4.19 Identifikasi Candidate Key dan Primary Key

Entity Candidate Key Primary Key

penjualan kdSO

kdPelanggan + tglSO

kdSO

Page 14: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

87

pembelian kdPO

kdPemasok + tglPO

kdPO

pengiriman kdDO

kdSO + tglPengiriman

kdDO

returPenjualan kdReturPenjualan

kdSO + tglRetur

kdReturPenjualan

returPembelian kdReturPembelian

kdPO + tglRetur

kdReturPembelian

produksi kdProduksi

kdSO + kdBarang

kdProduksi

bahan kdBahan

namaBahan

kdBahan

pelanggan kdPelanggan

namaPemasok + alamatPemasok

kdPelanggan

pemasok kdPemasok

namaPemasok + alamatPemasok

kdPemasok

pembayaranJual kdSO + kdPelanggan

kdBayarJual

kdBayarJual

pembayaranBeli kdPO + kdPemasok

kdBayarBeli

kdBayarBeli

orderDitolak kdOrder

kdPelanggan + tglOrder

kdOrder

bank kdBank

namaBank+namaCabang

kdBank

sales kdSales kdSales

SPK kdSPK kdSPK

barang kdBarang kdBarang

Page 15: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

88

Gambar 4.2 ERD konseptual Awal dengan Primary Key

Page 16: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

89

4.1.1.5 Memeriksa Redundansi pada Model Konseptual

4.1.1.5.1 Memeriksa Hubungan One-to-One (1:1)

Terdapat 2 entity yang sama pada model ERD konseptual

pada sistem ini, dimana 2 entity ini merepresentasikan objek yang sama,

yaitu entity produksi dan entity SPK.

Gambar 4.3 Mengevaluasi Hubungan 1:1 Entity Produksi dan SPK

4.1.1.5.2 Menghilangkan Hubungan Redundan

Suatu hubungan disebut redundan jika informasi yang sama

dapat diperoleh melalui hubungan lain. Dalam kasus perancangan

sistem basis data ini kami tidak menemukan adanya hubungan redundan.

4.1.1.6 Validasi Model Konseptual dengan User Transaction

Validasi ini dilakukan dengan tujuan untuk memastikan bahwa

rancangan sistem basis data ini dapat memenuhi kebutuhan transaksi yang

diperlukan oleh user sistem.

Data Entry, Update & Deletion pada pelanggan, pemasok, sales,

barang, bahan, bank, penjualan, pembelian, produksi, pengiriman,

pembayaran, retur.

Page 17: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

90

Data Queries pada basis data :

a. Menampilkan data pelanggan yang melakukan pemesanan.

b. Menampilkan rincian data penjualan.

c. Menampilkan rincian data pembelian.

d. Menampilkan rincian data retur penjualan untuk SO tertentu.

e. Menampilkan rincian data retur pembelian untuk PO tertentu.

f. Menampilkan data pemasok untuk bahan tertentu.

g. Menampilkan rincian data bahan.

h. Menampilkan barang yang dikirim dengan Kode SO tertentu.

i. Menampilkan rincian produksi-produksi yang dilakukan untuk

SO tertentu.

j. Menampilkan daftar bahan yang digunakan dalam

memproduksi barang dengan SO tertentu.

k. Menampilkan data order yang pernah ditolak untuk kode

pelanggan tertentu.

l. Menampilkan data sales yang melakukan penjualan dengan

Kode SO tertentu.

m. Menampilkan data pemasok dimana perusahaan pernah

melakukan pembelian dengan kode PO tertentu.

n. Menampilkan daftar bahan yang dibeli pada PO tertentu.

o. Menampilkan rincian pembayaran pembelian dengan PO

tertentu.

p. Menampilkan data bank dimana pembayaran pembelian

dilakukan

Page 18: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

91

q. Menampilkan rincian pembayaran penjualan dengan SO

tertentu.

r. Menampilkan data bank dimana pembayaran penjualan

dilakukan

s. Menampilkan data penjualan dengan DO tertentu

t. Menampilkan rincian bahan yang diretur

u. Menampilkan rincian barang yang diretur

Page 19: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

92

Berdasarkan transaksi yang dispesifikasikan di atas, dapat

digambarkan ERD sistem yang telah dilengkapi dengan transactional

arrows sebagai berikut :

Gambar 4.4 ERD Konseptual Akhir dengan Transaksi User

Page 20: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

93

4.1.2 Perancangan Basis Data Logikal

Setelah perancangan basis data konseptual selesai dilakukan, model data

yang dihasilkan kemudian digunakan sebagai dasar perancangan basis data

logikal. Model data konseptual yang akan digunakan sebagai dasar tahap

perancangan basis data logikal adalah sebagai berikut :

Gambar 4.5 Model Data Konseptual Akhir

Page 21: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

94

Tahap ini mencakup beberapa langkah :

1. Menghilangkan fitur yang tidak sesuai dengan model relasional

2. Validasi Normalisasi

3. Pembuatan model data logikal global

4. Pembuatan model diagram relasional global

4.1.2.1 Menghilangkan fitur yang tidak sesuai dengan model

relasional

4.1.2.1.1 Menghilangkan Tipe Relasi Biner many-to-many (*:*)

Pada model konseptual terdapat hubungan many-to-many

yang tidak kompatibel dengan data relasional, sehingga harus

dihilangkan dengan cara mendekomposisi relasi many-to-many (*:*)

tersebut dan menggantinya dengan dua relasi one-to-many (1:*)

terhadap sebuah entity baru. Tahapannya adalah sebagai berikut :

Gambar 4.6 Dekomposisi Hubungan many-to-many antara Bahan dan Produksi

Page 22: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

95

Antara entity produksi dengan entity bahan terdapat

hubungan many-to-many. Artinya satu kode produksi dapat

mengandung lebih dari satu kode bahan, dan satu kode bahan dapat

digunakan oleh banyak produksi. Hubungan ini dapat didekomposisi

dengan menambahkan entity baru, ProduksiDetail, di antara entity

bahan dan produksi. Produksi detail akan menggunakan kode produksi

dan kode bahan sebagai Primary Key-nya.

Gambar 4.7 Dekomposisi Hubungan many-to-many antara Bahan dan Pemasok

Gambar 4.8 Dekomposisi Hubungan many-to-many antara Bahan dan Pembelian

Page 23: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

96

Gambar 4.9 Dekomposisi Hubungan many-to-many antara Barang dan Penjualan

Gambar 4.10 Dekomposisi Hubungan many-to-many antara Barang dan Pengiriman

Gambar 4.11 Dekomposisi Hubungan many-to-many Barang dan returPenjualan

Page 24: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

97

Gambar 4.12 Dekomposisi Hubungan many-to-many Bahan dan returPembelian

4.1.2.1.2 Menghilangkan Tipe Relasi Rekursif many-to-many (*:*)

Relasi rekursif adalah suatu keadaan dimana sebuah entity

memiliki hubungan dengan dirinya sendiri. Agar tercipta model data

yang kompatibel dengan model data relasional, tipe relasi rekursif

many-to-many harus dihilangkan dengan cara membuat sebuah entity

perantara baru. Pada model data ini tidak ditemukan tipe relasi rekursif

many-to-many.

4.1.2.1.3 Menghilangkan Tipe Relasi Kompleks

Relasi kompleks adalah suatu keadaan dimana terdapat

hubungan antara tiga atau lebih tipe entity. Tidak ditemukan tipe relasi

kompleks pada model data ini.

4.1.2.1.4 Menghilangkan Atribut Multi-valued

Atribut multi-valued adalah atribut yang mengandung lebih

dari satu nilai dalam satu entity. Contohnya adalah pelanggan yang

memiliki atribut telepon. Atribut telepon disebut multi-valued attribute

karena mungkin saja satu pelanggan memiliki lebih dari satu nomor

Page 25: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

98

telepon.Atribut multi-valued ini dapat dihilangkan dengan membuat

satu entity baru yang berisi salinan Primary Key dari entity asal sebagai

Foreign Key. Dalam model data konseptual ini terdapat empat entity

yang mengandung atribut multi-valued. Tahapannya adalah sebagai

berikut :

Gambar 4.13 Atribut multi-valued pada entity orderDitolak

Gambar 4.14 Atribut multi-valued pada entity pelanggan

Gambar 4.15 Atribut multi-valued pada entity pemasok

Page 26: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

99

Gambar 4.16 Atribut multi-valued pada entity sales

4.1.2.2 Validasi Normalisasi

Setelah tercipta entities yang total berjumlah 28 buah, berikut

adalah 12 entities yang masih belum memenuhi bentuk normal (Normal

Form) ke-3. Entities sisanya yang berjumlah 16 entities sudah memenuhi

3NF. Di bawah ini akan dilakukan validasi normalisasi terhadap 12 entities

yang belum memenuhi Third Normal Form tersebut :

penjualanHeader 2NF : penjualanHeader = @kdSO + tglSO + @kdPelanggan + namaPelanggan +

alamatPelanggan + totalPenjualan + keterangan + namaSales

3NF : penjualanHeader = @kdSO + @kdPelanggan + @kdSales + totalPenjualan

+ tglSO + keterangan pelanggan = @kdPelanggan + namaPelanggan + alamatPelanggan sales = @kdSales + namaSales penjualanDetail 2NF : penjualanDetail = @kdSO + @kdBarang + namaBarang + satuanBarang +

hargaSatuan + kuantitas 3NF : penjualanDetail = @kdSO + @kdBarang + hargaSatuan + kuantitas barang = @kdBarang + namaBarang + satuanBarang orderDitolakHeader 2NF : orderDitolakHeader = @kdOrder + tglOrder + @kdPelanggan +

namaPelanggan + telpPelanggan + faxPelanggan 3NF : orderDitolakHeader = @kdOrder + @kdPelanggan + tglOrder

Page 27: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

100

pelanggan = @kdPelanggan + namaPelanggan + telpPelanggan + faxPelanggan pengirimanDetail UNF : pengirimanDetail = kdDO + {kdBarang + namaBarang + satuanBarang +

kuantitasBarang} 1NF, 2NF : pengirimanDetail = @kdDO + @kdBarang + namaBarang + satuanBarang

+ kuantitasBarang 3NF : pengirimanDetail = @kdDO + @kdBarang + kuantitasBarang barang = @kdBarang + namaBarang + satuanBarang produksiHeader 2NF : produksiHeader = @kdProduksi + tglAwalProduksi + deadline + @kdSO +

@kdBarang + namaBarang + caraCetak + finishing + keterangan

3NF : produksiHeader = @kdProduksi + tglAwalProduksi + deadline + @kdSO +

@kdBarang + caraCetak + finishing + keterangan barang = @kdBarang + namaBarang produksiDetail UNF : produksiDetail = kdProduksi + {kdBahan + namaBahan + kuantitasBahan +

satuanBahan} 1NF, 2NF : produksiDetail = @kdProduksi + @kdBahan + namaBahan +

kuantitasBahan + satuanBahan 3NF : produksiDetail = @kdProduksi + @kdBahan + kuantitasBahan bahan = @kdBahan + namaBahan + satuanBahan pembelianHeader 2NF : pembelianHeader = @kdPO + tglPO + @kdPemasok + namaPemasok + alamatPemasok + totalPembelian + keterangan 3NF : pembelianHeader = @kdPO + tglPO + @kdPemasok + totalPembelian + keterangan pemasok = @kdPemasok + namaPemasok + alamatPemasok pembelianDetail 2NF : pembelianDetail = @kdPO + @kdBahan + namaBahan + satuanBahan +

Page 28: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

101

kuantitas + hargaSatuan 3NF : pembelianDetail = @kdPO + @kdBahan + kuantitas + hargaSatuan bahan = @kdBahan + namaBahan + satuanBahan pembayaranJual 1NF : pembayaranJual = @kdBayarJual + @kdSO + tglBayar + caraBayar +

kdBank + namaBank + cabang + noGiro + tglJatuhTempo + jumlahBayar + keterangan

2NF : pembayaranJual = @kdBayarJual + @kdSO + tglBayar + caraBayar +

@kdBank + namaBank + cabang + noGiro + tglJatuhTempo + jumlahBayar + keterangan

3NF : pembayaranJual = @kdBayarJual + @kdSO + tglBayar + caraBayar +

@kdBank + noGiro + tglJatuhTempo + jumlahBayar + keterangan

bank = @kdBank + namaBank + cabang pembayaranBeli 1NF : pembayaranBeli = @kdBayarBeli + @kdPO + tglBayar + caraBayar +

kdBank + namaBank + cabang + noGiro + tglJatuhTempo + jumlahBayar + keterangan

2NF : pembayaranBeli = @kdBayarBeli + @kdPO + tglBayar + caraBayar +

@kdBank + namaBank + cabang + noGiro + tglJatuhTempo + jumlahBayar + keterangan

3NF : pembayaranBeli = @kdBayarBeli + @kdPO + tglBayar + caraBayar +

@kdBank + noGiro + tglJatuhTempo + jumlahBayar + keterangan

bank = @kdBank + namaBank + cabang returPenjualanDetail UNF : returPenjualanDetail = kdReturPenjualan + {kdBarang + namaBarang +

kuantitas + satuanBarang + keterangan} 1NF, 2NF : returPenjualanDetail = @kdReturPenjualan + @kdBarang + namaBarang +

kuantitas + satuanBarang + keterangan 3NF : returPenjualanDetail = @kdReturPenjualan + @kdBarang + kuantitas +

keterangan barang = @kdBarang + namaBarang + satuanBarang

Page 29: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

102

returPembelianDetail UNF : returPembelianDetail = kdReturPembelian + {kdBahan + namaBahan +

kuantitasBahan + satuanBahan} + keterangan 1NF, 2NF : returPembelianDetail = @kdReturPembelian + @kdBahan + namaBahan +

kuantitasBahan + satuanBahan + keterangan 3NF : returPembelianDetail = @kdReturPembelian + @kdBahan +

kuantitasBahan + keterangan bahan = @kdBahan + namaBahan + satuanBahan

4.1.2.3 Pembuatan Model Basis Data Logikal Global

Berikut merupakan tabel model basis data logikal global, dimana pada

sistem terdapat dua user view.

Tabel 4.20 Model Basis Data Logikal Global

orderDitolakHeader (kdOrder, kdPelanggan, tglOrder)

Primary kdOrder

Foreign Key kdPelanggan references pelanggan(kdPelanggan)

orderDitolakDetail (kdOrder, namaBarangTolak, keterangan, alasanPenolakan)

Primary kdOrder, namaBarangTolak

penjualanHeader (kdSO, kdPelanggan, kdSales, tglSO, totalPenjualan, keterangan)

Primary Key kdSO

Foreign Key kdPelanggan references pelanggan(kdPelanggan)

Foreign Key kdSales references sales(kdSales)

penjualanDetail (kdSO, kdBarang, hargaSatuan, kuantitas)

Primary Key kdSO, kdBarang

Foreign Key kdSO references penjualanHeader(kdSO)

Foreign Key kdBarang references barang(kdBarang)

pembelianHeader (kdPO, tglPO, kdPemasok, totalPembelian, keterangan)

Primary Key kdPO

Foreign Key kdPemasok references pemasok(kdPemasok)

Page 30: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

103

pembelianDetail (kdPO, kdBahan, kuantitas, hargaSatuan)

Foreign Key kdPO references pembelianHeader(kdPO)

Foreign Key kdBahan references bahanHeader(kdBahan)

pelanggan (kdpelanggan, namapelanggan, alamatpelanggan)

Primary Key kdPelanggan

telpPelanggan (telpPelanggan, kdPelanggan)

Primary Key telpPelanggan

Foreign Key kdPelanggan references pelanggan(kdPelanggan)

faxPelanggan (faxPelanggan, kdPelanggan)

Primary Key faxPelanggan

Foreign Key kdPelanggan references pelanggan(kdPelanggan)

pemasok (kdPemasok, namaPemasok, alamatPemasok)

Primary Key kdPemasok

telpPemasok (telpPemasok, kdPemasok)

Primary Key telpPemasok

Foreign Key kdPemasok references pemasok(kdPemasok)

faxPemasok (faxPemasok, kdPemasok)

Primary Key faxPemasok

Foreign Key kdPemasok references pemasok(kdPemasok)

produksiHeader (kdProduksi, kdSO, kdBarang, kuantitasBarang, tglAwalProduksi,

deadline, caraCetak, finishing, keterangan)

Primary Key kdProduksi

Foreign Key kdSO references penjualanHeader(kdSO)

Foreign Key kdBarang references barang(kdBarang)

produksiDetail (kdProduksi, kdBahan, kuantitasBahan)

Foreign Key kdProduksi references produksiHeader(kdProduksi)

Foreign Key kdBahan references bahanHeader(kdBahan)

pengirimanHeader (kdDO, kdSO, tglPengiriman, namaPenerima)

Primary Key kdDO

Foreign Key kdSO references penjualanHeader(kdSO)

Page 31: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

104

pengirimanDetail (kdDO, kdBarang, kuantitasBarang)

Foreign Key kdDO references pengirimanHeader(kdDO)

Foreign Key kdBarang references barang(kdBarang)

returPenjualanHeader (kdReturPenjualan, kdSO, tglRetur)

Primary Key kdReturPenjualan

Foreign Key kdSO references penjualanHeader(kdSO)

returPenjualanDetail (kdReturPenjualan, kdBarang, kuantitas, keterangan)

Foreign Key kdReturPenjualan references returPenjualanHeader(kdReturPenjualan)

Foreign Key kdBarang references barang(kdBarang)

returPembelianHeader (kdReturPembelian, kdPO, tglRetur)

Primary Key kdReturPembelian

Foreign Key kdPO references pembelianHeader(kdPO)

returPembelianDetail (kdReturPembelian, kdBahan, kuantitas, keterangan)

Foreign Key kdReturPembelian references returPembelianHeader(kdReturPembelian)

Foreign Key kdBahan references bahanHeader(kdBahan)

pembayaranJual (kdBayarJual, kdSO, tglBayar, caraBayar, jumlahBayar, kdBank,

noGiro, tglJatuhTempo, keterangan)

Primary Key kdBayarJual

Foreign Key kdSO references penjualanHeader(kdSO)

Foreign Key kdBank references bank(kdBank)

pembayaranBeli (kdBayarBeli, kdPO, tglBayar, caraBayar, jumlahBayar, kdBank,

noGiro, tglJatuhTempo, keterangan)

Primary Key kdBayarBeli

Foreign Key kdPO references penjualanHeader(kdPO)

Foreign Key kdBank references bank(kdBank)

bahanHeader (kdBahan, namaBahan, satuanBahan, jumMin, jumStok, tglBeliAkhir,

keterangan)

Primary Key kdBahan

bahanDetail (kdBahan, kdPemasok)

Foreign Key kdBahan references bahanHeader(kdBahan)

Foreign Key kdPemasok references pemasok(kdPemasok)

Page 32: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

105

barang (kdBarang, namaBarang, satuanBarang, keterangan)

Primary Key kdBarang

sales (kdSales, namaSales, alamatSales)

Primary Key kdSales

telpSales (telpSales, kdSales)

Primary Key telpSales

Foreign Key kdSales references sales(kdSales)

bank (kdBank, namaBank, namaCabang)

Primary Key kdBank

Page 33: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

106

4.1.2.4 Model Diagram Relasional Global

Gambar 4.17 Model Diagram Relasional Global

Page 34: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

107

4.1.3 Perancangan Basis Data Fisikal

Perancangan basis data fisik merupakan proses pembuatan

deskripsi dari suatu implementasi basis data pada secondary storage.

Beberapa langkah penting dalam merancang basis data secara fisik

adalah :

1. Perancangan Relasional Basis Data

2. Merancang Constraints

3. Analisis Transaksi

4. Pembuatan Index Setiap Entitas

5. Mengestimasi Kapasitas Penyimpanan yang dibutuhkan

6. Merancang Mekanisme Keamanan

4.1.3.1 Pemilihan DBMS

Berikut ini adalah tabel perbandingan antara DBMS Microsoft

Access, SQL Server 2000 dengan Oracle 9i Standard.

Tabel 4.21 Tabel Perbandingan DBMS

Pembanding Microsoft SQL Server 2000 MySQL v4.1

Tipe DBMS Transactional relational database server Relational database server

Harga ±$2,489.97 (Standard Edition), ±$3,792.97

(50 CAL)

Gratis (lisensi umum), ±$395 (lisensi

komersial)

Kebutuhan hardware

minimum

Intel or compatible, Pentium 166 MHz atau

lebih, 64 MB RAM atau lebih, kapasitas

harddisk minimal 520 MB, resolusi monitor

minimal 800x600, CD- ROM drive, mouse

MyODBC (untuk mendukung driver

ODBC), Connector/J (untuk mendukung

driver JDBC), kapasitas harddisk

minimal 60 MB, 32 MB RAM atau lebih

Reliabilitas Mendukung failover cluster, poin-in-time

recovery, dan kemampuan untuk me-restart

senfiri bila basis data dihentikan

Software yang open-source

Page 35: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

108

Keamanan User authentification dengan pilihan untuk

mengintegrasikan keamanan database dengan

keamanan Windows 2000, ada logging

transaksi

Kelebihan Lebih reliable, mendukung enterprise-class

reliability dan fungsi-fungsi keamanan,

kompatibel dengan 3GL application server,

dapat menjalankan berbagai basis data dalam

satu server. Memegang the top TPC-C

performance and price / performance result,

termasuk mudah di-install, digunakan, dan

dikelola. Transact-SQL lebih powerfull

dibandingkan MySQL dialect. T-SQL :

mendukung General View, Indexed View,

Distributed Partitioned View, AFTER trigger,

INSTEAD OF trigger, T-SQL statement

(Stored Procedure), support foreign key,

support cursor

Gratis, extensive online documentation,

mendukung berbagai OS, kebutuhan

hardware minimum

Kerugian Lebih mahal, membutuhkan minimal OS

Windows 2000 Server

Versi gratis tidak menawarkan support,

tidak bisa mengunci objek di bawah level

tabel, beberapa bagian tidak kompatibel

dengan SQL99, tidak support general

view, indexed view, Distributed

Partitioned View, trigger, T-SQL

statement, cursor

Keterbatasan Terbatas hingga 2 milyar objek pada basis data Terbatas hingga 32 indeks per tabel,

ukuran basis data terbatas hingga ukuran

file maksimal dari OS

Page 36: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

109

Dari tabel di atas, penulis memutuskan untuk menggunakan DBMS SQL

Server 2000 dengan pertimbangan-pertimbangan sebagai berikut :

1. Mempertimbangkan skala perusahaan yang masuk ke kategori

menengah, DBMS SQL Server 2000 sudah sangat memadai untuk

memenuhi kebutuhan perusahaan. Penggunaan SQL Server juga lebih

mudah digunakan dibandingkan MySQL.

2. Walaupun ukuran file mencapai TeraByte, performansi SQL Server

masih tetap baik dalam hal kecepatan pencarian data.

4.1.3.2 Perancangan Relasional Basis Data

Tujuan dari tahap ini adalah untuk mengidentifikasikan

relasional basis data dalam model data logikal global yang digunakan

dalam DBMS dengan menggunakan DBDL (Database Design

Language). DBDL yang digunakan adalah sebagai berikut :

1. Pelanggan

Domain kdPelanggan Fixed length character string, length 8, P####### Domain namaPelanggan Variable length character string,length 30 Domain alamatPelanggan Variable length character string,length 100 pelanggan( kdPelanggan kode pelanggan NOT NULL namaPelanggan nama pelanggan NOT NULL alamatPelanggan alamat pelanggan NOT NULL PRIMARY KEY (kdPelanggan) )

2. telpPelanggan

Domain telpPelanggan Variable length character string, length 15 Domain kdPelanggan Fixed length character string, length 8 telpPelanggan( telpPelanggan telepon pelanggan NOT NULL kdPelanggan kode pelanggan NOT NULL PRIMARY KEY (telpPelanggan)

Page 37: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

110

FOREIGN KEY (kdPelanggan) REFERENCES pelanggan(kdPelanggan) ON DELETE CASCADE, ON UPDATE CASCADE )

3. faxPelanggan

Domain faxPelanggan Variable length character string, length 15 Domain kdPelanggan Fixed length character string, length 8 faxPelanggan( faxPelanggan fax pelanggan NOT NULL kdPelanggan kode pelanggan NOT NULL PRIMARY KEY (faxPelanggan) FOREIGN KEY (kdPelanggan) REFERENCES pelanggan(kdPelanggan) ON DELETE CASCADE, ON UPDATE CASCADE )

4. Pemasok

Domain kdPemasok Fixed length character string, length 8, M####### Domain namaPemasok Variable length character string, length 30 Domain alamatPemasok Variable length character string, length 100 pemasok( kdPemasok kode pemasok NOT NULL namaPemasok nama pemasok NOT NULL alamatPemasok alamat pemasok NOT NULL PRIMARY KEY (kdPemasok) )

5. telpPemasok

Domain telpPemasok Variable length character string, length 15 Domain kdPemasok Fixed length character string, length 8 telpPemasok( telpPemasok telepon pemasok NOT NULL kdPemasok kode pemasok NOT NULL PRIMARY KEY (telpPemasok) FOREIGN KEY (kdPemasok) REFERENCES pemasok(kdPemasok) ON DELETE CASCADE, ON UPDATE CASCADE )

6. faxPemasok

Domain faxPemasok Variable length character string, length 15 Domain kdPemasok Fixed length character string, length 8 faxPemasok( faxPemasok fax pemasok NOT NULL kdPemasok kode pemasok NOT NULL PRIMARY KEY (faxPemasok) FOREIGN KEY (kdPemasok) REFERENCES pemasok(kdPemasok)

Page 38: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

111

ON DELETE CASCADE, ON UPDATE CASCADE )

7. sales

Domain kdSales Fixed length character string, length 3, S## Domain namaSales Variable length character string, length 20 Domain alamatSales Variable length character string, length 100 sales( kdSales kode sales NOT NULL namaSales nama sales NOT NULL alamatSales alamat sales NOT NULL PRIMARY KEY (kdSales) )

8. telpSales

Domain telpSales Variable length character string, length 15 Domain kdSales Fixed length character string, length 3 telpSales( telpSales telepon sales NOT NULL kdSales kode sales NOT NULL PRIMARY KEY (telpSales) FOREIGN KEY (kdSales) REFERENCES sales(kdSales) ON DELETE CASCADE, ON UPDATE CASCADE )

9. barang

Domain kdBarang Fixed length char string, length 10, BR######## Domain namaBarang Variable length character string, length 40 Domain satuanBarang Variable length character string, length 20 Domain keterangan Teks character string barang( kdBarang kode barang NOT NULL namaBarang nama barang NOT NULL satuanBarang satuan barang NOT NULL keterangan keterangan barang NULL PRIMARY KEY (kdBarang) )

10. bahanHeader

Domain kdBahan Fixed length character string, length 8, BH###### Domain namaBahan Variable length character string, length 40 Domain satuanBahan Variable length character string, length 20 Domain jumMin bilangan Domain jumStok bilangan Domain tglBeliAkhir Variable date

Page 39: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

112

Domain keterangan Teks character string bahanHeader( kdBahan kode bahan NOT NULL namaBahan nama bahan NOT NULL satuanBahan satuan bahan NOT NULL jumMin bilangan NOT NULL jumStok bilangan NOT NULL tglBeliAkhir Tanggal beli akhir NOT NULL keterangan keterangan bahan NULL PRIMARY KEY (kdBahan) )

11. bahanDetail

Domain kdBahan Fixed length character string, length 8, BH###### Domain kdPemasok Fixed length character string, length 8, M####### bahanDetail ( kdBahan kode bahan NOT NULL kdPemasok kode pemasok NOT NULL PRIMARY KEY (kdBahan, kdPemasok) FOREIGN KEY (kdBahan) REFERENCES bahanHeader (kdBahan) ON DELETE CASCADE, ON UPDATE CASCADE FOREIGN KEY (kdPemasok) REFERENCES pemasok (kdPemasok) ON DELETE CASCADE, ON UPDATE CASCADE )

12. orderDitolakHeader

Domain kdOrder Fixed length character string, length 10, O######### Domain kdPelanggan Fixed length character string, length 8, P####### Domain tglOrder Variabel Date orderDitolakHeader( kdOrder kode order NOT NULL kdPelanggan kode pelanggan NOT NULL tglOrder tanggal order NOT NULL PRIMARY KEY (kdOrder) FOREIGN KEY (kdPelanggan) REFERENCES pelanggan (kdPelanggan) ON UPDATE CASCADE ON DELETE NO ACTION )

13. orderDitolakDetail

Domain kdOrder Fixed length char string, length 10, O######### Domain namaBarangTolak Variable length character string, length 40 Domain keterangan Variabel Teks character string Domain alasanPenolakan Variabel Teks character string orderDitolakDetail( kdOrder kode order NOT NULL

Page 40: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

113

namaBarangTolak nama barang ditolak NOT NULL keterangan keterangan NULL alasanPenolakan alasanPenolakan NOT NULL PRIMARY KEY (kdOrder, kdBarang) FOREIGN KEY (kdOrder) REFERENCES orderDitolakHeader (kdOrder) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBarang) REFERENCES barang (kdBarang) ON UPDATE CASCADE ON DELETE NO ACTION )

14. penjualanHeader

Domain kdSO Fixed length character string, length 10, J######### Domain kdPelanggan Fixed length character string, length 8, P######## Domain kdSales Fixed length character string, length 3, S## Domain tglSO Variabel Date Domain totalPenjualan Desimal, 10 digits, 2 points precision Domain keterangan Teks character string penjualanHeader( kdSO kode SO NOT NULL kdPelanggan kode pelanggan NOT NULL kdSales kode sales NOT NULL tglSO tanggal SO NOT NULL totalPenjualan total penjualan NOT NULL keterangan keterangan NULL PRIMARY KEY (kdSO) FOREIGN KEY (kdPelanggan) REFERENCES pelanggan (kdPelanggan) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (kdSales) REFERENCES sales (kdSales) ON UPDATE CASCADE ON DELETE NO ACTION )

15. penjualanDetail

Domain kdSO Fixed length character string, length 10, J######### Domain kdBarang Fixed length character string, length 10, BR####### Domain hargaSatuan Desimal, 10 digits, 2 points precision Domain kuantitas Bilangan penjualanDetail( kdSO kode SO NOT NULL kdBarang kode barang NOT NULL hargaSatuan harga satuan NOT NULL kuantitas kuantitas NOT NULL PRIMARY KEY (kdSO, kdBarang) FOREIGN KEY (kdSO) REFERENCES penjualanHeader (kdSO) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBarang) REFERENCES barang (kdBarang) ON UPDATE CASCADE ON DELETE NO ACTION

Page 41: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

114

)

16. pembelianHeader

Domain kdPO Fixed length character string, length 10, L######### Domain kdPemasok Fixed length character string, length 8, M####### Domain tglPO Variabel Date Domain totalPembelian Desimal, 10 digits, 2 points precision Domain keterangan Teks character string pembelianHeader( kdPO kode PO NOT NULL kdPemasok kode pemasok NOT NULL tglPO tanggal PO NOT NULL totalPembelian total pembelian NOT NULL keterangan keterangan NULL PRIMARY KEY (kdPO) FOREIGN KEY (kdPemasok) REFERENCES pemasok (kdPemasok) ON UPDATE CASCADE ON DELETE NO ACTION )

17. pembelianDetail

Domain kdPO Fixed length character string, length 10, L######### Domain kdBahan Fixed length character string, length 8, BH###### Domain hargaSatuan Desimal, 10 digits, 2 points precision Domain kuantitas Bilangan pembelianDetail( kdPO kode PO NOT NULL kdBahan kode bahan NOT NULL hargaSatuan harga satuan NOT NULL kuantitas kuantitas NOT NULL PRIMARY KEY (kdPO, kdBahan) FOREIGN KEY (kdPO) REFERENCES pembelianHeader (kdPO) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBahan) REFERENCES bahanHeader (kdBahan) ON UPDATE CASCADE ON DELETE NO ACTION )

18. produksiHeader

Domain kdProduksi Fixed length char string, length 12, D########### Domain kdSO Fixed length char string, length 10, J######### Domain kdBarang Fixed length char string, length 10, BR####### Domain kuantitasBarang bilangan Domain tglAwalProduksi Variabel Date Domain deadline Variabel Date Domain caraCetak Variable length character string,length 30 Domain finishing Variable length character string,length 40

Page 42: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

115

Domain keterangan Teks character string produksiHeader( kdProduksi kode Produksi NOT NULL kdSO kode SO NOT NULL kdBarang kode barang NOT NULL kuantitasBarang kuantitas barang NOT NULL tglAwalProduksi tanggal mulai produksi NOT NULL deadline deadline NOT NULL caraCetak cara cetak NULL finishing finishing NULL keterangan keterangan NULL PRIMARY KEY (kdProduksi) FOREIGN KEY (kdSO) REFERENCES penjualanHeader (kdSO) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (kdBarang) REFERENCES barang (kdBarang) ON UPDATE CASCADE ON DELETE NO ACTION )

19. produksiDetail

Domain kdProduksi Fixed length char string, length 12, D########### Domain kdBahan Fixed length char string, length 8, BH###### Domain kuantitasBahan Bilangan produksiDetail( kdProduksi kode produksi NOT NULL kdBahan kode bahan NOT NULL kuantitasBahan kuantitas bahan NOT NULL PRIMARY KEY (kdProduksi, kdBahan) FOREIGN KEY (kdProduksi) REFERENCES produksiHeader (kdProduksi) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBahan) REFERENCES bahanHeader (kdBahan) ON UPDATE CASCADE ON DELETE NO ACTION )

20. pengirimanHeader

Domain kdDO Fixed length char string, length 10, DO######## Domain kdSO Fixed length character string, length 10, J######### Domain tglPengiriman Variable date Domain namaPenerima Variable length character string, length 30 pengirimanHeader( kdDO kode DO NOT NULL kdSO kode SO NOT NULL tglPengiriman tanggal pengiriman NOT NULL namaPenerima nama penerima NOT NULL PRIMARY KEY (kdDO) FOREIGN KEY (kdSO) REFERENCES penjualanHeader (kdSO) ON UPDATE CASCADE ON DELETE CASCADE )

Page 43: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

116

21. pengirimanDetail

Domain kdDO Fixed length char string, length 10, DO######## Domain kdBarang Fixed length char string, length 10, BR######## Domain kuantitasBarang bilangan pengirimanDetail( kdDO kode DO NOT NULL kdBarang kode barang NOT NULL kuantitasBarang kuantitas barang NOT NULL PRIMARY KEY (kdDO, kdBarang) FOREIGN KEY (kdDO) REFERENCES pengirimanHeader (kdDO) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBarang) REFERENCES barang (kdBarang) ON UPDATE CASCADE ON DELETE NO ACTION )

22. returPenjualanHeader

Domain kdReturPenjualan Fixed length character string, length 8, RJ###### Domain kdSO Fixed length char string, length 10, J######### Domain tglRetur Variable date returPenjualanHeader( kdReturPenjualan kode retur penjualan NOT NULL kdSO kode SO NOT NULL tglRetur tanggal retur NOT NULL PRIMARY KEY (kdReturPenjualan) FOREIGN KEY (kdSO) REFERENCES penjualanHeader (kdSO) ON UPDATE CASCADE ON DELETE CASCADE )

23. returPenjualanDetail

Domain kdReturPenjualan Fixed length character string, length 8, RJ###### Domain kdBarang Fixed length char string, length 10, BR######## Domain kuantitasBarang bilangan Domain keterangan Teks character string returPenjualanDetail( kdReturPenjualan kode retur penjualan NOT NULL kdBarang kode barang NOT NULL kuantitasBarang kuantitas barang NOT NULL keterangan keterangan NULL PRIMARY KEY (kdReturPenjualan, kdBarang) FOREIGN KEY (kdReturPenjualan) REFERENCES returPenjualanHeader (kdReturPenjualan) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBarang) REFERENCES barang (kdBarang) ON UPDATE CASCADE ON DELETE NO ACTION

Page 44: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

117

) 24. returPembelianHeader

Domain kdReturPembelianFixed length character string, length 8, RB###### Domain kdPO Fixed length char string, length 10, L######### Domain tglRetur Variable date returPembelianHeader( kdReturPembelian kode retur pembelian NOT NULL kdPO kode PO NOT NULL tglRetur tanggal retur NOT NULL PRIMARY KEY (kdReturPembelian) FOREIGN KEY (kdPO) REFERENCES pembelianHeader (kdPO) ON UPDATE CASCADE ON DELETE CASCADE )

25. returPembelianDetail

Domain kdReturPembelian Fixed length character string, length 8, RB###### Domain kdBahan Fixed length character string, length 8, BH###### Domain kuantitasBahan bilangan Domain keterangan Teks character string returPembelianDetail( kdReturPembelian kode retur pembelian NOT NULL kdBahan kode bahan NOT NULL kuantitasBahan kuantitas bahan NOT NULL keterangan keterangan NULL PRIMARY KEY (kdReturPembelian, kdBahan) FOREIGN KEY (kdReturPembelian) REFERENCES returPembelianHeader (kdReturPenjualan) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBahan) REFERENCES bahanHeader (kdBahan) ON UPDATE CASCADE ON DELETE CASCADE )

26. pembayaranJual

Domain kdBayarJual Fixed character string, length 10, BJ######## Domain kdSO Fixed character string, length 10, J######### Domain kdBank Fixed character string, length 3, B## Domain noGiro Variable character string, length 10 Domain tglBayar Variable date DomaincaraBayar Variable character string, length 30 Domain jumlahBayar Desimal, 10 digits, 2 points precision Domain tglJatuhTempo Variable date Domain keterangan Teks character string pembayaranJual ( kdBayarJual kode bayar jual NOT NULL kdSO kode SO NOT NULL

Page 45: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

118

kdBank kode bank NOT NULL noGiro nomor giro NULL tglBayar tanggal bayar NOT NULL caraBayar cara bayar NULL jumlahBayar jumlah bayar NOT NULL tglJatuhTempo tanggal jatuh tempo NULL keterangan keterangan pembayaran NULL PRIMARY KEY (kdBayarJual) FOREIGN KEY (kdSO) REFERENCES penjualanHeader (kdSO) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBank) REFERENCES bank (kdBank) ON UPDATE CASCADE ON DELETE NO ACTION )

27. pembayaranBeli

Domain kdBayarBeli Fixed character string, length 10, BB######## Domain kdPO Fixed character string, length 10, L######### Domain kdBank Fixed character string, length 3, B## Domain noGiro Variable character string, length 10 Domain tglBayar Variable date Domain caraBayar Variable character string, length 30 Domain jumlahBayar Desimal, 10 digits, 2 points precision Domain tglJatuhTempo Variable date Domain keterangan Teks character string pembayaranBeli ( kdBayarBeli kode bayar beli NOT NULL kdSO kode SO NOT NULL kdBank kode bank NOT NULL noGiro nomor giro NULL tglBayar tanggal bayar NOT NULL caraBayar cara bayar NULL jumlahBayar jumlah bayar NOT NULL tglJatuhTempo tanggal jatuh tempo NULL keterangan keterangan pembayaran NULL PRIMARY KEY (kdBayarBeli) FOREIGN KEY (kdPO) REFERENCES pembelianHeader (kdPO) ON UPDATE CASCADE ON DELETE CASCADE FOREIGN KEY (kdBank) REFERENCES bank (kdBank) ON UPDATE CASCADE ON DELETE NO ACTION )

28. bank

Domain kdBank Fixed length character string, length 3, B## Domain namaBank Variable length character string, length 30 Domain namaCabang Variable length character string, length 30 bank(

Page 46: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

119

kdBank kode bank NOT NULL namaBank nama bank NOT NULL namaCabang nama cabang NOT NULL PRIMARY KEY (kdBank) )

4.1.3.3 Merancang Representasi Derived Data

Tujuan dari langkah ini adalah untuk memutuskan bagaimana

menampilkan kembali derived data yang ada pada perancangan pada

DBMS yang digunakan. Dimana atribut yang nilainya dapat dihasilkan

dari memeriksa nilai atribut lainnya disebut atribut derived atau calculate.

Adapun derived attribute yang didefinisikan yaitu :

a. totalPenjualan

totalPenjualan merepresentasikan total harga penjualan yang

dilakukan. Nilai ini diperoleh dari hasil penambahan jumlahHarga

yang ada pada penjualanDetail. jumlahHarga didapat dari

perkalian antara hargaSatuan dan kuantitas yang ada pada

penjualanDetail. totalPenjualan yang telah didapat akan disimpan

dalam program. Hal ini untuk mempermudah pembacaan

selanjutnya, dimana program tidak perlu lagi melakukan proses

perhitungan untuk mendapatkan totalPenjualan. Tujuan

penampilan derived data ini adalah pengurangan waktu yang

dibutuhkan dalam proses menampilkan kembali penjualan yang

telah dilakukan, misalkan ketika sedang membuat laporan

penjualan.

Page 47: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

120

b. totalPembelian

totalPembelian merepresentasikan total harga pembelian yang

dilakukan. Nilai ini diperoleh dari hasil penambahan jumlahHarga

yang ada pada pembelianDetail. jumlahHarga didapat dari

perkalian antara hargaSatuan dan kuantitas yang ada pada

pembelianDetail. totalPenjualan yang telah didapat akan disimpan

dalam program. Hal ini untuk mempermudah pembacaan

selanjutnya, dimana program tidak perlu lagi melakukan proses

perhitungan untuk mendapatkan totalPembelian. Tujuan

penampilan derived data ini adalah pengurangan waktu yang

dibutuhkan dalam proses menampilkan kembali pembelian yang

telah dilakukan, misalkan ketika sedang membuat laporan

pembelian.

4.1.3.4 Merancang Constraint

Tujuan dari langkah ini adalah untuk merancang constraint

perusahaan dalam DBMS untuk masing-masing entitas.

Tabel pelanggan

Alter table pelanggan

Add constraints PK_kdPelanggan primary key(kdPelanggan)

Tabel telpPelanggan

Alter table telpPelanggan

Add constraints PK_telpPelanggan primary key(telpPelanggan),

Page 48: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

121

Constraint FK_kdPelanggan_telpPelanggan foreign key

(kdPelanggan) references pelanggan(kdPelanggan) on update

cascade on delete cascade

Tabel faxPelanggan

Alter table faxPelanggan

Add constraints PK_faxPelanggan primary key(faxPelanggan),

Constraint FK_kdPelanggan_faxPelanggan foreign key

(kdPelanggan) references pelanggan(kdPelanggan) on update

cascade on delete cascade

Tabel pemasok

Alter table Pemasok

Add constraints PK_kdPemasok primary key(kdPemasok)

Tabel telpPemasok

Alter table telpPemasok

Add constraints PK_telpPemasok primary key(telpPemasok),

Constraint FK_kdPemasok_telpPemasok foreign key (kdPemasok)

references pemasok(kdPemasok) on update cascade on delete

cascade

Tabel faxPemasok

Alter table faxPemasok

Add constraints PK_faxPemasok primary key(faxPemasok),

Constraint FK_kdPemasok_faxPemasok foreign key (kdPemasok)

references pemasok(kdPemasok) on update cascade on delete

cascade

Page 49: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

122

Tabel sales

Alter table sales

Add constraints PK_kdSales primary key(kdSales)

Tabel telpSales

Alter table telpSales

Add constraints PK_telpSales primary key(telpSales),

Constraint FK_kdSales_telpSales foreign key (kdSales) references

sales(kdSales) on update cascade on delete cascade

Tabel barang

Alter table barang

Add constraints PK_kdBarang primary key(kdBarang)

Tabel bahanHeader

Alter table bahan

Add constraints PK_kdBahan primary key(kdBahan)

Tabel bahanDetail

Alter table bahanDetail

Add constraints FK_kdBahan_bahanDetail foreign key(kdBahan)

references bahanHeader(kdBahan) on update cascade on delete

cascade,

Constraint FK_kdPemasok_bahanDetail foreign key(kdPemasok)

references pemasok(kdPemasok) on update cascade on delete

cascade

Page 50: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

123

Tabel orderDitolakHeader

Alter table orderDitolakHeader

Add constraints PK_kdOrder_orderDitolakHeader primary

key(kdOrder),

Constraint FK_kdPelanggan_orderDitolakHeader foreign

key(kdPelanggan) references pelanggan(kdPelanggan) on update

cascade on delete no action

Tabel orderDitolakDetail

Alter table orderDitolakDetail

Add constraints FK_kdOrder_orderDitolakDetail foreign

key(kdOrder) references orderDitolakHeader(kdOrder) on update

cascade on delete cascade,

Tabel penjualanHeader

Alter table penjualanHeader

Add constraints PK_kdSO_penjualanHeader primary key(kdSO),

Constraint FK_kdPelanggan_penjualanHeader foreign

key(kdPelanggan) references pelanggan(kdPelanggan) on update

cascade on delete no action

Constraint FK_kdSales_penjualanHeader foreign key(kdSales)

references sales(kdSales) on update cascade on delete no action

Page 51: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

124

Tabel penjualanDetail

Alter table penjualanDetail

Add constraints FK_kdSO_penjualanDetail foreign key(kdSO)

references penjualanHeader(kdSO) on update cascade on delete

cascade,

Constraint FK_kdBarang_penjualanDetail foreign key(kdBarang)

references barang(kdBarang) on update cascade on delete no action

Tabel pembelianHeader

Alter table pembelianHeader

Add constraints PK_kdPO_pembelianHeader primary key(kdPO),

Constraint FK_kdPemasok_pembelianHeader foreign

key(kdPemasok) references pemasok(kdPemasok) on update

cascade on delete no action

Tabel pembelianDetail

Alter table pembelianDetail

Add constraints FK_kdPO_pembelianDetail foreign key(kdPO)

references pembelianHeader(kdPO) on update cascade on delete

cascade,

Constraint FK_kdBahan_pembelianDetail foreign key(kdBahan)

references bahanHeader(kdBahan) on update cascade on delete no

action

Page 52: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

125

Tabel produksiHeader

Alter table produksiHeader

Add constraints PK_kdProduksi_produksiHeader primary

key(kdProduksi),

Constraints FK_kdSO_produksiHeader foreign key(kdSO)

references penjualanHeader(kdSO) on update cascade on delete no

action,

Constraint FK_kdBarang_produksiHeader foreign key(kdBarang)

references barang(kdBarang) on update cascade on delete no action

Tabel produksiDetail

Alter table produksiDetail

Add constraints FK_kdProduksi_produksiDetail foreign

key(kdProduksi) references produksiHeader(kdProduksi) on update

cascade on delete cascade,

Constraint FK_kdBahan_produksiDetail foreign key(kdBahan)

references bahanHeader(kdBahan) on update cascade on delete no

action

Tabel pengirimanHeader

Alter table pengirimanHeader

Add constraints PK_kdDO_pengirimanHeader primary key(kdDO),

Constraint FK_kdSO_pengirimanHeader foreign key(kdSO)

references penjualanHeader (kdSO) on update cascade on delete

cascade

Page 53: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

126

Tabel pengirimanDetail

Alter table pengirimanDetail

Add constraints FK_kdDO_pengirimanDetail foreign key(kdDO)

references pengirimanHeader(kdDO) on update cascade on delete

cascade,

Constraint FK_kdBarang_pengirimanDetail foreign key(kdBarang)

references barang(kdBarang) on update cascade on delete no action

Tabel returPenjualanHeader

Alter table returPenjualanHeader

Add constraints PK_kdReturPenjualan_returPenjualanHeader

primary key(kdReturPenjualan),

Constraint FK_kdSO_returPenjualanHeader foreign key(kdSO)

references penjualanHeader(kdSO) on update cascade on delete

cascade

Tabel returPenjualanDetail

Alter table returPenjualanDetail

Add constraints FK_kdReturPenjualan_returPenjualanDetail foreign

key(kdReturPenjualan) references

returPenjualanHeader(kdReturPenjualan) on update cascade on

delete cascade,

Constraint FK_kdBarang_returPenjualanDetail foreign

key(kdBarang) references barang(kdBarang) on update cascade on

delete no action

Page 54: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

127

Tabel returPembelianHeader

Alter table returPembelianHeader

Add constraints PK_kdReturPenjualan_returPembelianHeader

primary key(kdReturPenjualan),

Constraint FK_kdPO_returPembelianHeader foreign key(kdPO)

references pembelianHeader(kdPO) on update cascade on delete

cascade

Tabel returPembelianDetail

Alter table returPembelianDetail

Add constraints FK_kdReturPembelian_returPembelianDetail

foreign key(kdReturPembelian) references

returPembelianHeader(kdReturPembelian) on update cascade on

delete cascade,

Constraint FK_kdBahan_returPembelianDetail foreign

key(kdBahan) references bahanHeader(kdBahan) on update cascade

on delete no action

Tabel pembayaranJual

Alter table pembayaranJual

Add constraints PK_kdBayarJual_pembayaranJual primary

key(kdBayarJual),

Constraint FK_kdSO_pembayaranJual foreign key(kdSO)

references penjualanHeader(kdSO) on update cascade on delete

cascade

Page 55: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

128

Constraint FK_kdBank_pembayaranJual foreign key(kdBank)

references bank(kdBank) on update cascade on delete no action

Tabel pembayaranBeli

Alter table pembayaranBeli

Add constraints PK_kdBayarBeli_pembayaranBeli primary

key(kdBayarBeli),

Constraint FK_kdPO_pembayaranBeli foreign key(kdPO)

references pembelianHeader(kdPO) on update cascade on delete

cascade

Constraint FK_kdBank_pembayaranBeli foreign key(kdBank)

references bank(kdBank) on update cascade on delete no action

Tabel bank

Alter table bank

Add constraints PK_kdBank_bank primary key(kdBank)

4.1.3.5 Analisis Transaksi

Tujuan daru langkah ini adalah untuk memahami fungsionalitas

dari transaksi yang akan berjalan pada basis data dan untuk menganalisa

transaksi yang penting. Transaksi-transaksi yang terjadi adalah sebagai

berikut :

(A) Mengedit data barang

(B) Mengedit data pelanggan

(C) Mengedit data pemasok

(D) Mengedit data bahan

Page 56: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

129

Tabel 4.22 Tabel Analisis Transaksi

Transaksi (A) (B) (C) (D)

Relation R U D I R U D I R U D I R U D I

bahanHeader X X X X

bahanDetail X X X X

barang X X X X

pelanggan X X X X

telpPelanggan X X X X

faxPelanggan X X X X

pemasok X X X X

telpPemasok X X X X

faxPemasok X X X X

sales

telpSales

orderDitolakHeader

orderDitolakDetail

penjualanHeader

penjualanDetail

pembelianHeader

pembelianDetail

produksiHeader

produksiDetail

pengirimanHeader

pengirimanDetail

returPenjualanHeader

returPenjualanDetail

returPembelianHeader

returPembelianDetail

pembayaranJual

pembayaranBeli

bank

R= Read ; U = Update; D = Delete; I = Insert

Page 57: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

130

(E) Mengedit data sales

(F) Mengedit data bank

(G) Memasukkan dan merubah data penjualan

(H) Memasukkan dan merubah data pembelian Transaksi (E) (F) (G) (H)

Relation R U D I R U D I R U D I R U D I

bahanHeader

bahanDetail

barang

pelanggan

telpPelanggan

faxPelanggan

pemasok

telpPemasok

faxPemasok

sales X X X X

telpSales X X X X

orderDitolakHeader

orderDitolakDetail

penjualanHeader X X

penjualanDetail X X

pembelianHeader X X

pembelianDetail X X

produksiHeader

produksiDetail

pengirimanHeader

pengirimanDetail

returPenjualanHeader

returPenjualanDetail

returPembelianHeader

returPembelianDetail

pembayaranJual

pembayaranBeli

bank X X X X

R= Read ; U = Update; D = Delete; I = Insert

Page 58: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

131

(I) Memasukkan data retur penjualan

(J) Memasukkan data retur pembelian

(K) Memasukkan data order yang ditolak

(L) Memasukkan data pengiriman

Transaksi (I) (J) (K) (L)

Relation R U D I R U D I R U D I R U D I

bahanHeader

bahanDetail

barang

pelanggan

telpPelanggan

faxPelanggan

pemasok

telpPemasok

faxPemasok

sales

telpSales

orderDitolakHeader X

orderDitolakDetail X

penjualanHeader X X

penjualanDetail X X

pembelianHeader X

pembelianDetail X

produksiHeader

produksiDetail

pengirimanHeader X

pengirimanDetail X

returPenjualanHeader X

returPenjualanDetail X

returPembelianHeader X

returPembelianDetail X

pembayaranJual

pembayaranBeli

bank

R= Read ; U = Update; D = Delete; I = Insert

Page 59: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

132

(M) Memasukkan data pembayaran penjualan

(N) Memasukkan data pembayaran pembelian

(O) Memasukkan data produksi

(P) Menampilkan rincian data penjualan.

(Q) Menampilkan rincian data pembelian. Transaksi (M) (N) (O) (P) (Q)

Relation R U D I R U D I R U D I R U D I R U D I

bahanHeader

bahanDetail

barang

pelanggan

telpPelanggan

faxPelanggan

pemasok

telpPemasok

faxPemasok

sales

telpSales

orderDitolakHeader

orderDitolakDetail

penjualanHeader X X X

penjualanDetail X X X

pembelianHeader X X

pembelianDetail X X

produksiHeader X

produksiDetail X

pengirimanHeader

pengirimanDetail

returPenjualanHeader

returPenjualanDetail

returPembelianHeader

returPembelianDetail

pembayaranJual X

pembayaranBeli X

bank

R= Read ; U = Update; D = Delete; I = Insert

Page 60: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

133

(R) Menampilkan rincian data retur penjualan

(S) Menampilkan rincian data retur pembelian

(T) Menampilkan pengiriman

(U) Menampilkan rincian produksi

Transaksi (R) (S) (T) (U)

Relation R U D I R U D I R U D I R U D I

bahanHeader

bahanDetail

barang

pelanggan

telpPelanggan

faxPelanggan

pemasok

telpPemasok

faxPemasok

sales

telpSales

orderDitolakHeader

orderDitolakDetail

penjualanHeader

penjualanDetail

pembelianHeader

pembelianDetail

produksiHeader X

produksiDetail X

pengirimanHeader X

pengirimanDetail X

returPenjualanHeader X

returPenjualanDetail X

returPembelianHeader X

returPembelianDetail X

pembayaranJual

pembayaranBeli

bank

R= Read ; U = Update; D = Delete; I = Insert

Page 61: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

134

(V) Menampilkan data order yang pernah ditolak.

(W) Menampilkan rincian pembayaran pembelian dengan PO tertentu.

(X) Menampilkan rincian pembayaran penjualan dengan SO tertentu.

(Y) Menampilkan rincian retur pembelian

(Z) Menampilkan rincian retur penjualan Transaksi (V) (W) (X) (Y) (Z)

Relation R U D I R U D I R U D I R U D I R U D I

bahanHeader

bahanDetail

barang

pelanggan

telpPelanggan

faxPelanggan

pemasok

telpPemasok

faxPemasok

sales

telpSales

orderDitolakHeader X

orderDitolakDetail X

penjualanHeader

penjualanDetail

pembelianHeader

pembelianDetail

produksiHeader

produksiDetail

pengirimanHeader

pengirimanDetail

returPenjualanHeader X

returPenjualanDetail X

returPembelianHeader X

returPembelianDetail X

pembayaranJual X

pembayaranBeli X

bank

R= Read ; U = Update; D = Delete; I = Insert

Page 62: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

135

4.1.3.6 Pembuatan Indeks Setiap Entity

Tujuan dari langkah ini adalah untuk menentukan apakah

penambahan index akan meningkatkan performa dari sistem. Index yang

digunakan adalah :

1) pelanggan

CREATE UNIQUE INDEX kdPelangganIdx ON

pelanggan(kdPelanggan)

CREATE INDEX namaPelangganIdx ON pelanggan

(namaPelanggan)

2) telpPelanggan

CREATE UNIQUE INDEX telpPelangganIdx ON

telpPelanggan(telpPelanggan)

CREATE INDEX kdTelpPelIdx ON telpPelanggan (kdPelanggan)

3) faxPelanggan

CREATE UNIQUE INDEX faxPelangganIdx ON

faxPelanggan(faxPelanggan)

CREATE INDEX kdFaxPelIdx ON faxPelanggan (kdPelanggan)

4) pemasok

CREATE UNIQUE INDEX kdPemasokIdx ON

pemasok(kdPemasok)

CREATE INDEX namaPemasokIdx ON pemasok (namaPemasok)

5) telpPemasok

CREATE UNIQUE INDEX telpPemasokIdx ON

telpPemasok(telpPemasok)

Page 63: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

136

CREATE INDEX kdTelpPemIdx ON telpPemasok (kdPemasok)

6) faxPemasok

CREATE UNIQUE INDEX faxPemasokIdx ON

faxPemasok(faxPemasok)

CREATE INDEX kdFaxPemIdx ON faxPemasok (kdPemasok)

7) sales

CREATE UNIQUE INDEX kdSalesIdx ON sales(kdSales)

CREATE INDEX namaSalesIdx ON sales(namaSales)

8) telpSales

CREATE UNIQUE INDEX telpSalesIdx ON telpSales(telpSales)

CREATE INDEX kdTelpSalesIdx ON telpSales(kdSales)

9) pembelianHeader

CREATE UNIQUE INDEX kdPOPembHIdx ON

pembelianHeader(kdPO)

CREATE INDEX kdPemPembHIdx ON pembelianHeader

(kdPemasok)

10) pembelianDetail

CREATE UNIQUE INDEX kdPOPembDIdx ON

pembelianDetail(kdPO)

CREATE INDEX kdBhnPembDIdx ON pembelianDetail

(kdBahan)

11) penjualanHeader

CREATE UNIQUE INDEX kdSOPenjHIdx ON

penjualanHeader(kdSO)

Page 64: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

137

CREATE INDEX kdPelPenjHIdx ON penjualanHeader

(kdPelanggan)

CREATE INDEX kdSalesPenjHIdx ON penjualanHeader

(kdSales)

12) penjualanDetail

CREATE UNIQUE INDEX kdSOPenjDIdx ON

penjualanDetail(kdSO)

CREATE INDEX kdBrgPenjDIdx ON penjualanDetail (kdBarang)

13) bank

CREATE UNIQUE INDEX kdBankIdx ON bank(kdBank)

CREATE INDEX namaBankIdx ON bank(namaBank)

CREATE INDEX namaCabangIdx ON bank(namaCabang)

14) barang

CREATE UNIQUE INDEX kdBrgIdx ON barang(kdBarang)

CREATE INDEX namaBarangIdx ON barang(namaBarang)

CREATE INDEX satuanBarangIdx ON barang(satuanBarang)

15) bahanDetail

CREATE UNIQUE INDEX kdBhnDIdx ON bahanDetail

(kdBahan)

CREATE INDEX kdPemBhnDIdx ON bahanDetail (kdPemasok)

16) bahanHeader

CREATE UNIQUE INDEX kdBhnHIdx ON

bahanHeader(kdBahan)

CREATE INDEX namaBahanIdx ON bahanHeader (namaBahan)

Page 65: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

138

CREATE INDEX satuanBahanIdx ON bahanHeader

(satuanBahan)

17) pengirimanHeader

CREATE UNIQUE INDEX kdDOPengHIdx ON

pengirimanHeader(kdDO)

CREATE INDEX kdSOPengHIdx ON pengirimanHeader (kdSO)

18) pengirimanDetail

CREATE UNIQUE INDEX kdDOPengDIdx ON

pengirimanDetail(kdDO)

CREATE INDEX kdBrgPengDIdx ON pengirimanDetail

(kdBarang)

19) orderDitolakHeader

CREATE UNIQUE INDEX kdOrderDHIdx ON

orderDitolakHeader(kdOrder)

CREATE INDEX kdPelOrderDHIdx ON orderDitolakHeader

(kdPelanggan)

20) orderDitolakDetail

CREATE UNIQUE INDEX kdOrderDDIdx ON

orderDitolakDetail(kdOrder)

CREATE INDEX namaBrgTolakDDIdx ON

orderDitolakDetail(namaBarangTolak)

21) produksiHeader

CREATE UNIQUE INDEX kdProdHIdx ON

produksiHeader(kdProduksi)

Page 66: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

139

CREATE INDEX kdSOProdHIdx ON produksiHeader (kdSO)

CREATE INDEX kdBrgProdHIdx ON produksiHeader (kdBarang)

22) produksiDetail

CREATE UNIQUE INDEX kdProdDIdx ON

produksiDetail(kdProduksi)

CREATE INDEX kdBhnProdDIdx ON produksiDetail (kdBahan)

23) returPenjualanHeader

CREATE UNIQUE INDEX kdReturPenjHIdx ON

returPenjualanHeader(kdReturPenjualan)

CREATE INDEX kdSOReturPenjHIdx ON returPenjualanHeader

(kdSO)

24) returPenjualanDetail

CREATE UNIQUE INDEX kdReturPenjDIdx ON

returPenjualanDetail (kdReturPenjualan)

CREATE INDEX kdBrgReturPenjDIdx ON returPenjualanDetail

(kdBarang)

25) returPembelianHeader

CREATE UNIQUE INDEX kdReturPembHIdx ON

returPembelianHeader(kdReturPembelian)

CREATE INDEX kdPOReturPembHIdx ON

returPembelianHeader (kdPO)

26) returPembelianDetail

CREATE UNIQUE INDEX kdReturPembDIdx ON

returPembelianDetail (kdReturPembelian)

Page 67: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

140

CREATE INDEX kdBhnReturPenjDIdx ON returPembelianDetail

(kdBahan)

27) pembayaranJual

CREATE UNIQUE INDEX kdBayarJualIdx ON pembayaranJual

(kdBayarJual)

CREATE INDEX kdSOPembJualIdx ON pembayaranJual (kdSO)

28) pembayaranBeli

CREATE UNIQUE INDEX kdBayarBeliIdx ON pembayaranBeli

(kdBayarBeli)

CREATE INDEX kdPOPembBeliIdx ON pembayaranBeli (kdPO)

4.1.3.7 Mengestimasi Kapasitas Penyimpanan yang Dibutuhkan

Tujuan dari langkah ini adalah untuk mengetahui kapasitas

penyimpanan yang dibutuhkan oleh basis data. Perkiraan kapasitas setiap

tabel adalah sebagai berikut :

Tabel 4.23 Penyimpanan barang

Field Type Ukuran kdBarang namaBarang satuanBarang keterangan

Char Karakter Karakter Teks

10 40 20 200

Kapasitas dari Tabel barang adalah 270 bytes Diperkirakan dalam satu hari terjadi 3 penambahan barang baru Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengan 26 hari kerja) : 3*26*12*270 = 252.720 byte atau 252,72 Kbyte

Page 68: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

141

Tabel 4.24 Penyimpanan bahanHeader

Field Type Ukuran kdBahan namaBahan satuanBahan jumMin jumStok tglBeliAkhir keterangan

Char Karakter Karakter Bilangan Bilangan Date teks

8 40 20 4 4 8 200

Kapasitas dari Tabel bahanHeader adalah 284 bytes Diperkirakan dalam satu hari terjadi 3 penambahan bahan baru Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*284 = 265.824 byte atau 265,824 Kbyte

Tabel 4.25 Penyimpanan bahanDetail

Field Type Ukuran kdBahan kdPemasok

Char Char

8 8

Kapasitas dari Tabel bahanDetail adalah 16 bytes Diperkirakan dalam satu hari terjadi 3 penambahan bahan baru Diperkirakan dalam 1 bahan disediakan oleh 2 pemasok Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*2*26*12*16 = 29.952 byte atau 29,952 Kbyte

Tabel 4.26 Penyimpanan pemasok

Field Type Ukuran kdPemasok namaPemasok alamatPemasok

Char Karakter Karakter

8 30 100

Kapasitas dari Tabel pemasok adalah 138 bytes Diperkirakan dalam satu hari terjadi 3 penambahan pemasok baru Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*138 = 129.168 byte atau 129,168 Kbyte

Page 69: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

142

Tabel 4.27 Penyimpanan telpPemasok

Field Type Ukuran telpPemasok kdPemasok

Karakter Char

15 8

Kapasitas dari Tabel telpPemasok adalah 23 bytes Diperkirakan dalam satu hari terjadi 3 penambahan pemasok baru Diperkirakan setiap kali penambahan ada 3 nomor telepon Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*3*26*12*23 = 64.584 byte atau 64,584 Kbyte

Tabel 4.28 Penyimpanan faxPemasok

Field Type Ukuran telpPemasok kdPemasok

Karakter Char

15 8

Kapasitas dari Tabel faxPemasok adalah 23 bytes Diperkirakan dalam satu hari terjadi 3 penambahan pemasok baru Diperkirakan setiap kali penambahan ada 2 nomor fax Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*2*26*12*23 = 43.056 byte atau 43,056 Kbyte

Tabel 4.29 Penyimpanan pelanggan

Field Type Ukuran kdPelanggan namaPelanggan alamatPelanggan

Char Karakter Karakter

8 30 100

Kapasitas dari Tabel pelanggan adalah 138 bytes Diperkirakan dalam satu hari terjadi 3 penambahan pelanggan baru Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*138 = 129.168 byte atau 129,168 Kbyte

Tabel 4.30 Penyimpanan telpPelanggan

Field Type Ukuran telpPelanggan kdPelanggan

Karakter Char

15 8

Kapasitas dari Tabel telpPelanggan adalah 23 bytes Diperkirakan dalam satu hari terjadi 3 penambahan pelanggan baru Diperkirakan setiap kali penambahan ada 3 nomor telepon Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*3*26*12*23 = 64.584 byte atau 64,584 Kbyte

Page 70: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

143

Tabel 4.31 Penyimpanan faxPelanggan

Field Type Ukuran telpPelanggan kdPelanggan

Karakter Char

15 8

Kapasitas dari Tabel faxPelanggan adalah 23 bytes Diperkirakan dalam satu hari terjadi 3 penambahan pelanggan baru Diperkirakan setiap kali penambahan ada 2 nomor fax Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*2*26*12*23 = 43.056 byte atau 43,056 Kbyte

Tabel 4.32 Penyimpanan sales

Field Type Ukuran kdSales namaSales alamatSales

Char Karakter Karakter

3 20 100

Kapasitas dari Tabel sales adalah 123 bytes Diperkirakan dalam satu tahun terjadi 10 penambahan sales baru Dalam satu tahun pertumbuhan tabel ini adalah : 10*123 = 1.230 byte atau 1,23 Kbyte

Tabel 4.33 Penyimpanan telpSales

Field Type Ukuran telpSales kdSales

Karakter Char

15 3

Kapasitas dari Tabel telpSales adalah 18 bytes Diperkirakan dalam satu tahun terjadi 10 penambahan sales baru Diperkirakan satu sales memiliki 2 nomor telepon Dalam satu tahun pertumbuhan tabel ini adalah : 10*18*2 = 360 byte atau 0.36 Kbyte

Tabel 4.34 Penyimpanan bank

Field Type Ukuran kdBank namaBank namaCabang

Char Karakter Karakter

3 30 30

Kapasitas dari Tabel produksiDetail adalah 63 bytes Diperkirakan dalam satu hari terjadi 3 pemasukan bank Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*63 = 58.968 byte atau 58,968 Kbyte

Page 71: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

144

Tabel 4.35 Penyimpanan produksiHeader

Field Type Ukuran kdProduksi kdSO kdBarang kuantitasBarang tglAwalProduksi deadline caraCetak finishing keterangan

Char Char Char Bilangan Date Date Karakter Karakter Teks

12 10 10 4 8 8 30 40 200

Kapasitas dari Tabel produksiHeader adalah 322 bytes Diperkirakan dalam satu hari terjadi 3 kali produksi Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*322 = 301.392 byte atau 301,392 Kbyte

Tabel 4.36 Penyimpanan produksiDetail

Field Type Ukuran kdProduksi kdBahan kuantitasBahan

Char Char Bilangan

12 8 4

Kapasitas dari Tabel produksiDetail adalah 24 bytes Diperkirakan dalam satu hari terjadi 3 kali produksi Diperkirakan dalam satu kali produksi membutuhkan 3 bahan Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*3*26*12*24 = 67.392 byte atau 67,392 Kbyte

Tabel 4.37 Penyimpanan pembayaranJual

Field Type Ukuran kdBayarJual kdSO kdBank noGiro tglBayar caraBayar jumlahBayar tglJatuhTempo keterangan

Char Char Char Karakter Date Karakter Desimal Date Teks

10 10 3 10 8 30 10 8 200

Kapasitas dari Tabel pembayaranJual adalah 289 bytes Diperkirakan dalam satu hari terjadi 3 kali transaksi pembayaran penjualan Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*289 = 270.504 byte atau 270,504 Kbyte

Page 72: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

145

Tabel 4.38 Penyimpanan pembayaranBeli

Field Type Ukuran kdBayarBeli kdPO kdBank noGiro tglBayar jumlahBayar tglJatuhTempo keterangan

Char Char Char Karakter Date Desimal Date Teks

10 10 3 10 8 10 8 200

Kapasitas dari Tabel pembeyaranBeli adalah 259 bytes Diperkirakan dalam satu hari terjadi 3 kali transaksi pembayaran pembelian Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*259 = 242.424 byte atau 242,424 Kbyte

Tabel 4.39 Penyimpanan returPenjualanHeader

Field Type Ukuran kdReturPenjualan kdSO tglRetur

Char Char Date

8 10 8

Kapasitas dari Tabel returPenjualanHeader adalah 26 bytes Diperkirakan dalam satu hari terjadi 2 kali retur penjualan Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 2*26*12*26 = 16.224 byte atau 16,224 Kbyte

Tabel 4.40 Penyimpanan returPenjualanDetail

Field Type Ukuran kdReturPenjualan kdBarang kuntitasBarang keterangan

Char Char Bilangan Teks

8 10 4 200

Kapasitas dari Tabel returPenjualanDetail adalah 222 bytes Diperkirakan dalam satu hari terjadi 2 kali retur penjualan Diperkirakan dalam satu kali retur penjualan terdapat 2 jenis barang Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 2*2*26*12*222 = 277.056 byte atau 277,056 Kbyte

Page 73: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

146

Tabel 4.41 Penyimpanan returPembelianHeader

Field Type Ukuran kdReturPembelian kdPO tglRetur

Char Char Date

8 10 8

Kapasitas dari Tabel returPembelianHeader adalah 26 bytes Diperkirakan dalam satu hari terjadi 2 kali retur pembelian Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 2*26*12*26 = 16.224 byte atau 16,224 Kbyte

Tabel 4.42 Penyimpanan returPembelianDetail

Field Type Ukuran kdReturPembelian kdBahan kuantitasBahan keterangan

Char Char Bilangan Teks

8 8 4 200

Kapasitas dari Tabel returPembelianDetail adalah 220 bytes Diperkirakan dalam satu hari terjadi 2 kali retur pembelian Diperkirakan dalam satu kali terjadi retur maka terdapat 2 bahan Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 2*2*26*12*220 = 274.560 byte atau 274,56 Kbyte

Tabel 4.43 Penyimpanan penjualanHeader

Field Type Ukuran kdSO kdPelanggan kdSales tglSO totalPenjualan keterangan

Char Char Char Date Desimal Teks

10 8 3 8 10 200

Kapasitas dari Tabel penjualanHeader adalah 239 bytes Diperkirakan dalam satu hari terjadi 5 transaksi penjualan Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 5*26*12*239 = 372.840 byte atau 372,84 Kbyte

Page 74: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

147

Tabel 4.44 Penyimpanan penjualanDetail

Field Type Ukuran kdSO kdBarang hargaSatuan kuantitas

Char Char Desimal Bilangan

10 10 10 4

Kapasitas dari Tabel penjualanDetail adalah 34 bytes Diperkirakan dalam satu hari terjadi 5 transaksi penjualan Diperkirakan dalam satu penjualan terdapat 2 barang Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 5*2*26*12*34 = 106.080 byte atau 106,08 Kbyte

Tabel 4.45 Penyimpanan pembelianHeader

Field Type Ukuran kdPO kdPemasok tglPO totalPembelian keterangan

Char Char Date Desimal Teks

10 8 8 10 200

Kapasitas dari Tabel pembelianHeader adalah 236 bytes Diperkirakan dalam satu hari terjadi 5 transaksi pembelian Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 5*26*12*236 = 368.160 byte atau 368,16 Kbyte

Tabel 4.46 Penyimpanan pembelianDetail

Field Type Ukuran kdPO kdBahan hargaSatuan kuantitas

Char Char Desimal Bilangan

10 8 10 4

Kapasitas dari Tabel pembelianDetail adalah 32 bytes Diperkirakan dalam satu hari terjadi 5 transaksi pembelian Diperkirakan setiap pembelian terdapat 2 bahan Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 5*2*26*12*32 = 99.840 byte atau 99,84 Kbyte

Page 75: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

148

Tabel 4.47 Penyimpanan pengirimanHeader

Field Type Ukuran kdDO kdSO tglPengiriman namaPengirim

Char Char Date Karakter

10 10 8 30

Kapasitas dari Tabel pengirimanHeader adalah 58 bytes Diperkirakan dalam satu hari terjadi 3 kali pengiriman Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*26*12*58 = 54.288 byte atau 54,288 Kbyte

Tabel 4.48 Penyimpanan pengirimanDetail

Field Type Ukuran kdDO kdBarang kuantitasBarang

Char Char Bilangan

10 10 4

Kapasitas dari Tabel pengirimanDetail adalah 24 bytes Diperkirakan dalam satu hari terjadi 3 kali pengiriman Diperkirakan dalam satu kali pengiriman terdapat 2 jenis barang Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 3*2*26*12*24 = 44.928 byte atau 44,928 Kbyte

Tabel 4.49 Penyimpanan orderDitolakHeader

Field Type Ukuran kdOrder kdPelanggan tglOrder

Char Char Date

10 8 8

Kapasitas dari Tabel orderDitolakHeader adalah 26 bytes Diperkirakan dalam satu hari terjadi 10 penolakan order Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 10*26*12*26 = 81.120 byte atau 81,12 Kbyte

Page 76: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

149

Tabel 4.50 Penyimpanan orderDitolakDetail

Field Type Ukuran kdOrder namaBarangTolak keterangan alasanPenolakan

Char Karakter Teks Teks

10 40 200 200

Kapasitas dari Tabel orderDitolakDetail adalah 450 bytes Diperkirakan dalam satu hari terjadi 10 penolakan order Diperkirakan dalam 1 order penolakan terdapat 2 barang Dalam satu tahun pertumbuhan tabel ini adalah (asumsikan 1 bulan terdapat 30 hari dengn 26 hari kerja) : 10*2*26*12*450 = 2.808.000 byte atau 2.808,00 Kbyte

Tabel 4.51 Estimasi Disk Space

Nama Tabel Kapasitas dibutuhkan dalam 1 tahun orderDitolakHeader orderDitolakDetail pengirimanHeader pengirimanDetail pembelianHeader pembelianDetail penjualanHeader penjualanDetail barang bahanHeader bahanDetail pemasok telpPemasok faxPemasok pelanggan telpPelanggan faxPelanggan sales telpSales bank produksiHeader produksiDetail pembayaranJual pembayaranBeli returPenjualanHeader returPenjualanDetail returPembelianHeader returPembelianDetail

81,12 Kbyte 2808,00 Kbyte 54,288 Kbyte 44,928 Kbyte 368,16 Kbyte 99,84 Kbyte 372,84 Kbyte 106,08 Kbyte 252,72 Kbyte 265,824 Kbyte 29,952 Kbyte 129,168 Kbyte 64,584 Kbyte 43,056 Kbyte 129,168 Kbyte 64,584 Kbyte 43,056 Kbyte 1,23 Kbyte 0,36 Kbyte 58,968 Kbyte 301,392 Kbyte 67,392 Kbyte 270,504 Kbyte 242,424 Kbyte 16,224 Kbyte 277,056 Kbyte 16,224 Kbyte 274,56 Kbyte

Total space yang dibutuhkan dalam 1 tahun : 6483.702 Kbyte atau 6,483702 Mbyte

Page 77: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

150

Total space yang dibutuhkan dalam 5 tahun : 5*6,483702 Mbyte = 32,41851 Mbyte

4.1.3.8 Merancang Mekanisme Keamanan

Tujuan dari langkah ini adalah untuk merancang mekanisme

keamanan pada basis data sesuai dengan spesifikasi user. Dimana

spesifikasi user dibagi menjadi dua, yaitu user admin (mengetahui

password) dan user biasa (masuk tanpa password):

• User Admin

GRANT ALL PRIVILEGES ON pelanggan TO Admin;

GRANT ALL PRIVILEGES ON telpPelanggan TO Admin;

GRANT ALL PRIVILEGES ON faxPelanggan TO Admin;

GRANT ALL PRIVILEGES ON orderDitolakHeader TO Admin;

GRANT ALL PRIVILEGES ON orderDitolakDetail TO Admin;

GRANT ALL PRIVILEGES ON penjualanHeader TO Admin;

GRANT ALL PRIVILEGES ON penjualanDetail TO Admin;

GRANT ALL PRIVILEGES ON pembelianHeader TO Admin;

GRANT ALL PRIVILEGES ON pembelianDetail TO Admin;

GRANT ALL PRIVILEGES ON pemasok TO Admin;

GRANT ALL PRIVILEGES ON telpPemasok TO Admin;

GRANT ALL PRIVILEGES ON faxPemasok TO Admin;

GRANT ALL PRIVILEGES ON produksiHeader TO Admin;

GRANT ALL PRIVILEGES ON produksiDetail TO Admin;

GRANT ALL PRIVILEGES ON pengirimanHeader TO Admin;

GRANT ALL PRIVILEGES ON pengirimanDetail TO Admin;

Page 78: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

151

GRANT ALL PRIVILEGES ON returPenjualanHeader TO Admin;

GRANT ALL PRIVILEGES ON returPenjualanDetail TO Admin;

GRANT ALL PRIVILEGES ON returPembelianHeader TO Admin;

GRANT ALL PRIVILEGES ON returPembelianDetail TO Admin;

GRANT ALL PRIVILEGES ON pembayaranJual TO Admin;

GRANT ALL PRIVILEGES ON pembayaranBeli TO Admin;

GRANT ALL PRIVILEGES ON bahanHeader TO Admin;

GRANT ALL PRIVILEGES ON bahanDetail TO Admin;

GRANT ALL PRIVILEGES ON barang TO Admin;

GRANT ALL PRIVILEGES ON sales TO Admin;

GRANT ALL PRIVILEGES ON telpSales TO Admin;

GRANT ALL PRIVILEGES ON bank TO Admin;

• User Biasa

GRANT Select, Insert PRIVILEGES ON pelanggan TO Biasa;

GRANT Select, Insert PRIVILEGES ON telpPelanggan TO Biasa;

GRANT Select, Insert PRIVILEGES ON faxPelanggan TO Biasa;

GRANT Select, Insert PRIVILEGES ON orderDitolakHeader TO Biasa;

GRANT Select, Insert PRIVILEGES ON orderDitolakDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON penjualanHeader TO Biasa;

GRANT Select, Insert PRIVILEGES ON penjualanDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON pembelianHeader TO Biasa;

GRANT Select, Insert PRIVILEGES ON pembelianDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON pemasok TO Biasa;

Page 79: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

152

GRANT Select, Insert PRIVILEGES ON telpPemasok TO Biasa;

GRANT Select, Insert PRIVILEGES ON faxPemasok TO Biasa;

GRANT Select, Insert PRIVILEGES ON produksiHeader TO Biasa;

GRANT Select, Insert PRIVILEGES ON produksiDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON pengirimanHeader TO Biasa;

GRANT Select, Insert PRIVILEGES ON pengirimanDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON returPenjualanHeader TO Biasa;

GRANT Select, Insert PRIVILEGES ON returPenjualanDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON returPembelianHeader TO

Biasa;

GRANT Select, Insert PRIVILEGES ON returPembelianDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON pembayaranJual TO Biasa;

GRANT Select, Insert PRIVILEGES ON pembayaranBeli TO Biasa;

GRANT Select, Insert PRIVILEGES ON bahanHeader TO Biasa;

GRANT Select, Insert PRIVILEGES ON bahanDetail TO Biasa;

GRANT Select, Insert PRIVILEGES ON barang TO Biasa;

GRANT Select, Insert PRIVILEGES ON sales TO Biasa;

GRANT Select, Insert PRIVILEGES ON telpSales TO Biasa;

GRANT Select, Insert PRIVILEGES ON bank TO Biasa;

Page 80: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

153

4.2 Perancangan Aplikasi

4.2.1 Struktur Menu

Page 81: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

154

4.2.2 State Transition Diagram

Gambar 4.19 State Transition Diagram Menu Utama

Gambar 4.20 STD Menu Transaksi

Page 82: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

155

Gambar 4.21 STD Menu Transaksi Produksi, Pengiriman dan Order Ditolak

Gambar 4.22 STD Menu Transaksi Beli

Page 83: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

156

Gambar 4.23 STD Menu Detail Transaksi Beli

Gambar 4.24 STD Menu Transaksi Jual

Gambar 4.25 STD Menu Detail Transaksi Jual

Page 84: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

157

Gambar 4.26 STD Menu Master

Gambar 4.27 STD Menu Master Detail Pelanggan dan Pemasok

Gambar 4.28 STD Menu Master Detail Sales, Barang dan Bank

Page 85: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

158

Gambar 4.29 STD Menu Master Detail Pemasok dan Bahan

Gambar 4.30 STD Menu Laporan

Gambar 4.31 STD Menu Window

Page 86: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

159

Gambar 4.32 STD Menu Aplikasi

4.2.3 Spesifikasi Proses

Dalam perancangan aplikasi basis data pada PT. Multitech Label

Indonesia ini terdapat 51 modul yang menjadi media operasi basis data.

Spesifikasi pseudocode prosedur yang tersembunyi di balik tampilan layar dapat

dilihat secara lengkap di Lampiran A. Berikut adalah ke-51 modul tersebut :

1. Form Login

2. Form Lihat, Tambah dan Ubah Pelanggan

3. Form Lihat, Tambah dan Ubah Pemasok

4. Form Lihat, Tambah dan Ubah Barang

5. Form Lihat, Tambah dan Ubah Bahan

6. Form Lihat, Tambah dan Ubah Sales

7. Form Lihat, Tambah dan Ubah Bank

8. Form Lihat, Tambah dan Ubah Produksi

9. Form Lihat, Tambah dan Ubah Order

10. Form Lihat, Tambah dan Ubah Penjualan

Page 87: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

160

11. Form Lihat, Tambah dan Ubah Pembelian

12. Form Lihat, Tambah dan Ubah Pengiriman

13. Form Lihat, Tambah dan Ubah Retur Jual

14. Form Lihat, Tambah dan Ubah Retur Beli

15. Form Lihat, Tambah dan Ubah Bayar Beli

16. Form Lihat, Tambah dan Ubah Bayar Jual

17. Form Pilihan Laporan Pembelian

18. Form Pilihan Laporan Penjualan

19. Form Pilihan Laporan Retur Pembelian

20. Form Pilihan Laporan Retur Penjualan

4.2.4 Perancangan Input dan Output

4.2.4.1 Perancangan Input

Perancangan antarmuka aplikasi basis data dibuat berdasarkan hasil

diskusi antara penulis dengan karyawan PT Multitech Label Indonesia

yang akan menggunakan sistem.

Perancangan antarmuka aplikasi basis data dilakukan menggunakan

Visual Basic. Terdapat 51 rancangan input untuk masing-masing modul

yang telah dispesifikasikan sebelumnya. Hasil perancangan input

lengkapnya dapat dilihat di Lampiran B, yang akan menampilkan 51

bentuk tampilan aplikasi yang telah dirancang.

Page 88: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

161

4.2.4.2 Perancangan Output

Berikut merupakan rancangan hasil keluaran yang dapat dilakukan

oleh sistem, yaitu rancangan keluaran laporan penjualan barang, laporan

pembelian bahan, laporan retur penjualan dan laporan retur pembelian.

PT Multitech Label Indonesia

JL. Baru Kubur Koja III No. 12, Penjaringan, Jakarta Utara, 14440

Tanggal : DD-MM-YY

Laporan Penjualan Barang

Periode : MM

Tanggal

Penjualan

Nomor

Faktur Pelanggan

Nama

Barang Jumlah

dd-mm-yy x-8-x

x-8-x

x-6-x

x-6-x

xx-25-xx

xx-25-xx

xx.xxx.xxx

xx.xxx.xxx

Total Per Tanggal xxx.xxx.xxx

dd-mm-yy x-8-x

x-8-x

x-6-x

x-6-x

xx-25-xx

xx-25-xx

xx.xxx.xxx

xx.xxx.xxx

Total Per Tanggal xxx.xxx.xxx

Total Keseluruhan xx.xxx.xxx.xxx

Gambar 4.33 Perancangan Output Laporan Penjualan

Page 89: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

162

PT Multitech Label Indonesia

JL. Baru Kubur Koja III No. 12, Penjaringan, Jakarta Utara, 14440

Tanggal : DD-MM-YY

Laporan Pembelian Bahan

Periode : MM

Tanggal

Pembelian

Nomor

Faktur

Nama

Pemasok

Nama

Bahan Jumlah

dd-mm-yy x-8-x

x-8-x

xx-25-xx

xx-25-xx

x-8-x

x-8-x

xx.xxx.xxx

xx.xxx.xxx

Total Per Tanggal xxx.xxx.xxx

dd-mm-yy x-8-x

x-8-x

xx-25-xx

xx-25-xx

x-8-x

x-8-x

xx.xxx.xxx

xx.xxx.xxx

Total Per Tanggal xxx.xxx.xxx

Total Keseluruhan xx.xxx.xxx.xxx

Gambar 4.34 Perancangan Output Laporan Pembelian

Page 90: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

163

PT Multitech Label Indonesia

JL. Baru Kubur Koja III No. 12, Penjaringan, Jakarta Utara, 14440

Tanggal : DD-MM-YY

Laporan Retur Penjualan Barang

Periode : MM

Tanggal

Retur

Kode Retur

Penjualan

Nomor

Faktur

Kode

Barang

Nama

Barang Kuantitas

dd-mm-yy x-6-x

x-6-x

x-8-x

x-8-x

x-8-x

x-8-x

xx-36-xx

xx-36-xx

xxxx

xxxx

dd-mm-yy x-6-x

x-6-x

x-8-x

x-8-x

x-8-x

x-8-x

xx-36-xx

xx-36-xx

xxxx

xxxx

Gambar 4.35 Perancangan Output Laporan Retur Penjualan

Page 91: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

164

PT Multitech Label Indonesia

JL. Baru Kubur Koja III No. 12, Penjaringan, Jakarta Utara, 14440

Tanggal : DD-MM-YY

Laporan Retur Pembelian Bahan

Periode : MM

Tanggal

Retur

Kode Retur

Pembelian

Nomor

Faktur

Kode

Bahan

Nama

Bahan Kuantitas

dd-mm-yy x-6-x

x-6-x

x-8-x

x-8-x

x-8-x

x-8-x

xx-36-xx

xx-36-xx

xxxx

xxxx

dd-mm-yy x-6-x

x-6-x

x-8-x

x-8-x

x-8-x

x-8-x

xx-36-xx

xx-36-xx

xxxx

xxxx

Gambar 4.36 Perancangan Output Laporan Retur Pembelian

Page 92: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

165

4.2.5 Rencana Implementasi

4.2.5.1 Spesifikasi Perangkat Keras

Spesifikasi perangkat keras minimal yang dibutuhkan untuk

implementasi sistem dan aplikasi basis data pada PT Multitech Label

Indonesia adalah sebagai berikut :

1. Prosesor : Pentium Intel / AMD 800 MHz

2. RAM : 128 MB

3. Harddisk : 20GB

4. Printer : Printer inkjet standar

5. Backup storage : 1 GB

4.2.5.2 Spesifikasi Perangkat Lunak

Spesifikasi perangkat lunak minimal yang dibutuhkan untuk

implementasi sistem dan aplikasi basis data pada PT Multitech Label

Indonesia adalah sebagai berikut :

1. Sistem Operasi : Microsoft Windows 9x dengan VB

Runtime 6.0

2. Database SQL Server 2000

3. Microsoft Visual Basic 6.0

Page 93: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

166

4.2.5.3 Cara Pengoperasian Aplikasi

Gambar 4.37 Layar Login Aplikasi

Awalnya user dihadapkan pada layar login. Di sini user dapat

memilih untuk login atau masuk sebagai user biasa. Bagi yang mengetahui

password admin dapat login dan mendapatkan hak akses update dan delete

data. Pengguna biasa hanya dapat melakukan operasi baca terhadap data.

Gambar 4.38 Layar Kesalahan Login

Jika password yang dimasukkan salah, maka akan tampil

pemberitahuan dan kotak password dikosongkan kembali.

Page 94: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

167

Gambar 4.39 Layar Utama Aplikasi

Setelah melewati layar login, user dihadapkan pada menu utama

aplikasi ini. Semua layar dialog yang dapat dipilih akan muncul di dalam

halaman utama ini. Menu yang ada adalah sebagai berikut : Transaksi,

Master, Laporan, Window dan Aplikasi. Menu Transaksi memiliki

submenu sebagai berikut : Beli, Jual, Produksi, Pengiriman dan Order

Ditolak. Menu Master memiliki submenu Pelanggan, Pemasok, Sales,

Bahan, Barang dan Bank. Menu Laporan berisi Laporan Penjualan, Laporan

Pembelian, Laporan Retur Penjualan dan Laporan Retur Pembelian. Menu

Window adalah menu dinamis yang menampilkan daftar windows dialog

yang terbuka. Menu ini dapat digunakan untuk berpindah antar dialog yang

mungkin saling tumpang tindih. Menu terakhir, Aplikasi, berisi submenu

Logout dan Exit. Jika user masuk sebagai user biasa, menu Logout akan

dinonaktifkan. Baik menu Exit maupun Logout akan membawa user

kembali ke layar Login.

Page 95: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

168

Gambar 4.40 Layar Lihat Pelanggan

Layar ini akan muncul ketika user memilih menu Master>Pelanggan.

Di sini user dapat melihat data pelanggan perusahaan. Untuk melihat nomor

telepon dan nomor fax pelanggan yang bersangkutan, user dapat men-

double click baris data pelanggan tersebut, atau dapat juga dengan memilih

baris data kemudian memilih menu Update. Pada layar Lihat Pelanggan ini

dapat dilakukan pencarian atas data pelanggan yang ada. Pencarian dapat

dilakukan atas beberapa kategori, yaitu Kode Pelanggan, Nama Pelanggan,

Alamat Pelanggan, Telepon Pelanggan dan Fax Pelanggan. Jika user

memilih menu “Cari” tapi belum memilih kategori pencarian dan belum

memasukkan kata kunci pencarian, maka akan keluar kotak pesan yang

berisi permintaan untuk memilih kategori pencarian dan mengisi kata kunci

Page 96: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

169

terlebih dahulu. Jika syarat pencarian telah dipenuhi, hasil pencarian akan

ditampilkan di layar setelah user mengklik menu “Cari”.

Gambar 4.41 Layar Tambah Pelanggan

Pada layar ini, user dapat melakukan penambahan data pelanggan.

Kode Pelanggan akan dihasilkan secara otomatis. User cukup mengisi

rincian pelanggan seperti nama, alamat, nomor telepon dan fax. Untuk data

telepon dan fax, user dapat memasukkan lebih dari satu nomor untuk

masing-masing pelanggan. Ketika user meng-klik tombol “Tambah”, akan

muncul kotak dialog yang meminta masukan user. Jika tombol “Hapus”

dipilih dan user telah memilih salah satu nomor untuk dihapus maka nomor

tersebut akan dihapus dari daftar. Jika user belum memilih nomor maka

akan ditampilkan pesan bahwa tidak ada nomor telepon / fax yang terpilih

untuk dihapus. Tombol “Save” digunakan untuk menyimpan data baru ke

Page 97: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

170

database. Jika penyimpanan berhasil dilakukan akan keluar pesan bahwa

data telah disimpan dengan sukses.

Gambar 4.42 Layar Ubah Pelanggan

Layar pengubahan data pelanggan dapat diakses dengan dua cara,

pertama adalah dengan memilih satu baris data pada layar Lihat Pelanggan

kemudian mengklik tombol “Update”, dan cara kedua adalah dengan men-

double-click salah satu baris data pada layar Lihat Pelanggan. Pertama-tama

layar ini me-load isi baris data yang dipilih untuk diubah ke dalam dialog

Update Data Pelanggan. Jika user mengklik tombol “Save” maka

pengubahan akan disimpan setelah sebelumnya dilakukan validasi

kelengkapan data (nama dan alamat terisi). Jika penyimpanan berhasil

dilakukan akan keluar pesan bahwa data telah diubah dengan sukses.

Page 98: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

171

Gambar 4.43 Layar Lihat Sales

Layar Lihat Sales ini akan terbuka setelah user memilih menu

Master > Sales. Di sini user dapat melihat detil data sales yang bekerja di

PT. Multitech Label Indonesia. Seperti Layar Lihat Pelanggan, pada layar

ini juga dapat dilakukan pencarian atas beberapa kategori yaitu Kode,

Nama dan Alamat sales.

Page 99: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

172

Gambar 4.44 Layar Tambah Sales

Pada layar Tambah Data Sales, Kode Sales akan dihasilkan secara

otomatis. User dapat mengisikan rincian sales seperti nama, alamat dan

nomor telepon. Proses pengisian nomor telepon sama seperti pada layar

Tambah data Pelanggan. Jika penyimpanan berhasil dilakukan akan keluar

pesan bahwa data telah disimpan dengan sukses.

Page 100: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

173

Gambar 4.45 Layar Ubah Sales

Layar Update Data Sales ini dapat diakses melalui tombol Update

maupun double-click pada baris data Lihat Sales. Pada layar ini dapat

dilakukan pengubahan pada data sales yang telah dipilih. Jika data telah

dimasukkan secara lengkap, maka tombol “Save” akan menyimpan

perubahan yang telah dilakukan. Tombol “Exit” akan membatalkan

perubahan dan menutup layar pengubahan data sales. Jika penyimpanan

berhasil dilakukan akan keluar pesan bahwa data telah disimpan dengan

sukses.

Page 101: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

174

Gambar 4.46 Layar Lihat Bahan

Data master berikutnya adalah data bahan. Pada layar ini dapat

dilihat dua jenis layar data. Layar data yang berada di atas menampilkan

data bahan secara umum. Data bahan umum yang ditampilkan adalah data

Kode Bahan, Nama Bahan, Satuan Bahan, Jumlah Stok, Jumlah Minimal,

Tanggal Pembelian Akhir dan Keterangan. Layar data di bawah akan

menampilkan data daftar pemasok bahan yang dipilih user. Terlihat pada

gambar di atas, layar data bawah sedang menampilkan data pemasok-

pemasok yang memasok bahan HVS pada PT Multitech Label Indonesia.

Detil pemasok yang ditampilkan adalah Kode Pemasok, Nama Pemasok

Page 102: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

175

dan alamat Pemasok. Jika layar data bawah di-double click, maka akan

muncul Layar Update Pemasok yang bersangkutan. Pencarian dapat

dilakukan dalam kategori Kode Bahan, Nama Bahan, Satuan Bahan, Jumlah

minimal, Jumlah Stok, Keterangan, Kode Pemasok, Nama Pemasok dan

Alamat Pemasok. Tombol “Insert” akan memunculkan layar Tambah

Bahan. Tombol “Update” akan memunculkan layar Ubah Data Bahan dan

tombol “Delete” akan menghapus data bahan yang bersangkutan. Tombol

Refresh akan mengupdate tampilan baris data bahan jika terjadi perubahan

pada data bahan luar layar ini.

Gambar 4.47 Layar Tambah Bahan

Page 103: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

176

Pada layar Tambah Data Bahan ini user dapat menambah data bahan.

Rincian yang perlu diisi user adalah Nama Bahan, Satuan Bahan, Jumlah

Minimal, Jumlah Stok dan daftar pemasok yang memasok bahan ini.

Keterangan tidak harus diisi. Kode Bahan telah dihasilkan secara otomatis.

Untuk menambah pemasok ke dalam daftar, user dapat memilih kode

pemasok dari daftar combo kode pemasok yang berada di sisi kanan atas

layar. Nama pemasok dapat dilihat namun tidak dapat diubah. Nama

pemasok ini ditampilkan sebagai sarana untuk membantu user menemukan

pemasok yang diinginkan. Ketika tombol “Tambah” diklik, akan dilakukan

pemeriksaan apakah kode pemasok ini telah ada di dalam daftar. Jika belum

maka pemasok akan ditambahkan ke daftar. Tombol “Hapus” digunakan

untuk menghapus kode pemasok dari daftar. User harus memilih salah satu

kode pemasok dalam daftar sebelum dapat menghapusnya. Tombol Save

akan menyimpan data bahan yang baru dimasukkan ke dalam database. Jika

daftar pemasok bahan masih kosong, akan ditampilkan pesan bahwa data

bahan belum lengkap. Jika penyimpanan berhasil dilakukan akan keluar

pesan bahwa data telah disimpan dengan sukses.

Page 104: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

177

Gambar 4.48 Layar Ubah Bahan

Pengubahan data bahan dapat dilakukan di layar ini. Masing-masing

kotak teks rincian data bahan telah diisi dengan nilai asli baris data yang

dipilih. Seperti pada Layar Tambah Data Bahan, user dapat melakukan

penambahan dan penghapusan ke dan dari daftar pemasok bahan. Klik

“Save” untuk menyimpan perubahan dan “Exit” untuk membatalkan

perubahan. Jika daftar pemasok bahan masih kosong, akan ditampilkan

pesan bahwa data bahan belum lengkap. Jika penyimpanan berhasil

dilakukan akan keluar pesan bahwa data telah disimpan dengan sukses.

Page 105: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

178

Gambar 4.49 Layar Lihat Barang

Pada Layar Lihat Barang user dapat melihat daftar barang yang ada

di PT Multitech Label Indonesia. Rincian data yang ditampilkan adalah

Kode Barang, Nama Barang, Satuan Barang dan Keterangan. Pencarian

dapat dilakukan dalam kategori Kode, Nama, Satuan dan Keterangan

barang. Tombol “Insert” akan menampilkan layar Tambah Data Barang,

tombol “Update” akan menampilkan layar Ubah Data Barang. Tombol

“Refresh” akan mengupdate tampilan baris data barang jika terjadi

perubahan pada data barang luar layar ini.

Page 106: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

179

Gambar 4.50 Layar Tambah Barang

Penambahan data Barang dilakukan di layar ini. Kode Barang

dihasilkan secara otomatis. Setelah mengisi rincian Nama Barang dan

Satuan Barang, user dapat mengklik “Save” untuk menyimpan data atau

“Exit” untuk membatalkan penambahan.

Gambar 4.51 Layar Ubah Barang

Page 107: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

180

Seperti layar-layar pengubahan data sebelumnya, pada layar ini

dapat dilakukan pengubahan data. Data barang yang dipilih untuk diubah

di-load ke tempatnya masing-masing untuk kemudian dapat diubah oleh

user. Save akan menyimpan perubahan dan Exit akan membatalkan

perubahan.

Gambar 4.52 Layar Lihat Bank

Data bank ditampilkan pada layar ini. Nama Bank dan Nama

Cabang adalah detil data bank yang tampil. Dapat dilakukan pencarian atas

data bank dalam kategori Kode Bank, Nama Bank dan Nama Cabang.

Page 108: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

181

Gambar 4.53 Layar Tambah Bank

Penambahan data bank dapat dilakukan di layar Tambah Data Bank.

Jika penyimpanan berhasil dilakukan akan keluar pesan bahwa data telah

disimpan dengan sukses.

Gambar 4.54 Layar Ubah Bank

Page 109: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

182

Layar Ubah Data Bank digunakan untuk mengubah data bank.

Tombol “Save” digunakan untuk menyimpan perubahan.

Gambar 4.55 Layar Lihat Pemasok

Data master terakhir adalah data pemasok. Layar ini menampilkan

daftar pemasok bahan pada PT. Multitech Label Indonesia. Dapat dilakukan

pencarian dalam kategori Kode Pemasok, Nama Pemasok dan Alamat

Pemasok.

Page 110: BAB 4 PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan …thesis.binus.ac.id/Asli/Bab4/2007-2-00127-IF-Bab 4.1.pdfmengidentifikasi relasi antar entity 3. mengidentifikasi atribut yang

183

Gambar 4.56 Layar Tambah Pemasok

Seperti data pelanggan, data pemasok juga boleh memiliki data

nomor telepon dan nomor fax lebih dari satu. Mekanisme kerja layar

Tambah Data Pemasok ini sama saja dengan mekanisme layar Tambah

Pelanggan, hanya saja ketika tombol “Save” ditekan, data pemasok akan

disimpan ke database ke dalam tabel pemasok sedangkan pada layar

Tambah Data Pelanggan, data akan disimpan ke tabel pelanggan.Data-data

akan disimpan ke tabel pemasok jika kolom nama, alamat dan telepon

pemasok telah diisi.