Selamat Datang di TyA'oNeRz.blogspot.com !!!

Jam Dinding

Selasa, 16 Agustus 2011

Membuat Program Penjualan Visual Basic 3 : Membuat Form Pelanggan dan User


Membuat Program Penjualan Visual Basic 3 : Membuat Form Pelanggan dan User
Di tutorial ini kita masih belajar membuat form seperti yang kita buat pada tutorial yang ke 2. Dan form yang akan kita buat adalah form pelanggan dan form user. Inti dari rumusnya sebagian besar sama hanya ada beberapa saja yang mesti dirubah. Tapi jika ada beberapa rumus atau logika yang tidak anda mengerti di tutorial yang ke 3 ini silahkan baca kembali tutorial yang ke 2 karena listing programnya hampir sama dan saya tidak akan menulis keterangan listing program tersebut kembali pada tutorial yang kali ini karena sudah saya jelaskan di tutorial yang ke 2.
2. Membuat FORM PELANGGAN
- Buat form baru lagi lalu isikan dengan isi dan properties dibawah ini:
NAME
CAPTION/TEXT
KETERANGAN
TAMBAHAN
Label1Kode pelangganLabel
Label2Nama pelangganLabel
Label3Nomor Hp/telponLabel
Label4AlamatLabel
Txtkdpel
-
Textbox
Txtnmpel
-
Textbox
Txttelp
-
Textbox
Txtalamat
-
Textbox
Cmdadd&addCommand Button
Cmdclear&clearCommand Button
Cmdsave&saveCommand Button
Cmdedit&editCommand Button
Cmddelete&deleteCommand Button
Cmdexit&exitCommand Button
Cmdfind&findCommand Button
Data1
-
Data
Dbgrid1
-
DbgridData source : data1
PelangganData PelangganForm
Cmdprint&printCommand ButtonJika punya Crystal Report
CR
-
Crystal ReportJika punya Crystal Report
Adapun Listing Program dari Form Pelanggan ini: (keterangannya baca di Tutorial 2)
Private Sub Form_Load()
Data1.DatabaseName = App.Path & "/BUKU.mdb"
Data1.RecordSource = "Table_Pelanggan"
End Sub
Private Sub Form_Activate()
Call nonaktif
TXTKDPEL.Enabled = False
CMDCLEAR.Enabled = False
CMDSAVE.Enabled = False
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
End Sub

Sub aktif()
TXTNMPEL.Enabled = True
TXTALAMAT.Enabled = True
TXTTELP.Enabled = True
End Sub
Sub nonaktif()
TXTNMPEL.Enabled = False
TXTALAMAT.Enabled = False
TXTTELP.Enabled = False
End Sub
Sub tampil()
On Error Resume Next
With Data1.Recordset
    TXTKDPEL.Text = !Kode_pelanggan
    TXTNMPEL.Text = !Nama_Pelanggan
    TXTALAMAT.Text = !Almt_pelanggan
    TXTTELP.Text = !Telp_pelanggan
