Anda di halaman 1dari 269

Yuk Menikah.

Bukan pacaran :-)

Visual Basic .Net | Aplikasi TOKO Sederhana

@IndraES,Skom | Dosen asek + imut + manis + keren + putih & bersih tanpa jerawat

Update: 20-MEI-2015

Aplikasi
TOKO
Dengan

VBNET 1 + Access
VBNet dasar

Halaman:

Yuk Menikah. Bukan pacaran :-)

PDF INI
Free PDF dari ane
Di persembahkan oleh...

Indra ES,Skom | Dosen asek | 0857-73-59-59-69 | indraes.ok@gmail.com

Code boleh di copy di ubah di sebarkan di gunakan semakin banyak di sebar semakin
banyak ilmu bermamfaat
Halaman:

Yuk Menikah. Bukan pacaran :-)

PERUBAHAN WUJUD ANE:


Waktu SMA (keren abizzz):

Jegerrrr

Waktu KULIAH (ganteng nya masih ada banyak..)

Nah ini yang SEKARANG, tetap ganteng + imut + manis & keren

Halaman:

Yuk Menikah. Bukan pacaran :-)

Informasi #1 : Seputar VBNet

Ok bos

#1.VERSI Visual Basic


VB3 VB4 VB5 VB6

sampai sekarang VB6 masih tetap EKSIS dalam dunai programming, karena mudah, ringan
dalam menjalankan program nya

VBNet2002 VBNet 2003 VBNet 2005

pada saat install vbnet ini, Crystal report SUDAH ADA, menyatu dalam installasi nya
Paket Database saat install : SQL Server EXPRESS 2005 (*optional)

VBNet 2008 VBNet 2010 VBNet 2012

pada saat install vbnet ini, Crystal report sudah TERPISAH , jadi crystal report di install
manual
Paket Database saat install : SQL Server EXPRESS 2008 (*optional)

Halaman:

Yuk Menikah. Bukan pacaran :-)

Informasi #1 : Seputar VBNet

Inget..

#2.FILE UTAMA Project


File utama visual basic net ada 2 jenis :
(jika file ini di

KLIK 2x

maka akan project akan TERBUKA)

*.SLN Microsoft visual studio solution, atau


*.VBPROJ Visual basic project file

Yang paling sering digunakan adalah *.sln


Halaman:

Yuk Menikah. Bukan pacaran :-)

#3.

Informasi #1 : Seputar VBNet

Siiiip..

Mengatur FORM AWAL yang akan di

RUNNING

2
1
3

1. Klik 2x My Project , atau dari menu = PROJECT + PROPERTIES


2. Klik TAB APPLICATION
3. Muncul form diatas. Pilih START-UP FORM, pilih form nya deh..

Halaman:

Yuk Menikah. Bukan pacaran :-)

#4. UPDATE/REFRESH
-

kembali Project

kan

Wow..

Catatan: terkadang kita merubah code-code dari error, TAPI setelah


code tsb di rubah dan di RUN kembali....... (apa yang terjadi) code yang
kita RUBAH kok tidak jalan/ code yang baru kita ketik TIDAK terbaca
oleh VBNET,
Jika kita mengalami ini artinya VBNET kita sedang GALAUUUUU
alias VBNET kita MINTA di REFRESH/UPDATE ...
UPDATE-lah Project VBNET kita dengan cara =

1
4
3
2
1. Klik menu = BUILD
2. Klik CLEAN SOLUTION ..(tunggu sampai selesai)
3. Klik REBUILD SOLUTION ...(tunggu sampai selesai)
4. Klik BUILD SOLUTION ...(tunggu sampai selesai)

Halaman:

Yuk Menikah. Bukan pacaran :-)

#5. TOOLBAR POKOK

VbNet

dalam bekerja

(1)Untuk RUNNING PROGRAM

(2)kotak Project nya

(3)Properties

(4) Toolbox

4.TOOLBOX
2.PROJECT /
SOLUTION

3.PROPESTIES

Jadi jika tampilan hilang, jangan panic.. tinggal KLIK icon tsb

Halaman:

Yuk Menikah. Bukan pacaran :-)

#6. Setting

ruang lingkup

mengetikan CODE vbnet

Beberapa setingan yang BIASA (UMUM) kita atur dalam MAMFAAT mengetik
code antara lain:
LINE NUMBER : muncul nomer urut baris dalam ruang ketik program
WORD WARP : memotong otomatis kode jika terlalu panjang, melewati
layar ruang pengetikan code
FORMAT FONT & WARNA : format font,warna ruang code
Dll

Langkah = klik menu = TOOLS+ OPTION + Muncul kotak setingan..

(1).Membuat warna HITAM BACKGROUND ruang code

1
3
2

>> Environment + Font and Colors + Plain Text + Item background = Black

Halaman:

Yuk Menikah. Bukan pacaran :-)

Beberapa setingan warna lainnya :

PLANT TEXT
LINE NUMBER
COMMENT
IDENTIFIER
KEYWORD
STRING
dll

: warna background dan warna simbol2 ( ) = , .


: nomer urut (pink)
: komentar program (merah)
: fungsi utama, syntaq utama pemograman (putih)
: object utama, struktur utama susunan vbnet (hijau)
: text string, kata2 di msgbox, kalimat dikutip > xxxx (kuning)

Symbol WORD WRAP text


(text bersambung)

Halaman:

10

Yuk Menikah. Bukan pacaran :-)

(2).Memunculkan LINE NUMBER & WORD WRAP text

1
4
2
3

>> TEXT EDITOR + All Language + AUTO LIST NUMBER di cek

(3)

>> TEXT EDITOR + All Language + WORD WRAP di cek


(4)
>> TEXT EDITOR + All Language + SHOW VISUAL GLYPHS FOR WORD WRAP di cek

Halaman:

11

Yuk Menikah. Bukan pacaran :-)

Halaman:

12

Yuk Menikah. Bukan pacaran :-)

#Cara mengetik dalam


vbnet
Cara mengetik code dalam vb =

klik 2x pada OBJECT & pilih ruang code (EVENTS) nya


Ruang ketik code =

Lokasi (EVENTS) ruang


ketik code nya

Nama object nya

Ruang ketik code disini..

Halaman:

13

Yuk Menikah. Bukan pacaran :-)

Latihan Latihan dasar


&
Fungsi2 VBNet

Halaman:

14

Yuk Menikah. Bukan pacaran :-)

Latihan 1

KALKULATOR KEREN
Label

PictureBox

TextBox

Form

Label

FORM

Button

SETINGAN UMUM PROPERTIES:


Properties

TEXT
STARTPOSITION
BACKCOLOR
OPACITY

LABEL

TextBox

Keterangan
Untuk judul text form nya
Posisi form di layar CENTRESCREEN (form di tengah monitor)
Warna form CONTROL (default)
Agar form menjadi tranparan 100% (50%=tranparan)

Properties

TEXT
AUTOSIZE=False
BACKCOLOR=Transparant
TEXTALIGNMENT
IMAGE
IMAGEALIGMENT

Keterangan
Untuk ngetik text nya
Agar bias dirubah ukurannya
Agar backgraound warna transparan
Jenis kerataan/ posisi
Untuk ambil/memberi gambar pada label
Untuk posisi gambar

Halaman:

15

Yuk Menikah. Bukan pacaran :-)

PICTUREBOX

Terkadang object di VBNET mucul SEGITIGA KECIL, ini adalah setingan pokok/utama

Properties
SIZE MODE

Keterangan
Pengaturan ukuran gambar STRETCHIMAGE
Ambil gambar

CHOOSE IMAGE

TEXTBOXBOX

Properties

TEXT
FONT
FORECOLOR
BACKCOLOR
MAXLENGTH
PASSWORD CHART
USE PASSWORD CHART SYSTEM

BUTTON

Keterangan
Untuk ngetik text nya
Pengaturan huruf (model,efek,dll)
Warna huruf
Warna latar
Panjang maximal input data
Symbol untuk password agar tidak terbaca
Symbol password isinya bulat2 mirip di FB

Properties

TEXT
TEXT ALIGMENT
IMAGE
IMAGE ALIGMENT
BACKCOLOR
FORECOLOR

Keterangan
Untuk ngetik text nya
Posisi text
Ambil gambar
Posisi gambar
Warna latar
Warna huruf

Halaman:

16

Yuk Menikah. Bukan pacaran :-)

CODE-CODE : agar textbox kosong saat Form muncul


Code: FORM lokasi code LOAD
'/ code: kosongkan textbox agar kosong
Me.TextBox1.Clear()
Me.TextBox2.Clear()
Me.TextBox3.Text=

CODE-CODE :
Code: TOMBOL KOSONG lokasi code CLICK
'/ code: kosongkan textbox agar kosong
Me.TextBox1.Clear()
Me.TextBox2.Clear()
Me.TextBox3.Text=
'/ code: letakkan kursor di textbox1, agar siap di input
Me.TextBox1.

Focus()

Code: TOMBOL PROGRAMMER lokasi code CLICK


'/ Menampilkan info program dengan MSGBOX
MsgBox("Dibuat oleh: IndraES OK", vbInformation)

Code: TOMBOL EXIT lokasi code CLICK


'/ code: keluar dari form / tutup form
Me.

Close()

*upgrade code: keluar dg pertanyaan


Code: TOMBOL EXIT
'/ munculkan KOTAK KONFIRMASI untuk KELUAR FORM
Dim TANYA As String
'/DIM=difinisi variable
TANYA = MsgBox("APAKAH INGIN KELUAR ?", vbQuestion + vbYesNo)

If TANYA = vbYes Then


Me.
End If

Close()
Halaman:

17

Yuk Menikah. Bukan pacaran :-)

Catatan:

Me.CLOSE

keluar dari form, form nya close, program masih jalan.

END

keluar dari program, program akan berhenti,keluar,selesai..

Tapi Kalo form Cuma ada 1 maka form keluar & program keluar

ME. fungsi bantuan


menampilkan object2
Code: TOMBOL PENGURANGAN (-) lokasi codeuntuk
CLICK
'/code pengurangan
Me.TextBox3.Text = TextBox1.Text - TextBox2.Text

yg ada di dalam form, jadi


penulisan nya tidak salah

Code: TOMBOL PERKALIAN ( * ) lokasi code CLICK


Me.TextBox3.Text = TextBox1.Text * TextBox2.Text

Code: TOMBOL PEMBAGIAN ( / ) lokasi code CLICK


Me.TextBox3.Text = TextBox1.Text / TextBox2.Text

*upgrade code: gunakan format desimal


Code: TOMBOL HITUNG PEMBAGIAN ( / )
'/ hasilnya dg format ribuan dan DESIMAL
Me.TextBox3.Text =FORMAT(TextBox1.Text/TextBox2.Text,#.00)

Code: TOMBOL PENJUMLAHAN (+) lokasi code CLICK


'/code penjumlahan
Me.TextBox3.Text = TextBox1.Text + TextBox2.Text

*upgrade code: gunakan fungsi VAL


Code: TOMBOL HITUNG TAMBAH (+)
'/penjumlahan
Me.TextBox3.Text =

VAL fungsi
merubah angka
string ke numeric

Val(TextBox1.Text)+Val(TextBox2.Text)
Halaman:

18

Yuk Menikah. Bukan pacaran :-)

Halaman:

19

Yuk Menikah. Bukan pacaran :-)

(*optional)
*upgrade code cek angka

Terkadang user input data dengan HURUF bukan ANGKA,


maka sebelum data/angka di TEXTBOX di hitung...
kita cek dulu apakah input user berupa ANGKA atau HURUF
kita gunakan fungsi ISNUMERIC :
nilai ISNUMERIC = TRUE semua angka (OK)
nilai ISNUMERIC = FALSE data bukan angka semua, ada huruf nya
coba kita upgrade code untuk tombol KURANG

Code: TOMBOL HITUNG KURANG ( - )

IsNumeric

'/ contoh mengecek data yg di input untuk kalkulasi


'/ apakah yg diinput ANGKA atau BUKAN

fungsi untuk cek apakah


yg di input angka
numeric?

If

IsNumeric(TextBox1.Text)

If

IsNumeric(TextBox2.Text)

= False Then
MsgBox("INPUT TEXTBOX 1 SALAH, HARUS ANGKA..", vbInformation)
TextBox1.Focus()
'-> letakan kursor di text1
Exit Sub
'-> keluar dari code karena data tidak valid
End If
=

False

Then

MsgBox("INPUT TEXTBOX 2 SALAH, HARUS ANGKA ", vbInformation)


TextBox2.Focus()
'-> letakkan kursor di text2
Exit Sub
'-> keluar dari code kareda data tidak valid
End If

Me.TextBox3.Text = TextBox1.Text - TextBox2.Text

Halaman:

20

Yuk Menikah. Bukan pacaran :-)

*Upgrade code :
CURSOR BERPINDAH ANTAR
TEXTBOX dengan di ENTER
Ada 2 tehnik (pilih salah satu) :
#1.dengan code SENDKEYS TAB
#2.dengan code FOCUS CURSOR

Halaman:

21

Yuk Menikah. Bukan pacaran :-)

#1.Membuat CURSOR pindah


dengan code SENDKEYS
(menggunakan TABINDEX )

Jika di TEXTBOX1 di
ENTER, maka CURSOR
pindah ke TEXTBOX2

Langkahnya:
1. Aturlah TAB INDEX di PROPERTIES disetiap TEXTBOX menjadi urutan. Urutan ini
dijadikan URUTAN PINDAH CURSOR. (dari: 1,2,3,4seterusnya)

1
2

3
4

Halaman:

22

Yuk Menikah. Bukan pacaran :-)

6
5

..begitu seterusnya, buatlah urutan angka di TABINDEX sbg inisial urutan perpindahan cursor nya
Code:

Code di : TEXTBOX1 lokasi code KEYDOWN


'/ cek; jika ENTER ditekan, maka lakukan TAB
'/ yaitu PINDAH KE TABINDEX berikutnya
If e.KeyCode = Keys.Enter Then
SendKeys.Send("{TAB}")
End If

Sendkeys perintah untuk mengirim


penekanan tombol keyboard ke komp (jadi
kita seakan2 menekan tombol keyboard)

Code di : TEXTBOX2 lokasi code KEYDOWN


If e.KeyCode = Keys.Enter Then

Keycode untuk memeriksa tombol

SendKeys.Send("{TAB}")

apa yang di tekan oleh user

End If

..code begitu seterusnya, di setiap textbox

Keuntungan menggunakan SENDKEYS :

SendKeys.Send("{TAB}")

CODE disetiap textbox / combobox SAMA


Mudah dalam mengatur URUTAN CURSOR, hanya mengatur properties TABINDEX nya sahaja
Halaman:

23

Yuk Menikah. Bukan pacaran :-)

Halaman:

24

Yuk Menikah. Bukan pacaran :-)

#2.Membuat CURSOR pindah


dengan FOCUS CURSOR
Untuk berpindah cursor dengan menggunakan FOCUS CURSOR tidak
ada yang diatur, langsung di ketik CODE nya di setiap TEXTBOX nya
Text1 ke text2

Code di : TEXTBOX1 lokasi code KEYDOWN


'/ cek;apakah ENTER di tekan?
'/ jika ENTER di tekan, maka taro KURSOR di TEXTBOX berikutnya
If e.KeyCode = Keys.Enter Then
/apakah ENTER ditekan di Text7 ???
Me.TextBox2.Focus()
End If

/jika YA, taro cursor di Text8

Text2 ke text3

Code di : TEXTBOX2 lokasi code KEYDOWN


'/ cek;apakah ENTER di tekan?
'/ jika ENTER di tekan, maka taro KURSOR di TEXTBOX berikutnya
If e.KeyCode = Keys.Enter Then
/apakah ENTER ditekan di Text8 ???
Me.TextBox3.Focus()
End If

/jika YA, taro cursor di Text9

Halaman:

25

Yuk Menikah. Bukan pacaran :-)

Menggunakan

VARIABLE
dalam menghitung

Halaman:

26

Yuk Menikah. Bukan pacaran :-)

Latihan 2
BELANJA Yuuuk + Perhitungan menggunakan

VARIABEL

KETERANGAN:
1.
2.

Isilah COMBOBOX1 dengan = HARDDISK, MODAM, MOUSE


HITUNG lah code di tulis di tombol total belanja
a. TOTAL BELANJA = jumlah * harga
b. DISKON = total belanja * 10%
c. BAYAR = total belanja - diskon

3.

Coba gunakan variable dalam menghitung rumus

CODE untuk MENGISI COMBOBOX di FORM_LOAD

Code di: FORM lokasi code LOAD


'/ isi combobox
With Me.ComboBox1
.Items.Clear()
.Items.Add("HARDDISK")
.Items.Add("MODEM")
.Items.Add("MOUSE")
End With

.Item.clear kosongkan combobox


.Item.ADD isi combo dg data

Halaman:

27

Yuk Menikah. Bukan pacaran :-)

VARIABLE2 UMUM
PENGERTIAN BEBAS VARIABLE

Variable adalah alat untuk menampung / menyimpan data.

CARA MEMBERI NAMA VARIABLE

Nama variable bebas,


Jangan ada spasi, Nama singkat dan jelas
contoh nama variable : kd, kode, nm, nama, alamat, jumlah_barang, dll

JENIS VARIABLE / TYPE DATA yg UMUM DIGUNAKAN


ANGKA
ANGKA, DESIMAL
TEXT / HURUF
TANGGAL

Integer
Double
String
Date

angka kecil (umur,jumlah anak,dll)


angka besar (harga,total,saldo,dll)
untuk text (nama,alamat,ket,dll)
untuk tanggal

