Bukti Pembayaran Donkeymails

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

Situs Donkeymails ternyata membayar saya, walaupun hanya sebesar $1 namun ini penting untuk menjaga kepercayaan agar usaha saya nge-klik disitus ini tidak sia-sia.

Di situs ini anda cukup daftar sebagai member lalu klik iklan yang tersedia di situs ini, selain itu juga anda akan dibayar untuk membaca setiap email yang mereka sediakan, mudah kan.

Ini bukti pembayaran dari Donkeymails.

Terima kasih donkeymails.

Bukti Pembayaran Pertama dari Incentria

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

Incentria adalah situs yang sama adminnya dengan Clicksia sehingga banyak yang menyebut kedua situs ini kembar. Hebatnya lagi keduanya juga legit alias benar-benar membayar... Ini bukti pembayaran pertama saya dari Incentria.



Anda berminat bergabung di situs ini, bisa daftar dengan klik banner dibawah ini...

Bukti Pembayaran Pertama dari Clicksia

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

Ini adalah bukti pembayaran pertama dari Clicksia, ini membuktikan bahwa Clicksia memang situs yang benar-benar membayar seperti yang dikatakan banyak orang... Pembayaran saya terima sekitar 5 hari setelah saya request Cashout. Ini buktinya :


Untuk yang ingin bergabung disini dijamin pasti dibayar karena Clicksia adalah situs Aurora yang terpercaya. Anda berminat, bisa daftar dengan klik banner dibawah ini...

Bukti Pembayaran dari Ipanelonline

Diposting oleh T. Erick Sitorus | 06.27 | | 3 komentar »

Untuk yang belum tahu id.ipanelonline bisa klik disini, kurang lebih situs id.ipanelonline adalah situs yang membayar kita dengan hanya mengisi survey yang mereka sediakan.

Bagi yang belum percaya dan minta bukti pembayaran, ini saya sediakan. Ini adalah bukti pembayaran pertama sebesar $5.85 atau sekitar Rp 50.000 ke akun paypal saya.


 Sedangkan ini adalah bukti pembayaran ke-2 sebesar $5.87 (Rp 50.000) dari ipanelonline.


Kalau yang ini pembayaran ke-3 dari Ipanelonline sebesar $5.85 (Rp 50.000) ...

Ternyata Ipanelonline masih membayar saya hingga pembayaran ke-4, yang ini sebesar $2.34 (Rp 20.000)

Yang ini pembayaran ke-5 dari Ipanelonline sebesar $5.81 (Rp 50.000) ...

Sekarang dengan bukti-bukti diatas, apa anda masih belum percaya..?

Beberapa waktu lalu saya membuat aplikasi yang menggunakan laporan Crystal Report, dimana datanya diambil dari SQL Server komputer saya. Laporan tersebut menggunakan kombinasi 5 tabel database sekaligus dan menggunakan banyak field dan grouping data didalamnya.

Masalah muncul saat saya ingin memindahkan aplikasi tersebut ke Laptop orang lain, dimana nama Server SQL-Server di komputer saya dan di laptop itu berbeda. Databasenya sendiri sudah saya copy ke laptop tersebut.

Otomatis saya harus mengubah setting nama Servernya. Untuk koneksi di Form, mungkin saya tinggal mengganti nama servernya di file khusus untuk modul koneksi. Bagaimana dengan koneksi database di laporan yang menggunakan Crystal Report..? Kondisinya seperti gambar berikut..!


Gambar diatas adalah kotak dialog Database Expert dan saya harus merubah Nama Server tersebut dengan nama server di laptop tadi agar aplikasi saya bisa berjalan di Laptop itu.

Berikut ini adalah cara yang saya lakukan.
1. Melalui Field Explorer, klik kanan di Database Fields pilih Set Datasource Location.
2. Akan muncul kotak dialog Set Datasource Location.
3. Klik tanda + pada tree di bagian properties (dibawah nama server).
4. Klik 2 kali pada Data Source dan isikan nama server yang baru, lihat gambar.


Sekarang nama server sudah berhasil diubah.

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

Ingin Dapat Uang Dengan Hanya Menjawab Survey..?

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

Menjawab survey dapat uang..? Ya, mudah sekali bukan..?
Anda akan mendapat uang hanya dengan menjawab survey yang diberikan kepada anda.

