Visual Basic

Posted: 18 Januari 2011 in Pemrograman
Tag:, , ,

MS-Visual Basic merupakan bahasa pemrograman Object Oriented Programming (OOP), yaitu pemrograman yang berorientasi Object. MS-Visual Basic 6.0 adalah salah satu versi Ms-Visual Basic yang paling populer. Versi terbaru dari Ms-Visual basic lebih konsen pada penggunaan jaringan global dan membutuhkan spesifikasi hardware yang lebih tinggi dan mempunyai flatform yang sangat berbeda dengan versi 6.0 dan sebelumnya sehingga konversi tidak dapat dilakukan secara total. Dari pengamatan saya banyak aplikasi yang saya buat dengan versi 6.0 & 5 tidak dapat dikonversi oleh versi terbaru.

Untuk anda yang ingin memulai atau migrasi ke versi terbaru perlu mempertimbangkan kebutuhan dan spesifikasi hardware dan sesungguhnya belum begitu banyak kecanggihan yang ditawarkan microsoft dimanfaatkan dalam aplikasi bisnis khususnya di Indonesia, bahkan masih banyak perusahaan di Indonesia yang masih menggunakan aplikasi berbasis Dos. Sehingga penggunaan Visual Basic 6.0 masih akan bertahan sebagai bahasa pemrograman yang populer sampai beberapa tahun yang akan datang.

Dengan penggantian flatform artinya tidak sedikit yang perlu diperbaharui. Selain hardware juga software pendukung seperti server dan aplikasi server, database server dsb.  Misalnya Visual Studio 2005 yang di dalamnya adalah SQL Server 2005, tidak bekerja pada Windows server 2003 versi awal artinya untuk itu harus mengguprade Servernya juga.

 

KONEKSI VB DENGAN DATABASE

Untuk dapat mengakses suatu database dari visual basic, Anda harus membuat koneksi  ke database tersebut. Visual basic dapat menangani berbagai database, teks bakan worksheet excel. Terdapat beberapa cara yang tersedia untuk itu sesuai dengan database yang digunakan

Cara 1. Menggunakan Object ADO

Anda dapat menggunakan icon Adodc (Microsoft ActiveX Data Objects Data Control) pada toolbox. Jika pada toolbox tidak terdapat icon Adodc, Anda dapat menambahkannya dengan memilih menu Project, Components (Ctrl+T) lalu beri tanda pilih pada Microsoft ADO Data Control (OLEDB) dan klik Apply. Sekarang kita akan mencoba mengaitkan database Ms. Acess yang diberi nama Pembelian.mdb. Untuk itu, lakukan langkah-langkah sebagai berikut:

  1. Pilih menu File lalu New.
  2. Pilih VB Enterprise (Professional) Edition Controls.
  3. Klik OK.
  4. Klik ganda pada folder Forms pada jendela proyek lalu klik ganda pada Form 1 sampai muncul tampilan form.
  5. Klik icon Adodc pada toolbox.
  6. Klik dan seret pada jendela form, sehingga muncul tampilan seperti Gb. Objek yang tergambar dalam form disebut objek data.
  7. Tentukan properti data sebagai berikut:
    1. Name db         Pembelian
    2. Caption           Data Barang
    3. EOFAcction    2
  8. Tentukan properti ConnectionString dengan cara mengklik tombol … pada kolom ConnectionString sehingga muncul tam pilan seperti pada Gb
  9. Pilih OptionButton pada Use Connection String lalu klik Build sehingga muncul tampilan seperti pada Gb
  10. Pilih Microsoft Jet 4.0 OLEDB Provider lalu klik Next.
  11. Pilih (dengan mengklik tombol …) atau ketik nama database yang dipakai pada kolom Select or enter a database name.
  12. Klik Test Connection jika perlu, lalu kllk OK dua kali sampai tampilan kembali ke jendela Form.
  13. Tentukan properti RecordSource dengan cara mengklik tombol pada kolom RecordSource sehingga muncul tampilan seperti pada Gb
  14. Pada kolom Command Type pilih 2-adCmdTable. Setelah kolom ini diisi, maka Anda akan dapat mengisi kolom Table or Stored Procedure Name. lsilah dengan memilib tabel Barang seperti pada Gb
  15. Klik OK.
  16. Simpan form dan proyek dengan nama VB-Lat-01

 

