TUGAS
ARTIKEL
PEMBUATAN FROM MASTER DETAIL MENGGUNAKAN C#
Untuk memenuhi
tugas yang diberikan oleh Dosen Bp Feri Wibowo
Dibuat oleh:
Tiara Giofani Anggasta
1503040063
FAKULTAS TEKNIK
PRDI TEKNIK
INFORMATIKA
UNIVERSITAS
MUHAMMADIYAH PURWOKERTO
2016
BAB I
A.
Pengertian
Master Detail
Master-Detail Form adalah form yang
memiliki dua buah block yang keduanya direlasikan dalam hubungan Master dan
Detail. Dalam ER-Diagram, relasi
Master-Detail ini sama dengan relasi “One to Many”, artinya pada desain
database secara fisik, satu record tunggal dalam table Master memiliki
referensi satu atau lebih record yang ada pada table Detail.
B.
Relasi Antara
Master dan Detail
Biasanya Orang lebih sering menggunakan istilah
Master/Detail. Salah satu contoh data yang memiliki relasi Master/Detail adalah
data “Pesanan” (Master), dan data “Detail Pesanan” (Detail). Contoh lainnya:
data “Mahasiswa” (Master) dengan data “Mata Kuliah yang Diambil” (Detail), dan
sebagainya. Karena data “Master/Detail”, maka relasinya adalah One-To-Many.
Satu record Master bisa memiliki beberapa record Detail.
Semakin beragam dan kompleksnya kebutuhan dalam
pengolahan data yang memiliki relasi Master/Detail di dunia nyata, menyebabkan
relasi data Master/Detail mengalami perkembangan. Relasi yang biasanya hanya
antara satu tabel master dengan satu tabel detail, sekarang menjadi antara satu
tabel master dengan banyak tabel detail. Istilah “Master/Detail” akhirnya mengalami
pergeseran menjadi “Master/Multi-Detail”. Contoh data yang memiliki relasi
“Master/Multi-Detail” adalah data “Karyawan” (Master) dengan data “Kompetensi
Karyawan” (Detail 1), “Pelatihan Karyawan” (Detail 2), “Anggota Keluarga”
(Detail 3), “Penempatan Karyawan” (Detail 4), dan seterusnya.
Contoh lain dari relasi Master-Detail, diantaranya :
A.
Customer Order
dengan beberapa OrderItems.
B.
Department
dengan beberapa Employee.
C.
Employee dengan
beberapa Dependents.
D.
Company dengan
beberapa Branch Office.
E.
Inventory
location dengan beberapa Inventory items.
Oracle Form mengimplementasikan relasi Master-Detail
dengan menggunakan dua data block. Block
yang pertama berkorespondensi dengan table Master, dan block kedua
berkorespndensi dengan table Detail. Terdapat dua fungsi utama dalam form
Master-Detail :
a.
Oracle Forms
mengkoordinasi nilai yang ada pada kedua data block melalui serangkaian
trigger.
b.
Oracle Forms
menjamin detail block akan hanya menampilkan recordrecord yang berasosiasi
dengan record pada master block.
Master Detail Form adalah cara yang
sederhana untuk menampilkan data pada dua table yang berelasi. Forms tidak berpengaruh pada pembuatan,
penghapusan, dan perubahan pada integrity constraint.
C.
Langkah -
langkah Pembuatan Master Detail From
Buatlah
sebuah aplikasi Windows Forms, saya akan menggunakan database AdventureWorksLT.
Pastikan Anda mengunduh versi yang sesuai dengan versi Microsoft SQL Server
yang terinstall. Setelah mengunduh, attach database menggunakan SQL Server
Management Studio.
·
Buka SQL Server Management Studio, saya
menggunakan SQL Server Management Studio 2014.
·
Klik kanan pada Database dan pilih menu Attach.
·
Klik Add, browse ke lokasi file database yang
telah diunduh sebelumnya. Klik Button OK.
Bilamana
gagal, pastikan bahwa (1) Anda belum install database ini sebelumnya, (2) SQL
Server Management Studio Anda jalankan sebagai Administrator (Run as
administrator). Setelah database terinstall buatlah sebuah project Windows
Forms.
Saatnya
desain form sedemikian rupa, sehingga dalam form ada dua DataGridView. Saya
sebelumnya menggunakan SplitContainer untuk membagi form menjadi dua dan
mengubah property Orientation menjadi Horizontal. Setelah itu mengisi panel
yang ada pada SplitContainer dengan DataGridView. Ubah property MultiSelect
menjadi false dan property SelectionMode menjadi FullRowSelect. Anda dapat
menggunakan gambar berikut sebagai acuan.
·
Langkah berikutnya adalah membuat koneksi ke
database. Saya menggunakan Entity Framework. Buat DataContext dengan
menambahkan ADO.NET Entity Data Model.
·
Pilih opsi Code first from database. Bilamana
mau Anda dapat menggunakan opsi pertama yang skenarionya mirip dengan LINQ to
SQL dan ADO.NET DataSet.
·
Klik button Next dan klik button New Connection
untuk membuat koneksi baru ke database. Isi dengan informasi database yang
sudah Anda attach sebelumnya.
·
Klik button Test Connection untuk memastikan
sebelum menekan button OK. Klik Next untuk melanjutkan. Pilih semua tabel yang
ada pada namespace SalesLT. Klik button Finish untuk menutup dialog.
·
Build dan simpan aplikasi. Klik ganda form Anda
untuk membuat sebuah event handler Load. Kode program berikut mengisi
dataGridView1 dengan data dari tabel ProductCategory.
|
1
2
3
4
5
|
private void MainForm_Load(object sender, EventArgs e) { AdventureWorksContext
ctx = new AdventureWorksContext(); dataGridView1.DataSource
= ctx.ProductCategories.ToArray(); } |
·
Langkah berikutnya adalah dengan menambahkan
sebuah event handler SelectionChanged dari dataGridView1. Caranya adalah dengan
memilih dataGridView1, klik button Events (untuk melihat kumpulan event yang
dapat dihasilkan oleh dataGridView1), lalu klik ganda SelectionChanged.
·
Kode program berikut menampilkan isi tabel
Product yang sesuai dengan ProductCategory yang dipilih.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
private
void dataGridView1_SelectionChanged(object
sender, EventArgs e){ //
Keluar dari event handler bilamana tidak ada //
ProductCategory yang dipilih if
(dataGridView1.SelectedRows.Count
== 0) return; //
Ambil referensi dari ProductCategory terpilih ProductCategory
category = dataGridView1.SelectedRows[0]. DataBoundItem
as ProductCategory; AdventureWorksContext
ctx = new AdventureWorksContext(); //
Seleksi tabel Product menggunakan ProductCategoryID var
productsByCategory = from
item in ctx.Products where
item.ProductCategoryID == category.ProductCategoryID select
item; dataGridView2.DataSource
= productsByCategory.ToArray()} |
·
Anda dapat menjalankan aplikasi, hasil keluaran
kurang lebih seperti berikut.
DAFTAR PUSTAKA











Tidak ada komentar:
Posting Komentar