SKRIPSI
ABRAGUS SABRA
091421044
SKRIPSI
ABRAGUS SABRA
091421044
PERSETUJUAN
Judul
Kategori
Nama
Nomor Induk Mahasiswa
Program Studi
Departemen
Fakultas
Diluluskan di
Medan, Juni 2011
Komisi Pembimbing
Pembimbing 2
Pembimbing 1
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Allah SWT, dengan limpahan karunia-Nya
skripsi ini berhasil diselesaikan dalam waktu yang telah ditetapkan.
Ucapan terima kasih penulis sampaikan kepada Bapak Syahril Efendi, S.Si,
M.I.T selaku Dosen Pembimbing I dan Ibu Dian Rachmawati, S.Si., M. Kom selaku
pembimbing II yang telah memberikan panduan dan penuh kepercayaan kepada
penulis untuk menyempurnakan skripsi ini. Dan tak lupa pula saya ucapkan terima
kasih kepada dosen penguji Bapak Ade Candra, S.T., M. Kom dan Bapak Drs.
Marihat Situmorang, M.Si yang telah memberikan masukan berupa saran dan kritik
kepada saya untuk menyempurnakan skripsi ini. Ucapan terima kasih juga ditujukan
kepada Ketua dan Sekretaris Program Ekstensi S1 Ilmu Komputer Bapak Dr. Poltak
Sihombing, M.kom dan Ibu Maya Silvi Lidya, B.sc, M.Sc. Dekan dan Pembantu
Dekan Fakultas Matematika dan Imu Pengetahuan Alam Universitas Sumatera Utara,
semua dosen Program Ekstensi S1 Ilmu Komputer FMIPA USU, pegawai di FMIPA
USU.
Akhirnya tidak terlupakan kepada keluarga tersayang Ibunda Ruhaida dan
Ayahanda Samsuar, serta abang dan kakak saya, abang Zikrul Alim, kak Yuni, abang
Fauzan Azima, Kak Yanni, Serta Adik saya Idham Chalid yang senantiasa
memberikan kasih sayang dan dukungan semangat dalam menyelesaikan skripsi ini.
Teman-teman satu angkatan saya juliandri, fadli, ibal, nina, arif, yamin, brafi, uci,
bayu serta teman-teman yang tidak dapat saya sebutkan satu persatu, saya ucapkan
terima kasih atas ide, saran dan bantuan kepada saya selama menyelesaikan skripsi ini.
Teman-teman kos persikota yoga selaku sepupu saya, uji dan sopian. Semoga Allah
SWT akan membalasnya.
ABSTRAK
ABSTRACT
DAFTAR ISI
Halaman
Persetujuan
Pernyataan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
Bab 1 Pendahuluan
1.1 Latar Belakang
1.2 Rumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Metode Penelitian
1.7 Sistematika Penulisan
ii
iii
iv
v
vi
vii
ix
x
1
1
3
3
3
4
4
5
7
7
7
8
9
9
10
11
13
14
14
14
15
16
17
19
19
19
20
25
25
29
33
35
35
36
44
44
44
45
45
46
47
47
48
49
50
51
54
54
54
Daftar Pustaka
Lampiran
56
57
DAFTAR TABEL
Halaman
Tabel 3.1 Kamus data Tabel list_user
Tabel 3.2 Kamus data Tabel penyakit
Tabel 3.3 Kamus data Tabel knowledge
Tabel 3.4 Kamus data Tabel solusi
34
34
34
35
DAFTAR GAMBAR
Halaman
Gambar 2.1 Struktur Sistem Pakar
Gambar 2.2 Proses Forward Chaining
Gambar 2.3 Proses Backward Chaining
Gambar 2.4 Tanaman Kopi
Gambar 3.1 Diagram Backtracking Penyakit Karat Daun
Gambar 3.2 Diagram Backtracking Penyakit Jamur Upas
Gambar 3.3 Diagram Backtracking Penyakit Mati Ujung
Gambar 3.4 Diagram Backtracking Penyakit Bercak Daun Cercospora
Gambar 3.5 Diagram Backtracking Penyakit Akar Coklat
Gambar 3.6 Diagram Backtracking Penyakit Kanker Belah
Gambar 3.7 Diagram Backtracking Penyakit Akar Hitam
Gambar 3.8 DFD Level 0
Gambar 3.9 DFD Level 1
Gambar 3.10 DFD Level 2 Proses Login
Gambar 3.11 DFD Level 2 Proses Diagnosis
Gambar 3.12 DFD Level 2 Proses Pengetahuan
Gambar 3.13 DFD Level 2 Proses Jenis Penyakit
Gambar 3.14 DFD Level 2 Proses Solusi
Gambar 3.15 Entity Relationship Diagram
Gambar 3.16 Struktur Program
Gambar 3.17 Rancangan Form Sistem Login
Gambar 3.18 Rancangan Form Menu Utama
Gambar 3.19 Rancangan Form Pilih Penyakit
Gambar 3.20 Rancangan Form Pertanyaan
Gambar 3.21 Rancangan Form Data Penyakit
Gambar 3.22 Rancangan Form Data Solusi
Gambar 3.23 Rancangan Form Hasil Diagnosis
Gambar 3.24 Rancangan Form Basis Pengetahuan
Gambar 4.1 Halaman Sistem Login
Gambar 4.2 Halaman Menu Utama
Gambar 4.3 Halaman Pilih Penyakit
Gambar 4.4 Halaman Pertanyaan
Gambar 4.5 Halaman Data Penyakit
Gambar 4.6 Halaman Data Solusi
Gambar 4.7 Halaman Hasil Diagnosis
Gambar 4.8 Halaman Basis Pengetahuan
11
15
16
16
20
21
22
23
23
24
25
26
26
27
27
28
28
29
35
36
37
38
38
39
40
41
42
43
45
46
46
47
48
49
50
51
BAB 1
PENDAHULUAN
Kopi merupakan salah satu komoditas yang sangat penting, tidak saja sebagai sumber
mata pencaharian tapi juga menduduki tatanan perekonomian nasional, usaha tani
kopi memberikan sumbangan cukup besar sebagai sumber devisa dalam menopang
pembangunan nasional yang tinggi, sehingga dapat dijadikan sebagai sumber
pendapatan petani. Indonesia merupakan negara penghasil kopi terbesar di dunia
setelah Brazil dan Columbia. Sebagai komoditas yang mempunyai nilai ekonomis
tinggi, sudah selayaknya pengembangan usaha tani kopi ini mendapat perhatian yang
besar, mengingat kontribusinya yang besar pada perekonomian nasional. Permintaan
pasar dalam negeri terhadap kopi dari tahun ke tahun makin meningkat sejalan dengan
pertambahan penduduk. Oleh sebab itu peluang untuk pemsaran kopi masih terbuka.
ahli di bidangnya. Sistem pakar ini juga akan dapat membantu aktivitas para pakar
sebagai asisten yang berpengalaman dan mempunyai pengetahuan yang dibutuhkan.
Dalam penyusunannya, sistem pakar mengkombinasikan kaidah-kaidah penarikan
kesimpulan (inference rules) dengan basis pengetahuan tertentu yang diberikan oleh
satu atau lebih pakar dalam bidang tertentu. Kombinasi dari kedua hal tersebut
disimpan dalam komputer, yang selanjutnya digunakan dalam proses pengambilan
keputusan untuk penyelesaian masalah tertentu.
program aplikasi sistem pakar ini diharapkan dapat membantu tidak hanya petani
kopi, tetapi juga kalangan umum yang memerlukan informasi ini.
Penulis membuat batasan masalah yang akan dijadikan pedoman dalam pelaksanaan
skripsi, yaitu:
1. Sistem tidak menentukan hama dari tanaman kopi.
2. Sistem pakar ini hanya akan mendiagnosis gejala-gejala fisik yang muncul
pada tanaman kopi
3. Input berupa gejala-gejala penyakit tanaman kopi
4. Output yang dihasilkan adalah penyakit tanaman beserta pengendaliannya.
5. Sistem ini hanya mendiagnosis penyakit tanaman kopi jenis arabika.
6. Perancangan program aplikasi sistem pakar ini menggunakan Visual Basic 6.0
dan Database Management System Microsoft Office Access 2003.
Tujuan dari skripsi ini adalah untuk merancang suatu sistem pakar yang dapat
dikembangkan lebih lanjut untuk memberikan informasi mengenai penyakit tanaman
kopi beserta pengendaliannya yang nantinya dapat digunakan untuk mengurangi
resiko berproduksi suatu tanaman.
Manfaat dari sistem pakar ini adalah memberikan kemudahan bagi user untuk
mendiagnosis penyakit tanaman kopi berdasarkan gejala yang tampak dan sistem akan
memberikan cara pengendalian penyakit, khususnya bagi petani perkebunan dan tidak
menutup kemungkinan sistem pakar ini digunakan oleh penyuluh pertanian yang
bukan dibidang penyakit tanaman sehingga dapat menggantikan peran dari seorang
pakar penyakit tanaman khususnya penyakit tanaman kopi.
2. Analisis data
Pada tahap ini dilakukan pengumpulan fakta-fakta yang mendukung
perancangan sistem dengan mengadakan konsultasi dengan seorang pakar dan
membandingkan hasil penelitian dengan yang ada pada buku penuntun dan
dilakukan perancangan Data Flow Diagram, Entity Relationship Diagram dan
perancangan antarmuka sesuai dengan hasil dari analisis sistem.
3. Implementasi sistem
Pada tahap ini sistem yang dirancang di implementasikan ke dalam bentuk
kode program Visual Basic 6.0.
4. Pengujian
Pada tahap ini dilakukan pengujian sistem apakah berjalan dengan benar dan
sesuai dengan perancangan.
5. Penyusunan laporan
Pada tahap ini dilakukan penulisan dokumentasi hasil analisis dari aplikasi
sistem pakar dengan metode backward chaining untuk mendiagnosis penyakit
tanaman kopi.
1.7
Sistematika Penulisan
BAB 1 :
PENDAHULUAN
Bab ini berisi tentang latar belakang masalah, rumusan masalah,
batasan masalah, tujuan penelitian, manfaat penelitian, metode
penelitian dan sistematika penulisan.
BAB 2 :
LANDASAN TEORI
Pada bab ini dibahas dasar teori-teori kecerdasan buatan dan sistem
pakar untuk mendukung pembahasan bab selanjutnya.
BAB 3 :
BAB 4 :
IMPLEMENTASI SISTEM
Pada bab ini membahas implementasi antarmuka dari perancangan
sistem yang telah dirancang pada bab sebelumnya.
BAB 5 :
BAB 2
LANDASAN TEORI
Secara umum, sistem pakar (expert system) adalah sistem yang berusaha mengadopsi
pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah
seperti yang biasa dilakukan oleh para ahli [7]. Sistem pakar yang baik dirancang agar
dapat menyelelasikan suatu permasalahan tertentu dengan meniru kerja dari para ahli.
Dengan sistem pakar ini, orang awampun dapat menyelesaikan masalah yang cukup
rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para
ahli, sistem pakar ini juga akan membantu aktivitasnya sebagai asisten yang sangat
berpengalaman.
2.2.1
Sistem Pakar mulai di kembangkan pada pertengahan tahun 1960-an oleh Artificial
Intelligence Corporation. Pada pertengahan tahun 1960-an, terjadi pergantian dari
program serba bisa (general-purpose) ke program yang spesialis (special-purpose)
dengan di kembangkannya DENDRAL oleh E. Feigenbaum dari Universitas Stanford
dan kemudian oleh MYCIN.
Pada pertengahan tahun 1970, beberapa sistem pakar mulai muncul. Sebuah
pengetahuan kunci yang di pelajari saat itu adalah kekuatan dari sistem pakar berasal
dari pengetahuan spesifik yang dimilikinya, bukan dari formalisme-formalisme
khusus dan pola penarikan kesimpulan yang digunakannya.
Awal 1980 teknologi sistem pakar yang mula-mula dibatasi oleh suasana
akademis mulai muncul sebagai aplikasi komersil, khususnya XCON, XSEL
(dikembangkan dari R-1 pada Digital Equiptment Corp.) dan CATS-1 (dikembangkan
oleh General Electric).
2.2.2
Sistem pakar yang baik harus memenuhi ciri-ciri sebagai berikut [13]:
1. Terbatas pada domain keahlian tertentu.
2. Berdasarkan pada kaidah/rule tertentu.
3. Dapat digunakan dalam berbagai jenis komputer.
4. Mudah dimodifikasi, yaitu dengan menambah atau menghapus suatu
kemampuan dari basis pengetahuannya.
5. Sistem dapat mengaktifkan kaidah secara searah yang sesuai, dituntun oleh
dialog dengan pemakai.
2.2.3
Secara garis besar, banyak manfaat yang dapat diambil dengan adanya sistem pakar,
antara lain [7] :
1. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli.
2. Bisa melakukan proses secara berulang secara otomatis.
3. Menyimpan pengetahuan dan keahlian para pakar.
4. Meningkatkan output dan produktivitas.
5. Meningkatkan kualitas.
6. Mampu mengambil dan melestarikan keahlian para pakar (terutama yang
termasuk keahlian langka).
7. Mampu beroperasi dalam lingkungan yang berbahaya.
8. Memiliki kemampuan untuk mengakses pengetahuan.
9. Memiliki reliabilitas.
2.2.4
Menurut Efraim Turban, konsep dasar sistem pakar mengandung : keahlian, ahli,
pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan. Keahlian adalah
suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari
pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan yang termasuk
keahlian adalah :
a. Fakta-fakta pada lingkup permasalahan tertentu.
b. Teori-teori pada lingkup permasalahan tertentu.
c. Prosedur-prosedur dan aturan-aturan berkenaan dengan lingkup permasalahan
tertentu.
d. Strategi-strategi global untuk menyelesaikan masalah.
e. Meta-knowledge (pengetahuan tentang pengetahuan).
2.2.5
Sistem pakar terdiri dari dua bagian utama yaitu development environment dan
consultation
environment
[7].
Development
environment
digunakan
untuk
yang
4. Mesin Inferensi
Mesin inferensi adalah bagian yang mengandung mekanisme fungsi berpikir
dan pola-pola penalaran sistem yang di gunakan oleh seorang pakar.
Mekanisme ini akan menganalisa suatu masalah tertentu dan selanjutnya akan
mencari jawaban atau kesimpulan yang terbaik.
5. Workplace
Workplace merupakan area dari sekumpulan memori kerja (working memory).
Workplace digunakan untuk merekam hasil-hasil antara dan kesimpulan yang
dicapai.
6. Fasilitas Penjelasan
Faslitas penjelasan adalah komponen tambahan yang akan meningkatkan
kemampuan sistem pakar. Komponen ini menggambarkan penalaran sistem
kepada pemakai.
7. Perbaikan Pengetahuan.
Pakar memiliki kemampuan untuk menganalisis dan meningkatkan kinerjanya
serta kemampuan untuk belajar dari kinerjanya. Kemampuan tersebut adalah
penting dalam pembelajaran terkomputerisasi, sehingga program akan mampu
menganalisi penyebab kesuksesan dan kegagalan yang di alaminya.
2.2.6
Basis pengetahuan
Representasi Pengetahuan
2.2.8
Mekanisme Inferensi adalah bagian dari sistem pakar yang melakukan penalaran
dengan menggunakan isi daftar aturan berdasarkan urutan dan pola terentu. Selama
proses konsultasi antar sistem dengan pemakai, mekanisme inferensi menguji aturan
satu sampai kondisi aturan itu benar. Secara umum ada dua teknik utama yang
digunakan dalam mekanisme inferensi untuk pengujian aturan, yaitu Metode Forward
Chaining dan Backward Chaining.
Metode Forward Chaining adalah suatu metode pengambilan keputusan yang umum
digunakan dalam sistem pakar. Proses pencarian dengan metode Forward Chaining
berangkat dari kiri ke kanan, yaitu dari premis menuju kepada kesimpulan akhir,
metode ini sering disebut data driven yaitu pencarian dikendalikan oleh data yang
diberikan.
penyelesain konflik. Aksi tersebut menghasilkan memori kerja baru dan siklus
diulangi lagi sampai tidak ada aturan yang dapat dipicu, atau tujuan yang dikehendaki
sudah terpenuhi.
Metode Backward Chaining adalah suatu metode pengambilan keputusan yang juga
umum digunakan dalam sistem pakar. Metode backward chaining adalah kebalikan
dari Forward Chaining. Percobaan fakta atau pernyataan dimulai dari bagian sebelah
kanan (THEN dulu). Dengan kata lain, penalaran dimulai dari hipotesis terlebih dan
untuk menguji kebenaran hipotesis tersebut harus dicari fakta-fakta yang ada dalam
basis pengetahuan. Proses pencarian dengan metode backward chaining berangkat
dari kanan ke kiri, yaitu dari kesimpulan sementara menuju kepada premis, metode ini
sering disebut gol driven pencarian dikendalikan oleh tujuan yang diberikan.
Metode Backward Chaining merupakan strategi pencarian yang arahnya
kebalikan dari Forward Chaining. Proses pencarian dimulai dari tujuan, yaitu
kesimpulan yang menjadi solusi permasalahan yang dihadapi. Mesin inferensi mencari
kaidah-kaidah dalam basis pengetahuan yang kesimpulannya merupakan solusi yang
ingin dicapai, kemudian dari kaidah-kaidah yang diperoleh, masing-masing
kesimpulan Backward Chaining jalur yang mengarah ke kesimpulan tersebut. Jika
informasi-informasi atau nilai dari atribut-atribut yang mengarah ke kesimpulan
tersebut sesuai dengan data yang diberikan maka kesimpulan tersebut merupakan
solusi yang dicari, jika tidak sesuai maka kesimpulan tersebut bukan merupakan solusi
yang dicari. Backward Chaining memulai proses pencarian dengan suatu tujuan
sehingga strategi ini disebut juga goal-driven.
Kopi adalah spesies tanaman berbentuk pohon dan termasuk dalam famili Rubiaceae.
Tanaman ini tumbuh tegak, bercabang dan dapat mencapai tinggi 12 m. Tanaman kopi
merupakan komoditas ekspor yang mempunya nilai ekonomis yang relative tinggi di
pasaran duni, di samping merupakan salah satu komoditas unggulan yang
dikembangkan. Sudah hamper tiga abad kopi diusahakan penanamannya di Indonesia
untuk memenuhi kebutuhan konsumsi di dalam negeri maupun luar negeri. Lebih dari
90% tanaman kopi diusahakan rakyat. Di Dunia perdagangan dikenal beberapa
golongan kopi, akan tetapi yang paling sering dibudidayakan adalah kopi arabika dan
robusta.
2.4
Penyakit Tanaman
Penyakit tanaman terbagi menjadi dua yaitu penyakit nonbiotis dan penyakit biotis.
penyakit nonbiotis yaitu suatu penyakit pada tanaman yang disebabkan oleh
organisme tak hidup misalnya difisiensi unsur hara, keracunan mineral, kelembaban,
suhu, sinar yang tidak sesuai, kekurangan oksigen, polusi, dan reaksi tanah. Penyakit
biotis. Penyakit biotis yaitu penyakit yang disebabkan organisme hidup yang
kesemuanya adalah jasad renik atau mikroorganisme yaitu jamur, bakteri, virus, dan
nematoda. Adapun penyakit-penyakit yang menyerang tanaman kopi adalah sebagai
berikut :
1. Karat Daun
Karat daun kopi (coffe leaf rust) sering juga disebut penyakit daun kopi (koffiebladziekte, Bld.) adalah penyakit kopi yang paling penting diseluruh dunia.
Untuk indoensia penyakit ini merupakan penyakit yang terpenting pada kopi
arabika(Coffea Arabica L). Penyakit ini disebabkan oleh patogen Hemileia
vastarix B. et. Br. Yang merupakan penyakit utama pada tanaman kopi arabika,
sedangkan pada tanaman kopi robusta penyakit ini tidak menjadi masalah.
2. Jamur Upas
Penyakit jamur upas disebabkan oleh jamur Corticium salmonicolor B.et Br.
Penyakit jamur upas adalah jamur yang polifag (dapat memarasit banyak
tumbuhan) dan tercatat lebih dari 140 tumbuhan inang. Selain kopi, antara lain
jamur upas dapat menyerang karet, teh, kakao, kina, jeruk, mangga, nangka, jati,
apel, kelengkeng, dan melinjo. Penyakit ini banyak terdapat di kebun-kebun
yang lembab, antara lain yang pemangkasannya kurang dan pohon pelindungnya
terlalu berat. Penyakit lebih banyak terdapat di daerah yang curah hujannya agak
tinggi.
3. Mati Ujung
Penyakit mati ujung disebabkan oleh jamur Rhizoctonia sp. Jamur mengadakan
infeksi melalui daun, dari sini meluas dan berkembang di dalam pembuluh kayu
cabang dan batang. Di kebun pada bagian-bagian yang telah dipangkas jamur
dapat membentuk sklerotium, yang terdiri dari gumpalan rantai pseudokonium.
Penyakit ini dibantu oleh suhu yang agak rendah dan hanya merugikan kebunkebun yang letaknya lebih tinggi dari 300-400 m. Jenis-jenis kopi mempunyai
ketahanan yang berbeda-beda terhadap penyakit ini. Kopi arabika sedikit lebih
tahan dari pada kopi robusta.
4. Bercak Daun
Penyakit ini disebabkan oleh jamur Cercospora coffeicola yang dapat muncul di
pembibitan sampai tanaman dewasa. Daun yang sakit timbul bercak berwarna
kuning yang teping dikelilingi halo (lingkaran) berwarna kuning. Penyakit ini
umumnya dijumpai di kebun dataran rendah yang kelembapan udaranya tinggi,
di pesemaian yang terlalu gelap, dan pemberian peteduh yang terlalu rimbun.
5. Akar Coklat
Penyakit ini disebabkan oleh jamur Fomes noxius Corner. Jamur akar coklat
menular ke tanaman sehat karena adanya kontak antar akar yang sehat dengan
yang sakit. Jamur menular dengan sangat lambat, penularan yang lambat ini
disebabkan karena umumnya jamur hanya terdapat pada akar tunggang dan
sebagian dari akar-akar cabang yang besar. Selain menyerang kopi antara lain
jamur dapat menyerang karet, teh, kakao, kelapa sawit, kelapa, kina, kapok,
kapas, dan nangka.
6. Kanker Belah
Penyakit ini disebabkan oleh jamur Armillaria sp. Jamur menular dengan kontak
akar dan dengan rizomorf. Ada kemungkinan bahwa jamur dapat dipencarkan
dengan basidiospora, tetapi jamur ini belum pernah diketahui membentuk badan
buah. Selain menyerang kopi arabika, jamur ini juga menyerang dadap, lamtoro,
dan akasia.
7. Akar Hitam
Penyakit ini disebabkan oleh jamur Rosellina bunodes. Jamur dapat menular
dengan beberapa cara, yang terpenting adalah melalui kontak antara akar yang
sehat dengan yang sakit. Tetapi selain itu jamur dapat juga menular dengan
rizomorf di bawah tanah. Penyakit ini dapat menimbulkan kerugian yang berarti.
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Sistem pakar merupakan sistem yang terstruktur dengan basis pengetahuan yang
dinamis. Pengetahuan yang ada pada sistem pakar dapat bertambah sehingga harus
bisa ditambah maupun dihapus tanpa harus mengubah isi dari program secara
keseluruhan. Jadi perubahan hanya dilakukan pada bagian basis pengetahuan saja.
Gejala penyakit tanaman kopi dapat disebabkan oleh faktor biotis dan abiotis.
Aplikasi ini dibuat hanya berdasarkan faktor biotis saja yaitu penyakit tanaman kopi
yang disebabkan oleh organisme hidup yang kesemuanya adalah mikroorganisme
yaitu jamur, bakteri, dan virus. Untuk itu diperlukan pengetahuan mengenai gejala
fisik yang timbul pada tanaman kopi seperti pada daun, batang atau ranting,akar dan
buah.
Terdapat bercak-bercak
kuning pada daun
Terbentuknya tepung
bewarna jingga (orange)
pada bercak kuning daun
Penyakit Karat
Daun
Pengendalian
dilakukan
dengan dua cara, yaitu
menanam jenis-jenis kopi
arabika ysng tahan seperti
S333, S288, S795 dan
lakukan
penyemprotan
fungisida Dithane M 45
dengan dosis 2 gr/liter air.
Potongan dikumpulkan
Peyakit Jamur
Upas
Pengendalian
dilakukan
melalui pemotongan batang
atau cabang yang sakit
sampai 10 cm di bawah
pangkal dari bagian sakit.
Potongan
dikumpulkan
kemudian dibakar. Buahbuah
yang
sakit
dikumpulkan
kemudian
dibakar atau dipendam.
Pohon pelindung dipangkas
sehingga
kelembapan
kebun berkurang dan sinar
matahari dapat masuk ke
areal tanaman kopi. Cara
lain Batang atau cabang
yang
sakit
disemprot
dengan fungisida Calixin
RM (tridemorf).
dipotong ini dibakar atau dipendam cukup dalam. Di daerah dimana banyak
terdapat penyakit mati ujung untuk membuat pohon-pohon kopi yang berbatang
3 atau 4.
Daun-daun gugur
Menguningnya
daun
daun-
Penyakit
Ujung
Mati
Memotong cabang-cabang
atau batang yang mulai
menunjukkan
gejala
penyakit.
Pemotongan
dilakukan sampai pada
kayu yang sehat. Bagianbagian yang dipotong ini
dibakar atau dipendam
cukup dalam. Di daerah
dimana banyak terdapat
penyakit mati ujung untuk
membuat
pohon-pohon
kopi yang berbatang 3 atau
4.
Daun-daun gugur
Terdapat bercak-bercak
kuning pada daun
Penyakit Bercak
Daun
Cercospora
Dilakukan penyemprotan
fungisida
tembaga,mengurangi
kelembapan
dengan
memotong
daun-daun
secara
berkala,
dan
menurangi naungan atau
peteduh. Jika penyakit
belum meluas, bagianbagian
daun
sakit
digunting, daun-daun sakit
yang
telah
gugur
dikumpulkan,
lalau
semuanya dibakar atau
dipendam.
Solusi :
Pengendalian dilakukan dengan membongkar pohon terserang sampai ke akarny,
lalu dibakar. Lubang bekas bongkaran dibiarkan terbuka selama 1 tahun.
Pohon sehat di sekitar pohon sakit dan pohon-pohon sisipan ditaburi
Trichoderma 200 gram/pohon dan pupuk kandang/pupuk organik.
Diulang
Penyakit Bercak
Daun
Cercospora
Pengendalian
dilakukan
dengan
membongkar
pohon terserang sampai ke
akarny,
lalu
dibakar.
Lubang bekas bongkaran
dibiarkan terbuka selama
1 tahun. Pohon sehat di
sekitar pohon sakit dan
pohon-pohon
sisipan
ditaburi Trichoderma 200
gram/pohon dan pupuk
kandang/pupuk
organik.
Diulang setiap 6 bulan
sampai areal tersebut bebas
dari jamur akar.
Daun tanaman
menguning
Gugurnya daun
tanaman
Penyakit
Kanker Belah
Terdapat celah-celah
memanjang
pada
pangkal batang dan
akar tunggang
Terdapat titik-titik
hitam
pada
permukaan batang
t
Pada batang dan akar
tanaman
terdapat
benang-benang
berwarna hitam
Penyakit Akar
Hitam
Pohon
yang
sakit
dibongkar dengan teliti,
semua akarnya diambil.
Untuk membunuh jamur
yang akan berkembang.
Semua akar yang telah
dibongkar dibakar dengan
segera.
Mengurangi
peteduhnya dan diadakan
drainasi
Sebelum merancang suatu sistem, hal yang paling penting dilakukan adalah
menganalisis sistem yang akan dibuat. Analisis komponen sistem pada sistem pakar
diagnosis penyakit tanaman kopi yaitu :
Data Flow Diagram (DFD) digunakan untuk menggambarkan aliran informasi dan
proses data yang bergerak dari pemasukan data hingga keluaran. Data Flow Diagram
memudahkan pemakai yang kurang menguasai bidang komputer untuk mengerti
sistem yang akan dikerjakan atau dikembangkan. Data Flow Diagram dari sistem
pakar diagnosis penyakit tanaman kopi dapat dilihat pada gambar 3.8, sedangkan
untuk diagram level 1 dapat dilihat pada gambar 3.9 dan diagram level 2 dapat dilihat
pada gambar 3.10, 3.11, 3.12, 3.13 dan 3.14.
Data Login
Update Pengetahuan
Pakar
Pengetahuan
0
Sistem Pakar
Diagnosis Penyakit
Tanaman Kopi
Pengetahuan
Gejala Penyakit
Pengguna
Administrastor
Update
Pengetahuan
Solusi
Hak Akses
Solusi
Pakar
Jenis Penyakit
Administrator
Jenis Penyakit
Solusi
Rekam
Jenis
Penyakit
4.0
Jenis Penyakit
5.0
Solusi
Rekaman
Jenis
Penyakit
Penyakit
Rekam
Solusi
Rekaman
Solusi
Solusi
Pengetahuan
3.0
Pengetahuan
Pengetahuan
Rekam
Pengetahuan
Knowledge
Akses Sistem
Administrator
Nama Pengguna
Kata Kunci
Nama Pengguna
Kata Kunci
Pakar
Pengguna
Akses sistem
Gejala
Rekaman
Pengetahuan
Nama Pengguna
Kata Kunci
List_user
1.0
Sistem Login
Akses Sistem
Akses Sistem
2.0
Diagnosis
Fakta
Fakta
Solusi
Temp
Akses Sistem
Nama Pengguna
Password
Pengguna
Hak Akses
Akses
Sistem
Administrator
Pakar
Nama
Pengguna
Password
Nama
Pengguna Baru
Password
Nama
Pengguna
Password
Nama
Pengguna
Password
Hak Akses
Hak Akses
Hak Akses
1.1 *
Login
1.2 *
Buat Pakar
Baru
1.3 *
Ubah Password
Pakar
Nama
Pengguna
Password
Nama
Pengguna
Password
Nama
Pengguna
Password
Nama
Pengguna
Password
list_user
Hak Akses
1.4 *
Hapus Pakar
knowledge
Rekaman
pengetahuan
Gejala
Pengguna
2.1 *
Pertanyaan
Fakta
ya/tidak
2.2 *
Proses diagnosis
fakta
temp
Solusi
fakta
ID
Pengetahuan
Pakar
Administrator
Pengetahuan
Pengetahuan
Pengetahuan
ID
Pengetahuan
ID
Pengetahuan
Pengetahuan
3.1 *
Tambah
Pengetahuan
ID
Pengetahuan
3.2 *
Ubah
Pengetahuan
3.3 *
Hapus
Pengaturan
Rekam
Rekaman Pengetahuan
Pengetahuan
Rekam
Pengetahuan
3.4 *
Cari
Pengetahuan
Rekam
Pengetahuan
Rekaman
Pengetahuan
Rekam
Pengetahuan
Knowledge
Rekaman
Pengetahuan
ID
Jenis
Penyakit
Administrator
Pakar
Jenis
Penyakit
Jenis
Penyakit
Jenis
Penyakit
ID
Jenis
Penyakit
Jenis
Penyakit
4.1 *
Tambah
Jenis
Penyakit
Rekam
Jenis Penyakit
ID
Jenis
Penyakit
4.4 *
Cari
Jenis
Penyakit
4.3 *
Hapus
Jenis
penyakit
4.2 *
Ubah
Jenis
Penyakit
Rekaman
Jenis Penyakit
ID
Jenis
Penyakit
Rekam
Jenis Penyakit
Rekam
Jenis Penyakit
Rekaman
Jenis Penyakit
Rekam
Jenis Penyakit
Penyakit
Rekaman
Jenis Penyakit
ID
Solusi
Pakar
Administrator
Solusi
Solusi
Solusi
ID
Solusi
Solusi
5.1 *
Tambah
Solusi
ID
Solusi
ID
Solusi
5.2 *
Ubah
Solusi
Rekaman
Solusi
5.3 *
Hapus
Solusi
Rekam
Solusi
Rekam
Solusi
Rekam
Solusi
5.4 *
Cari
Solusi
Rekaman
Solusi
Rekam
Solusi
Solusi
Rekaman
Solusi
b. Proses Diagnosis
Proses 2.1. Pertanyaan
1) Masukan : Ya, Tidak
2) Keluaran : Fakta Ya, Fakta Tidak
3) Proses
c. Proses Pengetahuan
Proses 3.1. Tambah Pengetahuan
1) Masukan : ID, Pertanyaan, FaktaYA, FaktaTIDAK, Ya, Tidak,
ID_Penyakit
2) Keluaran : Pengetahuan baru bertambah
3) Proses
Administrator
Pakar
mencari
pengetahuan
dengan
3) Proses
Administrator
Pakar
memasukkan
ID_Penyakit,
memasukkan
ID_Penyakit
dan
menekan
tombol
Cari
untuk
menampilkannya di layar.
e. Proses Solusi
Proses 5.1. Tambah Solusi
1) Masukan : ID_Solusi, Solusi
2) Keluaran : Solusi baru bertambah
3) Proses
Kamus data berfungsi untuk membuat detail data yang dipersiapkan untuk fase
implementasi. Kamus data yang digunakan dalam sistem terdiri dari kamus data tabel
list_user, kamus data table penyakit, kamus data tabel knowledge dan kamus data
tabel solusi. Berikut ini adalah keterang dari kamus data yang digunakan.
Field
Tipe
User_ID*
Text
Pass
Text
Keterangan
Merupakan Nama pengguna untuk login
kedalam program
Password pengguna untuk masuk kedalam
Level
Text
program
Merupakan level yang menentukan hak
akses dari setiap pengguna
Field
Tipe
ID_penyakit
Text
*
Jenis_penya
Text
kit
Keterangan * = primary key
Keterangan
Merupakan id dari setiap jenis penyakit
Jenis-jenis penyakit yang ada
Field
ID*
pertanyaan
FaktaYA
FaktaTIDA
K
Tipe
Text
Text
Text
Keterangan
Merupakan id dari setiap jenis penyakit
Jenis-jenis penyakit yang ada
Fakta jawaban dari pertanyaan jika Ya
Text
Ya
Text
Tidak
Text
ID_penyakit
Text
**
Keterangan * = primary key
Keterangan * * = foreign key
Tipe
Text
Text
Keterangan
Merupakan id dari setiap solusi
Jenis-jenis solusi yang ada
ya
Pertanyaan
ID_penyakit
Tidak
Jenis_penyakit
ID_penyakit
ID
Penyakit
Memiliki
Knowledge
n
User_id
Pass
level
Memiliki
List User
ID_solusi
Temp
Solusi
solusi
ID_temp
fakta
Login
Pengguna
Pakar
Edit
Pengetahuan
Input Jenis
Penyakit
Input Solusi
Menu utama
Pilih Jenis
Penyakit
Diagnosis
Penyakit
Solusi
Alasan dan
Solusi
Antarmuka pemakai (user interface) adalah aspek sistem komputer atau program
yang dapat dilihat, didengar, atau dipersepsikan oleh pengguna manusia, dan perintahperintah atau mekanisme yang digunakan pemakai ntuk mengendalikan operasi dan
memasukkan data. Berikut ini merupakan perancangan antarmuka aplikasi sistem
pakar diagnosis penyakit tanaman kopi yang terdiri atas beberapa bagian uatama ,
yaitu :
Sistem Login 1
Sistem Login
4 Level :
5 Username :
Hapus Pakar
6 Password :
9
10
Masuk
11
14
Keluar
:1
: 12,13,14
: 2,4,5,6
:3
:7
: 8,9
: 10,11
Menu Utama
1
Sistem
Diagnosis
Tentang
Edit Pengetahuan
Diagnosis
:1
: 2,3,4
:5
: 6,7
5
Pilihlah Jenis Penyakit yang Diperkirakan
Proses
Keterangan
Judul form
SkinLabel
Frame
ComboBox
CommandButton
:1
:2
:5
:3
:4
4) Form Pertanyaan
Perancangan form pertanyaan merupakan form yang digunakan oleh pengguna umtuk
memilih gejala yang terjadi pada tanaman, sehingga sistem akan mengeluarkan
kesimpulan berupa jenis penyakit yang terinfeksi dan solusinya.
Form Pertanyaan
Pertanyaan
6
Ya
Tidak
4
Selesai
:1
:6
:2
: 3,4,5
Form Penyakit
2
3
Tambah
Simpan
9 ID Penyakit
14
10 Nama Penyakit
15
11
Batal
Ubah
Hapus
Keluar
Pencarian
Cari Berdasarkan
16
17
12
DataGrid 13
:1
: 9,10, 12
: 2,11
: 16
: 14,15,17
: 3,4,5,6,7,8
: 13
Form Solusi
2
3
Tambah
4
Simpan
9 ID Solusi
10
5
Batal
6
Ubah
8
Keluar
7
Hapus
11
Solusi
12
13
Pencarian
Cari Berdasarkan
14
DataGrid
15
16
17
:1
: 9,10,14
: 2,13
: 15
: 11,12,16
: 3,4,5,6,7,8
: 17
Gambar
Alasan
Selesai
:1
: 2,3,4,6
:5
: 7,8
30
Input Jenis Penyakit
Tambah
Simpan
Ubah
Batal
Hapus
Keluar
29
DataGrid
8
9
ID Gejala
18
Penyakit
31
19
10 ID Penyakit
20
Gejala/Pertanyaan
21
11
12 Fakta YA
Input Solusi
13 Fakta TIDAK
14 Jika YA
32
22
23
DataGrid
24
33
15 Jika TIDAK
25
Pencarian
16 Cari Berdasarkan
26
27
17
DataGrid
28
:1
: 8,9,10,11,12,13,14,15,17
: 29,16
: 19,24,25,26
: 18,20,21,22,23,27
: 2,3,4,5,6,7,30,32
: 28,31,33
BAB 4
IMPLEMENTASI SISTEM
Dalam proses pembuatan aplikasi, konfigurasi perangkat keras yang digunakan adalah
processor intel Pentium(R) D CPU 3,2 GHz, RAM 1 GB, dengan sistem operasi
Microsoft Windows XP Professional Service Pack 2. Tapi program ini dapat
dijalankan dengan konfigurasi minimal komputer sebagai berikut :
1. Processor Intel Pentium III 660 MHz
2. RAM 256 MB
3. Operating System Windows XP
4. Hard disk 4 GB
5. VGA Card 256 color, 640 x 480 pixel
6. Mouse
7. Keyboard
Implementasi dari sistem merupakan tahap akhir dari proses pengembangan sistem
aplikasi setelah melalui tahapan perancangan. Agar proses implementasi dari
perangkat lunak dapat bekerja secara sempurna, maka terlebih dahulu perangkat lunak
tersebut harus diuji untuk mengetahui kelemahan dan kesalahan yang ada untuk
kemudian dievaluasi.
Pada saat apikasi sistem pakar diagnosis penyakit tanaman kopi dijalankan, maka akan
tampil halaman sistem login. Disini akan ditentukan level pengguna yang akan
menggunakan aplikasi ini. Jika memilih level pakar dengan memasukkan username
dan password yang sebelumnya telah dibuat maka akan diberikan fasilitas untuk
melakukan perubahan data baik menambah maupun menghapus data pada basis
pengetahuan. Halaman ini juga menyediakan fasilitas untuk membuat pakar baru,
mengganti password yang sebelumnya sudah dibuat dan bahkan dapat menghapus
pakar dengan memasukkan password dari administrator.
Pada menu utama terdapat dua tombol yaitu tombol edit pengetahuan dan diagnosis,
untuk level pengguna hanya bisa menggunakan fasilitas tombol diagnosis dan
dilanjutkan dengan menjawab pertanyaan yang telah disediakan oleh sistem,
sedangkan level pakar dapat menggunakan fasilitas mengubah basis pengetahuan baik
menambah maupun menghapus data.
Pada halaman ini level pengguna dapat memilih salah satu jenis penyakit tanaman
kopi yang diperkirakan telah terinfeksi, jika telah dipilih kemudian akan dilanjutkan
dengan mengklik tombol proses yang akan dilanjutkan pada halaman pertanyaan.
Halaman penyakit digunakan oleh level pakar untuk menambah, mengubah, atau
menghapus data jenis penyakit. Untuk lebih jelasnya pakar dapat memasukan ID
penyakit dan jenis penyakit ke dalam basis pengetahuan.
Halaman penyakit digunakan oleh level pakar untuk menambah, mengubah, atau
menghapus data solusi. Untuk lebih jelasnya pakar dapat memasukan ID solusi dan
solusi ke dalam basis pengetahuan.
Halaman solusi merupakan halaman yang digunakan oleh level pengguna yang
sebelumnya telah menjawab pertanyaan yang ada pada halaman pertanyaan sehingga
sistem akan menampilkan hasil berupa jenis, gambar dan solusi dari penyakit yang
ada. Kemudian pengguna dapat mengklik tombol alasan untuk mengetahui jawaban
dari pertanyaan apa yang dijawab sebelumnya.
Setelah proses implementasi sistem selesai dihasilkan sebuah program sistem pakar
yang siap digunakan. Sebelum itu diperlukan pengujian untuk kemampuan dari
program ini. Pengujian ini juga berguna untuk mengetahui kesalahan-kesalahan yang
terjadi dikaernakan proses coding dari program. Pengujian sistem dilakukan dari
proses tanya jawab dengan sistem dan hasil outputnya akan dibandingkan dengan
basis pengetahuan yang ada berdasarkan aturan masing-masing dan jika hasil output
sama maka dapat disimpulkan pada pengujian ini sistem pakar sudah bekerja
sebagaimana rancangan sistem yang dibuat. Berikut beberapa contoh hasil pengujian
sistem :
1. Proses tanya jawab pada sistem untuk menentukan penyakit bercak daun :
Sistem
Pengguan : Ya
Sistem
Pengguna : Ya
Sistem
Pengguna : Tidak
Sistem
Pengguna : Ya
Hasli Diagnosis
Penyakit :
Bercak daun
Solusi :
Dilakukan penyemprotan fungisida tembaga,mengurangi kelembapan dengan
memotong daun-daun secara berkala, dan menurangi naungan atau peteduh.
Jika penyakit belum meluas, bagian-bagian daun sakit digunting, daun-daun
sakit yang telah gugur dikumpulkan, lalau semuanya dibakar atau dipendam.
Dari hasil proses tanya jawab pada sistem, diperoleh penyakit karat daun
mempunyai ciri-ciri:
1. Daun rontok
2. Terdapat bercak-bercak kuning pada daun
3. Terdapat pusat yang berwarna puntih kelabu pada bercak yang terdapat
di daun
2. Proses tanya jawab pada sistem untuk menentukan penyakit karat daun :
Sistem
Pengguan : Ya
Sistem
Pengguna : Ya
Sistem
Pengguna : ya
Hasli Diagnosis
Penyakit :
Karat daun
Solusi :
menggunakan fungisida Dithane M 45 dengan konsentrasi 0,2 % atau 2 cc per
liter air dengan interval penyemprotan 2 minggu sekali; penyemprotan
dilakukan pada awal mulainya hujan lebat dengan memperhatikan cara-cara
penyemprotan
Dari hasil proses tanya jawab pada sistem, diperoleh penyakit karat daun
mempunyai ciri-ciri:
1. Daun rontok
2. Terdapat bercak-bercak kuning pada daun
3. terbentuk tepung berwarna jingga(orange) pada bercak kuning daun
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Setelah melakukan pembahasan dari skripsi ini, maka dapat ditarik beberapa
kesimpulan sebagai berikut:
5.2 Saran
Berikut adalah saran-saran untuk pengembangan lebih lanjut terhadap aplikasi sistem
pakar yang telah dibangun.
1. Adanya pengembangan dalam sistem untuk mendiagnosis penyakit yang
disebabkan oleh hama.
2. Perlunya penambahan data untuk jenis penyakit nonbiotis beserta gejala dan
solusinya sehingga informasi yang dimiliki akan semakin luas
3. Sistem ini diharapkan dapat diaplikasikan ke dalam sistem online agar dikenal
luas oleh pengguna melalui jaringan internet.
4. Menambahkan pengetahuan yang lebih lengkap dari pakar yang berbeda.
5. Sistem ini diharapkan dapat memberikan informasi yang akurat dengan
melakukan percobaan-percobaan menggunakan banyak kombinasi data
penyakit sehingga dapat menjadi perbandingan dalam penentuan jenis
penyakit.
DAFTAR PUSTAKA
[1] Arhami, Muhammad. 2005. Konsep Dasar Sistem Pakar. Yogyakarta: Andi
Offset.
[2] Andi. 2003. Pengembangan Sistem Pakar Menggunakan Visual Basic.
Yogyakarta: Andi Offset.
[3] Dhany, Shafia. 2009. Perancangan Sistem Pakar Untuk Diagnosa Penyakit
Anak Skripsi. Medan: Universitas Sumatera Utara.
[4] Kristanto, Harianto. 2004. Konsep dan Perancangan Database. Yogyakarta :
Andi
[5] Kurniadi, Adi. 2000. Pemrograman Microsoft Visual Basic 6. Jakarta.PT Elex
Media Komputindo.
[6] Kusrini. 2008. Aplikasi Sistem Pakar. Yogyakarta: Andi
[7] Kusumadewi, Sri. 2003. Artificial Intelligence (Teknik dan Aplikasinya).
Yogyakarta: Graha Ilmu.
[8] Prasetyo, Dwi. D. 2004. Aplikasi Bisnis dan Perkantoran Menggunakan Visual
Basic. Jakarta. PT Elex Media Komputindo.
[9] Sanjaya, R. Dan Helmy. 2004. Mempercantik Desain Form pada Visual Basic
6.0. Jakarta : PT Elex Media Komputindo.
[10] Semangun, Haryanto. 1989. Penyakit-Penyakit Tanaman
Indonesia. Yogyakarta: Gadjah Mada University Press.
Perkebunan
End If
If Not validity(txtPass, "Password") Then
txtPass.SetFocus
Exit Sub
End If
konek_db
Dim sql As String
Set adoRS = New ADODB.Recordset
sql = "select * from list_user where user_id = '" &
txtLogin.Text_ & "' and pass = '" & Crypt(txtPass.Text) & "'"
adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic
If (adoRS.EOF) Then
MsgBox "User ID dan Password salah! Coba Lagi !", vbCritical,
"Peringatan"
txtLogin.Text = ""
txtPass.Text = ""
txtLogin.SetFocus
Call closeconn
Exit Sub
End If
levelid = adoRS!Level
Call closeconn
userid = txtLogin.Text
Unload Me
frmUtama.Show
End If
Exit Sub
login_err:
MsgBox Err.Description
End Sub
Private Sub Label6_Click()
frmUserBaru.Show vbModal
End Sub
Private Sub Label7_Click()
frmGantiPass.Show vbModal
End Sub
Private Sub Label9_Click()
frmHapusUser.Show vbModal
End Sub
Private Sub Form_Load()
Skin1.LoadSkin App.Path & "\SKIN\green.skn"
Skin1.ApplySkin hWnd
cboLevel.AddItem "Pengguna"
cboLevel.AddItem "Pakar"
cboLevel.AddItem "Administrator"
cmdMasuk.Enabled = False
End Sub
Private Sub Timer1_Timer()
Label6.ForeColor = RGB(Rnd * 255, Rnd * 255, Rnd * 255)
End Sub
KosongkanForm
End Sub
Private Sub cmdHapus_Click()
On Error GoTo hapusErr
Dim pil
pil = MsgBox("Apakah anda yakin data ini akan dihapus ?", vbQuestion
+ vbYesNo + vbDefaultButton2, "Konfirmasi")
If pil = vbYes Then
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveLast
MsgBox "Data Berhasil Dihapus !", vbInformation, "Informasi"
End If
Exit Sub
hapusErr:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub cmdInputPenyakit_Click()
frmPenyakit.Show vbModal
End Sub
Private Sub cmdInputSolusi_Click()
frmSolusi.Show vbModal
End Sub
Private Sub cmdKeluar_Click()
Me.Hide
End Sub
Private Sub cmdSimpan_Click()
On Error GoTo simpanErr
If txtIDKnowledge.Text = Empty Or _
cboPenyakit.Text = "" Or _
txtPertanyaan.Text = Empty Or _
txtFaktaYA.Text = Empty Or _
txtFaktaTIDAK.Text = Empty Or _
cboYA.Text = Empty Or _
cboTIDAK.Text = Empty Then
MsgBox "Informasi belum lengkap ! Lengkapi terlebih dahulu !",
vbExclamation, "Peringatan"
txtIDKnowledge.SetFocus
Else
Dim rsCek As ADODB.Recordset
Set rsCek = New ADODB.Recordset
rsCek.Open "select * from knowledge where ID='" & txtIDKnowledge.Text
& "'", Conn
If Not rsCek.EOF And baru Then
MsgBox "Aturan dengan kode " & txtIDKnowledge.Text & " sudah ada,
silahkan ganti dengan kode yang lain !", vbExclamation, "Peringatan"
txtIDKnowledge.SetFocus: SendKeys "{HOME}+{END}"
Else
With Adodc1.Recordset
If baru Then .AddNew
!ID = txtIDKnowledge.Text
!ID_penyakit = txtIDPenyakit.Text
!pertanyaan = txtPertanyaan.Text
!faktaYA = txtFaktaYA.Text
!faktaTIDAK = txtFaktaTIDAK.Text
!Ya = cboYA.Text
!Tidak = cboTIDAK.Text
.Update
MsgBox "Data berhasil disimpan !", vbInformation, "Informasi"
KunciTeks True
tombolAwal True
KosongkanForm
End With
End If
End If
Exit Sub
simpanErr:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub cmdTambah_Click()
baru = True
KunciTeks False
tombolAwal False
txtIDKnowledge.SetFocus
End Sub
Sub tombolAwal(kunci As Boolean)
cmdTambah.Enabled = kunci
cmdSimpan.Enabled = Not kunci
cmdBatal.Enabled = Not kunci
cmdUbah.Enabled = kunci
cmdHapus.Enabled = kunci
cmdKeluar.Enabled = kunci
End Sub
Private Sub cmdUbah_Click()
On Error GoTo ubahErr
KunciTeks False
tombolAwal False
With Adodc1.Recordset
txtIDKnowledge.Text = !ID
txtIDPenyakit.Text = !ID_penyakit
txtPertanyaan.Text = !pertanyaan
txtFaktaYA.Text = !faktaYA
txtFaktaTIDAK.Text = !faktaTIDAK
cboYA.Text = !Ya
cboTIDAK.Text = !Tidak
Set rsRusak = New ADODB.Recordset
rsRusak.Open "select * from penyakit where ID_Penyakit='" &
txtIDPenyakit.Text & "'", Conn
cboPenyakit.Text = rsRusak!jenis_penyakit
End With
txtIDKnowledge.SetFocus
baru = False
Exit Sub
ubahErr:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub Form_Activate()
Dim i As Integer
For i = 0 To 6
gridKnowledge.Columns(i).Locked = True
Next i
For i = 0 To 1
gridPenyakit.Columns(i).Locked = True
gridSolusi.Columns(i).Locked = True
Next i
cboCari.AddItem "ID Pengetahuan"
cboCari.AddItem "Pertanyaan"
cboCari.AddItem "ID Penyakit"
'If Not rsPenyakit.EOF Then
cboPenyakit.Clear
rsPenyakit.MoveFirst
While Not rsPenyakit.EOF
cboPenyakit.AddItem rsPenyakit!jenis_penyakit
rsPenyakit.MoveNext
Wend
'End If
'If Not rsKnowledge.EOF Then
cboYA.Clear
cboTIDAK.Clear
rsKnowledge.MoveFirst
While Not rsKnowledge.EOF
cboYA.AddItem rsKnowledge!ID
cboTIDAK.AddItem rsKnowledge!ID
rsKnowledge.MoveNext
Wend
'End If
'If Not rsSolusi.EOF Then
rsSolusi.MoveFirst
While Not rsSolusi.EOF
cboYA.AddItem rsSolusi!ID_solusi
cboTIDAK.AddItem rsSolusi!ID_solusi
rsSolusi.MoveNext
Wend
'End If
End Sub
Private Sub Form_Load()
KunciTeks True
tombolAwal True
Adodc1.ConnectionString = Conn.ConnectionString
Adodc1.RecordSource = "select * from knowledge"
Adodc1.Refresh
Set gridKnowledge.DataSource = Adodc1
Adodc3.ConnectionString = Conn.ConnectionString
Adodc3.RecordSource = "select * from penyakit"
Adodc3.Refresh
Set gridPenyakit.DataSource = Adodc3
Adodc2.ConnectionString = Conn.ConnectionString
Adodc2.RecordSource = "select * from solusi"
Adodc2.Refresh
Set gridSolusi.DataSource = Adodc2
gridPenyakit.Columns(0).Width = 400
gridPenyakit.Columns(1).Width = 5000
gridSolusi.Columns(0).Width = 400
gridSolusi.Columns(1).Width = 5000
gridKnowledge.Columns(0).Width
gridKnowledge.Columns(4).Width
gridKnowledge.Columns(5).Width
gridKnowledge.Columns(6).Width
=
=
=
=
400
400
400
400
rusakErr:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Sub DaftarCari()
On Error GoTo pesan
Dim adofilter As New ADODB.Recordset
Set adofilter = New ADODB.Recordset
Dim sqlc As String
adofilter.CursorLocation = adUseClient
Select Case cboCari.Text
Case "ID Pengetahuan"
sqlc = "SELECT * FROM knowledge where ID like " & "'%" &
txtCari.Text & "%'" & _
"ORDER BY ID"
Case "Pertanyaan"
sqlc = "SELECT * FROM knowledge where pertanyaan like " & "'%" &
txtCari.Text & "%'" & _
"ORDER BY ID"
Case "ID Penyakit"
sqlc = "SELECT * FROM knowledge where ID_Penyakit like " & "'%" &
txtCari.Text & "%'" & _
"ORDER BY ID"
Case Else
MsgBox "Pilih dulu mau mencari berdasarkan apa !", vbExclamation,
"Peringatan"
'txtCari.Text = ""
cboCari.SetFocus
Exit Sub
End Select
adofilter.Open sqlc, Conn, adOpenDynamic, adLockOptimistic
If Not adofilter.EOF Then
Set gridKnowledge.DataSource = adofilter
Set Adodc1.Recordset = adofilter
Else
MsgBox "Maaf, data yang anda cari tidak terdapat pada
database !", vbInformation, "Informasi"
txtCari.Text = ""
End If
Exit Sub
pesan:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub txtCari_Change()
DaftarCari
End Sub
Adodc1.Refresh
MsgBox "Data berhasil disimpan !", vbInformation, "Informasi"
KunciTeks True
tombolAwal True
KosongkanForm
End With
End If
End If
Exit Sub
simpanErr:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub cmdTambah_Click()
baru = True
KunciTeks False
tombolAwal False
txtIDPenyakit.SetFocus
End Sub
Sub tombolAwal(kunci As Boolean)
cmdTambah.Enabled = kunci
cmdSimpan.Enabled = Not kunci
cmdBatal.Enabled = Not kunci
cmdUbah.Enabled = kunci
cmdHapus.Enabled = kunci
cmdKeluar.Enabled = kunci
End Sub
Private Sub cmdUbah_Click()
On Error GoTo ubahErr
KunciTeks False
tombolAwal False
With Adodc1.Recordset
txtIDPenyakit.Text = !ID_penyakit
txtJenisPenyakit.Text = !jenis_penyakit
End With
txtIDPenyakit.SetFocus
baru = False
Exit Sub
ubahErr:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub Form_Activate()
Dim i As Integer
For i = 0 To 1
gridPenyakit.Columns(i).Locked = True
Next i
txtCari.Text = ""
End Sub
pesan:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub cboCari_Click()
txtCari.Text = ""
txtCari.SetFocus
End Sub
Private Sub txtCari_Change()
DaftarCari
End Sub
ubahErr:
MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical,
"Peringatan"
End Sub
Private Sub Form_Activate()
Dim i As Integer
For i = 0 To 1
gridSolusi.Columns(i).Locked = True
Next i
txtCari.Text = ""
End Sub
Private Sub Form_Load()
KunciTeks True
tombolAwal True
Adodc1.ConnectionString = Conn.ConnectionString
Adodc1.RecordSource = "select * from solusi"
Adodc1.Refresh
Set gridSolusi.DataSource = Adodc1
gridSolusi.Columns(0).Width = 400
gridSolusi.Columns(1).Width = 5000
Skin1.LoadSkin App.Path & "\SKIN\green.skn"
Skin1.ApplySkin hWnd
End Sub
Sub KosongkanForm()
txtIDSolusi.Text = Empty
txtSolusi.Text = Empty
End Sub
Sub KunciTeks(kunci As Boolean)
txtIDSolusi.Locked = kunci
txtSolusi.Locked = kunci
End Sub
Sub DaftarCari()
On Error GoTo pesan
Dim adofilter As New ADODB.Recordset
Set adofilter = New ADODB.Recordset
Dim sqlc As String
adofilter.CursorLocation = adUseClient
Select Case cboCari.Text
Case "ID Solusi"
sqlc = "SELECT * FROM solusi where ID_Solusi like " & "'%" &
txtCari.Text & "%'" & _
"ORDER BY ID_Solusi"
Case "Solusi"
sqlc = "SELECT * FROM solusi where solusi like " & "'%" &
txtCari.Text & "%'" & _
"ORDER BY ID_Solusi"
Case Else
MsgBox "Pilih dulu mau mencari berdasarkan apa !", vbExclamation,
"Peringatan"
cboCari.SetFocus
Exit Sub
End Select