Cara 2: Mendeklarasikan Objek Ado

Object ado dapat dideklarasi melalui coding. Tiga object bawaan ADO dalam pengembangan aplikasi adalah :

1. Obcet Connection

untuk menangani koneksi antara program dengan sumber data atau server. Deklarasi dapat bersifat lokal maupun global serta dapat diletakan pada level form, modul atau class modul. ADO paling umum membuka suatu koneksi dengan menggunakan obyek Connection Open metoda. Sintaks untuk Metoda Open ditunjukkan sbb:

Dim connection as New ADODB.Connection

connection.Open ConnectionString, UserID, Password, OpenOptions

Sebagai alternatif, anda dapat menggunakan teknik pintas, recordset.Open, untuk membuka koneksi yang tersembunyi dan mengeluarkan suatu perintah atas koneksi dalam satu operasi. Lakukan hal ini dengan mengaktivkan suatu koneksi yang valid seperti argumentasi ActiveConnection ke Metoda Open. Ini adalah sintaksis untuk masing-masing metoda di Visual Basic:

Dim recordset as ADODB.Recordset Set

recordset = New ADODB.Recordset

recordset.OpenSource, ActiveConnection, CursorType, LockType, Options

Contoh :

Deklarasi object Connection:

Dim cn As New ADODB.Connection

atau

Public cn As New ADODB.connection

Selanjutnya mengalokasikan memori untuk onject connection sbb:

Set cn = New ADODB.Connection

Kemudian isi property object connoction tersebut sbb:

Contoh berikut adalah property untuk MSSQL Server

cn.connectionString = “Perovider=SQLOLEDB;” & _

”Server=NamaServer; ” & _

“Initial catalog= inventory” & _

“user Id = zulidamel” _

“Password=terserah”

cn.Open

atau

koneksi =  “Perovider=SQLOLEDB;” & _

”Server=NamaServer; ” & _

“Initial catalog= inventory” & _

“user Id = zulidamel” _

“Password=terserah”

cn.Open koneksi

Jika tidak ingin menggunak authentik pada proses koneksi gunakan cara berikut:

koneksi = “Provider=SQLOLEDB.1;” & _

“Integrated Security Info=False;” & _

“Data Source = NamaServer” cn.Open koneksiBila koneksi sudah tidak diperlukan tutuplah koneksi dengan perintah

”Set cn = Nothing”

 

2. Object Command

Digunakan untuk perintah SQL ke sumber data atau server. Deklarasi object command sbb:

Dim CmdBarang As New ADODB.Command

atau

Public Cmd as New ADODB.Command

selanjutnya alokasikan memori untuk object Command sbb:

Set CmdBarang = New ADODB.Command

Kemudian Isi property object command

CmdBarang.ActiveConection = cn

CmdBarang.CommandText = “select * from barang”

CmdBarang.CommandType = adCmdText

 

3. Object Recordset

Digunakan sebagao penampung hasil eksekusi dalam bentuk tabel. Deklarasi object record sbb:

Dim rsBarang As New ADODB.Recordset

atau

Public rsBarang As New ADODB.Recordset

selanjutnya alokasikan memori ynryk object recordset sbb:

Set rsBarang = New ADODB.recordset

lalu isikan property object record set

rsBarang.CusrsorTYpe = adOpenDynamic

rsBarang.LockType = adLockOptimistic

rsbarang.Open cmdBarang

atau

rsbarang,open CmdBarang,, adOpenDynamic, adlockOptimistic,  adCmdtext

 

 

Data Control

Visual Basic terus berkembang dalam pengembangan general purpose Windows, tetapi kemampuan database tidaklah bagian murni dari desainnya. Data Control,  Visual Basic menambahkan, membuat Visual Basic suatu alat yang jauh lebih tangguh untuk pembuatan pemrograman database.

 

