• Tidak ada hasil yang ditemukan

BAB 4 PERANCANGAN DAN IMPLEMENTASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 4 PERANCANGAN DAN IMPLEMENTASI"

Copied!
137
0
0

Teks penuh

(1)

59

PERANCANGAN DAN IMPLEMENTASI 4.1 Perancangan Basis Data

4.1.1 Perancangan Konseptual

Dalam perancangan konseptual (Connolly dan Begg, 2010) terdiri dari Sembilan tahapan perancangan, yaitu :

1. Mengidentifikasi tipe entitas

2. Mengidentifikasi tipe relasi antar entitas

3. Mengidentifikasi dan mengasosiasi atribut dengan entitas 4. Menentukan domain atribut

5. Mengidentifikasi candidate key dan primary key setiap entitas 6. Penggunaan enhanced modeling concept

7. Memeriksa redudansi

8. Validasi dan pemeriksaan kembali model konseptual 9. Peninjauan model data konseptual

4.1.1.1 Mengidentifikasi Tipe Etitas

Tabel 4.1 Identifikasi Tipe Relitas

NO NAMA

ENTITAS DESKRIPSI ALIAS Kejadian

1 Karyawan Entitas yang

berisi keterangan data karyawan yang bekerja Employee Mendata employee yang bekerja pada bagiannya masing -masing

2 Pelangan Entitas yang

berisi

keterangan data pelanggan

Customer Mendata customer yang melakukan pemesanan dan pembelian barang

(2)

3 Pemasok Entitas yang berisi keterangan data pemasok yang dimiliki perusahaan

Supplier Mendata setiap pemasok yang memasok barang satu atau lebih dari satu kali

4 Produk Entitas yang

berisi informasi daftar produk pemasok yang dijual oleh perusahaan

Product Mendata setiap daftar produk dari tiap-tiap pemasok

5 Quotation_order Entitas yang berisi informasi daftar pesanan pelanggan

Quo Mendata setiap

Quotation_order yang dibuat untuk satu atau lebih produk yang dipesan pelanggan 6 Sales_order Entitas yang

berisi informasi transaksi pembelian pelanggan SO Mendata Sales_order yang dibuat berdasarkan Quotation_order

7 Penjualan Entitas yang

berisi informasi lengkap penjualan yang terjadi di PT.Interni Asia JL Menyimpan data penjualan yang terjadi di PT. Interni Asia

8 Purchase_order Entitas yang berisi informasi transaksi pembelian ke PO Mendata setiap Purchase_order berisi jumlah produk yang

(3)

supplier dipesan dari Pemasok

9 Pembelian Entitas yang

berisi informasi lengkap pembelian yang terjadi di PT.Interni Asia BL Menyimpan data pembelian yang terjadi di PT. Interni Asia

10 Barang_masuk Entitas yang berisi informasi barang yang masuk ke perusahaan Barang masuk Mendata setiap barang yang masuk berdasarkan proses pembelian

11 Barang_keluar Entitas yang berisi informasi produk yang keluar karna adanya penjualan barang keluar Mendata setiap barang yang keluar berdasarkan proses penjualan

12 Stok_gudang Entitas yang berisi informasi berapa banyak jumlah barang yang ada di gudang

Stokgudang Mendata barang atau produk yang ada di gudang

4.1.1.2 Mengidentifikasi Tipe Relasi Antar Entitas

Identifikasi tipe-tipe hubungan pada PT. Inteni Asia dapat dilihat pada table dibawah ini :

(4)

Tabel 4.2 Identifikasi Tipe Relasi Antar Entitas

Nama Entitas Multiplicity Hubungan Nama Entitas Multiplicity

Karyawan 1..1 Membuat Quotation_orde

r 1..* 1..1 Membuat Sales_order 1..* 1..1 Melakukan Penjualan 1..* 1..1 Membuat Purchase_order 1..* 1..1 Melakukan Pembelian 1..* 1..1 Melakukan BarangMasuk 1..* 1..1 Melakukan BarangKeluar 1..*

Pemasok 1..1 Mempunyai Produk 1..*

Quotation_orde r

1..* Melibatkan Produk 1..*

1..* Melibatkan Pelanggan 1..1

1..1 Mendasari SalesOrder 1..1

Sales_order 1..1 Mendasari Penjualan 1..1

1..1 Mendasari PurchaseOrder 1..*

Penjualan 1..1 Mendasari Barang_keluar 1..*

Barang_keluar 1..* Melibatkan Quotation_orde

r

1..1

Purcase_order 1..1 Mendasari Pembelian 1..1

Pembelian 1..1 Mendasari BarangMasuk 1..*

Barang_masuk

1..* Melibatkan Quotation_orde

r

1..1

(5)

4.1.1.3 Mengidentifikasi dan Mengasiosasi Atribut dangan Entitas

(6)

Tabel 4.3 Tabel Identifikasi Atribut dengan Entitas

Pelanggan

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_pelanggan Kode pelanggan Int(10) Tidak Tidak

Nama_pelanggan Nama pelanggan Varchar(100) Tidak Tidak

Alamat_pelanggan Alamat

pelanggan

Text Tidak Tidak

Kota Nama kota Varchar(100) Tidak Tidak

Negara Nama negara Varchar(30) Tidak Tidak

Propinsi Propinsi Varchar(100) Tidak Tidak

Kodepos_pelanggan Kode pelanggan Varchar(7) Tidak Tidak

Notelp_pelanggan Telp pelanggan Varchar(15) Ya Tidak

Nohp_pelanggan HP pelanggan Varchar(15) Tidak Tidak

Nofak_pelanggan Faks pelanggan Varchar(15) Ya Tidak

Email_pelanggan Email pelanggan Varchar(60) Ya Tidak

Karyawan

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_karyawan Kode karyawan Int(10) Tidak Tidak

Nama_karyawan Nama karyawan Varchar(100) Tidak Tidak

Alamat_karyawan Alamat karyawan Text Tidak Tidak

Notelp_karyawan Telp karyawan Varchar(15) Tidak Tidak

Nohp_karyawan HP karyawan Varchar(15) Tidak Tidak

username nama username Varchar(30) Tidak Tidak

Password Password Varchar(255) Tidak Tidak

Jabatan Jabatan Varchar(50) Tidak Tidak

Id_hak kode hak akses Int(10) Tidak Tidak

Pemasok

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

(7)

Id_pemasok Kode pemasok Int(10) Tidak Tidak

Nama_pemasok Nama pemasok Varchar(50) Tidak Tidak

Alamat_pemasok Alamat pemasok Text Tidak Tidak

Kota Nama kota Varchar(100) Tidak Tidak

Negara Nama negara Varchar(30) Tidak Tidak

Propinsi Propinsi Varchar(100) Tidak Tidak

Notelp_pemasok Telp pemasok Varchar(15) Tidak Tidak

Nofax_pemasok Faks pemasok Varchar(15) Tidak Tidak

Email_pemasok Email emasok Varchar(50) Ya Tidak

Produk

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_produk Kode barang Int(10) Tidak Tidak

Nama_produk Nama barang Varchar(200) Tidak Tidak

Pola Pola produk Varchar(150) Tidak Tidak

Harga_idr Harga idr barang

dari pemasok

Decimal(10,0) Tidak Tidak

Harga_usd Harga usd barang

dari pemasok

Decimal(10,0) Tidak Tidak

Gambar Gambar produk Varchar(100) Tidak Tidak

Id_pemasok Kode pemasol Int(10) Tidak Tidak

Quotation Order

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_Quo Kode/No

quotation order

Int(10) Tidak Tidak

No_quo Nomer Quotation VarChar(30) Tidak Tidak

IDKaryawan Kode karyawan Int(10) Tidak Tidak

IDPelanggan Kode pelanggan Int(10) Tidak Tidak

IDProduk Kode produk Int(10) Tidak Tidak

Nama_proyek Nama proyek Varchar(30) Tidak Tidak

(8)

Qty Jumlah pembelian produk

Int(10) Tidak Tidak

Harga_indo_before Harga jual dalam rupiah

Decimal(10,0) Tidak Tidak

Harga_dolar_before Harga jual dalam dolar

Decimal(10,0) Tidak Tidak

Harga_indo_after Harga jual dalam rupiah

Decimal(10,0) Tidak Tidak

Harga_dolar_after Harga jual dalam dolar

Decimal(10,0) Tidak Tidak

Disc Discount Int(10) Ya Tidak

QuotationMemo Memo/deskripsi

quotation

Text Tidak Tidak

Sales Order

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_so Kodesales order Int(10) Tidak Tidak

No_so Nomer sales

order

Varchar(30) Tidak Tidak

Tanggal_so Tanggal sales

order

Date Tidak Tidak

Deadline_so Tanggal sales

order jatuh tempo

Date Tidak Tidak

Memo_so Memo/deskripsi

sales order

Text Tidak Tidak

Payment_option Jenis pembayaran Varchar(10) Tidak Tidak

Cheque_no Nomer cek Varchar(40) Ya Tidak

Id_karyawan Kode karyawan Int(10) Tidak Tidak

(9)

Penjualan

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_penjualan Kode penjualan Int(10) Tidak Tidak

No_penjualan Nomer penjualan Varchar(15) Tidak Tidak

Tanggal_pemjualan Tanggal penjualan

Datetime Tidak Tidak

