Kamis, 18 Desember 2014

Mempelajari VB.NET

Query Autonumber VB.Net




Autonumber merupakan sebuah program yang dibuat untuk membantu user menyusun dengan rapih suatu data menggunakan sistem per nomor.


Untuk kodingannya bisa di coppast di bawah ini, nanti saya akan memberi penjelasan dari setiap kodingannya.

    Public Function autonumber() As String
        Dim cmmd As OleDbCommand
        Dim dreader As OleDbDataReader
        Dim strTemp As String
        Dim nilaiauto As String
        Dim sql As String

        sql = "SELECT * FROM Pelanggan ORDER BY IdPelanggan DESC"
        cmmd = New OleDbCommand(sql, cnn)
        dreader = cmmd.ExecuteReader
        If dreader.HasRows = True Then
            dreader.Read()
            strTemp = Mid(dreader.Item("IdPelanggan"), 3, 10)
            nilaiauto = Val(strTemp) + 1
            autonumber = "IP" & Mid("0000000000", 1, 10 - nilaiauto.Length) & nilaiauto
        Else
            autonumber = "IP0000000001"
        End If
        dreader.Dispose()
        Return autonumber
    End Function

Penjelasan:

    Public Function autonumber() As String

    End Function
Penjelasan: supaya kita dapat mengakses function autonumber dimana saja dan kapan saja, dan kita dapat mengembalikan sebuah nilai (return value)

Dim cmmd As OleDbCommand
      Dim dreader As OleDbDataReader
      Dim strTemp As String
      Dim nilaiauto As String
      Dim sql As String
Penjelasan: kita sedang mendeklarasikan beberapa variable, seperti variable cmmd untuk melakukan eksekusi atau perintah. Variabel dreader untuk membaca data dari sebuah database yang terkoneksi ke dalam program. Variabel strTemp, nilaiauto, dan sql untuk mengolah data bertipe ‘teks’.

      sql = "SELECT * FROM Pelanggan ORDER BY IdPelanggan DESC"
Penjelasan: fungsi variabel sql untuk menampung query sql dimana kita melihat/mencari/memanggil/mengambil data di tabel Pelanggan berdasarkan IdPelanggan secara berurutan dari yang terbesar hingga yang terkecil (Z-A, 9-0).

     cmmd = New OleDbCommand(sql, cnn)
      dreader = cmmd.ExecuteReader
Penjelasan: fungsi cmmd sebagai instantiated object dari constructor class oledbCommand dengan parameter (Sintax SQL yang aktif, Connection yang aktif). Dan execute SQL sintak dengan perintah ExecuteReader (hanya menampung data dari hasil SQL ).

     If dreader.HasRows = True Then
            dreader.Read()
            strTemp = Mid(dreader.Item("IdPelanggan"), 3, 10)
            nilaiauto = Val(strTemp) + 1
            autonumber = "IP" & Mid("0000000000", 1, 10 - nilaiauto.Length) & nilaiauto
        Else
            autonumber = "IP0000000001"
        End If
Penjelasan: Kalau data dalam dReader hasil ekseskusi ada datanya, maka lakukan perintah dibawah. Membaca dreader. assignment variable strTemp dengan field IdPelanggan, mulai kolom ke 3 sebanyak 10 karakter. convert strTemp menjadi bentuk angka lalu hasilnya tambahkan 1. Kemudian assign hasilnya ke variable nilaiAuto. Nilaiauto.Length adalah berapa digit yang dimiliki oleh nilai auto. Misal angka 8, berarti lengthnya 1. Angka 10 berarti length nya 2, angka 102 lengthtnya 3. Mid(“000000000”,1,10, nilaiauto) artinya ambil jumlaha digit dari kolom ke 1, sampai karakter ke 10 dikurangi jumlah digit dari nilaiauto.length)

Hasilnya didepan ditampahkan “IP” dan dibelakangnya ditambahkan NilaiAutonya. (misalnya 1, 6, atau 11, atau 120).
kalau data dreader masih kosong maka, assign autonumber menjadi nilai dibawah (IP0000000001)..

     dreader.Dispose()
      Return autonumber
Penjelasan: fungsi dari variabel dreader akan di tutup, dan mengembalikan data ke query dari autonumber. Sepertinya ini mirip dengan looping.

Ya.. Mungkin sampai disini dulu, mohon maaf jika ada hal yang kurang jelas atau salah karena saya juga masih belajar, saya hanya tidak ingin ilmu yang saya miliki sia-sia begitu saja tanpa di amalkan. Kritik dan Saran anda sangat berguna bagi saya. Terima Kasih!
Ouh iya, satu lagi anda bisa memvariasikan query atau code diatas sesuka anda, jika Logika anda sudah jalan jangan hanya terpaku pada query yang saya berikan. Jangan sampai Sarjana Komputer (S.Kom) menjadi Sarjana Copy Paste (S.cp) hehehe :P

0 komentar:

Posting Komentar

Contact

Talk to us

This is your chance to email me right now. your interests, concerns and suggestions are important to me. Some of you may now planning idea anything Or, maybe you have an idea to share that will help I help you and others more effectively. Please share these ideas if you have. Suggestions convey to Us.

Address:

Tangerang Indonesia, Jl. Veteran Raya .

Work Time:

Monday - Saturday from 9am to 5pm

Email

Panjikumala9200@gmail.com