Tampilkan postingan dengan label Visual Basic 6. Tampilkan semua postingan
Tampilkan postingan dengan label Visual Basic 6. Tampilkan semua postingan

Jumat, 06 Juli 2012

Merubah data di database MySQL VB6

Anda ingin merubah data di Tabel Database MySQL menggunakan VB6, jika iya silahkan simak postingan ini.

Merubah data tersebut biasanya digunakan untuk melakukan edit data, misal edit data barang, edit nama pengguna dan lain-lain.

Bagi Anda yang  hanya ingin tahu codingnya saja bisa menggunakan coding berikut

        SQL = "SELECT * FROM user " _
            & "WHERE Nama ='" & cboNama.Text & "' " _
            & " AND Password ='" & txtPasswordLama.Text & "'"
        Set rsUpdate = New ADODB.Recordset
        rsUpdate.Open SQL, strkoneksi, adOpenDynamic, adLockOptimistic
      
            With rsUpdate
                .Fields!Password = Trim(txtPasswordBaru.Text)
                .Update
            End With

pada koding diatas untuk koneksi saya menggunakan "strkoneksi" dan tabel database "user"

atau anda bisa simak dahulu postingan berikut ini :
http://cara-mukhlas.blogspot.com/2012/07/membuat-form-menu-login-vb6-mysql.html

kemudian lanjutkan dengan posting ini

buat satu form lagi dengan komponen 3 label, 3 textbox, 2 commandbutton

kemudian ketikkan coding berikut ini :



'===============================================
Sub User()
Call Koneksi
    rsUser.Requery
    With rsUser
    If .EOF And .BOF Then
        MsgBox "DATA USER TIDAK DITEMUKAN", vbOKOnly + vbCritical, "Error"
    Else
        cboNama.Clear
        Do Until .EOF
            cboNama.AddItem ![Nama]
            .MoveNext
        Loop
            .MoveFirst
    End If
    End With
End Sub

Private Sub cmdCancel_Click()
    Unload Me
End Sub



Private Sub cmdOK_Click()
    If cboNama.Text = "" Then
        MsgBox "Nama belum dipilih! ", vbOKOnly + vbCritical, "KESALAHAN"
        cboNama.SetFocus
    ElseIf txtPasswordLama.Text = "" Then
        MsgBox "Password Lama belum diisi! ", vbOKOnly + vbCritical, "KESALAHAN"
        txtPasswordLama.SetFocus
    ElseIf txtPasswordBaru.Text = "" Then
        MsgBox "Password Baru belum diisi! ", vbOKOnly + vbCritical, "KESALAHAN"
        txtPasswordBaru.SetFocus
    Else
    'update password
        SQL = "SELECT * FROM user " _
            & "WHERE Nama ='" & cboNama.Text & "' " _
            & " AND Password ='" & txtPasswordLama.Text & "'"
        Set rsUpdate = New ADODB.Recordset
        rsUpdate.Open SQL, strkoneksi, adOpenDynamic, adLockOptimistic
           
        If rsUpdate.BOF Then
            MsgBox "Password lama salah!", vbCritical + vbOKOnly, "Error"
            txtPasswordLama.Text = ""
            txtPasswordLama.SetFocus
        Else
            With rsUpdate
                .Fields!Password = Trim(txtPasswordBaru.Text)
                .Update
            End With
        MsgBox "Password berhasil dirubah! ", vbOKOnly + vbInformation, "INFORMASI"
        Unload Me
        End If
    End If
End Sub

Private Sub Form_Load()
    User
End Sub
'===============================================

oke selamat mencoba

Menampilkan Data di ComboBox VB6 dari database mySQL

Postikan kali ini tentang bagaimana cara menampilkan database di ComboBox VB6

Bagi anda yang hanya mencari coding, berikut saya berikan codingNya dengan catatan koneksi sudah anda buat dan berhasil kemudian tabel database sudah bisa diakses

    rsUser.Requery
    With rsUser
    If .EOF And .BOF Then
        MsgBox "DATA USER TIDAK DITEMUKAN", vbOKOnly + vbCritical, "Error"
    Else
        cboNama.Clear
        Do Until .EOF
            cboNama.AddItem ![Nama]
            .MoveNext
        Loop
            .MoveFirst
    End If
    End With


pada koding diatas saya menggunakan recordset "rsUser" dan ComboBox "cboNama"
database yang saya gunakan MySQL

Tetapi bagi anda yang belum membuat koneksi yang berhasil, silahkan simak postingan berikut :
http://cara-mukhlas.blogspot.com/2012/07/membuat-form-menu-login-vb6-mysql.html

