Cashout Pertama intoffers.com

Diposting oleh T. Erick Sitorus | 05.25 | | 0 komentar »

Satu bulan lalu (awal Juli) saya lihat 1 web iklan yang menyatakan bahwa mencari uang di internet itu mudah. Pemilik web itu bilang tiap minggu ada uang ratusan ribu masuk ke rekeningnya. Saya tentu saja mau seperti dia... Tapi bijimane caranya..?

Selama 1 bulan ini saya coba belajar bisnis internet, kira2 dengan hal apa saya bisa dapat uang dengan hanya browsing internet.

Setelah 1 bulan berkelana, saya baru dapat $1,11. Tapi lumayan lah daripada gak ada, karena kata orang2 bisnis di internet itu butuh waktu sampai berbulan-bulan bahkan tahunan untuk bisa sukses. Jadi saya harap ini awal dari sukses itu.

Ini adalah bukti pembayaran dari situs Aurora Intoffers.com sebesar $1,11. Ini bukti bahwa bisnis di internet itu ternyata benar real. Pembayaran ini dilakukan ke akun Paypal saya.

Situs ini saya rekomendasikan untuk anda ikuti, silahkan klik link banner dibawah ini dan register jadi anggota (kalau anda tertarik).

Mungkin sudah banyak yang mengetahui perbedaan deklarasi parameter dengan ByVal dan ByRef ini, namun saya rasa tidak ada salahnya untuk membahasnya lagi disini. Siapa tahu masih ada sejumlah visitor yang belum mengetahuinya (Kemana aja selama ini..?).

Untuk deklarasi parameter pada suatu method sub / function secara default akan menggunakan keyword ByVal. VB.Net 2008 akan menambahkannya secara otomatis saat anda mendeklarasikan sebuah parameter.

Jika suatu parameter dideklarasikan sebagai ByVal maka nilai parameter tersebut adalah copy-an nilai / salinan dari method pemanggilnya. Jadi ketika parameter tersebut diubah pada method sub / function, ia tidak akan berpengaruh pada nilai di pemanggilnya / hanya berubah didalam sub / functionnya sendiri.

Maka kebalikannya terjadi jika anda menggunakan ByRef, dengan ByRef maka parameter akan menggunakan nilai dan objek yang sama dengan pemanggilnya (mereferensi ke objek di pemanggilnya). Jadi jika nilai parameternya berubah di dalam sub / function tersebut maka perubahan juga terjadi di method pemanggilnya.

Saya rasa dari penjelasan diatas perbedaan antara deklarasi parameter dengan ByVal dan ByRef sudah cukup jelas dan tidak perlu dicontohkan.

Membaca data dengan Datareader

Diposting oleh T. Erick Sitorus | 03.37 | | 1 komentar »

Postingan kali ini mengenai datareader di VB.Net 2008, object ini digunakan khusus untuk membaca data dan sifatnya read only dan forward only. Read Only dalam artian object ini tidak dapat digunakan untuk melakukan manipulasi data. Forward Only sendiri berarti bahwa selama dalam proses pembacaan record maka datareader tersebut tidak dapat melakukan navigasi record ke record sebelumnya yang sudah dibaca.

Berikut adalah contoh penggunaan datareader. Siapkan sebuah database di SQL Server dengan nama testing dan sebuah tabel bernama t_obat. Berikut penampakan tabel t_obat. (SQL Query dapat didownload di akhir postingan ini)


Sekarang buatlah project baru di VB.Net 2008 dan beri nama Test_datareader. Buatlah form dengan tampilan seperti dibawah ini dengan menggunakan 1 label, 2 button dan 1 listbox.


