Membuat Aplikasi Absensi Menggunakan Visual Basic ( Part I ).

Januari 7, 2009 rahmatvinacerpus Tinggalkan komentar Go to comments Welcome back to my Lesson …., sebelum kita memulai tutorial ini , ada baiknya saya ucapkan terimakasih atas kunjungan setia Blog ini, Mungkin ada yang bertanya kenapa Blognya enggak pernah update ?, ya maklumlah bro,,, lagi banyak tugas nih jadi telat dech , Tapi engak apa-apa semakin lama tentunya semakin banyak ide , nah kali ini saya mau coba berbagai ide tersebut. Siapa yang enggak tahu sih tentang absensi ?, sekolah bahkan perusahan tak terlepas dari yang anamanya absensi ini , kalau biasanya absensi hanya menggunakan secarik kertas tapi kali ini kita coba aplikasikan dengan program komputer , ya …biar lebih keren lah,,,,he….he… . Sebenernya Aplikasi ini bisa dibuat menggunakan banyak program misalnya Accses, Foxfro, Mysql, SQl ,VB, C++, bahkan MS.Excel.,. Kalau pake Acses bukan kurang bagus Cuma sedikit kurang apdol sebab program ini enggak bisa standlone (berdiri sendiri) so kalau komputer kita enggak punya program accses maka program aplikasi enggak bisa jalan , makanya saya mau coba buat pake program Vb, kali ini sya menggukan Vb 6.0. Letsgo kita mulai… Dalam palikasi ini kita membutuhkan beberapa Form (tampilan ). 1. 2. 3. Form Input Data Yang akan diabsesn Form Absesni Dan hasil Absensi

Dalam Form input kita membutuhkan beberapa data masukan seperti : No., Nama, Bagian/kelas, tanggal/jam, jenis kelamin . Data masukan tersebut hanya seabagai contoh , tentunya Anda bisa juga menambahkan yang lainnya sesuai dengan kebutuhan anda . nih dia gambar form input data .

Sederhana bukan…..?. Pada bagian form ini ada bebrapa tool untuk mengolah data ada Datasiswa , Save data, Delete (hapus) data, . Cara form ini adalah ketika kita memasukan data kemudian di klik Save maka data akan tersimpan ke Dalam data Base untuk menyimpan data , untuk menghubugkan ke DataBase kita gunakan jembatan Yaitu tool DataGrid (data siswa). Jadi yang perlu anda lakukan adalah membuat database sebagai tempat menyimpan data tersebut , caranya cukup mudah . Pada menu bar Visual basik Pilih menu AddIns-Visula data Manager, sampai muncul jendela berikut:

Dan lakukan seperti pada gambar , coba buat data base dengan Acsess versi 7.0 kemudian simpan dalam folder yang sama dengan project Aplikasi yang kita buat. Misal E://Rahmat/AplikasiAbsesi. Langkah selanjutnya kita masukan beberapa fields dalam database tersebut.

Disinilah kita akan memasukan data fieldsnya , gamar diatas hnaya contoh aja, pada database ini .tentunya untuk membuat Rcordnya tidaklah terlalu susah, anda cukup Klik Add Fields, sampai muncul Jendela baru,

Masukan nama record yang akan kita gunakan tentukan type , sesuai dengan data yang akan kita masukan sialahkan pilih pada bagian type.jika data yang kita masukan sudah pas sesuai dengan kebutuhan , kemudian klik Add index (Field Kunci/primary key) diharapakan sama dengan nama fields yang anda buat. Kalau hal ini sudah lakukan anda tinggal Klik Build The Table (jika data untuk absensi sekolah baiknya gunakan kelas sebagai primary key dan unique jangan dicheklist biar bisa di duplicate dan field no boleh dihilangkan), menunjukan bahawa tabel ini yakin akan kita buat . Untuk melihat berhasil atau tidaknya data base yang kita buat , tutp Program vb Kita kemudian kita coba buaka database yang baru aja kita buat caranya sama seperti waktu kita membuat database AddIns-Visula data Manager-muncul jendela-klik Open database – Cari database yang baru aja kita buat

Nama.Sementara Alpa. anda cukup klik kanan pada salah satu table kemudian klik Open . Microsoft Data Grid Control 6.seperti yang telah di jelaskan pada bagian ini kita akan memasukan data kedalam database yang terdiri dari No.0 Cukup memberi tanda checklist kemudian klik Apply sampai muncul pada Toolbox component seperti gambar berikut ini: . Tanggal . kebetulan saya sudah mengisi data-nya . sakit. Nip/nis/Nim.masuk dan total kita masukan pada form interface Input absensi yang nanti akan kita buat. Microsoft FlexGrid Control 6. izin. Dengan menggunakan data base yang telah kita buat .pada toolbox -klik kanan -lalu pada tab Control pilih komponen berikut ini: 1..Nah itulah hasilnya . Jenis kelamin.0 2. Ok sekarang kita kembali Ke Form Input data. Sebelumnya kita keluarkan dulu tool-tool yang kita butuhkan dalam membuat aplikasi ini . Kelas/bagian saja .

Pada bagian sebelah kiri ada beberapa Icon . Selanjutnya kita desain Form terlebih dahulu cara nya gampang untk membuat Form baru anda cukup mengklik Menu Project -Add From -Open sampai muncul form seperti gambar berikut ini: . dan icon-icon itulah yang akan kita gunakan dalam membuat aplikasi ini.

caranya Pada Menu View -klik Properties Windows hingga muncul gambar: . tentunya kita bisa menggantinya sesuai kehendak kita misal Aplikasi Absensi .Pada form ini terlihat nama form dengan nama Form 3 .