Membuat Form Menu Login VB6 + MySQL

Walaupun VB6 udah jadul, tapi ane tetap semangat untuk posting ne pemrograman. Oke SEMANGAT.

Postingan kali ini adalah bagaimana cara mengkoneksikan VB6 ke database MySQL
Pertama-tama buatlah database di MySQL, sebagai contoh saya membuat database "Purnama_Barang" dengan tabel "user" menggunakan phpMyAdmin

Klik gambar untuk memperbesar
Ralat :
pada gambar diatas jenis field integer seharusnya varchar
kemudian isikan didatabase minimal 1 user untuk tes program

Kemudian buatlah sebuah project di VB6
Klik gambar untuk memperbesar


Saya menggunakan dua form, satu form utama dan satu lagi form login
jadi selain tutorial koneksi database, postingan kali ini juga membahas tentang membuat form Login  / menu Login

untuk form login saya gunakan 1 form, 2 label, 2 textbox, 2 command button
untuk form utama terserah anda saja

Form login :
  • frmLogin
  • txtNama
  • txtPassword
  • cmdOK
  • cmdExit
 Form Utama
  • frmUtama

Kemudian buatlah module pada project VB6 Anda.

Klik gambar untuk memperbesar
kemudian ketikkan coding berikut di module Anda

'==========================================================
Public strkoneksi As String
Public conn As New ADODB.Connection
Public rsUser As New ADODB.Recordset



Public Function Koneksi() As Boolean
'settingan koneksi
On Error GoTo er
'koneksi string ke mysql konektor
strkoneksi = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=" & "localhost" & ";DATABASE=" & "hippam" & ";UID=" & "root" & ";PWD=" & "admin" & ";PORT=" & "3306" & ";OPTION=3"

If conn.State = adStateOpen Then conn.Close

conn.Open strkoneksi
conn.CursorLocation = adUseClient


'buka tabel database
    rsUser.Open "SELECT nama,Password FROM user", strkoneksi, adOpenKeyset, adLockOptimistic

If conn.State = adStateOpen Then
    Koneksi = True
    Exit Function
Else
    Koneksi = False
    Exit Function
End If
Exit Function

er:
Koneksi = False
 MsgBox "Gagal Loading Database", vbInformation, "Database Error"
End Function
'==========================================================

Klik gambar untuk memperbesar

Sekarang cobalah tekan F5 pada VB6 anda, dan jika terjadi error seperti gambar dibawah ini
Klik gambar untuk memperbesar

 Hal ini terjadi karena VB6 tidak mengenai type ADODB.Connection
Untuk itu kita harus menambahkan preferences library pada VB6 agar dapat mengenali type tersebut.
Untuk menambah library klik  Project -> Preferences

Klik gambar untuk memperbesar
Kemudian cari dan centang Microsoft ActiveX Data Objects 2.6 Library
Klik gambar untuk memperbesar
Kemudian klik OK
Sekarang coba tekan lagi F5 dan pastikan tidak ada error, jika sudah tidak ada error kita lanjut ke tahap selanjutnya, Close dulu hasil F5 program.

kemudian ketikkan baris kode berikut ke form login

'==========================================================
Private Sub cmdExit_Click()
    End
End Sub

Private Sub cmdOK_Click()
Call Koneksi
    If txtNama.Text = "" Then
        MsgBox "NAMA USER MASIH KOSONG !", vbCritical + vbOKOnly, "Error"
        txtNama.SetFocus
    ElseIf txtPassword.Text = "" Then
        MsgBox "PASSWORD MASIH KOSONG !", vbCritical + vbOKOnly, "Error"
        txtPassword.SetFocus
    Else
        SQL = ""
        SQL = "SELECT * FROM user " _
            & "WHERE Nama='" & txtNama.Text & "' " _
            & " AND Password='" & txtPassword.Text & "'"
            Set rsPeriksa = conn.Execute(SQL)
                  
        If Not rsPeriksa.BOF Then
            Unload Me
            frmUtama.Show
        Else
                MsgBox "ANDA BUKAN USER YANG BERHAK!", vbCritical + vbOKOnly, "Error"
        End If
    End If
End Sub
'==========================================================

Sekarang coba tekan F5 lagi dan coba lakukan login.
Selamat Mencoba.



Membuat Koneksi dan coding VB6 ke MySQL

Walaupun VB6 udah jadul, tapi ane tetap semangat untuk posting ne pemrograman. Oke SEMANGAT.