*untuk lebih rinci bisa lihat di buku2 vbnet

CARA DIFINISI VARIABLE

DIM nama as STRING =


difinisikan variable nama bertype string dan member nilai awal
DIM jumlah as DOUBLE =0
difinisikan variable jumlah ber-type double dan beri nilai awal = 0

Halaman:

28

Yuk Menikah. Bukan pacaran :-)

Latihan 2 : Belanja yuuk


#1.Code hitung LANGSUNG
code di ketik di TOMBOL HITUNG TOTAL BELANJA

Code di: Tombol hitung total belanja lokasi code Click


'/ HITUNG LANGSUNG
TextBox3.Text = TexBox1.Text * TextBox2.Text
TextBox4.Text = TextBox3.Text * 10/100
TextBox5.Text = TextBox3.Text TextBox4.Text

*Upgrade Code di: hasil menggunakan


FORMAT RIBUAN tanpa decimal
'/ HITUNG LANGSUNG
TextBox3.Text = TexBox1.Text * TextBox2.Text
TextBox4.Text = TextBox3.Text * 10/100
TextBox5.Text = TextBox3.Text TextBox4.Text
'/ FORMAT ANGKA PADA HASIL AKHIR
TextBox3.Text =Format(TextBox3.Text ,#,##0)
TextBox4.Text =Format(TextBox4.Text ,#,##0)
TextBox5.Text =Format(TextBox5.Text ,#,##0)

Kenapa format angka dilakukan di akhir perhitungan?

Karena ANGKA TER-FORMAT RIBUAN


tidak bisa digunakan untuk hitungan

(atau jika angka format ribuan akan di hitung maka HARUS di normalkan kembali angkanya
dibuang format ribuannya)

Halaman:

29

Yuk Menikah. Bukan pacaran :-)

Latihan 2 : Belanja yuuk


#2.Code hitung dg

VARIABLE

Code di: Tombol hitung total belanja lokasi code Click


'/ DIFINISI VARIABLE
DIM jumlah as double =0
DIM harga as double =0
DIM total_belanja as double =0
DIM diskon as double =0
DIM bayar as double =0
'/ AMBIL DATA DARI TEXTBOX BUAT DI HITUNG
jumlah = TextBox1.Text
harga = TextBox2.Text
'/ HITUNG RUMUS2
Total_belanja = jumlah * harga
Diskon = total_belanja * 10/100
Bayar = total_belanja diskon
'/ HITUNGAN SELESAI, TAMPILKAN DATA KE TEXTBOX
TextBox3.Text = total_belanja
TextBox4.Text = diskon
TextBox5.Text = bayar

*Upgrade code: tampilkan angka dengan


FORMAT RIBUAN & DESIMAL
'/ TAMPILKAN DATA KE TEXTBOX
'/ MENGGUNAKAN FORMAT RIBUAN & DESIMAL
TextBox3.Text = format(total_belanja,#,##0.00)
TextBox4.Text = format(diskon,#,##0.00)
TextBox5.Text = format(bayar,#,##0.00)
**jika tidak ingin menggunakan DESIMAL, maka hilangkan: .00 format(bayar,#,##0)

Halaman:

30

Yuk Menikah. Bukan pacaran :-)

Latihan 2 : Belanja yuuk

PENYEMPURNAAN CODE CEK VALIDASI ANGKA


Apakah input JUMLAH & HARGA sudah benar angka semua? Atau ada huruf nya

Code di: Tombol hitung total belanja lokasi code Click


'/ CEK APAKAH INPUT JUMLAH dan HARGA SUDAH BENAR?
'/ DATA YANG DI INPUT ANGKA ,BUKAN HURUF
'/ CEK INPUT JUMLAH

IsNumeric(TextBox1.Text)

= False Then
MsgBox("INPUT JUMLAH SALAH, HARUS ANGKA..", vbInformation)
TextBox1.Focus()
'-> letakan kursor di text1
Exit Sub
'-> keluar dari code karena data tidak valid
End If
If

'/ CEK INPUT HARGA

IsNumeric(TextBox2.Text)

= False Then
MsgBox("INPUT HARGA SALAH, HARUS ANGKA ", vbInformation)
TextBox2.Focus()
'-> letakkan kursor di text2
Exit Sub
'-> keluar dari code kareda data tidak valid
End If
If

'/ DIFINISI VARIABLE


DIM jumlah as double =0
DIM harga as double =0
DIM total_belanja as double =0
DIM diskon as double =0
DIM bayar as double =0
'/ AMBIL DATA DARI TEXTBOX BUAT DI HITUNG
jumlah = TextBox1.Text
harga = TextBox2.Text
'/ HITUNG RUMUS2
Total_belanja = jumlah * harga
Diskon = total_belanja * 10/100
Bayar = total_belanja diskon
'/ HITUNGAN SELESAI, TAMPILKAN DATA KE TEXTBOX
TextBox3.Text = total_belanja
TextBox4.Text = diskon
TextBox5.Text = bayar
Halaman:

31

Yuk Menikah. Bukan pacaran :-)

Halaman:

32

Yuk Menikah. Bukan pacaran :-)

Yuuuuuuuuuuk Menggunakan

IF

Halaman:

33

Yuk Menikah. Bukan pacaran :-)

Latihan 3 - IF
DATA MAHASISWA & KETERANGAN UMUR

KETERANGAN:
1.

KETERANGAN UMUR code ditulis di tombol cek keterangan umur


a. Jika UMUR >= 17, maka keterangan umur dicetak = DEWASA
b. Jika UMUR < 17, maka keterangan umur dicetak = BOCAH

2.

Isilah COMBOBOX1 dengan = LAKI-LAKI , PEREMPUAN

Cara mengisi data ke dalam combobox .

Halaman:

34

Yuk Menikah. Bukan pacaran :-)

Cara

MENGISI DATA
ke dalam ComboBox

Ada 2 cara untuk mengisi data ke dalam combobox, PILIH

salah satu..

#1. Input data lewat PROPERTIES = ITEM


clik combobox nya
masuk properties ITEM
klik tombol kotak kecil,
muncul kotak. Lalu INPUT
DEH datanya.. ^_^ + ok

atau dengan code.. Dengan code, yang di ketik di = FORM LOAD

Code di: FORM lokasi code LOAD


'/ isi combobox
With Me.ComboBox1
.Items.Clear()
.Items.Add("LAKI-LAKI")
.Items.Add("PEREMPUAN")
End With

.Item.clear kosongkan combobox


.Item.ADD isi combo dg data

Halaman:

35

Yuk Menikah. Bukan pacaran :-)

Fungsi IF
FUNGSI IF
Untuk mengecek kondisi, mengecek pilihan2, mengecek YA dan TIDAK
JUMLAH KONDISI IF
Hanya 1 kondisi YA saja
mengecek jumlah barang, jika jumlah barang=0 maka keluar dari code
IF jumlah=0 then
Exit sub
End if
Ada 2 kondisi
YA dan TIDAK
cari diskon, jika total > 100.000, maka diskon=10% * total, sisanya diskon=0
IF total_belanja > 100000 then
Diskon = total_belanja * 10/100
Else
Diskon = 0
End if
Ada >2 kondisi banyak pilihan
cari kelulusan siswa
IF nilai_siswa >=70 then
Ket = LULUS
ELSEIF nilai_siswa >=60 then
Ket = HER
ELSE
Ket = TIDAK LULUS
End if

Halaman:

cari grade nilai pelajaran


IF nilai >=80 then
Grade= A
ELSEIF nilai >=70 then
Grade = B
ELSEIF nilai >=60 then
Grade = C
ELSE
Grade = D
End if

36

Yuk Menikah. Bukan pacaran :-)

Latihan 3 : Data mahasiswa


#1.Code hitung LANGSUNG
Code di: Tombol cek keterangan umur lokasi code Click
'/ HITUNG LANGSUNG
IF TextBox2.Text > 17 Then
TextBox3.Text = DEWASA
Else
TextBox3.Text = BOCAH
End If

Latihan 3 : Data mahasiswa


#2.*Upgrade Code: hitung dg VARIABLE
Code di: Tombol cek keterangan umur lokasi code Click
'/DIFINISI VARIABLE
DIM Umur as Integer =0
DIM Ket as String =
'/AMBIL DATA UMUR DI TEXTBOX2
Umur = TextBox2.Text
'/CEK UMUR
IF umur > 17 Then
ket = DEWASA
Else
ket = BOCAH
End If
'/TAMPILKAN HASIL NYA
TextBox3.Text = ket
Halaman:

37

Yuk Menikah. Bukan pacaran :-)

Latihan 4 -

Input data

HANYA ANGKA &

Batas banyaknya karakter input text

Keterangan:
TEXTBOX1 diinput hanya ANGKA saja, jika yang diinput HURUF maka ditolak
TEXTBOX2 input text, tapi MAXIMAL panjang / banyak karakter hanya = 10 karakter

#1.Code input textbox hanya angka

Code di: TEXTBOX1 lokasi code TextChanged


'/CEK INPUT HARUS ANGKA
If TextBox1.Text = "" Then Exit Sub

'/jika text kosong keluar

If IsNumeric(TextBox1.Text) = False Then


'/cek angka
MsgBox("Mas-mas input nya salah, harus angka..", vbCritical)
TextBox1.Text = ""
End If
Halaman:

38

Yuk Menikah. Bukan pacaran :-)

#2.setingan PROPESTIES untuk membatasi


panjang input text

Cara menseting panjang input text di textbox:


Klik textbox2 + lihat properties:

MAXLENGTH

Keterangan:
10 artinya input di textbox hanya boleh 10 karakter saja

Halaman:

39

= input angka

10

Yuk Menikah. Bukan pacaran :-)

Halaman:

40

Yuk Menikah. Bukan pacaran :-)

Latihan Mandiri

Halaman:

41

Yuk Menikah. Bukan pacaran :-)

Latihan 5
NILAI AKHIR SISWA
Materi yang di dapat
1.
2.
3.

Keterangan

Buatlah form untuk input nilai siswa


Gunakan ENTER untuk pindah antar textbox
Gunakan fungsi ISNUMERIC untuk cek input angka

Keterangan:
1.COMBO JURUSAN = INFORMATION TEHNOLOGY, MANAJEMEN INFORMATIKA,
2. hitunglah: TOTAL NILAI = (nilai inggris+vb+sisco)
3. hitunglah: RATA RATA = TOTAL NILAI / 3
4. hitunglah: KETERANGAN:
a. jika RATA RATA >=70 keterangan = LULUS
b. jika RATA RATA 60-70 HER
c. jika RATA RATA < 60 TIDAK LULUS
4. Buatlah ENTER untuk pindah antar textbox
5. Gunakan fungsi ISNUMERIC untuk mengecek angka yang di input di TEXT2, TEXT3, TEXT4
Halaman:

42

Yuk Menikah. Bukan pacaran :-)

Halaman:

43

Yuk Menikah. Bukan pacaran :-)

Latihan

KOMPONEN
LAINNYA
VBNet

Halaman:

44

Yuk Menikah. Bukan pacaran :-)

CHECKBOX, RADIOBUTTON,
PROGRESSBAR, TOOLTIPS
Belajar properties: ENABLED & VISIBLE

Picturebox3

Picturebox1

CHECKBOX

Picturebox2

: untuk pilihan YA (di cek) TIDAK (tidak di cek), pilihan bisa banyak
Yang di cek adalah = YA (di cek) dan TIDAK (tidak dicek)
(contoh pilihan hobi siswa, jenjang sekolah, makanan kesukaan, dll

RADIOBUTTON

Picturebox4

: untuk pilihan YA-TIDAK, pilihan hanya 1 saja


Yang di cek adalah = YA (di pilih)

(contoh pilihan hanya 1 jenis kelamin, Diskon/ tidak, Lulus / Tidak, dll

PROGRESSBAR

: untuk bar bergerak digunakan untuk menungggu/proses/dll


aturlah properties: STYLE untuk efek bar nya

TOOLTIPS

: untuk membuat pesan di object


Halaman:

45

Yuk Menikah. Bukan pacaran :-)

Properties yang suka digunakan dalam program:


ENABLED
: object aktif (nilai TRUE=aktif, FALSE=object mati)
VISIBLE
: object muncul (nilai TRUE=muncul, FALSE=hilang)

Form di jalankan

Gambar hilang
(VISIBLE=false)

checkbox yang
aktif banyak

Radiobutton yang
aktif hanya 1 saja

Tombol mati
(ENABLED=false)

Progressbar aktif
sedang jalan

Ini adalah TOOLTIPs


-muncul pada saat MOUSE di
dekatkan dg object nya

Code-code (perhatikan lokasinya)


Halaman:

46

Yuk Menikah. Bukan pacaran :-)

Code di checkbox mobil

Code di: checkbox mobil lokasi code CheckedChanged


'/APAKAH CHECKBOX DI CEK
If CheckBox1.Checked = True Then
PictureBox1.Visible = True '/mobil muncul
Else
PictureBox1.Visible = False '/mobil hilang
End If

CHECKBOX yg di
cek ada 2 =
YA (dicek) dan
TIDAK (tidak di cek)

Code di checkbox monitor

Code: checkbox monitor lokasi code CheckedChanged


'/APAKAH CHECKBOX DI CEK
If CheckBox2.Checked = True Then
PictureBox2.Visible = False '/monitor hilang
Else
PictureBox2.Visible = True '/monitor muncul
End If

Halaman:

47

Yuk Menikah. Bukan pacaran :-)

Code di radiobutton perempuan

RADIOBUTTON
yg di cek hanya 1,
yaitu = YA (di pilih)

Code: radiobutton perempuan lokasi CheckedChanged


'/APAKAH RADIOBUTTON DI PILIH
If RadioButton2.Checked = True Then
PictureBox3.Visible = False
PictureBox4.Visible = True
End If

'/GAMBAR LAKI-LAKI HILANG


'/GAMBAR PEREMPUAN MUNCUL

Code di radiobutton laki-laki

Code: radiobutton laki-laki lokasi CheckedChanged


'/APAKAH RADIOBUTTON DI PILIH
If RadioButton1.Checked = True Then
PictureBox3.Visible = True
'/GAMBAR LAKI-LAKI MUNCUL
PictureBox4.Visible = False
'/GAMBAR PEREMPUAN HILANG
End If
Halaman:

48

Yuk Menikah. Bukan pacaran :-)

Code di checkbox tombol close

Code: checkbox lokasi CheckedChanged


'/APAKAH CHECKBOX DI PILIH
If CheckBox3.Checked = True Then
Button1.Enabled = False
'/TOMBOL CLOSE MATI
Else
Button1.Enabled = True
'/TOMBOL CLOSE AKTIF
End If

Code di TOMBOL PROGRESSBAR

Code: Tombol Mulai lokasi Click


'/DIFINISI BAR
With ProgressBar1
.Minimum = 0
'/nilai minimun
.Maximum = 100 '/nilai maximun
End With
'/JALANKAN BAR DENGAN LOOPING
For A = 0 To 100
ProgressBar1.Value = A
For b = 1 To 1000000 : Next
If A > 100 Then Exit For

Code WITHEND WITH, untuk


perwakilan nama object,biar tidak
diulang dlm ngetik code nya
Code FOR.NEXT, untuk looping

'/jalankan bar
'/ini untuk delay saja
'/ini untuk validasi looping aja

Next

Halaman:

49

Yuk Menikah. Bukan pacaran :-)

Latihan Mandiri

Halaman:

50

Yuk Menikah. Bukan pacaran :-)

Latihan6
MAKAN YUUUUUUUUUUUUUUUUK
Muncul sesuai pilihan
jenis kelamin..

Keterangan:
gambar laki2 perempuan = muncul sesuai pilihan radiobutton nya (jika di pilih laki2
maka gambar laki2 muncul gambar perempuan hilang)
HITUNG lah subtotal makanan dan total makan
HITUNG lah subtotal minuman dan total makan
HITUNG total makan = total makanan + total minuman
HITUNG DISKON = jika total makan >100.000 maka diskon=10% * total makan
HITUNG bayar = total makan - diskon
Halaman:

51

Yuk Menikah. Bukan pacaran :-)

Latihan5
BORONGGGGG YUUUUUUUUUUUUUK

Muncul sesuai pilihan jenis


kelamin..

Nama barang, harga


muncul otomatis saat
combo kodebarang BELUM
di klik
>> code di properties
Combobox1 selectedindexchanged

Keterangan:
1.
2.
3.
4.

COMBO kode barang isi dengan


= HD,
FD,
MS
Nama barang
= HARDDISK , FLASHDISK,
MOUSE
Harga
= 450000 ,
75000 ,
20000
Rumus2 :
a. SUBTOTAL = harga x jumlah belanja
b. DISCOUNT =
i. jika subtotal >=1.000.000, maka disc=20% x subtotal,
ii. jika subtotal >=500.000 s/d 999.999, maka disc=10% x subtotal,
iii. jika subtotal < 500, discount=0
c. TOTAL BELANJA = subtotal discount
d. .
5. TOMBOL INPUT DATA BARU = kosongkan input data, letakan KURSOR di textbox1

Halaman:

52

Yuk Menikah. Bukan pacaran :-)

Halaman:

53

Yuk Menikah. Bukan pacaran :-)

Latihan sendiri*

FUNGSI2
VBNet

Halaman:

54

Yuk Menikah. Bukan pacaran :-)

Latihan 4: fungsi2

FORMAT ANGKA

Fungsi angka:

FORMAT,
FORMATNUMBER, FORMATPERCENT, FORMATCURRENCY,
INT, VAL

Halaman:

55

Yuk Menikah. Bukan pacaran :-)

Form running..

