PANDUAN PRAKTIKUM MATA KULIAH PEMROGAMAN VISUAL (IF3117) PROGRAM STUDI TEKNIK INFORMATIKA S-1 FAKULTAS TEKNOLOGI INDUSTRI INSTITUT TEKNOLOGI NASIONAL MALANG 2016
DAFTAR ISI COVER DAFTAR ISI ------------------------------------------------------------------------------ I TUGAS PRAKTIKUM PEMROGRAMAN VISUAL PERTEMUAN KE : 1 1 1. Pengertian Visual Studio ---------------------------------------------------- 1 2. IDE (Integrated Development Integration) ------------------------------- 1 3. Type Data --------------------------------------------------------------------- 4 4. Variabel------------------------------------------------------------------------ 4 5. Konversi Type Data --------------------------------------------------------- 5 6. Membuat Project pada Visual Studio ------------------------------------- 5 7. Mengenal Event Pada Visual Studio -------------------------------------- 7 8. Membuat Program Menggunakan CheckBox dan Radiobutton ------- 9 9. Menggenal Operator Aritmatika ------------------------------------------- 10 TUGAS PRAKTIKUM PEMROGRAMAN VISUAL PERTEMUAN KE : 2 12 1. Percabangan ------------------------------------------------------------------ 12 2. Perulangan -------------------------------------------------------------------- 14 TUGAS PRAKTIKUM PEMROGRAMAN VISUAL PERTEMUAN KE : 3 22 1. Prosedure --------------------------------------------------------------------- 18 2. Function ---------------------------------------------------------------------- 19 3. Error Handling --------------------------------------------------------------- 20 TUGAS PRAKTIKUM PEMROGRAMAN VISUAL PERTEMUAN KE : 4 23 1. Array --------------------------------------------------------------------------- 23 TUGAS PRAKTIKUM PEMROGRAMAN VISUAL PERTEMUAN KE : 5 26 1. Membuat Database di dalam SQL Server -------------------------------- 26 2. Membuat Koneksi Visual Studio 2008 dengan SQL Server ----------- 27 3. Membuat Form Data Mata Kuliah----------------------------------------- 27 4. Membuat Form Data Mahasiswa ------------------------------------------ 30 TUGAS PRAKTIKUM PEMROGRAMAN VISUAL PERTEMUAN KE : 6 34 1. Membuta Form Nilai Mahasiswa ------------------------------------------ 34 2. Membuat Report Menggunakan Crytal Report -------------------------- 38 i
PRAKTIKUM HARI KE-1 Pertemuan : 1 Peralatan dan Perlengkapan : Visual Studio 2008 Materi : Pengenalan Visual Studio 2008 Tujuan Pembelajaran dan Praktikum : 1. Mahasiswa mampu mengetahui Komponenkomponen vb.net 2. Mahasiswa mampu menjelaskan fungsi komponenkomponen vb.net 1. Pengertian Visual Studio Visual studio adalah merupakan sebuah perangkat lunak lengkap(suite) yang dapat digunakan untuk melakukan pengembangan aplikasi, baik aplikasi bisnis, aplikasi personal, ataupun komponen aplikasinya, dalam bentuk aplikasi console windows form ataupun aplikasi web. 2. IDE (Integrated Development Integration) IDE pada visual studio terdiri atas beberapa bagian seperti pada gambar berikut : A. Menu Bar Berisi menu-menu yang masing-masing menu memiliki fungsi tersendiri. 1
B. Tool Bar Tombol-tombol icon yang berfungisi untuk mewakili suatu perintah yang berada pada menu bar. C. Project Explorer Jendela yang mengandung semua file yang ada di dalam aplikasi yang akan kita buat. Contoh: Form, Module, Class, Report, dll. D. Project Properties Jendela yang mengandung semua informasi/sifat dari object yang terdapat pada aplikasi yang dibuat dan terseleksi. 2
E. Form Daerah kerja utama untuk mendesain program- program aplikasi. F. Tool Box Jendela yang mengandung semua object atau control yang ditempelkan dan dibutuhkan untuk membentuk sebuah program. 3
3. Type Data Tipe data pada dasarnya merupakan nama untuk sejenis data. Ketika mendeklarasikan sebuah vaiabel, maka variabel tersebut harus mempunyai tipe data, yang akan menetukan nilai-nilai yang dapat dimuat dan dioperasikan pada variabel tersebut. Dan berikut adalah tipe-tipe data yang telah disediakan di dalam visual studio. 4. Variabel Variabel merupakan tempat penyimpanan data.variabel memiliki sebuah nama disertai dengan tipe data yang akan ditampung oleh variabel tersebut. Dim merupakan keyword dalam pendeklarasian variabel di vb.net. dan berikut adalah susunan penuliasan vairabel. Variabel dengan tanpa nilai awal: 4
Variabel dengan nilai awal : 5. Konversi Type Data Ada waktunya kita membutuhkan untuk mengisikan sebuah string yang berisi angka. Tetapi jika sebuah angka masih disimpan dalam variabel string, maka variabel tersebut tidak dapat dioperasikan sebagai angka. Solusi untuk kasus tersebut adalah dengan menggunakan fungsifungsi yang mengkonversikan data menjadi nilai yang mempunyai type data lain. Berikut adalah beberapa function yang digunakan untuk konversi tipe data : 6. Membuat Project pada Visual Studio Project adalah kumpulan dari beberapa File (Form, Report, File, Module, dll) yang di dalamnya, dan mempunyai aturan aturan yang berlaku terhadap project tersebut. Untuk membuat project baru dapat dilakukan dengan cara : A. Pilih Menu File - New Project Pada Menu Bar B. Klik icon ( ) Yang terdapat di bawah Menu File pada Menu Bar. 5
C. Setelah itu akan muncul sebuah jendela dialog. D. Setelah itu kita akan melihat sebuah lembar kerja ( Tempat membuat Aplikasi ) E. Menjalankan Aplikasi Aplikasi yang dibuat dapat dijalankan dengan beberapa cara, berikut, pilih Menu Debug => Start Debuging pada Menu Bar atau bisa dengan cara menekan tombol F5 pada Keyboard. 6
F. Menghentikan Aplikasi Untuk menghentikan atau men-debug aplikasi dapat dilakukan dengan cara, pilih menu Debug Stop pada Menu Bar atau dapat menekan kombinasi tombol (Ctrl+ Alt + F5) atau tekan tombol close saat project sedang berlangsung. 7. Mengenal Event Pada Visual Studio A. On Change dan Onclick Buat desain form seperti berikut: 7
Atur properties setiap komponen seperti pada table berikut: 1. Kode On Change Double klik pada txt_onchange dan masukkan kode berikut : Label1.Text = txt_onchange.text 2. Kode On Click Double klik pada btn_ok dan masukkan kode berikut : Label1.Text = txt_onchange.text B. Mouse Move Buat desain form seperti berikut: Atur properties setiap komponen seperti pada table berikut: 8
1. Kode Mouse Move Double klik pada panel_menu kemudian pilih event dengan cara pilih load, kemudian pilih mouse move, kemudian masukkan perintah berikut : panel_submenu.visible = True 2. Kode Visible panel Double klik pada form4 dan masukkan kode berikut: panel_submenu.visible = False 8. Membuat Program Menggunakan CheckBox dan Radiobutton A. RadioButton Buat desain form seperti berikut: Atur properties setiap komponen seperti pada table berikut: Double klik pada rd_surabaya dan masukkan kode berikut: Label1.Text = rd_surabaya.text Double klik pada rd_jakarta dan masukkan kode berikut: Label1.Text = rd_jakarta.text B. Checkbox Buat desain form seperti pada gambar berikut: 9
Atur properties setiap komponen seperti pada table berikut: Double klik pada cek_tebal dan masukkan kode berikut: label1.font = New Font(label1.Font.Name, label1.font.size, label1.font.style Xor FontStyle.Italic) Double klik pada cek_miring dan masukkan kode berikut: label1.font = New Font(label1.Font.Name, label1.font.size, label1.font.style Xor FontStyle.Bold) 9. Menggenal Operator Aritmatika Operator aritmatika berfungsi untuk melakukan suatu proses aritmatika yang meliputi perkalian, pembagian, penjumlahan maupun pengurangan terhadap suatu nilai variabel yang tersimpan dalam suatu object dengan memberikan nilai baru. A. Program Kalkulator Buat desain form seperti berikut: 10
Atur properties setiap komponen seperti pada table berikut: Double klik pada btn_tambah kemudian masukkan kode berikut: c = CInt(txt_nilai1.Text) + CInt(txt_nilai2.Text) txt_hasil.text = c Double klik pada btn_kurang kemudian masukkan kode berikut: c = CInt(txt_nilai1.Text) - CInt(txt_nilai2.Text) txt_hasil.text = c Double klik pada btn_kali kemudian masukkan kode berikut: c = CInt(txt_nilai1.Text) * CInt(txt_nilai2.Text) txt_hasil.text = c Double klik pada btn_bagi kemudian masukkan kode berikut: c = CInt(txt_nilai1.Text) / CInt(txt_nilai2.Text) txt_hasil.text = c 11
PRAKTIKUM HARI KE-2 Pertemuan : 2 Peralatan dan Perlengkapan Materi Tujuan Pembelajaran dan Praktikum : Visual Studio 2008 : Percabangan dan Perulangan : 1. vb.net Mahasiswa mampu mengetahui konsep percabangan dan perulangan pada vb.net 2. Mahasiswa mampu membuat program sederhana percabangan dan perulangan dengan VB.Net 1. Percabangan Pencabangan merupakan perintah yang dapat memberikan pilihan suatu kondisi, program akan menjalankan perintah apabila suatu kondisi memenuhi syarat tertentu. A. If Then Else Statement If then Else akan mengembalikan nilai Boolean dimana nilai boolean ini adalah true dan false atau benar dan salah. Jika suatu kondisi memenuhi syarat pertama maka program akan di eksekusi dan program akan berakhir tetapi apabila syarat pertama/kondisi pertama tidak terpenuhi maka If then Else ini akan mengekesekusi syarat yang kedua dan jika syarat yang kedua tidak terpenuhi maka program akan menjalankan syarat yang ketiga. Berikut format penulisanya: Program menggunakan if..then..else Statement. gambar. Buat desain form seperti pada 12
Atur property setiap komponen sebagai berikut: Double klik button cek kemudian ketikkan perintah berikut: If TextBox1.Text = "Ya" Then MessageBox.Show("Sediakan Payung", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information) ElseIf TextBox1.Text = "Tidak" Then MessageBox.Show("Tidak Usah Pake Payung", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information) Else MessageBox.Show("Konfirmasi", "Jawaban Salah", MessageBoxButtons.OK, MessageBoxIcon.Information) End If Jalankan program dan amati hasilnya. B. Select Case Setelah kita mempelajari cara penggunaan If sekarang kita akan mempelajari bagaimana cara penggunaan Select Case. Selain menggunakan pengkondisian IF bisa juga menggunakan Select case.untuk penggunaan select case, berikut adalah cara penulisan syntax select case: Program menggunakan Select Case, buat desain seperti pada gambar. Atur property setiap komponen sebagai berikut: 13
Double klik pada cmb_menu kemudian masukkan kode berikut: Select Case ComboBox1.SelectedIndex Case 0 TextBox1.Text = "20000" Case 1 TextBox1.Text = "8000" Case 2 TextBox1.Text = "9000" Case 3 TextBox1.Text = "5000" End Select 2. Perulangan Jalankan program dan amati hasilnya. Perulangan untuk melakukan suatu perintah yang sama beberapa penerapan struktur perulangan. A. While... End While untuk beberapa kali, berikut Adalah salah satu statement perulangan yang digunakan untuk menjalankan suatu blok program secara terus menerus selama kondisi yang ditetapkan menghasilkan nilai True dan akan berhenti jika suatu kondisi yang telah ditetapkan bernilai false. While kondisi Statement End while. Program perulangan menggunakan while-end while, buat desain form seperti berikut: 14
Atur setiap komponen seperti pada table berikut: Object Property Value Form1 Text Form1 Label1 Text Awal Label2 Text Akhir TextBox1 Name TextBox1 TextBox2 Name TextBox2 Button1 Text Name While Button1 Double klik pada button While kemudian ketikkan perintah berikut: Dim a, b As Integer a = TextBox1.Text b = TextBox2.Text While a <= b ListBox1.Items.Add(a) a = a + 1 End While Jalankan program dan amati hasilnya. B. Do While... Loop Perulangan Do-While akan terus diproses sampai hasil dari proses perulangan masih memenuhi (didalam) kondisi yang deklarasikan true (benar). Jadi perulangan akan diberhentikan ketika hasil yang diperoleh sudah menyalahi kondisi yang dideklarasikan. Berikut penulisan syntax dari perulangan Do While: Program Perulangan menggunakan Do While, Desain Form Seperti Berikut: 15
Atur setiap komponen seperti pada table berikut: Double klik pada button Do While kemudian ketikkan perintah berikut: Dim awal, akhir As Integer awal = Val(tb_awal.Text) akhir = Val(tb_akhir.Text) Do While awal <= akhir ListBox1.Items.Add(awal) awal = awal + 1 Loop Jalankan program dan amati hasilnya. C. For... Next Perulangan for adalah jenis perulangan statis yang powerful karena sebelum perulangan itu diproses sistem sudah mengetahui berapa kali perulangan itu akan dilakukan. Program perulangan menggunakan for-next, buat desain form seperti berikut: 16
Atur setiap komponen seperti pada tabel berikut: Double klik pada button for dan tuliskan perintah berikut: Dim i As Integer For i = Val(tb_awal.Text) To Val(tb_akhir.Text) ListBox1.Items.Add(i) Next Jalankan program dan amati hasilnya. 17
PRAKTIKUM HARI KE-3 Pertemuan : 3 Peralatan dan Perlengkapan Materi Tujuan Pembelajaran dan Praktikum : Visual Studio 2008 : Procedure, Function dan Error Handling : 1. Mahasiswa mampu mengetahui penggunaan prosedure, function dan error handling pada vb.net 1. Prosedure Prosedur tidak mengembalikan nilai balik terhadap pemanggilnya, maksudnya ketika kita memanggil sebuah prosedure maka statement di dalam prosedure akan dijankan sampai prosedure itu berakhir. Prosedure ada yang menggunakan parameter dan ada pula yang tidak. Prosedure dideklarasikan dengan menggunakan sub keyword. Sintax pembuatan sebuah prosedure: A. Tanpa Parameter : B. Dengan Parameter : C. Implementasi Tanpa Parameter dan Dengan Parameter : Buat desain form seperti berikut: Atur setiap komponen seperti pada table berikut: 18
Double klik pada form kemudian masukkan kode berikut di atas form load: Sub tampilpesan() MsgBox("Selamat Pagi Dunia", MsgBoxStyle.Information + MsgBoxStyle.OkOnly, "pesan") End Sub Sub tampilkan(byval nama As String) MessageBox.Show("Panggil " & nama) End Sub Double klik pada btn_proc1 dan masukkan kode berikut: Dim input As String input = txt_input.text Call tampilkan(input) Double klik pada btn_proc2 dan masukkan kode berikut: tampilpesan() Note : * ByVal = Parameter yang dikirimkan adalah Nilai dari sebuah object sehingga anda tidak dapat mengubah Nilai Object tersebut, anda hanya dapat mengolah/mengubah nilai object tersebut di dalam sub/function saja, setelah sub/function tersebut selesai, perubahan nilai object di sub/function tidak akan mengubah nilai object yang sebenarnya. 2. Function Function merupakan sub program untuk mempermudah maintenance program yang kita buat, perbedaanyya dengan prosedure adalah sebuah function akan mengembalikan sebuah nilai balik pada pemanggilnya, sehingga pemanggil sebuah function harus memiliki penampung dari hasil function, penampung tersebut dapat berupa sebuah variable atau lainnya, misal menampilkan pada message box. Biasanya function dibuat untuk kode program perhitungan, atau kode program lain yang akan melakukan pengembalian nilai data Sintax pembuatan sebuah function. A. Tanpa Parameter : 19
Buat desain form seperti berikut: Atur setiap komponen seperti pada table berikut: Double klik pada form kemudian masukkan kode berikut di atas form load: Function hitung() As String Dim N As Integer N = TextBox1.Text If N Mod 2 = 0 Then Return "Genap" Else Return "Ganjil" End If End Function Double klik pada btn_proc1 dan masukkan kode berikut: MessageBox.Show(hitung()) Double klik pada txt_input kemudian pilih Load Keypress dan masukkan kode berikut: If (e.keychar = ChrW(Keys.Enter)) Then MessageBox.Show(hitung()) End If 3. Error Handling A. Exception Handling Dalam pembuatan sebuah aplikasi tentunya kita sering sekali mengalami error atau kesalahan. Jika kita melakukan kesalahan koding terhadap program yang dibuat, akan mudah sekali kita ketahui, yaitu dalam VB.Net akan secara otomatis compiler akan memberikan tanda berupa garis melengkung mirip cacing pada kode program kita yang salah, namun bagaimana jika error yang terjadi adalah kesalahan dari logika yang kita buat yang hanya akan terdeteksi saat runtime, hal itu kan membuat program 20
kita mengalami break, atau tidak jarang membuat komputer kita hang karena overflow. Untuk mengatasi hal tersebut, kita akan mempelajari bagaimana cara menangkap error tersebut untuk kita atasi agar tidak terjadi break. Structured Exception Handling VB.Net memberikan tiga keyword yaitu try, catch, finally dalam melakukan exceptionn handling. Untuk lebih jelas nya buatlah sebuah desain form seperti gambar berikut: Atur setiap komponen seperti pada table berikut: Double klik pada button Hitung dan masukkan perintah dibawah ini: Try Dim nilai1 As Integer = CInt(Txt_nila1.Text) Dim nilai2 As Integer = CInt(Txt_nilai2.Text) Dim hasil As Integer = nilai1 * nilai2 Txt_hasil.Text = CStr(hasil) Catch ex As Exception MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try B. Error Provider Error provider adalah salah satu komponen yang tersedia pada VB.Net untuk memudahkan kita dalam melakukan validasi terhadap kemungkinan error yang 21
terjadi khususnya untuk melakukan validasi pada inputan yang berhubungan dengan user interface. Error provider akan memberikan notify berupa message yang akan ditampilkan pada tooltip dan juga icon untuk memberitahu pada user jika terjadi error. Untuk lebih jelasnya buatlah desain form seperti pada berikut: Atur setiap komponen seperti pada table berikut: Object Property Value Form1 Text Form1 TextBox1 Name Txt_error Button1 Text Name Error provider Btn_provider ErrorProvider Name ErrorProvider1 Double klik pada button Error Provider kemudian masukkan perintah berikut: If TextBox1.Text = "" Then ErrorProvider1.SetError(TextBox1, "Cannot leave textbox blank") Else ErrorProvider1.SetError(TextBox1, "") End If 22
PRAKTIKUM HARI KE-4 Pertemuan : 4 Peralatan dan Perlengkapan Materi Tujuan Pembelajaran dan Praktikum : Visual Studio 2008 : Array : 1. Mahasiswa membuat Array menggunakan Vb.net 2. Mahasiswa mampu membedakan array dinamis dan array statis 1. Array Pengertian Array adalah sekumpulan variabel yang memiliki tipe data yang sama dan dinyatakan dengan nama yang sama. Array merupakan konsep yang penting dalam pemrograman, karna array memungkinkan untuk menyimpan data maupun referensi objek dalam jumlah banyak dan terindeks. Variabel array dideklarasikan dengan mencantumkan tipe dan nama variable yang diikuti dengan banyaknya lokasi memori yang ingin dibuat. A. Array Statis Buatlah desain form seperti berikut: Atur setiap komponen seperti pada tabel berikut: Double klik pada form10 kemudian masukkan perintah berikut di atas form_load: Dim array1(6) As String Dim array2() As String = {"Senin", "Selasa", "Rabu", "Kamis","Jum'at", "Sabtu", "Minggu"} 23
Double klik pada form10 kemudian masukkan perintah berikut: array1(0) = "Senin" array1(1) = "Selasa" array1(2) = "Rabu" array1(3) = "Kamis" array1(4) = "Jum'at" array1(5) = "Sabtu" array1(6) = "Minggu" ListBox1.Items.AddRange(array1) ListBox2.Items.AddRange(array2) B. Array Dinamis Buatlah desain form Seperti berikut: Atur setiap komponen seperti pada table berikut: Object Property Value Form1 Text Form1 Label1 Text Index Array Label2 Text Nama mahasiswa Textbox1 Name txt_input Combobox1 Name cb_index Button1 Name Text bt_tambah Tambah Button2 Name Text bt_hapus Hapus ListBox Name ListBox1 Double klik pada form kemudian masukkan kode berikut: Dim i As Integer For i = 1 To 5 cb_index.items.add(i) Next i 24
Masukkan kode berikut ini di bawah class : Dim a(0 To 5) As String Buat procedure dengan nama array, dengan code di bawah ini: Sub array() Dim i, b As Integer b = CInt(cb_index.Text) a(b) = txt_input.text If a(b) <> "" Then ListBox1.Items.Clear() For i = 1 To 5 ListBox1.Items.Add("Nama " & i & " = " & a(i)) Next i End If End Sub Double klik pada button tambah kemudian masukkan kode berikut: array() Double klik pada button hapus terkahir kemudian masukkan kode berikut: ListBox1.Items.Clear() 25
PRAKTIKUM HARI KE-5 Pertemuan : 5 Peralatan dan Perlengkapan Materi Tujuan Pembelajaran dan Praktikum : Visual Studio 2008 dan SQL Server 2005 : Koneksi Aplikasi ke Database : 1. Mahasiswa mampu melakukan koneksi ke dalam database. 2. Mahasiswa mampu mengimplementasikan CRUD pada visual studio 2008 dan database SQL Server 2005. 1. Membuat Database di dalam SQL Server A. Table Mata Kuliah B. Table Mahasiswa C. Table Nilai 26
2. Membuat Koneksi Visual Studio 2008 dengan SQL Server Untuk membuat koneksi vb.net dengan Sql server, klik menu Project dan pilih add module kemudian masukkan perintah dibawah ini : Imports System.Data.SqlClient Module Module1 Public koneksi As SqlConnection = Nothing Public Sub konek_db() Dim server As String server = "server=server-name;database=database;integrated Security = True" koneksi = New SqlConnection(server) koneksi.open() End Sub End Module 3. Membuat Form Data Mata Kuliah Form ini digunakan untuk mendata mata kuliah, yang berisi informasi mengenai kode mata kuliah dan nama mata kuliah. Atur setiap komponen seperti pada table berikut : Objeck Name Properties Value Label 1 Text Data Mata Kuliah Label 2 Text Kode Matkul Label 3 Text Nama Matkul Textbox 1 Name txt_kode Textbox 2 Name txt_nama_matkul ListView 1 Name lv_matkul FullRowSelect True GridLines True View Details Button 1 Name btn_save 27
Text Simpan Button 2 Name btn_update Text Update Button 3 Name btn_reset Text Reset Button 4 Name btn_delete Text Hapus A. Menampilkan Isi Database Ke dalam Listview Double Klik pada Form Data mata kuliah dan tuliskan kode berikut : Sub tampil_data() reset() konek_db() Dim tampil As New SqlClient.SqlCommand("SELECT * FROM tb_matkul") Dim reader As SqlClient.SqlDataReader tampil.connection = koneksi reader = tampil.executereader Dim i As Integer = 0 Do While reader.read lv_matkul.items.add(reader!kode_matkul) lv_matkul.items(i).subitems.add(reader!nama_matkul) i = i + +1 Loop End Sub B. Memberikan Event Mouse Click Untuk memberikan event mouseclik pada listview, klik listview kemuidan klik event dibagian properties dan double klik MouseClik lalu tuliskan source code berikut: txt_kode.text = lv_matkul.selecteditems(0).subitems(0).text txt_nama_matkul.text = lv_matkul.selecteditems(0).subitems(1).text C. Menyimpan Data Mata Kuliah Double klik pada button Save dan tuliskan perintah berikut : If txt_kode.text = "" And txt_nama_matkul.text = "" Then MsgBox("Data tidak lengkap", MsgBoxStyle.Critical, "Failed") Else konek_db() Dim simpan As New SqlClient.SqlCommand("INSERT INTO tb_matkul VALUES ('" & txt_kode.text & "','" & txt_nama_matkul.text & "')") simpan.connection = koneksi Try simpan.executenonquery() MsgBox("DATA BERHASIL DISIMPAN", MsgBoxStyle.Information, "INFORMATION") 28
"FAILED") tampil_data() Catch ex As Exception MsgBox("DATA GAGAL DI SIMPAN", MsgBoxStyle.Critical, End Try End If D. Update Data Mata Kuliah Double klik pada button Update dan tuliskan perintah berikut : If txt_kode.text = "" Then MsgBox("PILIH DATA DULU", MsgBoxStyle.Information, "INFORMATION") Else konek_db() Dim update As New SqlClient.SqlCommand("Update tb_matkul set Nama_Matkul ='" & txt_nama_matkul.text & "' WHERE Kode_Matkul='" & txt_kode.text & "'") update.connection = koneksi Try update.executenonquery() MsgBox("DATA BERHASIL DIUPDATE", MsgBoxStyle.Information, "INFORMATION") Catch ex As Exception MsgBox("DATA GAGAL DIUPDATE", MsgBoxStyle.Critical, "FAILED") MsgBox(ex.Message) End Try tampil_data() End If E. Delete Data Mata Kuliah Double klik pada button Delete dan tuliskan perintah berikut : If txt_kode.text = "" Then MsgBox("PILIH DATA DULU", MsgBoxStyle.Information, "INFORMATION") Else konek_db() Dim hapus As New SqlClient.SqlCommand("DELETE FROM tb_matkul WHERE Kode_Matkul = '" & txt_kode.text & "'") hapus.connection = koneksi Try hapus.executenonquery() MsgBox("HAPUS BERHASIL", MsgBoxStyle.Information, "INFORMATION") Catch ex As Exception MsgBox(ex.Message) End Try End If tampil_data() F. Reset Form Data Mata Kuliah Double klik button Reset dan masukkan Code dibawah ini : 29
Sub reset() lv_matkul.items.clear() txt_kode.text = "" txt_nama_matkul.text = "" End Sub 4. Membuat Form Data Mahasiswa Form ini digunakan untuk mendata mahasiswa : Atur setiap komponen seperti pada table berikut : Objeck Name Properties Value Label 1 Text Data Mahasiswa Label 2 Text NIM Label 3 Text Nama Label 4 Text Jenis Kelamin Label 5 Text Tempat Lahir Label 6 Text Tanggal Lahir Label 7 Text Alamat Label 8 Text No. Telp Button 1 Name btn_save Text Simpan Button 2 Name btn_update Text Update Button 3 Name btn_reset Text Reset Button 4 Name btn_delete Text Hapus ListView 1 Name lv_mhs FullRowSelect True GridLines True View Details RichTextbox 1 Name Txt_alamat_alamat ComboBox 1 Name Cb_jk Text Pilih Jenis Kelamin 30
Items (Laki-laki, Perempuan) DateTimePicker Name Dp_tgl Format Short Textbox1 Name Txt_nim Textbox2 Name Txt_nama Textbox3 Name Txt_tgl Textbox4 Name Txt_notelp A. Menampilkan Isi Database Ke dalam Listview Double Klik pada Form Data mahasiswa dan tuliskan kode berikut : Sub tampil_data() reset() konek_db() Dim tampil As New SqlClient.SqlCommand("SELECT * FROM tb_data_mhs") Dim reader As SqlClient.SqlDataReader tampil.connection = koneksi reader = tampil.executereader Dim i As Integer = 0 Do While reader.read lv_data_mhs.items.add(reader!nim) lv_data_mhs.items(i).subitems.add(reader!nama) lv_data_mhs.items(i).subitems.add(reader!jenis_kelamin) lv_data_mhs.items(i).subitems.add(reader!tempat_lahir) lv_data_mhs.items(i).subitems.add(reader!tgl_lahir) lv_data_mhs.items(i).subitems.add(reader!alamat) lv_data_mhs.items(i).subitems.add(reader!no_telp) i = i + +1 Loop End Sub B. Memberikan Event Mouse Click Untuk memberikan event mouseclik pada listview, klik listview kemuidan klik event dibagian properties dan double klik MouseClik lalu tuliskan source code berikut: txt_nim.text = lv_data_mhs.selecteditems(0).subitems(0).text txt_nama.text = lv_data_mhs.selecteditems(0).subitems(1).text cb_jk.text = lv_data_mhs.selecteditems(0).subitems(2).text txt_tempat.text = lv_data_mhs.selecteditems(0).subitems(3).text dp_tgl.text = lv_data_mhs.selecteditems(0).subitems(4).text txt_alamat.text = lv_data_mhs.selecteditems(0).subitems(5).text txt_notlp.text = lv_data_mhs.selecteditems(0).subitems(6).text C. Menyimpan Data Mahasiswa Double klik pada button Save dan tuliskan perintah berikut : If txt_nim.text = "" And txt_nama.text = "" And cb_jk.text = "Pilih Jenis Kelamin" And txt_tempat.text = "" And dp_tgl.text = "" And 31
txt_alamat.text = "" And txt_notlp.text = "" Then MsgBox("Data tidak lengkap", MsgBoxStyle.Critical, "Failed") Else konek_db() Dim simpan As New SqlClient.SqlCommand("INSERT INTO tb_data_mhs VALUES ('" & txt_nim.text & "','" & txt_nama.text & "','" & cb_jk.text & "','" & txt_tempat.text & "', '" & dp_tgl.text & "', '" & txt_alamat.text & "', '" & txt_notlp.text & "')") simpan.connection = koneksi Try simpan.executenonquery() MsgBox("DATA BERHASIL DISIMPAN", MsgBoxStyle.Information, "INFORMATION") tampil_data() Catch ex As Exception MsgBox("DATA GAGAL DI SIMPAN", MsgBoxStyle.Critical, "FAILED") End Try End If D. Update Data Mahasiswa Double klik pada button Update dan tuliskan perintah berikut : If txt_nim.text = "" Then MsgBox("PILIH DATA DULU", MsgBoxStyle.Information, "INFORMATION") Else konek_db() Dim update As New SqlClient.SqlCommand("Update tb_data_mhs set Nama ='" & txt_nama.text & "', Jenis_Kelamin ='" & cb_jk.text & "', Tempat_Lahir ='" & txt_tempat.text & "',Tgl_Lahir ='" & dp_tgl.text & "', Alamat ='" & txt_alamat.text & "', No_Telp = '" & txt_notlp.text & "' WHERE NIM='" & txt_nim.text & "'") update.connection = koneksi Try update.executenonquery() MsgBox("DATA BERHASIL DIUPDATE", MsgBoxStyle.Information, "INFORMATION") 32
"FAILED") Catch ex As Exception MsgBox("DATA GAGAL DIUPDATE", MsgBoxStyle.Critical, MsgBox(ex.Message) End Try tampil_data() End If E. Delete Data Mahasiswa Double klik pada button Delete dan tuliskan perintah berikut : If txt_nim.text = "" Then MsgBox("PILIH DATA DULU", MsgBoxStyle.Information, "INFORMATION") Else konek_db() Dim hapus As New SqlClient.SqlCommand("DELETE FROM tb_data_mhs WHERE NIM = '" & txt_nim.text & "'") hapus.connection = koneksi Try hapus.executenonquery() MsgBox("HAPUS BERHASIL", MsgBoxStyle.Information, "INFORMATION") Catch ex As Exception MsgBox("GAGAL HAPUS DATA", MsgBoxStyle.Critical, "FAILED") End Try End If tampil_data() F. Reset Form Data Mahasiswa Double klik button Reset dan masukkan Code dibawah ini : lv_data_mhs.items.clear() txt_nim.text = "" txt_nama.text = "" cb_jk.text = "Pilih Jenis Kelamin" txt_tempat.text = "" dp_tgl.text = Date.Now txt_alamat.text = "" txt_notlp.text = "" 33
PRAKTIKUM HARI KE-6 Pertemuan : 6 Peralatan dan Perlengkapan Materi Tujuan Pembelajaran dan Praktikum : Visual Studio 2008, SQL Server 2005, dan Crystal Report : CRUD dan Membuat Report : 1. Mahasiswa mampu menyimpan data ke dalam database 2. Mahasiswa mampu mampu membuat laporan sederhana menggunakan crytal report. 1. Membuta Form Nilai Mahasiswa Form nilai ini digunakan untuk memasukkan dan menghitung nilai akhir mahasiwa, buat lah form seperti gambar berikut : Atur setiap komponen seperti pada table berikut : Objeck Name Properties Value Label 1 Text Data Nilai Mahasiswa Label 2 Text NIM Label 3 Text NAMA Label 4 Text Kode Matkul Label 5 Text Nama Matkul Label 6 Text UTS Label 7 Text CP1 Label8 Text CP2 Textbox 1 Name txt_nama Textbox 2 Name Txt_matkul Textbox 3 Name Txt_uts Textbox 4 Name Txt_cp1 Textbox 5 Name Txt_cp2 ComboBox 1 Name Cb_nim 34
Text Pilih NIM ComboBox 2 Name Cb_kode Text Pilih Kode ListView 1 Name lv_nilai FullRowSelect True GridLines True View Details Button 1 Name btn_save Text Simpan Button 2 Name btn_reset Text Reset Button 3 Name Btn_update Text Update Button 4 Name Btn_delete Text Hapus Button 5 Name Btn_report Text Report A. Membuat prosedur hitung nilai akhir Sub hitung() Try If ((CDbl(txt_cp1.Text)) > (CDbl(txt_cp2.Text))) Then nilai_akhir = (0.4 * (CDbl(txt_uts.Text))) + (0.6 * (CDbl(txt_cp1.Text))) ElseIf ((CDbl(txt_cp1.Text)) < (CDbl(txt_cp2.Text))) Then nilai_akhir = (0.4 * (CDbl(txt_uts.Text))) + (0.6 * (CDbl(txt_cp2.Text))) ElseIf ((CDbl(txt_cp1.Text)) = (CDbl(txt_cp2.Text))) Then nilai_akhir = (0.4 * (CDbl(txt_uts.Text))) + (0.6 * (CDbl(txt_cp2.Text))) End If Catch ex As Exception MsgBox(ex.ToString) End Try End Sub B. Membuat prosedur menampilkan NIM Sub tampil_nim() Try Try konek_db() Dim reader As SqlClient.SqlDataReader Dim cmd = New SqlClient.SqlCommand("SELECT * From tb_data_mhs", koneksi) reader = cmd.executereader() While reader.read() cb_nim.items.add(reader("nim")) End While Catch ex As Exception MessageBox.Show("Koneksi Gagal!!!, karena " & ex.message) End Try cb_nim.selectedindex = 0 35
reset() Catch ex As Exception End Try reset() End Sub C. Membuat prosedur menampilkan Kode Matkul Sub tampil_kode() Try Try konek_db() Dim reader As SqlClient.SqlDataReader Dim cmd = New SqlClient.SqlCommand("SELECT * From tb_matkul", koneksi) reader = cmd.executereader() While reader.read() cb_kode.items.add(reader("kode_matkul")) End While Catch ex As Exception MessageBox.Show("Koneksi Gagal!!!, karena " & ex.message) End Try cb_nim.selectedindex = 0 reset() Catch ex As Exception End Try reset() End Sub D. Menampilkan data dari database Sub tampil_data() reset() tampil_nim() tampil_kode() konek_db() Dim tampil As New SqlClient.SqlCommand("SELECT tb_data_mhs.*, tb_matkul.*, tb_nilai.* FROM tb_data_mhs INNER JOIN (tb_matkul INNER JOIN tb_nilai ON tb_matkul.kode_matkul = tb_nilai.kode_matkul) ON tb_data_mhs.nim = tb_nilai.nim") Dim reader As SqlClient.SqlDataReader tampil.connection = koneksi reader = tampil.executereader Dim i As Integer = 0 Do While reader.read lv_nilai.items.add(reader!nim) lv_nilai.items(i).subitems.add(reader!nama) lv_nilai.items(i).subitems.add(reader!kode_matkul) lv_nilai.items(i).subitems.add(reader!nama_matkul) lv_nilai.items(i).subitems.add(reader!uts) lv_nilai.items(i).subitems.add(reader!nilai_cp1) lv_nilai.items(i).subitems.add(reader!nilai_cp2) i = i + +1 Loop End Sub E. Menyimpan Data nilai ke dalam database 36
Double klik pada button Save dan masukkan perintah berikut : If cb_nim.text = "Pilih NIM" And txt_nama.text = "" And cb_kode.text = "Pilih Kode" And txt_nama_matkul.text = "" And txt_uts.text = "" And txt_cp1.text = "" And txt_cp2.text = "" Then MsgBox("Data tidak lengkap", MsgBoxStyle.Critical, "Failed") Else konek_db() Dim simpan As New SqlClient.SqlCommand("INSERT INTO tb_nilai VALUES ('" & cb_nim.text & "','" & cb_kode.text & "','" & txt_uts.text & "','" & txt_cp1.text & "', '" & txt_cp2.text & "', '" & nilai_akhir & "')") simpan.connection = koneksi Try simpan.executenonquery() MsgBox("DATA BERHASIL DISIMPAN", MsgBoxStyle.Information, "INFORMATION") tampil_data() Catch ex As Exception MsgBox("DATA GAGAL DI SIMPAN", MsgBoxStyle.Critical, "FAILED") End Try End If F. Update data nilai If cb_nim.text = "Pilih NIM" And cb_kode.text = "Pilih Kode" Then MsgBox("PILIH DATA DULU", MsgBoxStyle.Information, "INFORMATION") Else hitung() konek_db() Dim update As New SqlClient.SqlCommand("Update tb_nilai set Kode_Matkul ='" & cb_kode.text & "', UTS ='" & txt_uts.text & "', Nilai_CP1 ='" & txt_cp1.text & "',Nilai_CP2 ='" & txt_cp2.text & "',Nilai_AKhir ='" & nilai_akhir & "' WHERE NIM='" & cb_nim.text & "'") update.connection = koneksi Try update.executenonquery() 37
G. Hapus data nilai MsgBox("DATA BERHASIL DIUPDATE", MsgBoxStyle.Information, "INFORMATION") Catch ex As Exception MsgBox(ex.Message) End Try tampil_data() End If Sub hapus_data() If cb_nim.text = "Pilih NIM" Then MsgBox("PILIH DATA DULU", MsgBoxStyle.Information, "INFORMATION") Else konek_db() Dim hapus As New SqlClient.SqlCommand("DELETE FROM tb_nilai WHERE NIM = '" & cb_nim.text & "'") hapus.connection = koneksi Try hapus.executenonquery() MsgBox("HAPUS BERHASIL", MsgBoxStyle.Information, "INFORMATION") Catch ex As Exception MsgBox("GAGAL HAPUS DATA", MsgBoxStyle.Critical, "FAILED") End Try End If tampil_data() End Sub H. Reset form nilai mahasiswa Sub reset() lv_nilai.items.clear() cb_nim.text = "Pilih NIM" txt_nama.text = "" cb_kode.text = "Pilih Kode" txt_nama_matkul.text = "" txt_uts.text = "" txt_cp1.text = "" txt_cp2.text = "" End Sub 2. Membuat Report Menggunakan Crytal Report Dalam pembuatan laporan kita dapat melakukan dengan langkah-langkah sebagai berikut: A. Membuat Dataset 1. Tambahkan dataset baru dengan cara sebagai berikut : Klik menu Project Add New Item Pilih Dataset kemudian klik Add 38
2. Setelah Muncul Tampilan dibawah ini : a. Klik kanan pada daerah ruang disekitar tesk, kemudian b. Pilih Add klik Tabel Adapter c. Hingga muncul Table Adapter Configuration Wizard d. Lalu klik New Connection 39
e. Pilih Microsoft SQL Server klik Continue f. Kemudian masukkan Sarver name sesuai dengan Server name di SQL Server anda (Pada tiap-tiap Komputer Berbeda) g. Pilih juga Database yang akan digunakkan h. Lalu klik Test Connection, jika berhasil maka akan muncul gambar dibawah ini: 40
i. Kemudian Klik OK j. Salanjutnya klik Next pada tampilan berikut : k. Setelah melakukan proses di atas, maka akan muncul tampilan dimana kita akan memilih bagaimana cara TableAdapter mengakses database. l. Pilih Use SQL Statements 41
m. Lalu Next n. Setelah akan muncul tampilan dimana kita memberikan query yang akan kita gunakan dalam laporan kita nanti dan berikan query. SELECT tb_data_mhs.nama, tb_nilai.nim, tb_matkul.nama_matkul, tb_nilai.kode_matkul, tb_nilai.uts, tb_nilai.nilai_cp1, tb_nilai.nilai_cp2, tb_nilai.nilai_akhir FROM tb_matkul INNER JOIN tb_nilai ON tb_matkul.kode_matkul = tb_nilai.kode_matkul INNER JOIN tb_data_mhs ON tb_nilai.nim = tb_data_mhs.nim Atau dapat menggunakan query builder seperti gambar berikut : 42
o. Klik Next p. Maka akan muncul gambar dibawah ini q. Klik Next 43
r. Klik Finish s. Lalu akan muncul tampilan seperti gambar berikut: B. Membuat Crystal Report Setelah membuat dataset diatas, lanjutkan dengan membuat sebuah report dengan cara: a. Klik menu Project Klik Add New Item Klik Reporting klik Crystal report Klik Add b. kemudian muncul Crystal Report Wizard c. Setelah itu pilih Using the Report Wizard Klik OK. 44
d. Setelah itu akan muncul gambar di bawah ini : e. Lalu double klik pada Project Data ADO.Net DataSets Data_Mahasiswa.Dataset1 DataTable1 f. Klik tombol panah hingga tampil tampilan seperti berikut : 45
g. Setelah itu klik Next, dan akan muncul tampilan berikutnya seperti gambar dibawah ini : h. Setelah itu pilih Standard 46
i. Setelah itu klik finish j. Jika sudah klik Finish, akan muncul tampilan seperti gambar dibawah ini : C. Membuat Form Report Buat form baru dengan cara sebagai berikut : a. Klik menu Project klik Add Windows Form b. Setelah itu hingga muncul tampilan seperti yang ada dibawah ini : 47
c. Kemudian klik Add d. Setelah itu akan muncul tampilan form baru seperi gambar dibawah ini : e. Setelah itu klik Toolbox, Pilih CrytalReportViewer f. Setelah itu Tarik CrytalReportViewer kedalama form yang masih kosoing g. Lalu klik kanan di form pilih Properties klik ReportSource Pilih Nama Crystalreport yang telah kalian buat. 48
h. Double klik pada form report kemudian masukkan perintah berikut : Dim rep As CrystalReport1 = New CrystalReport1() Dim query = New SqlClient.SqlCommand Dim data As New DataTable Dim reader As SqlClient.SqlDataReader konek_db() query.commandtext = "SELECT tb_data_mhs.nama, tb_nilai.nim, tb_matkul.nama_matkul, tb_nilai.kode_matkul, tb_nilai.uts, tb_nilai.nilai_cp1, tb_nilai.nilai_cp2, tb_nilai.nilai_akhir FROM tb_matkul INNER JOIN tb_nilai ON tb_matkul.kode_matkul = tb_nilai.kode_matkul INNER JOIN tb_data_mhs ON tb_nilai.nim = tb_data_mhs.nim" query.connection = koneksi reader = query.executereader data.load(reader) rep.setdatasource(data) Me.CrystalReportViewer1.ReportSource = rep Me.Show() i. Jika sudah running program nya dan amati hasil nya. 49