. Go nex t (bukan goblok nakat ya!… but is terus….. karena akan berpengaruh pada saat memasukan script sebaiknya kita biarkan aja . kemudian beri nama baru pada bagian caption dengan nama yang lain : Kemudian untuk text sama seperti pembutan label klik icon textbox-kemudian drag diarea form3. kita cukup mengklik icon label dengan tanda huruf A: Kemudain klik diarea form tahan untuk menentukan ukurannya .……. kira hasilnya seperti berikut: . kita bisa mengganti Form3 menjadi nama yang lain sedangkan pada bagian (name ) boleh diganti /tidak . kecuali program yang akan kita sangat Kompleks kita bisa menggantinya untuk membedakan form-from tersebut. sekarang kita Buat fields interface menggunakan Label dan text.Pada bagian alphabetic -caption . selanjutnya pada bagian name anda boleh mengganti /biarkan saja . label sebagai penanda.he…. dan text sebagai tempat menuliskan data input caranya cukup mudah .he…J.

text. Pada bagian Properties windows di bagian DatabaseName . umtuk Command 1=Save New Data dan Command2 =Delete/Hapus. masukan nama Database yang sebelumnya kita buat.! Perhatikan gambar diatas!. kita buat saja sebanyak Dua buah commad . pada bagian Caption di Proerties windows ganti namanya. Selanjutnya kita buat command Button sebagai intruksi Perintah terhadap suatu data . dan DataGrid. yaitu menggunkan DataGrid caranya sama saja seperti membuat label dan text hanya saja kita perlu sedikit memodifikasinya di bagian Properties Windows .. Selanjutnya klik Icon jam kemudian letakan di From3 pada properties windows di bagian Interval masukan angka 10 secara keseluruhan Form input data akan kira -kira seperti ini : .Ulangi langkah diatas sesuai dengan banyaknya fields yang kita buat. caranya sama sewaktu kita membuat label . disitu ada Data1 dan inilah yang akan kita gunakan sebagai jembatan Koneksi Ke database kita. anda pilih nama tabel yang ada dalam database yang pernah kita buat. kemudian pada Reecordset Type ganti 1Dynashet menjadi 0-table . diamana akan diminta memasukan Path lokasi tempat kita menyimpan Data tersebut. jika sudah selanjutnya kita akan membuat jembatan DataBase . selanjutya pada bagian Recordsource di properties windows .letsgo bro…. misalnya saya memiliki tabel2 dengan nama DataBase tabel1 .

Giamana bisa kan?. Perlu di perhatikan command1 bisa beruBah jika anda mengubahnya dengan nama lain pada bagian Properties Windows di bagian Name . Selanjutnya kita masukan script yang akan menjalankan instruksi untuk menyimpan Fields-fields kedalam database sewaktu kit mengklik Save New Data. misalnya Save maka ktika di lihat di double Klik maka yang tampil bukan Command1 melainkan Save. pada bagian Save New Data -klik Kanan-View Code atau Double Klik pada Command1= Save New Data Selanjutnya masukan Script berikut ini diantara Private Sub Command1_Click() Dan End Sub.he….he…. Adapun caranya . Oke ini dia scrip yang harus anda masukan pada bagian ini: ———————————————————————————————————— If Text2. oh ya untuk warna silahkan aja klik-klik di bagian Properties windows mungkin lain kali saya jealaskan ….Text = “” And Text7.Text = “” Then ..

vbOKOnly + vbCritical.Text Data1.Text Data1.Recordset.Text Data1.Update Data1.MoveLast Else bersih End If .AddNew Data1.Recordset.Recordset!nip = Text2. “Information”) If x = vbYes Then Data1.Recordset!tgl = Text4.Recordset!jk = Text7.Recordset!masuk = “” Data1.Recordset!bagian = Text8.Text Data1. vbYesNo + vbInformation.Recordset!alpa = “” Data1.Recordset!nama = Text3.Text Data1.Recordset!total = “” Data1. “Warning!”) If x = vbOK Then End If Else x = MsgBox(“Anda yakin Ingin Menyimpan Data ini?”.Recordset!no = Text1.x = MsgBox(“Mohon Isi Data Dengan benar!”.Recordset.Recordset!izin = “” Data1.Text Data1.Recordset!sakit = “” Data1.

nama. sedangkan warna hijau hanya modifikasi saya aja .Recordset!no = Text1. pada Tabel1 dalam data base yang kita buat fileds yang kita buat tidak hanya . jenis kelamin.Recordset!bagian = Text8.End If Bersih —————————————————————– mungkin sedikit ada pertanyaan koq banyak banget ya scriptnya ?.Recordset!nama = Text3. no.Text Data1. fungsi IF ini memerintahkan agar si user tidak sembarang mengklik . gitu dech cerintanya… Lanjut . sementara pada form input hanya menampilkan no.Text Sementara records alpa dan seterusnya saya biarkan kosong ?.Text Data1. masuk. jika hanya ini saja yang akan kita masukan ke database maka akan terjadi error karena tidak dikenal tabel dengan records seperti itu. tgl. sebenernya script yang pokonya hanya pada bagian yang warna biru .Recordset!nip = Text2. sakarang Double Klik Command2=delete/hapus kemudian masukan script ini: Private Sub Command2_Click() If Text10. Tapi jika Nip dan jenis kelamin di isi maka Data akan disimpan di data Base.nip.Recordset!jk = Text7. jenis kelamin.nip. sakit. izin. makanya tetap saya isi tapi isi data tetap dalam keadan kosong.nama.Recordset!tgl = Text4.Text = “” Then info Else info2 . tgl dan bagian tapi alpa. Selanjutnya ada : Data1.Text Data1.Text Data1. ketika si user mengklik save New data dalam keadaan Tidak mengisi fields-fieldsnya maka akan keluar Informasi “Mohon Isi data dengan Benar”.Text Data1.

End If End Sub Untuk script delete sedikit ya?. “Informasi”) If x = vbYes Then If Data1. he…. vbOKOnly + vbCritical. “Warning!”) If x = vbOK Then End If End Sub ———————————————————– Untuk info2 : ———————————————————————————————————— Private Sub info2() x = MsgBox(“Anda Yakin Untuk Menghapus data Ini?”.Delete Data1.he…J.Cancel End If Else Text10.SetFocus .Text Then Data1.Recordset(“nip”) = Text10. . vbYesNo + vbInformation.scrip info kayak gini: Private Sub info() x = MsgBox(“Tidak Ada Object Untuk di Hapus”.Recordset.Recordset.UpdateRecord Else Data1. tapi boleh kok di buat langsung !. sebenernya lumayan juga cuama saya simpan dalam bentuk variable (procedure).

“Information”) If x = vbYes Then Data1.……….Text = “” Then x = MsgBox(“Mohon Isi Data Dengan benar!”. tanggal sifatnya Update sesuai dengan jam di system komputer sekarang Doubleklik Icon Jam Yang ada di Form3 kemudian masukan script berikut: ———————————————————————————————————— Private Sub Timer1_Timer() Text4.(dijalankan).Text = “” And Text7. “Warning!”) If x = vbOK Then End If Else x = MsgBox(“Anda yakin Ingin Menyimpan Data ini?”.Text .Recordset. vbYesNo + vbInformation.. vbOKOnly + vbCritical. kita coba di bagian ke II ya?.Text = Format(Date.AddNew Data1.End If End Sub Kemudian hal yang terpenting adalah Menampilkan Tanggal atau jam ketika Form Ini sedang Di Runing. Untuk lebih jelasnya kira-kira script keseluruhannya adalah Sbb: ———————————————————————————————————— Private Sub Command1_Click() If Text2. “dd/mm/yyyy”) End Sub —————————————————————– Mungkin sampai disini udah pada ngerti kan?. untuk melangkah ke sesi lainya yaitu membuat form input Absensi .Recordset!no = Text1.

Update Data1.Recordset!total = “” Data1.Text Data1.Recordset!izin = “” Data1.MoveLast Else bersih End If End If bersih End Sub Private Sub bersih() Text1.Recordset!tgl = Text4.Recordset!bagian = Text8.Text = “” .Recordset!alpa = “” Data1.Text Data1.Recordset!masuk = “” Data1.Recordset!nip = Text2.Recordset!sakit = “” Data1.Text Data1.SetFocus Text1.Text = “” Text3.Data1.Recordset!nama = Text3.Text Data1.Recordset.Text Data1.Recordset!jk = Text7.Text = “Isi Data!” Text2.Recordset.

Text = “” Text3.SetFocus End If .Text = “” Text4.Text = “” End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Text2.Text = “” Text3.Text = “” Text1.Text = “” Text8.Text = “” End Sub Private Sub Command2_Click() If Text10.Text7.Text = “silahkan Isi Data!” Text7.Text = “” Text8.Text = “” Then info Else info2 End If End Sub Private Sub Form_Load() Text2.

SetFocus End If End Sub Private Sub Timer1_Timer() Text4. “dd/mm/yyyy”) .SetFocus End If End Sub Private Sub Text7_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Text8.Text = Format(Date.SetFocus End If End Sub Private Sub Text8_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Command1.End Sub Private Sub Text2_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Text3.SetFocus End If End Sub Private Sub Text3_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Text7.

Cancel End If Else Text10.Recordset. vbYesNo + vbInformation. “Informasi”) If x = vbYes Then If Data1.Recordset. vbOKOnly + vbCritical.UpdateRecord Else Data1. “Warning!”) If x = vbOK Then End If End Sub Private Sub info2() x = MsgBox(“Anda Yakin Untuk Menhapus data Ini?”.Text Then Data1.Recordset(“nip”) = Text10.SetFocus End If End Sub Sekarang kita jalankan Form yang telah kita buat caranya kllik aja Run – Start untuk menghentikan tinggal Klik Run -Stop kira kira hasilnya kayak gini nih: .End Sub Private Sub info() x = MsgBox(“Tidak Ada Object Untuk di Hapus”.Delete Data1.

. “JYuhuy……. Maka muncul Peringatan .he….” kira -kira seperti itu loh Mas….. Oke dech kayaknya saya mau istirahat dulu nih .he…. enggak apa2 kan .berhasil euy.Saya coba tanpa mengisi data apapun begitu saya klik SAVE NEW DATA. Selamat mencoba Ya !!!………. tenang aja entar kita bahas lagi oke tentunya dibagian kedua .(Maaf Untuk Delete Nanti Kita Bahas Lagi)....

solanya banyak yang minta session 2 Cuma saya ngasihnya telat .Membuat Aplikasi Absensi Menggunakan Visual Basic ( Part 2 ). tentunya saya tidak membahas banyak tentang SQL . aplikasi ini saya buat untuk tugas akhir makanya saya masih melakukan normalisasi. tapi kalau saya jelaskan dari awalhigga akhir maka perlu satu buku kali ya. Sebelum kita masuk kepembhasan Membuat Tampilan proses absesnsi .dll. No.ϑ So saya harapkan untuk kali ini saya enggak perlu lagi ngejelasin lagi . pada form ini kita akan melakukan absensi pada tanggal hari ini ( Updating) sesuai jam di system computer. kelas/bagian. sebelumnya saya mau minta maaf .he…he. Yups . tapi tenang saya akan tetep tepatin janjji saya. gak apa2 ya?.…thank s ya udah mau ngunjungin blog yang gado-gado ini. terlebih dulu saya minta maaf bila tampilan form dan fields yang kemarin agak sedikit berbeda maklumlah . Mungkin untuk saat ini mudah-mudahan sudah lumayan normal. tapi enggak apa sedikit asal membantu itu lebih baik. Pada pembahasan sebelumya kita sudah membuat record. So. database hanya akan menampilkan data yang ada pada kelas XI-A saja smentara yang lain dihiden dulu . alpa. Oh ya Aplikasi ini saya buat dengan system client admin (ada admin dan client). Nip/nis/Nim. ketiak saya ingin mengabsen kelas XI-A .. dan sebenrnya saya buat tidak hanya untuk absensi tapi juga satu paket degan Koreksi soal objectif serta Katalog buku perpustakaan.. sakit serta total . BTW dalam membuat laporan pun nantinya kita perlu Dengan SQL Pastinya hal ini untuk mengelompokan data tersebut berdasarkan kelas.0 ditunggu aja ya?. Ok sebelumnya pernah kita bahas bagaimana membuat tampilan input Absensi dimana disitu juga kita bahas cara membuat text.. kita butuh script SQL untuk menjlankan perintah ini . Jenis kelamin. 2009 rahmatvinacerpus Tinggalkan komentar Go to comments Welcome lagi pencita bloger. Dalam form Proses absesnsi dimana kelas /bagian akan kita buat sebagai locked (pengunci) kenapa ya?. tunggu kalau saya udah kelar TA …bukan Promosi loh?..sekarang kita tentunkan skanario dari form yang kita sebuat sebagai interface input absensi . .Λ dengan TA saya dan insya Allah Aplikasi Bisa di dapetin gratis Koq entar saya kabarkan dan silahkan insatall dan download programnya .. tapi pembahasan lain insya Allah saya kasih tahu bgaimana penggunaan SQl pada VB 6. maka . izin. Ok tugas kita adalah mendesaign Form seperti ini nih: . jadi bagi yang Cuma baca session 2 sory ya…. label commad button. Nama. tapi kalau saya kasih tahu terus gimana dong .Tanggal . maklumlah bos saya juga banyak kegiatan jadi harus bener-bener nyempetin waktu. masuk. Maret 10.

maka hasilnya: .Nah buat formnya seperti ini form ini belum saya running jika sudah di running.

tapi jika menggunkan 0-Table. recordsetType=1-type DynaSet Untuk DbGrid1 di bagian properties: Name=DbGrid1 Caption=terserah anda DataSource=Data1.mdb). seperti pada gamabar kedua tersebut jika anda melihat ada DataGrid yang lain anda tidak perlu membuatnya anda hanya perlu satu DataGrid Saja OK!. DataGrid 1 pada bagian properties ubah menjadi : Name=Data1 Caption=(Terserah anda) DataBaseName=Path tempat anda menyimpaan data basenya contoh : (D:\LTIHAN .. Recordsource=Tabel yang dibuat oleh Data Input sebelumnya missal : Tabel2. maka akan diurut berdasar Index.Pada bagian form ini kita perlu beberapa komponen DataGrid (sebagai jembatan) Dbgrid (Sebagai penampil hasil). karena dengan properties ini field tidak diurut berdasrakan kunci. . Type dynaset ini berpengaruh terhadap pengurutan fileds pada DbGrid. VB\Absensi\tabel1. Kemudain untuk nama=>text3 misalnya prpertiesnya: DataSource=Data1 dataField=nama.

Text = Val(Text7.Value = True Then Text11.Text) + 1 Text10.text.text akan disi oleh data yang ada pada text7.Text) + Val(Text14.Text) End Sub Perlu di perhatikan saya tidak mengubah text -text yang saya buat memang sengaja tidak saya ubah.Text = Text2.Text Text14.lajutkan dengan text=nip .text(sesudah absent) akan ditambah satu.text(sebelum absent)=text6.text=text6.Text = Text8.value =true. diberikan titik maka text11. Pada option 1=>Alpa ubah Caption=Alpa Option2=>Masuk ubah Caption=Masuk Option3=>Izin ubah Caption=Izin Option4=>Sakit ubah Caption=Sakit Nah sekarang kita buat script di masing-masing Option untuk Option1=>Alpa: Private Sub Option1_Click() If Option1.Text) + 1 Else Text10.Text = Val(Text7.Text Text14.Text = Text7. maka text10. text=izin .Text Text12..text.Text = Val(Text10.Text) + Val(Text11. Karena inti dari sebuah program adalah hanya si programerlah yang tahu dari maksud kode yang dia buat.Text Text12.text (seudah absent).Text Else Text11.Text = Text2.text=masuk . dari pada pusing-pusing terusin scriptnya untuk Option2=>Izin: Private Sub Option2_Click() If Option2.text=>setelah basen . maksudnya ketika option1.SetFocus Text13.text=total) lakukan sama halnya pada text3.Text) + Val(Text12.pada frame sebelum absensi (text=alpa. sehingga menjadi=val(text6.Value = True Then Text11.Text Text10.SetFocus .text=>izin akan tetap berisi satu pada text7.Text) + 0 End If Text13.Text = Val(Text6.text=sakit .Text = Text6.text=text7.Text) + 0 End If Text13. Makanya pada saat gambar dua di running alpa dll masih dalm keadan kosong karena memang belum saya isi. dan anda jangan berpikir jika data ini akan langsung disimpan tapi Cuma di input hanya saja kita menambahkan command button1=Save. Untuk text10. begitu pula pada saat option2 .text)+1.Text = Val(Text6. Text11.value=True maka text10.Text = Text8.he…he… Pada text11. text=kelas .tex=tanggal.text jika Option1.

Text = Text7.Text = Val(Text12.masuk dan alpa akan di jumlah menjadi satu.Text13. misalnya saya mau absent kelas XI-A maka data yang akan tampil hanya Kelas XI-A nah sekarang kita ketik pada command4=> Lock : Private Sub Command4_Click() Data1.Value = True Then Text12.Text = Val(Text11.Text = Text8.Text = Text6.Text = Text6.SetFocus Text13. .Text) + 1 Text10.Text) + Val(Text14.Text Text11.Text) + Val(Text10.Text = Val(Text8.Text) + Val(Text11.RecordSource = “select*FROM tabel2 WHERE bagian LIKE ‘*” & Text1.Text) End Sub Option3=>Sakit: Private Sub Option3_Click() If Option3.Text = Val(Text2.Text) + 0 End If Text13.Text = Text7.Text) + Val(Text12.Text) + 1 Else Text14.Text Text12.Text) + Val(Text10.Text Text11. dan aplikasi ini kita gunakan untuk absensi siswa .Text = Val(Text2.Text Text14.ϑ untuk yang ini silahkan coba dicari sendiri ya? …he…he..Text) + 0 End If Text13.Value = True Then Text10. dan biasanay mengabsen berdasarkan Kelas oleh karena itu kita perlu pengunci untuk mengunci.Text Text14. Sebenernya anda juga bisa membuat model seperti tanpa bantuan text sedudah absent tapi cukup mennggunkan database buffer yang sifatnya menyimpan dta smentara dan ketika di klik save maka Database akan dikosongkan kembali.Text) + Val(Text14. izin.Text) + Val(Text14.Text = Text2.Text) + Val(Text10. Ok karena database kita bersifat global .Refresh .Text) End Sub Nah kalau anda melihat text13.Text) + Val(Text12.Text) End Sub Option4=>Masuk: Private Sub Option4_Click() If Option4.Text Else Text12.Text & “*’” Data1. nah metodhe ini saya terapkan pada koreksi soal .Text = Val(Text11.Text = Val(Text8. maka kita tidak mungkin mengabsen secara acak berdasar Nim siswa .SetFocus Text13. itu bermaksud untuk mencari jumlah seluruh absensi baik sakit.

ditampilkan hanya data kelas XI-A aja. nah sekarang silahkan klik .DBGrid1. Na h sekarang ketikin XI-A kayak yang saya contohkan terus clik Lock.SetFocus End Sub Oke sakarang kita coba Run tapi sebelumnya kita klik-> Project-> ProjectProperties-> jika muncul jendela kayak gini tentukan mana dulu yang akan kita jalankan kayak gini nih. Kalau udah klik Ok.Refresh Text1. Pada bagian Dbgrid1.

vbOKOnly + vbInformation. vbOKOnly + vbInformation.Text = “” Or Text3.Text Data1.Recordset.Recordset. dan perahtikan pada bagian frame sesudah absent jika muncul angka 1 pada bagian Alpa maka scrip telah berjalan dengan benar.Fields(“tgl”) = Label16.Refresh Data1.Value = True Or Option4.Recordset. “Informasi”) End If End Sub Untuk mencegah kesalahan .Recordset.object yang diabsensi sudah salah.Recordset.Text Data1.Recordset. tapi tenang ada kemaun pasti ada jalan….Text = Data1.Text = “” Or Text5. Itulah scrip yang terpenting dalam proses ini tapi kalau penegen tahu semua scripnya boleh asal jangan muntah ya…he…ini dya jreng”: Private Sub Command1_Click() ‘untuk menyimpan hasil absesnsi kedalam database If Text16.Update Option1.saya aja udah berakali me-Run supaya berjalan Normal.Edit Data1.Value = True Then x=MsgBox (“Thank’s you “.Fields(“izin”) = Text11.Fields(“alpa”) = Text10.Text = Data1.Fields(“nip”) And Option1.Value = True Or Option2.Text Data1.Value = False Option4.Value = True Then .Caption Data1.Recordset.Text Data1.Fields(“sakit”) = Text12. pasti dong yaiyalah kan emang itu yang kita maksud daripada pusing mendingan ketikin scripnya di command=>save: Private Sub Command1_Click() If Text16.Value = False Option3.Fields(“total”) = Text13.Text = “” Then MsgBox (“Absensi Telah Selesai / Tidak Ada Object Yang akan di Simpan”) ElseIf Text16.Text Data1. nah ternyata yang seperti ini jutru lebih penting dan ribet loh .Option1=>Alpa.seperti menyimpan data kosong .Value = True Or Option4.Value = True Or Option3.Recordset. selanjutnya apakah kita akan menyimpan hasil absensi tersebut ?.Recordset.Text = “” Then MsgBox (“Absensi Telah Selesai Tidak Ada Object Yang akan di Simpan”) ElseIf Text16.Value = True Or Option3. jika hal ini dilakukan maka program akan memeberikan peringatan seperti: “Absensi Telah Selesai / Tidak Ada Object Yang akan di Simpan” atau “Anda Belum Memilih Keterangan Absesnsi!” tapi jika data diisi dengan benar maka akan muncul pesan “Thanks You”.setuju… he… .Recordset.Value = False Option2.Recordset.Fields(“nip”) And Option1.Tanpa memilih option.Text = “” Or Text3.Fields(“masuk”) = Text14.MoveNext Else Z = MsgBox(“Anda Belum Memilih Keterangan Absesnsi!”. “Aplication For Master”) Data1.Value = False DBGrid1.Text = “” Or Text5.Value = True Or Option2.

Value = False Option2.RecordSource = “select*FROM tabel2 WHERE bagian LIKE ‘*” & Text1.Recordset. “Informasi”) End If End Sub Private Sub Command2_Click() ‘hanya refresh doang Data1.Recordset.Text Data1.Recordset.Value = False Option3. vbYesNo + vbQuestion.Show Form_Input_absensi.X = MsgBox(“Thank’s you “.Fields(“izin”) = Text11.Update Option1.Recordset.Recordset. “Aplication For Master”) If X = vbYes Then subDepan.Caption Data1.Fields(“tgl”) = Label16.Text Data1.Recordset. “Aplication For Master”) Data1.Text Data1.Recordset. vbOKOnly + vbInformation.Hide Else End If End Sub Private Sub Command4_Click() ‘menseleksi berdasarkan kelas Data1.Refresh Data3.Fields(“alpa”) = Text10.MoveNext ‘setalah di save maka akan menuju record selanjutnya Else Z = MsgBox(“Anda Belum Memilih Keterangan Absesnsi!”.Refresh Data1.Value = False Option4.Text Data1.Fields(“sakit”) = Text12.Refresh Text1.Recordset.Recordset. vbOKOnly + vbInformation.Value = False DBGrid1.Fields(“masuk”) = Text14.Fields(“total”) = Text13.Edit Data1.Text & “*’” Data1.SetFocus End Sub Private Sub Command5_Click() .Refresh End Sub Private Sub Command3_Click() ‘keluar dari form proses absensi X = MsgBox(“Apa ada yakin untuk Mengakhiri Pengisian Absensi ini ? “.Refresh DBGrid1.Text Data1.

SetFocus Else X = Text15.Text = Val(Text6.Text = Val(Text7.Recordset.Value = True Then Text11.Text = Val(Text10.Text = “” Text15.Height – Me.Text & “‘” If Not Data1.‘ ini untuk find menu berdasarkan nip/nim/nis Data1.Text = “” Text11.Text) + Val(Text11.Text) + 1 Text10.Text Text12.Width – Me.Text = Text8.Text = Text7.Text = “” Text13.Text = “” Text14.Value = True Then Text11. (Screen.Recordset.Text Text10. “Aplication For Master”) Text15.Text Text12.Text = “” r = “Silahkan Input Nip/Nim/Nis!” Text15. vbyesonly + vbinformasi.Text = r End Sub Private Sub Option1_Click() ‘jika di klik maka jumlah alpa akan bertambah satu If Option1.Text = Text8.Text = Val(Text6.Text) + Val(Text12.Move (Screen.Text = Text6.Text .SetFocus End If End Sub Private Sub Form_Load() ‘Posisikan Form ini ketengah Me.SetFocus Text13.Text) + 0 End If Text13.Text Text14.Text = “” Text12.FindFirst “nip=’” & Text15.Width) / 2.Text = Text2.Text) End Sub Private Sub Option2_Click() ‘jika diklik maka jumlah izin akan bertambah satu If Option2.Text) + 1 Else Text10.NoMatch Then Text15.Text X = MsgBox(“Mohon Periksa kembali Data yang anda Cari!”.Text = “” Text1.Height) / 2 Text10.Text) + Val(Text14.

Text14.Text = Text2.Value = True Then Text12.Text) + Val(Text12.Text = Text7.Text) + 1 Else Text14.Text) + 0 End If Text13.Text = Val(Text8.Text = Val(Text2.Text) + Val(Text14.Text = Val(Text11.Text = Val(Text11.SetFocus End If End Sub Private Sub Text15_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Command5.Text = Text7.Text Text14.Text = Text8.Text) End Sub Private Sub Option4_Click() jika diklik maka jumlah izin akan bertambah satu If Option4.Text Text14.SetFocus .Text = Text6.SetFocus Text13.Text) + Val(Text12.Text) + 0 End If Text13.Text) End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) ‘ini hanya untuk di Enter supaya pidah ke field berikutnya If KeyAscii = 13 Then Command4.Text = Val(Text7.Text = Text6.Value = True Then Text10.SetFocus Text13.Text = Val(Text8.SetFocus Text13.Text) + Val(Text10.Text Text11.Text) + 1 Text10.Text Text12.Text = Text2.Text) + Val(Text14.Text Else Text11.Text Else Text12.Text = Val(Text12.Text) + Val(Text10.Text) End Sub Private Sub Option3_Click() jika diklik maka jumlah sakit akan bertambah satu If Option3.Text Text11.Text) + Val(Text10.Text) + Val(Text11.Text = Val(Text2.Text) + 0 End If Text13.Text) + Val(Text14.

Caption = Format(Time.Λ sedikit saya rahasikan gak apa kan Mungkin karena saya udah ngantuk nih jadi saya cukupin buat session (part 2-nya). “dd/mmmm/yyyy”) End Sub Sekarang kita coba input absensi dan lihat hasilnya missal saya mw absent kelas XI-B... “hh:mm:ss:am/pm”)’cuma format jam doang Label16. istilahnya masihϑ saya juga buat aplikasi ini untuk TA he….ϑ saya masukan kedatabase …he……he.jangan heran dan aneh kalau ada yang nanya diamana saya menyimpan tanggalnya seperti pada Input data?. sedangkan yang lainya tgl 07/02/2009. entar dech saya kasih aplikasi udah jadinya . dan tanggalnya bersifat update pada field pertama dengan nama Lina Marlina tertera tgl 11/02/2009. Ha silnya udah langsung bisa dilihat .End If End Sub Private Sub Timer1_Timer() Label14.Caption = Format(Date.he… . Coba anda perhatikan di bagian kanan ats form disitu tertera hari ini tanggal: dan itulah yang . Oke dech kalau emang kurang jelas dan belum ngerti dari aplikasi yang saya buat ini .. soalnya . ketika saya klik option(keterangan) masuk maka pada frame sesudah absent bagian masuk= 1(bertambah satu yang mulanya Nol) dan jika kita memilih absen masuk lagi maka akan bertambah menjadi dua . nah nanti .

! ..kita ketemu di part ke 3 dibagian output N pastinya gak kalah seru loh di tunggu ya…!! Kalau gitu good luck aja yah….

menambahkan formulir untuk proyek dan paste kode di bawah ini ke dalamnya. tombol pilihan (qty4).Untuk desain anda bisa membuat sesuai dengan Option Explicit Dim BCtype As Long Private Sub makeBC() Select Case BCtype Case 0 make39 Case 1 makei25 Case 2 . Untuk menggunakan. Anda akan memiliki visual untuk membuat kotak (qty4). Anda juga akan mempelajari bagaimana untuk bekerja dengan clipboard checksum dan kontrol. tombol perintah. label.VB Thok Belajar Visual Basic Online 24 November 2008 Membuat Program Barcode Kode di bawah ini akan menunjukkan cara untuk input data ke dalam kotak teks dan mendapatkan barcode dari gambar itu. gambar kotak (qty2) dan kotak teks. frame (qty2). Berikut tampilan preview dari program barcode maker yang kita akan buat. baru memulai Visual Basic Proyek.

pos As Long Dim Bardata As String Dim Cur As String Dim CurVal As Long Dim chksum As Long Dim chkchr As String Dim temp As String Dim BC(43) As String '3 of the 9 elements are wide: 0=narrow. y As Long. 1=wide BC(0) = "000110100" '0 BC(1) = "100100001" '1 BC(2) = "001100001" '2 BC(3) = "101100000" '3 BC(4) = "000110001" '4 BC(5) = "100110000" '5 BC(6) = "001110000" '6 BC(7) = "000100101" '7 BC(8) = "100100100" '8 BC(9) = "001100100" '9 BC(10) = "100001001" 'A BC(11) = "001001001" 'B BC(12) = "101001000" 'C BC(13) = "000011001" 'D BC(14) = "100011000" 'E BC(15) = "001011000" 'F BC(16) = "000001101" 'G BC(17) = "100001100" 'H BC(18) = "001001100" 'I BC(19) = "000011100" 'J BC(20) = "100000011" 'K BC(21) = "001000011" 'L BC(22) = "101000010" 'M BC(23) = "000010011" 'N BC(24) = "100010010" 'O BC(25) = "001010010" 'P BC(26) = "000000111" 'Q BC(27) = "100000110" 'R .make128 Case 3 makeCodabar End Select End Sub Private Sub make39() Dim x As Long.

BC(28) = "001000110" 'S BC(29) = "000010110" 'T BC(30) = "110000001" 'U BC(31) = "011000001" 'V BC(32) = "111000000" 'W BC(33) = "010010001" 'X BC(34) = "110010000" 'Y BC(35) = "011010000" 'Z BC(36) = "010000101" 'BC(37) = "110000100" '.Text) 'Check for invalid characters. x.Print Cur & " is Invalid" . build temp string & calculate check sum For x = 1 To Len(Bardata) Cur = Mid$(Bardata. 1) Select Case Cur Case "0" To "9" CurVal = Val(Cur) Case "A" To "Z" CurVal = Asc(Cur) .Cls If Text1. BC(38) = "011000100" ' BC(39) = "010101000" '$ BC(40) = "010100010" '/ BC(41) = "010001010" '+ BC(42) = "000101010" '% BC(43) = "010010100" '* (used for start/stop character only) Picture1." CurVal = 37 Case " " CurVal = 38 Case "$" CurVal = 39 Case "/" CurVal = 40 Case "+" CurVal = 41 Case "%" CurVal = 42 Case Else 'oops! Picture1.55 Case "-" CurVal = 36 Case ".Text = "" Then Exit Sub pos = 20 Bardata = UCase(Text1.