Postingan kali ini adalah bagaimana cara mengkoneksikan VB6 ke database MySQL
Pertama-tama buatlah database di MySQL, sebagai contoh saya membuat database "Purnama_Barang" dengan tabel "user" menggunakan phpMyAdmin

Klik gambar untuk memperbesar
Ralat :
pada gambar diatas jenis field integer seharusnya varchar
kemudian isikan didatabase minimal 1 user untuk tes program

Kemudian buatlah sebuah project di VB6
Klik gambar untuk memperbesar


Saya menggunakan dua form, satu form utama dan satu lagi form login
jadi selain tutorial koneksi database, postingan kali ini juga membahas tentang membuat form Login  / menu Login

untuk form login saya gunakan 1 form, 2 label, 2 textbox, 2 command button
untuk form utama terserah anda saja

Form login :
  • frmLogin
  • txtNama
  • txtPassword
  • cmdOK
  • cmdExit
 Form Utama
  • frmUtama

Kemudian buatlah module pada project VB6 Anda.

Klik gambar untuk memperbesar
kemudian ketikkan coding berikut di module Anda

'==========================================================
Public strkoneksi As String
Public conn As New ADODB.Connection
Public rsUser As New ADODB.Recordset



Public Function Koneksi() As Boolean
'settingan koneksi
On Error GoTo er
'koneksi string ke mysql konektor
strkoneksi = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=" & "localhost" & ";DATABASE=" & "hippam" & ";UID=" & "root" & ";PWD=" & "admin" & ";PORT=" & "3306" & ";OPTION=3"

If conn.State = adStateOpen Then conn.Close

conn.Open strkoneksi
conn.CursorLocation = adUseClient


'buka tabel database
    rsUser.Open "SELECT nama,Password FROM user", strkoneksi, adOpenKeyset, adLockOptimistic

If conn.State = adStateOpen Then
    Koneksi = True
    Exit Function
Else
    Koneksi = False
    Exit Function
End If
Exit Function

er:
Koneksi = False
 MsgBox "Gagal Loading Database", vbInformation, "Database Error"
End Function
'==========================================================

Klik gambar untuk memperbesar

Sekarang cobalah tekan F5 pada VB6 anda, dan jika terjadi error seperti gambar dibawah ini
Klik gambar untuk memperbesar

 Hal ini terjadi karena VB6 tidak mengenai type ADODB.Connection
Untuk itu kita harus menambahkan preferences library pada VB6 agar dapat mengenali type tersebut.
Untuk menambah library klik  Project -> Preferences

Klik gambar untuk memperbesar
Kemudian cari dan centang Microsoft ActiveX Data Objects 2.6 Library
Klik gambar untuk memperbesar
Kemudian klik OK
Sekarang coba tekan lagi F5 dan pastikan tidak ada error, jika sudah tidak ada error kita lanjut ke tahap selanjutnya, Close dulu hasil F5 program.

kemudian ketikkan baris kode berikut ke form login

'==========================================================
Private Sub cmdExit_Click()
    End
End Sub

Private Sub cmdOK_Click()
Call Koneksi
    If txtNama.Text = "" Then
        MsgBox "NAMA USER MASIH KOSONG !", vbCritical + vbOKOnly, "Error"
        txtNama.SetFocus
    ElseIf txtPassword.Text = "" Then
        MsgBox "PASSWORD MASIH KOSONG !", vbCritical + vbOKOnly, "Error"
        txtPassword.SetFocus
    Else
        SQL = ""
        SQL = "SELECT * FROM user " _
            & "WHERE Nama='" & txtNama.Text & "' " _
            & " AND Password='" & txtPassword.Text & "'"
            Set rsPeriksa = conn.Execute(SQL)
                  
        If Not rsPeriksa.BOF Then
            Unload Me
            frmUtama.Show
        Else
                MsgBox "ANDA BUKAN USER YANG BERHAK!", vbCritical + vbOKOnly, "Error"
        End If
    End If
End Sub
'==========================================================

Sekarang coba tekan F5 lagi dan coba lakukan login.
Selamat Mencoba.



Kamis, 05 Juli 2012

Mengatasi Masalah Error ” Unexpected error number 28 has occured : Out of stack space “

Apakah Anda pernah mengalami hal seperti ini sewaktu membuat package vb6


Jika itu masalah Anda maka saya berikan solusinya :

1. Error tersebut karena di salah satu file crystal reportnya yang bermasalah, tepatnya di file ” CRYSTL32.DEP “ (File berada di direktori C:\WINDOWS\system32)
2. Cari file tersebut dan editlah, aku pakai ” UltraEdit-32 “ atau pakai notepad
3. Klo sudah terbuka, carilah baris code seperti berikut :

