Cara Menyimpan Gambar di Table

Sebuah table digunakan untuk menyimpan data. Data tersebut bisa bermacam - macam jenisnya. Kebanyakan data yang disimpan adalah data text...yang tentunya dengan type data yang bermacam - macam dari integer, numeric, char dan lain - lain. Tetapi ada kalanya kita perlu juga untuk menyimpan data selain text, yaitu misalnya Gambar. Data gambar ini biasanya terdapat pada table yang digunakan untuk menyimpan data - data profil baik, karyawan, mahasiswa, lokasi, bangunan dan lain - lain.

Di dalam Visual Foxpro atau lebih tepatnya jika kita menggunakan table bawaan Visual Foxpro yaitu DBF, ada beberapa cara atau teknik yang bisa digunakan untuk menyimpan gambar ke table. Beberapa teknik tersebut otomatis ada kelebihan dan juga ada kelemahannya. Untuk menyingkat pembahasan, sekarang kita langsung coba saja teknik untuk menyimpan gambar ke table tersebut :

Teknik (Save Url Image)
Dalam cara ini yang disimpan di dalam table adalah URL atau lokasi dari gambar yang berada di dalam disk / komputer kita. Urutan hal yang diperhatikan dan dipersiapkan untuk menggunakan teknik ini adalah :

  1. Buat 1 Field dengan type Character dengan panjang 254.
  2. Dalam transaksi di form, simpan URL gambar dan masukkan ke Field yang telah dibuat untuk menyimpan gambar tersebut. Contoh misal gambar tersebut sudah ditampilkan melalui kontrol image, maka bisa mengambil nilai dari property picture (image.picture) untuk disimpan ke table.
  3. Dan bila ingin menampilkan gambar ke kontrol image dari data table, bisa langsung atur property picture (image.picture) dengan nilai yang ada di Field yang digunakan untuk menyimpan gambar tersebut.
  4. Setelah table jadi dan gambar ingin ditampikan di report, berikut urutan langkahnya : (1) tambahkan kontrol "Picture/OLE Bound Control" ke dalam report, (2) atur Propertiesnya di Tab "General", di bagian "Control Source Type" pilih "Image File Name" dan (3) di bagian "Control Source" masukkan nama field gambar tersebut.
  5. Teknik ini adalah teknik yang sering digunakan, tetapi teknik ini memiliki kelemahan yaitu yang tersimpan di table sebenarnya bukan gambar melainkan hanya lokasi gambar, jadi ada kemungkinan gambar bisa dihapus atau diubah tanpa harus masuk ke program atau mengakses table terlebih dahulu. Selain itu bila nanti table di copy dan dijalankan atau dipake di tempat lain maka gambar tidak bisa secara otomatis ikut tercopy. Tetapi kelemahan itu sebenarnya bisa diatasi dengan sedikit kreatifitas dari teman - teman Foxpro Mania sekalian dengan sedikit logika untuk melakukan pengaturan File..!!!