Ketikan kode berikut ini untuk form diatas. Dalam kode ini datareader digunakan untuk membaca data dari database dan ditampilkan ke listbox.

 Imports System.Data.SqlClient  
 Public Class Form1  
   Private Sub ButtonCallDataReader_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCallDataReader.Click  
     Dim connectionString As String = "Data Source=ZHENLONK-342572;Initial Catalog=testing;Integrated Security=True"  
     Dim koneksi As New SqlConnection(connectionString)  
     Using cmd As New SqlCommand  
       cmd.Connection = koneksi  
       cmd.CommandType = CommandType.Text  
       cmd.CommandText = "SELECT * FROM t_Obat"  
       Dim mydatareader As SqlDataReader = Nothing  
       Try  
         koneksi.Open()  
         mydatareader = cmd.ExecuteReader  
         While mydatareader.Read  
           ListBoxData.Items.Add(mydatareader(0) & " - " & mydatareader(1) & " - " & mydatareader(2))  
         End While  
       Catch ex As Exception  
         MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")  
       End Try  
     End Using  
   End Sub  
   Private Sub ButtonExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonExit.Click  
     Me.Close()  
   End Sub  
 End Class  

Anda bisa mendapatkan source code program diatas (bila diperlukan) pada akhir postingan ini, jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda.

Download disini

Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?

Cara Melakukan Paging Datagrid di VB.Net 2008

Diposting oleh T. Erick Sitorus | 02.38 | | 0 komentar »

Postingan kali ini mengenai pengaturan data yang ditampilkan berdasarkan halaman per halaman atau paging data. Konsep ini umum kita temui terutama saat menampilkan data dalam jumlah hingga ratusan atau ribuan data. Tentu tidak mungkin kita menampilkan seluruh data tersebut dalam 1 halaman sekaligus.

Solusinya dengan membagi data menjadi beberapa halaman, disini saya akan mencontohkan konsep paging data. Siapkan sebuah database bernama testing dan buat table t_Obat. Berikut penampakan tabelnya.


Buat project baru di VB.Net 2008 beri nama DGPaging dan buat sebuah form untuk menampilkan data. Form yang saya buat tampilannya seperti berikut ini:


Pada contoh diatas, ada 6 data yang ditampilkan per halaman. Berikut ini adalah kode program secara keseluruhan. Anda juga dapat mendownload source code program di akhir postingan ini.
 Imports System.Data.SqlClient  
 Public Class FormDG  
   Dim PA As SqlDataAdapter  
   Dim DS As DataSet  
   Dim scrollVal, ShowData, TotalData As Integer  
   Private Sub Buttonload_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonLoad.Click  
     Dim connectionString As String = "Data Source=ZHENLONK-342572;Initial Catalog=testing;Integrated Security=True"  
     Dim sql As String = "SELECT * FROM t_Obat"  
     Dim koneksi As New SqlConnection(connectionString)  
     PA = New SqlDataAdapter(sql, koneksi)  
     DS = New DataSet()  
     koneksi.Open()  
     PA.Fill(DS, "Obat")  
     TotalData = DS.Tables("Obat").Rows.Count()  
     DS.Clear()  
     PA.Fill(DS, scrollVal, ShowData, "Obat")  
     koneksi.Close()  
     DGObat.DataSource = DS  
     LabelPage.Text = "1"  
     LabelTotal.Text = Math.Ceiling(TotalData / ShowData)  
     DGObat.DataMember = "Obat"  
     ButtonNext.Enabled = True  
     ButtonPrev.Enabled = True  
   End Sub  
   Private Sub ButtonNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonNext.Click  
     If Not LabelPage.Text = Math.Ceiling(TotalData / ShowData) Then  
       scrollVal = scrollVal + ShowData  
       If scrollVal > TotalData Then  
         scrollVal = Math.Floor(TotalData / ShowData) * ShowData  
       End If  
       LabelPage.Text = Val(LabelPage.Text) + 1  
     End If  
     DS.Clear()  
     PA.Fill(DS, scrollVal, ShowData, "Obat")  
   End Sub  
   Private Sub ButtonPrev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPrev.Click  
     scrollVal = scrollVal - ShowData  
     If scrollVal <= 0 Then  
       scrollVal = 0  
     End If  
     If Not LabelPage.Text = "1" Then LabelPage.Text = Val(LabelPage.Text) - 1  
     DS.Clear()  
     PA.Fill(DS, scrollVal, ShowData, "Obat")  
   End Sub  
   Private Sub FormDG_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load  
     ShowData = 6  
     LabelPage.Text = "n"  
     LabelTotal.Text = "m"  
   End Sub  
   Private Sub ButtonExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonExit.Click  
     Me.Close()  
   End Sub  
 End Class  
