Peranti lunak sistem informasi hutan kota pPant and Tree Information System (PLATIS)

(1)

M. FAJAR ADITYARAMA PUTRA

DEPARTEMEN

KONSERVASI SUMBERDAYA HUTAN DAN EKOWISATA FAKULTAS KEHUTANAN

INSTITUT PERTANIAN BOGOR 2011


(2)

Sistem Informasi Hutan Kota Plant And Tree Information System (PLATIS). Dibimbing oleh ENDES N. DAHLAN.

Pembangunan hutan kota harus memperhatikan beberapa hal demi tercapainya tujuan dan keberhasilan pembangunan hutan kota, salah satunya adalah pemilihan tanaman yang sesuai dengan kondisi ekologis lokasi pembangunan hutan kota. Karakter tumbuhan juga harus sesuai dengan tujuan pembangunan hutan kota tersebut.

Penelitian ini bertujuan untuk membuat sistem informasi mengenai tumbuhan. Dengan adanya sistem informasi dalam bentuk digital ini, diharapkan dapat memberikan kemudahan bagi siapa saja yang membutuhkan informasi untuk mengakses dan mencari informasi mengenai tumbuhan, terutama untuk pembangunan hutan kota.

Informasi yang dibutuhkan tersebut adalah informasi mengenai nama ilmiah, nama daerah, tipe hujan, cahaya, altitud minimum, altitud maksimum, jenis tanah, tekstur tanah, solum, pH, daya transpirasi, daya serap CO2, ketahanan garam, ketahanan genang, bentuk tajuk, diameter tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi, kelas tajuk, serta tiga foto tumbuhan.

Penelitian ini menghasilkan sebuah piranti lunak sistem informasi yang dinamakan PLATIS (Plant and Tree Information System). PLATIS terdiri atas tiga menu form, yaitu form tumbuhan, form famili, dan form tutorial. Piranti lunak ini dibuat dengan menggunakan MS Visual Studios 2005 dengan basis data yang dibuat dengan MS Access XP, serta sebuah program .NetFx sebagai komponen untuk menjalankan aplikasi ini.


(3)

Sistem Informasi Hutan Kota Plant And Tree Information System (PLATIS). Under supervision of ENDES N. DAHLAN.

The development of urban forest must consider the purpose for the successful development of urban forestry, one of which is those plant selected suitable with the ecological conditions where the urban forest will be estabilished. The characters of the plants that will be planted must also suit the purpose of the development of urban forest.

The objective of this study was to create an information system of plants. Such information system will be developed in digital form, and would provide ease of access of the information on the selected plants.

Information of plants that were be collected include scientific name, local name, rainfall, light inensity, altitude, soil type, soil texture, sollup, pH, Transpiration, CO2 absorption, salt endurance, pool endurance, canopy shape, canopy class, and the picture of plant.

This study produce a system information software that named PLATIS (Plant and Tree Information System). PLATIS consist of three form, plant form, family form, and tutorial form. This software made using MS Visual Studios 2005 with database that made using MS Access XP, and using >NetFx (dotNetFramework) as a component to run this software.


(4)

M. FAJAR ADITYARAMA PUTRA

Skripsi

Sebagai salah satu syarat untuk memperoleh gelar Sarjana Kehutanan pada Program Studi

Konservasi Sumberdaya Hutan dan Ekowisata Fakultas Kehutanan, Institut Pertanian Bogor

DEPARTEMEN

KONSERVASI SUMBERDAYA HUTAN DAN EKOWISATA FAKULTAS KEHUTANAN

INSTITUT PERTANIAN BOGOR 2011


(5)

Sistem Informasi Hutan Kota Plant And Tree Information System (PLATIS)”

adalah benar-benar hasil karya saya sendiri dengan bimbingan dosen pembimbing dan belum pernah digunakan sebagai karya ilmiah pada perguruan tinggi atau lembaga manapun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini.

Bogor, Juli 2011

M. Fajar Adityarama Putra NRP. E34052382


(6)

Nama : M. Fajar Adityarama Putra NRP : E34052382

Program Studi : Konservasi Sumberdaya Hutan dan Ekowisata

Menyetujui, Pembimbing

Dr. Ir. Endes N. Dahlan, MS NIP. 19501226 198003 1 002

Mengetahui:

Ketua DepartemenKonservasi Sumberdaya Hutan dan Ekowisata Fakultas Kehutanan Institut Pertanian Bogor

Prof. Dr. Ir. Sambas Basuni,MS NIP. 19580915 198403 1 003 Tanggal :


(7)

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Allah SWT atas segala Rahmat dan Hidayah-NYA sehingga skripsi ini berhasil diselesaikan. Shalawat serta salam penulis sampaikan kepada Nabi Muhammad SAW beserta keluarga, para sahabat serta umatnya. Tema yang dipilih dalam penelitian ini adalah hutan kota, dengan judul Piranti Lunak Sistem Informasi Hutan Kota Plant And Tree Information System (PLATIS).

Terimakasih penulis ucapkan kepada Dr. Ir. Endes N. Dahlan, MS selaku dosen pembimbing yang telah memberikan bimbingan, saran, arahan, motivasi, serta segala masukan yang sangat berguna bagi penulis. Tak lupa penulis mengucapkan terimakasih kepada orangtua penulis atas kesabaran dan pengorbanan yang sudah dilakukan hingga saat ini.

Penulis juga mengucapkan terimakasih kepada Nawawi, karena piranti lunak yang disusun ini menggunakan dasar daripiranti lunak yang terlebih dahulu disusun oleh beliau, yang kemudian disempurnakan oleh penulis.

Semoga skripsi ini dapat bermanfaat bagi semua dan mendapatkan ridho-Nya, terimakasih.

Bogor, Juli 2011


(8)

RIWAYAT HIDUP

Penulis dilahirkan di Bogor pada Tanggal 22 Agustus 1987 dari ayah Taufik Effendy dan ibu Henny Sucitrowati. Penulis merupakan anak pertama dari dua bersaudara.

Pada tahun 1992, penulis menyelesaikan pendidikan kanak-kanak dan pada tahun yang sama melanjutkan sekolah dasar di SDN Pengadilan 2 Bogor. Setelah menyelesaikan masa studi pendidikan dasar selama 6 tahun, penulis melanjutkan sekolah menengah pertama di SMP Negeri 3 Bogor. Setelah lulus dari SMPN 3 Bogor, penulis melanjutkan pendidikan di SMA plus Bina Bangsa Sejahtera, Bogor.

Pada tahun 2005, penulis lulus dari SMA plus Bina Bangsa Sejahtera dan pada tahun yang sama, penulis diterima di IPB Program Studi S1 melalui Seleksi Penerimaan Mahasiswa Baru (SPMB). Setelah melewati masa Tingkat Persiapan Bersama (TPB) selama 1 tahun di IPB, penulis akhirnya memilih dan diterima pada Program Studi Konservasi Sumberdaya Hutan dan Ekowisata, Fakultas Kehutanan.

Selama menjalani masa kuliah di IPB, penulis melaksanakan beberapa kegiatan seperti kegiatan Praktik Pengelolaan Ekosistem Hutan (PPEH) yang dilakukan di wilayah Linggarjati – Indramayu, kegiatan Praktik Umum Konservasi Ex-Situ (PUKES) yang dilaksanakan di Taman Margasatwa Ragunan dan Karyasari, serta kegiatan Praktik Kerja Lapang (PKL) yang dilaksanakan di Taman Nasional Bali Barat.


(9)

UCAPAN TERIMA KASIH

Puji dan syukur penulis ucapkan kehadirat Allah SWT yang atas kehendak-Nya penulis dapat menyelesaikan skripsi ini. Sebagai manusia biasa yang memiliki keterbatasan, penulis menyadari penyusunan skripsi ini tak lepas dari bantuan banyak pihak. Untuk itu, dengan segala kerendahan hati, ucapan terima kasih yang tak terhingga wajib penulis ucapkan kepada :

1. Dr. Ir. Endes N. Dahlan, MS selaku dosen pembimbing yang telah memberikan pengarahan, bimbingan dan saran selama penyusunan hingga penyelesaian karya ilmiah ini.

2. Bapak Dr. Ir. Nurheni Wijayanto, MS yang telah berkenan sebagai dosen penguji, dan Dr. Ir. Arzyana Sunkar, M. Sc yang telah berkenan sebagai ketua sidang.

3. Seluruh staff pengajar, khususnya staff pengajar departemen Konservasi Sumberdaya Hutan dan Ekowisata atas segala ilmu yang telah diberikan selama penulis menuntut ilmu.

4. Ibu Henny Sucitrowati dan Bapak Taufik Effendy, orang tua saya, yang telah membesarkan dan mendidik saya. Saya mutlak berterima kasih dan sekaligus meminta maaf kepada beliau berdua karena hanya dengan dukungan beliau berdualah saya dapat melanjutkan pendidikan saya hingga perguruan tinggi. Saya menyadari, tanpa beliau berdua, mustahil saya bisa menjadi sekarang. Begitu banyak pengorbanan yang beliau berikan kepada saya, dari kecil hingga dewasa. Pengorbanan serta kasih sayang yang tak terhitung dan tak terhingga banyaknya.

5. Seluruh staff administrasi DKSHE atas segala bantuannya selama ini. 6. Keluarga besar KSH’42 (Tarsius 42) atas tawa, canda, suka dan duka yang

telah kita lalui selama ini.

7. Agung Imansyah dan Naila Maryam atas segala bantuan, dorongan semangat, serta atas persahabatan yang tak ternilai harganya.

8. Rekan-rekan yang berada di sekeliling penulis selama penyusunan karya ilmiah ini : Muti, Teh Lin, Ikin, Iwan (komti), Uphie, Wista, Bebye, Jojo, Arman, Jadda, Risto, Koko, Nicanor, Ari S, Ari Jati, Nina, Dora, Whanee.


(10)