Code di TOMBOL

Code :

'/ format angka menjadi ribuan, tanpa DESIMAL


TextBox2.Text = FormatNumber(TextBox1.Text, "0")

'/0=jumlah digit

'/---------------------------------------------------------------------------/
'/ catatan fungsi FORMAT
'/ fungsi FORMAT bisa digunakan untuk HASIL PERHITUNGAN,
'/ TIDAK BISA digunakan dengan tiba2 aja MEM-FORMAT TAMPILAN angka
'/ contoh: TextBox2.Text = Format(TextBox1.Text, "#,###")-> ngaco,hasilnya: #,###
'/ contoh: TextBox2.Text = Format(1*TextBox1.Text, "#,###")-> ok: 1,000,000 (ok)
'/-----------------------------------------------------------------------------/
Halaman:

56

Yuk Menikah. Bukan pacaran :-)

TextBox3.Text = Format(1 * TextBox1.Text, "#,#")

'/OK

Code :

'/ format angka menjadi ribuan dg desimal


TextBox4.Text = FormatNumber(TextBox1.Text, "2")

'/2=jumlah desimal

'/ atau dengan fungsi ini


TextBox5.Text = Format(1 * TextBox1.Text, "#,###.00")

'/00=jumlah desimal

Code :

'/ format angka MINUS -->dg simbol kurawal:(

TextBox6.Text = FormatNumber(TextBox1.Text, "2", TriState.True, TriState.True)

Code :

'/ format angka menjadi ribuan, 4 desimal


TextBox7.Text = FormatNumber(TextBox1.Text, "4")

'/ atau dengan fungsi ini


TextBox8.Text = Format(1 * TextBox1.Text, "#,#.0000")

Halaman:

57

'/4=jumlah desimal

'/0000=jumlah desimal

Yuk Menikah. Bukan pacaran :-)

Code penting nih,

menghilangkan

FORMAT RIBUAN di angka,

PENTING karena jika angka ini di SIMPAN ke dalam database maka SEMUA ANGKA BER-FORMAT harus di

buang/di hilangkan

Code :

'/ normal kan angka (hilangkan ribuan)..PENTING nih


TextBox9.Text = Format(TextBox4.Text, "General Number")

'/desimal tetap muncul

TextBox10.Text = Format(1 * TextBox4.Text, "0.0000")

'/normalkan dg 4 desimal

Code :

'/ format mata uang DEFAULT (regional setting)


TextBox11.Text = Format(TextBox1.Text, "Currency")
TextBox12.Text = FormatCurrency(TextBox1.Text, "4")

'/default mata uang


'/default dg 4 desimal

Code :

'/ format mata uang sendiri, matauang di TULIS


TextBox13.Text = Format(1 * TextBox1.Text, "Rp #,#.00")

Halaman:

58

'/matauang di ketik

Yuk Menikah. Bukan pacaran :-)

Code :

'/ format angka menjadi persen

TextBox14.Text = FormatPercent(TextBox1.Text, "2")

'/2=jumlah desimal

Code :

'/ pembulatan 2 digit

TextBox16.Text = Format(1 * TextBox15.Text, "#.00")

Code :

'/ pembulatan 2 digit

TextBox17.Text = FormatNumber(TextBox15.Text, "2")

Code :

'/ membuang angka desimal, tidak di bulatkan..


TextBox18.Text = Int(TextBox15.Text)

Halaman:

59

Yuk Menikah. Bukan pacaran :-)

Latihan 5: fungsi2

Fungsi STRING

LEN : total jumlah karakter


LEFT : membaca dari KIRI RIGHT : membaca dari KANAN MID : membaca dari TENGAH
LCASE : mengecilkan huruf UCASE : merubah huruf jadi kapital (huruf besar)
INSTR : mencari karater di dalam kalimat
REPLACE : merubah huruf SPLIT : memotong text

Halaman:

60

Yuk Menikah. Bukan pacaran :-)

Form running

Code-Code di TOMBOL
Code :

'/ Total karakter


TextBox2.Text =

Len(TextBox1.Text)

Halaman:

61

Yuk Menikah. Bukan pacaran :-)

Code :

'/ ambil karakter dari KIRI

TextBox3.Text = Microsoft.VisualBasic.Left(TextBox1.Text, 3)

Code :

'/ ambil karakter dari KANAN

TextBox4.Text = Microsoft.VisualBasic. Right(TextBox1.Text, 3)

Code :

'/ ambil karakter dari TENGAH

TextBox5.Text = Microsoft.VisualBasic. Mid(TextBox1.Text, 3, 5)

Code :

'/ rubah menjadi HURUF KECIL

TextBox6.Text = Microsoft.VisualBasic. LCase(TextBox1.Text)

Code :

'/ rubah menjadi HURUF BESAR

TextBox7.Text = Microsoft.VisualBasic. LCase(TextBox1.Text)

Halaman:

62

Yuk Menikah. Bukan pacaran :-)

Code :

'/ Cari karakter a di dalam kalimat


TextBox8.Text = Microsoft.VisualBasic. InStr(1, TextBox1.Text, "a", 1)
If Val(TextBox8.Text) > 0 Then
TextBox9.Text = "ADA"
Else
TextBox9.Text = "TIDAK ADA"
End If

Code :

'/ cari & ganti semua karakter

TextBox10.Text = Microsoft.VisualBasic.Replace(TextBox1.Text, "a", "X", 1)

Halaman:

63

Yuk Menikah. Bukan pacaran :-)

Fungsi SPLIT untuk memotong


/mencari karakter

Code di tombol;

'/ mengambil text, SEBELUM karakter tertentu


'/ fungsi SPLIT untuk memotong text, di KARAKTER TERTENTU
'/ (0) = sebelum karakter, (1)=sesudah karakter
TextBox13.Text = Split(TextBox1.Text, "a")(0)

Code di tombol;

'/ mengambil text, SESUDAH karakter tertentu


'/ fungsi SPLIT untuk memotong text, di KARAKTER TERTENTU
'/ (0) = sebelum karakter, (1)=sesudah karakter
TextBox13.Text = Split(TextBox1.Text, "a")(1)

Halaman:

64

Yuk Menikah. Bukan pacaran :-)

Code di TEXTBOX nya


Code di TextBox lokasi (events) TEXTCHANGE

'/ besarkan semua huruf & letakan cursor diakhir


'/ besarkan huruf
TextBox11.Text = UCase(TextBox11.Text)

'/ letakkan kursor di akhir text


TextBox11.SelectionStart = Len(TextBox11.Text)

Halaman:

65

Yuk Menikah. Bukan pacaran :-)

Fungsi untuk membatasi


input karakter di textbox
Code di TextBox lokasi (events) TEXTCHANGE

'/ membatasi input text dg MEMBUAT FUNGSI


TextBox12.Text = BATAS(TextBox12.Text)
TextBox12.SelectionStart = Len(TextBox12.Text)

Buatlah sebuah

'/cek input
'/letakkan kursor di akhir text

FUNCTION untuk mengecek setiap karakter yg di input

CARA membuat FUNCTION sama dengan membuat PROCEDURE

Membuat FUNCTION untuk mengecek setiap karakter yang


di input..
Function BATAS(ByVal TEXTNYA As Object) As String
'/ difinisikan data untuk membatasi input (yg tidak boleh di input)

Dim TIDAK_BOLEH As String = "1234567890"

Dim AA As Integer = 0
Dim TEXT_ok As String = ""
Dim KARAKTER As String = ""

'/text akhir
'/yang sedang di baca
Halaman:

66

Tuliskan karakter yg di
larang nya
(TIDAK BOLEH)

Yuk Menikah. Bukan pacaran :-)

'/ looping di text yang di input


For AA = 1 To Len(TEXTNYA)
KARAKTER = Mid(TEXTNYA, AA, 1)
If InStr(1, TIDAK_BOLEH, KARAKTER, 1) = 0 Then
TEXT_ok = TEXT_ok & KARAKTER
End If
Next

'/baca per karakter


'/cek,apakah input betul
'/jika betul,simpan

BATAS = TEXT_ok

'/text yg ok

End Function

Efek dari FUNCTION adalah ; akan


mengecek setiap karakter yang di
input di TEXTBOX,
Sekalipun di input di tengah kalimat,
karakter tsb tetap akan di cek..

Membuat FUNTION sama dengan membuat PROCEDURE..

Halaman:

67

Yuk Menikah. Bukan pacaran :-)

Halaman:

68

Yuk Menikah. Bukan pacaran :-)

Latihan 6: fungsi2

Tanggal & Jam

Timer untuk membuat


TGL,JAM berjalan

Halaman:

69

Yuk Menikah. Bukan pacaran :-)

Tampilan saat running:

Selisih TGL untuk


PEMINJAMAN/SEWA

Tgl dan Jam untuk


informasi

Maju mundur untuk


JATUH TEMPO

Pengurangan JAM
untuk PARKIR

PROPERTIES:
DateTimePicker untuk TANGGAL .Format=Custom, CustomFormat=dd/MMM/yyyy
DateTimePicker untuk JAM .Format=Custom, CustomFormat=HH:mm:ss

Halaman:

70

Yuk Menikah. Bukan pacaran :-)

Code code:
Code di: TIMER - TICK
'bikin tgl dan jam konputer
Me.LBL_tgl.Text = Format(Now, "dd-MMM-yy")
Me.lbl_jam.Text = Format(Now, "HH:mm:ss")

Code di: TOMBOL -AMBIL TGL dan JAM


Dim TANGGAL_JAM As Date
TANGGAL_JAM = Now

'difinisi varisbel sbg TGL


'ambil TGL JAM komputer

Me.TextBox1.Text = Format(Now, "dd-MMM-yy HH:mm:ss")


Me.TextBox2.Text = TANGGAL_JAM.Year
Me.TextBox3.Text = Format(Now, "yy")
Me.TextBox4.Text
Me.TextBox5.Text
Me.TextBox6.Text
Me.TextBox7.Text

=
=
=
=

TANGGAL_JAM.Month
Format(Now, "MMM")
Format(Now, "MMMM")
Format(Now, "MM")

Me.TextBox8.Text = TANGGAL_JAM.Day
Me.TextBox9.Text = Format(Now, "dddd")

'Format(Now, "dd")
'nama hari

Me.TextBox10.Text
Me.TextBox11.Text
Me.TextBox12.Text
Me.TextBox13.Text
Me.TextBox14.Text

'jam komputer

=
=
=
=
=

Format(Now, "HH:mm:ss")
TANGGAL_JAM.Hour
TANGGAL_JAM.Minute
TANGGAL_JAM.Second
TANGGAL_JAM.Millisecond

Halaman:

71

Yuk Menikah. Bukan pacaran :-)

Code di: TOMBOL HASIL (tahun maju mundur)


'cek apakah inputnya angka?
If IsNumeric(Me.TextBox15.Text) = False Then
MsgBox("INPUT DENGAN ANGKA..", MsgBoxStyle.Information)
Exit Sub
End If
Dim TGL As Date
Dim TAHUN_maju As Date

'variable

TGL = Now
TAHUN_maju = TGL.AddYears(Me.TextBox15.Text)
Me.TextBox16.Text = TAHUN_maju.Date

'ambil tgl komputer


'majukan tahun
'tampilkan

'/--------------------------------------------------/

DATEADD

'/metode lain dengan fungsi


, hasilnya sama
'/--------------------------------------------------/
MsgBox("sekarang dengan fungsi DateAdd....")
TGL = Now
'ambil tgl
TAHUN_maju = DateAdd("yyyy", Val(Me.TextBox15.Text), TGL)
'majukan tahun
Me.TextBox16.Text = TAHUN_maju.Date
'tampilkan

Code di: TOMBOL HASIL (bulan maju mundur)


'cek apakah inputnya angka?
If IsNumeric(Me.TextBox17.Text) = False Then
MsgBox("INPUT DENGAN ANGKA..", MsgBoxStyle.Information)
Exit Sub
End If
Dim TGL As Date
Dim BULAN_maju As Date
TGL = Now
BULAN_maju = TGL.AddMonths(Me.TextBox17.Text)
Me.TextBox18.Text = BULAN_maju.Date

Halaman:

72

'ambil tgl komputer


'majukan tahun
'tampilkan

Yuk Menikah. Bukan pacaran :-)


'/--------------------------------------------------/
'/metode lain dengan fungsi DATEADD, hasilnya sama
'/--------------------------------------------------/
MsgBox("sekarang dengan fungsi DateAdd....")
TGL = Now
BULAN_maju = DateAdd("m", Val(Me.TextBox17.Text), TGL)
Me.TextBox18.Text = BULAN_maju.Date

'ambil tgl
'majukan tahun
'tampilkan

Code di: TOMBOL HASIL (hari maju mundur)


'cek apakah inputnya angka?
If IsNumeric(Me.TextBox19.Text) = False Then
MsgBox("INPUT DENGAN ANGKA..", MsgBoxStyle.Information)
Exit Sub
End If
Dim TGL As Date
Dim HARI_maju As Date
TGL = Now
HARI_maju = TGL.AddDays(Me.TextBox19.Text)
Me.TextBox20.Text = HARI_maju.Date

'ambil tgl
'majukan tahun
'tampilkan

'/--------------------------------------------------/
'/metode lain dengan fungsi DATEADD, hasilnya sama
'/--------------------------------------------------/
MsgBox("sekarang dengan fungsi DateAdd....")
TGL = Now
HARI_maju = DateAdd("d", Val(Me.TextBox19.Text), TGL)
Me.TextBox20.Text = HARI_maju.Date

'ambil tgl
'majukan tahun
'tampilkan

KET: pake tanda MINUS ( - ) untuk mundur

Code di: TOMBOL HASIL (jam maju mundur)


'cek apakah inputnya angka?
If IsNumeric(Me.TextBox22.Text) = False Then
Halaman:

73

Yuk Menikah. Bukan pacaran :-)


MsgBox("INPUT DENGAN ANGKA..", MsgBoxStyle.Information)
Exit Sub
End If
Dim TGL As Date
Dim JAM_maju As Date
TGL = Now
JAM_maju = TGL.AddHours(Me.TextBox22.Text)
Me.TextBox23.Text = Format(JAM_maju, "HH:mm:ss")

'ambil tgl
'majukan tahun
'tampilkan

'/--------------------------------------------------/
'/metode lain dengan fungsi DATEADD, hasilnya sama
'/--------------------------------------------------/
MsgBox("sekarang dengan fungsi DateAdd....")
TGL = Format(Now, "HH:mm:ss")
JAM_maju = DateAdd("h", Val(Me.TextBox22.Text), TGL)
Me.TextBox23.Text = Format(JAM_maju, "HH:mm:ss")

'ambil jam
'majukan tahun
'tampilkan

Code di: TOMBOL HASIL (menit maju mundur)


'cek apakah inputnya angka?
If IsNumeric(Me.TextBox24.Text) = False Then
MsgBox("INPUT DENGAN ANGKA..", MsgBoxStyle.Information)
Exit Sub
End If
Dim TGL As Date
Dim MENIT_maju As Date
TGL = Now
MENIT_maju = TGL.AddMinutes(Me.TextBox24.Text)
Me.TextBox25.Text = Format(MENIT_maju, "HH:mm:ss")

'ambil tgl
'majukan tahun
'tampilkan

'/--------------------------------------------------/
'/metode lain dengan fungsi DATEADD, hasilnya sama
'/--------------------------------------------------/
MsgBox("sekarang dengan fungsi DateAdd....")
TGL = Format(Now, "HH:mm:ss")
MENIT_maju = DateAdd("n", Val(Me.TextBox24.Text), TGL)
Me.TextBox25.Text = Format(MENIT_maju, "HH:mm:ss")

Halaman:

74

'ambil jam
'majukan tahun
'tampilkan

Yuk Menikah. Bukan pacaran :-)

Code di: TOMBOL SELISIH (T2 T1)


'selisih
Dim T1 As Date = Me.DateTimePicker1.Text
Dim T2 As Date = Me.DateTimePicker2.Text
Dim SELISIH_tgl As TimeSpan

'ambil tgl
'ambil tgl
'variable tempat pengurangan tgl

SELISIH_tgl = T2.Date - T1.Date


Me.TextBox21.Text = SELISIH_tgl.TotalDays & " hari"

Code di: TOMBOL SELISIH (T2 T1)


'/--------------------------------------/
' cari selisih (TOTAL MENIT)
'/--------------------------------------/
Dim Jam1 As DateTime = Me.DateTimePicker3.Text
Dim Jam2 As DateTime = Me.DateTimePicker4.Text
Dim SELISIH_jam As TimeSpan
SELISIH_jam = Jam2 - Jam1
Me.TextBox26.Text = SELISIH_jam.TotalMinutes
Halaman:

75

'ambil jam
'ambil jam
'var.untuk hitungan jam

Yuk Menikah. Bukan pacaran :-)

'/--------------------------------------/
' cari lama satuan JAM nya (parkir)
'/--------------------------------------/
'variabel buat cari rincian selisih jam
Dim Total_menit As Integer
Dim JAM_nya As Integer
Dim MENIT_nya As Integer
'dipecah menjadi jam
Total_menit = SELISIH_jam.TotalMinutes
JAM_nya = Int(Total_menit / 60)
MENIT_nya = Total_menit Mod 60
Me.TextBox27.Text = JAM_nya & " jam," & MENIT_nya & " menit"

TOMBOL EXIT:

Code di: TOMBOL EXIT


Dim indra As String
indra = MsgBox("MAU KELUAR PROGRAM..?", MsgBoxStyle.Question + MsgBoxStyle.YesNo)
If indra = vbYes Then
End
End If