Bila anda hendak download source code program diatas, jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda.
Download disini

Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?

Postingan kali ini kita akan mengeksport data yang ada di Datagrid menjadi file XML. File XML sekarang umum digunakan untuk pertukaran data di Internet karena pemrosesannya yang mudah dan cepat.

Langsung to the point aja...

Seperti biasa, persiapkan sebuah database bernama testing dan buat table tbl_konsumen. Berikut penampakan tabel tbl_konsumen. (Script SQL query dapat didownload di akhir postingan).



Sekarang buat project baru di VB.Net 2008 dan beri nama createXML. Buat form dengan tampilan seperti berikut ini :



Untuk proses input - edit - delete data saya anggap anda sudah paham, pembahasan tentang ini ada di postingan sebelumnya yaitu Simple Proses Input - Edit - Delete Data Dengan VB.Net 2008 dan SQL Server 2008.

Sekarang fokus di tombol Create XML (lihat gambar diatas). Untuk kode eksport data di datagrid ke XML saya menggunakan ini :
 Sub XMLFile()  
   With FormXML  
     Try  
       If My.Computer.FileSystem.FileExists("../../XML/datakonsumen.xml") Then  
         MsgBox("File XML Sudah Ada..!")  
         Exit Sub  
       Else  
         Dim settings As New XmlWriterSettings()  
         settings.Indent = True  
         settings.IndentChars = "  "  
         Using writer As XmlWriter = XmlWriter.Create("../../XML/datakonsumen.xml", settings)  
           writer.WriteComment("XML Files datakonsumen")  
           writer.WriteStartElement("dataset")  
           writer.WriteStartElement("DataKonsumen")  
           writer.WriteComment("Start datakonsumen")  
           For rowIndex As Integer = 0 To .DataGridKonsumen.Rows.Count - 1 Step 1  
             writer.WriteElementString("perusahaan", .DataGridKonsumen.Item(0, rowIndex).Value)  
             writer.WriteElementString("contactperson", .DataGridKonsumen.Item(1, rowIndex).Value)  
             writer.WriteElementString("phone", .DataGridKonsumen.Item(2, rowIndex).Value)  
             writer.WriteElementString("alamat", .DataGridKonsumen.Item(3, rowIndex).Value)  
           Next  
           writer.WriteComment("End datakonsumen")  
           writer.WriteEndElement()  
           writer.WriteEndElement()  
           writer.WriteEndDocument()  
           writer.Flush()  
           writer.Close()  
           MsgBox("File XML Data Konsumen Berhasil dibuat..!")  
         End Using  
       End If  
     Catch ex As Exception  
       MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")  
     End Try  
   End With  
 End Sub  
Lokasi file XML ("../../XML/datakonsumen.xml") akan ditempatkan di folder XML, berada di path yang sama dengan file-file penyusun obyek VB.Net. Bila anda pernah menggunakan VB 6, maka alamat ("../../XML/datakonsumen.xml") sama seperti menggunakan app.path.

Source code program dapat didownload di akhir postingan ini. Jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda (lihat di file ModulKoneksi.vb.)

Download disini

Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?

Regular Expression atau Regex memungkinkan anda menguraikan teks secara mudah untuk mengikuti suatu pola teks tertentu. Regex umumnya digunakan untuk memvalidasi suatu inputan / data agar sesuai dengan pola yang diinginkan. Dalam .NET Framework disediakan namespace System.Text.RegularExpressions untuk mendukung penggunaan Regex.

Contoh sederhana misalkan kita ingin data inputan berupa data numerik, maka ekspresinya [0-9] atau \d. Jika kita ingin data inputan berupa huruf kapital dan angka, maka ekspresinya [0-9A-Z].