9. Keluarga bapak Sudarto : Bapak Sudarto, Ibu Elly, Galih Eka Pratiwi, S. Tp dan Gesit Dwi Ardianto atas segala dukungan dan doanya selama ini. 10.Semua pihak yang tidak dapat disebutkan satu persatu yang telah

mencurahkan segala tenaga, waktu maupun pikirannya kepada penulis dalam menyelesaikan karya ilmiah ini.

Semoga kebaikan yang telah diberikan mendapat balasan dari Allah SWT, Amin.


(11)

DAFTAR ISI

Halaman

KATA PENGANTAR ... i

RIWAYAT HIDUP ... ii

UCAPAN TERIMA KASIH ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... vii

DAFTAR TABEL ... viii

DAFTAR LAMPIRAN ... ix

I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Tujuan Tugas Akhir ... 3

1.3 Manfaat Tugas Akhir ... 3

II TINJAUAN PUSTAKA ... 4

2.1 MS Visual Basic 2005... 4

2.2 Sistem Informasi ... 4

III METODOLOGI ... 6

3.1 Waktu ... 6

3.2 Alat Dan Bahan ... 6

3.2.1 Alat ... 6

3.2.2 Bahan ... 6

3.3 Metode Pembuatan Piranti Lunak ... 6

3.3.1 Perancangan Basis Data ... 6

3.3.2 Perancangan Piranti Lunak ... 7

3.3.3 Implementasi Program ... 7

3.3.4 Pengujian Program ... 8

IV HASIL DAN PEMBAHASAN ... 9

4.1 Hasil ... 9

4.1.1 Basis Data ... 9

4.1.2 Program Piranti Lunak... 9


(12)

4.1.2.2 Form Famili ... 12

4.1.2.3 Form Tutorial ... 13

4.2 Pembahasan ... 13

V KESIMPULAN DAN SARAN... 18

5.1 Kesimpulan ... 18

5.2 Saran ... 18

DAFTAR PUSTAKA ... 19


(13)

DAFTAR GAMBAR

Gambar Halaman

1. Tahapan Pembuatan Sistem Informasi Hutan Kota ... 8

2. Tampilan Utama ... 9

3. Tampilan Form Tumbuhan... 11

4. Tampilan Form Famili ... 12


(14)

DAFTAR TABEL

Halaman Tabel 1. Klasifikasi Iklim Menurut Schmidt-Ferguson ... 17


(15)

DAFTAR LAMPIRAN

Halaman

Lampiran 1. Halaman Utama ... 21

Lampiran 2. Form Tumbuhan... 25

Lampiran 3. Form Famili ... 41


(16)

BAB I PENDAHULUAN 1.1 Latar Belakang

Hutan kota adalah hamparan lahan yang bertumbuhan pohon-pohon yang kompak dan rapat di dalam perkotaan baik pada tanah negara maupun tanah hak yang ditetapkan sebagai hutan kota oleh pejabat berwenang (Peraturan Pemerintah No. 63 Tahun 2003). Hutan kota yang ada dapat berbentuk antara lain berupa jalur hijau (dapat berupa pohon peneduh jalan, jalur hijau di bawah kawat listrik tegangan tinggi, jalur hijau di tepi rel kereta api, jalur hijau di tepi sungai di dalam maupun di luar kota), tanaman kota yaitu tanaman yang ditata sedemikian rupa baik sebagian maupun semuanya rekayasa manusia untuk mendapatkan komposisi tertentu yang indah; kebun dan halaman; kebun raya, hutan raya dan kebun binatang; hutan lindung; kuburan dan taman pemakaman pahlawan (Dahlan 1992). Hutan kota berfungsi untuk memperbaiki iklim mikro, nilai estetika, meresapkan air, menciptakan keserasian lingkungan fisik kota dan menjaga keseimbangan ekosistem perkotaan (Jauhari, 2003).

Seiring berjalannya waktu, lingkungan perkotaan semakin hari semakin buruk. Perkembangan sarana dan prasarana yang semakin lengkap mau tidak mau menekan ruang terbuka hijau (RTH). Banyak lahan yang ditumbuhi tumbuhan hijau dikonversi menjadi kawasan perumahan, industri, jalur akses, serta sarana dan prasarana lainnya. Padahal kualitas ekologi dapat berpengaruh pada produktifitas perekonomian kota. Kualitas ekologi yang buruk dapat menurunkan kualitas sumber daya manusia (SDM) yang dapat mengakibatkan penurunan produktifitas perekonomian perkotaan. Maka dari itu, harus ada usaha dalam mamperbaiki kualitas ekologi perkotaan melalui penataan lingkungan dan pembangunan hutan kota.

Namun dalam pelaksanaannya, tidak sedikit usaha perbaikan kualitas ekologi yang mengalami kegagalan. Sekitar 30% dari total jumlah pohon yang ditanam dalam program penghijauan di Kota Bandung, mati (Rohayati dan Aksan, 2010). Kejadian yang lebih parah terjadi pada penanaman hutan bakau di Teluk Parepare yang terjadi pada tahun 2002. BAPEDALDA melaksanakan kegiatan penanaman hutan mangrove sebanyak 300 pohon di Lumpue dan 200 pohon di


(17)

Cempae, namun yang mampu tumbuh sampai sekarang hanya sekitar 30% di daerah Lumpue sedangkan di daerah Cempae semuanya mati (Uwaisalqarny, 2008).

Pesurnay (1997) melakukan penelitian mengenai evaluasi tanaman penghijauan di lokasi PPKAN-34 kawasan Gunung Nona Kotamadya Ambon. Evaluasi tanaman penghijauan dilakukan 3 tahun setelah penanaman. Pertumbuhan tanaman penghijauan mengalami perbedaan.. Hal ini disebabkan keadaan geologis pada tiap plot berbeda. Menurut Retnowati (1988), pada umur 2 tahun mangium sudah mulai berbunga dan berbuah serta mampu menghasilkan biji yang baik. Namun berdasarkan penelitian Pesurnay (1997) pada lokasi penelitiannya tidak ditemukan tanaman mangium yang sudah menghasilkan bunga meskipun usianya sudah 3 tahun.

Berdasarkan penelitian tersebut, dapat disimpulkan bahwa tiap-tiap tanaman memiliki kebutuhan yang berbeda akan kondisi tempat hidupnya. Ada tanaman yang yang dapat tumbuh baik pada tanah yang basah dan ada tanaman yang justru tumbuh baik pada tanah yang kering, ada juga tanaman yang dapat tumbuh baik pada kedua kondisi tanah tersebut. Begitu pula dengan kondisi ekologi lainnya. Serta ada beberapa tanaman yang semasa hidupnya memerlukan perlakuan khusus agar dapat tumbuh dengan baik.

Menurut Dahlan (1992) informasi yang perlu diperhatikan dalam pemilihan jenis tanaman yang akan digunakan untuk pembangunan hutan kota adalah :

1. Persyaratan edafis : pH, jenis tanah, tekstur, altitud, salinitas dan sejenisnya.

2. Persyaratan meteorologis : suhu, kelembaban udara, kecepatan angin, dan radiasi sinar matahari.

3. Persyaratan umum tanaman.

4. Persyaratan untuk pohon peneduh jalan. 5. Persyaratan estetika.

6. Persyaratan untuk pemanfaatan khusus : disesuaikan dengan tujuan.

Pemilihan jenis tanaman untuk hutan kota merupakan salah satu langkah yang penting guna menuju keberhasilan program penghijauan kota. Dalam


(18)

pemilihan jenis tanaman hutan kota perlu diperhatikan aspek-aspek ekologi. Oleh sebab itu, sebelum penanaman dilakukan perlu diketahui keadaan lahan dan kondisi setempat yang meliputi iklim, tanah dan kondisi lingkungan lainnya. Setelah informasi itu diperoleh, baru ditentukan jenis tanaman yang akan ditanam. Pemilihan jenis dilakukan untuk menentukan jenis tanaman yang akan ditanam agar sesuai dengan kondisi setempat sehingga tanaman yang akan ditanam diharapkan dapat berfungsi maksimal sesuai dengan yang diharapkan (Dahlan, 2004). Nawawi (2005) telah membuat database dan piranti lunak mengenai Sistem Informasi Tumbuhan dan Tanaman Hutan Kota (Sinttha), namun terdapat beberapa kekurangan pada piranti lunak tersebut, seperti penggunaan tipe hujan berdasarkan Schmidt-Ferguson yang cukup rumit dan jarang digunakan oleh masyarakat awam, penggalian informasi yang kurang sederhana, serta gambaran tumbuhan yang bersifat umum dan kurang spesifik karena hanya menyediakan 1 buah gambar. Oleh sebab itu, diperlukan database

dan piranti lunak yang lebih sempurna sehingga dapat digunakan sebagai informasi hutan kota.

1.2 Tujuan Tugas Akhir

1. Tujuan dibuatnya piranti lunak ini adalah untuk menyajikan informasi dalam bentuk digital.

2. Menampilkan informasi tumbuhan untuk keperluan pembangunan hutan kota.

3. Memberikan kemudahan dalam mengakses informasi yang telah dikumpulkan dan dapat digunakan tidak hanya masyarakat dengan latar belakang lingkungan, tetapi juga masyarakat pada umumnya.

1.3 Manfaat Tugas Akhir

Manfaat piranti lunak ini adalah untuk memberi kemudahan dalam mengakses informasi, serta dapat dijadikan referensi untuk pembangunan hutan kota.


(19)

2.1 MS Visual Basic 2005

Visual Basic 2005 merupakan salah satu aplikasi pemrograman visual yang dibuat oleh Microsoft. Visual Basic 2005 merupakan bagian dari sebuah suite aplikasi pemrograman bernama Visual Studios 2005. Visual Basic 2005 sudah mendukung konsep pemrograman berorientasi objek (Object Oriented Programming). Dalam Visual Basic 2005 akan dikenal konsep objek, kelas (class), pewarisan (inheritance), namespace, dan lain-lain (Ramadhan, 2007). 2.2 Sistem Informasi