4. Nah, kemudian tambahkan tanda ” ; ” diawal perintah, INGAT TANPA TANDA PETIK LHO

5. Simpan perubahan tersebut, dan cobalah menggunakan Package & Deployment Wizard lagi, dijamin 100% lancar.

Selamat Mencoba

Jumat, 29 Juni 2012

Membuat Efek Ledakan Form di VB6

Coding ini digunakan untuk memberikan efek ledakan di Form pada VB6

Ikuti langkah-langkah berikut ini
- Siapkan 1 form baru
- Siapkan pula 1 command button

Klik gambar untuk memperbesar




copy kan coding berikut ini di form

Private Sub Command1_Click()
  'Ganti '20000' di bawah dengan kecepatan dari efek ledakan form.
  Call ImplodeForm(Me, 20000)
  End
  Set Form1 = Nothing
End Sub

Private Sub Form_Load()
  Call ExplodeForm(Me, 20000)  'ledakan form
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
  Call ImplodeForm(Me, 20000)  'pengembalian form
End Sub






dan buatlah satu module kemudian copy kan coding berikut ini di module:

#If Win16 Then
  Type RECT
    Left As Integer
    Top As Integer
    Right As Integer
    Bottom As Integer
  End Type
#Else
  Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
  End Type
#End If

#If Win16 Then
  Declare Sub GetWindowRect Lib "User" (ByVal hwnd As Integer, lpRect As RECT)
  Declare Function GetDC Lib "User" (ByVal hwnd As Integer) As Integer
  Declare Function ReleaseDC Lib "User" (ByVal hwnd As Integer, ByVal hdc As _
  Integer) As Integer
  Declare Sub SetBkColor Lib "GDI" (ByVal hdc As Integer, ByVal crColor As Long)
  Declare Sub Rectangle Lib "GDI" (ByVal hdc As Integer, ByVal X1 As Integer, _
  ByVal Y1 As Integer, ByVal X2 As Integer, ByVal Y2 As Integer)
  Declare Function CreateSolidBrush Lib "GDI" (ByVal crColor As Long) As Integer
  Declare Function SelectObject Lib "GDI" (ByVal hdc As Integer, ByVal hObject _
  As Integer) As Integer
  Declare Sub DeleteObject Lib "GDI" (ByVal hObject As Integer)