Jangan berpikir jauh-jauh dulu, pertama-tama anda perlu mendaftar sebagai anggota. Caranya klik banner dibawah ini dan isi semua pertanyaan yang diajukan.


Setelah mendaftar, anda akan langsung mendapat 20 poin. Cari daftar survey di ruang anggota, setiap survey punya poin tertentu yang nantinya diakumulasikan.

Semakin banyak survey yang anda jawab maka semakin banyak uang yang anda peroleh. Sebagai acuan, perhatikan ketentuannya sebagai berikut :

1. Anda mengumpulkan 220 poin, dibayar Rp 20.000
2. Anda mengumpulkan 520 poin, dibayar Rp 50.000
3. Anda mengumpulkan 1020 poin, dibayar Rp 100.000

Pembayaran dapat dilakukan melalui transfer bank atau Paypal, Ayo tunggu apa lagi..? Langsung daftar sekarang...

Klik disini jika ingin lihat bukti pembayaran dari  ipanelonline.

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 ]


Tips Optimasi Query SQL Server

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

Optimasi dapat berarti suatu cara untuk memperoleh kinerja maksimum. Maka Optimasi Query SQL Server berarti suatu cara atau tips untuk memperoleh kinerja maksimum dari Database SQL Server saat mengeksekusi perintah Query yang kita berikan.

Setelah berkelana menjelajahi puluhan tutorial di Internet yang saya dapatkan, saya coba share beberapa trik untuk optimasi Database SQL Server kita, antara lain :

1. Menentukan Tipe Data yang Tepat.
Hal ini sebenarnya gampang-gampang susah, perlu ketelitian dalam menganalisa tipe dari data-data yang hendak kita kelola. Sebagai contoh, Kita harus mengetahui kapan harus menggunakan tipe data char atau varchar. Keduanya sama-sama tipe karakter, bedanya char ukuran penyimpanannya tetap (fixed), sedangkan varchar ukuran penyimpanannya sesuai dengan panjang karakter data.

2. Hindari Allow Null
Kurangi penggunaan Allow Null, sebagai gantinya berikan nilai default bila field kosong. Nilai null mengonsumsi byte tambahan sehingga menambah beban saat akses query.

3. Hindari SELECT *
Perintah SELECT sangat umum digunakan, perintah SELECT dengan (*) akan mengakses seluruh field di suatu tabel. Bila tabel anda punya banyak field dan anda hanya memerlukan sebagian fieldnya saja, ada baiknya anda menentukan field yang hendak anda proses daripada menggunakan tanda (*).

4. Batasi ORDER BY
Pengurutan akan menambah konsekuensi menambah beban query karena akan menambah 1 proses yaitu sorting. Karena itu gunakan perintah ORDER BY hanya jika anda memerlukannya. Jika memungkinkan lakukan proses Pengurutan / Sorting pada aplikasi, bukan di Query.

5. Gunakan JOIN daripada Subquery
Daripada anda menumpuk beberapa Query sekaligus yang saling berhubungan, lebih baik anda menggunakan JOIN untuk menghasilkan performa yang lebih cepat.

6. Batasi Record yang dipanggil
Perhatikan bila table anda memiliki ratusan atau ribuan data, jangan memanggil seluruh data sekaligus. Disarankan anda melakukan Paging dengan membatasi Record yang keluar dengan menggunakan perintah TOP didalam perintah SELECT. Contoh : SELECT TOP 100... (sama dengan perintah LIMIT pada Mysql)

7. Link Gambar di Database
Ada pepatah mengatakan sebuah gambar bermakna sejuta kata namun tidak berarti anda harus menyimpan gambar tersebut di database, akan lebih optimal bila anda menyimpan path / lokasi dan nama file gambarnya saja.

Pasti masih banyak cara lain yang tidak mungkin dibahas semuanya disini. Mungkin anda juga tidak terlalu melihat perbedaan yang signifikan jika anda mengabaikan tips-tips diatas terlebih jika spesifikasi komputer / server anda cukup canggih untuk kinerja eksekusi program yang cepat. Namun anda disarankan untuk menekan penggunaan memory untuk optimasi kinerja Database terlebih bila anda bekerja dengan aplikasi yang besar.

