Anda di halaman 1dari 17

Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 1


Membuat Aplikasi Penjualan Buku Sederhana

Langkah-langkah dalam membuat aplikasi adalah sebagai berikut :
1. Buat project baru dengan nama Aplikasi Penjualan lalu simpan pada Local Disc di PC atau Laptop
Anda.
2. Buatlah database dengan nama JualBuku.accdb lalu simpan kedalam folder Aplikasi Penjualan >
bin > debug kemudian rancanglah struktur tabel seperti berikut ini :

Nama Tabel : Jenis
Field Type Size Keterangan
KodeJenis Text 2 Primary Key (PK)
Jenis Text 50

Nama Tabel : Buku
Field Type Size Keterangan
KodeBuku Text 3 Primary Key (PK)
KodeJenis Text 2 Foreign Key (FK)
Judul Text 100
Pengarang Text 50
Penerbit Text 50
Jumlah Number
Harga Number
Deskripsi Text 200

Nama Tabel : Transaksi
Field Type Size Keterangan
NoFaktur Text 11 Primary Key (PK)
TglFaktur Date/Time
Pukul Date/Time
NamaPembeli Text 50
NoTelp Text 12
Total Number
Dibayar Number
Kembali Number
Item Number

Nama Tabel : DetailTransaksi
Field Type Size Keterangan
NoFaktur Text 11
KodeBuku Text 3
Judul Text 150
Jumlah Number
HargaJual Number
SubTotal Number



Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 2
Entity Relationship Diagram (ERD) Aplikasi Penjualan Buku Komputer

Gambar 1. Rancangan ERD

Rancanglah Form Menu, Form Jenis Buku, dan Form Data Buku, Form Transaksi Penjualan Buku
seperti gambar berikut :


Gambar 2. Menu Aplikasi Penjualan Buku Komputer

Tulislah koding menunya sebagai berikut :
Public Class Form1

Private Sub DataJenisBukuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles DataJenisBukuToolStripMenuItem.Click
Form2.Show()
End Sub

MenuStrip1
StatusStrip1
GroupBox1
Button
1
Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 3
Private Sub DataBukuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles DataBukuToolStripMenuItem.Click
Form3.Show()
End Sub

Private Sub KeluarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles KeluarToolStripMenuItem.Click
If MessageBox.Show("Yakin akan menutup aplikasi ini..?", "", MessageBoxButtons.YesNo)
= Windows.Forms.DialogResult.Yes Then
End
End If
End Sub
End Class



Gambar 3. Rancangan Form Data Jenis Buku


TextBox3
TextBox1
TextBox2
Button1
TextBox2
Button2
Button3
Button4
DataGridView1
Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 4

Gambar 4. Rancangan Form Data Buku



Gambar 5. Rancangan Form Transaksi Penjualan Buku


DataGridView1
TextBox2
TextBox3
TextBox4
TextBox5
TextBox8
TextBox5
TextBox7
TextBox9
Button5

Button4

Button3

Button2

Button1
ComboBox1
TextBox6
TextBox1
TextBox1
TextBox2
TextBox3
TextBox4
TextBox5
Button1
Button2
Button3
TextBox6
Button3
Label10
TextBox7
TextBox8
TextBox9
DataGridView1
Button4
Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 5
Tambahkan sebuah module kemudian tulislah koding dibawah ini :
Imports System.Data.OleDb
Module Module1
Public Conn As OleDbConnection
Public da As OleDbDataAdapter
Public ds As DataSet
Public cmd As OleDbCommand
Public rd As OleDbDataReader
Public Str As String

Public Sub Koneksi()
Str = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath &
"\JualBuku.accdb"
Conn = New OleDbConnection(Str)
If Conn.State = ConnectionState.Closed Then
Conn.Open()
End If
End Sub
End Module


Hasil Form2 (Jenis Buku) setelah dijalankan


Gambar 6. Hasil Form2 (Jenis Buku)