INFORMASI:
Untuk perintah MAJU MUNDUR TANGGAL bisa juga menggunakan fungsi DATEADD

Halaman:

76

Yuk Menikah. Bukan pacaran :-)

Latihan 4. Animasi

Latihan 7 : Animasi

Membuat ANIMASI menggunakan TIMER


Membuat TANGGAL dan JAM

Name: MATAHARI
Berkedip-kedip genit

Name: SUPERMEN

Name: KAPAL

Name: ROKET
Name: PANAH

Ambil TIMER lalu tempelkan di Form, ENABLED=True

Halaman:

77

Yuk Menikah. Bukan pacaran :-)

Code di TIMER1 TICK


'----- MEMBUAT TGL dan JAM -----'
Me.LBL_TANGGAL.Text = Format(Now, "dd-MMM-yyyy")
Me.LBL_JAM.Text = Format(Now, "HH:mm:ss")

'----- MATAHARI KEDIP KEDIP -----'


If Second(Now) Mod 2 = 0 Then
Me.MATAHARI.Visible = True
Else
Me.MATAHARI.Visible = False
End If

'===== ANIMASI GERAK ====='


'----- SUPERMEN: KE KIRI -----'
Me.SUPERMEN.Left = Me.SUPERMEN.Left - 50
If Me.SUPERMEN.Left + Me.SUPERMEN.Width < 0 Then
Me.SUPERMEN.Left = Me.Width
End If
'----- KAPAL: KE KANAN -----'
Me.KAPAL.Left = Me.KAPAL.Left + 50
If Me.KAPAL.Left > Me.Width Then
Me.KAPAL.Left = -Me.KAPAL.Width
End If
'----- ROKET : KE ATAS -----'
Me.ROKET.Top = Me.ROKET.Top - 50
If Me.ROKET.Top + Me.ROKET.Height < 0 Then
Me.ROKET.Top = Me.Height
End If
'----- PANAH : KE BAWAH -----'
Me.PANAH.Top = Me.PANAH.Top + 50
If Me.PANAH.Top > Me.Height Then
Me.PANAH.Top = -Me.PANAH.Height
End If

Halaman:

78

NOW= perintah
menampilkan TGL
dan JAM
Gunakan FORMAT
untuk
memisahkan
antara TGL dan
JAM

MOD = operasi
sisa hasil bagi

Yuk Menikah. Bukan pacaran :-)

Halaman:

79

Yuk Menikah. Bukan pacaran :-)

Membuat

MENU UTAMA,
TOOLBAR
&
FLOATING MENU

Halaman:

80

Yuk Menikah. Bukan pacaran :-)

Membuat MENU UTAMA


(MenuStrip)

Untuk latihan MENU, tambahkanlah FORM lagi sebanyak 2 form, jadi sekarang ada 3 FORM
AKTIFKAN FORM1 (Klik 2x Form 1)
Tambahkan component : MENUSTRIP
Form :

MENU DATA MOTOR:

Halaman:

81

Yuk Menikah. Bukan pacaran :-)

SUB MENU: HONDA

SUB MENU: YAMAHA

SUB MENU : SUZUKI

Halaman:

82

Yuk Menikah. Bukan pacaran :-)


SUB MENU: BAJAJ

DATA MOBIL:

SUB MENU: HONDA

SUB MENU: SUZUKI

SUB MENU: DAIHATSU

Halaman:

83

Yuk Menikah. Bukan pacaran :-)

MENU KELUAR PROGRAM:

Untuk membuat inisial menu, gunakan tanda & sebelum huruf


inisial nya..

Halaman:

84

Yuk Menikah. Bukan pacaran :-)

CODE untuk MENAMPILKAN


FORM:
Ket:
menampilkan FORM 2 yang bukan MDI Child

Form2.Show()

Ket:
menampilkan FORM 2 yang bukan MDI Child,

Form2.ShowDialog()

Code:

secara

FOCUS/MODAL

menu EXIT - Click

Dim tanya As String


tanya = MsgBox("Mau keluar program", MsgBoxStyle.Question + MsgBoxStyle.YesNo)
If tanya = vbYes Then
END
End If

menu PROGRAMMER - Click

Code:
Msgbox Yang buat keren loh & CHR(13) & Nama nya: INDRA ES , MsgBoxStyle.Information

Halaman:

85

END selesai
Program

Chr(13) Enter
(ganti baris)

Yuk Menikah. Bukan pacaran :-)

Membuat TOOLBAR
(ToolStrip)

Tambahkan COMPONEN : TOOLSTRIP

ToolStrip

Sub Menu
LAYOUT TOOLBAR:

Design toolbar

Halaman:

86

Yuk Menikah. Bukan pacaran :-)

Lokasi toolbar

DESIGN TOOLSTRIP

Properties:

BUTTON

DISPLAY TYPE
FONT
FORE COLOR
IMAGE
IMAGE ALIGN
IMAGE SCALING
TEXT

:
:
:
:
:
:
:

menampilkan gambar saja/ gambar + text / Text saja


jenis huruf
warna huruf
mengambil gambar menu
lokasi gambar
mengatur UKURAN GAMBAR
judul huruf

Halaman:

87

Yuk Menikah. Bukan pacaran :-)

TEXT ALIGN
TEXT IMAGE RELATION
TOOL TIP TEXT
TEXT DIRECTION

:
:
:
:

lokasi huruf
pengaturan LOKASI huruf & gambar
keterangan text (saat mouse berada dg toolbar)
rotasi huruf

ToolStrip DROPDOWN BUTTON (untuk membuat SubMenu)

DROP DOWN ITEMs

: untuk membuat SUB MENU

DESIGN SUB MENU:

Properties:

Halaman:

88

Yuk Menikah. Bukan pacaran :-)

ToolStrip TEXT BOX

TEXT
TEXT BOX TEXT ALIGN
TOOL TIP TEXT

: judul menu
: atur rata kiri, tengah, kanan text
: memunculkan kotak keterangan saat MOUSE berada di MENU

CODE di TOOLSTRIP

Code:

Untuk mengetikkan CODE di toolstrip, cukup dengan meng-KLIK 2x pada ICON yang dituju, misalnya KLIK 2x pada icon
EXIT

ToolSript: EXIT - Click

Dim tanya As String


tanya = MsgBox("Mau keluar program", MsgBoxStyle.Question + MsgBoxStyle.YesNo)
If tanya = vbYes Then
END
End If

ToolScript PROGRAMMER - Click

Code:
Msgbox Yang buat keren loh & CHR(13) & Nama nya: INDRA ES , MsgBoxStyle.Information

Halaman:

89

END selesai
Program

Chr(13) Enter
(ganti baris)

Yuk Menikah. Bukan pacaran :-)

Membuat FLOATING MENU


(ConTextMenuStrip)

Jika FORM di KLIK maka akan MUNCUL FLOATING MENU di POSISI KURSOR MOUSE. Untuk membuat MENU ini maka kita
butuhkan sebuah MENU KHUSUS dg component CONTEXTMENUSTRIP
TAMBAHKAN COMPONEN : ConTextMenuStrip
DESIGN:
DESIGN menu ini sama dengan design MENU pada MENUSCTIP

ConTextMenuStrip:
Menu khusus untuk
Floating Menu

CODE untuk MEMUNCULKAN ConTextMenuStrip. Jika TOMBOL KANAN MOUSE di KLIK di FORM

Halaman:

90

Yuk Menikah. Bukan pacaran :-)

CODE:

FORM lokasi: Mouse Down

If e.Button = Windows.Forms.MouseButtons.Right Then


ContextMenuStrip1.Show (Cursor.Position.X, Cursor.Position.Y)
End If

Code lengkap nya sbb:

ContextMenuStrip1.Show (System.Windows.Forms.Cursor.Position.X, System.Windows.Forms.Cursor.Position.Y)

Code:

ConTextMenuStrip : EXIT PROGRAM lokasi: Click

Dim tanya As String


tanya = MsgBox("Mau keluar program", MsgBoxStyle.Question + MsgBoxStyle.YesNo)
If tanya = vbYes Then
END
End If

TAMPILAN Floating Menu saat dijalankan, dan saat MOUSE TOMBOL KANAN di KLIK:

Floating menu
muncul jika klik
kanan mouse di
klik

Halaman:

91

END selesai
Program

Yuk Menikah. Bukan pacaran :-)

Membuat

MDI FORM

Halaman:

92

Yuk Menikah. Bukan pacaran :-)

Membuat

MDI Form

Untuk FORM dalam visual basic dapat dibedakan menjadi 3 jenis:


1. FORM BIASA (Single Form)
2. MDI Form (MDI PARENT)
3. MDI Child Form
CONTOH aplikasi menggunakan MDI: Ms WORD, Excel, dll

MEMBUAT MDI PARENT FORM


AKTIFKAN FORM 1 ,

Untuk membuat MDI biasa menjadi MDI

PARENT,cukup rubah PROPERTIES :


IsMDIContainer TRUE
Merubah FORM biasa meniadi MDI PARENT Form:

PROPERTIES

SETTING

Is MDI Container

TRUE

Form biasa menjadi


MDI parent

Form biasa

Form MDI Parent

Halaman:

93

Yuk Menikah. Bukan pacaran :-)

Untuk latihan MDI : tambahlah form lagi sebanyak 3 form :


TAMBAH FORM : Menu Project + Add Windows Form . Klik tombol Add
Untuk latihan MDI : Membuat MENU untuk MDI Form

Halaman:

94

Yuk Menikah. Bukan pacaran :-)


CODE

CODE untuk MENAMPILKAN FORM biasa sebagai

FORM MDI CHILD

CODE:

Menu : BUKA FORM 2 Click

---MENAMPILKAN FORM BIASA MDI CHILD

Ket:

Dim AAA As New Form2


FORM2 adalah FORM biasa yg akan di MUNCULKAN

Dim AAA As New Form2


AAA.MdiParent = Me
AAA.Show()

FormChild.MdiParent = Me
Me Ini bisa di GANTI dengan NAMA MDI PARENT
nya, misalnya MDI PARENT namanya Form1:
FormChild.MdiParent = Form1

CODE:

Menu : BUKA FORM 3 Click

---MENAMPILKAN FORM BIASA MDI CHILD

begitu seterus nya

FORM3 form child nya, yg di panggil

Dim ABC As New Form3


ABC.MdiParent = Me
ABC.Show()

CODE untuk mengatur susunan


form mdi child
CODE:

Menu : WINDOWS Cascade Click

Ket:
CASCADE ; mengatur tampilan FORM CHILD
secara bertumpuk puk puk

---MENGATUR FORM CHILD secara CASCADE

Me.LayoutMdi(MdiLayout.Cascade)

CODE:

Menu : WINDOWS Vertical Click

Ket:
VERTICAL ; mengatur tampilan FORM CHILD
secara berjajar ke ATAS

---MENGATUR FORM CHILD secara VERTICAL

Me.LayoutMdi(MdiLayout. TileVertical)

Halaman:

95

Yuk Menikah. Bukan pacaran :-)

CODE:

Menu : WINDOWS Horizontal Click

---MENGATUR FORM CHILD secara HORIZONTAL

Me.LayoutMdi(MdiLayout. TileHorizontal)

Ket:
HORIZONTAL ; mengatur tampilan FORM CHILD
secara berjajar ke KESAMPING

TAMPILAN pada saat program MDI dijalankan:


WINDOWS CASCADE

WINDOWS VERTICAL

WINDOWS HORIZONTAL

Halaman:

96

Yuk Menikah. Bukan pacaran :-)

Halaman:

97

Yuk Menikah. Bukan pacaran :-)

SELINGAN
Ih.. akang
indraES.. cute,
mirip Afgan
deh..

Main game
yuk.

Ah.. ajak makan


siang ah..

mas Indra ES
senyum nya
wow

Idih aa
cilup baaaa

Halaman:

98

Yuk Menikah. Bukan pacaran :-)

DataBase Access
TOKO

Halaman:

99

Yuk Menikah. Bukan pacaran :-)

DATABASE TOKO, TABLE & FIELD


Database menggunakan SQL SERVER, nama database =
SImpan dengan VERSI

TOKO

ACCESS 2003 (ber-extention MDB)

Table : BARANG
No
1
2
3
4

Nama Field
Kode_barang
Nama_barang
Satuan
stok

type
Text
Text
Text
number

30
30
10

Size

Ket
PrimaryKey

type
Text
Text
text

Size
30
30
100

Ket
PrimaryKey

Size

Ket
PrimaryKey

double

Isi 10 data barang

Table : PELANGGAN
No
1
2
3

Nama Field
Kode_pelanggan
Nama_pelanggan
Alamat
Isi 10 data pelanggan

Table : BELI
No
1
2
3
4

No_beli
Tgl
Kode_barang
jumlah

Nama Field

Type
Text
DateTime
Text
number

30
30

Double

Table : JUAL
No
1
2
3
4
5
6
7

Nama Field
No_jual
Tgl
Kode_pelanggan
Kode_barang
harga
jumlah
Subtotal_jual

Type
Text
DateTime
Text
text
Number
Number
number

Halaman:

100

30
30
30

Size

Ket
PrimaryKey

Yuk Menikah. Bukan pacaran :-)

Halaman:

101

Yuk Menikah. Bukan pacaran :-)

VBNET

PROGRAM TOKO
db Access 2003
(*.mdb)
+
VBNet 2010 OLEDB
Halaman:

102

Yuk Menikah. Bukan pacaran :-)

#1

Membuat modul koneksi ke database


SEBELUM membuat form macem2, buatlah terlebih dahulu MODUL untuk KONEKSI ke DATABASE nya
Buatlah sebuah MODUL yang berisikan code untuk koneksi ke database
Klik menu = PROJECT + ADD MODULE

Muncul kotak

Halaman:

103

Yuk Menikah. Bukan pacaran :-)

Code Module Koneksi ke DB


Muncul kotak kosong, ketikan code sbb :
MODULE1

'/--difinisi lokasi database access


Public KONEKSI_string As String
Public LOKASI_db As String

'untuk koneksi string ke database


'untuk lokasi folder database

'/--difinisi variabel koneksi database


Public CONN As New OleDb.OleDbConnection
Public CMD As New OleDb.OleDbCommand

'untuk koneksi ke DataBase


'untuk perintah sql nya

'/---var.buat khusus DataSet & DataGridView


Public CMD_data As New OleDb.OleDbDataAdapter
Public RS_data As New DataTable

Variable ini dipake nanti,


pada saat munculin data
ke DataGridView

Public Sub BUKA_database()


Try
LOKASI_db = Application.StartupPath

'/ambil folder default(\bin\Debug)

KONEKSI_string = "provider=microsoft.jet.oledb.4.0;" & _


"data source=" & LOKASI_db & "\TOKO_KU.mdb"
Conn = New OleDb.OleDbConnection(KONEKSI_string)
Conn.Open()
Exit Sub

'/buka koneksi db
'/keluar dari code

Catch ex As Exception
MsgBox("KONEKSI ERROR" & Chr(13) & "PESAN:" & Err.Description)
End
'/jika error koneksi maka keluar program
End Try
End Sub
Code: TRY.CATCH..END TRY
untuk mengecek jika ada error didalam TRY
Code: LOKASI_db =Application.StartupPath
untuk mengambil folder default hasil program (\BIN\DEBUG)
Halaman:

104

Yuk Menikah. Bukan pacaran :-)

Halaman:

105

Yuk Menikah. Bukan pacaran :-)

#2

Membuat input data supplier


(Form Supplier)

#1.

Rubahlah NAME TOMBOL .. TOMBOL_INPUT, TOMBOL_SIMPAN, TOMBOL_BATAL, TOMBOL_CLOSE

Ketikan code sbb:

Halaman:

106

Yuk Menikah. Bukan pacaran :-)

Code di TOMBOL
Code di tombol input :
'/kosongkan input
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
'/letakan kursor
TextBox1.Focus()
'/seting tombol aktif dan tidak
TOMBOL_input.Visible = False
'/false=hilang
TOMBOL_simpan.Visible = True
'/true=muncul
TOMBOL_batal.Visible = True
TOMBOL_close.Visible = False

Code di tombol SIMPAN :


'/======================================/
'/ #1.SIMPAN DATA
'/======================================/
Call BUKA_database()

Halaman:

107

Yuk Menikah. Bukan pacaran :-)

'/------------------------------------------/
'/ #2. Cek apakah primarykey sudah ada?
'/------------------------------------------/
Dim aa As String
aa = "SELECT * FROM SUPPLIER WHERE KODE_SUPPLIER='" & TextBox1.Text & "'"
CMD = New OleDb.OleDbCommand(aa, CONN)
'/buka sql,buka table
Dim Rs As OleDb.OleDbDataReader
Rs = CMD.ExecuteReader()

'/siapan var untuk menampung data


'/jalankan sql,ambil data sql

'/----------------------------------------------/
'/ Cek, apakah data kode sudah ada / data ada
'/ jika ADA --> tolak simpan data karena data double
'/----------------------------------------------/

If

Rs.HasRows Then

IF RS.HASROWS Then dibaca


apakah datanya ada
IF NOT RS.HASROWS Then
dibaca apakah data TIDAK ada

'/ kode sudah ada, tolak


MsgBox("KODE SUDAH ADA, PROSES DIBATALKAN", MsgBoxStyle.Information)
Exit Sub
'/keluar dr procedure

End if
'/--------------------------------------------------------------------/
'/

CODE SIMPAN DATA BARU