Data Control memberikan kemudahkan untuk mendapat data ke dalam program anda. Anda dapat dengan mudah mengaitkan  suatu file database, lalu mengaitkan  data lainnya  untuk memindahkan data dari database ke aplikasi anda dan sebaliknya. Data Control pada suatu database dan menetapkan tabel mana yang akan diambil, lalu mengaitkan  ke pengendali Data Control, menetapkan  field yang akan ditampilkan. Pada waktu itu aplikasi anda dapat mengambil, menampilkan, memperbaharui dan membuat database merekam. Alir data di dalam skenario ini ditandai pada gambar.

 

KONEKSI VB DENGAN EXCEL

Visual basic dapat membaca dan menulis informasi dari dan ke worksheet excel bahkan dapat melaksanakan perintah excel seperti merobah lebar column, memilih jenis huruf, mengatur border dll.

Untuk membuat koneksi Visual basic dengan excel dapat dilakukan dengan sangat mudah sehingga anda dengan mudah dapat menampilkan laporan keuangan dari aplikasi database visual basic ke dalam worksheet excel mulai dari form, laporan periodik, rugilaba, neraca bahkan grafik dll. Sebaliknya anda dapat mengimport data dari workseet excel ke database.

Berikut ini adalah cara membuat koneksi visual basic ke excel untuk membuka file tamplate yang telah disediakan dan selanjutnya anda dapat menuliskan informasi pada worksheet tersebut

Membuat koneksi

Dim vExcel As Excel.Application

Dim No, tbatal, tlunas, Tajt

No = 0

tbatal = 0

tlunas = 0

tajt = 0

Dim startRow

Membuka aplikasi Excel dengan mengalokasikan memori untuk aplikasi excel.

Set vExcel = CreateObject(“Excel.Application”)

Membuka file tamplate yang telah disediakan.

vExcel.Workbooks.Add (App.Path & “\namafile.xlt”)

Mengaktifkan Worksheet excel

vExcel.Visible = True

Menentukan windows excel ditampilkan maksimum

vExcel.WindowState = xlMaximized


Mengatur lebar Column misalnya column A akan di set menjadi 30

vExcel.Columns(“A”).ColumnWidth = 30

Menulis informasi ke dalam worksheet

With vExcel.ActiveSheet

  • .Cells(1, 1).Value = MyCom
  • .Cells(2, 1).Value = MyAddr
  • .Cells(3, 1).Value = “LAPORAN PENGELUARAN KAS”
  • .Cells(4, 1).Value = “PERIODE : ” & Format(DrTgl, “dd-MMM”) & ” s/d ” & Format(SdTgl, “dd-MMM-YYYY”)
  • .Cells(6, 1).Value = “No”
  • .Cells(6, 2).Value = “Voucher”
  • .Cells(7, 2).Value = “Nomor”
  • .Cells(7, 3).Value = “Tanggal”
  • .Cells(6, 4).Value = “Chk/Giro”
  • .Cells(7, 4).Value = “Nomor”
  • .Cells(7, 5).Value = “Efektif”
  • .Cells(6, 6).Value = “Rek”
  • .Cells(6, 7).Value = “KodeSpl”
  • .Cells(6, 8).Value = “Jumlah”
  • .Cells(6, 9).Value = “Keterangan”

dan seterusnya …..

Dari cuplikan coding di atas anda telah mendapatkan header laporan pengeluaran kas yang selanjutnya anda tinggal mengisikan detail dari database yang telah tekoneksi melalui kodesi Ado dengan recordsed rs sbb

N = 1

startRow

Do While Not rs.EOF

‘Cells(Baris,Kolom)

.Cells(startRow + N, 1).Value = N

.Cells(startRow + N, 2).Value = rs!Voucher

.Cells(startRow + N, 3).Value = rs!tanggal

.Cells(startRow + N, 4).Value = rs!chkNo

.Cells(startRow + N, 5).Value = rs!efektif

.Cells(startRow + N, 6).Value = Left(rs!account, 6)

.Cells(startRow + N, 7).Value = rs!kodespl

.Cells(startRow + N, 8).Value = rs!Jumlah

.Cells(startRow + N, 9).Value = rs!Ket

‘ mendapatkan  data yang telah jatuh tempo dan yang belum jatuh tempo

if rs!batal then

tbatal = tbatal + 1

else