Id_so Kode sales order Int(10) Tidak Tidak

Id_karyawan Kode karyawan Int(10) Tidak Tidak

Harga_penjualan Jumlah harga penjualan

Varchar(6) Tidak Tidak

Purchase Order

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_po Kode purchase

order

Int(10) Tidak Tidak

No_po Nomer purchase

order

Varchar(20) Tidak Tidak

Id_so Tanggal

pemesanan pembelian

Int(10) Tidak Tidak

Id_pemasok Kode pemasok Int(10) Tidak Tidak

Tanggal_po Tanggal purchase

order

Datetime Tidak Tidak

Tanggal_deadline Tanggal purchase order jatuh tempo

Datetime Ya Tidak

Id_karyawan Kode karyawan Int(10) Tidak Tidak

Term Term Varchar(20) Ya Tidak

Pembelian

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

(10)

No_pembelian Nomer pembelian

Varchar(15) Tidak Tidak

Tanggal_pembelian Tanggal pembelian

Date Tidak Tidak

Id_po Kode puschase

order

Int(10) Tidak Tidak

Harga_pembelian Jumlah harga penbelian

Varchar(20) Tidak Tidak

Barang Masuk

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_barang_masuk Kode barang

masuk

Int(10) Tidak Tidak

No_barang_masuk Nomor barang

masuk

Varchar(15) Tidak Tidak

Id_pembelian Kode pembelian Int(10) Tidak Tidak

Id_karyawan Kode karyawan Int(10) Tidak Tidak

Id_quo Kode quotation Int(10) Tidak Tidak

Tanggal_barang_masuk Tanggal barang masuk

Date Tidak Tidak

Qty_barang_masuk Jumlah barang masuk

Int(10) Tidak Tidak

Barang Keluar

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_barang_keluar Kode barang masuk

Int(10) Tidak Tidak

No_barang_keluar Nomor barang masuk

Varchar(15) Tidak Tidak

Id_penjualan Kode penjualan Int(10) Tidak Tidak

Id_karyawan Kode karyawan Int(10) Tidak Tidak

(11)

Tanggal_barang_keluar Tanggal barang masuk

Date Tidak Tidak

Quantity_barang_keluar Jumlah barang masuk

Int(10) Tidak Tidak

Stok Gudang

Atribut Deskripsi Tipe Data dan Nulls Multi-

valued Panjang

Id_produk Kode produk Int(10) Tidak Tidak

Id_stok_gudang Kode stok

gudang

Int(10) Tidak Tidak

Qty_produk Jumlah produk Int(10) Tidak Tidak

Tanggal Tanggal

penjahitan

Date Tidak Tidak

Hak akses

Atribut

Deskripsi Tipe Data dan Nulls Multi- valued Panjang

Id_hak kode hak akses Int(10) Tidak Tidak

Hak_user Hak akses user Varchar(20) Tidak Tidak

4.1.1.4 Menetukan Domain Atribut

Tabel 4.4 Identifikasi Domain Atribut

Produk Atribut Domain Atribut

Id_produk Int(10), AUTO INCREMENT

Nama_produk Varchar(200)

Pola Varchar(150)

Harga_idr Int(20)

Harga_usd Int(20)

Gambar Varchar(100)

(12)

Pelanggan Atribut Domain Atribut

Id_pelanggan Int(10), AUTO INCREMENT

Nama_pelanggan Varchar(100) Alamat_pelanggan Text Kota Varchar(100) Negara Varchar(30) Propinsi Varchar(100) Kodepos_pelanggan Varchar(7) Notelp_pelanggan Varchar(15) Nohp_pelanggan Varchar(15) Nofak_pelanggan Varchar(15) Email_pelanggan Varchar(60)

Karyawan Atribut Domain Atribut

Id_karyawan Int(10), AUTO INCREMENT

Nama_karyawan Varchar(100) Alamat_karyawan Text Notelp_karyawan Varchar(15) Nohp_karyawan Varchar(15) username Varchar(30) Password Varchar(255) Jabatan Varchar(50)

Id_hak Int(10), AUTO INCREMENT

Pemasok Atribut Domain Atribut

Id_pemasok Int(10), AUTO INCREMENT

Nama_pemasok Varchar(50) Alamat_pemasok Varchar(200) Kota Varchar(100) Negara Varchar(30) Propinsi Varchar(100) Notelp_pemasok Varchar(15) Nofax_pemasok Varchar(15)

(13)

Email_pemasok Varchar(50) Quotation

Order

Atribut Domain Atribut

Id_Quo Int(10), AUTO INCREMENT

No_quo VarChar(30), format :

QUO-[0- 9][0-9][0-9][0-9][0-9][0-9][0-9][0-9], (Generate By Sistem)

IDKaryawan Int(10), AUTO INCREMENT

IDPelanggan Int(10), AUTO INCREMENT

IDProduk Int(10), AUTO INCREMENT

Nama_proyek Varchar(30) Tanggal_quo Date Qty Int(10) Harga_indo_before Varchar(20) Harga_dolar_before Varchar(20) Harga_indo_after Varchar(20) Harga_dolar_after Varchar(20) Disc Int(10) QuotationMemo Varchar(300)

Sales Order Atribut Domain Atribut

Id_so Int(10), AUTO INCREMENT

No_so Varchar(30), format :

SO-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9], (Generate By Sistem)

Tanggal_so Date

Deadline_so Date

Memo_so Varchar(200)

Payment_option Varchar(10), option

Cheque_no Varchar(40)

Id_karyawan Int(10), AUTO INCREMENT

Id_Quo Int(10), AUTO INCREMENT

(14)

Id_penjualan Int(10), AUTO INCREMENT

No_penjualan Varchar(15), format : JU-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9], (Generate By Sistem)

Tanggal_pemjualan Datetime

Id_so Int(10), AUTO INCREMENT

Id_karyawan Int(10), AUTO INCREMENT

Harga_penjualan Varchar(6)

Purchase Order

Atribut Domain Atribut

Id_po Int(10), AUTO INCREMENT

No_po Varchar(20), format :

PO-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9], (Generate By Sistem)

Id_so Int(10), AUTO INCREMENT

Id_pemasok Int(10), AUTO INCREMENT

Tanggal_po Datetime

Tanggal_deadline Datetime

Id_karyawan Int(10), AUTO INCREMENT

Term Varchar(20)

Pembelian Atribut Domain Atribut

Id_pembelian Int(10), AUTO INCREMENT

No_pembelian Varchar(15), format : BE-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9], (Generate By Sistem)

Tanggal_pembelian Date

Id_po Int(10), AUTO INCREMENT

Harga_pembelian Varchar(20)

Barang Masuk Atribut Domain Atribut

Id_barang_masuk Int(10), AUTO INCREMENT

No_barang_masuk Varchar(15), format : BM-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9],

(15)

(Generate By Sistem)

Id_pembelian Int(10), AUTO INCREMENT

Id_karyawan Int(10), AUTO INCREMENT

Id_quo Int(10), AUTO INCREMENT

Tanggal_barang_masuk Date

Quantity_barang_masuk Int(10)

Barang Keluar Atribut Domain Atribut

Id_barang_keluar Int(10), AUTO INCREMENT

No_barang_keluar Varchar(15), format : BK-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9], (Generate By Sistem)

Id_penjualan Int(10), AUTO INCREMENT

Id_karyawan Int(10), AUTO INCREMENT

Id_quo Int(10), AUTO INCREMENT

Tanggal_barang_keluar Date

Quantity_barang_keluar Int(10)

Stok Gudang Atribut Domain Atribut

Id_produk Int(10), AUTO INCREMENT

Id_stok_gudang Int(10), AUTO INCREMENT

Qty_produk Int(10)

Tanggal Date

Hak akses Atribut Domain Atribut

Id_hak Int(10), AUTO INCREMENT

Hak_user Varchar(20)

4.1.1.5 Menentukan Candidate key dan Primary Key tiap Entitas Tabel 4.5 Identifikasi Candidate key dan Primary Key

Nama Entitas Candidate Key Primary Key

(16)

Nama_pelanggan

Notelp_pelanggan

Nohp_pelanggan

Email_pelanggan

Karyawan Id_karyawan IDKaryawan

Nama_karyawan

Notelp_karyawan

Nohp_karyawan

Email_karyawan

Pemasok Id_pemasok IDPemasok

Nama_pemasok

Notelp_pemasok

Nohp_pemasok

Email_pemasok

Produk Id_produk Id_produk

Pola

(17)

No_quo

SalesOrder Id_so Id_so

No_so

Penjualan Id_penjualan Id_penjualan

No_penjualan

PurchaseOrder Id_po Id_po

No_po

Pembelian Id_pembelian Id_pembelian

No_pembelian

BarangMasuk Id_barang_masuk Id_barang_masuk

No_barang_masuk

BarangKeluar Id_barang_keluar Id_barang_keluar

No_barang_keluar

(18)

Gambar 4.2 ERD Konseptual dengan Primary Key

4.1.1.6 Memvalidasi Model Konseptual Terhadap Transaksi User Lankah kali ini bertujuan untuk menjamin bahwa model konseptual local yang di buat dapat mendukung transaksi yang dibutuhkan oleh pengguna.

Ada dua cara pendekatan yang dapat diperiksa, yaitu : 1. Mendeskripsikan Transaksi