Berikut adalah contoh syntax perintah dari Regex:
1. [abc] => hanya karakter a,b dan c saja yang diijinkan.
2. [^abc] => karakter apa saja boleh kecuali a,b dan c.
3. [0-9] => karakter yang diijinkan angka 0 hingga 9, sama dengan \d.
4. \w => Semua karakter diijinkan, sama dengan [a-zA-Z_0-9].
5. \W => Kebalikan dari \w. Hanya karakter simbol yang diijinkan.
6. \d => Karakter numerik yang diijinkan
7. \D => Karakter numerik tidak diijinkan
8. \n => baris baru
9. \t => Tab
10. * => Terdapat 0 atau lebih karakter yang sesuai.
11. + => Terdapat minimal 1 atau lebih karakter yang sesuai.
12. ? => Terdapat 0 atau 1 karakter yang sesuai.
13. +? => Terdapat pengulangan setidaknya 1 kali.
14. {n} => Terdapat sebanyak n kecocokan dalam string.
15. {n,m} => Terdapat minimal n kecocokan namun tidak lebih dari m.
16. . => Tanda Titik berarti Semua Karakter diijinkan.

Sebenarnya masih ada lagi contoh syntaxnya, namun diatas adalah yang umum digunakan. Setiap ekspresi Regex harus diawali dengan ^ dan diakhiri $.

Berikut contoh ekspresi Regex untuk tahun kelahiran yang valid :

 "^(18)|(19)|(20)\d\d$"  

Penjelasan :
^ berarti awal dari ekspresi
(18)|(19)|(20) berarti tahun diawali oleh angka 18, 19 atau 20
\d berarti diikuti karakter numerik
$ berarti akhir dari ekspresi

Sekarang saya akan coba menggunakan metode Regex ini untuk validasi data. Kali ini saya membuat sebuah Form seperti berikut ini :


Contoh diatas adalah contoh validasi nilai tahun kelahiran, email dan URL menggunakan Regex serta plus metode penggunaan Regex untuk replace string.

apabila user memasukkan nilai secara sembarang, maka akan tampil message yang menyatakan  tidak valid. Berikut ini contoh kode untuk Regex valid tahun :

 Function ValidTahun(ByVal str As String)  
   Return Regex.IsMatch(str, "^(18)|(19)|(20)\d\d$")  
 End Function  

Kalau ada yang mau source code lengkap program diatas (ngarep, hehehe) dapat didownload di akhir postingan ini.

Download disini

Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?

Daftar Program PTC Terpercaya

Diposting oleh T. Erick Sitorus | 06.50 | | 0 komentar »

PTC (Paid To Click) memang suatu bisnis internet yang cocok dijalankan oleh para pemula bisnis internet karena cara kerjanya yang sangat mudah. Anda tinggal klik iklan-iklan yang tersedia dan menunggu l0-30 detik, hingga iklan terbuka dan uang secara otomatis akan bertambah ke account Anda. Memang tidak banyak, hanya Rp 50 untuk setiap klik, namun lumayan dan tidak ada ruginya pula.

Anda tertarik untuk memulai bisnis PTC? Silahkan klik daftar PTC yang ada di bawah ini. Saran saya, ikutilah semua program PTC berikut karena yang dibawah ini saya rekomendasikan dan dapat dipercaya dibanding PTC-PTC lain.































Anda bisa bertanya kepada saya tentang Program PTC dengan menulis comment dibawah postingan ini atau email ke salvopaverani@gmail.com

Bila kita membuat aplikasi desktop yang memakai database, tentu kita akan bekerja dengan proses Input, Edit dan Delete data. Nah, di postingan kali ini kita akan membuat contoh proses tersebut dengan memakai database SQL Server 2008.

Seperti biasa siapkan dulu contoh tabel database yang akan digunakan. Sebagai contoh kita akan bermain dengan nama-nama obat. Nama databasenya testing dan nama tabelnya obat. Berikut penampakan tabel obat : (Script SQL query dapat didownload di akhir postingan).