'/--------------------------------------------------------------------/
aa = " INSERT INTO SUPPLIER " & _
" (KODE_SUPPLIER, NAMA_SUPPLIER, ALAMAT) " & _
" VALUES " & _
" ('" & TextBox1.Text & "'" & _
" ,'" & TextBox2.Text & "'" & _
" ,'" & TextBox3.Text & "')"
CMD = New OleDb.OleDbCommand(aa, CONN)
CMD.ExecuteNonQuery()

'/buka table
'/jalankan sql

MsgBox("DATA TELAH DI SIMPAN..", MsgBoxStyle.Information)


'/seting tombol aktif dan tidak
TOMBOL_input.Visible = True
'/false=hilang
TOMBOL_simpan.Visible = False
'/true=muncul
TOMBOL_batal.Visible = False
TOMBOL_close.Visible = True

Halaman:

108

Yuk Menikah. Bukan pacaran :-)

Code di tombol BATAL :


'/ kosongkan input
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
MsgBox("BATAL..", vbInformation)
'/seting tombol aktif dan tidak
TOMBOL_input.Visible = True
'/false=hilang
TOMBOL_simpan.Visible = False
'/true=muncul
TOMBOL_batal.Visible = False
TOMBOL_close.Visible = True

Code di tombol EXIT :


'/keluar dari form
Me.Close()

Halaman:

109

Yuk Menikah. Bukan pacaran :-)

Code di FORM
#1.Code di FORM_LOAD
Code di form - LOAD :
'/kosongkan textbox saat form muncul
TextBox1.Text = ""
TextBox2.Clear()
TextBox3.Clear()

# Jalankan program..

Halaman:

110

Yuk Menikah. Bukan pacaran :-)

A.Code2 tambahan :
Pindah antar input dg di ENTER
#2.Code di TEXTBOX untuk meng-aktifkan
TOMBOL ENTER Berpindah antar TextBox

(1) Code di TEXTBOX1 _ KEYDOWN

Code di TEXTBOX1 - KEYDOWN


'/jika di enter maka letakn kursor di text berikutnya
If e.KeyCode = Keys.Return Then TextBox2.Focus()

Halaman:

111

Yuk Menikah. Bukan pacaran :-)

(2) Code di TEXTBOX2 _ KEYDOWN

Code di TEXTBOX2 - KEYDOWN


'/jika di enter maka letakn kursor di text berikutnya
If e.KeyCode = Keys.Return Then TextBox3.Focus()

(3) Code di TEXTBOX3 _ KEYDOWN


* yang ini
boleh di ketik
, boleh tidak

Code di TEXTBOX3 - KEYDOWN


'/jika di enter maka jalankan TOMBOL SIMPAN
If e.KeyCode = Keys.Return Then TOMBOL_simpan_Click(Me,

Ket: klik
Code

e)

otomatis tombol (button)

TOMBOL_SIMPAN_CLICK(Me, e)

Adalah untuk meng-KLIK kan otomatis tombol simpan


Jadi user tidak meng-klik tombol simpan, tapi sudah OTOMATIS oleh code

Halaman:

112

Yuk Menikah. Bukan pacaran :-)

B.Code2 tambahan :
Membatasi panjang karakter input
Untuk input data TEXT yang mempunyai JENIS FIELD TEXT (Varchar),
input data nya TIDAK BOLEH MELEBIHI PANJANG FIELD nya
Untuk itu kita seting adalah PROPERTIES: MAXLENGTH
di masing2 Textbox

#3. Setting MAXLENGTH

di TextBox

Setinglah MAXLENGTH untuk TEXTBOX yang mempunyai TYPE FIELD TEXT/STRING,


Input MAXLENGTH sesuai dengan LEBAR FIELD nya agar INPUT TIDAK MELEBIHI BATAS LEBAR FIELD

Kode supplier
Nama supplier
Alamat

TextBox1 MaxLength = 30
TextBox2 MaxLength = 30
TextBox3 MaxLength = 100

Inget MAXLENGTH = diisi sesuai dengan lebar field


Untuk type field TEXT/Varchar

Halaman:

113

Yuk Menikah. Bukan pacaran :-)

..

Jalankan program

Halaman:

114

Yuk Menikah. Bukan pacaran :-)

PR #1:

Input Data Mahasiswa


Buatlah program input data mahasiswa sbb:
DATABASE
NAMA FILE
NAMA TABLE

: Access 2003
: MAHASISWA
: DATA_MAHASISWA
Field
NIM
NAMA_MAHASISWA
JURUSAN
TGL_LAHIR
TEMPAT_LAHIR

Type
text
text
text
datetime
text

size
30
50
20

ket
primarykey

30

Inputlah 5 data sbb:


NIM
S001
S002
S003
S004
S005

NAMA
DAFFA
SALWA
JIHAN
HANAN
YAJID

JURUSAN
TI
OM
OM
TI
AK

TGLLAHIR
2000/2/20
2002/5/13
2004/10/15
2000/5/22
2005/1/3

TEMPAT
BEKASI
BOGOR
JAKARTA
JAKARTA
BEKASI

**ket: input tanggal dengan format tahun / bulan / tgl


TIPS TANGGAL:
*biasakan input format tanggal ke dalam format inggris,
yaitu: TAHUN/BULAN/TGL (yyyy/MM/dd)

Halaman:

115

Yuk Menikah. Bukan pacaran :-)

Form vbnet: buatlah

INPUT DATA MAHASISWA

Tanggal gunakan
DATETIMEPICKER

#1. Rubahlah (NAME) TOMBOL ..

TOMBOL_NEW, TOMBOL_SIMPAN, TOMBOL_BATAL, TOMBOL_EXIT

Keterangan:
ComboBox jurusan isi dengan = TI, OM, KA

setting tanggal : DATETIMEPICKER di properties;


1

2
.FORMAT = customer
.CUSTOM FORMAT = dd/MMM/yyyy M nya huruf BESAR
Halaman:

116

Yuk Menikah. Bukan pacaran :-)

Catatan untuk TYPE data TANGGAL


#1.

Untuk type data tanggal ,


SEBAIKNYA kita mempunyai FORMAT TANGGAL yang seragam (format tanggal yg sama)
pada saat MENYIMPAN data.

pada saat disimpan

FORMAT tanggal
ke database sebaiknya menggunakan
format tanggal inggris, yaitu TAHUN / BULAN / TGL atau yyyy/MM/dd , agar data standar
SIMPAN TANGGAL ke dalam database format tgl dalam bentuk: yyyy/MM/dd
MENCARI TANGGAL di dalam database format dalam bentuk : yyyy/MM/dd

#2.

Untuk tampilan di FORM, format tanggal BEBAS, terserah user mau bentuk format yang apa
saja boleh ^_^

POTONGAN kode untuk

simpan data mahasiswa lihat kode untuk simpan tgl nya


Halaman:

117

Yuk Menikah. Bukan pacaran :-)

Code :

" ,'" & Format(CDate(DateTimePicker1.Text), "yyyy/MM/dd") & "' "


Keterangan:

Simpan Tanggal dalam format = yyyy/MM/dd


CDATE = fungsi untuk merubah variable menjadi type tanggal

Halaman:

118

Yuk Menikah. Bukan pacaran :-)

Halaman:

119

Yuk Menikah. Bukan pacaran :-)

#4

Membuat fungsi CARI KODE

#rubah NAME : TOMBOL_CARI


Code di TOMBOL CARI sbb:

Code di TOMBOL CARI :


'/ MUNCULKAN INPUT BOX, INPUT KODE SUPPLIER
Dim CARI As String
CARI = InputBox("MASUKKAN KODE YANG DICARI")
If CARI = "" Then
Exit Sub
'/ jika tidak di input, maka keluar
End If

Halaman:

120

Yuk Menikah. Bukan pacaran :-)

'/-----------------------------------/
'/

CODE CARI DATA

'/-----------------------------------/
Call BUKA_database()
Dim aa As String
aa = "SELECT * FROM SUPPLIER WHERE KODE_SUPPLIER='" & CARI & "' "
CMD = New OleDb.OleDbCommand(aa, CONN)
'/buka table
Dim RS As OleDb.OleDbDataReader
RS = CMD.ExecuteReader()

'/jalankan sql

'/-----------------------------------------------/
'/ UNTUK MEMBACA HASIL DATA PAKE KODE RS.READ
'/-----------------------------------------------/

If Rs.HasRows Then

'/apakah data ada?

'/ DATA ADA, BACA DATA & MUNCULKAN

RS.Read

TextBox1.Text = RS("KODE_SUPPLIER")
TextBox2.Text = RS("NAMA_SUPPLIER")
TextBox3.Text = RS("ALAMAT")

'/baca data
'/munculkan
'/munculkan
'/munculkan

nya dg Rs.Read
data kode ke text1
data nama ke text2
alamat kode ke text3

Else
'/ TIDAK ADA DATA , MUNCULKAN PESAN
MsgBox("DATA TIDAK ADA", vbInformation)
End If
RS.Close()

'/tutup data kembali jika sudah digunakan

Ket.code=

aa = "SELECT * FROM SUPPLIER WHERE KODE_SUPPLIER='" & CARI & "' "
Artinya: Membaca data supplier yang kode supplier nya = data yang di input
SUPPLIER nama table
KODE_SUPPLIER field yang dicari

Halaman:

121

Yuk Menikah. Bukan pacaran :-)

#5

Membuat tombol HAPUS data

#rubah NAME : TOMBOL_HAPUS


Code di TOMBOL HAPUS sbb:

Code di TOMBOL HAPUS :


'/ KONFIRMASI DULU
Dim TANYA As String
TANYA = MsgBox("APAKAH DATA AKAN DI HAPUS?", vbQuestion + vbYesNo)
If TANYA = vbNo Then
MsgBox("BATAL.....", vbInformation)
Exit Sub
'/batal hapus, keluar procedure
End If

Halaman:

122

Yuk Menikah. Bukan pacaran :-)

'/-----------------------------------------------'
'/

CODE DELETE DATA

'/-----------------------------------------------'
Call BUKA_database()
Dim Aa As String
Aa = "DELETE FROM

SUPPLIER

WHERE KODE_SUPPLIER='" & TextBox1.Text & "' "

CMD = New OleDb.OleDbCommand(Aa, CONN)


CMD.ExecuteNonQuery()
'/jalankan hapus data
'/ KOSONGKAN TEXTBOX
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
MsgBox("DATA TELAH DI HAPUS..", MsgBoxStyle.Information)

Ket code =

Aa = "DELETE FROM SUPPLIER WHERE KODE_SUPPLIER='" & TextBox1.Text & "' "
Artinya: hapus data supplier yang kode supplier nya = data aktif di textbox1

Halaman:

123

Yuk Menikah. Bukan pacaran :-)

Halaman:

124

Yuk Menikah. Bukan pacaran :-)

PR #2:

Find Delete Mahasiswa


Lanjutkan form mahasiswa
Buat lah fungsi TOMBOL FIND NOMER INDUK & DELETE

Tanggal gunakan
DATETIMEPICKER

#1. Rubahlah (NAME) TOMBOL ..

TOMBOL_CARI, TOMBOL_HAPUS

TOMBOL FIND:
Munculkan kotak inputbox, input Nomer induk mahasiswa (NIM) yang dicari
Jika NIM tidak ada maka munculkan pesan DATA TIDAK ADA,
jika data ada munculkan data di textbox
TOMBOL DELETE:
Hapus data yang sedang aktif/ muncul di form
Hapus berdasarkan nome induk mahasiswa (NIM)

Halaman:

125

Yuk Menikah. Bukan pacaran :-)

Halaman:

126

Yuk Menikah. Bukan pacaran :-)

#6

Membuat tombol EDIT+UPDATE data

#rubah NAME : TOMBOL_EDIT , TOMBOL_UPDATE

Code di TOMBOL EDIT sbb:

Code di TOMBOL EDIT DATA :


'/MATIKAN TOMBOL
TOMBOL_input.Visible = False
TOMBOL_simpan.Visible = False
TOMBOL_cari.Visible = False
TOMBOL_hapus.Visible = False
TOMBOL_close.Visible = False
TOMBOL_edit.Visible = False
Halaman:

127

Yuk Menikah. Bukan pacaran :-)

'/HIDUPKAN TOMBOL batal, update


TOMBOL_batal.Visible = True
TOMBOL_update.Visible = True

Code di TOMBOL SIMPAN UPDATE DATA :


'/-----------------------------------------------/

UPDATE DATA

'/
'/-----------------------------------------------/
Call BUKA_database()
Dim aa As String

aa = "
"
"
"
"

UPDATE

SUPPLIER SET " & _


KODE_SUPPLIER ='" & TextBox1.Text & "' " & _
,NAMA_SUPPLIER ='" & TextBox2.Text & "' " & _
,ALAMAT ='" & TextBox3.Text & "' " & _
WHERE KODE_SUPPLIER = & TextBox1.Text &

CMD = New OleDb.OleDbCommand(aa, CONN)


CMD.ExecuteNonQuery()
MsgBox(DATA TELAH DI UPDATE.., vbInformation)
/TOMBOL MUNCUL
TOMBOL_input.Visible = True
TOMBOL_cari.Visible = True
TOMBOL_hapus.Visible = True
TOMBOL_close.Visible = True
TOMBOL_edit.Visible = True
/TOMBOL MATIKAN
TOMBOL_batal.Visible = False
TOMBOL_update.Visible = False
TOMBOL_simpan.Visible = False
Halaman:

128

Yuk Menikah. Bukan pacaran :-)

Arti code =
aa = "
"
"
"
"

UPDATE SUPPLIER SET " & _


KODE_SUPPLIER ='" & TextBox1.Text & "' " & _
,NAMA_SUPPLIER ='" & TextBox2.Text & "' " & _
,ALAMAT ='" & TextBox3.Text & "' " & _
WHERE KODE_SUPPLIER = & TextBox1.Text &

Rubah data supplier, data yang dirubah adalah


Kode supplier = TEXTBOX1
Nama supplier = TEXTBOX2
Alamat = TEXTBOX3
Yang KODE SUPPLIER nya = kode supplier di TEXTBOX1

# selesai #

Halaman:

129

Yuk Menikah. Bukan pacaran :-)

Halaman:

130

Yuk Menikah. Bukan pacaran :-)

PR #3:

Edit Update Mahasiswa


Lanjutkan form mahasiswa
Buat lah fungsi TOMBOL EDIT dan TOMBOL UPDATE mahasiswa

Tanggal gunakan
DATETIMEPICKER

#1. Rubahlah (NAME) TOMBOL ..

TOMBOL_EDIT, TOMBOL_UPDATE

TOMBOL EDIT :
Adalah tombol untuk mulai edit data yg aktif,
HILANGKAN tombol2 new, save, cancel, find, delete dan exit
MUNCULKAN tombol2 edit, update
TOMBOL UPDATE:
Update perubahan data mahasiswa
Ingat, gunakan format tanggal inggris untuk data type tanggal
HILANGKAN tombol2 save, cancel, update
MUNCULKAN tombol2 new, find, delete, edit, exit

Halaman:

131

Yuk Menikah. Bukan pacaran :-)

Halaman:

132

Yuk Menikah. Bukan pacaran :-)

Menampilkan data dg

DataGridView
&

ListView

Halaman:

133

Yuk Menikah. Bukan pacaran :-)

Ngobrol2 dulu..
Untuk menampilkan data ke dalam form, kita dapat menggunakan 2 jenis object :
1.

DataGridView, atau
2. ListView

PROCEDURE

Dalam menampilkan data ke dalam FORM, Ada beberapa code PROCEDURE yang harus kita
buat, antara lain =

Procedure TABLE_to_GRID atau TABLE_to_LV:


Adalah procedure untuk membaca data TABLE database ditampilkan
ke dalam data grid view/ liistview atau kedalam PROGRAM vbnet
Data muncul di
Program Vbnet,
Listview/DataGridView

Database
Table supplier

Procedure GRID_to_FORM atau LV_to_FORM:


Adalah procedure untuk membaca data di GRID/LV dimunculkan ke
dalam TEXTBOX di form, saat grid/lv di KLIK user
TextBox 1 =
TextBox 2 = ..
TextBox 3 = ..

Data di Listview/DataGridView
MUNCUL di textbox saat User
pilih datanya

Halaman:

134

Yuk Menikah. Bukan pacaran :-)

Menampilkan data dg

1#.
DataGridView

Halaman:

135

Yuk Menikah. Bukan pacaran :-)

Menampilkan data dengan DataGridView

DataGridView

Ambil object = DATA GRID VIEW

Halaman:

136

Yuk Menikah. Bukan pacaran :-)

#1. Membuat PROCEDURE untuk

menampilkan DATA ke DATAGRIDVIEW

Lokasi mengetik PROCEDURE Klik 2x FORM Geser / scroll ke


atas sampai ketemu PUBLIC

CLASS.. nah disitu lokasi pengetikan procedure

Lokasi mengetik code ruang kosong

TABLE_to_GRID()

DIBAWAH PUBLIC CLASS Form..

Procedure untuk menampilkan data TABLE ke LISTVIEW

Sub TABLE_to_GRID()
Call BUKA_database()

'/SELEKSI DATA NYA


Dim AA As String=
AA = " SELECT * FROM SUPPLIER ORDER BY KODE_SUPPLIER "
'/BUKA TABLE
CMD_data = New OleDb.OleDbDataAdapter(AA, Conn)
RS_data.Clear()
CMD_data.Fill(RS_data)
'>ambil data hasil select
DataGridView1.DataSource = RS_data
'>masukkan data ke GRID
Halaman:

137

Yuk Menikah. Bukan pacaran :-)

'/CODE UNTUK ATUR LEBAR KOLOM (tidak diketik tidak apa2)