#Else
  Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, _
  lpRect As RECT) As Long
  Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
  Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal _
  hdc As Long) As Long
  Declare Function SetBkColor Lib "gdi32" (ByVal hdc As Long, ByVal _
  crColor As Long) As Long
  Declare Function Rectangle Lib "gdi32" (ByVal hdc As Long, ByVal X1 As Long, _
  ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
  Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long
  Declare Function SelectObject Lib "user32" (ByVal hdc As Long, ByVal hObject _
  As Long) As Long
  Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
#End If

Sub ExplodeForm(f As Form, Movement As Integer)
Dim myRect As RECT
Dim formWidth%, formHeight%, i%, X%, Y%, Cx%, Cy%
Dim TheScreen As Long
Dim Brush As Long
  GetWindowRect f.hwnd, myRect
  formWidth = (myRect.Right - myRect.Left)
  formHeight = myRect.Bottom - myRect.Top
  TheScreen = GetDC(0)
  Brush = CreateSolidBrush(f.BackColor)
  For i = 1 To Movement
    Cx = formWidth * (i / Movement)
    Cy = formHeight * (i / Movement)
    X = myRect.Left + (formWidth - Cx) / 2
    Y = myRect.Top + (formHeight - Cy) / 2
    Rectangle TheScreen, X, Y, X + Cx, Y + Cy
  Next i
  X = ReleaseDC(0, TheScreen)
  DeleteObject (Brush)
End Sub

Public Sub ImplodeForm(f As Form, Movement As Integer)
Dim myRect As RECT
Dim formWidth%, formHeight%, i%, X%, Y%, Cx%, Cy%
Dim TheScreen As Long
Dim Brush As Long
  GetWindowRect f.hwnd, myRect
  formWidth = (myRect.Right - myRect.Left)
  formHeight = myRect.Bottom - myRect.Top
  TheScreen = GetDC(0)
  Brush = CreateSolidBrush(f.BackColor)
  For i = Movement To 1 Step -1
    Cx = formWidth * (i / Movement)
    Cy = formHeight * (i / Movement)
    X = myRect.Left + (formWidth - Cx) / 2
    Y = myRect.Top + (formHeight - Cy) / 2
    Rectangle TheScreen, X, Y, X + Cx, Y + Cy
  Next i
  X = ReleaseDC(0, TheScreen)
  DeleteObject (Brush)
End Sub
'--- Batas coding di Module...

Membuat Hari, Jam, dan Tanggal di VB6

coding ini digunakan untuk menampilkan Hari, Jam, dan Tanggal di VB6 sesuai dengan Jam, dan Tanggal di komputer, jadi setiap perubahan waktu di komputer tampilan juga akan ikut berubah, tiap detik, menit, jam, hari, bulan, dan tahun.


Ikuti langkah-langkah berikut :
  1. Buat project Baru dengan satu form baru
  2. Buat 2 Label
  3. Buat 1 Timer
Berikut ini contoh gambarnya :
Klik gambar untuk memperbesar


Kemudian copy kan coding berikut :

Dim sHari As String      'Deklarasi variabel global, karena digunakan
Dim aHari                'oleh lebih dari satu prosedur

Private Sub Form_Load()  'Inisialisasi array untuk hari
  aHari = Array("Minggu", "Senin", "Selasa", "Rabu", _
                "Kamis", "Jumat", "Sabtu")
  Timer1.Interval = 500  'Set property interval
  Timer1.Enabled = True  'Aktifkan jika belum...
End Sub

'Prosedur ini meng-update tanggal & jam setiap ada perubahan, baik
'perubahan yang dilakukan melalui Date/Time di menu Control Panel
'maupun perubahan yang terjadi karena pergantian hari/tanggal.
Private Sub Timer1_Timer()
  sHari = aHari(Abs(Weekday(Date) - 1))  'Tampilkan hari
  Label1.Caption = "" & sHari & ", " _
                   & Format(Date, "dd mmmm yyyy")
  Label2.Caption = Format(Time, "hh:mm:ss")
End Sub




Setelah selesai di copy sekarang coba tekan F5 untuk menjalankan program tersebut

Selamat mencoba, senang berbagi ilmu untuk sesama.

Sabtu, 23 Juni 2012

DAFTAR ISI SHARE VISUAL BASIC 6

Maaf ya sobat blogger, para agan dan aganwati semua. Karena ane g bisa ngurusin banyak blog maka semua ilmu ane yang pengen ane share ane tumpahin di blog ini semua. Jadi maaf kalo agak kacau ne blog karena isinya campur aduk gak karu-karuan. Ada software, hardware, dan lain-lain (kalo pijet g ada ^_^)

Postingan ini saya buat khusus untuk daftar isi dari label Visual Basic 6 biar lebih rapi :

Report Visual Basic 6 menggunakan Crystal Report
* Setting Kertas Continuous Form

Visual Basic 6 "Waktu"
* Membuat Hari, Jam, Tanggal di VB6

Efek di VB6
* Membuat Efek Ledakan Form VB6

Form
* Membuat Koneksi dan coding VB6 ke MySQL 
* Membuat Form Menu Login VB6 + MySQL 

Setting kertas continuous form di crystal report dan vb6

Sempat bingung juga, program dah jadi, report dah tampil di visual basic 6. tapi masalahnya ukuran kertas untuk continuous form tidak ada yang sesuai. Disini saya pakai continuous form ukuran 9,5" x 11" dipotong menjadi 4 bagian. jika di jadikan cm ketemunya 14 x 12,1 cm.

Istilah lainnya kalao dibuat ngeprint nggulung. Mau coba setting langsung di coding vb6 sulit ya, njlimet iya, g mudeng juga iya. Tapi Alhamdulillah ketemu tutorial simple dan efisien dan pastinya sukses 100 persen.

Beikut langkah-langkahnya :
1. Buka Startmenu->Control Panel->Printers and Faxes
2. Klik kanan pada area kosong, pilih Server Properties
3. Setelah itu muncul kotak dialog seperti dibawah



4. Ceklist Create a New form. Isi form name  (nama ini nanti yang akan muncul  pada saat memilih ukuran kertas) contohnya disini aku pakai Struk
5. Pada Units, pilih Metric. Isikan Width, Height, Left, Right, Top, Bottom
6. Jika sudah selesai klik Save Form - OK
nah selanjutnya kita pindah ke printer pilihan default kita misalnya printer EPSON LX-300
7. Klik kanan printer EPSON LX-300 -> Printing Preferences maka akan keluar kotak dialog seperti ini :


 8. Klik tombol Advance... maka akan keluar kotak dialog berikut ini :
 9. Ubah Paper Size ke ukuran kertas yang kita buat tadi, jika selesai tekan OK

Ukuran kertas tersebut juga bisa langsung di setting di crystal report melalui File -> Print Setup

Oke selamat berjuang........