Apabila kita berbicara tentang Rich Text maka itu berarti suatu Text Editor yang memiliki fasilitas format text yang banyak. Text Editor dalam hal ini harus lebih kaya fungsi dibanding Text Editor sederhana seperti Notepad.

Kita coba membuatnya di VB.Net 2008 dan ini adalah contoh Rich Text Editor (seperti Wordpad di Windows). Menu menggunakan icon-icon (seperti toolbar) yang digunakan untuk memformat text pada textpad.

Berikut adalah penampakan output program Rich Text Editor yang dimaksud. (mirip dengan Wordpad)


Program diatas sebenarnya tidak menggunakan object RichTextBox yang disediakan di ToolBox, namun melakukan scripting untuk membuat objectnya. (code saya temukan saat browsing di Google)

Untuk yang ingin download program dapat mengklik link download di akhir program.

Download Disini

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

Membuat Form Login di VB.Net 2008

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

Anda pasti tahu kegunaan Form Login, kira-kira untuk melakukan authentication terhadap user yang hendak menggunakan suatu aplikasi.

Kali ini kita akan membuat Login Form, pertama-tama siapkan di Sql Server sebuah database testing dan tabel bernama tbl_user. Kurang lebih berikut penampakan tbl_user.


Sql code untuk tabel diatas dapat didownload di akhir postingan. Selanjutnya buat Project baru di VB.Net 2008 anda dan buat form login seperti berikut ini :


Buat juga 1 form yang akan dituju bila proses login berhasil. Tampilan form tersebut bebas saja. Berikut adalah kode untuk proses login yang akan kita gunakan :

 cmd.Connection = koneksi  
 cmd.CommandText = "SELECT * FROM tbl_user WHERE myuser = '" & TextBoxUser.Text & "' and mypass = '" & TextBoxPass.Text & "'"  
 dtReader = cmd.ExecuteReader  
 If (dtReader.Read()) Then  
   Utama.Show()  
 Else  
   MsgBox("Maaf, Username dan Password tidak Ditemukan....!", MsgBoxStyle.OkOnly, "Login Gagal")  
 End If  

Anda juga dapat mendownload sample kode program login ini diakhir postingan ini. Jangan lupa untuk mengganti nama server SQL Servernya 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 tentang gambar, yaitu cara save image ataupun load image di VB.Net 2008. Gambar dalam hal ini akan ditampilkan melalui PictureBox.

Pertama-tama, di SQL Server siapkan sebuah table bernama tbl_img (nama database = testing).


Data di tabel hanya contoh, boleh diabaikan. Tabel tbl_img ini untuk menyimpan nama file dengan Path gambar yang kita akan gunakan.

Langsung saja buat sebuah project baru di VB.Net dan rancang form seperti berikut ini :


Catatan : Disamping objek yang terlihat diatas, saya juga menggunakan OpenFileDialog.

Anda bisa download sample programnya (beserta Sql Code utk database) di akhir postingan.

Logika programnya sederhana, awalnya memilih gambar melalui tombol Load Picture lalu save datanya ke database dengan tombol Save Picture.

Berikut adalah contoh Load File Image :
 OpenFileDialog1.Filter = "JPG Files (*.jpg)|*.jpg|JPEG Files (*.jpeg)|*.jpeg|GIF Files (*.gif)|*.gif|PNG Files (*.png)|*.png|BMP Files (*.bmp)|*.bmp|TIFF Files (*.tiff)|*.tiff"  
 If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then  
    PictureBox1.Image = New Bitmap(OpenFileDialog1.FileName)  
    PictureBox1.SizeMode = PictureBoxSizeMode.CenterImage  
 End If  

dan berikut untuk Save (Nama file & Path) ke Database :
 Dim cmd As SqlCommand = New SqlCommand("INSERT INTO tbl_img (gambar, alamat) VALUES ('" & TextBoxFileName.Text & "', '" & PathFile & "')", koneksi)  
 cmd.CommandType = CommandType.Text  
 Dim DReader As SqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)  
Untuk mempermudah anda bisa Download Program disini

Jangan lupa untuk mengganti nama server SQL Servernya dengan nama server SQL Server di komputer / laptop anda.