Teknik (Save Field Memo) 
Teknik berikut ini mencoba untuk benar - benar menyimpan gambar dan memasukkannya ke dalam table dengan memanfaatkan type data Memo yang dipunyai DBF. Dengan cara ini nanti File Gambar akan dikonversi ke text dan selanjutnya text tersebut yang akan disimpan di Memo. Text yang disimpan disini bukan hanya lokasi gambar tetapi memang gambar itu sendiri, jadi nanti jangan heran kalau ukuran table teman - teman akan membengkak jika menyimpan gambar yang berukuran besar. Urutan cara atau yang perlu diperhatikan untuk menggunakan teknik ini adalah sebagai berikut :

  1. Buat 1 Field dengan type data Memo.
  2. Dalam transaksi di form gunakan kontrol image dan property pictureval (perlu diingat kalau di teknik sebelumnya yang digunakan adalah property picture tapi disini adalah pictureval).
  3. Bila ingin menampilkan gambar ke image misal dengan melakukan pemilihan file gambar terlebih dahulu bisa pake syntax Image1.Pictureval=FILETOSTR(GETPICT()). Fungsi Filetostr adalah hal yang penting disini, karena fungsi itulah yang digunakan untuk mengkonversi dari file gambar ke text. Selanjutnya nilai Image1.Pictureval lah yang yang dimasukkan atau disimpan ke dalam Field yang bertype data Memo tersebut.
  4. Bila ingin menampilkan gambar ke kontrol image dari data table, bisa langsung atur property pictureval (image.pictureval) dengan nilai yang ada di Field gambar yang bertype Memo tersebut.
  5. Dengan menggunakan teknik ini akan sedikit ribet saat ingin menampilkan image tersebut ke dalam report, tidak sesederhana seperti bila menggunakan teknik lainnya karena harus membuat program kecil untuk mengkonversi kembali data memo tersebut ke dalam file gambar dan kemudian baru ditampilkan ke report. Tetapi meskipun agak ribet sebenarnya sich gk terlalu ribet banget juga dan teknik ini lah yang lebih banyak disukai oleh para rekan - rekan senior Foxpro Mania.
Teknik (Save Field General)
Teknik ini adalah teknik dengan menggunakan salah satu fasilitas yang ada di DBF untuk menyimpan objek, yaitu dengan menggunakan field general. Dengan cara ini nanti gambar akan disimpan sebagai objek. Sebenarnya teknik ini lah yang paling sederhana, tetapi memiliki beberapa kelemahan yaitu diantaranya adalah gambar yang bisa dengan baik dikelola dengan teknik ini adalah gambar dengan format BMP dengan kualitas gambar yang tidak begitu baik. Sebenarnya gambar dengan format yang lain seperti JPG, GIF dan lain - lain, bisa disimpan tetapi nantinya bila ditampilkan baik di dalam form melalui kontrol image atau di dalam report yang tampak hanya berupa shortcut dan bukanlah gambar yang sebenarnya. Bila teman - teman ingin mencoba teknik ini berikut ini urutan langkahnya :

  1. Buat 1 Field dengan type General
  2. Untuk menyimpan ke dalam field general gunakan syntak :
    APPEND BLANK
    APPEND GENERAL <nama field general> FROM <gambar yang akan ditambahkan>
  3. Bila ingin menampilkan ke dalam form dengan menggunakan kontrol, maka kontrol yang digunakan adalah kontrol OleBoundControl, tidak seperti teknik sebelumnya yang menggunakan kontrol image. Atur property ControlSource dari OleBoundControl dengan nama field general yang digunakan untuk menampilkan gambar.
  4. Setelah table jadi dan gambar ingin ditampikan di report, urutan langkahnya adalah : (1) tambahkan kontrol "Picture/OLE Bound Control" ke dalam report, (2) atur Propertiesnya di Tab "General", di bagian "Control Source Type" pilih "General Field Name" dan (3) di bagian "Control Source" masukkan nama field general yang digunakan untuk menyimpan gambar tersebut. Meskipun teknik ini lebih sederhana daripada 2 teknik lainnya, tetapi teknik ini seringkali dihindari atau jarang digunakan yang dikarenakan beberapa kelemahan yang telah dijelaskan diatas. Sebagai catatan bila nanti meski telah menggunakan gambar dengan type BMP ternyata yang ditampilkan tetap hanya berupa shortcut, baik saat di ditampilkan dengan  menggunakan OleBoundControl atau di dalam report, maka jalankan script ini assoc.bmp=Paint.Picture di dalam RUN atau di "Command Prompt" terlebih dahulu.
Bila teman - teman masih bingung mengenai penjelasan dan uraian diatas mungkin lebih mudah jika langsung otak - atik contoh project sederhananya. Project ini menggunakan 3 teknik diatas untuk menampilkan gambar baik di form maupun di report. Langsung saja silahkan download projectnya di link dibawah ini dan bila ada pertanyaan silahkan kasih comment aj.