Kodingnya sebagai berikut :
Imports System.Data.OleDb
Public Class Form2
Sub Kosong()
TextBox1.Clear()
TextBox2.Clear()
TextBox1.Focus()
End Sub

Sub Isi()
TextBox2.Clear()
TextBox2.Focus()
End Sub



Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 6

Sub TampilJenis()
da = New OleDbDataAdapter("Select * From Jenis", Conn)
ds = New DataSet
ds.Clear()
da.Fill(ds, "Jenis")
DataGridView1.DataSource = ds.Tables("Jenis")
DataGridView1.Refresh()
End Sub


Sub AturGrid()
DataGridView1.Columns(0).Width = 60
DataGridView1.Columns(1).Width = 200

DataGridView1.Columns(0).HeaderText = "KODE JENIS"
DataGridView1.Columns(1).HeaderText = "NAMA JENIS"
End Sub

Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles
Me.Load
Call Koneksi()
Call TampilJenis()
Call Kosong()
Call AturGrid()
End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress
TextBox2.MaxLength = 50
If e.KeyChar = Chr(13) Then
TextBox2.Text = UCase(TextBox2.Text)
End If
End Sub

Private Sub DataGridView1_CellContentClick(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
Dim i As Integer
i = Me.DataGridView1.CurrentRow.Index
With DataGridView1.Rows.Item(i)
Me.TextBox1.Text = .Cells(0).Value
Me.TextBox2.Text = .Cells(1).Value
End With
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
If TextBox1.Text = "" Or TextBox2.Text = "" Then
MsgBox("Data belum lengkap..!")
TextBox1.Focus()
Exit Sub
Else
cmd = New OleDbCommand("Select * From Jenis where KodeJenis='" & TextBox1.Text &
"'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If Not rd.HasRows Then
Dim Simpan As String = "insert into Jenis(KodeJenis,Jenis)values " & _
"('" & TextBox1.Text & "','" & TextBox2.Text & "')"
cmd = New OleDbCommand(Simpan, Conn)
cmd.ExecuteNonQuery()
MsgBox("Simpan data sukses...!", MsgBoxStyle.Information, "Perhatian")
End If
Call TampilJenis()
Call Kosong()
TextBox1.Focus()
End If
End Sub
Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 7

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button2.Click
If TextBox1.Text = "" Then
MsgBox("Kode Jenis belum diisi")
TextBox1.Focus()
Exit Sub
Else
Dim Ubah As String = "Update Jenis set " & _
"Jenis='" & TextBox2.Text & "' " & _
"where KodeJenis='" & TextBox1.Text & "'"
cmd = New OleDbCommand(Ubah, Conn)
cmd.ExecuteNonQuery()
MsgBox("Ubah data sukses..!", MsgBoxStyle.Information, "Perhatian")
Call TampilJenis()
Call Kosong()
TextBox1.Focus()
End If
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button3.Click
If TextBox1.Text = "" Then
MsgBox("Kode Buku belum diisi")
TextBox1.Focus()
Exit Sub
Else
If MessageBox.Show("Yakin akan menghapus Data Jenis " & TextBox1.Text & " ?", "",
MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
cmd = New OleDbCommand("Delete * From Jenis where KodeJenis='" & TextBox1.Text
& "'", Conn)
cmd.ExecuteNonQuery()
Call Kosong()
Call TampilJenis()
Else
Call Kosong()
End If
End If
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button4.Click
Call Kosong()
End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
TextBox1.MaxLength = 2
If e.KeyChar = Chr(13) Then
cmd = New OleDbCommand("Select * From Jenis where KodeJenis='" & TextBox1.Text &
"'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows = True Then
TextBox2.Text = rd.Item(1)
TextBox2.Focus()
Else
Call Isi()
TextBox2.Focus()
End If
End If
End Sub

Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles TextBox3.TextChanged
cmd = New OleDbCommand("Select * From Jenis where KodeJenis like '%" & TextBox3.Text &
"%'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows Then
da = New OleDbDataAdapter("Select * From Jenis where KodeJenis like '%" &
TextBox3.Text & "%'", Conn)
ds = New DataSet
da.Fill(ds, "Dapat")
DataGridView1.DataSource = ds.Tables("Dapat")
Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 8
DataGridView1.ReadOnly = True
Else
MsgBox("Data tidak ditemukan")
End If
End Sub
End Class


Hasil Form3 (Data Buku) setelah dijalankan


Gambar 7. Hasil Form3 (Data Buku)

Kodingnya sebagai berikut :
Imports System.Data.OleDb
Public Class Form3
Sub Kosong()
TextBox1.Clear()
ComboBox1.Text = ""
TextBox2.Clear()
TextBox3.Clear()
TextBox4.Clear()
TextBox5.Clear()
TextBox6.Clear()
TextBox7.Clear()
TextBox8.Clear()
TextBox1.Focus()
End Sub


Sub Isi()
ComboBox1.Text = ""
TextBox2.Clear()
TextBox3.Clear()
TextBox4.Clear()
TextBox5.Clear()
TextBox6.Clear()
TextBox7.Clear()
ComboBox1.Focus()
End Sub
Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 9

Sub TampilBuku()
da = New OleDbDataAdapter("Select * From Buku", Conn)
ds = New DataSet
ds.Clear()
da.Fill(ds, "Buku")
DataGridView1.DataSource = ds.Tables("Buku")
DataGridView1.Refresh()
End Sub

Sub TampilJenis()
cmd = New OleDbCommand("Select KodeJenis From Jenis", Conn)
rd = cmd.ExecuteReader
Do While rd.Read
ComboBox1.Items.Add(rd.Item(0))
Loop
End Sub

Sub AturGrid()
DataGridView1.Columns(0).Width = 60
DataGridView1.Columns(1).Width = 50
DataGridView1.Columns(2).Width = 300
DataGridView1.Columns(3).Width = 100
DataGridView1.Columns(4).Width = 100
DataGridView1.Columns(5).Width = 100
DataGridView1.Columns(6).Width = 100
DataGridView1.Columns(7).Width = 300

DataGridView1.Columns(0).HeaderText = "KODE BARANG"
DataGridView1.Columns(1).HeaderText = "KODE JENIS"
DataGridView1.Columns(2).HeaderText = "JUDUL"
DataGridView1.Columns(3).HeaderText = "PENGARANG"
DataGridView1.Columns(4).HeaderText = "PENERBIT"
DataGridView1.Columns(5).HeaderText = "JUMLAH"
DataGridView1.Columns(6).HeaderText = "HARGA"
DataGridView1.Columns(7).HeaderText = "DESKRIPSI"
End Sub

Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles
Me.Load
Call Koneksi()
Call TampilJenis()
Call TampilBuku()
Call Kosong()
Call AturGrid()
End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
TextBox1.MaxLength = 3
If e.KeyChar = Chr(13) Then
cmd = New OleDbCommand("Select * From Buku where KodeBuku='" & TextBox1.Text &
"'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows = True Then
ComboBox1.Text = rd.Item(1)
TextBox2.Text = rd.Item(2)
TextBox3.Text = rd.Item(3)
TextBox4.Text = rd.Item(4)
TextBox5.Text = rd.Item(5)
TextBox6.Text = rd.Item(6)
TextBox7.Text = rd.Item(7)
TextBox2.Focus()
Else
Call Isi()
ComboBox1.Focus()
End If
End If
End Sub

Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 10

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress
TextBox2.MaxLength = 50
If e.KeyChar = Chr(13) Then
TextBox2.Text = UCase(TextBox2.Text)
TextBox3.Focus()
End If
End Sub

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress
If e.KeyChar = Chr(13) Then
TextBox3.Text = UCase(TextBox3.Text)
TextBox4.Focus()
End If
End Sub

Private Sub ComboBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress
If e.KeyChar = Chr(13) Then TextBox2.Focus()
End Sub

Private Sub DataGridView1_CellContentClick(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
Dim i As Integer
i = Me.DataGridView1.CurrentRow.Index
With DataGridView1.Rows.Item(i)
Me.TextBox1.Text = .Cells(0).Value
Me.ComboBox1.Text = .Cells(1).Value
Me.TextBox2.Text = .Cells(2).Value
Me.TextBox3.Text = .Cells(3).Value
Me.TextBox4.Text = .Cells(4).Value
Me.TextBox5.Text = .Cells(5).Value
Me.TextBox6.Text = .Cells(6).Value
Me.TextBox7.Text = .Cells(7).Value
End With
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
If TextBox1.Text = "" Or ComboBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text =
"" Or TextBox4.Text = "" Or TextBox5.Text = "" Or TextBox6.Text = "" Then
MsgBox("Data belum lengkap..!")
TextBox1.Focus()
Exit Sub
Else
cmd = New OleDbCommand("Select * From Buku where KodeBuku='" & TextBox1.Text &
"'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If Not rd.HasRows Then
Dim Simpan As String = "insert into
Buku(KodeBuku,KodeJenis,Judul,Pengarang,Penerbit,JumlahBuku,Harga,Deskripsi)values " & _
"('" & TextBox1.Text & "','" & ComboBox1.Text & "','" & TextBox2.Text & "','"
& TextBox3.Text & "','" & TextBox4.Text & "','" & TextBox5.Text & "','" & TextBox6.Text &
"','" & TextBox7.Text & "')"
cmd = New OleDbCommand(Simpan, Conn)
cmd.ExecuteNonQuery()
MsgBox("Simpan data sukses...!", MsgBoxStyle.Information, "Perhatian")
End If
Call TampilBuku()
Call Kosong()
TextBox1.Focus()
End If
End Sub


Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 11

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button2.Click
If TextBox1.Text = "" Then
MsgBox("Kode Buku belum diisi")
TextBox1.Focus()
Exit Sub
Else
Dim Ubah As String = "Update Buku set " & _
"KodeJenis='" & ComboBox1.Text & "'," & _
"Judul='" & TextBox2.Text & "'," & _
"Pengarang='" & TextBox3.Text & "'," & _
"Penerbit='" & TextBox4.Text & "'," & _
"JumlahBuku='" & TextBox5.Text & "'," & _
"Harga='" & TextBox6.Text & "'," & _
"Deskripsi='" & TextBox7.Text & "' " & _
"where KodeBuku='" & TextBox1.Text & "'"
cmd = New OleDbCommand(Ubah, Conn)
cmd.ExecuteNonQuery()
MsgBox("Ubah data sukses..!", MsgBoxStyle.Information, "Perhatian")
Call TampilBuku()
Call Kosong()
TextBox1.Focus()
End If
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button3.Click
If TextBox1.Text = "" Then
MsgBox("Kode Buku belum diisi")
TextBox1.Focus()
Exit Sub
Else
If MessageBox.Show("Yakin akan menghapus Data Buku " & TextBox1.Text & " ?", "",
MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
cmd = New OleDbCommand("Delete * From Buku where KodeBuku='" & TextBox1.Text &
"'", Conn)
cmd.ExecuteNonQuery()
Call Kosong()
Call TampilBuku()
Else
Call Kosong()
End If
End If
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button4.Click
Call Kosong()
End Sub

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles ComboBox1.SelectedIndexChanged
cmd = New OleDbCommand("Select * From Jenis where KodeJenis='" & ComboBox1.Text & "'",
Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows = True Then
TextBox8.Text = rd.Item(1)
Else
MsgBox("Kode jenis ini tidak terdaftar")
End If
End Sub

Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress
If e.KeyChar = Chr(13) Then
TextBox4.Text = UCase(TextBox4.Text)
TextBox5.Focus()
End If
End Sub


Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 12

Private Sub TextBox5_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox5.KeyPress
If e.KeyChar = Chr(13) Then TextBox6.Focus()
End Sub

Private Sub TextBox6_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox6.KeyPress
If e.KeyChar = Chr(13) Then
TextBox6.Text = UCase(TextBox6.Text)
TextBox7.Focus()
End If
End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button5.Click
Me.Close()
End Sub

Private Sub TextBox9_TextChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles TextBox9.TextChanged
cmd = New OleDbCommand("Select * From Buku where Judul like '%" & TextBox9.Text &
"%'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows Then
da = New OleDbDataAdapter("Select * From Buku where Judul like '%" & TextBox9.Text
& "%'", Conn)
ds = New DataSet
da.Fill(ds, "Dapat")
DataGridView1.DataSource = ds.Tables("Dapat")
DataGridView1.ReadOnly = True
Else
MsgBox("Data tidak ditemukan")
End If
End Sub

Private Sub TextBox7_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox7.KeyPress
TextBox6.MaxLength = 225
If e.KeyChar = Chr(13) Then
TextBox7.Text = UCase(TextBox7.Text)
Button1.Focus()
End If
End Sub

End Class



Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 13
Hasil Form4 (Transaksi Penjualan Buku Komputer) setelah dijalankan


Gambar 8. Hasil Form4 (Transaksi Penjualan)

Kodingnya sebagai berikut :
Imports System.Data.OleDb
Public Class Form4

Sub Kosong()
TextBox4.Clear()
TextBox5.Clear()
TextBox6.Clear()
TextBox7.Clear()
TextBox8.Clear()
TextBox4.Focus()
End Sub

Sub TidakAktif()
TextBox1.Enabled = False
TextBox2.Enabled = False
TextBox3.Enabled = False
End Sub

Sub KolomBaru()
DataGridView1.Columns.Add("Kode", "KODE BUKU")
DataGridView1.Columns.Add("Nama", "NAMA BUKU")
DataGridView1.Columns.Add("Harga", "HARGA")
DataGridView1.Columns.Add("Jumlah", "QTY")
DataGridView1.Columns.Add("Total", "SUB TOTAL")
Call LebarKolom()
End Sub

Sub LebarKolom()
DataGridView1.Columns(0).Width = 50
DataGridView1.Columns(1).Width = 300
DataGridView1.Columns(2).Width = 60
DataGridView1.Columns(3).Width = 40
DataGridView1.Columns(4).Width = 80
End Sub

Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 14

Private Sub Otomatis()
cmd = New OleDbCommand("Select * from Transaksi where NoFaktur in (select
max(NoFaktur) from Transaksi) order by NoFaktur desc", Conn)
Dim urutan As String
Dim hitung As Long
rd = cmd.ExecuteReader
rd.Read()
If Not rd.HasRows Then
urutan = "TR" + Format(Now, "yyMMdd") + "001"
Else
If Microsoft.VisualBasic.Mid(rd.GetString(0), 3, 6) <> Format(Now, "yyMMdd") Then
urutan = "TR" + Format(Now, "yyMMdd") + "001"
Else
hitung = Microsoft.VisualBasic.Right(rd.GetString(0), 2) + 1
urutan = "TR" + Format(Now, "yyMMdd") + Microsoft.VisualBasic.Right("000" &
hitung, 3)
End If
End If
TextBox1.Text = urutan
End Sub

Sub TampilBuku()
cmd = New OleDbCommand("Select KodeBuku From Buku", Conn)
rd = cmd.ExecuteReader
End Sub

Private Sub Form4_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles
Me.Activated
Call Otomatis()
TextBox2.Text = Today
TextBox3.Text = TimeOfDay
End Sub

Private Sub Form4_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles
Me.Load
Call Koneksi()
Call KolomBaru()
Call Kosong()
Call TidakAktif()
Call TampilBuku()
End Sub

Sub TotalItem()
Dim HitungItem As Integer = 0
For I As Integer = 0 To DataGridView1.Rows.Count - 1
HitungItem = HitungItem + Val(DataGridView1.Rows(I).Cells(3).Value)
TextBox9.Text = HitungItem
Next
End Sub

Sub TotalHarga()
Dim HitungHarga As Integer = 0
For I As Integer = 0 To DataGridView1.Rows.Count - 1
HitungHarga = HitungHarga + Val(DataGridView1.Rows(I).Cells(4).Value)
TextBox6.Text = HitungHarga
Label10.Text = HitungHarga
Next
End Sub

Sub HapusBaris()
On Error Resume Next
Dim Baris As Integer = DataGridView1.CurrentCell.RowIndex
DataGridView1.Rows(baris).Cells(0).Value = ""
Chr(30)
End Sub

Private Sub DataGridView1_KeyDown(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyEventArgs)
If e.KeyCode = Keys.Up Then
DataGridView1.CurrentCell = DataGridView1.Rows(0).Cells(3)
End If
End Sub


Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 15

Private Sub DataGridView1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs)
On Error Resume Next
If e.KeyChar = Chr(27) Then
DataGridView1.Rows.RemoveAt(DataGridView1.CurrentCell.RowIndex)
Call TotalItem()
Call TotalHarga()
TextBox7.Clear()
TextBox8.Text = ""
End If
End Sub

Private Sub TextBox7_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox7.KeyPress
If e.KeyChar = Chr(13) Then
If Val(TextBox7.Text) < Val(TextBox6.Text) Then
MsgBox("Pembayaran kurang")
TextBox8.Text = ""
TextBox7.Focus()
Exit Sub
ElseIf Val(TextBox7.Text) = Val(TextBox6.Text) Then
TextBox8.Text = 0
Button2.Focus()
Else
TextBox8.Text = Val(TextBox7.Text) - Val(TextBox6.Text)
Button2.Focus()
End If
End If
If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then
e.Handled() = True
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button2.Click
Call Kosong()
DataGridView1.Columns.Clear()
Call KolomBaru()
DataGridView1.Focus()
End Sub

Private Sub DataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewEditingControlShowingEventArgs)
If e.Control.GetType.ToString() =
"System.Windows.Forms.DataGridViewTextBoxEditingControl" Then
Dim c As DataGridViewTextBoxEditingControl = CType(e.Control,
DataGridViewTextBoxEditingControl)
RemoveHandler c.KeyPress, AddressOf GridViewTextBox_KeyPress
AddHandler c.KeyPress, AddressOf GridViewTextBox_KeyPress
End If
End Sub

Private Sub GridViewTextBox_KeyPress(ByVal sender As Object, ByVal ex As
KeyPressEventArgs)
If DataGridView1.CurrentCell.ColumnIndex = 3 Then
If ((Asc(ex.KeyChar) < 48 Or Asc(ex.KeyChar) > 57) And Asc(ex.KeyChar) <> 8) Then
ex.Handled = True
End If
End If
End Sub


Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 16

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button1.Click
If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Or TextBox4.Text =
"" Or TextBox5.Text = "" Or TextBox6.Text = "" Or TextBox7.Text = "" Or TextBox8.Text = ""
Then
MsgBox("Data belum lengkap, tidak ada transaksi atau pembayaran masih kosong")
Exit Sub
End If

'Simpan ke tabel Transaksi
Dim SimpanTransaksi As String = "Insert into
Transaksi(NoFaktur,TglFaktur,Pukul,NamaPembeli,NoTelp,Total,Dibayar,Kembali,Item) values " & _
"('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" &
TextBox4.Text & "','" & TextBox5.Text & "','" & TextBox6.Text & "','" & TextBox7.Text & "','"
& TextBox8.Text & "','" & TextBox9.Text & "')"
cmd = New OleDbCommand(SimpanTransaksi, Conn)
cmd.ExecuteNonQuery()

For baris As Integer = 0 To DataGridView1.Rows.Count - 2
'Simpan ke tabel DetailTransaksi
Dim SimpanDetailTransaksi As String = "Insert into DetailTransaksi
(NoFaktur,KodeBuku,Judul,HargaJual,Jumlah,SubTotal) values " & _
"('" & TextBox1.Text & "','" & DataGridView1.Rows(baris).Cells(0).Value & "','" &
DataGridView1.Rows(baris).Cells(1).Value & "','" & DataGridView1.Rows(baris).Cells(2).Value &
"','" & DataGridView1.Rows(baris).Cells(3).Value & "','" &
DataGridView1.Rows(baris).Cells(4).Value & "')"
cmd = New OleDbCommand(SimpanDetailTransaksi, Conn)
cmd.ExecuteNonQuery()

'Kurangi stok Buku
cmd = New OleDbCommand("select * from Buku where KodeBuku='" &
DataGridView1.Rows(baris).Cells(0).Value & "'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows Then
Dim KurangiStok As String = "update Buku set JumlahBuku= '" & rd.Item(5) -
DataGridView1.Rows(baris).Cells(3).Value & "' where KodeBuku='" &
DataGridView1.Rows(baris).Cells(0).Value & "'"
cmd = New OleDbCommand(KurangiStok, Conn)
cmd.ExecuteNonQuery()
End If
Next baris

DataGridView1.Columns.Clear()
Call KolomBaru()
Call Otomatis()
Call Kosong()
End Sub

Sub kena(ByVal myGrid As DataGrid)
myGrid.CurrentCell = New DataGridCell(1, 1)
End Sub



Teknik Informatika Universitas Serambi Mekkah

Modul Dasar Pemrograman III (VB.Net) Hal. 17

Private Sub DataGridView1_CellEndEdit1(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
If e.ColumnIndex = 0 Then
cmd = New OleDbCommand("select * from Buku where KodeBuku='" &
DataGridView1.Rows(e.RowIndex).Cells(0).Value & "'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows Then
DataGridView1.Rows(e.RowIndex).Cells(1).Value = rd.Item(2)
DataGridView1.Rows(e.RowIndex).Cells(2).Value = rd.Item(6)
DataGridView1.Rows(e.RowIndex).Cells(3).Value = 1
DataGridView1.Rows(e.RowIndex).Cells(4).Value =
DataGridView1.Rows(e.RowIndex).Cells(2).Value * DataGridView1.Rows(e.RowIndex).Cells(3).Value
Call TotalItem()
Call TotalHarga()
Else
MsgBox("Kode buku tidak terdaftar")
End If
End If

If e.ColumnIndex = 3 Then
cmd = New OleDbCommand("select * from Buku where KodeBuku='" &
DataGridView1.Rows(e.RowIndex).Cells(0).Value & "'", Conn)
rd = cmd.ExecuteReader
rd.Read()
If rd.HasRows Then
If DataGridView1.Rows(e.RowIndex).Cells(3).Value > rd.Item(5) Then
MsgBox("Stok Buku hanya ada " & rd.Item(5) & "")
DataGridView1.Rows(e.RowIndex).Cells(3).Value = 1
DataGridView1.Rows(e.RowIndex).Cells(4).Value =
DataGridView1.Rows(e.RowIndex).Cells(2).Value * DataGridView1.Rows(e.RowIndex).Cells(3).Value
Call TotalItem()
Call TotalHarga()
Else
DataGridView1.Rows(e.RowIndex).Cells(4).Value =
DataGridView1.Rows(e.RowIndex).Cells(2).Value * DataGridView1.Rows(e.RowIndex).Cells(3).Value
Call TotalItem()
Call TotalHarga()
End If
End If
DataGridView1.CurrentCell = DataGridView1.Rows(0).Cells(0)
End If
End Sub

Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress
If e.KeyChar = Chr(13) Then
TextBox4.Text = UCase(TextBox4.Text)
TextBox5.Focus()
End If
End Sub

Private Sub TextBox5_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox5.KeyPress
If e.KeyChar = Chr(13) Then
TextBox5.Text = UCase(TextBox5.Text)
DataGridView1.Focus()
End If
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button4.Click
Form3.ShowDialog()
End Sub

End Class


Besambung ke Laporan Transaksi .......

Anda mungkin juga menyukai