Aplikasi Inventory Sederhana - Form Transaksi Barang Masuk

Aplikasi Inventory Sederhana - Form Transaksi Barang Masuk Inventory In
<p><a href="http://pojokprogrammer.net/content/aplikasi-inventory-sederhana-form-tr…"><strong>Form Transaksi Barang Masuk</strong></a>&nbsp;| Setelah sebelumnya kita berhasil membuat <strong><a href="http://pojokprogrammer.net/content/aplikasi-inventory-sederhana-form-ma…"><em>form entri master barang</em></a></strong>, berikutnya kita akan membuat form untuk mengelola proses <em><strong>CRUD </strong></em>(<em>Create, Read, Update, Delete</em>) data <strong>Transaksi Barang Masuk </strong>di Aplikasi Inventory ini. Untuk mengelola data master barang&nbsp;ini, kita memerlukan 2 (dua) buah form, yaitu <strong>Form List Transaksi Barang Masuk</strong>, dan <strong>Form Entri Transaksi Barang Masuk</strong>. Sama seperti form untuk mengelola data master barang, kedua form transaksi ini juga akan menggunakan metode <span style="color:#0000FF"><strong><em><a href="http://pojokprogrammer.net/tags/data-binding">data-binding</a> </em></strong></span>untuk menampilkan data yang berhasil diambil menggunakan <em>library data access layer </em>yang kita buat sebelumnya.</p>
<!--break-->
<blockquote>
<p>Artikel ini adalah lanjutan dari artikel berseri tentang&nbsp;<strong><a href="http://pojokprogrammer.net/node/41">Tutorial Membuat Aplikasi Inventory Sederhana Menggunakan VB.net dan Database MySQL</a></strong>.&nbsp;</p>
</blockquote>
<h3>Persiapkan Data Access Layer</h3>
<p>Form transaksi ini merupakan form master-detail yang melibatkan 2 (dua) buah table, yaitu <strong><em>transactions </em></strong>sebagai master table, dan <strong><em>transaction_details </em></strong>sebagai detail table. Desain dari kedua table ini dapat di lihat dalam <strong><a href="http://pojokprogrammer.net/content/aplikasi-inventory-sederhana-analisa…">artikel ini</a></strong>. Untuk itu kita perlu mendefinisikan <em><strong>relasi foreign key </strong></em>antar DataTable yang ada di dalam DataSet dsInventory. Relasi ini yang nantinya akan sangat membantu kita dalam proses data-binding ke form transaksi.</p>
<p>
</p>
<h3>Desain Form <em>Entri Transaksi </em>Barang Masuk</h3>
<p><strong>Berikutnya </strong>kita buat desain form transaksi barang masuk. Desain form transaksi ini akan menggunakan Visual Inheritance seperti yang sudah dibahas sebelumnya di artikel <strong><a href="http://pojokprogrammer.net/content/aplikasi-inventory-sederhana-desain-…">desain user interface</a>&nbsp;</strong>dan <a href="http://pojokprogrammer.net/content/aplikasi-inventory-sederhana-form-ma…"><strong>desain form master barang</strong></a>, jadi silakan pelajari kedua artikel tersebut sebelum melanjutkan membaca artikel ini.</p>
<p>
</p>
<p>Berikutnya yang perlu kita lakukan adalah mengkonfigurasikan binding&nbsp;DataGridView agar memudahkan kita menambahkan detail barang yang terlibat dalam transaksi bersangkutan. Khusus untuk binding DataGridView, yang kita lakukan adalah <strong>setting property DataMember </strong>dari DataGridView ke relasi yang sudah kita buat sebelumnya,&nbsp;yaitu <strong>transaction_details_ibfk_1</strong>, seperti tampak pada gambar di bawah ini.</p>
<p>
</p>
<p>Setelah setting binding kita lakukan, <strong>selanjutnya </strong>ubah property <em><strong>Visible </strong></em>untuk beberapa kolom yang tidak perlu dilihat oleh user atau pengguna, misalkan kolom <em>id</em>, <em>trans_id</em>, <em>item_code</em>, dan <em>item_name</em>. Caranya adalah dengan melakukan klik kanan mouse di atas DataGridView, kemudian pilih menu "<strong><em>Edit Columns</em></strong>" setelah itu silakan ubah property visible menjadi <strong>false</strong>, seperti tampak pada gambar di bawah ini.</p>
<p>
</p>
<p>Untuk <strong>memudahkan pengguna </strong>memilih barang yang akan masuk dalam transaksi ini, maka kita buatkan sebuah <em><strong>ComboBox </strong></em>berisikan list Items sehingga user dapat langsung memilih dari daftar yang tersedia. Caranya adalah buka menu "<em>Edit Columns</em>" kemudian pilih field <em><strong>item_id </strong></em>dan set <em>ColumnType </em>sebagai <em>ComboBoxColumn</em>, seperti tampak pada gambar di bawah ini.</p>
<p>
</p>
<p>Berikutnya kita beritahukan vb.net untuk <strong>mengambil data Items </strong>dari DataSet DsInventory dengan cara mengkonfigurasikan property <em>DataSource</em>, <em>DisplayMember</em>, dan <em>ValueMember</em> menjadi seperti tampak pada gambar di bawah ini.</p>
<p>
</p>
<p>Hasil akhirnya akan tampak seperti pada gambar di bawah ini.</p>
<p>
</p>
<h3>Kode Sumber&nbsp;Form <em>Entri Transaksi </em>Barang Masuk</h3>
<p>Kode sumber untuk proses penyimpanan data dalam model master-detail agak sedikit sulit dikarenakan setelah menyimpan data baru ke master table, kita harus mengambil id auto_increment yang dihasilkan dari database kemudian menyesuaikannya ke data di detail table agar referential integrity tetap terjaga.</p>
<p>
</p>
<p>
</p>
<p>
</p>
<h3>Desain Form <em>List Transaksi </em>Barang Masuk</h3>
<p><strong>Berikutnya&nbsp;</strong>kita buat desain form <em>list </em>transaksi barang masuk. Desain form <em>list </em>transaksi ini juga akan menggunakan <strong>Visual Inheritance </strong>seperti yang sudah dibahas sebelumnya di artikel&nbsp;<strong><a href="http://pojokprogrammer.net/content/aplikasi-inventory-sederhana-desain-…">desain user interface</a>&nbsp;</strong>dan cara melakukan setting data-binding untuk grid list transaksi bisa di lihat di artikel&nbsp;<a href="http://pojokprogrammer.net/content/aplikasi-inventory-sederhana-form-ma…"><strong>desain form master barang</strong></a>, jadi silakan pelajari kedua artikel tersebut sebelum melanjutkan membaca artikel ini.</p>
<p>
</p>
<h3>Kode Sumber&nbsp;Form <em>List Transaksi </em>Barang Masuk</h3>
<p>Secara umum hampir tidak ada perbedaan pada code di artikel sebelumnya, hanya ada penambahan variable TransCode untuk membedakan jenis transaksi yang akan dimuat dari dalam database. Silakan perhatikan dengan seksama komentar yang terdapat dalam baris kode sumber, karena komentar-komentar tersebut menerangkan tujuan dari baris-baris kode yang ada</p>
<p>
</p>
<p>
</p>
<p>
</p>
<h3>Simpulan</h3>
<p>Jika kita perhatikan kode sumber yang kita tuliskan di aplikasi ini sangat sedikit sekali dikarenakan kita menggunakan <em><strong>metode data-binding</strong></em>. Kita juga tidak perlu lagi repot-repot membuat perintah SQL untuk proses <strong><em>CRUD</em></strong>, karena proses <em>CRUD </em>ini sudah ditangani di data access layer. Dengan makin sedikit-nya kode yang harus kita tuliskan tentunya akan semakin meningkatkan produktifitas kita semua sebagai programmer dan semakin banyak karya-karya fenomenal yang bisa kita buat.</p>
<h3>Source Code</h3>
<p>Untuk memudahkan teman-teman mempelajari hal ini, silakan&nbsp;<strong><a href="http://pojokprogrammer.net/sites/default/files/tutorial/vbnet/BiruniLab…">Download Source Code Di Sini</a>.&nbsp;<span style="color:rgb(128, 0, 0)">Dibuat menggunakan Visual Studio 2013</span></strong>,&nbsp;&nbsp;</p>
<p><strong>Salam <span style="color:rgb(0, 0, 255)">Pojok</span><span style="color:rgb(255, 0, 0)">Programmer</span></strong>&nbsp;^_^</p>
<p>&nbsp;</p>
<p>/</p>
<p><img alt="" src="/sites/default/files/tutorial/inventory-solutions.jpg" style="height:397px; width:720px" /></p>