'/JIKA LEBAR KOLOM TIDAK DIATUR, MAKA LEBAR KOLOM STANDAR AJA
With DataGridView1
.Columns(0).Width = 100
'/LEBAR KOLOM 0
.Columns(1).Width = 200
'/LEBAR KOLOM 1
.Columns(2).Width = 200
'/LEBAR KOLOM 2
End With
RS_data.Dispose()

'/tutup data

End Sub

#2.Code di FORM: MEMANGGIL PROCEDURE


Code di TOMBOL REFRESH (Klik 2x tombol refresh)

Code di TOMBOL REFRESH


'/PANGGIL PROCEDURE NYA

Call TABLE_to_GRID()

Halaman:

138

Yuk Menikah. Bukan pacaran :-)

#3. Menampilkan data GRID ke FORM


Membuat code : DATAGRIDVIEW to FORM
(data di GRID di

klik maka data muncul di textbox)

Lokasi code klik 2x datagridview

Klik 2x DataGridView

Pilih ruang/event Lokasi code : SelectionChanged

Halaman:

139

Yuk Menikah. Bukan pacaran :-)

.Jalankan program

Halaman:

140

Yuk Menikah. Bukan pacaran :-)

*Lanjutan Optional

Pencarian data dengan

FILTER
DataGridView

Halaman:

141

Yuk Menikah. Bukan pacaran :-)

#4. Membuat PENCARIAN data dg FILTER


Pencarian data dengan FILTER adalah mencari data secara global data.
contoh mencari NAMA JUDUL BUKU di perpustakaan, kita tinggal mengetik
judul yang mirip dan program akan menampilkan data2 yg mirip. Missal cari judul
buku = KOMPUTER maka semua judul buku yg mengandung kata
KOMPUTER akan muncul

FILTER data by nama supplier

Halaman:

142

Yuk Menikah. Bukan pacaran :-)

#1. Buat Procedure di form


Membuat PROCEDURE untuk filter datanya

Sub FILTER_data()
Call BUKA_access()
Dim BB As String = ""
BB = "SELECT * FROM SUPPLIER " & _
" WHERE NAMA_SUPPLIER LIKE '%" & TextBox4.Text & "%'" & _
" ORDER BY NAMA_SUPPLIER "
CMD_data = New OleDb.OleDbDataAdapter(BB, Conn)
'/buka data
RS_data.CLEAR()
'/kosongkan data
CMD_data.FILL(RS_data)
'/isi,baca data
DataGridView1.DataSource = RS_data

'/masukan ke grid

RS_data.Dispose()
End Sub

'/tutup data

LIKE
" WHERE NAMA_SUPPLIER

LIKE '%" & TextBox4.Text & "%'" & _

LIKE : filter/ tampilkan data supplier yang MENGANDUNG


yang Nama supplier nya mirip2..

Halaman:

143

Yuk Menikah. Bukan pacaran :-)

#2. Panggil procedure nya


Code di TOMBOL FILTER
'/PANGGIL PROCEDURE NYA

Call FILTER_data()
Hasil ; menampilkan nama supplier

Nama supplier muncul, yang


mengandung kata AA

Halaman:

144

Yuk Menikah. Bukan pacaran :-)

Halaman:

145

Yuk Menikah. Bukan pacaran :-)

PR #4:

DataGridView Mahasiswa
Lanjutkan form mahasiswa
Buat lah fungsi datagridview untuk menampilkan data mahasiswa

DataGidView

Filter nama mahasiswa =

TextBox4

Ok,filter

RUBAH NAME: TOMBOL_REFRESH

Halaman:

146

Yuk Menikah. Bukan pacaran :-)

Halaman:

147

Yuk Menikah. Bukan pacaran :-)

Menampilkan data dg

2#.
LISTVIEW

Halaman:

148

Yuk Menikah. Bukan pacaran :-)

ListView

Membuat list data dengan LISTVIEW

ListView
Filter nama supplier :

Ok,Filter

TextBox4

Untuk Filter data


FUNGSI2 LISTVIEW :
TOMBOL REFRESH menampilkan data dari TABLE ke LISVIEW TABLE TO LISVIEW
Jika data di listview di KLIK, maka DATA akan MUNCUL di TEXTBOX LISTVIEW TO FORM
LANGKAH:
1. Buatlah LISTVIEW ke dalam form
2. Listview masih standar belum ada kolom nya

Halaman:

149

Yuk Menikah. Bukan pacaran :-)

CARA SETING KOLOM LISTVIEW

Klik LV + Klik segitiga kecil, sampai


muncul menu ini..

1. Klik LISTVIEW nya


2. Lihat di sisi KIRI ATAS, ada symbol icon SEGITIGA KECIL klik nanti muncul menu seperti diatas

3
2

3. Pilih VIEW = DETAIL


4. Klik EDIT COLUMNS untuk buat kolom..

Halaman:

150

Yuk Menikah. Bukan pacaran :-)

..6

1. Klik TOMBOL ADD


2. RUbah TEXT sesuai dengan judul kolom
3. Klik TOMBOL ADD + rubah TEXT sesuai judul kolom begitu seterus nya
Bikin 4 KOLOM
Kolom 1 TEXT = No
Kolom 2 TEXT = KODE SUPPLIER
Kolom 3 TEXT = NAMA SUPPLIER
Kolom 4 TEXT = ALAMAT
4.jika semua kolom klik TOMBOL OK untuk keluar..
5. selesai

Halaman:

151

Yuk Menikah. Bukan pacaran :-)

#1. Membuat PROCEDURE untuk menampilkan


DATA ke LISTVIEW

Lokasi mengetik PROCEDURE Klik 2x FORM Geser / scroll ke


atas sampai ketemu PUBLIC

CLASS.. nah disitu lokasi pengetikan procedure

Lokasi mengetik code ruang kosong

DIBAWAH PUBLIC CLASS Form..

Procedure untuk menampilkan data TABLE ke LISTVIEW

Sub TABLE_to_LV()
Call BUKA_database()
'/SELEKSI DATA NYA

Dim AA As String
AA = " SELECT * FROM

SUPPLIER

ORDER BY KODE_SUPPLIER "

Halaman:

152

Yuk Menikah. Bukan pacaran :-)

'/BUKA TABLE

CMD = New OleDb.OleDbCommand(AA, CONN)


Dim Rs As OleDb.OleDbDataReader
Rs = CMD.ExecuteReader()
ListView1.Items.Clear()
ListView1.FullRowSelect = True
ListView1.GridLines = True
If

Rs.HasRows

'/KOSONGKAN DATA di LV
'/SELEKSI PER BARIS
'/MUNCULKAN GARIS KOLOM

Then

'/APAKAH DATA NYA ADA..


'/JIKA ADA MASUKAN KE LV

Dim lv As ListViewItem
Dim nomer As Integer = 0
While

Rs.Read

'/BACA DATA NYA, SIAP LOOPING

nomer = nomer + 1
lv = ListView1.Items.Add(nomer)

lv.SubItems.Add(Rs("KODE_SUPPLIER"))
lv.SubItems.Add(Rs("NAMA_SUPPLIER"))
lv.SubItems.Add(Rs("ALAMAT"))
End While
End If
Rs.Close()
End Sub

'/TUTUP TABLE

Halaman:

153

'/NOMER URUT
'/FIELD KODE
'/FIELD NAMA
'/FIELD ALAMAT

Yuk Menikah. Bukan pacaran :-)

Code di TOMBOL REFRESH (Klik 2x tombol refresh)

Code di TOMBOL REFRESH


'/PANGGIL PROCEDURE NYA

Call TABLE_to_LV()

Halaman:

154

Yuk Menikah. Bukan pacaran :-)

#2. Membuat code : LISTVIEW to FORM

(data di LV di klik data muncul di textbox)


Lokasi code klik 2x listview

Klik 2x listview

Pilih ruang/event Lokasi code :

ItemSelectionChanged

# JALANKAN PROGRAM #
Halaman: 155

Yuk Menikah. Bukan pacaran :-)

*Lanjutan Optional

Pencarian data dengan

FILTER
Di ListView

Halaman:

156

Yuk Menikah. Bukan pacaran :-)

#1. Buat Procedure di form


Membuat PROCEDURE untuk filter datanya

Sub FILTER_data()
Call BUKA_database()
'/SELEKSI DATA NYA

Dim AA As String

AA = "SELECT * FROM SUPPLIER " & _


" WHERE NAMA_SUPPLIER LIKE '%" & TextBox4.Text & "%'" & _
" ORDER BY NAMA_SUPPLIER "
'/BUKA TABLE

CMD = New OleDb.OleDbCommand(AA, CONN)


Dim Rs As OleDb.OleDbDataReader
Rs = CMD.ExecuteReader()
ListView1.Items.Clear()
ListView1.FullRowSelect = True
ListView1.GridLines = True
If

Rs.HasRows

'/KOSONGKAN DATA di LV
'/SELEKSI PER BARIS
'/MUNCULKAN GARIS KOLOM

Then

'/APAKAH DATA NYA ADA..


'/JIKA ADA MASUKAN KE LV

Dim lv As ListViewItem
Dim nomer As Integer = 0
While Rs.Read
nomer = nomer + 1

'/BACA DATA NYA, SIAP LOOPING

lv = ListView1.Items.Add(nomer)
lv.SubItems.Add(Rs("KODE_SUPPLIER"))
Halaman:

157

'/NOMER URUT
'/FIELD KODE

Yuk Menikah. Bukan pacaran :-)

lv.SubItems.Add(Rs("NAMA_SUPPLIER"))
lv.SubItems.Add(Rs("ALAMAT"))
End While
End If
Rs.Close()
End Sub

'/TUTUP TABLE

#2. Panggil procedure nya

Code di TOMBOL FILTER


'/PANGGIL PROCEDURE NYA

Call FILTER_data()

Halaman:

158

'/FIELD NAMA
'/FIELD ALAMAT

Yuk Menikah. Bukan pacaran :-)

Halaman:

159

Yuk Menikah. Bukan pacaran :-)

#Latihan mandiri

Halaman:

160

Yuk Menikah. Bukan pacaran :-)

#Latihan 1
Tambah form baru & Buatlah form data BARANG

Munculkan data, bisa dengan

DATAGRIDVIEW / LISTVIEW
Filter nama barang =

TextBox5

Ok,filter

Halaman:

161

Yuk Menikah. Bukan pacaran :-)

#Latihan 2
Tambah form baru & Buatlah form data PELANGGAN

Munculkan data, bisa dengan

DATAGRIDVIEW / LISTVIEW

Filter nama pelanggan =

TextBox4

Halaman:

Ok,filter

162

Yuk Menikah. Bukan pacaran :-)

Halaman:

163

Yuk Menikah. Bukan pacaran :-)

Membuat
Laporan Barang
Dengan Crystal Report

Halaman:

164

Yuk Menikah. Bukan pacaran :-)

Laporan
Dalam membuat laporan di perlukan =
1. File DESIGN laporan dengan crystal report
2. Form untuk PREVIEW laporannya

Halaman:

165

Yuk Menikah. Bukan pacaran :-)

@TIPs:

cara MUNCULKAN CrystalReportViewer


** terkadang component CRYSTAL REPORT VIEWER TIDAK MUNCUL di dalam toolbar Reporting, jika Crystal Report
viewer tidak muncul maka lakukan langkah2 sbb ;

Contoh penampakan
CrystalReportViewer yang
SUDAH MUNCUL

Langkah2 memunculkan CrystalReportViewer


(#1 ingat yah crystal report nya SUDAH di install dulu,
kalo BELUM INSTALL crystal report component crystal report viewer tidak akan muncul )
MENU = PROJECT + PROPERTIES

Halaman:

166

Yuk Menikah. Bukan pacaran :-)

Pilih TAB = COMPILE + kilim TOMBOL ADVANCE COMPILE OPTION

Pilih TARGET FRAMEWORK

.NET FRAMEWORK 4 + klik tombol OK


Halaman:

167

Yuk Menikah. Bukan pacaran :-)

Halaman:

168

Yuk Menikah. Bukan pacaran :-)

Report

Halaman:

169

Yuk Menikah. Bukan pacaran :-)

Report Data Barang


Output:

Tambahkan component:
Crystal report Viewer

Rubah : crystalreport nya PANEL VIEW = NONE

Halaman:

170

Yuk Menikah. Bukan pacaran :-)

CODE di FORM

Code di :

TOMBOL REPORT

'/difinisi nama laporannya


Dim Laporan_NYA As New CrystalReport1

'/PENTING

'/UPDATE-KAN LOKASI ACCESS REPORT AGAR FLEXIBEL JIKA PINDAH FOLDER


Call BUKA_access()
Dim A As CrystalDecisions.CrystalReports.Engine.Table
Dim B As CrystalDecisions.Shared.TableLogOnInfo
For Each A In Laporan_NYA.Database.Tables
B = A.LogOnInfo
B.ConnectionInfo.ServerName = LOKASI_db & "\toko_ku.mdb"
B.ConnectionInfo.UserID = ""
B.ConnectionInfo.Password = ""
B.ConnectionInfo.DatabaseName = ""
A.ApplyLogOnInfo(B)
Next

'/cek, semua laporan


If Me.RadioButton1.Checked = True Then
Laporan_NYA.RecordSelectionFormula = ""
End If
Nyambung
jd 1 baris

'/cek, laporan per kode


If Me.RadioButton2.Checked = True Then
Laporan_NYA.RecordSelectionFormula

=
"{barang.Kode_barang} ='" & TextBox1.Text & "' "
End If

'/tampilkan laporan
With Me.CrystalReportViewer1
.ReportSource = Laporan_NYA
.Refresh()
End With

Halaman:

171

Yuk Menikah. Bukan pacaran :-)

Form RESIZE agar crystal report flexibel


Code di :

FORM - RESIZE

CrystalReportViewer1.HEIGHT = Me.Height - CrystalReportViewer1.TOP - 30


CrystalReportViewer1.WIDTH = Me. Width- 30

Halaman:

172

Yuk Menikah. Bukan pacaran :-)

Langkah design Report


1. Menu PROJECT + Add windows form

1
2. Muncul form : ..pilih CRYSTAL REPORT + klik tombol ADD

3. Muncul form wizard report : pilih STANDARD + klik tombol OK

Halaman:

173

Yuk Menikah. Bukan pacaran :-)

4.muncul form koneksi ke db :


klik Create new connection

..pilih / klik OLEDB (Ado)

Halaman:

174

Yuk Menikah. Bukan pacaran :-)

5.muncul form koneksi: pilih Microsoft jet 4.0 oledb provider


*untuk access 2003

Halaman:

175

Yuk Menikah. Bukan pacaran :-)

6.muncul form seting database:

10
KLIK tombol [] untuk
mengambil file access
yang ada di FOLDER =
\ BIN \ DEBUG

Setelah file ACCESS


diambil, klik next

11

Selesai
7.muncul form: TABLE ter-ambil

12

1.di cek list

Halaman:

176

Yuk Menikah. Bukan pacaran :-)

-klik table: TOKO klik tombol >

15
2.klik tombol >,
Nanti table akan pindah

14
1.pilih nama table
untuk report

16

8.muncul form: PILIH FIELD untuk laporan


-klik field KODE BARANG.. klik TOMBOL >

17

18

Ambil field2 untuk laporan.., klik FINISH


Halaman:

177

Yuk Menikah. Bukan pacaran :-)

19

20

# Selesai design #

Halaman:

178

Yuk Menikah. Bukan pacaran :-)

REPORT DESIGN STANDAR

Design #1: lebarkan ruang PAGE HEADER, REPORT FOOTER

PageHeader untuk judul


laporan, kotak,dll

Report Footer untuk garis


akhir data, TOTAL data

Halaman:

179

Yuk Menikah. Bukan pacaran :-)

Design #2: membuat JUDUL dengan TEXT


Klik TEXT,, DRAG ke dalam laporan.. lepaskan, baru di KETIK Judulnya

Design #3: membuat GARIS - KOTAK

Design #4:

Format object

(text, kotak, angka, tanggal, dll )

Klik kanan di object nya + FORMAT OBJECT


Halaman:

180

Yuk Menikah. Bukan pacaran :-)

Design #5: membuat GRAND TOTAL ANGKA

Membuat GRAND
TOTAL angka

Langkah :
1.klik kanan di FIELD STOK + SUMMARY + klik tombol OK ..selesai

Halaman:

181

Yuk Menikah. Bukan pacaran :-)

Design #6 : membuat HALAMAN & TANGGAL PRINT


Menggunakan SPECIAL FIELD

Halaman menggunakan: PAGE NUMBER atau PAGE N of M


Tanggal : menggunakan = PRINT DATE
Jangan lupa FORMAT TANGGAL menjadi :
nama bulan menjadi kalimat, jangan angka JAN/JANUARI
Atau format tgl = dd/MMM/yyyy atau dd/MMMM/yyyy

Caranya: KLIK KANAN di PRINT DATE + FORMAT OBJECT

Halaman:

182

Yuk Menikah. Bukan pacaran :-)

Design #7 : Melihat hasil laporan (PREVIEW)

Halaman:

183

Yuk Menikah. Bukan pacaran :-)

HASIL

PERHATIAN

..

SAVE DATA IN THE REPORT check box nya JANGAN DI AKTIFKAN


(jangan di centang) seperti contoh diatas,, karena jika di CEK/CENTANGkan
maka saat laporan muncul data tidak update ke database
Halaman:

184

Yuk Menikah. Bukan pacaran :-)

Latihan
buatlah laporan data Pelanggan

ALAMAT

Halaman:

185

Yuk Menikah. Bukan pacaran :-)

SELINGAN

Halaman:

186

Yuk Menikah. Bukan pacaran :-)

Halaman:

187

