NASKAH SOAL PRAKTIKUM 03 MATA KULIAH: BS405 - IX051 - XS405 PBO Lanjut/ 2B TANGGAL: 05,06,09 Feb 2018 SEMESTER: Genap 17/18 WAKTU: - SIFAT UJIAN: OPEN BOOK, OPEN FILE *)Pengumpulan : Kelas A : 10 Feb 100%, diatas 10 Feb diskon 30% Kelas B : 11 Feb 100%, diatas 11 Feb diskon 30% Kelas Kompetensi : 14 Feb 100%, diatas 14 Feb diskon 30% BACA DAHULU PETUNJUK INI: SOAL: Dibawa Pulang 1. Kumpulkan source code project (NetBeans-Jangan Lupa di Clean dahulu) dalam file rar dengan format berikut. Contoh NRP-NAMA-P03.rar. Pengumpulan melalui portal: http://staflab.itmaranatha.org/form/view.php?id=28135 password pbolabc PERATURAN pengumpulan : -. Pengumpulan file Praktikum maksimal 2x per 1 soal praktikum, Jika lebih maka setelah 2 file pertama terkumpul tidak akan dianggap -. Nilai adalah rata-rata dari poin yang didapat pada file pertama dan kedua. 2. Pastikan saat dikumpulkan, program dapat di jalankan. Jika tidak jalan, maka nilai di diskon 50%. 3. Nama Program bebas, terserah anda. Anda diminta untuk membuat sebuah aplikasi Desktop untuk perusahaan Northwind. Aplikasi Desktop ini harus memiliki fungsi utama, yaitu: Aplikasi berintegrasi dengan database northwind yang disimpan di MySQL Server. Sistem dapat mengelola master data Sistem dapat mengelola data transaksi order dan shipper *) Mengelola disini memiliki arti dapat menambah, mengubah, dan menghapus data. *) Menghapus data harus memiliki validasi jika data belum pernah dipakai di tabel lain di database. Skema Database Northwind: Praktikum 03 :: BS405-IX051-XS405 - Pemrograman Berorientasi Objek Lanjut/2B Page 1 of 7
Buatlah sebuah antamuka yang berisi: a. Tampilan awal yang berisikan form login: b. Jika login berhasil[username : admin; password : ukm12345*], Aplikasi akan menampilkan antarmuka form home seperti pada gambar di bawah ini: 1 Menu Bar JMenuBar Menampung JMenu File, Master Data, Transaksi 2 File JMenu Menampung JMenuItem Home dan Exit 3 Master Data JMenu Menampung JMenu Inventory, JMenuItem Employee, Customer, Shipper 4 Inventory JMenu Menampung JMenuItem Supplier, Category, Product Praktikum 03 :: BS405-IX051-XS405 - Pemrograman Berorientasi Objek Lanjut/2B Page 2 of 7
5 Transaksi JMenu Menampung JMenuItem Order dan Order History 6 Home JMenuItem Fungsinya adalah menampilkan panel Home 7 Exit JMenuItem Fungsinya adalah exit dari aplikasi 8 Supplier JMenuItem Fungsinya adalah menampilkan panel Supplier 9 Category JMenuItem Fungsinya adalah menampilkan panel Category 10 Product JMenuItem Fungsinya adalah menampilkan panel Product 11 Employee JMenuItem Fungsinya adalah menampilkan panel Employee 12 Customer JMenuItem Fungsinya adalah menampilkan panel Customer 13 Shipper JMenuItem Fungsinya adalah menampilkan panel Shipper 14 Order JMenuItem Fungsinya adalah menampilkan panel Order 15 Order History JMenuItem Fungsinya adalah menampilkan panel Order History c. Panel Category: 1 ID Supplier JTextField Karena Data Auto Increment maka JTextField ini dalam 2 Field selain ID Supplier tampilan, edit per 1 data Supplier. 3 Save JButton Fungsi Button ini untuk Insert atau Update per 1 data Supplier 4 Delete JButton Fungsi Button ini untuk Delete per 1 data Supplier 5 Reset JButton Fungsi Button ini untuk reset tampilan inputan dan isi dari JTable Supplier agar datanya sesuai yang berada di Praktikum 03 :: BS405-IX051-XS405 - Pemrograman Berorientasi Objek Lanjut/2B Page 3 of 7
d. Panel Category: 1 ID Category JTextField Karena Data Auto Increment maka JTextField ini dalam 2 Category Name, Picture tampilan, edit per 1 data Category. 3 Description JTextArea Category 5 Delete JButton Fungsi Button ini untuk Delete per 1 data Category 6 Reset JButton Fungsi Button ini untuk reset tampilan inputan dan isi dari JTable Category agar datanya sesuai yang berada di e. Panel Product: 1 ID Products JTextField Karena Data Auto Increment maka JTextField ini dalam Praktikum 03 :: BS405-IX051-XS405 - Pemrograman Berorientasi Objek Lanjut/2B Page 4 of 7
2 3 Products Name, Qty./Unit Unit Price JTextField JTextArea -. Field-field ini digunakan untuk mengelola input, tampilan, edit per 1 data Products. -. Model Combo Box Supplier berisikan list of Company 4 Supplier JComboBox Name dari Tabel Products di Database 5 Category JComboBox -. Model Combo Box Category berisikan list of Category 6 Units in Stock, JSpinner Name dari Tabel Products di Database Units on Order, Reorder Level 7 Discontinued JCheckBox 3 Save JButton Fungsi Button ini untuk Insert atau Update per 1 data Products 4 Delete JButton Fungsi Button ini untuk Delete per 1 data Products 5 Reset JButton Fungsi Button ini untuk reset tampilan inputan dan isi dari JTable Products agar datanya sesuai yang berada di f. Panel Employee: 1 ID Employee JTextField Karena Data Auto Increment maka JTextField ini dalam 2 Last Name, First Name, Address, City, Region, Postal Code, Country, Home Phone, Extension, Photo JTextField -. Field-field ini digunakan untuk mengelola input, tampilan, edit per 1 data Employee. -. Title: modelnya: a. Vice President, Sales b. Sales Manager c. Sales Representative d. Inside Sales Coordinator -. Title of Courtesy: modelnya: Mr. Ms. Mrs. Dr. Bachelor Master PHD Drs. dr. -. Tgl. Hire Date harus lebih besar dari Tgl. Birth Date -. Tgl. Hire Date dan Birth Date hanya bisa dipilih dari tgl hari ini dan sebelumnya, tidak bisa memilih ke tgl setelah tgl hari ini. 3 Title JComboBox 4 Title of JcomboBox Courtesy 5 Birth Date, Hire JDateChooser Date 5 Notes JTextArea Employee 5 Delete JButton Fungsi Button ini untuk Delete per 1 data Employee Praktikum 03 :: BS405-IX051-XS405 - Pemrograman Berorientasi Objek Lanjut/2B Page 5 of 7
6 Reset JButton Fungsi Button ini untuk reset tampilan inputan dan isi dari JTable Employee agar datanya sesuai yang berada di g. Panel Customer: 1 ID Customer JTextField Karena Data Auto Increment maka JTextField ini dalam 2 Field selain ID Customer tampilan, edit per 1 data Customer. Customer 5 Delete JButton Fungsi Button ini untuk Delete per 1 data Customer 6 Reset JButton Fungsi Button ini untuk reset tampilan inputan dan isi dari JTable Customer agar datanya sesuai yang berada di h. Panel Shipper: Praktikum 03 :: BS405-IX051-XS405 - Pemrograman Berorientasi Objek Lanjut/2B Page 6 of 7
1 ID Shipper JTextField Karena Data Auto Increment maka JTextField ini dalam 2 Field selain ID Shipper tampilan, edit per 1 data Shipper. Shipper 5 Delete JButton Fungsi Button ini untuk Delete per 1 data Shipper 6 Reset JButton Fungsi Button ini untuk reset tampilan inputan dan isi dari JTable Shipper agar datanya sesuai yang berada di i. Panel Order dan Order history belum didefinisikan, baru tampilan seperti di bawah ini: Selamat Mengerjakan Happy Coding 2018 Praktikum 03 :: BS405-IX051-XS405 - Pemrograman Berorientasi Objek Lanjut/2B Page 7 of 7