SEMOGA BERMANFAAT...!!

19 Response to "Cara Menyimpan Gambar di Table"

John Salim mengatakan...

Thx banget infona....
langsung coba aaahhh....

Andy Prasetyo Utomo mengatakan...

semoga berhasil mas john... :)

Anonim mengatakan...

Terima kasih telah berbagi .. s'moga sukses!

Andy Prasetyo Utomo mengatakan...

amiin, thank a lot gan...:)

bagus.pradopo mengatakan...

newbie nih........... mw tanya kalo nyimpan file music .mp3/.wav ke tabel dan nantinya bisa di play lewat command button bisa ga?? mohon pencerahan.... thanks be 4

Andy Prasetyo Utomo mengatakan...

@bagus.pradopo : bisa gan gunakan 3 cara diatas....tinggal nanti maenkannya pake control MMC atau Windows Media Player, mungkin nanti biar lebih jelas, tunggu postingannya aja.. :)

bagus.pradopo mengatakan...

thanks gan....... di tunggu posting nya...

mitraturatea mengatakan...

Thanx mas bro, infonya sangat membantu ane hehehehe...

mitraturatea mengatakan...

Maaf kalo' salah tempat.
Mas bro sy mau tanya, bagaimana caranya supaya foto yang mau dimasukkan ke dalam tabel dengan metode URL/link secara otomatis tercopy ke directory yg sudah kita tentukan sebelumnya? biar kalo' pindah ke kompie lain, alamat fotonya tetap. Trims...

Andy Prasetyo Utomo mengatakan...

@bagus pradopo : ok gan..tunggu aja ya... :)

@mitraturatea : ok mas bro sama2...:)

YoWis mengatakan...

Tanya gan, kalo agar gambar/fotonya bisa diganti dari form bagaimana ya?
Memasukkan file browser caranya bagaimana?

Andy Prasetyo Utomo mengatakan...

@YoWis

apa mas sudah download dan coba contoh project sederhan yang disediakan di posting diatas???...disana ada contoh yg sesuai dengan yang mas inginkan...hmmm...mungkin yg mas inginkan gk seperti itu???

Endra mengatakan...

Mas Andy PU,.....
Trim's atas tutorialnya...

Tapi ada 1 msalah, ketika saya buat form input, ada banyak record yang tidak ingin saya sertakan gambarnya, jadi ketika saya preview reportnya tanpa gambar maka muncul "Invalid path or filename" ,reportnya ga' bisa tampil...
Gmana ya mas cara memperbaiki ini? please, trim's

Endra mengatakan...

Mas Andy PU,.....
Trim's atas tutorialnya...

Saya pakai teknik save URL, tapi ada 1 msalah, ketika saya buat form input, ada banyak record yang tidak ingin saya sertakan gambarnya, jadi ketika saya preview reportnya tanpa gambar maka muncul "Invalid path or filename" ,reportnya ga' bisa tampil...
Gmana ya mas cara memperbaiki ini? please, trim's

Bby Danzo mengatakan...

apa coding untuk menyimpan data dari text ke table om

H3ndr1k mengatakan...

Thanks Gan ilmu yg bermamfaat, ditunggu Postingan Trik dan ilmu terbaru lainnya

Unknown mengatakan...

permisis Mas, itu "Project Trik Simpan Gambar" gak bisa di download solusi dong, di detect program berbahaya kata om googlenya

thenk mengatakan...

om, link ziddu nya notfound, mohon reupload

sowansa delaile mengatakan...

Sangat mudah bukan cara menyimpan gambar dan video instagram ?. Semoga saja toturial singkat ini bisa sedikit membantu anda.
Cara Mudah Simpan Gambar Instagram

Poskan Komentar

Bila komentar tidak tampil, silahkan ke page Welcome dan beritahukan melalui email yang tertera disana, kemungkinan komentar anda dianggap sebagai spam, biar nanti admin yang akan merubahnya, Terima kasih.

Related Posts Plugin for WordPress, Blogger...