Diberdayakan oleh Blogger.

Selasa, 10 November 2009

Download Source Code Visual Basic Membaca dan Menulis Gambar kedalam Database (Oracle 8i)


Ada teman yang bertanya tentang cara menuliskan dan membaca gambar ke dan dari database. Sebenarnya itu sudah pernah saya sediakan dalam pembuatan Oriyu: Sistem Informasi Akademik yang sebelumnya. Dalam Sistem Informasi Akademik tersebut ada 2 buah Prosedur Global yakni WriteG dan ReadG. Dua buah prosedur ini akan dipanggil oleh frmMahasiswa (lihat gambar). untuk menyimpan foto mahasiswa, dan membaca foto mahasiswa. Tipe data yang digunakan adalah Blob dengan dtabase Oracle 8i.

Jadi prinsipnya begini, kita harus menyediakan 2 buah tombol dan 1 buah image pada form mahasiswa, tombol yang pertama berguna untuk mengganti foto "Ganti Foto", sedangkan tombol yang kedua berguna untuk menghilangkan foto dari database dengan nama "Tanpa Foto" (lihat gambar).

Ketika tombol Ganti Foto diklik, maka akan dibuka sebuah dialog untuk membuka file gambar yang dimaksud, setelah itu dilakukan penyimpanan yang intinya adalah perintah berikut ini:

Numblocks = FileLength / BlockSize


LeftOver = FileLength Mod BlockSize


ReDim ByteData(LeftOver)


Get SourceFile, , ByteData()


Rs.Fields("foto").AppendChunk ByteData()


ReDim ByteData(BlockSize)


For I = 1 To Numblocks


Get SourceFile, , ByteData()


Rs.Fields("foto").AppendChunk ByteData()


Next I


Rs.Update


Close SourceFile

Jadi berbeda dengan update field biasa, yang cukup dengan perintah update set nama="blalala", namun disini kita harus menentukan filelength, mempersiapkan array kemudian membuka file gambar dimaksud, kemudian secara bertahap menyimpan file gambar yang dibaca kedalam database dengan menggunakan AppendChunk.

Sedangkan prosedur ReadG berfungsi untuk menampilkan gambar mahasiswsa, jika dilakukan pencarian dan nim mahasiswa tersebut ditemukan.

Bagi yang tertarik dengan prosedur WriteG dan ReadG, silahkan download di Membaca dan Menulis Gambar kedalam Database (Oracle 8i), ini ssaya simpan dalam bentuk file .txt, hanya 2 prosedur ini saja. Sedangkan Versi lengkapnya silahkan klik Sistem Informasi Akademik diatas.

Ouw hya, mungkin ada beberapa orang teman yang bermasalah dengan source Sistem Informasi Akademik. Yang harus anda pastikan adalah COPYKAN KESELURUHAN FILE .OCX YANG ADA KE FOLDER YANG SAMA DENGAN PROJECT, kemudian lakukan installasi True DBGrid, maka program akan bisa dibuka dengan baik. jika trueDBGrid tidak ada mungkin nanti ada beberapa form yang error, tapi tidak masalha, yang kita butuhkan hanya logika saja kan?. Program ini dibuat untuk database Oracle 8i, selamat belajar...

Minggu, 08 November 2009

Source Code Visual Basic Mengoptimalkan Fungsi Spilt untuk sistem Quick Count Pemilu memanfaatkan OZEKI SMS Server


Berikut ini adalah diskusi saya dengan seorang teman tentang membuat sistem Quick Count tentang pemilu

Teman:

