Showing posts with label Programming::Visual Basic. Show all posts
Showing posts with label Programming::Visual Basic. Show all posts

Sunday, March 15, 2009

Analisis, Desain dan Implementasi Basis Data bagi Kasus DSS/SPK

 

Baik, ini yang selalu saya perintahkan jika ada yang minta bantuan pembuatan program SPK : buat penyelesaian masalahnya dengan Microsoft Excel. Seperti kasus berikut:

image

Perhatikan bahwa terdapat data rekening, dan data biaya per tahun. Inti akhirnya adalah pembuatan software DSS/SPK untuk analisis biaya, tepatnya dari data biaya terdahulu, maka akan diusulkan (oleh software) rencana anggaran biaya yang akan datang, dengan berusaha untuk meminimalkan pengurangan resiko kegagalan proyek.

Oke, selanjutnya, ... pasti saya akan pakai Microsoft Access untuk desain databasenya. Perkara nanti akan di convert ke database apapun, pokoknya dalam tahap desain ini, kudu pakai Microsoft Access 2007 (tidak 2003). So, simple, ini visualisasi tabel2 yang tercipta:

db

Selanjutnya yang menjadi masalah adalah ini : saya harus bisa memanggil data biaya masing-masing rekening untuk tahun kapapun. Contoh, kapanpun, saya harus bisa memanggil data biaya untuk Rekening 11003 di tahun 2004,2003 dan tahun kapanpun.

Nah, bagaimana caranya?

Tentu, saya bisa melakukan sekedar operasi Basis Data SELECT dengan kriteria nomor rekening dan tahun tertentu. Tapi, tak terbayangkan kalau terus-menerus melakukan query ke basis data. Solusi yang paling terlihat, adalah menyimpan semua data biaya masing-masing rekening pada tiap tahun ke memori. Dengan struktur data yang memungkin pengaksesan secara langsung. Menggunakan Visual Basic.NET 2008.

Tanpa banyak penjelasan, ini kodenya:

image

 

Perhatikan saya menggunakan Array DaftarRekening yang tiap elemen array merupakan objek dari instan Kelas SortedList. Nah, kuncinya adalah SortedList. Kalau di Java yang idem adalah HashMap. Dengan SortedList kita bisa mengakses tiap elemen pada sorted list dengan KEY-nya, yang berupa nomor rekening. Tentu, tidak boleh ada item yang memiliki KEY yang sama. Jadi, data biaya tiap tahun disimpan pada array elemen ke - n, dengan tiap elemen array itu sendiri bisa diakses dengan pengaksesan langsung menggunakan KEY-nya.

Saya simpulkan, berikut adalah kode untuk menambah elemen ke sorted list :

DaftarRekening(i - TahunAwal).Add(dr.GetString(0), dr.GetDouble(1))

Dan ini untuk mengakses elemennya :

MessageBox.Show(DaftarRekening(2007 - TahunAwal).Item("1"))

Perhatikan bahwa kode penambahan adalah dengan ADD, dimana argumen pertama merupakan KEY dari item, dan argumen kedua merupakan OBJECT yang akan ditambahkan. OBJECT apapun bisa. Sekedar variabel primitif spt Integer, Float bisa. Atau yang kompleks Object dari sebuah kelas juga bisa. Ringan sekali mengimplementasikan ini di VB.NET

Kemudian, perhatikan bahwa kode pengaksesan adalah dengan menggunakan KEY-nya.

Terakhir, perhatikan bahwa indeks array memegang peranan penting. Kasus di sini adalah data dari tahun 2003 .. 2007. So, 2003 adalah indeks ke 0, 2004 adalah indeks ke 1, dst. Sehingga, tentu untuk mendapatkan indeks pertama, kita kurangkan dengan angka tahun awal tersebut : 2003.

Mudah kan?

Semoga bermanfaat dan memberi inspirasi!

NB:

  • Baru kemarin ini saya mulai (tp sudah ada 3 tabel tercipta sebelumnya) u bimbingan thesis ini, sy perkirakan (smoga) 3 hari lagi (dengan tiap hari pertemuan @4jam) semua kalkulasi selesai. Lebih bagus (tentu) dengan visualisasi Report yang berupa Grafik.
  • Untuk urusan input, saya pending dulu, cukup entri di Access 2007, dan langsung implementasikan proses SPK/DSS. Kalau semua Oke, baru input dikembangkan.
  • Senang sekali.
  • Alhamdulillah

Monday, February 11, 2008

Membuat Program Pendeteksi Sidik Jari dengan U R U 4000

Software ini dibuat dengan Microsoft Visual Basic 6, dengan database Microsoft Access. Dan memang SDK U R U 4000 ditulis dengan Microsoft Visual Basic 6, pun database supportnya intgrate dengan Access. jadi mudah mengembangkannya