a. Membuat quotation_order yang dilakukan oleh karyawan b. Membuat sales_order yang dilakukan oleh karyawan c. Membuat purchase_order yang dulakukan oleh karyawan d. Memasukan informasi data produk yang dimiliki

pemasok

e. Memasukan data pelanggan yang dilibatkan dalam pembuatan quotation_order

f. Memasukan informasi produk yang dilibatkan dalam pembuatan quotation_order

(19)

g. Memasukan informasi ke dalam sales_order berdasarkan data yang ada dalam quotation order

h. Memasukan informasi ke dalam purchase_order berdasarkan data yang ada dalam sales order

i. Memasukan informasi ke dalam pembelian berdasarkan data yang ada dalam purchase_order

j. Memasukan informasi ke dalam barang_masuk berdasarkan data yang ada dalam pembelian

k. Memasukan informasi pemasok yang dilibatkan dalam pembuatan purchase_order

l. Melakukan pencatatan barang_masuk yang dilakukan oleh keryawan

m.Menelurusi informasi yang dimiliki quotation_order untuk barang_masuk

n. Melakukan pencatatan barang_keluar yang dilakukan oleh keryawan

o. Memasukan informasi ke dalam barang_keluar berdasarkan data yang ada dalam penjualan

p. Menelurusi informasi yang dimiliki quotation_order untuk barang_keluar

q. Menampilkan dan mengedit detail dari pemasok r. Menampilkan dan mengedit detail dari pelanggan s. Menampilkan dan mengedit detail dari produk t. Menampilkan dan mengedit detail dari karyawan

(20)

2. Jalur-jalur transaksi

Gambar 4.3 ERD Konseptual dengan Jalur-jalur Transaksi 4.1.2 Perancangan Logical

Dalam perancangan konseptual (Connolly dan Begg, 2010) terdiri dari Sembilan tahapan perancangan, yaitu :

1. Menurunkan relasi untuk logical data model 2. Mevalidasi relasi menggunakan normalisasi 3. Memvalidasi relasi terhadap transaksi user 4. Memeriksa batasan- batasan integritas 5. Reviewlogical data model dengan user

6. Menggabungkan logical data model kedalam model global (optional)

(21)

7. Memriksa perkembangan di masa mendatang

4.1.2.1 Menghilangkan fitur yang tidak cocok dengan model relational

1. Menghilangkan tipe hubungan binary many-to-many (*:*)

Menghilangkan relationship yang mengandung

many-to-many (*:*) dilakukan dengan memecah dan

mengidentifikasikan sebuah entitas baru dan mengganti hubungan antar dua entitas tersebuat terhubung dengan entitas baru dengan relasi one-to-many (1:*)

a. Relasi many-to-many antara produk dengan quotation_order menghasilkan entitas baru yang bernama detil_quo

Gambar 4.4 Hubungan Produk dengan Quotation_order 2. Menghilangkan tipe hubungan rekursif many-to-many

Dalam model data yang dibuat tidak terdapat tipe hubungan rekursif many-to-many.

(22)

3. Menghilangkan tipe hubungan kompleks

Dalam model data yang dibuat tidak terdapat tipe hubungan kompleks

4. Menghiangkan multi-valuee attribute

Dalam model data yang dibuat tidak terdapat tipe hubungan kompleks.

4.1.2.2 Menurunkan Relasi Untuk Model Data Logikal

langkah ini bertujuan untuk membuat relasi untuk model data logikal yang menghadirkan entitas, hubungkan, dan atribut yang telah teridentifikasi. Pembagian relasi dari sebuah model data diantaranya:

1. Tipe entitas kuat

a.Pelanggan (Id_pelanggan ,Nama_pelanggan, Alamat_pelanggan, Kota, Negara, Propinsi,

Kodepos_pelanggan, Notelp_pelanggan,

Nohp_pelanggan, Nofak_pelanggan, Email_pelanggan) Primary key Id_pelanggan