End With
End Sub
Private Sub CMDFIND_Click()
Dim Kode_pelanggan As String
Kode_pelanggan = InputBox("masukan kode!", "Cari Data")
If Kode_pelanggan = Empty Then Exit Sub
If Kode_pelanggan <> "" Then
Data1.Recordset.Index = "Kode_pelanggan"
Data1.Recordset.Seek "=", Kode_pelanggan
If Not Data1.Recordset.NoMatch Then
Call tampil
Call aktif
TXTKDPEL.Enabled = False
TXTNMPEL.Enabled = False
TXTALAMAT.Enabled = False
TXTTELP.Enabled = False
CMDSAVE.Enabled = False
CMDADD.Enabled = False
CMDDELETE.Enabled = True
CMDEDIT.Enabled = True
CMDFIND.Enabled = False
Else
MsgBox "Data Tidak ada"
End If
End If
End Sub
KETERANGAN: Untuk Pencarian Data pada Tutorial 3 ini berbeda dengan Tutorial 2. Kalau pada Tutorial 2 saya menggunakan textbox maka kali ini saya menggunakan command button.
Tipe data Kode pelanggan disini dideklarasikan sebagagai STRING.
INPUT BOX adalah sebuah form kecil yang digunakan untuk memasukan data yang ingin dicari.
Maksud logika pencariannya adalah:
Jika Kode Pelanggan yang dimasukan ke dalam Input Box itu kosong (empty) maka akan keluar dari sub program ini.
Tapi Jika Kode Pelanggan yang dimasukan ke dalam Input Box itu tidak kosong (ada isinya) maka akan dilakukan proses pencarian data dari kode pelanggan yang sama dengan yang dimasukan ke Input box tadi.
Dan jika data yang dicari “BUKAN TIDAK ADA” (maksudnya ada) maka data akan ditampilkan.
Tapi jika data yang dicari SELAIN ITU (maksudnya tidak ada) maka akan muncul pesan.
JANGAN BINGUNG YA? HEHEHE ! BAHASANYA DIBOLAK BALIK .
Sub kosong()
TXTNMPEL.Text = ""
TXTALAMAT.Text = ""
TXTTELP.Text = ""
End Sub
Private Sub CMDADD_Click()
Call aktif
Call kosong
CMDADD.Enabled = False
CMDCLEAR.Enabled = True
CMDSAVE.Enabled = True
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
CMDFIND.Enabled = False
TXTNMPEL.SetFocus
End Sub
Private Sub CMDCLEAR_Click()
TXTKDPEL.Text = ""
Call kosong
Call nonaktif
CMDADD.Enabled = True
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
CMDFIND.Enabled = True
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
End Sub
Private Sub CMDSAVE_Click()
With Data1.Recordset
.AddNew
!Kode_pelanggan = TXTKDPEL.Text
!Nama_Pelanggan = TXTNMPEL.Text
!Almt_pelanggan = TXTALAMAT.Text
!Telp_pelanggan = TXTTELP.Text
.Update
End With
Data1.Refresh
MsgBox "data telah disimpan"
Call nonaktif
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
CMDADD.Enabled = True
CMDFIND.Enabled = True
TXTKDPEL.Text = ""
Call kosong
End Sub
Private Sub CMDEDIT_Click()
If CMDEDIT.Caption = "&EDIT" Then
Call aktif
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
CMDADD.Enabled = False
CMDDELETE.Enabled = False
CMDEDIT.Caption = "&UPDATE"
Else
With Data1.Recordset
.Edit
!Kode_pelanggan = TXTKDPEL.Text
!Nama_Pelanggan = TXTNMPEL.Text
!Almt_pelanggan = TXTALAMAT.Text
!Telp_pelanggan = TXTTELP.Text
.Update
 End With
Call kosong
CMDEDIT.Caption = "&EDIT"
CMDADD.Enabled = True
CMDDELETE.Enabled = False
CMDFIND.Enabled = True
CMDEDIT.Enabled = False
Call nonaktif
TXTKDPEL.Text = ""
End If
End Sub
Private Sub CMDDELETE_Click()
CMDEDIT.Enabled = False
CMDCLEAR.Enabled = False
CMDDELETE.Enabled = False
a = MsgBox("YAKIN ANDA MAU MENGAHAPUS DATA INI ?", vbQuestion + vbYesNo, "KONFIRMASI")
    If a = vbYes Then
    Data1.Recordset.Delete
    Call kosong
    TXTKDPEL.Text = ""
    MsgBox "DATA TELAH BERHASIL DIHAPUS", vbOKOnly, "INFO"
    CMDADD.Enabled = True
    CMDFIND.Enabled = True
    Data1.Refresh
    DBGrid1.Refresh
Else
CMDDELETE.Enabled = False
CMDADD.Enabled = True
CMDFIND.Enabled = True
Call kosong
TXTKDPEL.Text = ""
    End If
End Sub
Private Sub CMDEXIT_Click()
Unload me
End Sub

Private Sub CMDPRINT_Click()
‘CR.ReportFileName = App.Path & "\PELANGGAN.rpt"
‘CR.WindowState = crptMaximized
‘CR.RetrieveDataFiles
‘CR.Action = 1
End Sub

PERHATIAN: CMDPRINT hanya dipakai jika anda mempunyai software pembuat laporan yang bernama CRYSTAL REPORT. Jika tidak punya, silahkan hapus rumusnya. Tapi jika anda punya, gunakan listing program tersebut dan hilangkan  tanda petik di depan rumusnya. Untuk keterangan lebih lanjut baca Tutorial Membuat Laporan dengan Crystal Report.

- Jangan lupa untuk mengganti Name dari form ini di properties menjadi ”Pelanggan” dan menyimpannya dengan nama ”Pelanggan.frm”.