Sekarang ini, sudah banyak program-program yang dibuat berkenaan dengan sistem informasi dalam berbagai bidang, begitu juga dalam bidang kehutanan. Pada tahun 2000, dikembangkan pangkalan data tumbuhan obat unggulan oleh DEPHUTBUN dan Fakultas Kehutanan IPB, lalu Sistem Informasi Taman Nasional Gunung Gede Pangrango oleh Prantio (2001), Program Sistem Informasi Manajemen Hutan Mangrove yang dikembangkan oleh Suhana (2002), Basis data pohon yang dikembangkan oleh Nazir (2001), dan Sistem Informasi Tumbuhan dan Tanaman Hutan Kota (Sinttha) oleh Nawawi (2005).

Pangkalan tumbuhan obat unggulan yang dikembangkan oleh DEPHUTBUN dan Fakultas Kehutanan IPB (2000) berisi informasi tentang tumbuhan obat unggulan pada 18 lokasi di lima propinsi yaitu, Sumatera Barat, Jambi, Jawa Barat, Jawa Tengah, dan Jawa Timur. Informasi yang digali dan digunakan dalam piranti lunak itu adalah nama latin, nama famili, nama daerah, habitus, bagian yang dimanfaatkan, serta khasiatnya. Data dihimpun dalam piranti lunak Sistem Informasi Geografi, ARC/INFO, yang divisualisasikan dengan menggunakan ARC/VIEW. Tampilan basis data dilakukan dengan menggunakan ARC/VIEW, sehingga peta dan potensinya dapat dilihat secara bersamaan dengan mengetik lokasi yang diinginkan.

Sistem informasi Taman Nasional Gunung Gede Pangrango yang dikembangkan oleh Prantio (2001) diberi nama TNGP.INFO. Program aplikasi


(20)

TNGP.INFO adalah program yang dibuat untuk manajemen basis data di Sub Balai Taman Nasional Gunung Gede Pangrango. Piranti lunak ini berisi berbagai macam data seperti data vegetasi, fauna, kondisi sosial ekonomi masyarakat yang ada di sekitar Taman Nasional Gunung Gede Pangrango, serta kondisi umum, termasuk potensi yang dimiliki dan sebuah video pendek.

Program Sistem Informasi Manajemen Hutan Mangrove yang dikembangkan oleh Suhana (2002) berisi informasi untuk pengelolaan hutan pesisir, khususnya pengelolaan hutan mangrove yang ada di Kabupatan Ciamis, Jawa Barat. Informasi yang ditampilkan dalam piranti lunak ini adalah informasi mengenai perkembangan keadaan demografi (jumlah penduduk, mata pencaharian, pendidikan, dan lain-lain) di sekitar hutan mangrove, dan keadaan lingkungan sekitar hutan mangrove (tata guna lahan, pasang surut perairan dan kualitas perairan, vegetasi hutan mangrove, peraturan-peraturan yang terkait dengan pengelolaan hutan mangrove). Basis data pohon yang dikembangkan oleh Nazir (2001) yang berisi mengenai basis data pohon yang berupa informasi basis data pohon koleksi arboretum Arsitektur Lansekap kampus IPB Dramaga, Bogor.

Sistem Informasi Tumbuhan dan Tanaman Hutan Kota (Sinttha) yang dikembangkan oleh Nawawi (2005) berisi informasi untuk pengelolaan hutan kota. Informasi yang ditampilkan oleh piranti lunak ini adalah informasi spesies tumbuhan yang meliputi nama ilmiah, nama daerah, tipe hujan, cahaya, altitud minimum, altitud maksimum, jenis tanah, tekstur tanah, solum, pH, daya transpirasi, daya serap CO2, ketahanan garam, ketahanan genang, bentuk tajuk, diameter tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi, kelas tajuk serta gambar spesies tumbuhan tersebut.


(21)

3.1 Waktu

Pembuatan piranti lunak ini dilakukan selama dua bulan yaitu bulan Desember 2010 - Januari 2011.

3.2. Alat dan Bahan 3.2.1 Alat

Pembuatan piranti lunak ini dilakukan dengan menggunakan alat berbentuk perangkat keras (hardware) dan perangkat lunak (software). Perangkat keras yang digunakan antara lain Personal Computer (PC), blank R, DVD-RW ROM LG 52x, dan Kamera digital, sedangkan piranti lunak yang digunakan dalam pembuatan piranti lunak ini adalah Microsoft Windows XP® Professional, Microsoft Office Access XP, Microsoft Visual Studios 2005, Adobe Photoshop 6.0, Microsoft Office Picture Manager, Microsoft Office Power Point XP, Microsoft Paint, Installshield Proffesional 7.01, dan Microsoft Internet Explorer 8.0.

3.2.2 Bahan

Pembuatan piranti lunak ini menggunakan bahan berupa informasi mengenai tanaman hutan kota yang dikumpulkan melalui studi pustaka maupun pencarian melalui jalur internet.

3.3 Metode Pembuatan Piranti Lunak

Piranti lunak sistem informasi yang akan dibuat ini disusun melalui beberapa tahapan, diantaranya :

3.3.1 Perancangan Basis Data

Data mengenai tumbuhan yang telah dikumpulkan, disusun ke dalam suatu

database (basis data) dengan menggunakan Microsoft Access dengan nama file

db32b.mdb. File ini digunakan sebagai basis data dalam bentuk tabel yang berisi informasi mengenai ID, nama ilmiah, nama daerah, ID famili, tipe hujan, cahaya,


(22)

altitud minimum, altitud maksimum, jenis tanah, tekstur tanah, solum, pH, daya transpirasi, daya serap CO2, ketahanan garam, ketahanan genang, bentuk tajuk, diameter tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi, kelas tajuk, foto 1, foto 2, foto 3.

3.3.2 Perancangan Piranti lunak

Pembuatan piranti lunak ini dimulai dengan membuat tampilan antar muka pengguna (user interface) piranti lunak yang akan dibuat dengan menggunakan

toolbox yang terdapat dalam program VB.Net 2005. Penyusunan antar muka pengguna (user interface) ini bertujuan untuk menentukan tata letak tombol perintah, membuat kolom untuk tampilan informasi yang dikeluarkan (output) serta tata letaknya, menentukan latar belakang (background), serta hal lainnya yang berhubungan dengan tampilan visual piranti lunak yang akan dibuat. Selain itu, penyusunan antar muka pengguna (user interface) ini berfungsi untuk menyusun rencana tampilan hasil eksekusi dari pemrograman yang telah dibuat, yang nantinya akan menampilkan berbagai macam informasi mengenai tanaman. Informasi yang nantinya akan ditampilkan oleh piranti lunak ini didapat dari input

yang telah disusun dalam bentuk tabel yang disimpan dengan Microsoft Access dalam file db32b.mdb. Data yang dikeluarkan (output) dalam piranti lunak ini berupa informasi yang dibutuhkan oleh pengguna (user) dengan menggunakan tombol-tombol perintah yang tersedia.

3.3.3 Implementasi Program

Setelah pembuatan antar muka pengguna (user interface) selesai, maka langkah selanjutnya adalah memberi perintah pada tampilan antar muka pengguna (user interface) yang telah dibuat. Penulisan bahasa program ini juga berfungsi agar piranti lunak yang telah dibuat dapat membaca basis data dan menampilkannya pada kolom-kolom yang telah dibuat untuk menempatkan informasi dari basis data. Tombol-tombol bantuan yang telah dibuat juga diberi perintah dengan bahasa program sesuai dengan fungsi tombol tersebut yang dikehendaki. Setelah selesai pemberian perintah, kemudian program dijalankan


(23)

(run) untuk melihat apakah bahasa pemrograman yang dibuat sudah sesuai dan dapat berjalan dengan baik.

Rancangan program diimplementasikan ke dalam program komputer sehingga menjadi single file dengan jenis Windows executable file (*.exe) dengan menggunakan bahasa pemrograman. Bahasa pemrograman yang digunakan adalah bahasa pemrograman Visual Corporation 2005. Program yang telah dibuat kemudian dijalankan untuk menguji ada atau tidaknya kesalahan (bug).

3.3.4 Pengujian Program

Pengujian program ini bertujuan untuk mengevaluasi program yang telah dibuat agar sesuai dengan tujuan pembuatan piranti lunak tersebut. Pengujian program dilakukan dengan meng-install program yang telah dibuat menjadi

Windows executable file (*.exe) ke dalam sebuah komputer yang menggunakan Microsoft® Windows sebagai sistem operasi, kemudian menjalankannya. Apabila program tersebut dapat ter-install dan berjalan dengan baik, maka pembuatan program tersebut berhasil, namun apabila tidak berjalan baik, maka perlu dilakukan evaluasi untuk memperbaiki kesalahan tersebut.


(24)

4.1 Hasil

4.1.1 Basis Data

Basis data pada piranti lunak Plant and Tree Information System dibuat dalam bentuk tabel dan disimpan dalam satu basis data file yang bernama db32b.mdb dengan model data flat file. Tabel yang dibuat memuat informasi mengenai tumbuhan dan tanaman. Informasi tersebut mencakup ID, nama ilmiah, nama daerah, ID famili, tipe hujan, cahaya, altitud minimum, altitud maksimum, jenis tanah, tekstur tanah, solum, pH, daya transpirasi, daya serap CO2, ketahanan garam, ketahanan genang, bentuk tajuk, diameter tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi, kelas tajuk, foto 1, foto 2, foto 3.

4.1.2 Program Piranti lunak

Program piranti lunak Plant and Tree Information System (PLATIS) terdiri atas form tumbuhan, famili, dan tutorial.


(25)

4.1.2.1 Form Tumbuhan

