BAB IV IMPLEMENTASI DAN PEMBAHASAN SISTEM 4.1 Implementasi Sistem Berdasarkan analisa dan perancangan sistem yang telah dilakukan pada bab III, maka pada bab ini akan diimplementasikan sebuah program aplikasi berupa sistem pakar kerusakan komputer dengan menggunakan bahasa pemrograman Microsoft Visual Basic 6.0 untuk membangun program aplikasinya. Implementasi merupakan tahap dimana program aplikasi siap digunakan pada keadaan sebenarnya. Implementasi program aplikasi ini sendiri akan membahas instalasi sistem pakar ke dalam computer, agar dapat saling berinteraksi dengan baik, dan prosedur-prosedur utama yang dibutuhkan pada program aplikasi ini. Implementasi Prosedur-prosedur Program Prosedur Koneksi Database Public Conn As New ADODB.Connection Public RS As New ADODB.Recordset Public NAmaSkin As String Public Function Koneksi() As Boolean On Error GoTo er If Conn.State = adstateopen Then Conn.Close Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Database\SistemPakar.MDB" Conn.CursorLocation = aduseclient Koneksi = True Exit Function er: Koneksi = False End Function 32
33 Pada prosedur ini program akan memerintahkan komponen ADODC untuk membaca atau mengghubungkan databse dengan visual basic, Setelah itu program akan mengecek apakah database sudah terhubung atau belum, jika benar maka akan diaktifkan variabel fungsi ReadyState dengan cara memeberi nilai true. Dapat dikatakan bahwa fungsi ini berfungsi untuk merespon atau menerima komunikasi transfer data. 4.2 Pembahasan Sistem Prosedur Login Private Sub cmdbatal_click() Unload Me FUtama.Show FUtama.Enabled = True Private Sub cmdok_click() If TNama.Text = "pakar" And TPassword.Text = "pakar" Then Unload Me FUtama.Show FUtama.Enabled = True FUtama.cmdPakar.Enabled = False FUtama.cmdKonsultasi.Enabled = False FUtama.cmdAturan.Enabled = True FUtama.cmdGejala.Enabled = True FUtama.cmdDiagnosa.Enabled = True FUtama.cmdKeluar.Caption = "<<< Kembali" If TNama.Text = "" And TPassword.Text = "" Then MsgBox "Masukkan dahulu Nama User dan Password" If TPassword.Text <> "pakar" And TPassword.Text <> "pakar" Then MsgBox "Maaf, Nama User atau Password anda salah" MsgBox "Maaf, Anda tidak bisa dilayani!!!!!!!!!!!" Unload Me FUtama.Enabled = True FUtama.Show
34 Prosedur fungsi Login diatas adalah untuk melakukan ijin masuk kedalam menu utama program, yang mana jika sistem membaca nilai variabel sesuai dengan nama tabel yang ada dalam database password maka sistem akan meberikan ijin untuk melanjutkan dan sebaliknya Prosedur Gejala kerusakan Gambar 4.1 Tampilan Login Program Dim RsMAcam As New ADODB.Recordset Dim Kode As String Private Sub btsimpan_click(index As Integer) If nomacam.text = "" Then MsgBox "Nomor Macam Harus DiIsi!", vbinformation, "Data kurang Lengkap!" nomacam.setfocus If macam.text = "" Then MsgBox "Nama Macam Harus DiIsi!", vbinformation, "Data kurang Lengkap!" macam.setfocus Set RS = Conn.Execute("select * from macam where nomacam='" & Rep(nomacam.Text) & "'") If RS.EOF Then Conn.Execute ("insert into macam values('" & Rep(nomacam) & "','" & Rep(macam) & "')") Tampil MsgBox "Macam Kerusakan Sudah Disimpan!", vbinformation, "Simpan Data Sukses!" MsgBox "Data Sudah Ada!",vbCritical,"Duplikat Macam!" nomacam.setfocus
35 Prosedur diatas berfungsi untuk proses penyimpanan data gejala kerusakan yang ada dalam form gejala Gambar 4.2 Tampilan Form Gejala Kerusakan Prosedur Diagnosa kerusakan Dim RsJenis As New ADODB.Recordset Dim Kode As String Private Sub btsimpan_click() If NoJenis.Text = "" Then MsgBox "Nomor Jenis Kerusakan Harus DiIsi!", vbinformation, "Data kurang Lengkap!" NoJenis.SetFocus If txtjenis.text = "" Then MsgBox "Jenis Kerusakan Harus DiIsi!", vbinformation, "Data kurang Lengkap!" txtjenis.setfocus solusi.setfocus Set RS = Conn.Execute("select * from jenis where Nojenis='" & Rep(NoJenis.Text) & "'") If RS.EOF Then Conn.Execute ("insert into jenis values('" & Rep(NoJenis.Text) & "','" & Rep(txtJenis.Text) & "')") Tampilan MsgBox "Data Sudah Disimpan!", vbinformation, "Simpan Data Sukses!" MsgBox "Data Sudah Ada!", vbcritical, "Duplikat Jenis Kerusakan!" NoJenis.SetFocus Prosedur diatas berfungsi untuk proses penyimpanan data diagnosa kerusakan yang ada dalam form diagnose kerusakan
36 Gambar 4.3 Tampilan Form Diagnosa Kerusakan Prosedur Basis Aturan Private Sub Csimpan_Click() Dim cek As Recordset Dim lrow As Integer Dim x If Trim(Cbsakit.Text) = "" Then MsgBox "Sori, NAMA KERUSAKAN belum dipilih..." Exit Sub If proses = "ad" Then Set cek = DBKomp.OpenRecordset("select * from aturan where kd_diagnosa='" + Left(Cbsakit, 4) + "'") If Not cek.bof Then MsgBox "Maaf, RULE untuk" + Mid(Cbsakit, 8, Len(Cbsakit)) + " sudah ada di DATABASE..." Exit Sub For lrow = 0 To List1.ListCount - 1 If (List1.Selected(lrow) = True) Then RsRULE_DIAG.AddNew RsRULE_DIAG!kd_diagnosa = Left(Cbsakit.Text, 4) RsRULE_DIAG!Kd_Gejala = Left(List1.List(lrow), 4) RsRULE_DIAG.Update Next lrow RsRULE_DIAG.AddNew 'RsRULE_DIAG!kd_aturdiag = Tkode.Text 'RsRULE_DIAG!nm_aturdiag = Trule.Text RsRULE_DIAG!kd_diagnosa = Left(Cbsakit.Text, 4) RsRULE_DIAG.Update proses = "" TAMPIL kosong
37 Exit Sub Prosedur diatas berfungsi untuk proses penyimpanan data basis aturan yang dalam form basis aturan Prosedur Form Penelusuran Gambar 4.4 Tampilan Form Basis Aturan Sub IdentifikasiGejala(PT As String) Dim Query1 As Recordset Dim temu As Boolean temu = False While (temu = False And Not QRGejala.EOF) Set QRLapor = DBKomp.OpenRecordset("Select * from aturan where Kd_Diagnosa='" + PT + "' and Kd_Gejala='" _ + QRGejala!Kd_Gejala + "'") If (Not QRLapor.BOF) Then temu = True QRGejala.MoveNext Wend If (QRGejala.EOF And temu = False) Then Set QRLapor = DBKomp.OpenRecordset("Select * from Diagnosa where Kd_Diagnosa='" + PT + "'") Text1.Text = "Komputer Anda Mengalami Kerusakan " + QRLapor!NM_Diagnosa + Text1.Text = Text1.Text + "Dengan Gejala sbb :" + Set Query1 = DBKomp.OpenRecordset("Select * from aturan,gejala where " _ + "aturan.kd_gejala=gejala.kd_gejala and Kd_Diagnosa='" + PT + "'") While (Not Query1.EOF) Text1.Text = Text1.Text + " * " + Query1!Nm_Gejala + Query1.MoveNext Wend
38 Text1.Text = Text1.Text + "=======================================================" + Text1.Text = Text1.Text + "Kerusakan Komputer anda dapat ditanggulanggi dengan " + Text1.Text = Text1.Text + QRLapor!Solusi + Text1.Text = Text1.Text + "=======================================================" + Text1.Text = Text1.Text + " Terima Kasih telah menggunakan Sistem Ini" + Text1.Text = Text1.Text + "=======================================================" Command3.Enabled = True Command2.Enabled = False OpYa.Value = False: OpTidak.Value = False Prosedur diatas perupakan perintah program dalam form penelusuran yang terlihat dibawah ini, form ini berfungsi untuk media komunikasi atau konsultasi yang dilakukan oleh user, data-data yang diolah dalam form ini di peroleh dari tabel macam kerusakan, jenis kerusakan dan tabel penyebab dan solusi, setelah itu dilakukan penyaringan jenis kerusakan melalui tabel basis aturan yang sudah terseda dalam applikasi ini. Gambar 4.5 Tampilan Form Penelusuran