3. Membuat FORM USER
- Buat form baru lagi lalu isikan dengan isi dan properties dibawah ini:
NAME
CAPTION/TEXT
KETERANGAN
TAMBAHAN
Label1ID userLabel
Label2Nama userLabel
Label3AlamatLabel
Label4TelponLabel
Label5TypeLabel
Label6PasswordLabel
TxtId
-
Textbox
Txtnama
-
Textbox
Txtalamat
-
Textbox
Txttelpon
-
Textbox
Cbotype
-
Combo box
Txtpass
-
Textbox
Txtfind
-
Textbox
Cmdadd&addCommand Button
Cmdclear&clearCommand Button
Cmdsave&saveCommand Button
Cmdedit&editCommand Button
Cmddelete&deleteCommand Button
Cmdexit&exitCommand Button
Cmdfind&findCommand Button
Data1
-
Data
Dbgrid1
-
DbgridData source : data1
UserData UserForm
Cmdprint&printCommand ButtonJika punya Crystal Report
CR
-
Crystal ReportJika punya Crystal Report
Adapun Listing Program dari Form User ini: (keterangannya baca di Tutorial 2)
Private Sub Form_Load()
Data1.DatabaseName = App.Path & "/BUKU.mdb"
Data1.RecordSource = "Table_user"
Cbotype.add item “ADMINISTRATOR”
Cbotype.add item “LIMITED”
End Sub
Private Sub Form_Activate()
CBOTYPE.Enabled = False
Call nonaktif
TXTID.Enabled = False
CMDCLEAR.Enabled = False
CMDSAVE.Enabled = False
CMDDELETE.Enabled = False
CMDEDIT.Enabled = False
End Sub
Sub aktif()
TXTNAMA.Enabled = True
TXTPASS.Enabled = True
TXTALAMAT.Enabled = True
TXTTELPON.Enabled = True
End Sub
Sub nonaktif()
TXTNAMA.Enabled = False
TXTPASS.Enabled = False
TXTALAMAT.Enabled = False
TXTTELPON.Enabled = False
End Sub
Sub kosong()
TXTNMPEL.Text = ""
TXTALAMAT.Text = ""
TXTTELP.Text = ""
End Sub
Sub tampil()
On Error Resume Next
With Data1.Recordset
    TXTKDPEL.Text = !Kode_pelanggan
    TXTNMPEL.Text = !Nama_Pelanggan
    TXTALAMAT.Text = !Almt_pelanggan
    TXTTELP.Text = !Telp_pelanggan