Form tumbuhan merupakan halaman inti piranti lunak tersebut yang menampilkan daftar (list) tumbuhan dan tanaman, serta berbagai informasi mengenai tumbuhan tersebut, seperti nama ilmiah, nama daerah, tipe hujan, cahaya, altitud minimum, altitud maksimum, jenis tanah, tekstur tanah, solum, pH, daya transpirasi, daya serap CO2, ketahanan garam, ketahanan genang, bentuk tajuk, diameter tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi, kelas tajuk, serta tiga tempat untuk menampilkan foto tumbuhan. Pada form ini juga terdapat beberapa tombol yang berfungsi untuk membantu dalam mengakses informasi seperti tombol refresh, clear, search, add, edit, save, dan delete.

a. Refresh

Tombol refresh ini berfungsi memerintahkan piranti lunak untuk membaca kembali basis data sehingga informasi yang ditampilkan menjadi update.

b. Clear

Tombol clear berfungsi untuk membuat kolom-kolom yang telah terisi informasi mengenai suatu spesies tumbuhan menjadi bersih, sehingga bisa diisi oleh pengguna untuk menggunakan fungsi dari tombol-tombol yang lain.

c. Search

Tombol search ini berfungsi untuk mencari informasi berdasarkan kata kunci yang dimasukan oleh pengguna. Fasilitas pencarian ini dapat mencakup semua aspek, tergantung keinginan pengguna. Pengguna tinggal mencantumkan kata kunci pada salah satu atau kombinasi beberapa kriteria informasi yang ingin dicari.

d. Add

Tombol add berfungsi untuk menambah atau mengubah informasi. Tombol ini juga berfungsi sebagai pemicu tombol save


(26)

e. Edit

Tombol edit ini adalah tombol untuk meng-edit (mengubah) informasi yang ditampilkan. Pengguna yang menggunakan piranti lunak ini pertama-tama harus menampilkan informasi salah satu spesies tumbuhan, setelah informasi tersebut ditampilkan, maka klik tombol edit kemudian pengguna dipersilahkan untuk mengganti bila dirasa ada informasi yang keliru atau tidak sesuai, kemudian tekan tombol save untuk menyimpan informasi tersebut ke dalam basis data.

f. Save

Tombol save ini berfungsi untuk memasukan informasi baru ke dalam basis data. Tombol ini hanya dapat berfungsi jika pengguna telah menekan tombol add atau tombol edit sebelumnya.

g. Delete

Tombol delete berfungsi untuk menghapus informasi dan semua data mengenai suatu tumbuhan. Tombol delete ini tidak hanya menghapus semua informasi satu jenis tumbuhan dari piranti lunak, tapi juga menghapusnya dari basis data.


(27)

4.1.2.2 Form Famili

Form famili ini dibuat bertujuan untuk menampilkan nama-nama famili yang ada dalam basis data. Dalam form ini juga diberi beberapa tombol perintah seperti refresh, tambah, ubah, simpan, dan hapus.

a. Refresh

Tombol refresh berisi perintah untuk membaca kembali informasi yang ada di basis data.

b. Tambah

Tombol tambah ini berfungsi untuk manambah famili, sehingga jika pengguna ingin menambah informasi tumbuhan pada form

tumbuhan, tetapi famili dari spesies tumbuhan tersebut belum terdaftar pada basis data, maka pengguna harus menambahkan famili dari spesies tersebut pada form famili ini.

c. Ubah

Tombol ubah ini berfungsi untuk mengganti atau mengkoreksi jika terdapat kesalahan penulisan pada nama famili yang telah terdaftar.

d. Simpan

Tombol simpan ini berfungsi untuk menyimpan data yang telah ditambahkan atau diubah dan menuliskannya ke dalam basis data. e. Hapus

Tombol hapus ini adalah tombol untuk menghapus nama famili yang tersimpan dalam basis data.


(28)

4.1.2.3 Form Tutorial

Form tutorial ini adalah form yang berisi informasi mengenai piranti lunak, penjelasan mengenai fungsi dari tombol-tombol yang ada pada piranti lunak, dan penjelasan mengenai tata cara pengoperasian piranti lunak. Dalam form

juga terdapat beberapa tombol yang juga ada pada form tumbuhan dan form famili seperti tombol refresh, clear, search, add, edit, save, dan delete. Namun yang membedakan disini adalah, jika tombol-tombol tersebut di eksekusi (di klik), maka akan muncul penjelasan mengenai tata cara penggunaan dan fungsi dari tombol tersebut baik itu tombol yang ada pada form tumbuhan maupun yang ada pada form famili.

Gambar 5. Tampilan form tutorial

4.2 Pembahasan

Program piranti lunak Plant and Tree Information System (PLATIS) adalah sebuah piranti lunak yang dibuat untuk mengelola data-data informasi mengenai tumbuhan dan tanaman seperti nama ilmiah, nama lokal, famili, kemampuan tanaman menyerap CO2, daya transpirasi, ketahanan tanaman terhadap garam, ketahanan terhadap genangan, keadaan lingkungan tempat tumbuh (tipe hujan, altitud (ketinggian tempat tumbuh), kebutuhan cahaya, solum (kedalaman), keasaman (pH) tanah, jenis tanah), morfologi tanaman (bentuk tajuk, diameter tajuk, kelas tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi), serta gambar tanaman tersebut.


(29)

Informasi mengenai tanaman tersebut dapat digunakan untuk berbagai keperluan, diantaranya dalam rencana pembangunan hutan kota. Karakteristik mengenai suatu tumbuhan diperlukan agar pembangunan hutan kota mencapai tujuannya secara efektif dan tepat sasaran. Informasi yang dikumpulkan dan disusun ke dalam piranti lunak ini juga diharapkan dapat menambah wawasan bagi pelajar, mahasiswa, dan masyarakat pada umumnya.

Piranti lunak ini dibuat dengan menggunakan MS Visual Studio 2005 dengan basis data yang dibuat dengan menggunakan MS Access XP. Piranti lunak ini terdiri atas 3 (tiga) form (tampilan), yaitu form tumbuhan, form famili, dan

form tutorial.

Form tumbuhan merupakan form untuk menampilkan informasi mengenai nama ilmiah, nama daerah, tipe hujan, cahaya, altitud minimum, altitud maksimum, jenis tanah, tekstur tanah, solum, pH, daya transpirasi, daya serap CO2, ketahanan garam, ketahanan genang, bentuk tajuk, diameter tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi, kelas tajuk, serta tiga foto tumbuhan. Pada form tumbuhan ini juga disertakan beberapa bantuan, seperti refresh, clear, search, add, edit, save, delete.

Form famili adalah form tempat untuk menampilkan informasi mengenai nama-nama famili yang ada di basis data piranti lunak ini. Form ini juga dilengkapi dengan berbagai macam tombol seperti refresh, tambah, ubah, simpan, dan hapus untuk meng-edit informasi mengenai nama-nama famili tersebut. Sedangkan pada form tutorial terdapat penjelasan mengenai tombol-tombol yang ada pada piranti lunak secara keseluruhan serta cara pengoperasian piranti lunak ini.

Untuk menjalankan piranti lunak ini diperlukan suatu program yang dinamakan dotNetFx, oleh karena itu file tersebut sudah dimasukan ke dalam CD

installer PLATIS. Penggunaan piranti lunak ini terbilang mudah, namun yang harus diperhatikan adalah pada bagian famili. Famili disini harus diisi, karena pada piranti lunak ini, famili diposisikan sebagai identitas, sehingga piranti lunak ini tidak akan menyimpan suatu informasi jika famili tidak diisi. Kemudian untuk


(30)

folder images di lokasi tempat piranti lunak ini di install. Setelah foto tersebut disimpan di folder images, barulah foto tersebut dapat di browse dan di save.

Informasi mengenai tanaman yang telah disajikan dalam bentuk digital ini dapat digunakan untuk berbagai keperluan, diantaranya dalam rencana pembangunan hutan kota. Karakteristik mengenai suatu tumbuhan diperlukan agar pembangunan hutan kota mencapai tujuannya secara efektif dan tepat sasaran. Keunggulan dari program ini adalah, data mengenai informasi yang ada di dalamnya dapat ditambah dan diubah, penggunaannya cenderung lebih sederhana karena kriteria yang digunakan untuk mencari informasi bisa diletakkan dimana saja dan tidak terbatas pada pencarian berdasarkan nama ilmiah atau nama daerah saja, tetapi bisa pada kriteria lainnya sesuai yang dikehendaki pengguna. Form

untuk pencarian disatukan dengan form untuk menampilkan informasi sehingga pengguna tidak direpotkan dengan keharusan berpindah form untuk menggunakan perintah pencarian.

Kelemahan dari piranti lunak ini adalah resolusi yang tidak otomatis menyesuaikan dengan resolusi layar, sehingga resolusi yang dipakai adalah resolusi yang pada saat program ini dibuat, serta kemungkinan adanya kesalahan (error) pada saat pengoperasian karena kemungkinan adanya ketidakcocokan antara piranti lunak ini dengan sistem yang ada pada komputer pengguna.

Proses peng-install-an piranti lunak ini dimulai dengan mengeksekusi file

setup yang ada pada CD installer, kemudian proses peng-install-an berjalan seperti proses install piranti lunak pada umumnya. Namun perlu diperhatikan, sebelum meng-install piranti lunak ini, terlebih dahulu harus meng-install

program dotnetfx (sudah tersedia pada CD installer PLATIS) karena dotnetfx ini adalah komponen yang diperlukan agar piranti lunak PLATIS dapat berjalan. Setelah proses install berjalan dengan benar, maka piranti lunak ini sudah dapat dijalankan. Langkah pertama yang disarankan untuk dilakukan setelah menjalankan piranti lunak ini adalah membuka form tutorial agar pengguna mengerti mengenai tata cara pengoperasian piranti lunak ini, penjelasa-penjelasan tentang fungsi-fungsi dari tombol yang ada pada piranti lunak, penjelasan mengenai informasi yang dikeluarkan, serta cara kerja dari piranti lunak ini.


(31)