Yuk Menikah. Bukan pacaran :-)

Latihan Bebas

1 Table & Report


Database, Table dibuat sendiri;

catatan hanya menggunakan 1 table saja

Halaman:

188

Yuk Menikah. Bukan pacaran :-)

1.BELANJA (1 Database,1 table, design sendiri)


Isi combo :
- MEMBER
- BUKAN MEMBER

TAB CONTROL;
Tab1 untuk input
data

Isi combo :
NAMA BARANG
SEPATU
SENDAL
TAS
KAOS

A
| HARGA
75.000
35.000
100.000
75.000

Harga otomatis muncul

Tanggal belanja : [DateTimePicker1]


Tambahkan input
tanggal.. posisi bebas

HITUNG;
-subtotal = jumlah * harga
-discount = jika MEMBER,disc=20%
-total belanja = subtotal - discount

** tambahkan tombol EDIT (kelupaan)


TAB CONTROL;
Tab2 untuk
laporan

CrystalReportViewer

Hanya data yg MEMBER


saja yg muncul

Halaman:

189

Yuk Menikah. Bukan pacaran :-)

2.SIM KOLEKTIF (1 Database,1 table, design sendiri)

Isi combo :
JENIS SIM | BIAYA SIM | BIAYA ADM
-SIM A
250.000
20.000
-SIM C
220.000
18.000
-SIM B
400.000
50.000

TAB CONTROL;
Tab1 untuk input
data

otomatis

Tanggal belanja : [DateTimePicker1]


HITUNG BIAYA:
Total = (jumlah*biaya sim) +
(jumlah*biaya adm)

Tambahkan input
tanggal.. posisi bebas

TAB CONTROL;
Tab2 untuk
laporan

CrystalReportViewer

Laporan per JENIS SIM,


input /PILIH jenis sim nya

Halaman:

190

Yuk Menikah. Bukan pacaran :-)

3.PENDAFTARAN KURSUS (1 Database, 1 table design sendiri)


Isi combo :
JENIS KURSUS
-KOMPUTER
-BHS.JEPANG
-BHS.INGGRIS

TAB CONTROL;
Tab1 untuk input
data

| BIAYA | LAMA (bulan)


350.000
2
300.000
3
275.000
3

otomatis
Isi combo :
-CASH
-CICIL

Tanggal belanja : [DateTimePicker1]


HITUNG BIAYA :
-Disc = jika jenis bayar CASH, disc=10%
-Total biaya = Biaya kursus disc
- Cicilan /bln =
> jika JENIS BAYAR Cash, cicilan=0
> jika JENIS BAYAR Cicil, Cicilan=Total biaya
kursus / Lama kursus

Tambahkan input
tanggal.. posisi bebas

TAB CONTROL;
Tab2 untuk
laporan

CrystalReportViewer

Laporan per JENIS KURSUS,


input /PILIH jenis kursus nya

Halaman:

191

Yuk Menikah. Bukan pacaran :-)

Crystal Report

Info Penting

& Sebagai pengingat

Biasakan pada saat men-DESIGN laporan,

SAVE DATA WITH REPORT di hilanglan CEK nya.. agar DATA LAPORAN REFRESH

1
masuk ke PREVIEW
hilangkan CEK pada SAVE DATA IN THE REPORT

hilangkan CEK nya... agar data laporan saat di preview menjadi refresh, UPDATE DATA AKHIR

Halaman:

192

Yuk Menikah. Bukan pacaran :-)

Halaman:

193

Yuk Menikah. Bukan pacaran :-)

FORM
TRANSAKSI
DASAR
1 form menggunaan >= 2 tabel

Halaman:

194

Yuk Menikah. Bukan pacaran :-)

Halaman:

195

Yuk Menikah. Bukan pacaran :-)

Ngobrol2 dulu masbro


FORM TRANSAKSI :

Adalah form yang


menggunakan >=2 table
Jenis table:

Table utama (tempat data DISIMPAN)


Table pembantu (table2 pendukung form, yang
biasanya kita menampilkan informasi tambahan,
misalnya:
user input KODE BARANG, lalu muncul NAMA BARANG dari table barang
(table barang table pembantu)
user input NIM, lalu muncul NAMA MAHASISWA dari table mahasiswa (table
mahasiswa table pembantu)
user input KODE SUPPLIER, lalu muncul NAMA SUPPLIER dari table supplier
(table supplier table pembantu)

Halaman:

196

Yuk Menikah. Bukan pacaran :-)

Ngobrol2 dulu masbro

3 Metode tehnik
memunculkan data table
pembantu:
1.di Enter
2.dg ComboBox
3.dg Form Browse

Halaman:

197

Yuk Menikah. Bukan pacaran :-)

#1. Tehnik dengan di ENTER


Menampil data NAMA BARANG
setelah kode barang di ENTER

Halaman:

198

Yuk Menikah. Bukan pacaran :-)

Form transaksi dasar

Pembelian Barang
Tanggal menggunakan

DATETIMEPICKER

PERTANYAAN :
Kenapa form diatas membutuhkan

2 table (table barang & table beli) ?

JAWAB:

(1) karena untuk memunculkan NAMA BARANG ,diambil dari TABLE BARANG
(2) karena untuk menyimpan data tsb disimpan ke dalam TABLE BELI

Halaman:

199

Yuk Menikah. Bukan pacaran :-)

Code:
Code di :

TOMBOL INPUT

'/ KOSONGKAN TEXTBOX


TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
TextBox4.Clear()
DateTimePicker1.Text = Now()
'/LETAKAN KURSOR DI TEXTBOX1 AGAR SIAP INPUT
TextBox1.Focus()
Code di :

TOMBOL SIMPAN

'/---------------------------------------/
'/ #1. VARIASI CODING
'/ sebelum simpan data
'/---------------------------------------/
Dim TAnya As String=

TAnya = MsgBox("APAKAH DATA SUDAH BENAR ?", vbYesNo + vbQuestion)

If TAnya = vbNo Then


Exit Sub
End If

'/cek apakah tombol NO di klik


'/keluar code, kembali ke form

Call BUKA_database()
'/-----------------------------------/
'/ #2
'/ Cek apakah primarykey sudah ada?
'/-----------------------------------/
Dim aa As String

aa = "SELECT * FROM BELI WHERE NO_BELI='" & TextBox1.Text & "'"

CMD = New OleDb.OleDbCommand(aa, CONN)

'/buka sql

Dim Rs As OleDb.OleDbDataReader
Rs = CMD.ExecuteReader()

'/siapan data
'/jalankan sql

Halaman:

200

Yuk Menikah. Bukan pacaran :-)

'/---------------------------------/
'/ Cek, apakah data sudah ada
'/ jika ADA --> tolak proses
'/---------------------------------/
If

Rs.HasRows

Then
'/ DATA sudah ada, tolak
MsgBox("DATA NOMER SUDAH ADA..", VbInformation)
Rs.Close()
'/tutup table
Exit Sub
'/keluar dr procedure

Else
'/------------------------------------------/
'/ #3
'/ PROSES 1: SIMPAN PEMBELIAN
'/------------------------------------------/

aa = "
"
"
"
"
"
"

INSERT INTO BELI " & _


(NO_BELI,TGL,KODE_BARANG,JUMLAH) " & _
VALUES " & _
('" & TextBox1.Text & "'" & _
,'" & Format(CDate(DateTimePicker1.Text),"yyyy/MM/dd") & "' " & _
,'" & TextBox2.Text & "'" & _
,'" & TextBox4.Text & "')"

CMD = New OleDb.OleDbCommand(aa, CONN)


CMD.ExecuteNonQuery()

'/buka table
'/jalankan sql

MsgBox("DATA TELAH DI SIMPAN..", vbInformation)

End If

'/ ini adalah code2 ALTERNATIF simpan jenis TANGGAL


'/ pilih sata satu kode yang bias SAVE..
'/OK=> DateTimePicker1.Text.ToString
'/OK=> cdate(DateTimePicker1.Text)
'/OK,REKOMENDASI=> Format(CDate(DateTimePicker1.Text), "yyyy/MM/dd")

Halaman:

201

Yuk Menikah. Bukan pacaran :-)

Code transaksi :

#Munculkan nama barang


saat kode barang di ENTER
#1.Menampilkan nama barang saat di ENTER

Code di :

TEXTBOX2 KEYDOWN

'/ MUNCULKAN NAMA BARANG SAAT DI ENTER DI TEXTBOX2


If e.KeyCode = Keys.

Return

Then

'/jika di enter, baca procedure munculkan nama barang


Call MUNCULKAN_NAMA_BARANG()
End If

Halaman:

202

Yuk Menikah. Bukan pacaran :-)

Membuat Procedure
PENGERTIAN PROCEDURE:

PROCEDURE adalah kumpulan code2 yang sering digunakan didalam program.

CARA PENGGUNAKAN PROCEDURE:

1. Procedure harus dibuat dulu/difinisikan, nama procedure bebas, jangan ada


SPASI, diawali dengan :
SUB <nama procedure nya>
END SUB
Contoh:
SUB Munculkan_nama_barang, SUB munculkan_nama_siswa, dll
2. setelah procedure dibuat, maka tinggal di panggil saja dengan cara:
CALL <nama procedure nya>
Contoh:
CALL munculkan_nama_barang, CALL kosong

LOKASI MENGETIK PROCEDURE:

Mengetik procedure ada didalam FORM, lokasi GENERAL --- DECLARATION


(klik 2x form, scrol/geser kursor ke atas code sampai mentok form, sampai ketemu ruang:
General-----Declaration)

Halaman:

203

Yuk Menikah. Bukan pacaran :-)

Lokasi mengetik Procedure ,


didalam ruang DECLARATION
Ketik deh procedure nya,
SUB.END SUB

Code procedure nya

#1.Procedure untuk menampilkan nama barang


Code di :

Procedure

Sub MUNCULKAN_NAMA_BARANG()
'/ PROCEDURE UNTUK MUNCULKAN NAMA SUPPLIER
Call BUKA_database()
Dim aa As String
aa = "SELECT * FROM BARANG WHERE KODE_BARANG='" &

TextBox3.Text & "' "

CMD = New OleDb.OleDbCommand(aa, CONN)

'/buka table

Dim RS As OleDb.OleDbDataReader
RS = CMD.ExecuteReader()

'/ambil data hasil sql

'/-----------------------------------------------/
'/ UNTUK MEMBACA HASIL DATA PAKE KODE dr.READ
'/-----------------------------------------------/
If RS.HasRows Then
'/ DATA ADA
RS.Read
'/read=untuk baca data
TextBox3.Text = RS("NAMA_BARANG")
Else

Halaman:

204

Yuk Menikah. Bukan pacaran :-)

MsgBox("DATA TIDAK ADA", vbInformation)


TextBox3.Clear()
End If
RS.Close()
End Sub

'/tutup data

Halaman:

205

'/tidak ada data


'/kosongkan

Yuk Menikah. Bukan pacaran :-)

TUGAS :

Buatlah tombol CARI nomer pembelian


&
HAPUS pembelian

CARI NOMER PEMBELIAN :


menampilkan kembali data pembelian + jangan lupa untuk MENAMPILKAN juga
NAMA BARANG nya
HAPUS PEMBELIAN :
Data pembelian di hapus

Halaman:

206

Yuk Menikah. Bukan pacaran :-)

Halaman:

207

Yuk Menikah. Bukan pacaran :-)

#2. Tehnik dengan COMBOBOX


Menampil data NAMA BARANG
setelah kode barang di pilih/di
klik di COMBOBOX

Halaman:

208

Yuk Menikah. Bukan pacaran :-)

Transaksi menggunakan

COMBOBOX
Sebagai

Input PILIHAN data


(data kode yang ingin di input dapat di pilih oleh user, sebagai dasar
Referensi / panduan data yang di input)

Halaman:

209

Yuk Menikah. Bukan pacaran :-)

Form transaksi dengan ComboBox

COMBOBOX KODE BARANG


sebagai INPUT PILIHAN DATA

Tanggal menggunakan

DATETIMEPICKER

Kode barang dg
COMBOBOX

Keterangan code:
KODE BARANG menggunakan COMBOBOX
COMBOBOX = di isi data KODE BARANG dari table barang ada
PROCEDURE ISI COMBO SUPPLIER
Setelah data KODE BARANG di pilih maka NAMA BARANG akan muncul
ada PROCEDURE MUNCULKAN NAMA BARANG
CODE:
Code di TOMBOL INPUT sama, sesuai kembali textbox nya
Code di TOMBOLSIMPAN sama, sesuai kembali textbox nya
Code di TOMBOL CANCEL sama, sesuai kembali textbox nya

Halaman:

210

Yuk Menikah. Bukan pacaran :-)

Membuat Procedure
#1.Procedure untuk menampilkan nama barang
Code di :

Procedure

Sub MUNCULKAN_NAMA_BARANG()
'/ PROCEDURE UNTUK MUNCULKAN NAMA SUPPLIER
Call BUKA_database()
Dim aa As String
aa = "SELECT * FROM BARANG WHERE KODE_BARANG='" &

ComboBox1.Text & "' "

CMD = New OleDb.OleDbCommand(aa, CONN)

'/buka table

Dim RS As OleDb.OleDbDataReader
RS = CMD.ExecuteReader()

'/ambil data hasil sql

'/-----------------------------------------------/
'/ UNTUK MEMBACA HASIL DATA PAKE KODE dr.READ
'/-----------------------------------------------/
If RS.HasRows Then
'/ DATA ADA
RS.Read
'/read=untuk baca data
TextBox2.Text = RS("NAMA_BARANG")
Else
MsgBox("DATA TIDAK ADA", vbInformation)
TextBox2.Clear()
End If
RS.Close()
End Sub

'/tutup data

Halaman:

211

'/tidak ada data


'/kosongkan

Yuk Menikah. Bukan pacaran :-)

#2.Procedure untuk ISI COMBOBOX dgn KODE


BARANG dari Table BARANG
Code di :

Procedure

Sub ISI_COMBO_BARANG()
Call BUKA_database()
Dim aa As String

aa="SELECT * FROM BARANG

CMD = New OleDb.OleDbCommand(aa, CONN)

'/buka table

Dim RS As OleDb.OleDbDataReader
RS = CMD.ExecuteReader()

'/ambil data hasil sql

'/ Combo di kosongkan doloooo


ComboBox1.Items.Clear()
'/-----------------------------------------------/
'/ CEK; apakah data nya ada; gunakan HASROWS
'/-----------------------------------------------/

If RS.HasRows Then

'/ Baca data sampai selesai (LOOPING dg while)


WHILE RS.Read
'/isi , masukan data kode barang ke combobox

ComboBox1.Items.Add(RS("KODE_BARANG"))

End While
EndIf
RS.Close()

'/tutup data

End Sub

Halaman:

212

Yuk Menikah. Bukan pacaran :-)

Code di FORM
#1.Menampilkan nama barang saat COMBOBOX1 di
pilih/di click

code di : ComboBox1

@klik 2x COMBOBOX1 pilih event/ruang = SelectedIndexChanged

Code di : COMBOBOX1 SelectedIndexChanged


'/ panggil procedure , munculkan nama barang
Call MUNCULKAN_NAMA_BARANG

#2.Mengisi / Menjalankan procedure isi combo:

code di : FORM-LOAD

@klik 2x FORM pilih event/ruang = LOAD


Code di :

FORM

LOAD

'/ JALANKAN PROCEDURE ISI COMBO


Call ISI_COMBO_BARANG

Halaman:

213

Yuk Menikah. Bukan pacaran :-)

Hasil running program ;

COMBOBOX di

KLIK maka nama


barang muncul

Isi COMBOBOX berisikan


data KODE BARANG dari table
barang

Halaman:

214

Yuk Menikah. Bukan pacaran :-)

Halaman:

215

Yuk Menikah. Bukan pacaran :-)

#3. Tehnik dengan FORM


BROWSE
Menampil data NAMA BARANG dengan
tambahan FORM BANTUAN
FORM di tambahkan

Halaman:

216

Yuk Menikah. Bukan pacaran :-)

Transaksi menggunakan

FORM BROWSER

DATA BARANG
Dg ListView

Halaman:

217

Yuk Menikah. Bukan pacaran :-)

Pembelian Barang dengan

FORM BROWSER DATA BARANG

CODE:
Code di TOMBOL INPUT sama, sesuai kembali textbox nya
Code di TOMBOLSIMPAN sama, sesuai kembali textbox nya
Code di TOMBOL CANCEL sama, sesuai kembali textbox nya

Code di tombol AMBIL SUPPLIER :


Code di : TOMBOL AMBIL SUPPLIER

/ RUBAH form6 = adalah form browse data BARANG


Form6.showDialog()
Halaman:

218

Yuk Menikah. Bukan pacaran :-)

FORM

BROWSE DATA BARANG

Code :

Membuat PROCEDURE

Procedure untuk menampilkan data TABLE ke LISTVIEW

Sub TABLE_to_LV()
Call BUKA_database()
'/SELEKSI DATA NYA

Dim AA As String
AA = " SELECT * FROM

BARANG

ORDER BY KODE_BARANG "

'/BUKA TABLE

CMD = New OleDb.OleDbCommand(AA, CONN)


Halaman:

219

Yuk Menikah. Bukan pacaran :-)

Dim Rs As OleDb.OleDbDataReader
Rs = CMD.ExecuteReader()
ListView1.Items.Clear()
ListView1.FullRowSelect = True
ListView1.GridLines = True
If

Rs.HasRows

'/BERSIHKAN LV
'/SETTING SELEKSI LV
'/MUNCULKAN GARIS KOLOM

Then

'/APAKAH DATA NYA ADA..