End With
End Sub
Private Sub TXTFIND_Change()
If TXTFIND.Text = "" Then
Data1.RecordSource = "SELECT*FROM Table_user"
Data1.Refresh
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
CMDFIND.Enabled = True
TXTFIND.Enabled = True
CMDADD.Enabled = True
End If
End Sub
Private Sub CMDFIND_Click()
If TXTFIND.Text = "" Then
MsgBox "masukan data dulu"
TXTFIND.SetFocus
Else
Data1.RecordSource = "SELECT*FROM Table_user WHERE Id_user=’" & TXTFIND.Text & "’"
Data1.Refresh
Call tampil
CMDFIND.Enabled = False
CMDADD.Enabled = False
CMDEDIT.Enabled = True
CMDDELETE.Enabled = True
If Data1.Recordset.EOF Then
MsgBox "DATA TIDAK ADA !!!", vbOKOnly, "INFO"
TXTFIND.Text = ""
TXTFIND.SetFocus
Call kosong
TXTID.Text = ""
End If
End If
End Sub
KETERANGAN: Lagi lagi di Form User ini saya memakai kode pencarian yang berbeda dari Form Pelanggan dan Form Buku. Jika di Form Buku saya hanya menggunakan textbox lalu di Form Pelanggan saya hanya menggunakan command button, maka pada Form User ini saya menggunakan kedua duanya baik textbox dan command button.
Maksud dari logika program pencariannya agak mirip dengan yang ada di Form Buku tetapi kalau memasukan data yang dicari pada Form User ini harus benar benar sama persis dengan yang ada di database. Arti listing programnya yaitu: Pilih semua data dari Table User yang ada di database yang ID User nya sama persis dengan yang ada di txtfind.
Private Sub CMDADD_Click()
Call aktif
Call kosong
CBOTYPE.Enabled = True
TXTNAMA.SetFocus
CMDADD.Enabled = False
CMDCLEAR.Enabled = True
CMDSAVE.Enabled = True
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
CMDFIND.Enabled = False
End Sub
Private Sub CMDCLEAR_Click()
TXTID.Text = ""
Call kosong
Call nonaktif
CMDADD.Enabled = True
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
CBOTYPE.Enabled = False
CMDFIND.Enabled = True
End Sub
Private Sub CMDSAVE_Click()
With Data1.Recordset
.AddNew
!Id_user = TXTID.Text
!Nama_user = TXTNAMA.Text
!Almt_user = TXTALAMAT.Text
!Telp_user = TXTTELPON.Text
!Pass_user = TXTPASS.Text
!Type_user = CBOTYPE.Text
.Update
End With
Data1.Refresh
MsgBox "data telah disimpan"
Call nonaktif
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
CMDADD.Enabled = True
CBOTYPE.Enabled = False
CMDFIND.Enabled = True
Call kosong
TXTID.Text = ""
End Sub
Private Sub CMDEDIT_Click()
If CMDEDIT.Caption = "&EDIT" Then
Call aktif
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
CMDDELETE.Enabled = False
CMDEDIT.Caption = "&UPDATE"
CBOTYPE.Enabled = True
Else
CBOTYPE.Enabled = False
With Data1.Recordset
.Edit
!Id_user = TXTID.Text
!Nama_user = TXTNAMA.Text
!Almt_user = TXTALAMAT.Text
!Telp_user = TXTTELPON.Text
!Pass_user = TXTPASS.Text
!Type_user = CBOTYPE.Text
.Update
End With
If TXTID.Text = Menuutama.txtuser.Text Then
Menuutama.txtuser.Text = Data1.Recordset!Id_user
Menuutama.Label2.Caption = Data1.Recordset!Nama_user
End If
Call kosong
TXTFIND.Text = ""
TXTID.Text = ""
CMDEDIT.Caption = "&EDIT"
CMDDELETE.Enabled = False
CMDADD.Enabled = True
CMDEDIT.Enabled = False
CMDFIND.Enabled = True
Call nonaktif
End If
End Sub
Private Sub CMDDELETE_Click()
a = MsgBox("YAKIN ANDA MAU MENGAHAPUS DATA INI ?", vbQuestion + vbYesNo, "KONFIRMASI")
    If a = vbYes Then
    Data1.Recordset.Delete
    Call kosong
    TXTID.Text = ""
    MsgBox "DATA TELAH BERHASIL DIHAPUS", vbOKOnly, "INFO"
    CMDADD.Enabled = True
    Data1.Refresh
    CMDDELETE.Enabled = False
    CMDEDIT.Enabled = False
    CMDFIND.Enabled = True
    TXTFIND.Text = ""
Else
CMDDELETE.Enabled = False
CMDADD.Enabled = True
Call kosong
TXTID.Text = ""
TXTFIND.Text = ""
    End If
End Sub
Private Sub CMDEXIT_Click()
Unload Me
End Sub

Private Sub CMCPRINT_Click()
CR.ReportFileName = App.Path & "\USER.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub

PERHATIAN: CMDPRINT hanya dipakai jika anda mempunyai software pembuat laporan yang bernama CRYSTAL REPORT. Jika tidak punya, silahkan hapus rumusnya. Tapi jika anda punya, gunakan listing program tersebut dan hilangkan  tanda petik di depan rumusnya. Untuk keterangan lebih lanjut baca Tutorial Membuat Laporan dengan Crystal Report.

- Jangan lupa untuk mengganti Name dari form ini di properties menjadi ”User” dan menyimpannya dengan nama ”User.frm”.

Akhirnya selesai juga Form Pelanggan dan Form User ini. Bagaimana? Tambah mengerti atau tambah pusing? Nyantai aja bro, masih banyak yang harus kita bikin. Masih ada beberapa form lagi. Jadi, tetap ikuti tutorial dari saya. We’ll meet at 4rd Tutorial , okey? Cheeeeeeeeeeeeeeeeeeeeerrrrrrrrrrrrrrrsssssss!!!

By: OPIX HOLMES
opix.holmes@yahoo.com
http://www.islamicunderground.com
vb-data-user

Tidak ada komentar:

Posting Komentar

Jasa

Photobucket

Kamus

English French German Spain Italian Dutch

Russian Portuguese Japanese Korean Arabic Chinese Simplified
by : BTF