Postingan kali ini yaitu cara mengisi value dari Combobox yang value-nya berasal dari database. Pertama-tama tentu menyiapkan tabelnya di SQL Server, sebagai contoh saya menggunakan database testing dan tabel bernama tbl_obat. Berikut penampakannya.


Untuk SQL Code dapat didownload di akhir postingan. Sekarang buat project baru di VB.Net 2008 dan buat form seperti berikut ini.


Secara sederhana, berikut adalah kode mengisi ComboBox dengan data dari Database.
   Dim query As String = "SELECT * FROM tbl_obat"  
   Dim DA = New SqlDataAdapter(query, koneksi)  
   Dim DS = New DataSet  
   DA.Fill(DS, "tbl_obat")  
   With ComboBox1  
     .DataSource = DS.Tables("tbl_obat")  
     .DisplayMember = "obat"  
     .ValueMember = "id"  
     .SelectedIndex = 0  
   End With  
Untuk contoh Source Code Program beserta SQL Code dapat didownload Disini.

Jangan lupa untuk mengganti nama server SQL Servernya dengan nama server SQL Server di komputer / laptop anda.

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

Postingan kali ini masih tentang membuat laporan dengan Crystal Report yang datanya ditentukan berdasarkan tanggal yang diinput.

Langsung saja, buat database SQL Server baru bernama testing dan buat tabel bernama beliObat, berikut penampakan tabelnya. (SQL Query dapat didownload bersama program di akhir postingan)


Buat project baru di VB.Net 2008 dan berinama laporan. Buat File Laporan baru dengan Crystal Report (Project - Add New Item - [Reporting] - Crystal Report) dan berinama myreport.rpt. Pada kotak dialog Crystal Report Gallery, pilih saja As a Blank Report.

Tampilkan Field Explorer (bila tidak muncul, panggil melalui menu Crystal Report - Field Explorer). Melalui Field Explorer klik kanan Database Fields dan pilih Database Expert, lalu pada Tree View pilih Create New Connection - OLE DB (ADO) lalu pilih Microsoft OLE DB Provider for SQL Server dan klik Next. Isikan konfigurasi di SQL Server anda dan pilih database testing, Klik Next dan Finish.

Akan tampil kotak dialog Database Expert, pada bagian Selected Tables isikan dengan table beliObat yang kita buat tadi dan klik OK. Lihat Gambar.


Kita perlu parameter tanggal awal dan tanggal akhir sebagai data input ke Crystal Report. Melalui Field Explorer, klik kanan Parameter Fields dan pilih New. Pada Parameter Field, isikan name dengan awal. Lihat Gambar.


Dengan cara yang sama buat parameter akhir.

Melalui Field Explorer, Klik tanda + pada Database Fields dan pindahkan field-field di tabel beliObat ke Form Laporan. Tampilan Form Laporan akan seperti berikut ini:

Untuk memasukkan parameter ke Crystal Report, klik kanan pada Form Laporan pilih selection Formula dan pilih Record dan ketikan syntax berikut:

   
 DateTimeValue({?awal}) <= DateTimeValue({beliObat.tgl_beli}) and DateTimeValue({beliObat.tgl_beli}) <= DateTimeValue({?akhir})  
   

Lihat gambar untuk lebih jelas.

 

Buat Form baru (Windows Form) berinama Formlaporan dan drag CrystalReport Viewer di Toolbox ke Form tersebut. Pada properties CrystalReport Viewer, isikan ReportSource dengan report yang kita buat tadi dan pada Properties Form, ubah Windowstate menjadi Maximized.

Sekarang pindah ke Form1, Buat inputan tanggal awal dan tanggal akhir dengan DateTimePicker. Pada properties DateTimePicker, ganti Format menjadi Custom dan CustomFormat menjadi yyyy-MM-dd. Lihat Contoh seperti berikut ini.


Isikan kode berikut pada tombol CREATE. Kode berikut ini untuk mengirim inputan tanggal ke Form Laporan Crystal Report.
   
 Formlaporan.myreport1.SetParameterValue("awal", DateTimePicker1.Text)  
 Formlaporan.myreport1.SetParameterValue("akhir", DateTimePicker2.Text)  
 Formlaporan.Show()  
   
Link download ada dibawah dan jangan lupa untuk mengganti nama server SQL Servernya dengan nama server SQL Server di komputer / laptop anda.

Download Source Program

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