Karena piranti lunak ini merupakan penyempurnaan dari piranti lunak terdahulu, ada beberapa hal yang membedakan antara piranti lunak ini dengan piranti lunak terdahulu. Beberapa hal yang berbeda dan merupakan keunggulan piranti lunak ini adalah, jumlah spesies tumbuhan yang ada dalam basis data lebih banyak, informasi mengenai tipe hujan menurut Schmidt-Ferguson diubah menjadi informasi mengenai curah hujan maksimal dan curah hujan minimal. Hal ini dilakukan mengingat informasi tipe hujan menurut Schmidt-Ferguson yang digunakan oleh piranti lunak terdahulu dirasa terlalu rumit untuk dipahami, menggunakan perhitungan yang terbilang sangat rumit, sehingga kemungkinan adanya kesalahan menjadi lebih besar, sedangkan informasi mengenai curah hujan lebih umum digunakan dan nilainya absolut. Pada piranti lunak yang disusun oleh penulis juga diberi tambahan informasi, yaitu informasi mengenai manfaat dari tanaman tersebut. Pada bagian foto tumbuhan, pada piranti lunak sebelumnya disediakan hanya satu tempat untuk foto, sedangkan pada piranti lunak ini disediakan tiga tempat foto dengan harapan bisa menampilkan foto tumbuhan secara keseluruhan, foto daun, sampai foto buah/benih tumbuhan.

Menurut tipe iklim Schmidt-Ferguson, tipe iklim suatu daerah dapat ditentukan dengan memperhatikan jumlah rata-rata bulan basah dan bulan kering dalam kurun waktu 10 sampai 20 tahun. Suatu bulan dikatakan bulan basah apabila curah hujannya lebih dari 100mm, dan bulan kering apabila curah hujannya kurang dari 60mm, sedangkan bulan lembab apabila curah hujannya berkisar antara 60-100mm. Dalam perhitungan ini, bulan lembab diabaikan.

Rumus yang digunakan untuk menentukan tipe iklim Schmidt-Ferguson adalah sebagai berikut :

Md

Q = --- x 100 % Mw

Dimana :

Q = Tipe iklim menurut Schmidt-Ferguson Md = Rata-rata banyaknya bulan kering (Fd/T) Mw = Rata-rata bulan basah (Fw/T)


(32)

Fw = Jumlah bulan basah

T = Banyaknya tahun observasi

Nilai Q untuk menentukan tipe iklim suatu daerah menurut Schmidt-Ferguson, adalah sebagai berikut :

Tabel 1. Klasifikasi Iklim Menurut Schmidt-Ferguson

Keunggulan lainnya adalah pada pengoperasian. Pada piranti lunak terdapat beberapa fungsi yang terkumpul dalam satu form, sehingga pengguna tidak dipusingkan untuk berpindah-pindah form. Sedangkan pada piranti lunak sebelumnya, form pencarian (search) dengan informasi dari spesies yang dituju berada dalam form yang berbeda, sehingga ketika pengguna menggunakan fungsi

search, maka untuk melihat hasil dari informasi yang dicari, pengguna harus berpindah form terlebih dahulu.


(33)

BAB V

KESIMPULAN DAN SARAN

4.1 Kesimpulan

Sistem informasi mengenai tumbuhan hutan kota dengan nama Plant and Tree Information System (PLATIS) dapat digunakan untuk :

1. Mengakses informasi mengenai tumbuhan untuk keperluan hutan kota. 2. Informasi yang ditampilkan oleh piranti lunak ini adalah informasi

mengenai nama ilmiah, nama lokal, famili, kemampuan tanaman menyerap CO2, daya transpirasi, ketahanan tanaman terhadap garam, ketahanan terhadap genangan, keadaan lingkungan tempat tumbuh (tipe hujan, altitud (ketinggian tempat tumbuh), kebutuhan cahaya, solum (kedalaman), keasaman (pH) tanah, jenis tanah), morfologi tanaman (bentuk tajuk, diameter tajuk, kelas tajuk, model arsitektur, tinggi tumbuhan, kelas tinggi), serta gambar dari tanaman.

4.2 Saran

1. Perlu tambahan informasi mengenai tumbuhan yang lebih banyak lagi, karena jumlah tumbuhan yang di input ke dalam basis data hanya sebanyak 225 spesies tumbuhan.

2. Perlu dilakukan modifikasi tampilan, terutama masalah resolusi, sehingga untuk selanjutnya, piranti lunak ini sudah mendukung dan menyesuaikan dengan resolusi berbagai tipe monitor.


(34)

DAFTAR PUSTAKA

Dahlan EN. 1992. Hutan Kota : Untuk Pengelolaan dan Peningkatan Kualitas Lingkungan Hidup. Asosiasi Pengusaha Hutan Indonesia. Jakarta. 92 Hal.

._________. 2004. Membangun Kota Kebun (Garden City) Bernuansa Hutan Kota. IPB Press. Bogor.

[DepHutBun dan Fahutan IPB] Departemen Kehutanan dan Perkebunan dan Fakultas Kehutanan IPB. 2000. Inventarisasi, Identifikasi dan Pemetaan Potensi Wanafarma: Propinsi Sumatera Barat. Bogor : Fakultas Kehutanan IPB. 264 Hal.

Jauhari, A. 2003. Hutan Kota untuk Keseimbangan Ekosistem Perkotaan. Tunas Vol. 1. No. 7.

Nawawi. 2005. Pembuatan Piranti Lunak Sistem Informasi Tumbuhan dan Tanaman Hutan Kota. [Skripsi]. Bogor : Institut Pertanian Bogor. Fakultas Kehutanan. 20 Hal.

Nazir AIB. 2001. Penyusunan Basis Data Pohon Koleksi Arboretum Arsitektur Lansekap Kampus Institut Pertanian Bogor Dramaga, Bogor. [Skripsi]. Bogor : Institut Pertanian Bogor. Fakultas Pertanian. 96 Hal.

Pesurnay, F. E. 1997. Evaluasi TanamanPenghijauan Di Lokasi PPKSN-34 Kawasan Gunung Nona Kotamadya Ambon Dalam Rangka Pengembangan Potensinya Sebagai Hutan Kota. [Skripsi]. Bogor : Institut Pertanian Bogor. Fakultas Kehutanan. 61 Hal.

Prantio S. 2001. Pembuatan Sistem Informasi Taman Nasional Gunung Gede Pangrango Jawa Barat. [Skripsi]. Bogor: Institut Pertanian Bogor. Fakultas Kehutanan. 99 Hal.

Ramadhan A. 2007. 36 Jam Belajar Komputer : Visual Basic 2005. Jakarta : Elex Media Komputindo. 376 Hal.

Retnowati, E. 1988. Beberapa Catatan Tentang Acacia mangium Willd. Jenis Potensial untuk Hutan Industri, dalam Jurnal Penelitian dan Pengembangan Kehutanan. IV(1) : 24-27.

Rohayati, W. Aksan, H., editor. 2010. 30% Persen Pohon Program Penghijauan Mati. http://jabar.tribunnews.com/read/artikel/26905/30-persen-pohon-program-penghijauan-mati. [5 April 2011].

Suhana. 2002. Rancang Bangun Perangkat Lunak Sistem Informasi Manajemen Hutan Mangrove di Kabupaten Ciamis Propinsi Jawa Barat. Bogor : Institut Pertanian Bogor. Fakultas Perikanan dan Ilmu Kelautan. 48 Hal. Uwaisalqarny . 2008. Potensi Laut dan Pesisir Teluk Parepare.


(35)

(36)

Imports System.Windows.Forms

Public Class Utama

Private Sub ShowNewForm(ByVal sender As Object, ByVal e As EventArgs) Handles NewWindowToolStripMenuItem.Click

' Create a new instance of the child form.

Dim ChildForm As New System.Windows.Forms.Form

' Make it a child of this MDI form before showing it.

ChildForm.MdiParent = Me

m_ChildFormNumber += 1

ChildForm.Text = "Window " & m_ChildFormNumber ChildForm.Show()

End Sub

Private Sub OpenFile(ByVal sender As Object, ByVal e As EventArgs)

Dim OpenFileDialog As New OpenFileDialog OpenFileDialog.InitialDirectory =

My.Computer.FileSystem.SpecialDirectories.MyDocuments

OpenFileDialog.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"

If (OpenFileDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then

Dim FileName As String = OpenFileDialog.FileName ' TODO: Add code here to open the file.

End If End Sub

Private Sub SaveAsToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs)

Dim SaveFileDialog As New SaveFileDialog SaveFileDialog.InitialDirectory =

My.Computer.FileSystem.SpecialDirectories.MyDocuments

SaveFileDialog.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"

If (SaveFileDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then

Dim FileName As String = SaveFileDialog.FileName ' TODO: Add code here to save the current contents of the form to a file.

End If End Sub

Private Sub ExitToolsStripMenuItem_Click(ByVal sender As

Object, ByVal e As EventArgs) Handles ExitToolStripMenuItem.Click Global.System.Windows.Forms.Application.Exit()

End Sub

Private Sub CutToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs)


(37)

' Use My.Computer.Clipboard to insert the selected text or images into the clipboard

End Sub

Private Sub CopyToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs)

' Use My.Computer.Clipboard to insert the selected text or images into the clipboard

End Sub

Private Sub PasteToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs)

'Use My.Computer.Clipboard.GetText() or

My.Computer.Clipboard.GetData to retrieve information from the clipboard.

End Sub

Private Sub StatusBarToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles

StatusBarToolStripMenuItem.Click Me.StatusStrip.Visible = Me.StatusBarToolStripMenuItem.Checked End Sub

Private Sub CascadeToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles

CascadeToolStripMenuItem.Click

Me.LayoutMdi(MdiLayout.Cascade) End Sub

Private Sub TileVerticleToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles

TileVerticalToolStripMenuItem.Click

Me.LayoutMdi(MdiLayout.TileVertical) End Sub

Private Sub TileHorizontalToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles

TileHorizontalToolStripMenuItem.Click

Me.LayoutMdi(MdiLayout.TileHorizontal) End Sub