Buat Project baru di VB.Net 2008 dab berinama ProsesDataObat. Berikut tampilan Tab Solution Explorernya :


Sebagai awal, rename form1 menjadi FormObat. Kira-kira form yang saya buat seperti berikut ini :


Sekarang buatlah File modul dengan nama ModulKoneksi.vb, file ini tentu untuk koneksi database. Berikut adalah contoh script koneksinya :

 Public koneksi As SqlConnection = Nothing  
 Public cmd As SqlCommand = Nothing  
 Public Sub koneksiDB()  
   Dim connString As String = "Data Source=ZHENLONK-342572;Initial Catalog=testing;Integrated Security=True"  
   Try  
     koneksi = New SqlClient.SqlConnection(connString)  
     koneksi.Open()  
     koneksi.Close()  
   Catch ex As Exception  
     MessageBox.Show("Database Connection Error : " & ex.Message)  
   End Try  
 End Sub  

Pada Form buat proses untuk load data ke FormObat. Intinya Pada saat Form Load, maka data di database akan di Load ke FormObat. Berikut ini contohnya:

 Sub getDataFromDB(ByVal i As Integer)  
   koneksiDB()  
   Try  
     koneksi.Open()  
     DS_Obat = New DataSet  
     sql = "SELECT * FROM obat"  
     DA_Obat.SelectCommand = New SqlClient.SqlCommand(sql, koneksi)  
     DA_Obat.Fill(DS_Obat, "obat")  
     RowNumber = i  
     koneksi.Close()  
   Catch ex As Exception  
     MessageBox.Show(ex.Message)  
   End Try  
 End Sub  
 Sub DaftarObat()  
   If DS_Obat.Tables("obat").Rows.Count = 0 Then  
     MsgBox("Data Obat di Database Masih Kosong", MsgBoxStyle.Exclamation, "Pesan Program")  
     Exit Sub  
   End If  
   Me.TextBoxKodeObat.Text = DS_Obat.Tables("obat").Rows(RowNumber)("kd_obat").ToString  
   Me.TextBoxNamaObat.Text = DS_Obat.Tables("obat").Rows(RowNumber)("nama").ToString  
   Me.ComboBoxJenisObat.Text = DS_Obat.Tables("obat").Rows(RowNumber)("jenis").ToString  
   Me.TextBoxStok.Text = DS_Obat.Tables("obat").Rows(RowNumber)("stok").ToString  
   Me.TextBoxSatuan.Text = DS_Obat.Tables("obat").Rows(RowNumber)("satuan").ToString  
   Me.TextBoxHargaBeli.Text = DS_Obat.Tables("obat").Rows(RowNumber)("hargabeli").ToString  
   Me.TextBoxHargaJual.Text = DS_Obat.Tables("obat").Rows(RowNumber)("hargajual").ToString  
 End Sub  