b. Karyawan (Id_karyawan, Nama_karyawan, Alamat_karyawan, Notelp_karyawan, Nohp_karyawan, username, Password, Jabatan, Id_hak

Primary key Id_karyawan

c.Pemasok (Id_pemasok, Nama_pemasok, Alamat_pemasok, Kota, Negara, Propinsi, Notelp_pemasok, Nofax_pemasok, Email_pemasok) Primary key Id_pemasok

d. Produk (Id_produk, Nama_produk, Pola, Harga_idr, Harga_usd, Gambar, ID_Pemasok)

Primary key Id_produk Foreign key Id_pemasok

e.Quotation order (Id_Quo, No_quo, ID_Karyawan,

ID_Pelanggan, ID_Produk, Nama_proyek, Tanggal_quo, Qty, Harga_indo_before, Harga_dolar_before,

(23)

Harga_indo_after, Harga_dolar_after, Disc, QuotationMemo

Primary key Id_quo Foreign key Id_karyawan Foreign key Id_pelanggan Foreign key Id_produk

f.Sales order (Id_so, No_so, Tanggal_so, Deadline_so,

Memo_so, Payment_option, Cheque_no, Id_karyawan, Id_Quo)

Primary key Id_so Foreign key Id_quo Foreign key Id_kryawan

g. Purchase order (Id_po, No_po, Id_so, Id_pemasok,

Tanggal_po, Tanggal_deadline, Id_karyawan, Term) Primary key Id_po

Foreign key Id_so Foreign key Id_pemasok Foreign key Id_Karyawan

h. Penjualan (Id_penjualan, No_penjualan,

Tanggal_pemjualan, Id_so, Id_karyawan,

Harga_penjualan)

Primary key Id_penjualan Foreign key Id_so

i. Pembelian (Id_pembelian, No_pembelian, Tanggal_pembelian, Id_po, Harga_pembelian)

Primary key Id_pembelian Foreign key Id_po

j. Barang masuk (Id_barang_masuk, No_barang_masuk,

Id_pembelian, Id_karyawan, Id_quo,

Tanggal_barang_masuk, Quantity_barang_masuk) Primary key Id_barang_masuk

Foreign key Id_pembelian Foreign key Id_karyawan Foreign key Id_quo

(24)

k. Barang Keluar (Id_barang_keluar, No_barang_keluar,

Id_penjualan, Id_karyawan, Id_quo,

Tanggal_barang_keluar, Quantity_barang_keluar) Primary key Id_barang_keluar

Foreign key Id_penjualan Foreign key Id_quo Foreign key Id_karyawan

l. Stok gudang (Id_produk, Id_stok_gudang, Qty_produk, Tanggal)

Primary key Id_stok_gudang Foreign key Id_stok_gudang m.hak akses (Id_hak, Hak_user)

Primary key Id_hak

n. Detil quotation (Id_detil_quo, Qty, Harga_indo_before, Harga_indo_after,

Harga_dolar_before, Harga_dolar_after, disc, Id_quo, Id_produk )

Primary key Id_detil_quo Foreign key Id_quo Foreign key Id_produk 2. Tipe Entitas Lemah

Sampai saat ini belum ditemukan adanya entitas yang lemah

3. Mengidentifikasi tipe relasi binary one-to-many (1:*) Setiap hubungan binary one-to-many (1:*), entitas pada sisi satu dari hubungan itu disebut sebagai entitas parent sedangkan entitas pada sisi banyak disebut entitas child. Untuk mewakili hubungan ini, diletakan salinan dari primary key pada entitas parent ke dalam relasi yang mewakili entitas child sebagai foreign key.

(25)

a. Pelanggan dengan quotation_order

Gambar 4.6 Hubungan (1:*) Pelanggan dengan Quotation_order b. Karyawan dengan quotation_order

Gambar 4.7 Hubungan (1:*) Karyawan dengan Quotation_order c. Karyawan dengan sales_order

Gambar 4.8 Hubungan (1:*) Karyawan dengan Sales_order d. Karyawan dengan purchase_order

(26)

Gambar 4.9 Hubungan (1:*) Karyawan dengan Purchase_order e. Pemasok dengan purchase_order

Gambar 4.10 Hubungan (1:*) Pemasok dengan Purchase_order f. Pembelian dengan barang_masuk

Gambar 4.11 Hubungan (1:*) Pembelian dengan Barang_masuk g. Karyawan dengan penjualan

(27)

h. Sales_order dengan purchase_order

Gambar 4.13 Hubungan (1:*) Purchase_order dengan Sales_order

i. Quotation_order dengan barang_keluar

Gambar 4.15 Hubungan (1:*) Quotation_order dengan Barang_Keluar

j. Stok_gudang dengan produk

Gambar 4.16 Hubungan (1:*) Stok_gudang dengan Produk

k. Quotation_order dengan barang_masuk

Gambar 4.17 Hubungan (1:*) Quotation_order dengan Barang_masuk

(28)

l. Karyawan dengan barang_masuk

Gambar 4.18 Hubungan (1:*) Karyawan dengan Barang_masuk m. Karyawan dengan barang_keluar

Gambar 4.19 Hubungan (1:*) Karyawan dengan Barang_keluar n. Pemasok dengan produk

Gambar 4.20 Hubungan (1:*) Karyawan dengan Barang_keluar 4. Mengidentifikasi tipe relasi binary one-to-one (1:1)

a. Quotation_order dengan sales_order

(29)

b. Sales_order dengan penjulan

Gambar 4.22 Hubungan (1:1) Sales_order dengan Penjualan

c. Purchase_order dengan pembelian

Gambar 4.23 Hubungan (1:1) Purchase_order dengan pembelian d. Penjualan dengan barang_keluar

Gambar 4.24 Hubungan (1:1) Penjualan dengan Barang_keluar 5. Mengidentifikasi tipe relasi binary many-to-many (*:*)

a. Produk dengan quotation_order

(30)

4.1.2.3 Memvalidasi Relasi Menggunakan Normalisasi

Dapat dilihat proses normalisasi antar entitas yang terjadi sebagai berikut :

1. Pelanggan UNF

Pelanggan (@Id_pelanggan ,Nama_pelanggan,

Alamat_pelanggan, kota, Kodepos_pelanggan, Notelp_pelanggan, Nohp_pelanggan, Nofak_pelanggan, Email_pelanggan)

1NF

Pelanggan (@Id_pelanggan ,Nama_pelanggan,

Alamat_pelanggan, kota, Kodepos_pelanggan, Notelp_pelanggan, Nohp_pelanggan, Nofak_pelanggan, Email_pelanggan)

2NF

Pelanggan (@Id_pelanggan ,Nama_pelanggan,

Alamat_pelanggan, Kodepos_pelanggan,

Notelp_pelanggan, Nohp_pelanggan, Nofak_pelanggan, Email_pelanggan, Id_kota)

kota (@Id_kota, Nama_kota, Negara, provinsi) 3NF

Pelanggan (@Id_pelanggan ,Nama_pelanggan, Alamat_pelanggan, id_kota, Kodepos_pelanggan, Notelp_pelanggan, Nohp_pelanggan, Nofak_pelanggan, Email_pelanggan, Id_kota)

Kota (@Id_kota, Nama_kota, Negara, Id_provinsi) Provinsi (@Id_provinsi, Nama_provinsi)

2. Karyawan UNF

Karyawan (@Id_karyawan, Nama_karyawan, Alamat_karyawan, Notelp_karyawan, Nohp_karyawan, username, Password, Jabatan, Hak)

(31)

1NF

Karyawan (@Id_karyawan, Nama_karyawan,

Alamat_karyawan, Notelp_karyawan, Nohp_karyawan, username, Password, Jabatan, Hak)

2NF

Karyawan (@Id_karyawan, Nama_karyawan, Alamat_karyawan, Notelp_karyawan, Nohp_karyawan, username, Password, Id_jabatan, Hak)

Jabatan(@Id_jabatan, Nama_jabatan) 3NF

Karyawan (@Id_karyawan, Nama_karyawan, Alamat_karyawan, Notelp_karyawan, Nohp_karyawan, username, Password, Id_jabatan, Id_hak)

Jabatan (@Id_jabatan, Nama_jabatan) Hak (@Id_hak, Nama_hak)

3. Pemasok UNF

Pemasok (@Id_pemasok, Nama_pemasok,

Alamat_pemasok, kota, Notelp_pemasok,

Nofax_pemasok, Email_pemasok) 1NF

Pemasok (@Id_pemasok, Nama_pemasok,

Alamat_pemasok, kota, Notelp_pemasok,

Nofax_pemasok, Email_pemasok) 2NF

Pemasok (@Id_pemasok, Nama_pemasok, Alamat_pemasok, Notelp_pemasok, Nofax_pemasok, Email_pemasok, Id_kota)

Kota (@Id_kota, Nama_kota, Negara, provinsi) 3NF

Pemasok (@Id_pemasok, Nama_pemasok,

Alamat_pemasok, Id_kota, Notelp_pemasok,

Nofax_pemasok, Email_pemasok)

(32)

Provinsi (@Id_provinsi, Nama_provinsi) 4. Provinsi

UNF

Provinsi (@Id_provinsi, Nama_provinsi) 1NF

Dalam relasi provinsi tidak terdapat repeating group sehingga relasi sudah berada pada 1NF

2NF

Dalam relasi provinsi tidak terdapat partial dependency sehingga relasi sudah berada pada 2NF

3NF

Dalam relasi provinsi tidak terdapat transitif depedency sehingga relasi sudah berada pada 3NF

5. Kota UNF

kota (@Id_kota, Nama_kota, Negara, provinsi) 1NF

kota (@Id_kota, Nama_kota, Negara, provinsi) 2NF

kota (@Id_kota, Nama_kota, Negara, Id_provinsi) Provinsi (@Id_provinsi, Nama_provinsi)

3NF

kota (@Id_kota, Nama_kota, Negara, Id_provinsi) Provinsi (@Id_provinsi, Nama_provinsi)

6. Hak UNF

Hak (Id_hak, Nama_hak) 1NF

Dalam relasi Hak tidak terdapat repeating group sehingga relasi sudah berada pada 1NF

2NF

Dalam relasi Hak tidak terdapat partial dependency sehingga relasi sudah berada pada 2NF

(33)

Dalam relasi hak tidak terdapat transitif depedency sehingga relasi sudah berada pada 3NF

7. Jabatan UNF

Jabatan (@Id_jabatan, Nama_jabatan) 1NF

Dalam relasi jabatan tidak terdapat repeating group sehingga relasi sudah berada pada 1NF

2NF

Dalam relasi jabatan tidak terdapat partial dependency sehingga relasi sudah berada pada 2NF

3NF

Dalam relasi jabatan tidak terdapat transitif depedency sehingga relasi sudah berada pada 3NF

8. Quotation order

UNF

Quotation Order (@Id_Quo, No_quo, IDKaryawan, IDPelanggan, IDProduk, Nama_proyek, Tanggal_quo, Qty, Harga_indo_before, Harga_dolar_before,

Harga_indo_after, Harga_dolar_after, Disc, QuotationMemo)

1NF

Quotation Order (@Id_Quo, No_quo, Id_Karyawan, Id_Pelanggan, Id_Produk, Nama_proyek, Tanggal_quo, QuotationMemo)

Detil Quotation (id_detil_quo, Id_Quo, Id_produk, qty, harga_indo_before, harga_indo_after, harga_dolar_before, harga_dolar_after, disc,)

2NF

Quotation Order (@Id_Quo, No_quo, Id_Karyawan, Id_Pelanggan, Id_Produk, Nama_proyek, Tanggal_quo, QuotationMemo)

(34)

Detil Quotation (id_detil_quo, Id_Quo, Id_produk, qty, harga_indo_before, harga_indo_after, harga_dolar_before, harga_dolar_after, disc,)

Produk (@Id_Produk, Nama_produk) 3NF

Quotation Order (@Id_Quo, No_quo, Id_Karyawan, Id_Pelanggan, Id_Produk, Nama_proyek, Tanggal_quo, QuotationMemo)

Detil Quotation (id_detil_quo, Id_Quo, Id_produk, qty, harga_indo_before, harga_indo_after, harga_dolar_before, harga_dolar_after, disc,)

Produk (@Id_Produk, Nama_produk)

Karyawan (@Id_karyawan, Nama_karyawan) Pelanggan (@Id_Pelanggan, Nama_pelanggan) 9. Produk

UNF

Produk (@Id_produk, Nama_produk, Pola, Harga_idr, Harga_usd, Gambar, Id_pemasok)

1NF

Produk (@Id_produk, Nama_produk, Pola, Harga_idr, Harga_usd, Gambar, Id_pemasok)

Detil Quotation (@id_detil_quo, Id_Quo, Id_produk, qty, harga_indo_before, harga_indo_after, harga_dolar_before, harga_dolar_after, disc,)

2NF

Produk (@Id_produk, Nama_produk, Pola, Harga_idr, Harga_usd, Gambar, Id_pemasok)

Detil Quotation (@id_detil_quo, Id_Quo, Id_produk, qty, harga_indo_before, harga_indo_after, harga_dolar_before, harga_dolar_after, disc,)

Quotation Order (@Id_Quo, No_quo, Id_Karyawan, Id_Pelanggan, Id_Produk, Nama_proyek, Tanggal_quo, QuotationMemo)

(35)

Produk (@Id_produk, Nama_produk, Pola, Harga_idr, Harga_usd, Gambar, Id_pemasok)

Detil Quotation (@id_detil_quo, Id_Quo, Id_produk, qty, harga_indo_before, harga_indo_after, harga_dolar_before, harga_dolar_after, disc,)

Quotation Order (@Id_Quo, No_quo, Id_Karyawan, Id_Pelanggan, Id_Produk, Nama_proyek, Tanggal_quo, QuotationMemo)

Pemasok (@Id_pemasok, Nama_pemasok) 10. Stok gudang

UNF

Stok gudang (@Id_stok_gudang, Id_produk, Qty, Tanggal)

1NF

Stok gudang (@Id_stok_gudang, Id_produk, Qty, Tanggal)

2NF

Stok gudang (@Id_stok_gudang, Id_produk, Qty, Tanggal)

Produk (@Id_produk,Nama_produk) 3NF

Dalam relasi stok gudang tidak terdapat transitif depedency sehingga relasi sudah berada pada 3NF 11. Barang masuk

UNF

Barang masuk (@Id_barang_masuk, No_barang_masuk, Id_pembelian, Id_karyawan, Id_quo,

Tanggal_barang_masuk, Quantity_barang_masuk) 1NF

Barang masuk (@Id_barang_masuk, No_barang_masuk, Id_pembelian, Id_karyawan, Id_quo,

Tanggal_barang_masuk, Quantity_barang_masuk) 2NF

(36)

Barang masuk (@Id_barang_masuk, No_barang_masuk, Id_pembelian, Id_karyawan, Id_quo,

Tanggal_barang_masuk, Quantity_barang_masuk) Pembelian (@Id_pembelian)

3NF

Barang masuk (@Id_barang_masuk, No_barang_masuk, Id_pembelian, Id_karyawan, Id_quo,

Tanggal_barang_masuk, Quantity_barang_masuk) Pembelian (@Id_pembelian)

Karyawan (@Id_karyawan, Nama_karyawan) Quotation order (@Id_quo)

12. Barang Keluar UNF

Barang Keluar (@Id_barang_keluar, No_barang_keluar, Id_penjualan, Id_karyawan, Id_quo,

Tanggal_barang_keluar, Quantity_barang_keluar) 1NF

Barang Keluar (@Id_barang_keluar, No_barang_keluar, Id_penjualan, Id_karyawan, Id_quo,

Tanggal_barang_keluar, Quantity_barang_keluar) 2NF

Barang Keluar (@ Id_barang_keluar, No_barang_keluar, Id_penjualan, Id_karyawan, Id_quo,

Tanggal_barang_keluar, Quantity_barang_keluar) Penjualan (@Id_penjualan)

3NF

Barang Keluar (@ Id_barang_keluar, No_barang_keluar, Id_penjualan, Id_karyawan, Id_quo,

Tanggal_barang_keluar, Quantity_barang_keluar) Penjualan (@Id_penjualan)

Karyawan (@Id_karyawan, Nama_Karyawan) Quotation order (@Id_quo)

(37)

13. Penjualan UNF

Penjualan (@Id_penjualan, No_penjualan, Tanggal_pemjualan, Id_so, Id_karyawan, Harga_penjualan)

1NF

Penjualan (@Id_penjualan, No_penjualan, Tanggal_pemjualan, Id_so, Id_karyawan, Harga_penjualan)

2NF

Penjualan (@Id_penjualan, No_penjualan, Tanggal_pemjualan, Id_so, Id_karyawan, Harga_penjualan)

Sales order (@Id_so, No_so) 3NF

Penjualan (@Id_penjualan, No_penjualan, Tanggal_pemjualan, Id_so, Id_karyawan, Harga_penjualan)

Sales order (@Id_so, No_so)

Karyawan (@Id_karyawan, Nama_karyawan) 14. Pembelian

UNF

Pembelian (@Id_pembelian, No_pembelian, Tanggal_pembelian, Id_po, Harga_pembelian) 1NF

Pembelian (@Id_pembelian, No_pembelian, Tanggal_pembelian, Id_po, Harga_pembelian) 2NF

Pembelian (@Id_pembelian, No_pembelian, Tanggal_pembelian, Id_po, Harga_pembelian) Purchase_order (@id_po, No_po)

3NF

Dalam relasi stok gudang tidak terdapat transitif depedency sehingga relasi sudah berada pada 3NF

(38)

15. Sales order

UNF

Sales order (@Id_so, No_so, Tanggal_so, Deadline_so, Memo_so, Payment_option, Cheque_no, Id_karyawan, Id_Quo)

1NF

Sales order (@Id_so, No_so, Tanggal_so, Deadline_so, Memo_so, Payment_option, Cheque_no, Id_karyawan, Id_Quo)

2NF

Sales order (@Id_so, No_so, Tanggal_so, Deadline_so, Memo_so, Payment_option, Cheque_no, Id_karyawan, Id_Quo)

Quotation order (@Id_quo, No_quo) 3NF

Sales order (@Id_so, No_so, Tanggal_so, Deadline_so, Memo_so, Payment_option, Cheque_no, Id_karyawan, Id_Quo)

Quotation order (@Id_quo, No_quo)

Karyawan (@Id_karyawan, Nama_karyawan)

16. Purchase order

UNF

Purchase order (@Id_po, No_po, Id_so, Id_pemasok, Tanggal_po, Tanggal_deadline, Id_karyawan, Term) 1NF

Purchase order (@Id_po, No_po, Id_so, Id_pemasok, Tanggal_po, Tanggal_deadline, Id_karyawan, Term) 2NF

Purchase order (@Id_po, No_po, Id_so, Id_pemasok, Tanggal_po, Tanggal_deadline, Id_karyawan, Term) Sales order (@Id_so, No_so)

3NF

Purchase order (@Id_po, No_po, Id_so, Id_pemasok, Tanggal_po, Tanggal_deadline, Id_karyawan, Term)

(39)

Sales order (@Id_so, No_so)

Karyawan (@Id_karyawan, Nama_karyawan) Pemasok (@Id_pemasok, Nama_pemasok)

4.1.2.4 Memeriksa Batasan – Batasan Integritas 1. Quotation_order

Quotation_order (id_quo, no_quo, nama_proyek, tanggal_quo, memo_quo)

Primary Key : id_quo

ForeignKey : id_pelanggan references pelanggan (id_pelanggan)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_karyawan references karyawan (id_karyawan)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_detil_quo references detil_quo (id_detil_quo)

ON DELETE CASCADE ON UPDATE CASCADE 2. Sales_order

SalesOrder (id_so, no_so, tanggal_so, deadline_so, memo_so, Payment_option, Cheque_no)

Primary Key : id_so

ForeignKey : id_pelanggan references pelanggan (id_pelanggan)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_karyawan references karyawan (id_karyawan)

ON DELETE CASCADE ON UPDATE CASCADE 3. Purchase_order

Purchase_order (id_po, no_po, tanggal_po, tanggal_deadline, term)

(40)

ForeignKey : id_pemasok references pemasok (id_pemasok)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_so references sales_order (id_so) ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_karyawan references karyawan (id_karyawan)

ON DELETE CASCADE ON UPDATE CASCADE 4. Pelanggan

Pelanggan (Id_pelanggan ,nama_pelanggan,

alamat_pelanggan, kodepos_pelanggan, notelp_pelanggan, nohp_pelanggan, nofak_pelanggan, email_pelanggan) Primary Key : id_pelanggan

ForeignKey : id_kota references kota (id_kota) ON DELETE CASCADE ON UPDATE CASCADE 5. Karyawan

Karyawan (id_karyawan, nama_karyawan,

alamat_karyawan, notelp_karyawan, nohp_karyawan, username, password)

Primary Key : id_karyawan

ForeignKey : id_hak references hak (id_hak) ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_jabatan references jabaran (id_jabatan) ON DELETE CASCADE ON UPDATE CASCADE 6. Pemasok

Pemasok (id_pemasok, nama_pemasok, alamat_pemasok, notelp_pemasok, nofax_pemasok, email_pemasok)

Primary Key : id_pemasok

ForeignKey : id_kota references kota (id_kota) ON DELETE CASCADE ON UPDATE CASCADE 7. Produk

Produk (id_produk, nama_produk, pola, harga_idr, harga_usd, gambar)

(41)

ForeignKey : id_pemasok references pemasok (id_pemasok)

ON DELETE CASCADE ON UPDATE CASCADE 8. Penjualan

Penjualan (id_penjualan, no_penjualan, tanggal_pemjualan, Id_so, Harga_penjualan) Primary Key : id_penjualan

ForeignKey : id_so references sales_order (id_so) ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_karyawan references karyawan (id_karyawan)

ON DELETE CASCADE ON UPDATE CASCADE 9. Pembelian

Pembelian (id_pembelian, no_pembelian, tanggal_pembelian, Harga_pembelian) Primary Key : id_pembelian

ForeignKey : id_po references purchase_order (id_po) ON DELETE CASCADE ON UPDATE CASCADE 10. Barang keluar

Barang_keluar (Id_barang_keluar, No_barang_keluar, Tanggal_barang_keluar, Quantity_barang_keluar) Primary Key : id_barang_keluar

ForeignKey : id_penjualan references penjualan (id_penjualan)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_karyawan references karyawab (id_karyawan)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_quo references quotation_order (id_quo) ON DELETE CASCADE ON UPDATE CASCADE 11. Barang masuk

Barang_masuk (Id_barang_masuk, No_barang_masuk, Tanggal_barang_masuk, Quantity_barang_masuk) Primary Key : id_barang_masuk

(42)

ForeignKey : id_penjualan references penjualan (id_penjualan)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_karyawan references karyawab (id_karyawan)

ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_quo references quotation_order (id_quo) ON DELETE CASCADE ON UPDATE CASCADE 12. Stok gudang

Stok_gudang (id_stok_gudang, qty_produk) Primary Key : id_stok_gudang

ForeignKey : id_produk references produk (id_produk) ON DELETE CASCADE ON UPDATE CASCADE 13. Detil quotation

Detil_quo (id_detil_quo, Id_Quo, Id_produk, qty,

harga_indo_before, harga_indo_after, harga_dolar_before, harga_dolar_after, disc,)

Primary Key : id_detil_quo

ForeignKey : id_quo references quotation_order (id_quo) ON DELETE CASCADE ON UPDATE CASCADE ForeignKey : id_produk references produk (id_produk) ON DELETE CASCADE ON UPDATE CASCADE 14. Provinsi

Provinsi (id_provinsi, nama_provinsi) Primary Key : id_provinsi

15. Kota

Kota (id_kota, nama_kota, negara) Primary Key : id_kota

ForeignKey : id_provinsi references provinsi (id_provinsi) ON DELETE CASCADE ON UPDATE CASCADE 16. Hak

Hak (id_hak, hak_user) Primary Key : id_hak 17. Jabatan

(43)

Jabatan (id_jabatan, nama_jabaran) Primary Key : id_jabatan

4.1.2.5Entity Relationship Diagram Logical Global

Gambar 4.27 ERD Logical Global

D ib u a t D ib u a t D il a k u k a n D il a k u k a n D il a k u k a n M e li b a tk a n M e m il ik i M e lib a tk a n M e m il ik i D im ilik i M e li b a tk a n M e li b a tk a n

(44)

4.1.3 Perancangan fisikal

Langkah dalam perancangan basis data fisikal terdiri dari beberapa tahap perancangan (Connnolly dan Begg, 2010) yaitu :

1. Menterjemahkan model data logikal untuk DBMS yang ditargetkan

a.Merancang relasi dasar

b. Merancang representasi derivied data c.Merancang batasan perusahaan

2. Merancang indeks dan organisasi file a.Menganalisa transaksi

b. Memilih organisasi file c.Memilih indeks

d. Memperkirakan kebutuhan ruang penyimpanan 3. Merancang tampilan pengguna

4. Merancang mekanisme keamanan

5. Mempertimbangkan pengenalan redudansi yang terkontrol 6. Memonitor dan menyesuaikan operational system

4.1.3.1 Perancangan Relasi Dasar

1. Karyawan

Domain D_id_karyawan : integer, length

10, Auto

Increment

Domain D_nama_karyawan : variable length

character string, length 100

Domain D_username : variable length

character string, length 30

Domain D_pasword : variable length

character string, length 255

(45)

Domain D_email_karyawan : variable length character string, length 30

Domain D_alamat_karyawan : Text

Domain D_notelp_karyawan : variable length

character string, length 15

Domain D_nohp_karyawan : variable length

character string, length 15

Domain D_id_jabatan : integer, length

10, Auto

Increment

Domain D_id_hak : integer, length

10, Auto

Increment Karyawan(

Id_karyawan D_id_karyawan NOT

NULL,

Username D_username NOT

NULL,

Password D_password NOT

NULL,

Nama_karyawan D_nama_karyawan NOT

NULL,

Alamat_karyawan D_alamat_karyawan NOT

NULL,

Notelp_karyawan D_notelp_karyawan NOT

NULL,

Nohp_karyawan D_nohp_karyawan NOT

NULL,

email_karyawan D_email_karyawan NULL,

Id_jabatan D_id_jabatan NOT NULL,

(46)

FOREIGN KEY (id_jabatan) references jabatan(id_jabatan) ON UPDATE CASCADE ON DELETE NO ACTION FOREIGN KEY (id_hak) references hak(id_hak) ON UPDATE CASCADE ON DELETE NO ACTION );

2. Pelanggan

Domain D_id_pelanggan : integer, length

10, Auto

Increment

Domain D_nama_pelanggan : variable length

character string, length 50

Domain D_email_pelanggan : variable length

character string, length 30

Domain D_alamat_pelanggan : Text

Domain D_notelp_pelanggan : variable length character string, length 15

Domain D_nohp_pelanggan : variable length

character string, length 15

Domain D_nofax_pelanggan : variable length

character string, length 15

Domain D_kodepos_pelanggan : variable length character string, length 7

Domain D_id_kota : integer, length

10, Auto

Increment Karyawan(

Id_pelanggan D_id_pelanggan NOT

(47)

Nama_pelanggan D_nama_pelanggan NOT NULL,

Alamat_pelanggan D_alamat_pelanggan NOT NULL, Notelp_pelanggan D_notelp_pelanggan NOT NULL, Email_pelanggan D_email_pelanggan NOT NULL, Nohp_karyawan D_nohp_pelanggan NOT NULL, Nofax_pelanggan D_nofax_pelanggan NULL, kodepos_pelangganD_kodepos_pelanggan NOT NULL, IDd_kota D_kota NOTNUL PRIMARY KEY (id_pelanggan),

FOREIGN KEY (id_kota) references kota(id_kota) ON UPDATE CASCADE ON DELETE NO ACTION );

3. Pemasok

Domain D_id_pemasok : integer, length

10, Auto

Increment

Domain D_nama_pemasok : variable length

character string, length 50

Domain D_email_karyawan : variable length

character string, length 30

Domain D_alamat_karyawan : Text

Domain D_notelp_pemasok : variable length

character string, length 15

Domain D_nofax_pemasok : variable length

character string, length 15

Domain D_id_kota : integer, length

10, Auto

Increment Pemasok(

(48)

Id_pemasok D_id_pemasok NOT NULL,

Nama_pemasok D_nama_pemasok NOT

NULL,

Alamat_pemasok D_alamat_pemasok NOT

NULL,

Notelp_pemasok D_notelp_pemasok NOT

NULL,

Nofax_pemasok D_nofax_pemasok NOT

NULL,

email_pemasok D_email_karyawan NULL,

Id_kota D_id_kota NOT NULL,

PRIMARY KEY (id_pemasok),

FOREIGN KEY (id_kota) references kota(id_kota) ON UPDATE CASCADE ON DELETE NO ACTION );

4. Produk

Domain D_id_produk : integer, length

10, Auto

Increment

Domain D_nama_produk : variable length

character string, length 200

Domain D_Harga_idr : integer

Domain D_harga_usd : integer

Domain D_pola : variable length

character string, length 150

Domain D_gambar : variable length

character string, length 100

Domain D_id_pemasok : integer, length

10, Auto

(49)

Produk(

Id_produk D_id_pemasok NOT

NULL,

Nama_produk D_nama_pemasok NOT

NULL,

pola D_pola NOT

NULL,

gambar D_gambar NOT

NULL,

harga_idr D_harga_idr NOT

NULL,

harga_usd D_harga_usd NULL,

Id_pemasok D_id_pemasok NOT NULL,

PRIMARY KEY (id_produk),

FOREIGN KEY (id_pemasok) references pemasok (id_pemasok) ON UPDATE CASCADE ON DELETE NO ACTION

);

5. Quotation_order

Domain D_id_quo : integer, length

10, Auto

Increment

Domain D_no_quo : variable length

character string, length 30, format [Q][U][O][0- 9][0-9][0-9][0-9][0-9][0-9][0-9]

Domain D_nama_proyek : variable length

character string, length 200

(50)

Domain D_tanggal_quo: date, length 8, format yyyy-mm-dd

Domain D_memo_quo: text

Domain D_id_pelanggan : integer, length

10, Auto

Increment

Domain D_id_karyawan : integer, length

10, Auto

Increment

Domain D_id_pelanggan : integer, length

10, Auto

Increment Quotation_order(

Id_quo D_id_quo NOT

NULL,

No_quo D_no_quo NOT

NULL,

Nama_proyek D_nama_proyek NOT

NULL,

Tanggal_quo D_tanggal_quo NOT

NULL,

Memo_quo D_memo_quo NOT

NULL,

Id_pelanggan D_id_pelanggan NOT

NULL,

Id_karyawan D_id_karyawan NOT NULL, PRIMARY KEY (id_pelanggan),

FOREIGN KEY (id_pelanggan) references pelanggan (id_pelanggan) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_karyawn) references karyawab

(id_karyawan) ON UPDATE CASCADE ON DELETE NO ACTION );

(51)

6. Sales_order

Domain D_id_so : integer, length

10, Auto

Increment

Domain D_no_so : variable length

character string, length 30, format [S][O][0-9][0- 9][0-9][0-9][0-9][0-9][0-9], generate by system

Domain D_tanggal_so : date, length 8,

format yyyy-mm-dd

Domain D_deadline_so : date, length 8,

format yyyy-mm-dd

Domain D_memo_so : text

Domain D_payment_option : variable length

character string, length 10, format : cheque/cash

Domain D_cheque_no : variable length

character string, length 40

Domain D_id_karyawan : integer, length

10, Auto

Increment

Domain D_id_quo : integer, length

10, Auto

Increment Sales_order(

(52)

Id_so D_id_so NOT NULL,

No_so D_no_so NOT

NULL,

Tanggal_so D_tanggal_so NOT

NULL,

deadline_so D_deadline_so NOT

NULL,

Memo_quo D_memo_so NOT

NULL,

Payment_option D_payment_option NOT

NULL,

Cheque_no D_cheque_no NOT

NULL,

Id_karyawan D_id_karyawan NOT

NULL,

Id_quo D_id_karyawan NOT

NULL,

PRIMARY KEY (id_so),

FOREIGN KEY (id_karyawan) references karyawan (id_karyawan) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_quo) references quotation_order (id_quo) ON UPDATE CASCADE ON DELETE NO ACTION );