Private Sub ArrangeIconsToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles

ArrangeIconsToolStripMenuItem.Click

Me.LayoutMdi(MdiLayout.ArrangeIcons) End Sub

Private Sub CloseAllToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles

CloseAllToolStripMenuItem.Click

' Close all child forms of the parent.

For Each ChildForm As Form In Me.MdiChildren ChildForm.Close()

Next End Sub


(38)

Private Sub FamiliToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

FamiliToolStripMenuItem.Click Famili.MdiParent = Me Famili.Show()

End Sub

Private Sub TumbuhanToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

TumbuhanToolStripMenuItem.Click Tumbuhan.MdiParent = Me Tumbuhan.Show()

End Sub

Private Sub ContentsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

ContentsToolStripMenuItem.Click Tutorial.MdiParent = Me Tutorial.Show()

End Sub

Private Sub Utama_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

startup.MdiParent = Me startup.Show()

End Sub

Private Sub StartUpMenuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

StartUpMenuToolStripMenuItem.Click startup.MdiParent = Me startup.Show()

End Sub

Private Sub AboutToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

AboutToolStripMenuItem.Click about.MdiParent = Me about.Show()

End Sub

Private Sub ToolStripLabel1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

startup.MdiParent = Me startup.Show()

End Sub End Class

Public Class startup

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Tumbuhan.MdiParent = Utama Tumbuhan.Show()

'Me.Close()


(39)

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Famili.MdiParent = Utama Famili.Show()

'Me.Close()

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

Utama.Close() End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

Tutorial.MdiParent = Utama Tutorial.Show()

End Sub

Private Sub startup_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub


(40)

Imports System.Data

Imports System.Data.OleDb

Imports System.IO

Public Class Tumbuhan

Private conn As OleDbConnection Private connStr As String

Private sql, query As String

Private cmd As OleDbCommand Private rdr As OleDbDataReader Private rdr1 As OleDbDataReader

Dim CurahHujan, PH, Kriteria As String

Private curFileName Public binaryFile

Dim gambar, gambar2, gambar3 As String

Dim jum_path As Integer

Private Sub buka_Koneksi()

connStr = "Provider=Microsoft.Jet.OleDb.4.0;" & "Data Source=" + Directory.GetCurrentDirectory + "\db32b.mdb"

conn = New OleDbConnection(connStr) conn.Open()

End Sub

Public Sub baca_Data()

sql = "SELECT * FROM Famili"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

cboFamili.Items.Clear() Do While rdr.Read()

cboFamili.Items.Add(rdr("NamaFamili")) Loop

rdr.Close() End Sub

Private Sub DecodeFile() Try

Dim bt64 As Byte() = Convert.FromBase64String(binaryFile)

If IO.File.Exists(Directory.GetCurrentDirectory & txtGambar.Text) Then

IO.File.Delete(Directory.GetCurrentDirectory & txtGambar.Text)

End If

Dim sw As New

IO.FileStream(Directory.GetCurrentDirectory & txtGambar.Text, IO.FileMode.CreateNew)

sw.Write(bt64, 0, bt64.Length)

PictureBoxTanaman.Image = Image.FromStream(sw) sw.Close()

Catch ex As Exception End Try


(41)

Private Sub Form1_Load(ByVal sender As Object, ByVal e As

System.EventArgs) Handles Me.Load buka_Koneksi()

baca_Data()

bacadata() End Sub

Public Sub bacadata()

sql = "SELECT * FROM Tumbuhan ORDER BY NamaIlmiah"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

lstNama.Items.Clear() Do While rdr.Read

lstNama.Items.Add(rdr("NamaIlmiah")) Loop

rdr.Close()

jum.Text = lstNama.Items.Count() End Sub

Public Sub disable() txtID.Enabled = False

txtNama.ReadOnly = True

txtIlmiah.ReadOnly = True

cboFamili.Enabled = False

cboCahaya.Enabled = False

chkA.Enabled = False

chkB.Enabled = False

chkC.Enabled = False

chkD.Enabled = False

chkE.Enabled = False

txtAMin.ReadOnly = True

txtAMax.ReadOnly = True

txtJenisTanah.ReadOnly = True

txtTeksturTanah.ReadOnly = True

txtSolum.ReadOnly = True

cboDayaTranspirasi.Enabled = False

txtDayaSerap.ReadOnly = True

cboGaram.Enabled = False

cboGenang.Enabled = False

txtBentuk.ReadOnly = True

txtDiameter.ReadOnly = True

cboArsitektur.Enabled = False

cboKelasTinggi.Enabled = False

cboKelasTajuk.Enabled = False

txtTinggi.ReadOnly = True

End Sub

Public Sub clear() txtID.Text = ""

Fam.Text = 0 txtNama.Text = ""

txtIlmiah.Text = ""

txtManfaat.Text = ""

cboFamili.Text = ""

cboCahaya.Text = ""

txtHujan.Text = ""

txtHujanMax.Text = ""

chkA.Checked = False

chkB.Checked = False

chkC.Checked = False


(42)

chkE.Checked = False

chkAsam.Checked = False

chkNetral.Checked = False

chkBasa.Checked = False

txtAMin.Text = ""

txtAMax.Text = ""

txtJenisTanah.Text = ""

txtTeksturTanah.Text = ""

txtSolum.Text = ""

cboDayaTranspirasi.Text = ""

txtDayaSerap.Text = ""

cboGaram.Text = ""

cboGenang.Text = ""

txtBentuk.Text = ""

txtDiameter.Text = ""

cboArsitektur.Text = ""

cboKelasTinggi.Text = ""

cboKelasTajuk.Text = ""

txtTinggi.Text = ""

Kriteria = ""

txtGambar.Text = ""

txtGambar2.Text = ""

txtGambar3.Text = ""

PictureBoxTanaman.Image = Nothing

PictureBoxTanaman2.Image = Nothing

PictureBoxTanaman3.Image = Nothing

End Sub

Public Sub Tampilkan_Detil()

sql = "SELECT * FROM Tumbuhan, Famili WHERE

Tumbuhan.ID_Famili=Famili.Id_famili and NamaIlmiah = '" & lstNama.Text & "'"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

If rdr.Read Then

txtID.Text = rdr("ID")

txtNama.Text = rdr("NamaDaerah") txtIlmiah.Text = rdr("NamaIlmiah") txtManfaat.Text = rdr("Manfaat") cboCahaya.Text = rdr("Cahaya") If rdr("AltitudMin") = 0 Or

IsDBNull(rdr("AltitudMin")) = True Then

txtAMin.Text = "0"

Else

txtAMin.Text = rdr("AltitudMin") End If

If rdr("AltitudMax") = 0 Or

IsDBNull(rdr("AltitudMax")) = True Then

txtAMax.Text = "0"

Else

txtAMax.Text = rdr("AltitudMax") End If

If Not rdr("JenisTanah") = Nothing Then

txtJenisTanah.Text = rdr("JenisTanah") Else

txtJenisTanah.Text = "-"

End If

If Not rdr("TeksturTanah") = Nothing Then

txtTeksturTanah.Text = rdr("TeksturTanah") Else


(43)

txtTeksturTanah.Text = "-"

End If

txtSolum.Text = rdr("Solum") If rdr("pH") = "Asam" Then

chkAsam.Checked = True

chkNetral.Checked = False

chkBasa.Checked = False

ElseIf rdr("pH") = "Netral" Then

chkAsam.Checked = False

chkNetral.Checked = True

chkBasa.Checked = False

ElseIf rdr("pH") = "Basa" Then

chkAsam.Checked = False

chkNetral.Checked = False

chkBasa.Checked = True

ElseIf rdr("pH") = "Asam - Netral" Then

chkAsam.Checked = True

chkNetral.Checked = True

chkBasa.Checked = False

ElseIf rdr("pH") = "Asam - Basa" Then

chkAsam.Checked = True

chkNetral.Checked = False

chkBasa.Checked = True

ElseIf rdr("pH") = "Netral - Basa" Then

chkAsam.Checked = False

chkNetral.Checked = True

chkBasa.Checked = True

ElseIf rdr("pH") = "Asam - Netral - Basa" Then

chkAsam.Checked = True

chkNetral.Checked = True

chkBasa.Checked = True

Else

chkAsam.Checked = False

chkNetral.Checked = False

chkBasa.Checked = False

End If

txtHujan.Text = rdr("curahHujanMin") txtHujanMax.Text = rdr("curahHujanMax") cboDayaTranspirasi.Text = rdr("DyTransp") txtDayaSerap.Text = rdr("DySerapCO2") cboGaram.Text = rdr("KetGaram")

cboGenang.Text = rdr("KetGenang") txtBentuk.Text = rdr("BentukTajuk") txtDiameter.Text = rdr("DiameterTajuk") cboArsitektur.Text = rdr("ModelArsitektur") cboKelasTinggi.Text = rdr("KelasTinggi") cboKelasTajuk.Text = rdr("KelasTajuk") txtTinggi.Text = rdr("TinggiTumbuhan") txtGambar.Text = rdr("Foto")

txtGambar2.Text = rdr("Foto2") txtGambar3.Text = rdr("Foto3") cboFamili.Text = rdr("NamaFamili") End If

rdr.Close() End Sub


(44)

Private Sub lstNama_SelectedIndexChanged(ByVal sender As

System.Object, ByVal e As System.EventArgs) Handles

lstNama.SelectedIndexChanged Tampilkan_Detil()

If Not txtGambar.Text = "-" And Not txtGambar.Text = "" Then

PictureBoxTanaman.Image =