If rs!efektif <= Date Then
tlunas = tlunas + rs!Jumlah
Else
Tajt = Tajt + rs!Jumlah
End If

End If
rs.MoveNext
N = N + 1
Loop

dan seterusnya anda tinggal membuat bagian penutup dari laporan.

 

APA YANG DAPAT SAHABAT LAKUKAN DENGAN ADO?

ADO dirancang untuk melakukan pengembangan dengan obyek handal, model object logis untuk mengakses, mengedit, dan membaharui suatu sumber data melalui sistim OLE DB interface. Pemakaian ADO paling umum adalah untuk query tabel suatu database relasional,  mendapat dan menampilkan hasilnya dalam aplikasi, dan memungkinkan pemakai untuk membuat dan meyimpan perubahan data. Hal-hal lain yang bisa dilakukan secara program dengan ADO termasuk:

  • Query database menggunakan SQL dan menampilkan hasill.
  • Mengakses informasi di suatu file database di Internet.
  • Mengolah pesan-pesan dan folder-folder dalam satu sistim e-mail.
  • Meyimpan data dari suatu database ke dalam file XML.
  • Melaksanakan perintah yang digambarkan dengan XML dan membaca tabel XML.
  • Memungkinkan pengguna untuk meninjau dan mengubah data dalam tabel-tabel database.
  • Menciptakan dan penggunaan kembali parameter perintah database.
  • Melaksanakan stored prosedure
  • Secara dinamis menciptakan struktur yang fleksibel, memanggil Recordset, untuk menjaga, menelusuri, dan mengolah data.
  • Meningkatkan kinerja operasi database
  • Menyaring dan penyortiran salinan dari informasi berdasarkan database pada criteria run-time.
  • Menciptakan dan mengolah hirarkis dari database.
  • Mengikat field-field database ke komponen-komponen data.
  • Menciptakan koneksi  jarak jauh, memutus koneksi Recordsets.

ADO harus dibentuk dari opsi yang luas dan setting untuk menyediakan fleksibilitas. Oleh karena itu penting untuk mengambil suatu pendekatan yang metodis untuk belajar bagaimana cara menggunakan ADO dalam aplikasi, break-down setiap sasaran anda kedalam potongan-potongan yang dapat dikendalikan.

Empat operasi utama yang dilibatkan dalam pemrograman ADO : mendapatkan, mengguji, mengedit, dan pembaharuan data.

 

OLE DB PROVIDER

Bagimana hubungan antara ADO dan arsitektur Microsoft Universal Data Access. OLE DB menggambarkan satu set COM interface ke layanan aplikasi dengan akses yang seragam ke data yang disimpan dalam sumber yang berbeda. Pendekatan ini memungkinkan suatu sumber data untuk berbagi data melalui penghubung yang mendukung sejumlah kemampuan DBMS yang sesuai ke sumber data. Dengan design, arsitektur kinerja yang tinggi dari OLE DB didasarkan pada penggunaannya dari suatu layanan yang fleksibel, berbasis komponen model. Dibanding mempunyai suatu nomor yang ditentukan dari lapisan-lapisan perantara antara aplikasi dan data, OLE DB hanya diperlukan ketika beberapa komponen diperlukan untuk memenuhi tugas tertentu.

Sebagai contoh, umpamakan seorang pemakai ingin menjalankan query. Pertimbangkan skenario yang berikut:

Data berada/terletak suatu database relasional di mana di sana ada satu driver ODBC hanya tanpa penyedia OLE DB: Aplikasi menggunakan ADO untuk berkomunikasi dengan OLE DB Provider untuk ODBC, kemudian memuat driver ODBC yang sesuai. Driver melewatkan pernyataan SQL ke DBMS, untuk meminta data.

Data tersedia dalam Microsoft SQL Server di mana ada suatu layanan OLE DB: Aplikasi menggunakan ADO untuk berkomunikasi secara langsung ke OLE DB Provider untuk Microsoft SQL Server. Tidak diperlukan perantara.

Data tersedia dalam Microsoft Exchange Server, di mana ada satu penyedia OLE DB tetapi tidak di expose engine untuk diroses SQL query: Aplikasi menggunakan ADO untuk berkomunikasi dengan OLE DB Provider untuk Microsoft Exchange dan memanggil komponen OLE DB query prosessor untuk menangani query.