mas edri pernah bikin software untuk quick count pilkada..?? kebetulan di daerah saya akan ada pemilihan walikota periode 2010 - 2015 kalau ada bisa di bantu untuk source kode nya mas..?? untuk biaya berapa mas ? soalnya kebetulan instansi saya juga berkepentingan dengan hasil perhitungan ( quick count ) . tapi anggaran kurang memadai.. ( hanya Rp. 5,000,000,- saya browsing di internet ada yang jual software jadi dengan harga 2.500.000,- tapi saya ragukan kredibilitasnya... mohon bantuannya mas.

Riyu:

hmm, kalau softwarenya saya belum pernah buat mas, kalau berdasarkan wawancara di metro tv dulu, mereka menggunakan quick count berdasarkan statistik, saya belum pernah coba yang begitu, rasanya juga butuh seorang ahli statistik untuk bisa mendapatkan datanya, saya kurang tahu bagaimana menggenerate data sehingga begitu akuratnya. Bagaimana mewawancarai si pemilih, saya belum dapat gambaran tentang prosedurnya.

Teman:

gambarannya begini mas edri... kalau di kota saya.. ****... terdiri dari 53 Kelurahan.. 6 Kecamatan dan jumah TPS 1488 TPS jadi yang saya perlukan adalah software yang mampu menampung sms sebanyak 1488 sms ( Berdasarkan Jmlh SMS) dengan format kurang lebih begini : Kelurahan/Nmr TPS /jumlah suara pasangan 1/ jumlah suara pasangan 2/ jumlah pasangan 3. kalau yang sudah- sudah saya memakai SMS server dari OZEKI SMS server dan masih harus mengedit/input secara manual. tapi yang saya butuhkan sms yang masuk bisa secara otomotis bisa kita tampilkan kelayar tanpa mengedit terlebih dahulu.. untuk data- data kami lengkap. dan juga bekerja sama dengan pihak KPPS di tiap TPS...

Riyu:

hmm.. kalau gitu lebih masuk akal, kayaknya bukan sistem quick count seperti metrotv yah, tapi setelah hasil perhitungan itu yang dikalkulasikan...dan diterima di server setelah penghitungan selesai. hmm dibandingkan membuat hal yang baru, saya ada ide mas, data dari OZEKI itu yang dibuatkan program untuk mengolahnya, kalau dibuatkan program baru kan perlu diuji dulu reliabilitasnya terhadap jumlah sms yang masuk, keakuratan dsb-dsb. jadi nanti OZEKInya tetap dipake, yang dilakukan adalah mengakses database dari OZEKI itu sendiri, mungkin menggunakan vb atau apa untuk dihasilkan grafik yang dibutuhkan, saya rasa itu lebih mungkin. Ndak terlalu beresiko, dan bisa diujikan langsung terhadap data-data yang lama untuk mengukur kecepatannya. Kan cuma mengkonversi data, dan ditambah kemampuan untuk menyajikan data apakah dalam bentuk tabel atau grafik

Teman:

saya juga berpikir demikian mas... cuma masalahnya saya kesulitan untuk mengconversi data dari OZEKI ( ozeki juga bisa di hubungkan dengan SQL server ) dengan hasil berupa data yang sudah di pilah.. contoh kasus : ada SMS masuk seperti ini : KOTO NAN GADANG [ nama kelurahan ] 03 [ nomor TPS] 60 [ perolehan suara pasangan 1] 70 [suara pasangan 2] 75 [ suara pasangan 3 ] = KOTO NAN GADANG 03 60 70 75. yang jadi persoalan bagaimana cara untuk dapat mengimpornya secara otomatis kemasing -masing field dengan benar. dan bagaimana cara pemisahannya apakah menggunakan tanda "#" atau "spasi" atau "/" mengingat perolehan suara masing2 calon tidak selalu 2 digit dan nama kelurahan juga bervariasi, tanah merah (2 kalimat ) KOTO NAN GADANG ( 3 kalimat) pelabuhan ( 1 kalimat ) dsb... mohon pencerahan mas.

Riyu:


oh gitu, kalau gitu bisanya gini, kita pakai aja fungsi split mas. Split akan membagi sebuah variabel dan menjadikannya sebuah array


misal contoh kasus: KOTO NAN GADANG 03 60 70 75


nah jika kita simpan ini dalam variabel


x="KOTO NAN GADANG 03 60 70 75"


y=split(x," ")




maka sekarang variabel y adalah variabel array yang dibatasi dengan spasi bukan?, masalahnya sekarang kita mengambilnya dari belakang. Ingatkan perintah untuk mengambil nilai maximal array,




z=ubound(y)




z sekarang bernilai 6 karena ada 6 array (saya asumsikan array dimulai dari 0)


sehingga


y(6)="75"


y(5)="70"


y(4)="60"


y(3)="03"


y(2)="GADANG"


y(1)="NAN"


y(0)="KOTO"




yang jadi perhatian kita adalah JANGAN MENGURUTKAN DARI DEPAN, karena kalau kita hitung dari depan, tentu saja jumlah spasi permasing-masing kelurahan adalah berbeda. Untuk itu kita hitung dari belakang, dari ubound sampai dengan 4 kedepannya (dari 6 sampai dengan 3) itu adalah termasuk data, sedangkan yang sesudahnya adalah nama kelurahan.




Jadi yang kita perhitungkan adalah uboundnya, jika jumlah kata dalam kelurahan bertambah, maka uboundnya juga bertambah




Semoga membantu


ps: Nama Teman, nama kota bukan nama sebenarnya, biar kayak sinetron gitu,