7. Purchase_order

Domain D_id_po : integer, length

10, Auto

Increment

Domain D_no_po : variable length

character string, length 30, format [P][O][0-9][0-

(53)

9][0-9][0-9][0-9][0-9][0-9],

generate by

system

Domain D_id_pemasok : integer, length

10, Auto

Increment

Domain D_id_so : integer, length

10, Auto

Increment

Domain D_tanggal_po : date, length 8,

format yyyy-mm-dd

Domain D_deadline_po : date, length 8,

format yyyy-mm-dd

Domain D_term : variable length

character string, length 20

Domain D_id_karyawan : integer, length

10, Auto

Increment Purchase_order(

Id_po D_id_po NOT

NULL,

No_po D_no_po NOT

NULL,

Tanggal_so D_tanggal_so NOT

NULL,

deadline_so D_deadline_so NOT

NULL,

Id_karyawan D_id_karyawan NOT

(54)

Id_so D_id_so NOT NULL,

Id_pemasok D_id_pemasok NOT

NULL,

PRIMARY KEY (id_po),

FOREIGN KEY (id_karyawan) references karyawan (id_karyawan) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_so) references sales_order (id_so) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_pemasok) references pemasok (id_pemasok) ON UPDATE CASCADE ON DELETE NO ACTION

);

