DIKTAT KULIAH PRAKTIKUM PEMROGRAMAN III
DI SUSUN OLEH EDI FAIZAL, S.T
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER EL RAHMA YOGYAKARTA 2010
KATA PENGANTAR
Bismillahirrohmanirrohiim Assalamua’alaikum Wr. Wb. Alhamdulillahirobbil’alamin, puji syukur penulis panjatkan kehadirat Allah SWT. Yang telah memberikan rahmat dan hidayah-Nya sehingga terselesaikannya penyusunan dan penulisan diktat kuliah pemrograman III untuk Program Studi Manajemen Informatika STIMIK EL Rahma Yogyakarta. Penulis menyadari sepenuhnya bahwa tanpa bantuan dari berbagai pihak niscaya sulit bagi penulis untuk menyelesaikan Diktat ini. Untuk itu, dengan ikhlas penulis mengucapkan terima kasih yang tak terhingga kepada semua telah membantu dalam peyusunan dan penulisan diktat ini, Semoga Allah SWT. Melimpahkan karunia dan hidayah kepada mereka semua yang telah membantu penulis dalam menyelesaikan penyusunan diktat ini. Harapan penulis semoga Diktat ini bermanfaat bagi pembaca sekalian. Akhir kata hanya kepada-Nya segala urusan dikembalikan, semoga kita selalu dalam lindungan-Nya, Amin. Wassalamu’alaikum Wr.Wb.
Yogyakarta, 29 Juli 2010 Penulis
BAB I VISUAL DATA MANAGER, DATA CONTROL DAN DBGRID
A. Visual Data Manager Definisi: Visual data manager adalah pengelola database yang include dalam visual basic. Database yang dapat dibuat dengan visual data manager antara lain ; Microsoft Acces, paradox, Dbase, FoxPro dll B. Data Control Definisi: Control yang digunakan untuk menghubungkan interface dengan database C. Dbgrid Control Definisi: Control yang digunakan untuk menampilkan record dalam sebuah tabel pada databasae D. Implementasi 1. Menbuat database a. Buka visual basic b. Pilih menu Add-Ins dan pilih Visual Data Manager c. Setelah muncul visual data manager maka pilih menu File New Microsoft Acces Version 7.0 mdb
Gambar 1. Jendela Visual Data Manager d. Lalu tentukan lokasi penyimpanan database (berinama database) e. Klik kanan pada properties yang ada pada Database Windows buatalah sebuah tabel dengan nama Mahasiswa pada tebel structure dengan ketentuan sebagai berikut:
Gambar 2. Menambahkan Tabel Baru Pada Visual Data Manager Name NIM Nama Alamat Jurusan
Type Text Text Text Text
Size 8 30 30 25
Gambar 3. Mengisikan Field Pada Tabel Mahasiswa f. Setelah semua field dimasukkan lalu klik Build Table untuk membuat tabel tersebut
2. Menyiapkan Form a. Pastikan Visul Basic dalam keadaan aktif b. Siapkan sebuah form dengan cara Add Form pada jendela Project c. Tambahkan beberapa komponen dan atur propertinya seperti berikut : Komponen Properties Value Form Name frmUtama StartUpPosition CenterScreen Data Name Data1 Connet Acces Databasename Pilih sesuai alamat database DefaultType UseJet RercordsetType Table RercordSource Mahasiswa Text1 Name txtNIM DataSource Data1 DataField NIM MaxLength 8 Text2 Name txtNama DataSource Data1 DataField Nama MaxLength 30 Text3 Name txtAlamat DataSource Alamat DataField Alamat MaxLength 30 Text4 Name txtJurusan DataSource Data1 DataField Jurusan MaxLength 25 Command1 Name cmdAdd Caption Add Command2 Name cmdRefresh Caption Refresh Command3 Name cmdDelete Caption Delete Command4 Name cmdUpDate Caption UpDate Command5 Name cmdClose Caption Close Label1 Caption NIM Label2 Caption Nama Label3 Caption Alamat Label4 Caption Jurusan DBGrid * DataSource Data1 * klik kanan pada toolboxpilih Componetscek Microsoft Data Bound Grid Control 5.0 (SP3)
Gambar 4. Manambahkan Component DBGrid Control 5.0 (SP3)
Gambar 5. Rancangan Interface Program
3. Listing Dan Coding Tuliskan listing berikut pada masing-masing komponen yang sudah anda rancang sebelumnya a. Listing untuk menambah record pada database Private Sub cmdAdd_Click() Data1.Recordset.AddNew MsgBox "Silahkan mengisi data yang akan ditambahkan...!", vbInformation + vbOKOnly, "Add Data" txtOrderID.SetFocus End Sub
b. Listing untuk menghapus record pada database Private Sub cmdDelete_Click() Data1.Recordset.Delete MsgBox "Data Telah Dihapus...!",VbInformation+ vbOKOnly, "Deleted" Data1.Recordset.MoveFirst End Sub c. Listing untuk merefresh data pada database Private Sub cmdRefresh_Click() Data1.Refresh MsgBox "Data Yang Anda Masukkan Telah Tersimpan Dalam Database...!", vbInformation + vbOKOnly, "Refresh" Data1.Recordset.MoveFirst End Sub d. Listing untuk mengUpDate data pada database Private Sub cmdUpDate_Click() Data1.UpdateRecord MsgBox "Data Telah di Ubah...!", vbInformation + vbOKOnly, "Update" End Sub e. Listing untuk menutup form Private Sub cmdClose_Click() Dim Question Question = MsgBox("Apakah anda akan menutup program ini...?", vbInformation + vbYesNo, "Question") If Question = vbYes Then Unload Me End If End Sub
BAB II PENGELOLAAN DATABASE MENGGUNAKAN ADODC DAN DATAGRID
A. ADODC Adodc adalah konektor database yang dapat digunakan untuk menoneksikan keberbegai perangkat lunak database (software management database /DBMS) seperti Microsoft Access, Microsoft SQL Server, Oracle dan DBMS lainnya. ADODC dilengkapi dengan engine untuk koneksi, engine tersebut digunakan disesuaikan dengan database yang di gunakan. Untuk menggunakan komponen ADODC, kita harus mengaktifkan komponen Microsoft ADO Data Control 6.0 (OLEDB) yang ada pada jendela component. Langkah untuk mengaktifkan jendela tersebut sebagai berikut: 1. klik kanan pada Tollbox dan pilih components 2. setelah jendelan komponen keluar maka cari dan aktifkan Microsoft ADO Data Control 6.0 (OLEDB) dengan cara mencentang 3. klik Apply atau OK 4. selanjutnya komponen ADODC akan muncul di Tollbox
Gambar 1. Menambah komponen ADO Data control B. Datagrid Datagrid adalah komponen yang digunakan untuk menampilkan database yang terkoneksi, seperti dengan koneksi ADODC.
Untuk menggunakan komponen ini kita harus mengaktifkan komponen Microsoft DataGrid Control 6.0 (OLEDB) pada jendela komponen, langkah-langkahnya sebagai berikut: 1. klik kanan pada Tollbox dan pilih components 2. setelah jendelan komponen keluar maka cari dan aktifkan Microsoft DataGrid Control 6.0 (OLEDB) dengan cara mencentang 3. klik Apply atau OK 4. selanjutnya komponen DataGrid akan muncul di Tollbox
Gambar 1. Menambah komponen DataGrid control C. Implementasi 1. Penggunaan Adodc Dan Datagrid Penggunaan ADODC dan DataGrid sebagai Koneksi ke database Ms. Acces. Siapkan terlebih dahulu sebuah database dengan menggunakan Ms. Access dengan nama Kesiswaan, dan buatlah sebuah table dengan nama DataIndukSiswa dengan ketentuan berikut :
Field NIS Nama Alamat Wali
Size 8 25 50 25
Type Text Text Text Text
2. Perancangan Interface Siapkan sebuah form dengan komponen dan property sebagai berikut :
Komponen Properties Form Name StartUpPosition Adodc Name Text1 Name DataSource DataField MaxLength Text2 Name DataSource DataField MaxLength Text3 Name DataSource DataField MaxLength Text4 Name DataSource DataField MaxLength Command1 Name Caption Command2 Name Caption Command3 Name Caption Command4 Name Caption Command5 Name Caption Command6 Name Caption Label1 Caption Label2 Caption Label3 Caption Label4 Caption DataGrid DataSource
Value frmUtama CenterScreen Adodc1 txtNIS Adodc1 NIS 8 txtNama Adodc1 Nama 30 txtAlamat Alamat Alamat 30 txtWali Adodc1 Wali 25 cmdAdd Add cmdRefresh Refresh cmdDelete Delete cmdUpDate UpDate cmdSave Save cmdClose Close NIS Nama Alamat Wali Adodc1
Gambar 3. Rancangan interface
3. Cara mengoneksikan Adodc dengan database Langkah yang harus dilakukan untuk mebuat koneksi kedatabase adalah sebagai berikut a. Letakkan sebuah Adodc dalam form b. Klik kan pada adodc dan pilih Adodc Properties c. Setelah muncul property pages lalu klik Build
Gambar 3. Property pages Adodc d. Lalu pilih provider database yang sesuai dengan database yang telah dibuat, yaitu menggunakan Microsoft Jet 4.0 OLE DB Provider. Jet 4.0 digunakan jika menggunakan Ms. Access versi diatas versi ’97. untuk versi 97 kebawah benggunakan Jet 3.5. sedangankan menggunakan database lain disesuaikan dengan pilihan* e. Klik Next dan pilih lokasi database yang tersimpan f. Untuk memastikan Adodc sudah terkoneksi atau belum klik Test Connection g. Jika koneksi sukses klik ok. Lalu lakukan pemilihan tabel dengan cara memilih Kombo Command Type. Karena kita kan menggunakan tabel, pilih addCmdTable dan sesuaikan namatabel yang akan digunakan pada kombo Table Name h. Klik Ok, sampai disini Adodc sudah terkoneksi kedalam database dan tabel yang dipilih.
4. Listing dan Coding Masukkan listing program berikut kedalam masing-masing komponen ‘Untuk menyiapkan sebuah record baru dalam tabel
Private Sub cmdAdd_Click() Adodc1.Recordset.AddNew txtNIS.Setfocus End Sub ‘Untuk menyimpan record baru Private Sub cmdSave_Click() Adodc1.Recordset.Save End Sub ‘Untuk menghapus sebuah record dalam tabel Private Sub cmdDelete_Click() Adodc1.Recordset.Delete End Sub ‘Untuk merefresh database dan tabel yang terhubung dengan Adodc Private Sub cmdRefresh_Click() Adodc1.Refresh End Sub ‘Untuk mengUpdate atau merubah data Private Sub cmdUpDate_Click() Adodc1.Recordset.Update End Sub ‘Untuk keluar dari program Private Sub cmdClose_Click() End End Sub
BAB III PENGELOLAAN DATABASE MENGGUNAKAN DATA ENVIRONTMENT DAN DATAGRID
A. Data Environtment Seperti halnya Adodc yang telah kita bahas sebelumnya, Data Environtment adalah konektor database yang dapat digunakan untuk menoneksikan keberbegai perangkat lunak database (software management database /DBMS) seperti Microsoft Access, Microsoft SQL Server, Oracle dan DBMS lainnya. Data Environtment dilengkapi dengan engine untuk koneksi, engine tersebut digunakan disesuaikan dengan database yang di gunakan. Langkah untuk mengaktifkan jendela tersebut sebagai berikut: 5. Klik kanan pada projrect explorer 6. Pilih Add lalu pilih Data Environtment 7. Selanjutnya Data Environtment akan muncul sebagai berikut
Gambar 1. Menambah Data Environtment
B. Datagrid Seperti bahasan meteri sebelumnya, bahwa Datagrid adalah komponen yang digunakan untuk menampilkan database yang terkoneksi, seperti dengan koneksi Data Environtment . Untuk menggunakan komponen ini kita harus mengaktifkan komponen Microsoft DataGrid Control 6.0 (OLEDB) pada jendela komponen, langkah-langkahnya sebagai berikut: 1. klik kanan pada Tollbox dan pilih components 2. setelah jendelan komponen keluar maka cari dan aktifkan Microsoft DataGrid Control 6.0 (OLEDB) dengan cara mencentang 3. klik Apply atau OK 4. selanjutnya komponen DataGrid akan muncul di Tollbox
Gambar 1. Menambah komponen DataGrid control C. Implementasi 1. Penggunaan Data Environtment Dan Datagrid Penggunaan data environtment dan DataGrid sebagai Koneksi ke database Ms. Acces. Siapkan terlebih dahulu sebuah database dengan menggunakan Ms. Access dengan nama Kesiswaan, dan buatlah sebuah table dengan nama DataIndukSiswa dengan ketentuan berikut :
Field NIS Nama
Size 8 25
Type Text Text
Alamat Wali
50 25
Text Text
2. Perancangan Interface Siapkan sebuah form dengan komponen dan property sebagai berikut : Komponen Form
Properties Name StartUpPosition Command1 Name Caption Command2 Name Caption Command3 Name Caption Command4 Name Caption Command5 Name Caption Command6 Name Caption Command7 Name Caption Command8 Name Caption Command9 Name Caption DataGrid DataSource DataMember * untuk memasukkan textbox dan label
Value frmUtama CenterScreen cmdAdd Add cmdDelete Delete cmdUpDate UpDate cmdSave Save cmdClose Close cmdFirst |<< cmdPrev << cmdNext >> cmdLast >>| Data Environtment 1 Command1 langsung menggunakan fasilitas Data
Environtment
Gambar 2. Rancangan interface
3. Cara mengoneksikan Data Environtment dengan database Langkah yang harus dilakukan untuk mebuat koneksi ke database adalah sebagai berikut a. Pastikan aktif pada jendela Data Environtment b. Klik kanab Connection1 pada jendela Data Environtment lalu pilih Properties c. Lalu pilih Provider dan Database . Seprti koneksi menggunakan Adodc, Masih ingat kan…!!!!! d. Setelah koneksi sukses, maka tambahkan sebuah Command pada Connection1 dengan cara Klik kanan pada Connection1 lalu pilih Add Command e. Untuk mengatur t abel yang digunakan, klik kanan pada Command1 yang baru dibuat kemudian pilih Properties hingga muncul jendela seperti dibawah ini :
Gambar 3. Command1 Properties f. Pilih Tab General dan atur Database Object dengan pilihan Table dan Object Name sesuai dengan nama tabel yang tadi dibuat. g. Untuk mengatur hak akses pilih Tab Advanced lalu pada Combo Lock Type pilih option ke-3 yaitu Optimistic (agar bisa melakukan operasi Add, UpDate, dan Delete) kemudian OK h. Jika semua sudah diatur maka semua Field yang ada pada tabel yang pilih akan terlihat pada Command1 dengan cara mengklik tanda panah
Gambar 4. Field pada Command1 i. Textbox dan Label dari Field dapat dibuat dengan cara menyeret Command1 kedalam Form.*
4. Listing dan Coding Masukkan listing program berikut kedalam masing-masing komponen ‘Untuk menyiapkan sebuah record baru dalam tabel Private Sub cmdAdd_Click() On Error Resume Next DataEnvironment1.rsCommand1.AddNew txtNIM.SetFocus End Sub ‘Untuk menyimpan record baru Private Sub cmdSave_Click() On Error Resume Next DataEnvironment1.rsCommand1.Save MsgBox "Data sudah disimpan", vbOKOnly + vbInformation, "Sudah Disimpan" End Sub
‘Untuk menghapus sebuah record dalam tabel Private Sub cmdDelete_Click() On Error Resume Next DataEnvironment1.rsCommand1.Delete MsgBox "Data sudah dihapus", vbOKOnly + vbInformation, "Data Dihapus" DataEnvironment1.rsCommand1.MoveFirst End Sub ‘Untuk mengUpdate atau merubah data Private Sub cmdUpDate_Click() On Error Resume Next DataEnvironment1.rsCommand1.Update MsgBox "Data sudah diubah", vbOKOnly + vbInformation, "Data Diubah" End Sub ‘Untuk berpindah ke record pertama Private Sub cmdFirst_Click() On Error Resume Next DataEnvironment1.rsCommand1.MoveFirst End Sub ‘Untuk berpindah ke record terakhir Private Sub cmdLast_Click() On Error Resume Next DataEnvironment1.rsCommand1.MoveLast End Sub ‘Untuk berpindah ke record selanjutnya Private Sub cmdNext_Click() On Error Resume Next DataEnvironment1.rsCommand1.MoveNext If DataEnvironment1.rsCommand1.EOF Then DataEnvironment1.rsCommand1.MoveLast
MsgBox "Data sudah pada record terakhir", vbOKOnly + vbInformation, "Record Terakhir" End If End Sub ‘Untuk berpindah ke record sebelumnya Private Sub cmdPrev_Click() On Error Resume Next DataEnvironment1.rsCommand1.MovePrevious If DataEnvironment1.rsCommand1.BOF Then DataEnvironment1.rsCommand1.MoveFirst MsgBox "Data sudah pada record pertama", vbOKOnly + vbInformation, "Record Pertama" End If End Sub ‘Untuk keluar dari program Private Sub cmdClose_Click() End End Sub
BAB IV PEMROGRAMAN DATABASE MENGGUNAKAN KONEKSI BERBASIS MODUL DAN LISTVIEW
Pada bahasan sebelumnya, untuk mengkoneksikan interface (Antarmuka) dengan database kita menggunakan komponen seperti Data, ADODC dan DE (Data Environment). Berbeda dengan praktikum kali ini, kita tidak menggunkana component untuk mengkoneksikan dengan database melainkan dengan menggunakan deklarai dalam sebuah modul. A. Modul Modul adalah sebuah fasilitas yang diberikan oleh visual basic dan sebagian besar bahasa pemrograman yang digunakan untuk mendeklarasikan variable-variable global / Public (Umum), contohnya untuk menggokeksikan kedalam sebuah database atau lebih.
B. ListView Listview adalah sebuah komponen yang digunakan untuk menampilkan data, sama fungsinya seperti DataGrid atau DBGrid. Komponen ini berada dalam Microsoft Windows Common Controls 6.0. Berbeda dengan DataGrid atau DBGrid, komponen ini bisa menampilkan judul field dengan mengunakan icon. Komponen ini adalah standart penampil dalam MS. Windows, Contohnya pada Windows Explorer.
C. Implementasi 1. Basisdata Siapkan terlebih dahulu sebuah database dengan menggunakan Ms. Access dengan nama Kesiswaan,(simpan pada folder tempat akan menyimpan Project Visual Basic) dan buatlah sebuah table dengan nama DataIndukSiswa dengan ketentuan berikut :
Field NIS Nama Alamat Wali
Size 8 25 50 25
Type Text Text Text Text
2. Perancangan Interface Siapkan sebuah form dengan komponen dan property sebagai berikut : Komponen Form Text1 Text2 Text3 Text4 Command1 Command2 Command3 Command4 Command5 ListView Modul1 Modul2
Properties Name StartUpPosition Name Name Name Name Name Caption Name Caption Name Caption Name Caption Name Caption Name Name Name
Value frmUtama CenterScreen txtNIM txtNama txtAlamat txtWali cmdAdd Add cmdDelete Delete cmdUpDate UpDate cmdSave Save cmdClose Close ListView1 Koneksi AturListView
ListView1
Gambar 1. Rancangan interface 3. Mendeklarasikan Koneksi Untuk membuat koneksi kedatabase kita harus mendeklarasikan variable koneksi pada modul koneksi tapi sebelum itu aktifkan referensi database dengan cara :
a. Klik menu Project References setelah muncul jendela references chrck / centang Microsoft ActiveX Data Objects 2.0 Library b.
Ketikan listing berikut pada Modul Koneksi Public strcon As New Connection Public Sub OpenDatabase() On Error GoTo ErrOpen Dim strDB As String ‘// Mengeset Alamat Database strDB = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Kesiswaan.mdb;Persist Security Info=False" strcon.Open strDB strcon.CursorLocation = adUseClient Exit Sub ErrOpen: MsgBox Err.Description End Sub
4. Mendeklarasikan Pengaturan ListView Untuk memberikan aturan umum pada ListView ketikan listing berikut pada modul AturListView : Public item As ListItem Public
Sub
AturListViewe(ListView1
As
ListView,
ParamArray
lstView()) On Error Resume Next Dim i, lebar ListView1.View = lvwReport lebar = ListView1.Width - 80 With ListView1.ColumnHeaders .Clear For i = 0 To UBound(lstView) - 1 Step 2 .Add , , lstView(i), (lstView(i + 1) * lebar) / 100 Next i End With Exit Sub End Sub
5. Listing dan Coding Masukkan listing program berikut kedalam masing-masing komponen
‘ Membuat deklarasi rs secara Private pada Tab General sebagai alias tabel Private rs As Recordset
‘Membuat Sub Kosong untuk mengosongkan textbox Private Sub Kosong() txtNIM.Text = "" txtNama.Text = "" txtAlamat.Text = "" txtWali.Text = "" txtNIM.Text = "" End Sub
‘Menampilkan Record pada saat form di Load Private Sub Form_Load() Call OpenDatabase Call AturListViewe(ListView1, "NIM", 15, "Nama", 25, "Alamat", 35, "Wali", 25) SQL = "SELECT * FROM DataIndukSiswa" Set rs = strcon.Execute(SQL) ListView1.ListItems.Clear Do While Not rs.EOF Set
item
=
ListView1.ListItems.Add(,
,
rs.Fields(0).Value) item.SubItems(1) = rs.Fields(1).Value item.SubItems(2) = rs.Fields(2).Value item.SubItems(3) = rs.Fields(3).Value rs.MoveNext Loop strcon.Close End Sub
‘Memasukkan data di ListView pada textbox saat ListView di Klik Private Sub ListView1_Click() i = ListView1.SelectedItem.Index A = MsgBox("Apakah Anda Akan Mengedit Data Ini ? ", vbYesNo, "Konfirmasi") If A = vbNo Then Kosong Exit Sub End If
If ListView1.ListItems.Count = 0 Then Exit Sub i = ListView1.SelectedItem.Index txtNIM.Text = Trim(ListView1.ListItems.item(i)) txtNama.Text = Trim(ListView1.SelectedItem.SubItems(1)) txtAlamat.Text = Trim(ListView1.SelectedItem.SubItems(2)) txtWali.Text = Trim(ListView1.SelectedItem.SubItems(3)) End Sub
‘Menambah sebuah record Private Sub cmdAdd_Click() Kosong txtNIM.SetFocus End Sub
‘Menyimpan record Private Sub cmdSave_Click() On Error Resume Next Call OpenDatabase SQL = "insert into DataIndukSiswa (NIM,Nama,Alamat,Wali)values ('" & txtNIM.Text & "', '" & txtNama.Text & "','" & txtAlamat.Text & "','" & txtWali.Text & "')" Set rs = strcon.Execute(SQL) Call AturListViewe(ListView1, "NIM", 15, "Nama", 25, "Alamat", 35, "Wali", 25) SQL = "SELECT * FROM DataIndukSiswa" Set rs = strcon.Execute(SQL) ListView1.ListItems.Clear Do While Not rs.EOF Set
item
=
ListView1.ListItems.Add(,
,
rs.Fields(0).Value) item.SubItems(1) = rs.Fields(1).Value item.SubItems(2) = rs.Fields(2).Value item.SubItems(3) = rs.Fields(3).Value rs.MoveNext Loop strcon.Close MsgBox "Data sudah disimpan", vbOKOnly + vbInformation, "Sudah Disimpan" Kosong End Sub
‘MengUpDate data Private Sub cmdUpDate_Click() On Error Resume Next Call OpenDatabase SQL
=
"update
DataIndukSiswa
set
Nama='"
&
txtNama.Text
&
"',Alamat='" & txtAlamat.Text & "',Wali='" & txtWali.Text & "' where NIM ='" & txtNIM.Text & "' " Set rs = strcon.Execute(SQL) Call AturListViewe(ListView1, "NIM", 15, "Nama", 25, "Alamat", 35, "Wali", 25) SQL = "SELECT * FROM DataIndukSiswa" Set rs = strcon.Execute(SQL) ListView1.ListItems.Clear Do While Not rs.EOF Set
item
=
ListView1.ListItems.Add(,
,
rs.Fields(0).Value) item.SubItems(1) = rs.Fields(1).Value item.SubItems(2) = rs.Fields(2).Value item.SubItems(3) = rs.Fields(3).Value rs.MoveNext Loop strcon.Close MsgBox
"Data
sudah
diubah",
vbOKOnly
+
vbInformation,
"Data
Diubah" Kosong End Sub
‘Menghapus data Private Sub cmdDelete_Click() On Error Resume Next Call OpenDatabase SQL = "delete from DataIndukSiswa where NIM ='" & txtNIM.Text & "' " Set rs = strcon.Execute(SQL) Call AturListViewe(ListView1, "NIM", 15, "Nama", 25, "Alamat", 35, "Wali", 25) SQL = "SELECT * FROM DataIndukSiswa" Set rs = strcon.Execute(SQL) ListView1.ListItems.Clear Do While Not rs.EOF Set ListView1.ListItems.Add(,,rs.Fields(0).Value)
item
item.SubItems(1) = rs.Fields(1).Value item.SubItems(2) = rs.Fields(2).Value item.SubItems(3) = rs.Fields(3).Value rs.MoveNext Loop strcon.Close MsgBox
"Data
sudah
dihapus",
Dihapus" Kosong End Sub
‘Untuk keluar dari program Private Sub cmdClose_Click() End End Sub
vbOKOnly
+
vbInformation,
"Data
BAB V PEMROGRAMAN DATABASE MENGGUNAKAN KONEKSI BERBASIS MODUL DAN LISTVIEW PADA DATABASE MY SQL
A. Dasar My SQL My SQL adalah software DBMS yang mudah untuk digunakan, kinerja cepat dan dapat digunakan untuk database ukuran kecil hingga menengah. My SQL bersifat client-server dan multiuser serta bisa berjalan pada multi flatform dengan kata lain My SQL bisa berjalan dibawah Sistem Operasi Windows ataupun linux. My SQL juga fleksibel untuk dikoneksikan keberbagai bahasa pemrograman seperti Visual Basic, Delphi, FoxPro dan sebagainya. B. Persiapan Menggunkan Visual Basic – My SQL Sebelum melakukan koneksi kedatanase, ada beberapa hal yang harus dipersiapkan sebagai berikut: 1. Persiapkan Database Database yang dimaksud tentunya database pada My SQL dengan spesifikasi sebagai berikut : Nama database Nama Tabel Field
: SISWA : DataInduk : NIS bertipe CHAR (10) Nama bertipe CHAR (25) Alamat bertipe CHAR (50) Wali Bertipe CHAR (25)
Caranya: Aktifkan My SQL dan berikan perintah untuk membuat database : MySQl> Create DATABASE SISWA;
Berikan perintah untuk menggunakan database SISWA : MySQl> Use SISWA;
Berikan perintah untuk membuat tabel DataInduk: MySQl> create Table DataInduk( → Nis CHAR(10), → Nama CHAR(25), → Alamat CHAR(50), → Wali CHAR(25));
Sampai disini kita suda:h mempunyai sebuah tabel bernama SISWA dan tabel didalamnya bernama DataInduk pada database MySQL yang selanjutnya akan kita koneksikan dan dikelola dengan Visual Basic.
2. Persiapan File dalam melakukan koneksi menggunakan database MysSQL perlu diperhiapakan tools Bantu yaitu: File MySQL.dll, kopikan file ini kedalam direktori system (c:\windows\system (Under 9x) dan c:\windows\system32(Under NT))
lakukan Registrasi dengan cara regsvr32 c:\windows\system\MySQL.dll pada jendela RUN buatlah sebuah direktori kerja pada explorer dan kopikan file libmySQL.dll pada direktori tersebut
3. Persiapan Pada Visual Basic Aktifkan Reference MySQL Visual Basic API v2.0.0 pada jendela Reference
] Gambar 1 Jendela Reference tambahkan sebuah modul Koneksi untuk mengoneksikan Visual Basic dengan MySQL, sebagai berikut: Global MyConn As New MYSQL_CONNECTION Public Sub ShowError() MsgBox "Error " & MyConn.Error.Number & ":(" & MyConn.Error.Description & ")" & _ vbCritical + vbOKOnly, "Kesalahan Koneksi" End Sub Public Function Koneksi(pHost As String, pUserName As String, pPassword As String) As Boolean MyConn.SetOption MYSQL_OPT_COMPRESS MyConn.OpenConnection pHost, pUserName, pPassword, "", 3306 If MyConn.State = MY_CONN_OPEN Then Koneksi = True MsgBox "Anda sudah terhubung kedatabase", vbInformation + vbOKOnly, "Succes" Else Koneksi = False If MyConn.Error.Number <> 0 Then ShowError End If End Function
Untuk pengaturan ListView tambahkan sebuah modul AturListView, sebagai berikut: Public item As ListItem Public Sub AturListViewe(ListView1 As ListView, ParamArray lstView()) On Error Resume Next Dim i, lebar ListView1.View = lvwReport lebar = ListView1.Width - 80 With ListView1.ColumnHeaders .Clear For i = 0 To UBound(lstView) - 1 Step 2 .Add , , lstView(i), (lstView(i + 1) * lebar) / 100 Next i End With
Exit Sub End Sub
C. Peranncangan Interface Sekarang buatlah dua buah interface dengan kriteria sebagai berikut 1. frmLogin Siapkan sebuah form dengan komponen dan property sebagai berikut : Komponen Form Text1 Text2 Text3 Command1 Command2 Command3
Properties Name StartUpPosition Name Name Name Name Caption Name Caption Name Caption
Value frmLogin CenterScreen Text1 Text1 Text1 cmdExit Exit cmdCancel Cancel cmdLogin Login
Gambar 2. Rancangan interface frmLogin 2. frmUtama Siapkan sebuah form dengan komponen dan property sebagai berikut : Komponen Form Text1 Text2 Text3 Text4 Command1 Command2 Command3 Command4
Properties Name StartUpPosition Name Name Name Name Name Caption Name Caption Name Caption Name Caption
Value frmUtama CenterScreen txtNIS txtNama txtAlamat txtWali cmdAdd Add cmdDelete Delete cmdEdit Edit cmdSave Save
Command5 ListView Modul1 Modul2
Name Caption Name Name Name
cmdClose Close ListView1 Koneksi AturListView
Gambar 3. Rancangan interfacefrmUtama
D. Listing dan Coding Tuliskan listing berikut pada masing-masing form dan jangan lupa deklarasikan variable berikut pada Tab General frmUtama: Private rsMhs As MYSQL_RS
1. FrmLogin Private Sub cmdCancel_Click() Text1.Text = "" Text2.Text = "" Text3.Text = "" Text1.SetFocus End Sub Private Sub cmdExit_Click() End End Sub Private Sub cmdLogin_Click() Dim cHost As String, cUser As String, cPassword As String DoEvents cHost = Text1.Text cUser = Text2.Text cPassword = Text3.Text If cHost <> "" And cUser <> "" Then Loginsuccesed = Koneksi(cHost, cUser, cPassword) End If frmUtama.Show vbModal End Sub
2. FrmUtama ‘Membuat Sub Kosong untuk mengosongkan textbox Private Sub Kosong() txtNIS.Text = "" txtNama.Text = "" txtAlamat.Text = "" txtWali.Text = "" End Sub
‘Menampilkan Record pada saat form di Load Private Sub Form_Load() MyConn.SelectDb "siswa" Call AturListViewe(ListView1, "NIS", 15, "Nama", 25, "Alamat", 30, "Wali", 25) Set rsMhs = MyConn.Execute("select *
from datainduk")
ListView1.ListItems.Clear Do While Not rsMhs.EOF Set
item
=
ListView1.ListItems.Add(,
,
rsMhs.Fields(0).Value) item.SubItems(1) = rsMhs.Fields(1).Value item.SubItems(2) = rsMhs.Fields(2).Value item.SubItems(3) = rsMhs.Fields(3).Value rsMhs.MoveNext Loop Kosong End Sub
‘Memasukkan data di ListView pada textbox saat ListView di Klik Private Sub ListView1_DblClick() i = ListView1.SelectedItem.Index A = MsgBox("Apakah Anda Akan Mengedit Data Ini ? ", vbYesNo, "Konfirmasi") If A = vbNo Then Kosong Exit Sub End If If ListView1.ListItems.Count = 0 Then Exit Sub i = ListView1.SelectedItem.Index txtNIS.Text = Trim(ListView1.ListItems.item(i)) txtNama.Text = Trim(ListView1.SelectedItem.SubItems(1)) txtAlamat.Text = Trim(ListView1.SelectedItem.SubItems(2))
txtWali.Text = Trim(ListView1.SelectedItem.SubItems(3)) End Sub
‘Menambah sebuah record Private Sub cmdAdd_Click() If cmdAdd.Caption = "Add" Then Kosong txtNIS.SetFocus cmdAdd.Caption = "Cancel" Else cmdAdd.Caption = "Add" Kosong End If End Sub
‘Menyimpan record Private Sub cmdSave_Click() MyConn.SelectDb "siswa" SQL = "insert into datainduk(NIS,Nama,Alamat,wali) values ('" & txtNIS.Text & "','" & txtNama.Text & "','" & txtAlamat.Text & "','" & txtWali.Text & "')" Set rsMhs = MyConn.Execute(SQL) MsgBox
"Data
sudah
disimpan",
vbOKOnly
+
vbInformation,
"Sudah Disimpan" Call AturListViewe(ListView1, "NIS", 15, "Nama", 25, "Alamat", 30, "Wali", 25) Set rsMhs = MyConn.Execute("select *
from datainduk")
ListView1.ListItems.Clear Do While Not rsMhs.EOF Set
item
=
ListView1.ListItems.Add(,
,
rsMhs.Fields(0).Value) item.SubItems(1) = rsMhs.Fields(1).Value item.SubItems(2) = rsMhs.Fields(2).Value item.SubItems(3) = rsMhs.Fields(3).Value rsMhs.MoveNext Loop Kosong End Sub
‘MengEdit data Private Sub cmdEdit_Click()
MyConn.SelectDb "siswa" SQL
=
"update
datainduk
set
nama='"
&
txtNama.Text
&
"',Alamat='" & txtAlamat.Text & "',wali='" & txtWali.Text & "' where nis='" & txtNIS.Text & "'" Set rsMhs = MyConn.Execute(SQL) MsgBox "Data sudah diubah", vbOKOnly + vbInformation, "Data Diubah" Call
AturListViewe(ListView1,
"NIS",
15,
"Nama",
25,
"Alamat", 30, "Wali", 25) Set rsMhs = MyConn.Execute("select *
from datainduk")
ListView1.ListItems.Clear Do While Not rsMhs.EOF Set
item
=
ListView1.ListItems.Add(,
,
rsMhs.Fields(0).Value) item.SubItems(1)
=
item.SubItems(2)
=
item.SubItems(3)
=
rsMhs.Fields(1).Value rsMhs.Fields(2).Value rsMhs.Fields(3).Value rsMhs.MoveNext Loop Kosong End Sub
‘Menghapus data Private Sub cmdDelete_Click() MyConn.SelectDb "siswa" SQL = "delete from datainduk where nis='" & txtNIS.Text & "'" Set rsMhs = MyConn.Execute(SQL) MsgBox "Data sudah dihapus", vbOKOnly + vbInformation, "Data Dihapus" Call AturListViewe(ListView1, "NIS", 15, "Nama", 25, "Alamat", 30, "Wali", 25) Set rsMhs = MyConn.Execute("select *
from datainduk")
ListView1.ListItems.Clear Do While Not rsMhs.EOF Set
item
=
ListView1.ListItems.Add(,
,
rsMhs.Fields(0).Value) item.SubItems(1) = rsMhs.Fields(1).Value item.SubItems(2) = rsMhs.Fields(2).Value
item.SubItems(3) = rsMhs.Fields(3).Value rsMhs.MoveNext Loop Kosong End Sub
‘Untuk keluar dari program Private Sub cmdClose_Click() MyConn.CloseConnection Unload Me End Sub
BAB VI MEMBUAT LAPORAN MENGGUNAKAN DATA REPORT DAN DATA ENVIRONTMENT
A. Data Report Report atau laporan adalah sebuah fasilitas yang digunakan untuk memberikan keluaran dari proses yang berupa print out. Report dapat berupa laporan bulanan, laporan tahunan bahkan berupa kwitansi. Untuk membuat report ada berbagai software pembuat report seperti crystal report dan active report. Ada pula fasilitas standar yang disediakan oleh visual basic, yaitu data report. Pada praktikum kali ini kita akan membuat report menggunakan fasilitas data report ini
B. Data Environtment Seperti pada pertemuan terdahulu kita akan menggunakan fasilitas data environtment sebagai konektor ke database yang akan dibuat reportnya. Masih ingat kan caranya..???!!!.. Langkah untuk mengaktifkan jendela tersebut sebagai berikut: 1. Klik kanan pada projrect explorer 2. Pilih Add lalu pilih Data Environtment 3. Selanjutnya koneksikan Data Environtment ke database..masih ingat to..masa sudah lupa..tapi sebelum itu buatlah sebuah database terlebih dahulu, sesuai dengan ketentuan dibawah ini.
C. Implementasi 1. Perancangan database Siapkan terlebih dahulu sebuah database dengan menggunakan Ms. Access dengan nama Kesiswaan, dan buatlah sebuah table dengan nama DataIndukSiswa dengan ketentuan berikut : Field NIS Nama Alamat Wali
Size 8 25 50 25
Type Text Text Text Text
2. Perancangan Interface Siapkan sebuah form dengan komponen dan property sebagai berikut : Komponen Form
Command1 Command2
Properties Name StartUpPosition Caption Name Caption Name Caption
Value frmUtama CenterScreen Laporan cmdReport Report cmdClose Close
Gambar 1. Rancangan interface 3. Menambahkan Data Report Sebelum menambahkan data report pastikan data environtment sudah terkoneksi dengan database dan tabel yang akan dibuat laproran/reportnya. Jika sudah, lakukan langkah berikut: a. klik kanan pada Project Explorer Add lalu pilih Data Report. Atau dengan cara lain klik menu Project dan pilih Data Report b.
Pastikan aktif pada jendela Data Report dan ubah propertiesnya pada jendela properties sebagai berikut:
Proverties Value DataSource DataEnvirontment1 DataMember Command1 c. klik darag command1 pada data environtment kedalam bagian detail pada data report d. silahkan mengubah letak atau posisi isi laporan seperti gambar dibawah ini, tapi hati-hati jangan sampai mengubah ukuran kertas
Gambar 2. Rancangan Data Report 4. Listing dan Coding Masukkan listing program berikut kedalam masing-masing komponen form yang tadi anda buat Private Sub cmdReport_Click() With DataReport1 .WindowState = 2 ‘report ditampilkan secara Maximize .Show 'Menampilkan report End With End Sub Private Sub cmdClose_Click() Unload Me ' Keluar dari form End Sub
BAB VII PEMROGRAMAN BERBASIS MULTIMEDIA
A. Multimedia Multimedia adalah kombinasi dari penggunaan beberapa media seperti film, slide, teks, gambar dan suara untuk berbagai tujuan. Bebrapa bentuk file multimedia dalam Windows khususnya antara lain WAVE, MIDI, AVI, MPG dan bebrapa jenis yang lainnya. Bebrapa file tersebut dapat dimainkan dalam windows menggunakan aplikasi seperti winamp, windows media player, Realone Player dan lainnya. Dalam kesempatan ini kita akan coba membuat sebuah aplikasi sederhana yang dapat memainkan file-file multimedia tersebut dengan manggunakan komponen dan pengkodena dalam Visual Basic.
B. Perancangan Awal Sebelumnya anda harus menambahkan komponen Microsoft Windows Common Dialog Control 6.0 dan Microsoft Multimedia Control 6.0 (Masih ingat kan!!!...)
Gambar 1. Jendela penambahan Components
Selanjutnya buat sebuah form dengan property sebagai berikut: Komponen Form Command1 Command2
Properties Name StartUpPosition Name Caption Name Caption
Value frmMultimedia CenterScreen cmdBuka Buka cmdClose Close
CommondDialog1 Name MMControl1 Name
CD MMC
Gambar 2. rancangan Interface
C. Listing dan Coding Selanjutnyamasukkan coding berikut ini Private Sub cmdBuka_Click() MMC.Command = "Close" CD.Filter = "File MP3(*.MP3)|*.mp3" CD.ShowOpen MMC.FileName = CD.FileName MMC.Command = "Open" End Sub Private Sub cmdClose_Click() MMC.Command = "Close" End End Sub Private Sub Form_Load() MMC.BackVisible = False MMC.EjectVisible = False MMC.NextEnabled = False MMC.RecordVisible = False MMC.StepVisible = False MMC.PrevVisible = False End Sub Private Sub MMC_PauseClick(Cancel As Integer) MMC.Command = "Pause" End Sub
Private Sub MMC_PlayClick(Cancel As Integer) MMC.Command = "Play" End Sub Private Sub MMC_StopClick(Cancel As Integer) MMC.Command = "Stop" End Sub
Untuk pengembangan selanjutnya silahkan mencari referensi mengenai pemrograman multimedia yang bisa memainkan film, aninasi dan sebagainya. Selamt mencoba!!!
BAB VIII MEMBUAT OBJEK (KONTROL / KOMPONEN OCX) SENDIRI
A. Komponen Bahasa pemrograman Visual banyak memberikan kemudahan dengan menyediakan banyak objek (control / komponen) yang siap pakai seperti yang telah kita pakai sebelumnya misalnya ADODC, ListView, Data, DataGrid dan sebagainya. Namun komponen standar yang telah ada belum semuanya memenuhi selera programmer. Pada contoh yang akan kita bahas berikut adalah membuat komponen berupa label yang memunyai tampilan tiga dimensi.
B. Tahap Perancangan Untuk merancang sebuah Komponen ActiveX kita tidak menggunakan Project Standard tetapi menggunakan Project ActiveX Control. Untuk memulai ikuti langkah berikut: - Masuk pada Visual Basic - Pada pilihan Add Project pilih ActiveX Control - Selanjutkan tambahkan komponen dan atur propertynya sebagai berikut : Komponen Label1
Properties Name AutoSize BackStyle Caption Font ForeColor Label1 Name AutoSize BackStyle Caption Font ForeColor UserControl1 Name
Value lblShadow True 0-Transparant Pemrograman 4 10- Bold vbWhite lblTop True 0-Transparant Pemrograman 4 10- Bold vbBlack VPLabel3D
Gambar 1. Tampilan Rancangan Komponen
C. Listing dan Coding Untuk mengatur komponen yang akan dibuat masukkan kode program berikut ini Public Property Get BackColor() As OLE_COLOR BackColor = UserControl.BackColor End Property Public Property Let BackColor(ByVal New_Color As OLE_COLOR) UserControl.BackColor() = New_Color PropertyChanged "BackColor" End Property Public Property Get Caption() As String Caption = lblTop.Caption End Property Public Property Let Caption(ByVal New_Caption As String) lblTop.Caption() = New_Caption lblShadow.Caption() = New_Caption PropertyChanged "Caption" Call UserControl_Resize End Property Public Property Get Font() As Font Set Font = lblTop.Font End Property Public Property Set Font(ByVal New_Font As Font) Set lblTop.Font() = New_Font Set lblShadow.Font() = New_Font PropertyChanged "Font" Call UserControl_Resize End Property Public Property Get hWnd() As Long hWnd = UserControl.hWnd End Property Public Property Get FaceColor() As OLE_COLOR FaceColor = lblTop.ForeColor End Property Public Property Let FaceColor(ByVal New_FaceColor As OLE_COLOR) lblTop.ForeColor() = New_FaceColor PropertyChanged "FaceColor" End Property Public Property Get ShadowSolor() As OLE_COLOR Shadowcolor = lblShadow.ForeColor End Property
Public Property Let Shadowcolor(ByVal New_ShadowColor As OLE_COLOR) lblShadow.ForeColor() = New_ShadowColor PropertyChanged "Shadowcolor" End Property Public Property Get Shadow() As Boolean Shadow = lblShadow.Visible End Property Public Property Let Shadow(ByVal New_Value As Boolean) lblShadow.Visible() = New_Value PropertyChanged "Shadow" End Property Private Sub UserControl_Initialize() lblTop.Left = 1 lblTop.Top = 1 lblShadow.Left = lblTop.Left + (lblTop.FontSize * (lblTop.FontSize / 2)) lblShadow.Top = lblTop.Top + (lblTop.FontSize * (lblTop.FontSize / 2)) End Sub Private Sub UserControl_ReadProperties(PropBag As PropertyBag) UserControl.BackColor = PropBag.ReadProperty("BackColor", vbWhite) lblTop.Caption = PropBag.ReadProperty("Caption", "Pemrograman 4") lblShadow.Caption = PropBag.ReadProperty("Caption", "Pemrograman 4") Set lblTop.Font = PropBag.ReadProperty("Font", Ambient.Font) Set lblShadow.Font = PropBag.ReadProperty("Font", Ambient.Font) lblTop.ForeColor = PropBag.ReadProperty("FaceColor", vbBlack) lblShadow.ForeColor = PropBag.ReadProperty("FaceColor", vbWhite) lblShadow.Visible = PropBag.ReadProperty("Shadow", True) End Sub Private Sub UserControl_Resize() UserControl.Height = lblTop.Height + 100 UserControl.Width = lblTop.Width + 200 End Sub Private Sub UserControl_WriteProperties(PropBag As PropertyBag) Call PropBag.WriteProperty("BackColor", UserControl.BackColor, vbWhite) Call PropBag.WriteProperty("Caption", UserControl.BackColor, vbWhite) Call PropBag.WriteProperty("Font", UserControl.BackColor, vbWhite) Call PropBag.WriteProperty("FaceColor", UserControl.BackColor, vbWhite) Call PropBag.WriteProperty("ShadowColor", UserControl.BackColor, vbWhite) Call PropBag.WriteProperty("Shadow", UserControl.BackColor, vbWhite) End Sub
D. Pengetesan Jika sudah selesai, memasukkan kode tersebut maka silahkan coba jalankan dengan F5 maka komponen yang telah dibuat akan ditampilkan dalam Internet Explorer,
Jika sudah cukup puas dengan hasil karya anda maka konversilah kedalam bentuk OCX dengan cara klik menu File dan pilih Make VPLabel3D OCX…tentukan lokasi penyimanan. Untuk memakai ocx tersebut anda harus membuat project Standart dan tambahkan komponen dengan cara klik browse dan cari ocx yang tadi anda buat. Selamat mencoba !!!..
DAFTAR PUSTAKA
[1] Faizal, Edi,dkk., 2003, Pemrograman Visual, Universitas Ahmad Dahlan,Yogyakarta. [2] Kurniadi, A., 2000, Pemrograman MS Visual Basic 6, Elex Media Komputindo, Jakarta. [3] Mangkulo,HE., 2005, Pemrograman Pada Jaringan Komputer Dengan Visual Basic 6.0 , Elex Media Komputindo, Jakarta.