Absensi bisa diarahkan untuk keperluan Absensi Sekolah atau Karyawan. Sistem akan mengenal satu siswa dengan satu sidik jari saja. Saat siswa dikenali, foto dan identitas diri lainnya bisa ditampilkan pada aplikasi. Sesungguhnya sistem ini diintegrasikan juga dengan aplikasi SMS Gateway, sehingga aplikasi dapat lebih cerdas memberikan laporan. Misalnya, jika saat itu siswa absen, maka sms akan langsung dikirimkan ke orang tuanya. Dan berbagai kemungkinan sistem lainnya.


Smg bermanfaat
NB:
  • Jika yang dibutuhkan adalah sistem Web Bases, U R U sptnya tidak bisa dipakai. Harus diganti ke GrFinger. Ia bebas menggunakan basis data apapun, java juga bisa. Mudah kan?

Wednesday, February 06, 2008

Koneksi Ke MySQL dari Visual Basic 6

Ini saat pembimbingan DSS Analytical Hierarchical Process (AHP), yang ternyata membutuhkan fungsionalitas Storage, maka alih-alih menggunakan Microsoft Access, kita putuskan menggunakan MySQL.

Nah, untuk koneksi MySQL dari VB 6. Anda harus download Driver MySQL dari alamat ini : http://dev.mysql.com/downloads/connector/odbc/3.51.html

Untuk kode tidak ada perubahan sama sekali, Anda hanya harus memberikan nilai ConnectionString yang sesuai pada argumen ADODB.Connection.

Atau mungkin hit ini dari Google bisa membantu

Tuesday, January 08, 2008

Mengakui Kehebatan Bill Gates

Saya pikir, salah satu sifat mendasar manusia adalah ego dan keberatannya u/ mengakui kehebatan orang lain. Di dunia yang fana ini, dimana semuanya hanya ujian u/ melihat mana yang paling baik daya upayanya, maka mengalahkan ego (mementingkan diri sendiri) dan mampu mengakui kehebatan orang lain adalah suatu ujian tersendiri yang tidak mudah u/ melaluinya.

Salah satu ujian u/ hal ini, adalah menyikapi Bill Gates. Saya buat sedikit program dengan Visual Basic 6.0 berikut ini :


Anda harus mencentang pernyataan pengakuan u/ menutup jendela (Window) ini.

Kalau saya kembali ke masa awal-awal mengenal komputer, maka nama Bill Gates kalau saya tidak salah ingat, sangat kuat terikat kepada MS-DOS. Untuk kemudian nama itu terikat lagi pada gelegar Windows 95.

Mungkin ada yang heran : kenapa tiba2 ada Windows? Bukankah saya menceritakan hanya menggunakan Ubuntu? Hm hm hm, awalnya memang itu. Namun karena solusi u/ Dik Jaya ternyata harus saya seriusi di laptop saya, maka jadilah saya menginstall ulang Windows beberapa kali agar pas. Pun kemudian juga saya ternyata didekati siswa bimbingan yang membawa kendala penguasaan Flash (sekarang sudah di akuisisi Adobe).


Kemudian juga, Dik Lutfhi Muhammad Ilham meminjamkan (tepatnya saya yang meminta meminjam) buku Bill Gates Berbicara. Dan saya teringat (dan mulai mengenang2) masa awal mengenal komputer dengan MS-DOS, Windows 3.1, Windows 3.11, Windows for Workgroups dan terakhir yang paling mengesankan adalah Windows 95.

Saya harus mengakui kehebatan sosok ini : Bill Gates.

Seorang diri mengatur segalanya dengan cerdik


Hormat saya,
Eko SW

NB :
  • Anda bisa mendownload Goodies ini disini (di host di MediaFire).

Sunday, December 23, 2007

Bimbingan Skripsi : Troubleshooting Aplikasi Pengajaran Matematika untuk SMP

Hm... alhamdulillah, ini dari temannya Jaya, meski Jaya sendiri belum selesai bimbingannya.

Nah, model bimbingannya adalah per sesi, jadi bukan per paket (mungkin saya harus merevisi mengenai Etika Kerja saya). Situasinya adalah software untuk skripsi tersebut sudah hampir jadi, hanya ada beberapa kendala yang saya berusaha selesaikan. Softwarenya itu sendiri dibuat dengan Microsoft Visual Basic 6 berupa software pembelajaran Matematika dengan Soal dan Tutorial yang berupa jawaban pilihan ganda.

Hm hm hm, sebenarnya saya dulu pernah membuat aplikasi yang mirip dan juga dengan Visual Basic 6. Dan solusi dengan VB 6 sangat cepat dikembangkan.