.Exit Sub End Select temp = temp & BC(CurVal) & "0" '"0"= add intercharactor gap (1 narrow space) chksum = chksum + CurVal Next 'Add Check Character? (rarely used. chksum + 1.Value Then Picture1.Print Bardata & chkchr. $/+%*".Line (pos.. pos As Long Dim Bardata As String Dim Cur As String Dim temp As String Dim chksum As Long . 1) End If 'Add Start & Stop characters (must have 'em for valid barcodes) temp = BC(43) & "0" & temp & BC(43) 'Generate Barcode For x = 1 To Len(temp) If x Mod 2 = 0 Then 'SPACE pos = pos + 1 + (2 * Val(Mid$(temp.Value Else 'BAR For y = 1 To 1 + (2 * Val(Mid$(temp.Value Then chksum = chksum Mod 43 temp = temp & BC(chksum) & "0" chkchr = Mid$("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. End If End Sub Private Sub makei25() Dim x As Long.CurrentY = 50 Picture1. y As Long.CurrentX = 35 + Len(Bardata) * (5 + Check1(0).) If Check1(2). 1))) Picture1. but i put it here anyway.Value * 2) 'kinda center Picture1. x. x. 58 . 1))) + Check1(0).Check1(1) * 8) pos = pos + 1 Next End If Next 'Add Label? If Check1(1). 1)-(pos.

Text 'make even num of digits by adding a leading 0 If Len(Bardata) Mod 2 And Not Check1(2).Dim BC(11) As String '2 of the 5 elements are wide: 0=narrow.what'd you think the name meant? .Value Then Bardata = "0" & Bardata 'Check for invalid characters and calculate check sum For x = 1 To Len(Bardata) Cur = Mid$(Bardata. x.Print Cur & " is Invalid" Exit Sub End If 'make checksum If x Mod 2 Then chksum = chksum + CLng(Cur) * 3 Else chksum = chksum + CLng(Cur) End If Next 'add check chr to bardata (if selected) If Check1(2).Cls If Text1. 1) If Cur < "0" Or Cur > "9" Then Picture1.Value Then chksum = (10 .Value Then Bardata = "0" & Bardata If Not (Len(Bardata) Mod 2) And Check1(2).Text = "" Then Exit Sub pos = 20 Bardata = Text1. 1=wide BC(0) = "00110" '0 BC(1) = "10001" '1 BC(2) = "01001" '2 BC(3) = "11000" '3 BC(4) = "00101" '4 BC(5) = "10100" '5 BC(6) = "01100" '6 BC(7) = "00011" '7 BC(8) = "10010" '8 BC(9) = "01010" '9 BC(10) = "0000" 'Start chr BC(11) = "100" 'Stop chr Picture1.chksum Mod 10) Mod 10 Bardata = Bardata & Chr$(48 + chksum) End If 'interleave the code into a temp string .

CurrentX = 20 + Len(Bardata) * (2 + Check1(0). y. 1) Next Next 'add Start & Stop characters temp = BC(10) & temp & BC(11) 'Generate Barcode For x = 1 To Len(temp) If x Mod 2 = 0 Then 'SPACE pos = pos + 1 + (2 * Val(Mid$(temp. x.3) 'kinda center Picture1. 1))) + Check1(0).Print Bardata. 1)-(pos. y As Long. x. 1) temp = temp & Mid$(BC(Val(Mid$(Bardata. 1))). x.Value Else 'BAR For y = 1 To 1 + (2 * Val(Mid$(temp. x + 1. '4 element sizes : 1=narrowest. 4=widest BC(0) = "212222" ' BC(1) = "222122" '! BC(2) = "222221" '" .Value Then Picture1. 1))) Picture1. pos As Long Dim Bardata As String Dim Cur As String Dim CurVal As Long Dim chksum As Long Dim temp As String Dim BC(106) As String 'code 128 is basically the ASCII chr set.Value * 1.CurrentY = 50 Picture1. 1))). End If End Sub Private Sub make128() Dim x As Long. 58 . y.For x = 1 To Len(Bardata) Step 2 For y = 1 To 5 temp = temp & Mid$(BC(Val(Mid$(Bardata.Line (pos.Check1(1) * 8) pos = pos + 1 Next End If Next 'Add Label? If Check1(1).

BC(15) = "113222" '/ BC(16) = "123122" '0 BC(17) = "123221" '1 BC(18) = "223211" '2 BC(19) = "221132" '3 BC(20) = "221231" '4 BC(21) = "213212" '5 BC(22) = "223112" '6 BC(23) = "312131" '7 BC(24) = "311222" '8 BC(25) = "321122" '9 BC(26) = "321221" ': BC(27) = "312212" '. BC(13) = "122132" 'BC(14) = "122231" '. BC(28) = "322112" '<> BC(31) = "212321" '? BC(32) = "232121" '@ BC(33) = "111323" 'A BC(34) = "131123" 'B BC(35) = "131321" 'C BC(36) = "112313" 'D BC(37) = "132113" 'E BC(38) = "132311" 'F BC(39) = "211313" 'G BC(40) = "231113" 'H BC(41) = "231311" 'I BC(42) = "112133" 'J BC(43) = "112331" 'K BC(44) = "132131" 'L BC(45) = "113123" 'M BC(46) = "113321" 'N BC(47) = "133121" 'O BC(48) = "313121" 'P BC(49) = "211331" 'Q BC(50) = "231131" 'R .BC(3) = "121223" '# BC(4) = "121322" '$ BC(5) = "131222" '% BC(6) = "122213" '& BC(7) = "122312" '' BC(8) = "132212" '( BC(9) = "221213" ') BC(10) = "221312" '* BC(11) = "231212" '+ BC(12) = "112232" '.

BC(51) = "213113" 'S BC(52) = "213311" 'T BC(53) = "213131" 'U BC(54) = "311123" 'V BC(55) = "311321" 'W BC(56) = "331121" 'X BC(57) = "312113" 'Y BC(58) = "312311" 'Z BC(59) = "332111" '[ BC(60) = "314111" '\ BC(61) = "221411" '] BC(62) = "431111" '^ BC(63) = "111224" '_ BC(64) = "111422" '` BC(65) = "121124" 'a BC(66) = "121421" 'b BC(67) = "141122" 'c BC(68) = "141221" 'd BC(69) = "112214" 'e BC(70) = "112412" 'f BC(71) = "122114" 'g BC(72) = "122411" 'h BC(73) = "142112" 'i BC(74) = "142211" 'j BC(75) = "241211" 'k BC(76) = "221114" 'l BC(77) = "413111" 'm BC(78) = "241112" 'n BC(79) = "134111" 'o BC(80) = "111242" 'p BC(81) = "121142" 'q BC(82) = "121241" 'r BC(83) = "114212" 's BC(84) = "124112" 't BC(85) = "124211" 'u BC(86) = "411212" 'v BC(87) = "421112" 'w BC(88) = "421211" 'x BC(89) = "212141" 'y BC(90) = "214121" 'z BC(91) = "412121" '{ BC(92) = "111143" '| BC(93) = "111341" '} BC(94) = "131141" '~ BC(95) = "114113" ' *not used in this sub BC(96) = "114311" 'FNC 3 *not used in this sub .

1)-(pos.Line (pos.Print "Invalid Character(s)" Exit Sub End If CurVal = Asc(Cur) . x. calculate check sum & build temp string For x = 1 To Len(Bardata) Cur = Mid$(Bardata. 1))) Picture1. x. x.Cls If Text1.32 temp = temp + BC(CurVal) chksum = chksum + CurVal * x Next 'Add start. 1))) + Check1(0). 1) If Cur < " " Or Cur > "~" Then Picture1.Check1(1) * 8) pos = pos + 1 Next End If Next .BC(97) = "411113" 'FNC 2 *not used in this sub BC(98) = "411311" 'SHIFT *not used in this sub BC(99) = "113141" 'CODE C *not used in this sub BC(100) = "114131" 'FNC 4 *not used in this sub BC(101) = "311141" 'CODE A *not used in this sub BC(102) = "411131" 'FNC 1 *not used in this sub BC(103) = "211412" 'START A *not used in this sub BC(104) = "211214" 'START B BC(105) = "211232" 'START C *not used in this sub BC(106) = "2331112" 'STOP Picture1. stop & check characters chksum = (chksum + 104) Mod 103 temp = BC(104) & temp & BC(chksum) & BC(106) 'Generate Barcode For x = 1 To Len(temp) If x Mod 2 = 0 Then 'SPACE pos = pos + (Val(Mid$(temp. 58 .Text 'Check for invalid characters.Value Else 'BAR For y = 1 To (Val(Mid$(temp.Text = "" Then Exit Sub pos = 20 Bardata = Text1.

x.Value * 2) 'kinda center Picture1.Cls If Text1. y As Long.CurrentX = 30 + Len(Bardata) * (3 + Check1(0). End If End Sub Private Sub makeCodabar() Dim x As Long.'Add Label? If Check1(1).Text = "" Then Exit Sub pos = 20 Bardata = Text1. also known as NW-7 BC(0) = "0000011" '0 BC(1) = "0000110" '1 BC(2) = "0001001" '2 BC(3) = "1100000" '3 BC(4) = "0010010" '4 BC(5) = "1000010" '5 BC(6) = "0100001" '6 BC(7) = "0100100" '7 BC(8) = "0110000" '8 BC(9) = "1001000" '9 BC(10) = "0001100" 'BC(11) = "0011000" '$ BC(12) = "1000101" ': BC(13) = "1010001" '/ BC(14) = "1010100" '. 1) Select Case Cur . BC(15) = "0010101" '+ BC(16) = "0011010" 'start/stop A BC(17) = "0101001" 'start/stop B BC(18) = "0001011" 'start/stop C BC(19) = "0001110" 'start/stop D Picture1.CurrentY = 50 Picture1. pos As Long Dim Bardata As String Dim Cur As String Dim CurVal As Long Dim temp As String Dim BC(19) As String 'Codabar.Text For x = 1 To Len(Bardata) Cur = Mid$(Bardata.Print Bardata.Value Then Picture1.

Value Else 'BAR For y = 1 To 1 + (2 * Val(Mid$(temp.Print Bardata." CurVal = 14 Case "+" CurVal = 15 Case Else 'oops! Picture1.Value Then Picture1. x. . 1))) + Check1(0). x.Print Cur & " is Invalid" Exit Sub End Select temp = temp & BC(CurVal) & "0" '"0"= add intercharactor gap (1 narrow space) Next 'Add Start & Stop characters (using "A" for both here) temp = BC(16) & "0" & temp & BC(16) 'Generate Barcode For x = 1 To Len(temp) If x Mod 2 = 0 Then 'SPACE pos = pos + 1 + (2 * Val(Mid$(temp.81 Case "-" CurVal = 10 Case "$" CurVal = 11 Case ":" CurVal = 12 Case "/" CurVal = 13 Case ".Line (pos.CurrentY = 50 Picture1.Case "0" To "9" CurVal = Val(Cur) Case "a" To "d" CurVal = Asc(Cur) . 58 .Check1(1) * 8) pos = pos + 1 Next End If Next 'Add Label? If Check1(1). 1)-(pos. 1))) Picture1.Value * 2) 'kinda center Picture1.CurrentX = 30 + Len(Bardata) * (3 + Check1(0).

Enabled = False End Select BCtype = Index makeBC End Sub Private Sub Text1_Change() makeBC End Sub Private Sub Check1_Click(Index As Integer) makeBC End Sub Private Sub Command1_Click() Clipboard.Enabled = False Case 3 Check1(2).ToolTipText = "Not optional" Check1(2).360 makeBC End Sub Private Sub Option1_Click(Index As Integer) Select Case Index Case 0 Check1(2).Clear .End If End Sub Private Sub Form_Resize() Picture1.Width .Enabled = True Case 2 Check1(2).Width = Form1.ToolTipText = "Not used" Check1(2).Value = 1 Check1(2).Value = 0 Check1(2).Value = 0 Check1(2).Value = 0 Check1(2).Enabled = True Case 1 Check1(2).ToolTipText = "Optional" Check1(2).ToolTipText = "Optional" Check1(2).

SetData Picture1. Sebenarnya itu sudah pernah saya sediakan dalam pembuatan Oriyu: Sistem Informasi Akademik yang sebelumnya. sedangkan tombol . 10 November 2009 Download Source Code Visual Basic Membaca dan Menulis Gambar kedalam Database (Oracle 8i) 02:19 Riyuniza 4 comments Ada teman yang bertanya tentang cara menuliskan dan membaca gambar ke dan dari database. dan membaca foto mahasiswa.Image End Sub Tuesday. Dua buah prosedur ini akan dipanggil oleh frmMahasiswa (lihat gambar). tombol yang pertama berguna untuk mengganti foto "Ganti Foto". Tipe data yang digunakan adalah Blob dengan dtabase Oracle 8i. Jadi prinsipnya begini. untuk menyimpan foto mahasiswa. kita harus menyediakan 2 buah tombol dan 1 buah image pada form mahasiswa. Dalam Sistem Informasi Akademik tersebut ada 2 buah Prosedur Global yakni WriteG dan ReadG.Clipboard.

AppendChunk ByteData() Next I Rs.AppendChunk ByteData() ReDim ByteData(BlockSize) For I = 1 To Numblocks Get SourceFile. kemudian secara bertahap menyimpan file gambar yang dibaca kedalam database dengan menggunakan AppendChunk.Fields("foto"). 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.yang kedua berguna untuk menghilangkan foto dari database dengan nama "Tanpa Foto" (lihat gambar). . Ketika tombol Ganti Foto diklik. . . namun disini kita harus menentukan filelength. ByteData() Rs.Update Close SourceFile Jadi berbeda dengan update field biasa.Fields("foto"). mempersiapkan array kemudian membuka file gambar dimaksud. yang cukup dengan perintah update set nama="blalala".

silahkan download di Membaca dan Menulis Gambar kedalam Database (Oracle 8i).. Yang harus anda pastikan adalah COPYKAN KESELURUHAN FILE .Sedangkan prosedur ReadG berfungsi untuk menampilkan gambar mahasiswsa. jika dilakukan pencarian dan nim mahasiswa tersebut ditemukan. hanya 2 prosedur ini saja.txt. Sedangkan Versi lengkapnya silahkan klik Sistem Informasi Akademik diatas. jika trueDBGrid tidak ada mungkin nanti ada beberapa form yang error. . Program ini dibuat untuk database Oracle 8i. mungkin ada beberapa orang teman yang bermasalah dengan source Sistem Informasi Akademik. tapi tidak masalha. maka program akan bisa dibuka dengan baik. kemudian lakukan installasi True DBGrid. yang kita butuhkan hanya logika saja kan?.OCX YANG ADA KE FOLDER YANG SAMA DENGAN PROJECT. selamat belajar.. ini ssaya simpan dalam bentuk file . Bagi yang tertarik dengan prosedur WriteG dan ReadG. Ouw hya.

Sign up to vote on this title
UsefulNot useful