Berikutnya adalah tombol operasi data, namun untuk ini saya membuat 1 file modul khusus yaitu ModulFormObat.vb yang khusus untuk kode Operasi data (Lihat Solution Explorer). Pertama input data. Berikut adalah kode input data yang saya gunakan.

 Sub SaveData()  
   With FormObat  
     Try  
       If .TextBoxNamaObat.Text = "" Then MsgBox("Nama Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       If .TextBoxStok.Text = "" Then MsgBox("Stok Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       If .TextBoxHargaBeli.Text = "" Then MsgBox("Harga Beli Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       If .TextBoxHargaJual.Text = "" Then MsgBox("Harga Jual Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       sql = "INSERT INTO obat VALUES ('" & .TextBoxKodeObat.Text & "', '" & .TextBoxNamaObat.Text & "', '" & .ComboBoxJenisObat.Text & "', '" & .TextBoxSatuan.Text & "', '" & .TextBoxStok.Text & "', '" & .TextBoxHargaBeli.Text & "','" & .TextBoxHargaJual.Text & "')"  
       cmd = New SqlClient.SqlCommand(sql)  
       cmd.Connection = koneksi  
       koneksi.Open()  
       cmd.ExecuteNonQuery()  
       koneksi.Close()  
       MsgBox("Data Obat " & .TextBoxNamaObat.Text & " Berhasil Disimpan", MsgBoxStyle.Information, "Pesan Program")  
       .LoadData()  
     Catch ex As Exception  
       MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")  
     End Try  
   End With  
 End Sub  

Kedua untuk Edit data, berikut adalah contoh kode yang saya gunakan.

 Sub EditData()  
   With FormObat  
     Try  
       If .TextBoxNamaObat.Text = "" Then MsgBox("Nama Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       If .TextBoxStok.Text = "" Then MsgBox("Stok Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       If .TextBoxHargaBeli.Text = "" Then MsgBox("Harga Beli Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       If .TextBoxHargaJual.Text = "" Then MsgBox("Harga Jual Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub  
       sql = "UPDATE obat SET nama='" & .TextBoxNamaObat.Text & "', " _  
                  & "jenis = '" & .ComboBoxJenisObat.Text & "', " _  
                  & "satuan = '" & .TextBoxSatuan.Text & "', " _  
                  & "stok = '" & .TextBoxStok.Text & "', " _  
                  & "hargabeli = '" & .TextBoxHargaBeli.Text & "', " _  
                  & "hargajual = '" & .TextBoxHargaJual.Text & "' " _  
                  & "WHERE kd_obat = '" & .TextBoxKodeObat.Text & "'"  
       cmd = New SqlClient.SqlCommand(sql)  
       cmd.Connection = koneksi  
       koneksi.Open()  
       cmd.ExecuteNonQuery()  
       koneksi.Close()  
       MsgBox("Data Obat " & .TextBoxNamaObat.Text & " Berhasil DiUpdate", MsgBoxStyle.Information, "Pesan Program")  
       .LoadData()  
     Catch ex As Exception  
       MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")  
     End Try  
   End With  
 End Sub  

Dan terakhir yaitu untuk Delete Data.

 Sub DeleteData()  
   With FormObat  
     Try  
       Dim hapus As Integer  
       Dim Sql As String  
       hapus = MsgBox("Anda Yakin Ingin Menghapus Data Obat " & .TextBoxNamaObat.Text & " ini?", MsgBoxStyle.OkCancel, "Info Program")  
       Select Case hapus  
         Case vbCancel  
           Exit Sub  
         Case vbOK  
           Sql = "DELETE FROM obat WHERE kd_obat = '" & .TextBoxKodeObat.Text & "'"  
           cmd = New SqlClient.SqlCommand(Sql)  
           cmd.Connection = koneksi  
           koneksi.Open()  
           cmd.ExecuteNonQuery()  
           koneksi.Close()  
           MsgBox("Data Berhasil Dihapus", MsgBoxStyle.Information, "Info Program")  
           .LoadData()  
       End Select  
     Catch ex As Exception  
       MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")  
     End Try  
   End With  
 End Sub  

Sedangkan untuk navigasi datanya, berikut adalah contoh kode yang saya gunakan.

 Private Sub ButtonFirst_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonFirst.Click  
   RowNumber = 0  
   Me.DaftarObat()  
 End Sub  
 Private Sub ButtonPrev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPrev.Click  
   If RowNumber = 0 Then  
     MsgBox("Anda Berada di Data Paling Awal", MsgBoxStyle.Information, "Info Program")  
   Else  
     RowNumber -= 1  
     Me.DaftarObat()  
   End If  
 End Sub  
 Private Sub ButtonNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonNext.Click  
   If RowNumber = DS_Obat.Tables("obat").Rows.Count - 1 Then  
     MsgBox("Anda Berada di Data Paling Akhir", MsgBoxStyle.Information, "Info Program")  
   Else  
     RowNumber += 1  
     Me.DaftarObat()  
   End If  
 End Sub  
 Private Sub ButtonLast_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonLast.Click  
   RowNumber = DS_Obat.Tables("obat").Rows.Count - 1  
   Me.DaftarObat()  
 End Sub  

Untuk tombol Search buat Form baru dengan nama FormDataGrid. Berikut adalah tampilan Formnya :



Jadi, saat data terlalu banyak, user bisa memilih menggunakan Datagrid dengan klik pada cell atau double klik di baris data yang anda inginkan. Berikut adalah contoh kode saat user melakukan klik untuk pemilihan data:

 Private Sub DataGridFullData_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridFullData.DoubleClick  
   FormObat.getDataFromDB(DataGridFullData.CurrentCell.RowIndex)  
   FormObat.DaftarObat()  
   Me.Close()  
 End Sub  

Anda sebenarnya bisa download source code program di akhir artikel ini. Jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda (lihat di ModulKoneksi.vb.)

Download Disini

Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?

Beberapa hari lalu di Warnet dekat kampus, saya kaget Flashdisk Jetflash saya telah disusupi oleh file tidak dikenal yang saat itu saya sebut Virus Shortcut + Recycler.

Virus ini membuat 4 file yang bernama Copy of Shortcut to (1).lnk, Copy of Shortcut to (2).lnk, Copy of Shortcut to (3).lnk dan Copy of Shortcut to (4).lnk. Virus ini juga membuat folder Recycler yang berisi folder bernama acak. Folder acak tersebut juga diisi oleh file-file acak yang otomatis dibuat secara terus menerus sehingga membuat komputer terasa lambat. Berikut penampakannya :



Dengan sikap sok jagoan saya coba menantang virus ini dengan mencolok flashdisk terinfeksi itu ke komputer rumah, otomatis virus pun menjalar ke komputer.

Besoknya saya install NO*32 dan virus pun terdeteksi sebagai Ramnit, ternyata NO*32 tidak mampu membersihkan virus ini, ia hanya menghapus file yang terinfeksi virus.

Virus ternyata bisa diakali dengan baca file autorun.inf dan rename nama file tujuan. Lalu buat file .exe lain dengan nama file tujuan virus tadi. Otomatis saat flashdisk dicolok ia akan mengeksekusi file .exe buatan kita. Namun virus masih eksis, ditandai saat saya colok flashdisk kosong maka Flashdisk terinfeksi.

Untuk antisipasi saya pun mengimport file backup registry dan benar saja, virus masih eksis. Waduuh...

Saya coba pakai Smad**, hasilnya system scan mendeteksi ada registry value yang dicurigai yaitu di HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\ dengan value name Userinit dan value yang dicurigai adalah path C:\Program Files\WaterMark.exe.

Benar saja, pada properties file WaterMark.exe disebut file dibuat dengan tanggal kemarin. Ini dia pembuat masalahnya.

File ini tidak bisa dihapus karena sedang active. Solusi berikutnya panggil Task Manager dan ternyata tidak ada nama proses WaterMark.exe. Terpaksa browsing internet untuk cari cara menghapusnya.

Ketemu, ternyata nama prosesnya svchost.exe yang usernamenya pakai nama komputer kita. Benar saja WaterMark.exe bisa dihapus. Namun masalah belum selesai, saat komputer restart si WaterMark.exe eksis lagi. Mesti browsing lagi...

Solusinya ternyata dengan membuat folder WaterMark.exe sebagai tandingan di C:\Program Files\Microsoft. Bila perlu buat folder con didalam folder WaterMark.exe agar tidak bisa asal dihapus / ditimpa. Berikut kronologinya :

1. Melalui Task Manager, hentikan proses svchost.exe yang usernamenya nama komputer.
2. Hapus file WaterMark.exe di path C:\Program Files\Microsoft\
3. Panggil Command Prompt dan arahkan ke path C:\Program Files\Microsoft\
4. Ketikan md WaterMark.exe lalu Enter
5. Ketikan lagi cd WaterMark.exe
6. Ketikan lagi md con\\

Selesai... Virus Ramnit (WaterMark.exe) atau Shortcut + Recycler (versi saya) sudah tidak eksis lagi.

Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?

[ Situs ini telah ditutup ]