8. Penjulan

Domain D_id_penjualan : integer, length

10, Auto

Increment

Domain D_no_penjualan : variable length

character string, length 15, format [P][E][0-9][0- 9][0-9][0-9][0-9][0-9][0-9], generate by system

Domain D_tanggal_penjualan : date, length 8, format yyyy-mm-dd

Domain D_harga_penjualan : variable length

character string, length 20

(55)

Domain D_id_so : integer, length

10, Auto

Increment

Domain D_id_karyawan : integer, length

10, Auto

Increment Penjualan (

Id_penjualan D_id_penjualan NOT

NULL,

No_penjualan D_no_penjualan NOT

NULL,

Tanggal_penjualan D_tanggal_so NOT

NULL,

harga_penjualan D_harga_penjualan NOT NULL,

Id_so D_id_so NOT

NULL,

Id_karyawan D_id_karyawan NOT

NULL,

PRIMARY KEY (id_penjualan),

FOREIGN KEY (id_karyawan) references karyawan (id_karyawan) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_so) references sales_order (id_so) ON UPDATE CASCADE ON DELETE NO ACTION

);

9. Pembelian

Domain D_id_pembelian : integer, length

10, Auto

Increment

Domain D_no_pembelian : variable length

character string, length 15, format

(56)

[P][E][0-9][0- 9][0-9][0-9][0-9][0-9][0-9],