Image.FromFile(Directory.GetCurrentDirectory & "\images\" & txtGambar.Text)

Else

txtGambar.Text = ""

PictureBoxTanaman.Image = Nothing

End If

If Not txtGambar2.Text = "-" And Not txtGambar2.Text = "" Then

PictureBoxTanaman2.Image =

Image.FromFile(Directory.GetCurrentDirectory & "\images\" & txtGambar2.Text)

Else

txtGambar2.Text = ""

PictureBoxTanaman2.Image = Nothing

End If

If Not txtGambar3.Text = "-" And Not txtGambar3.Text = "" Then

PictureBoxTanaman3.Image =

Image.FromFile(Directory.GetCurrentDirectory & "\images\" & txtGambar3.Text)

Else

txtGambar3.Text = ""

PictureBoxTanaman3.Image = Nothing

End If

'DecodeFile()

btnUbah.Enabled = True

End Sub

Private Sub btnRefresh_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles btnRefresh.Click bacadata()

clear()

btnTambah.Enabled = True

btnHapus.Enabled = True

btnUbah.Enabled = False

btnSimpan.Enabled = False

End Sub

Public Sub Keasaman()

If chkAsam.Checked = True Then

PH = "Asam"

End If

If chkNetral.Checked = True Then

PH = "Netral"

End If

If chkBasa.Checked = True Then

PH = "Basa"

End If

If chkAsam.Checked = True And chkNetral.Checked = True Then

PH = "Asam - Netral"

End If

If chkAsam.Checked = True And chkBasa.Checked = True Then


(45)

End If

If chkNetral.Checked = True And chkBasa.Checked = True Then

PH = "Netral - Basa"

End If

If chkAsam.Checked = True And chkNetral.Checked = True And

chkBasa.Checked = True Then

PH = "Asam - Netral - Basa"

End If

If chkAsam.Checked = False And chkNetral.Checked = False And chkBasa.Checked = False Then

PH = ""

End If

End Sub

Private Sub btnSimpan_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles btnSimpan.Click Dim status, ID As Integer

'Tipe_Hujan()

Keasaman()

query = "SELECT * FROM Tumbuhan Order By ID Desc"

cmd = New OleDbCommand(query, conn) rdr = cmd.ExecuteReader()

If rdr.Read Then

ID = rdr("ID") End If

rdr.Close() ID = ID + 1

Dim s As String = txtGambar.Text

Dim parts As String() = s.Split(New Char() {"\"c}) Dim part As String

jum_path = 0

For Each part In parts gambar = (part)

jum_path = jum_path + 1 Next

Dim s2 As String = txtGambar2.Text

Dim parts2 As String() = s2.Split(New Char() {"\"c}) Dim part2 As String

jum_path = 0

For Each part2 In parts2 gambar2 = (part2)

jum_path = jum_path + 1 Next

Dim s3 As String = txtGambar3.Text

Dim parts3 As String() = s3.Split(New Char() {"\"c}) Dim part3 As String

jum_path = 0

For Each part3 In parts3 gambar3 = (part3)

jum_path = jum_path + 1 Next

If gambar = "" Then

gambar = "-"

End If


(46)

gambar2 = "-"

End If

If gambar3 = "" Then

gambar3 = "-"

End If

If chkAsam.Checked = False And chkNetral.Checked = False And chkBasa.Checked = False Then

PH = "-"

End If

If txtID.Text = "ID" Or txtID.Text = "" Then

If txtIlmiah.Text = "" Then

MessageBox.Show("Nama Ilmiah Harus diisi",

"ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)

ElseIf Fam.Text = "fam" Or Fam.Text = "0" Then

MessageBox.Show("Famili Harus diisi", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)

Else

If txtAMin.Text = "" Then

txtAMin.Text = 0 End If

If txtAMax.Text = "" Then

txtAMax.Text = 0 End If

If txtHujan.Text = "" Then

txtHujan.Text = 0 End If

If txtHujanMax.Text = "" Then

txtHujanMax.Text = 0 End If

If Not txtAMax.Text = "" And Not

IsNumeric(txtAMax.Text) Then

MessageBox.Show("Altitude maximum harus angka!", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf Not txtAMin.Text = "" And Not

IsNumeric(txtAMin.Text) Then

MessageBox.Show("Altitude minimum harus angka!", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf Not txtHujanMax.Text = "" And Not

IsNumeric(txtHujanMax.Text) Then

MessageBox.Show("Curah hujan maximum harus angka!", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf Not txtHujan.Text = "" And Not

IsNumeric(txtHujan.Text) Then

MessageBox.Show("Curah Hujan minimum harus angka!", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf txtHujan.Text > txtHujanMax.Text Then

MsgBox("Curah Hujan Salah! CURAH HUJAN MINIMUM harus lebih kecil dari CURAH HUJAN MAKSIMUM",

MsgBoxStyle.Exclamation, "Warning")

ElseIf txtAMin.Text > txtAMax.Text Then

MsgBox("Altitud Salah! ALTITUD MINIMUM harus lebih kecil dari ALTITUD MAKSIMUM", MsgBoxStyle.Exclamation,

"Warning")


(47)

sql = "INSERT INTO

Tumbuhan(ID,NamaIlmiah,NamaDaerah,id_Famili, Manfaat,

CurahHujanMin,curahHujanMax,Cahaya,AltitudMin,AltitudMax, " _ & "

JenisTanah,TeksturTanah,Solum,pH,DyTransp,DySerapCO2,KetGaram,KetG enang,BentukTajuk,DiameterTajuk," _

& "

ModelArsitektur,TinggiTumbuhan,KelasTinggi,KelasTajuk,foto, foto2, foto3) VALUES (" _

& "'" & ID & "'," _ & "'" & txtIlmiah.Text &

"'," _

& "'" & txtNama.Text & "',"

_

& "'" & Fam.Text & "'," _ & "'" & txtManfaat.Text &

"'," _

& "'" & txtHujan.Text &

"'," _

& "'" & txtHujanMax.Text &

"'," _

& "'" & cboCahaya.Text &

"'," _

& "'" & txtAMin.Text & "',"

_

& "'" & txtAMax.Text & "',"

_

& "'" & txtJenisTanah.Text & "'," _

& "'" & txtTeksturTanah.Text & "'," _

& "'" & txtSolum.Text &

"'," _

& "'" & PH & "'," _ & "'" &

cboDayaTranspirasi.Text & "'," _

& "'" & txtDayaSerap.Text &

"'," _

& "'" & cboGaram.Text &

"'," _

& "'" & cboGenang.Text &

"'," _

& "'" & txtBentuk.Text &

"'," _

& "'" & txtDiameter.Text &

"'," _

& "'" & cboArsitektur.Text & "'," _

& "'" & txtTinggi.Text &

"'," _

& "'" & cboKelasTinggi.Text & "'," _

& "'" & cboKelasTajuk.Text & "'," _

& "'" & gambar & "'," _ & "'" & gambar2 & "'," _ & "'" & gambar3 & "')"


(48)

status = cmd.ExecuteNonQuery() If status = 1 Then

MsgBox("Tumbuhan Baru berhasil di tambahkan!", MsgBoxStyle.Information, "Tambah Data") Else

MsgBox("Tumbuhan Baru gagal di tambahkan!", MsgBoxStyle.Information, "Tambah Data") End If

bacadata() End If

End If

Else

If MessageBox.Show("Anda Yakin akan mengupdate record ini?", "Update Data", MessageBoxButtons.YesNo,

MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then

sql = "UPDATE Tumbuhan SET NamaIlmiah = '" & txtIlmiah.Text & "', " _

& "NamaDaerah = '" & txtNama.Text & "', " _ & "id_Famili = " & Fam.Text & ", " _

& "Manfaat = '" & txtManfaat.Text & "', " _ & "curahHujanMin = '" & txtHujan.Text & "', " _ & "curahHujanMax = '" & txtHujanMax.Text & "', " _ & "Cahaya = '" & cboCahaya.Text & "', " _

& "AltitudMin = '" & txtAMin.Text & "', " _ & "AltitudMax = '" & txtAMax.Text & "', " _

& "JenisTanah = '" & txtJenisTanah.Text & "', " _ & "TeksturTanah = '" & txtTeksturTanah.Text & "', " _

& "Solum = '" & txtSolum.Text & "', " _ & "pH = '" & PH & "', " _

& "DyTransp = '" & cboDayaTranspirasi.Text & "', "

_

& "DySerapCO2 = '" & txtDayaSerap.Text & "', " _ & "KetGaram = '" & cboGaram.Text & "', " _

& "KetGenang = '" & cboGenang.Text & "', " _ & "BentukTajuk = '" & txtBentuk.Text & "', " _ & "DiameterTajuk = '" & txtDiameter.Text & "', " _ & "ModelArsitektur = '" & cboArsitektur.Text & "', " _

& "TinggiTumbuhan = '" & txtTinggi.Text & "', " _ & "KelasTinggi = '" & cboKelasTinggi.Text & "', "

_

& "KelasTajuk = '" & cboKelasTajuk.Text & "', " _ & "Foto = '" & gambar & "', " _

& "Foto2 = '" & gambar2 & "', " _

& "Foto3 = '" & gambar3 & "'" & " WHERE ID = " & txtID.Text

cmd = New OleDbCommand(sql, conn) status = cmd.ExecuteNonQuery() If status = 1 Then

MessageBox.Show("UPDATE Sukses",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) Else

MessageBox.Show("UPDATE Gagal", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)


(49)

bacadata() Else

MessageBox.Show("Update data dibatalkan",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) End If

End If

End Sub

Private Sub btnClear_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles btnClear.Click clear()

End Sub

Private Sub btnTambah_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles btnTambah.Click btnSimpan.Enabled = True

clear() End Sub

Private Sub cboFamili_SelectedIndexChanged(ByVal sender As

System.Object, ByVal e As System.EventArgs) Handles

cboFamili.SelectedIndexChanged

query = "SELECT * FROM Famili WHERE NamaFamili='" & cboFamili.Text & "'"

cmd = New OleDbCommand(query, conn) rdr = cmd.ExecuteReader()

If rdr.Read Then

Fam.Text = rdr("ID_Famili") End If

rdr.Close() End Sub

Private Sub btnHapus_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles btnHapus.Click Dim status As Integer

If MessageBox.Show("Anda Yakin akan menghapus record ini?", "Hapus Data", MessageBoxButtons.YesNo,

MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then

sql = "DELETE FROM Tumbuhan WHERE ID=" & txtID.Text &

""

cmd = New OleDbCommand(sql, conn) status = cmd.ExecuteNonQuery() If status = 1 Then

MessageBox.Show("Hapus Data Sukses",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) Else

MessageBox.Show("Hapus Data Gagal", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information) End If bacadata() Tampilkan_Detil() cmd.Dispose() Else

MessageBox.Show("Hapus data dibatalkan",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) End If


(50)

bacadata() clear()

btnTambah.Enabled = True

btnHapus.Enabled = True

btnUbah.Enabled = False

btnSimpan.Enabled = False

End Sub

Private Sub btnUbah_Click(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles btnUbah.Click btnTambah.Enabled = False

btnSimpan.Enabled = True

btnHapus.Enabled = False

End Sub

Public Sub Cari() 'Tipe_Hujan()

Keasaman() Kriteria = ""

If Len(Trim(txtIlmiah.Text)) > 0 Then

Kriteria = Kriteria & "(Tumbuhan.NamaIlmiah Like '" & txtIlmiah.Text & "%')"

End If

If Len(Trim(txtNama.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(Tumbuhan.NamaDaerah Like '%" & txtNama.Text & "%')"

End If

If Len(Trim(cboFamili.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(Tumbuhan.id_Famili = " & Fam.Text & ")"

End If

If Len(Trim(txtHujan.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(curahHujanMin >= " & txtHujan.Text & ")"

End If

If Len(Trim(txtHujanMax.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(curahHujanMax<= " & txtHujanMax.Text & ")"

End If

If Len(Trim(cboCahaya.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(Cahaya Like '%" & cboCahaya.Text & "%')"

End If

If Len(Trim(txtAMin.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(AltitudMin >= " & txtAMin.Text & ")"


(51)

If Len(Trim(txtAMax.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(AltitudMax <= " & txtAMax.Text & ")"

End If

If Len(Trim(txtJenisTanah.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(JenisTanah Like '%" & txtJenisTanah.Text & "%')"

End If

If Len(Trim(txtTeksturTanah.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(TeksturTanah Like '%" & txtTeksturTanah.Text & "%')"

End If

If Len(Trim(txtSolum.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(Solum Like '%" & txtSolum.Text & "%')"

End If

If Len(Trim(PH)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(pH = '" & PH & "')"

End If

If Len(Trim(cboDayaTranspirasi.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(DyTransp Like '%" & cboDayaTranspirasi.Text & "%')"

End If

If Len(Trim(txtDayaSerap.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(DySerapCO2 Like '%" & txtDayaSerap.Text & "%')"

End If

If Len(Trim(cboGaram.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(KetGaram Like '%" & cboGaram.Text & "%')"

End If

If Len(Trim(cboGenang.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(KetGenang Like '%" & cboGenang.Text & "%')"

End If

If Len(Trim(txtBentuk.Text)) > 0 Then

If Len(Trim(Kriteria)) > 0 Then Kriteria = Kriteria &

" AND "

Kriteria = Kriteria & "(BentukTajuk Like '%" & txtBentuk.Text & "%')"


(1)

40

For Each part In parts gambar3 = (part)

jum_path = jum_path + 1 Next

'binaryFile =

Convert.ToBase64String(System.IO.File.ReadAllBytes(gambar3)) binaryFile =

Convert.ToBase64String(System.IO.File.ReadAllBytes(txtGambar3.Text ))

End If End Sub End Class


(2)

Lampiran 3.

Form Famili

'Import librari untuk mengolah database Imports System.Data

Imports System.Data.OleDb Imports System.IO

Public Class Famili 'Deklarasi variabel

Public conn As OleDbConnection 'variabel untuk koneksi Public connStr As String 'variabel untuk simpan koneksi Public sql As String 'variabel untuk mengolah database

Public cmd As OleDbCommand 'variabel untuk menyimpan perintah dari dan ke database

Public rdr As OleDbDataReader 'variabel untuk menyimpan hasil baca dari database

Dim item As ListViewItem Public Sub bukakoneksi()

connStr = "Provider=Microsoft.Jet.OleDb.4.0;" & "Data Source=" + Directory.GetCurrentDirectory + "\db32b.mdb"

conn = New OleDbConnection(connStr) conn.Open()

End Sub

Public Sub bacadata()

txtNama.Enabled = False txtID.Text = ""

txtNama.Text = ""

sql = "SELECT * FROM Famili ORDER BY NamaFamili"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

lstNama.Items.Clear() Do While rdr.Read

lstNama.Items.Add(rdr("NamaFamili")) Loop

rdr.Close() End Sub

Private Sub Famili_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

bukakoneksi() bacadata() End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

bacadata() End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

txtID.Text = ""

txtNama.Text = ""

txtNama.Enabled = True End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

txtNama.Enabled = True End Sub


(3)

42

Public Sub Tampilkan_Detil()

sql = "SELECT * FROM Famili WHERE NamaFamili='" & lstNama.Text & "'"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

If rdr.Read Then

txtID.Text = rdr("ID_Famili") txtNama.Text = rdr("NamaFamili") End If

rdr.Close() End Sub

Private Sub lstNama_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

lstNama.SelectedIndexChanged Tampilkan_Detil() End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

Dim status As Integer

If txtID.Text = "ID" Or txtID.Text = "" Then If txtNama.Text = Nothing Then

MsgBox("Silahkan masukkan nama Family!", MsgBoxStyle.Exclamation, "Tambah Data")

Else

sql = "INSERT INTO Famili(NamaFamili) VALUES ("

_

& "'" & txtNama.Text & "')"

cmd = New OleDbCommand(sql, conn) status = cmd.ExecuteNonQuery() If status = 1 Then

MsgBox("Famili Baru berhasil di tambahkan!", MsgBoxStyle.Information, "Tambah Data")

Else

MsgBox("Famili Baru gagal di tambahkan!", MsgBoxStyle.Information, "Tambah Data")

End If bacadata() End If

Else

If txtNama.Text = Nothing Then

MsgBox("Silahkan masukkan nama Family!", MsgBoxStyle.Exclamation, "Tambah Data")

Else

If MessageBox.Show("Anda Yakin akan mengupdate record ini?", "Update Data", MessageBoxButtons.YesNo,

MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then sql = "UPDATE Famili SET NamaFamili = '" & txtNama.Text & "'" _

& " WHERE Id_Famili = " & txtID.Text & ""

cmd = New OleDbCommand(sql, conn) status = cmd.ExecuteNonQuery() If status = 1 Then

MessageBox.Show("UPDATE Sukses",


(4)

43

Else

MessageBox.Show("UPDATE Gagal",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) End If

bacadata() Else

MessageBox.Show("Update data dibatalkan",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) End If

End If

End If End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click

Dim status As Integer

If MessageBox.Show("Anda Yakin akan menghapus record ini?"

& vbCrLf & "SEMUA SPESIES TUMBUHAN DENGAN FAMILI INI AKAN TERHAPUS", "Hapus Data", MessageBoxButtons.YesNo,

MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then sql = "DELETE FROM Famili WHERE Id_Famili=" & txtID.Text & ""

cmd = New OleDbCommand(sql, conn) status = cmd.ExecuteNonQuery() If status = 1 Then

MessageBox.Show("Hapus Data Sukses",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) Else

MessageBox.Show("Hapus Data Gagal", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)

End If bacadata()

Tampilkan_Detil() cmd.Dispose() Else

MessageBox.Show("Hapus data dibatalkan",

"Information", MessageBoxButtons.OK, MessageBoxIcon.Information) End If

bacadata() End Sub


(5)

Lampiran 4.

Form Tutorial

Imports System.Data

Imports System.Data.OleDb Imports System.IO

Public Class Tutorial

Private conn As OleDbConnection Private connStr As String

Private sql, query As String Private cmd As OleDbCommand Private rdr As OleDbDataReader Private rdr1 As OleDbDataReader

Dim TipeHujan, PH, Kriteria As String Private curFileName

Public binaryFile

Public tombol As String Private Sub buka_Koneksi()

connStr = "Provider=Microsoft.Jet.OleDb.4.0;" & "Data Source=" + Directory.GetCurrentDirectory + "\db32b.mdb"

conn = New OleDbConnection(connStr) conn.Open()

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

PictureBox1.Image = Nothing tombol = "Tumbuhan"

sql = "SELECT * FROM Tutorial Where Keterangan = 'Tumbuhan' ORDER BY ID"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

lstNama.Items.Clear() Do While rdr.Read

lstNama.Items.Add(rdr("Nama")) Loop

rdr.Close() End Sub

Private Sub Tutorial_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

buka_Koneksi() home()

End Sub

Private Sub lstNama_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

lstNama.SelectedIndexChanged 'Label2.Text = tombol

sql = "SELECT * FROM Tutorial WHERE Nama = '" & lstNama.Text & "' AND Keterangan = '" & tombol & "'"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

If rdr.Read Then


(6)

45

End If

'MsgBox(Label1.Text) PictureBox1.Image =

Image.FromFile(Directory.GetCurrentDirectory & Label1.Text) End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

PictureBox1.Image = Nothing tombol = "Family"

sql = "SELECT * FROM Tutorial Where Keterangan = 'Family' ORDER BY ID"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

lstNama.Items.Clear() Do While rdr.Read

lstNama.Items.Add(rdr("Nama")) Loop

rdr.Close() End Sub

Private Sub home() tombol = "Home"

sql = "SELECT * FROM Tutorial Where Keterangan = 'Home' ORDER BY ID"

cmd = New OleDbCommand(sql, conn) rdr = cmd.ExecuteReader()

lstNama.Items.Clear() Do While rdr.Read

lstNama.Items.Add(rdr("Nama")) Loop

rdr.Close() End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

PictureBox1.Image = Nothing home()

End Sub

Private Sub SplitContainer2_Panel1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles SplitContainer2.Panel1.Paint

End Sub End Class