Dari semua checklist yang harus diselesaikan, salah satunya yang penting adalah Bagaimana Menampilkan Gambar yang disimpan sebagai Blob/Object pada database Microsoft Access ke Picture Box pada form Tutorialnya. Dan berikut adalah dua hit yang saya rasa bisa menyelesaikan kendala tersebut, yaitu :
  1. Dari halaman ini, silahkan download ini.
  2. Meski yang ini menggunakan Oracle, namun tentu tidak berbeda implementasinya.

Selamat Idul Adha 1428 H ya....

Dan jg Hari Natal dan Tahun Baru bagi yg merayakannya....


Semoga bermanfaat!

Eko SW

Friday, November 09, 2007

Decision Support System : Kenangan di Lingkungan Microsoft Visual Basic & Ristek

Ironis sebenarnya.

Awalnya saya agak memandang sebelah mata pada lingkungan Microsoft Visual Basic. Tapi di tahun 2003, karena ada tawaran aplikasi Basis Data (tepatnya Decision Support System, DSS), dan saya belum pernah menggunakan aplikasi RAD saat itu, maka saya memilih yang paling mudah digunakan : Microsoft Visual Basic 6.0. Dan memang benar itu mudah sekali. Aplikasi yg menawan klien bisa dibuat dengan cepat.

Tapi, aplikasi VB 6.0 adalah aplikasi yang tidak menggunakan OOP secara murni. Anda tahu kan OOP? Ia adalah cara pandang (paradigma) program yang memungkinkan program di-extend sampai batas waktu yang lama dan tetap kuat memenuhi berbagai request klien yang baru. Anda tahu akibatnya? Aplikasi VB saya tidak bisa bertahan dalam waktu 6 bulan.

Akibatnya saya mencari solusi yang lain, dan jatuh pada Visual C++ 6.0!
Pilihan yang tepat. Setelah seminggu memulai belajar, dengan perasaan deg-degan karena harus selesai dalam seminggu itu, aplikasi ini dapat diselesaikan. Memang tidak --belum-- memiliki interface yg seramai VB dalam waktu pertama kali running, namun ia dibangun di atas fondasi OOP dan arsitektur aplikasi Windows yang kuat. Saat menunjukkan aplikasi itu, saya sudah bisa melihat akhir dari aplikasi ini sampai bertahun-tahun setelahnya. Maksudnya, apapun request klien setelah ini, aplikasi saya akan dapat bertahan, insya Allah.

Aplikasi ini termasuk yang terbesar --dalam hal ruang lingkup institusi-- yang saya kembangkan. Dikembangkan bersama-sama oleh Pusat Studi Pariwisata UGM, PT. Merpati Nusantara Airlines dan dinaungi oleh KMNRT (Ristek), akhirnya membuat saya punya banyak pengalaman bolak-balik ke jakarta. Yang paling diinget dalam hal yang paling saya cintai (sholat berjama'ah) ada dua, yaitu saya jadi pernah sholat di Masjid Istiqlal dan juga pernah sholat subuh di Kereta Api dengan serombongan Jama'ah bersorban yang akan khuruj ke Jakarta. Hm, indah sekali dua kenangan itu (diantara kenangan-kenangan lainnya).

Oh ya, akhirnya di tahun 2005 (kalau tidak salah), setelah CD Installer programnya saya tunjukkan ke seorang dosen saya di MIPA UGM, Bapak Anifuddin Aziz, Beliau terlihat senang sekali. Dan akhirnya saya ikhlaskan untuk dipergunakan dalam mata kuliah DSS-nya. Alhamdulillah, banyak manfaatnya.

Begitulah sedikit kenangan di lingkungan milik Microsoft ini. Dan, untuk membuat semakin senang, akhirnya saya tau bahwa hasil kerja saya ini di muat di Jurnal Internasional East Asia Transportation Research. Bukan karena saya sih tepatnya. Tapi karena saya bekerja dengan seorang Expert Transportasi, Bapak Danang Parikesit. Wah, senangnya.

Adapun sekarang, saya berusaha komit ke dunia Open Source, dengan segala filosofinya. Nah, jika ada tawaran aplikasi .NET, maka insya Allah saya akan pergunakan Mono.

Doakan usaha saya ini berkah bagi diri saya, istri, anak dan teman-teman yang bisa saya bantu.

Semoga bermanfaat!

NB :
  • Oh ya, Senin besok insya Allah ada adik kelas UII yang minta privat VB.NET. Wah, ini bakal seperti mengenang masa lalu, sembari sambang, silaturahim dan .... minum teh :p
  • Indahnya kemandirian