generate by

system

Domain D_tanggal_penjualan : date, length 8, format yyyy-mm-dd

Domain D_harga_penjualan : variable length

character string, length 20

Domain D_id_po : integer, length

10, Auto

Increment Pembelian (

Id_pembelian D_id_pembelian NOT

NULL,

No_ pembelian D_no_ pembelian NOT

NULL,

Tanggal_ pembelian D_tanggal_ pembelian NOT NULL,

harga_ pembelian D_harga_ pembelian NOT NULL,

Id_po D_id_po NOT

NULL,

PRIMARY KEY (id_pembelian),

FOREIGN KEY (id_po) references purchase_order (id_po) ON UPDATE CASCADE ON DELETE NO ACTION );

(57)

10.Barang_masuk

Domain D_id_barang_masuk : integer, length

10, Auto

Increment

Domain D_no_barang_masuk : variable length

character string, length 15, format [B][M][0-9][0- 9][0-9][0-9][0-9][0-9][0-9], generate by system

Domain D_tanggal_barang_masuk : date, length 8, format yyyy-mm-dd

Domain D_qty_barang_masuk : integer

Domain D_id_pembelian : integer, length

10, Auto

Increment

Domain D_id_karyawan : integer, length

10, Auto

Increment

Domain D_id_quo : integer, length

10, Auto

Increment Barang_masuk (

Id_barang_masuk D_id_barang_masuk NOT

NULL,

No_ barang_masuk D_no_ barang_masuk NOT

NULL,

Tanggal_ barang_masuk D_tanggal_ barang_masuk NOT NULL,

(58)

Qty_barang_masuk D_qty_barang_masuk NOT NULL,

Id_pembelian D_id_pembelian NOT

NULL,

Id_karyawan D_id_karyawan NOT

NULL,

Id_quo D_id_quo NOT

NULL,

PRIMARY KEY (id_barang_masuk),

FOREIGN KEY (id_karyawan) references karyawan (id_karyawan) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_pembelian) references pembelian (id_pembelian) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_quo) references quotation_order (id_quo) ON UPDATE CASCADE ON DELETE NO ACTION

);

11.Barang_keluar

Domain D_id_barang_keluar : integer, length

10, Auto

Increment

Domain D_no_barang_keluar : variable length character string, length 15, format [B][K][0-9][0- 9][0-9][0-9][0-9][0-9][0-9], generate by system

(59)

Domain D_tanggal_barang_keluar : date, length 8, format yyyy-mm-dd

Domain D_qty_barang_keluar : integer

Domain D_id_penjualan : integer, length

10, Auto

Increment

Domain D_id_karyawan : integer, length

10, Auto

Increment

Domain D_id_quo : integer, length

10, Auto

Increment Barang_keluar (

Id_barang_keluar D_id_barang_keluar NOT NULL,

No_ barang_keluar D_no_ barang_kelauarNOT NULL,

Tanggal_ barang_keluar D_tanggal_ barang_keluar NOT NULL,

Qty_barang_keluar D_qty_barang_keluar NOT NULL,

Id_penjualan D_id_penjualan NOT

NULL,

Id_karyawan D_id_karyawan NOT

NULL,

Id_quo D_id_quo NOT

NULL,

PRIMARY KEY (id_barang_keluar),

FOREIGN KEY (id_karyawan) references karyawan (id_karyawan) ON UPDATE CASCADE ON DELETE NO ACTION

(60)

FOREIGN KEY (id_pembelian) references pembelian (id_pembelian) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_quo) references quotation_order (id_quo) ON UPDATE CASCADE ON DELETE NO ACTION );

12.Stok_gudang

Domain D_id_stok_gudang : integer, length

10, Auto

Increment

Domain D_qty_produk : integer

Domain D_id_produk : integer

Stok_gudang (

Id_stok_gudang D_id_stok_gudang NOT

NULL,

Qty_produk D_no_ qty_produk NOT

NULL,

Id_produk D_id_produk NOT

NULL,

PRIMARY KEY (id_stok_gudang),

FOREIGN KEY (id_produk) references produk

(id_produk) ON UPDATE CASCADE ON DELETE NO ACTION

);

13. Detil_quotation

Domain D_id_Detil_quotation integer, length

10, Auto

Increment

Domain D_id_produk : integer, length

10, Auto

Increment

Domain D_id_quo : integer, length

10, Auto

(61)

Domain D_qty: integer

Domain D_harga_indo_before : decimal (10,0) Domain D_harga_indo_after : decimal (10,0) Domain D_harga_dolar_before : decimal (10,0) Domain D_harga_dolar_after : decimal (10,0)

Domain D_disc : integer

Detil_quo (

id_ detil_quo D_id_ quo NOT

NULL,

id_ quo D_id_ quo NOT

NULL,

Id_produk D_id_produk NOT

NULL,

Qty D_qty NOT

NULL,

Harga_indo_before D_ Harga_indo_before NOT NULL

Harga_indo_after D_ Harga_indo_after NOT NULL

Harga_dolar_before D_ Harga_dolar_before NOT NULL

harga_dolar_after D_ harga_dolar_after NOT NULL

disc D_disc NULL,

PRIMARY KEY (id_detil_quo),

FOREIGN KEY (id_quo) references quotation_order (id_quo) ON UPDATE CASCADE ON DELETE NO ACTION

FOREIGN KEY (id_produk) references produk

(id_produk) ON UPDATE CASCADE ON DELETE NO ACTION

(62)

); 14.Hak

Domain D_id_hak: integer, length

10, Auto

Increment

Domain D_hak_user : variable length

character string, length 10

Hak (

Id_hak D_id_detil_jahitan NOT

NULL,

id_ hak_user D_id_ quo NOT

NULL,

PRIMARY KEY (id_hak) ); 15.Jabatan

Domain D_id_jabartan: integer, length

10, Auto

Increment

Domain D_nama_jabatan : variable length

character string, length 10

Hak (

Id_jabatan D_id_jabatan NOT

NULL,

id_ nama_jabatan D_nama_jabatan NOT

NULL,

PRIMARY KEY (id_jabatan) );

16.Kota

Domain D_id_kota: integer, length

10, Auto

(63)

Domain D_nama_kota : variable length character string, length 100

Domain D_nama_negara : variable length

character string, length 30

Domain D_id_provinsi : integer, length

10, Auto

Increment Hak (

Id_kota D_id_kota NOT

NULL,

id_ nama_kota D_nama_kota NOT

NULL,

Id_provinsi D_id_provinsi NOT

NULL,

id_ negara D_negara NOT

NULL,

PRIMARY KEY (id_kota)

FOREIGN KEY (id_provinsi) references

provinsi(id_provinsi) ON UPDATE CASCADE ON DELETE NO ACTION );

17.Provinsi

Domain D_id_provinsi : integer, length

10, Auto

Increment

Domain D_nama_provinsi : variable length

character string, length 10

Hak (

Id_provinsi D_id_provinsi NOT

NULL,

Id_ nama_provinsi D_nama_provinsi NOT

(64)

PRIMARY KEY (id_jabatan) );