'/JIKA ADA MASUKAN KE LV

Dim lv As ListViewItem
Dim nomer As Integer = 0
While

Rs.Read

'/BACA DATA NYA, SIAP LOOPING

nomer = nomer + 1
lv = ListView1.Items.Add(nomer)

lv.SubItems.Add(Rs("KODE_BARANG"))
lv.SubItems.Add(Rs("NAMA_BARANG"))
End While
End If
Rs.Close()

'/TUTUP TABLE

End Sub
Code di TOMBOL

TOMBOL REFRESH

---panggil procedure
Call table_to_lv()

Halaman:

220

'/NOMER URUT
'/FIELD KODE ke LV
'/FIELD NAMA ke LV

Yuk Menikah. Bukan pacaran :-)

TOMBOL EXIT
---keluar form
Me.Close()

TOMBOL AMBIL DATA


'/--------------------------------------------------/
'/ AMBIL DATA DI LISTVIEW
'/ MUNCULKAN KE FORM PEMBELIAN
'/--------------------------------------------------/
'/ambil kolom 1: KODE BARANG
Form3.TextBox2.Text=ListView1.FocusedItem.SubItems(1).Text
'/ambil kolom 2: NAMA BARANG
Form3.TextBox3.Text=ListView1.FocusedItem.SubItems(2).Text

P.E.N.T.I.N.G
Rubahlah nama FORM3 sesuai nama
form utama transaksi nya..

Misalnya nama form transaksi (FORMBELI),


maka FORM3 dirubah menjadi FORMBELI

Halaman:

221

Yuk Menikah. Bukan pacaran :-)

#Selesai..

Halaman:

222

Yuk Menikah. Bukan pacaran :-)

Halaman:

223

Yuk Menikah. Bukan pacaran :-)

LOGIN
Halaman:

224

Yuk Menikah. Bukan pacaran :-)

Informasi [penting] untuk


LOGIN
Setelah semua form selesai dibuat,
Maka yang MENJADI FORM #1 di panggil (Startup Form)
Adalah FORM LOGIN

STARTUP FORM

#1. Buatlah FORM LOGIN sebagai


#2. Buatlah FORM untuk MENU UTAMA (form ada menu nya)
2

1
3

Langkah..
1. klik 2x MyProject
2. Klik Application (secara default sudah application, jadi tidak perlu di klik lagi)
3. Start-up form pilihlah FORM LOGIN sebagai startup form

Halaman:

225

Yuk Menikah. Bukan pacaran :-)

Halaman:

226

Yuk Menikah. Bukan pacaran :-)

FORM LOGIN dg TABLE:


#1. BUATLAH TABLE untuk user+password terlebih dahulu:
Nama table : USER_PASSWORD
No
1
2

Field
NAMA_USER
PASSWORD

Type
Text
TExt

Size
20
20

**isi data sebanyak 3 user

#2.Form login

Rubah TEXTBXO2 PROPERTIES:

UseSystemPasswordChart YES
Agar input berubah

Halaman:

227

Yuk Menikah. Bukan pacaran :-)

Meng-hilangkan input password


Pada saat input password, kita sering menyembunyikan karakter nya,
ini bisa di seting di PROPERTIES textbox nya
Ada 2 Properties yang sering digunakan, PILIH salah satu untuk
digunakan:
1.UseSystemPasswordChart karakter jadi Bulet2 (mirip di FB)
1. Klik textbox2 nya, rubah properties UseSystemPasswordChart = YES

Atau

2.PasswordChart karakter berubah sesuai karakter yg ditentukan


1. Klik textbox2 nya, rubah properties PasswordChart = #
(input karakter (bebas) yang ingin di munculkan dalam textbox, hasilnya semua
karakter yang diinput akan berubah)

Halaman:

228

Yuk Menikah. Bukan pacaran :-)

CODE di FORM
Code : FORM LOAD
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()

Code di

TOMBOL OK

Code di tombol OK

Ket

Call BUKA_database()
Dim AA As String = ""
AA = " SELECT * FROM USER_PASSWORD " & _
" WHERE NAMA_USER='" & TextBox1.Text & "' " & _
" AND PASSWORD='" & TextBox2.Text & "' "
Catatan penting:

CMD = New OleDb.OleDbCommand(AA, CONN)


Dim RS As OleDb.OleDbDataReader
RS = CMD.ExecuteReader()

Kalo DATA ADA


If RS.HasRows Then

Kalo DATA TIDAK ADA


If NOT RS. HasRows Then

'/-----------------------------------/
'/cek,apakah DATA DATA
'/-----------------------------------/
If

Not RS.HasRows

Then
MsgBox("USER PASSWORD SALAH", vbCritical)
RS.Close()

Else

'/data tidak ada


'/tutup table
'/keluar kode

Exit Sub

'/-------------------------------------------/
'/BANDINGKAN DENGAN IF AGAR CASE SENSITIF
'/-------------------------------------------/
RS.Read
'/baca data nya

If (TextBox1.Text = RS("NAMA_USER")) And _


(TextBox2.Text = RS("PASSWORD")) Then

MsgBox("OK", vbInformation)
RS.Close()

Halaman:

229

Yuk Menikah. Bukan pacaran :-)

Me.Hide()
Form2.Show()

'/form login di HIDE


'/panggil form : MENU UTAMA

Else

MsgBox("USER PASSWORD SALAH", vbCritical)


Exit Sub
End If
End If

Rubahlah

FORM2

sesuai

dengan nama form

MENU UTAMA
masing2.. (Form yg
ada MENU nya)

PENTING :

FORM2 adalah form MENU UTAMA, rubah lah nama FORM2 diatas
menjadi nama form menu utama project

Halaman:

230

Yuk Menikah. Bukan pacaran :-)

Halaman:

231

Yuk Menikah. Bukan pacaran :-)

FORM LOGIN TANPA


TABLE:
Membuat form LOGIN sederhana, TANPA menggunakan table database,
HANYA cek data di TEXTBOX1 dan TEXTBOX2
Nama user dan password SUDAH DI TENTUKAN,
Misalnya: NAMA USER ADMIN, PASSWORD ADMIN

Rubah TEXTBXO2 PROPERTIES:

UseSystemPasswordChart YES
Agar input berubah

CODE di FORM
Code : FORM LOAD
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
Halaman:

232

Yuk Menikah. Bukan pacaran :-)

Code di

TOMBOL OK

Code di tombol OK

Ket

'/-------------------------------------------/
'/BANDINGKAN INPUT DATA
'/-------------------------------------------/

If (TextBox1.Text = "ADMIN") And _


(TextBox2.Text = "ADMIN) Then

MsgBox("OK", vbInformation)
Me.Hide()
'/form login di HIDE

Form2.Show()

'/panggil form : MENU UTAMA

Rubahlah

FORM2

sesuai

dengan nama form

MENU UTAMA
masing2.. (Form yg
ada MENU nya)

Else

MsgBox("USER PASSWORD SALAH", vbCritical)


Exit Sub
End If

INFO:
form login di HIDE, jadi FORM #1 yang muncul TIDAK BOLEH di hilangkan (Me.Close)
karena jika di Me.Close program akan berhenti..

rubahlah user = ADMIN & password = ADMIN


sesuai keinginnan programmer

Halaman:

233

Yuk Menikah. Bukan pacaran :-)

Selesai
Alhamdulillah

Halaman:

234

Yuk Menikah. Bukan pacaran :-)

Halaman:

235

Yuk Menikah. Bukan pacaran :-)

Latihan2
di hapus sayang

Halaman:

236

Yuk Menikah. Bukan pacaran :-)

Halaman:

237

Yuk Menikah. Bukan pacaran :-)

LAPORAN
TRANSAKSI
dg Range 2 Tanggal

Halaman:

238

Yuk Menikah. Bukan pacaran :-)

NGOBROL2
Untuk data tanggal mempunyai format khusus, Yaitu :
simpan data (Save) tgl sebaiknya dengan format inggris
membaca (Select) tanggal juga sebaiknya dalam format inggris
Format inggris yaitu

yyyy/MM/dd
atau

MM/dd/yyyy

Halaman:

239

Yuk Menikah. Bukan pacaran :-)

LAPORAN TRANSAKSI HARIAN


Menggunakan batas TANGGAL

Melihat data pembelian secara per tanggal transaksi pembelian barang

Tanggal DateTimePicker

CrystalReportViewer

Tanggal menggunakan DATETIMEPICKER,


Aturlah

properties

tanggal sbb :

.Format = Custom
.CustomFormat = yyyy/MM/dd

Halaman:

240

Yuk Menikah. Bukan pacaran :-)


CODE:

Code di :

TOMBOL REPORT

'/difinisi nama laporannya/ RUBAHLAH: CrystalReport2 sesuai nama laporannya


Dim Laporan As New CrystalReport2
'/cek, semua laporan
If RadioButton1.Checked = True Then
Laporan.RecordSelectionFormula = ""
End If
Nyambung
jd 1 baris

'/cek, laporan per kode


If RadioButton2.Checked = True Then

Laporan.RecordSelectionFormula =
"{BELI.TGL} >=CDATE (" & DateTimePicker1.Text & ")
AND {BELI.TGL} <= CDATE (
& DateTimePicker2.Text & ")
End If

'/tampilkan laporan
With Me.CrystalReportViewer1
.ReportSource = Laporan
.Refresh()
End With

Form RESIZE agar crystal report flexibel


Code di :

FORM - RESIZE

CrystalReportViewer1.HEIGHT = Me.Height - CrystalReportViewer1.TOP - 30


CrystalReportViewer1.WIDTH = Me. Width- 30

Halaman:

241

Yuk Menikah. Bukan pacaran :-)

Perhatikan FORMULA
untuk 2 tanggal (RANGE):
Laporan.RecordSelectionFormula =

"{BELI.TGL} >=CDATE (" & DateTimePicker1.Text & ")


AND
{BELI.TGL} <=CDATE (

& DateTimePicker2.Text & ")

CDATE adalah fungsi merubah data menjadi tanggal di CR

Halaman:

242

Yuk Menikah. Bukan pacaran :-)

Laporan Transaksi Pembelian

Langkah2 :

klik Make New Connection

Halaman:

243

Yuk Menikah. Bukan pacaran :-)

pilih: SQL Native client + NEXT

3
1

klik : (1) [x]integrated security (2)ketik nama server (3)pilih nama DB + Finish
Nama server .

atau

(local)

atau

.\sqlexpress

(.\sqlexpress digunakan untuk sql server versi express)


Halaman:

244

Yuk Menikah. Bukan pacaran :-)

hasilnya nama table masuk ke laporan

Ambil 3 table: beli, barang, supplier karena


dalam laporan membutuhkan table2 tersebut

klik: nama table = BARANG, lalu klik tombol >


ambil nama table lainnya: BELI, SUPPLIER + Finish

Halaman:

245

Yuk Menikah. Bukan pacaran :-)

hasilnya table ter-relasi, INGAT jangan salah relasi + Finish

ambillah FIELD2 yang dibutuhkan dalam laporan

Halaman:

246

Yuk Menikah. Bukan pacaran :-)

daftar field yang diambil dalam laporan,


perhatikan URUTAN nya.. jika sudah selesai klik FINISH

LAPORAN FORMAT STANDAR

Halaman:

247

Yuk Menikah. Bukan pacaran :-)

Setinglah laporan menjadi sbb :

Dibuat : Halaman,
Tanggal

Dibuat Total

JANGAN LUPA

Format TANGGAL rubah nama bulan menjadi KATA2, misal: JAN,FEB,MAR,dll


Format ANGKA rubah format angka dg TANPA DESIMAL
Buatlah GRAND TOTAL dari field JUMLAH

Halaman:

248

Yuk Menikah. Bukan pacaran :-)

#CARA BIKIN TOTAL

Klik kanan di FIELD JUMLAH + Insert + Summary


muncul FORM klik TOMBOL OK

#PREVIEW

Pada saat PREVIEW REPORT,


HILANGKAN cek SAVE DATA IN THE REPORT (agar data refresh)

Halaman:

249

Yuk Menikah. Bukan pacaran :-)

Halaman:

250

Yuk Menikah. Bukan pacaran :-)

Latihan2
di hapus sayang

Halaman:

251

Yuk Menikah. Bukan pacaran :-)

Latihan update : TUGAS KELOMPOK

Transaksi #2: Saldo Nasabah


coba buat transaksi aplikasi rekening nasabah ( 1 database, 3 table)

FORM MENU UTAMA

a.FORM INPUT DATA NASABAH

Halaman:

252

Yuk Menikah. Bukan pacaran :-)

b.FORM LIHAT DATA SALDO NASABAH

c.FORM SETORAN NASABAH (saldo +)

Halaman:

253

Yuk Menikah. Bukan pacaran :-)

d.FORM PENARIKAN SALDO NASABAH (saldo -)

e.FORM REPORT SALDO NASABAH

TextBox1

Halaman:

254

Yuk Menikah. Bukan pacaran :-)

Design report saldo nasabah (ambil dari table nasabah):

**Ingat:
jangan lupa untuk meng-hilangkan CEK (Save data with report)
Database & Table tentukan sendiri ;-)

1 Database dan 3 Table

Halaman:

255

Yuk Menikah. Bukan pacaran :-)

TUGAS PROJECT
1 kelompok

4-5
3

atau 1 kelas ada

Halaman:

programmer,

kelompok

256

Yuk Menikah. Bukan pacaran :-)

SUSUNAN TIM
Tunjuklah 1 orang sebagai KETUA PROJECT dari tugas ini, yang bertanggung
jawab atas selesainya tugas ORDER project ini.

HASIL PROJECT
Buatlah program di bawah ini,
SETELAH SELESAI, buatlah sebuah KLIPING dari project anda yang berupa:
Halaman 1
Halaman 2
Halaman 3
Halaman 4
Halaman 5

: Berisi nama project, nilai project & tim project


: profile biodata kelompok + foto nya
: infomasi database nya, nama2 table + field nya
: tampilan FORM MENU UTAMA + code nya
: tampilan FORM2 MASTER + code nya,
lalu berikutnya FORM2 TRANSAKSI + code nya
Halaman akhir : tampilan pada saat program sedang berjalan
KUMPULAN
proposal program nya + source code program di dalam CD

Halaman:

257

Yuk Menikah. Bukan pacaran :-)

PROJECT Rp
Project #1

Rp. 10.000.000
Project #2

Rp. 7.000.000
Project #3

Rp. 8.500.000
Halaman:

258

Yuk Menikah. Bukan pacaran :-)

PROJECT 1 : NILAI MAHASISWA (Rp.10.000.000)


DATABASE
: Access 2003
TABLE
:
1. SISWA
a. NIM
text
b. Nama_siswa
text
c. Kelamin
text
d. Tgl_Lahir
Datettime
e. .
2. NILAI
a.
b.
c.
d.
e.
f.
g.

NIM
Tgl
Nilai_vbnet
Nilai_php
Nilai_web
Rata
Grade_nilai

20
50
10

PrimaryKey

text
20
datettime
number (double)
number (double)
number (double)
number (double)
number (double)

VBNET

Buatlah form MENU UTAMA


Buatlah form LOGIN digunakan untuk awal login ke program (form login bebas, boleh
dengan database/table atau TANPA table)
Buatlah FORM INPUT DATA SISWA (input, save, find, del, edit, update, filter) + GRIDVIEW
Buatlah form yang berisikan DAFTAR TIM Programmer nya + foto2 ID nya
Buatlah form transaksi input nilai siswa dibawah ini;
Dikumpulkan dalam bentuk KLIPING :
di print struktur database nya, lembar TIM project + Foto2 nya
di print Tampilan2 : form menu utama + code,
di print form master + code , form transaksi + code nya
Nilai didapat dari = nilai kelompok & nilai perorangan (akan ditanya 5 code)

Halaman:

259

Yuk Menikah. Bukan pacaran :-)

Keterangan:
1. Gunakan

LISTVIEW untuk menampilkan data

2. Munculkan NAMA SISWA diambil dari table siswa, tehnik bebas (enter/
combo/lookup) rubahlah form sesuai tehnik yg digunakan
3. Munculkan juga NAMA SISWA yang ada di dalam LISTVIEW
4. RATA = (nilai vbnet + nilai php + nilai web) /3
5. Grade nilai =
a. Jika RATA >=85, maka grade = A
b. Jika RATA 75-85, maka grade = B
c. Jika RATA 60-75, maka grade = C
d. Jika RATA 0-59, maka grade = D

Halaman:

260

Yuk Menikah. Bukan pacaran :-)

PROJECT 2 :

Halaman:

261

Yuk Menikah. Bukan pacaran :-)

Halaman suka2
^_^

Halaman:

262

Yuk Menikah. Bukan pacaran :-)

Halaman:

263

Yuk Menikah. Bukan pacaran :-)

Halaman:

264

Yuk Menikah. Bukan pacaran :-)

Halaman:

265

Yuk Menikah. Bukan pacaran :-)

Halaman:

266

Yuk Menikah. Bukan pacaran :-)

Halaman:

267

Yuk Menikah. Bukan pacaran :-)

Alhamdulillah ...
Pdf ok, silahkan untuk di perbanyak
Semoga ber-mamfaat | Nantikan PDF yang lainnya

Tatapan mata
nya sendu...
membuat hati
nyut nyutan

Indra erawan sanjaya, Skom | Programmer | Dosen keren


0857.73.59.59.69

Halaman:

268

Yuk Menikah. Bukan pacaran :-)

Nikah-yuuuuk... bukan pacaran

Jangan lupa SHOLAT yahhhh.....

Halaman:

269

Anda mungkin juga menyukai