Kamis, 16 Juni 2016



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