Data tersedia dala sistim file Microsoft NTFS dalam wujud dokumen: Data diakses dengan menggunakan suatu layanan OLE DB yang asli atas Microsoft Indexing Service, indeks yang berisi dan property dari dokumen di dalam sistim file untuk memungkinkan pencarian-pencarian isi efisien.

Di dalam semua contoh, aplikasi dapat melakukan query data. Kebutuhan-kebutuhan pemakai itu dialami suatu sejumlah kecil komponen. Pada setiap kasus, komponen-komponen tambahan digunakan hanya jika diperlukan, dan hanya komponen-komponen yang diperlukan dilibatkan. Pemuatan permintaan komponen-komponen bisa berbagi dan dapat sangat berperan untuk kinerja tinggi ketika OLE DB digunakan.

Layanan digolongkan atas kategori: Penyedia data dan penyedia layanan. Suatu penyedia data memiliki data dan exposesdalam bentuk tabel ke aplikasi anda. Suatu penyedia layanan encapsulates suatu layanan dengan menghasilkan dan mengkonsumsi data, menambah fitur di dalam aplikasi-aplikasi ADO Anda. Suatu penyedia layanan boleh juga sebagai suatu komponen servis, yang harus bekerja dalam penghubung dengan penyedia-penyedia servis yang lain atau komponen.

Layanan ADO provider konsisten, higher level interface ke berbagai OLE DB provider.

Penyedia Data

Penyedia data mewakili; menunjukkan sumber berbeda dari data seperti database SQL, indexed-sequential file, lembar kerja, dokumen dan file mail. Penyedia mengexpose data yang seragam menggunakan suatu abstrak yang umum disebut rowset.

ADO adalah fleksibel dan handal karena dapat dihubungkan ke beberapa penyedia data yang berbeda namun masih mengexpose model pemrograman yang sama, dengan mengabaikan fitur yang spesifik dari penyedia. Bagaimanapun, karena masing-masing penyedia data adalah unik, bagaimana aplikasi anda saling berhubungan dengan ADO akan bertukar-tukar oleh penyedia data.

Sebagai contoh, kemampuan dan fitur dari OLE DB Provider untuk SQL Server, yang digunakan untuk mengakses Microsoft SQL Server database, sangat berbeda dari dari Microsoft OLE DB Provider untuk Internet Publishing, yang digunakan untuk file akses menyimpan di suatu Server web.

Penyedia Servis dan Komponen

Penyedia servis adalah komponen-komponen bahwa meningkatkan kemampuan penyedia data dengan menggunakan alat penghubung yang disempurnakan yang tidak didukung oleh penyimpan data.

Akses data Yang Universal menyediakan suatu arsitektur komponen yang memungkinkan individu, komponen-komponen yang khusus untuk menerapkan himpunan terpisah dari kemampuan database, atau “layanan,” pada bagian atas lebih sedikit simpanan yang mampu. Jadi; Dengan demikian, dibanding memaksa masing-masing penyimpan data untuk menyediakan implementasi sendiri kemampuan yang ditingkatkan atau memaksa aplikasi-aplikasi umum untuk menerapkan kemampuan database secara internal, komponen-komponen servis menyediakan suatu implementasi yang umum bahwa semua aplikasi dapat menggunakan ketika mengakses setiap penyimpan data. Fakta bahwa beberapa kemampuan diterapkan sudah didukung oleh penyimpan data dan sebagian orang melalui komponen-komponen yang umum adalah ke aplikasi.

Sebagai contoh, cursor engine, seperti Microsoft Cursor Service untuk OLE DB, adalah suatu komponen servis yang dapat mengkonsumsi data dari suatu urutan, forwarf only penyimpan data untuk menghasilkan data gulungan. Penyedia-penyedia servis lain biasanya digunakan oleh ADO termasuk Microsoft OLE DB Persistence Provider (karena simpan;amankan data ke suatu file, Microsoft Data Shaping Service untuk OLE DB (untuk Recordsets hirarkis), dan Microsoft OLE DB Remoting Provider (karena meminta penyedia data di suatu komputer yang remote).

 

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s