4.1.3.2 Query DDL dan DML CREATE TABLE `tbl_barang_keluar` (

`id_barang_keluar` int(10) NOT NULL AUTO_INCREMENT COMMENT 'ID Barang Keluar',

`no_barang_keluar` varchar(15) NOT NULL COMMENT 'No.Barang Keluar',

`tanggal_barang_keluar` date NOT NULL COMMENT 'Tanggal Barang Keluar',

`qty_barang_keluar` int(10) NOT NULL COMMENT 'Jumlah Barang Keluar',

`id_karyawan` int(10) NOT NULL COMMENT 'ID Karyawan',

`id_penjualan` int(10) NOT NULL COMMENT 'ID Penjualan',

`id_quotation` int(10) NOT NULL COMMENT 'ID Quotation',

PRIMARY KEY (`id_barang_keluar`),

KEY `fk_penjualan_2` (`id_penjualan`),

KEY `fk_karyawan_5` (`id_karyawan`),

KEY `fk_quo_bk` (`id_quotation`),

CONSTRAINT `fk_karyawan_5` FOREIGN KEY (`id_karyawan`) REFERENCES `tbl_karyawan` (`id_karyawan`) ON DELETE CASCADE ON UPDATE CASCADE,

CONSTRAINT `fk_penjualan_2` FOREIGN KEY (`id_penjualan`) REFERENCES `tbl_penjualan` (`id_penjualan`) ON DELETE CASCADE ON UPDATE CASCADE,

CONSTRAINT `fk_quo_bk` FOREIGN KEY (`id_quotation`) REFERENCES `tbl_quotation_order` (`id_quo`) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;

(65)

LOCK TABLES `tbl_barang_keluar` WRITE; insert into `tbl_barang_keluar`(`id_barang_keluar`,`no_barang_keluar`,`tanggal_bar ang_keluar`,`qty_barang_keluar`,`id_karyawan`,`id_penjualan`,`id_quotat ion`) values (1,'BK-0948688949','2014-01-31',14,3,1,1); UNLOCK TABLES;

/*Table structure for table `tbl_barang_masuk` */

CREATE TABLE `tbl_barang_masuk` (

`id_barang_masuk` int(10) NOT NULL AUTO_INCREMENT COMMENT 'ID Barang Masuk',

`no_barang_masuk` varchar(15) NOT NULL COMMENT 'No.Barang Masuk',

`tanggal_barang_masuk` date NOT NULL COMMENT 'Tanggal Barang Masuk',

`qty_barang_masuk` int(10) NOT NULL COMMENT 'Jumlah Barang Masuk',

`id_pembelian` int(10) NOT NULL COMMENT 'ID Pembelian',

`id_karyawan` int(10) NOT NULL COMMENT 'ID Karyawan',

`id_quotation` int(10) NOT NULL COMMENT 'ID Quotation',

PRIMARY KEY (`id_barang_masuk`),

KEY `fk_pembelian` (`id_pembelian`),

KEY `fk_karyawan_4` (`id_karyawan`),

KEY `fk_quo` (`id_quotation`),

CONSTRAINT `fk_karyawan_4` FOREIGN KEY (`id_karyawan`) REFERENCES `tbl_karyawan` (`id_karyawan`) ON DELETE CASCADE ON UPDATE CASCADE,

(66)

CONSTRAINT `fk_pembelian` FOREIGN KEY (`id_pembelian`) REFERENCES `tbl_pembelian` (`id_pembelian`) ON DELETE CASCADE ON UPDATE CASCADE,

CONSTRAINT `fk_quo` FOREIGN KEY (`id_quotation`) REFERENCES `tbl_quotation_order` (`id_quo`) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;

/*Data for the table `tbl_barang_masuk` */

LOCK TABLES `tbl_barang_masuk` WRITE;

insert into `tbl_barang_masuk`(`id_barang_masuk`,`no_barang_masuk`,`tanggal_bar ang_masuk`,`qty_barang_masuk`,`id_pembelian`,`id_karyawan`,`id_quot ation`) values (1,'BM-0594807864','2014-01-27',14,1,3,1); insert into `tbl_barang_masuk`(`id_barang_masuk`,`no_barang_masuk`,`tanggal_bar ang_masuk`,`qty_barang_masuk`,`id_pembelian`,`id_karyawan`,`id_quot ation`) values (2,'BM-7772692335','2014-01-27',10,2,3,2); UNLOCK TABLES;

/*Table structure for table `tbl_detail_quo` */

CREATE TABLE `tbl_detail_quo` (

`id_detil_quo` int(10) NOT NULL AUTO_INCREMENT COMMENT 'ID Detil Quotation Order',

`id_quo_fk` int(10) NOT NULL COMMENT 'ID Quotation Order',

(67)

`harga_indo_before` decimal(10,0) NOT NULL COMMENT 'Harga Rupiah (Before)',

`harga_dolar_before` decimal(10,0) NOT NULL COMMENT 'Harga Dolar (Before)',

`disc` int(10) DEFAULT NULL COMMENT 'Diskon',

`harga_indo_after` decimal(10,0) NOT NULL COMMENT 'Harga Rupiah (After)',

`harga_dolar_after` decimal(10,0) NOT NULL COMMENT 'Harga Dolar (After)',

`id_produk` int(10) NOT NULL COMMENT 'ID Produk',

PRIMARY KEY (`id_detil_quo`),

KEY `fk_quo` (`id_quo_fk`),

KEY `fk_produk` (`id_produk`),

CONSTRAINT `fk_produk` FOREIGN KEY (`id_produk`)

REFERENCES `tbl_produk` (`id_produk`) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;

/*Data for the table `tbl_detail_quo` */

LOCK TABLES `tbl_detail_quo` WRITE;

insert into `tbl_detail_quo`(`id_detil_quo`,`id_quo_fk`,`qty`,`harga_indo_before`,`ha rga_dolar_before`,`disc`,`harga_indo_after`,`harga_dolar_after`,`id_produ k`) values (1,1,5,'2840000','237',0,'14200000','1183',31); insert into `tbl_detail_quo`(`id_detil_quo`,`id_quo_fk`,`qty`,`harga_indo_before`,`ha rga_dolar_before`,`disc`,`harga_indo_after`,`harga_dolar_after`,`id_produ k`) values (2,1,2,'1500000','125',0,'3000000','250',32);

(68)

insert into `tbl_detail_quo`(`id_detil_quo`,`id_quo_fk`,`qty`,`harga_indo_before`,`ha rga_dolar_before`,`disc`,`harga_indo_after`,`harga_dolar_after`,`id_produ k`) values (3,1,7,'4850000','404',0,'33950000','2829',34); insert into `tbl_detail_quo`(`id_detil_quo`,`id_quo_fk`,`qty`,`harga_indo_before`,`ha rga_dolar_before`,`disc`,`harga_indo_after`,`harga_dolar_after`,`id_produ k`) values (4,2,10,'4850000','404',0,'48500000','4042',34); UNLOCK TABLES;

/*Table structure for table `tbl_hak` */

CREATE TABLE `tbl_hak` (

`id_hak` int(10) NOT NULL AUTO_INCREMENT COMMENT 'ID Hak User',

`hak_user` varchar(20) NOT NULL COMMENT 'Hak User',

PRIMARY KEY (`id_hak`)

) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;

/*Data for the table `tbl_hak` */

LOCK TABLES `tbl_hak` WRITE;

insert into `tbl_hak`(`id_hak`,`hak_user`) values (1,'Admin');

insert into `tbl_hak`(`id_hak`,`hak_user`) values (2,'Pembelian');

insert into `tbl_hak`(`id_hak`,`hak_user`) values (3,'Penjualan');

Gambar

Tabel 4.4 Identifikasi Domain Atribut
Gambar 4.2 ERD Konseptual dengan Primary Key
Gambar 4.3 ERD Konseptual dengan Jalur-jalur Transaksi  4.1.2 Perancangan Logical
Gambar 4.4 Hubungan Produk dengan Quotation_order  2.  Menghilangkan tipe hubungan rekursif many-to-many
+7

Referensi

Dokumen terkait

BK berurusan dengan hal-hal yang menyangkut pengaruh kondisi mental atau fisik individu terhadap penyesuaian dirinya dirumah, disekolah serta dalam kaitannya dengan kontak sosial

Pengaruh positif tersebut menandakan bahwa, apabila dana perimbangan naik dan pendapatan asli daerah naik, maka alokasi untuk belanja daerah juga akan bertambah

Gotovo pa nanj vpliva, saj je bil vpliv zmanjšanega prometa na kakovost zraka viden že nekajkrat v človeški zgodovini Olimpijske igre v Atlanti leta 1996, Olimpijske igre v Pekingu

Harapan untuk hasil belajar yang lebih baik dan meninjau fisika sebagai fondasi IPTEK, dapat dilakukan dengan model pembelajaran inquiry training disertai dengan media

Tujuan dari penelitian menganalisis perbedaan status gizi, persen lemak tubuh, dan massa otot atlet dari empat cabang olahraga yang berbeda, yaitu atletik, renang, sepak bola,

Dari identifikasi dan klarifikasi pada tabel di atas ditemukan beberapa tanda dengan tipe ikon pada poster, dimana tanda ikon (A) berupa gambar pemain wanita, menurut

Triamcinolone acetonide - 4 INDIKASI Mual, muntah Konstipasi Sariawan, radang tenggorokan sariawan berat JUMLAH TIAP JEJUS OBAT PER PASIEN maksimal 20 tablet

Berikut Berikut bukan bukan istilah istilah permainan permainan bola bola basket( basket( kecuali kecuali ………… ………… a. Lempar samping . 6kuran 6kuran lapangan