Public Class Latihan40B_36109073
Dim AA As New OleDb.OleDbConnection("Provider=microsoft.ACE.OLEDB.12.0;data source=" & Application.StartupPath & "\DATAMAJEMUK.accdb")
Dim data As New DataTable
Public Sub evianty()
Dim X As New OleDb.OleDbDataAdapter
X = New OleDb.OleDbDataAdapter("Select BARANG.KODEBARANG, BARANG.NAMABARANG, DETAILTRANSAKSI.UNIT, DETAILTRANSAKSI.HARGA, DETAILTRANSAKSI.UNIT*DETAILTRANSAKSI.HARGA AS JUMLAH from DETAILTRANSAKSI INNER JOIN BARANG ON DETAILTRANSAKSI.KODEBARANG=BARANG.KODEBARANG WHERE NOTRANS= '" & nt073.Text & "'", AA)
data.Rows.Clear()
X.Fill(data)
End Sub
Private Sub Latihan40B_36109073_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim dataprimary(1) As DataColumn
dataprimary(0) = data.Columns("NOTRANS")
data.PrimaryKey = dataprimary
dgv073.DataSource = data
TOTALJUMLAH()
End Sub
Public Sub TOTALJUMLAH()
Dim TOT As Double = 0
For Each X As DataRow In data.Rows
TOT = TOT + X("JUMLAH")
Next
tot073.Text = TOT
End Sub
Private Sub dgv073_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv073.CellContentClick
If dgv073.Columns(e.ColumnIndex).Name = "KODEBARANG" Then
'Cari nama barang'
dgv073.CurrentRow.Cells("NAMABARANG").Value = ""
dgv073.CurrentRow.Cells("UNIT").Value = 0
dgv073.CurrentRow.Cells("HARGA").Value = 0
dgv073.CurrentRow.Cells("JUMLAH").Value = 0
Dim pencari As New ByIskandar.CariKeDataBaseByIskandar
pencari.AturPencarianDataBase("BARANG", "KODEBARANG", dgv073.CurrentRow.Cells("KODEBARANG").Value, 1, AA)
'Menampilkan nama barang jika isi kolom kodebarang ditemukan oleh proses diatas'
If pencari.JumlanBaris > 0 Then
dgv073.CurrentRow.Cells("NAMABARANG").Value = pencari.DataTablenya.Rows(0).Item("NAMABARANG")
Else
dgv073.CurrentRow.Cells("KODEBARANG").Value = ""
If Latihan383940_36109073.ShowDialog = Windows.Forms.DialogResult.OK Then
dgv073.CurrentRow.Cells("KODEBARANG").Value = Latihan383940_36109073.dgv073.CurrentRow.Cells("KODEBARANG").Value
dgv073.CurrentRow.Cells("NAMABARANG").Value = Latihan383940_36109073.dgv073.CurrentRow.Cells("NAMABARANG").Value
End If
End If
ElseIf dgv073.Columns(e.ColumnIndex).Name = "UNIT" Or dgv073.Columns(e.ColumnIndex).Name = "HARGA" Then
'Hitung kolom jumlah'
dgv073.CurrentRow.Cells("JUMLAH").Value = dgv073.CurrentRow.Cells("UNIT").Value * dgv073.CurrentRow.Cells("HARGA").Value
End If
TOTALJUMLAH()
End Sub
Private Sub Simpan_tambah()
If nt073.Text.Length = 0 Then
MsgBox("Maaf, Nomor transaksi harus diisi dulu")
Exit Sub
End If
If data.Rows.Count() = 0 Then
MsgBox("Maaf, Proses tidak dapat dilanjutkian")
Exit Sub
End If
If NO073.Text <> nt073.Text Then
Dim pencari As New ByIskandar.CariKeDataBaseByIskandar
pencari.AturPencarianDataBase("MASTERTRANSAKSI", "NOTRANS", nt073.Text, 1, AA)
If pencari.JumlanBaris > 0 Then
MsgBox("Nomor transaksi sudah ada")
Exit Sub
End If
End If
Dim CM As New OleDb.OleDbCommand
CM = New OleDb.OleDbCommand("INSERT INTO MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) VALUES ('" & nt073.Text & "', #" & dtp073.Value.Day & "/" & dtp073.Value.Month & "/" & dtp073.Value.Year & "#, '" & jt073.Text & "')", AA)
'Membuka koneksi'
AA.Open()
'Eksekusi proses penyimpanan'
CM.ExecuteNonQuery()
'Menutup koneksi'
AA.Close()
'Memeriksa isi jumlah baris dalam object tabel'
For Each X As DataRow In data.Rows
'Mengatur perintah simpan'
CM = New OleDb.OleDbCommand("INSERT INTO DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARGA) VALUES ('" & nt073.Text & "','" & X("KODEBARANG") & "', " & X("UNIT") & ", " & X("HARGA") & ")", AA)
AA.Open()
CM.ExecuteNonQuery()
AA.Close()
CM.Dispose()
Next
NO073.Text = "_"
nt073.Text = ""
jt073.Text = ""
data.Rows.Clear()
TOTALJUMLAH()
'Prosedur mengambil data dari Latihan40B 36109073'
Latihan40A_36109073.evi()
End Sub
Private Sub simpan_edit()
If nt073.Text.Length = 0 Then
MsgBox("Maaf, Nomor transaksi harus diisi dulu")
Exit Sub
End If
If jt073.Text.Length = 0 Then
MsgBox("Maaf, Jenis transaksi harus diisi dulu")
Exit Sub
End If
If data.Rows.Count() = 0 Then
MsgBox("Maaf, Proses tidak dapat dilanjutkan")
Exit Sub
End If
If NO073.Text <> nt073.Text Then
Dim pencari As New ByIskandar.CariKeDataBaseByIskandar
pencari.AturPencarianDataBase("MASTERTRANSAKSI", "NOTRANS", nt073.Text, 1, AA)
If pencari.JumlanBaris > 0 Then
MsgBox("Nomor transaksi sudah ada")
Exit Sub
End If
End If
Dim CM As New OleDb.OleDbCommand
CM = New OleDb.OleDbCommand("DELETE * FROM MASTERTRANSAKSI WHERE NOTRANS= '" & nt073.Text & "'", AA)
AA.Open()
CM.ExecuteNonQuery()
AA.Close()
CM = New OleDb.OleDbCommand("INSERT INTO MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) VALUES ('" & nt073.Text & "', #" & dtp073.Value.Day & "/" & dtp073.Value.Month & "/" & dtp073.Value.Year & "#, '" & jt073.Text & "')", AA)
AA.Open()
CM.ExecuteNonQuery()
AA.Close()
CM = New OleDb.OleDbCommand("DELETE * FROM DETAILTRANSAKSI WHERE NOTRANS= '" & nt073.Text & "'", AA)
AA.Open()
CM.ExecuteNonQuery()
AA.Close()
'Memeriksa isi jumlah baris dalam object tabel'
For Each XX As DataRow In data.Rows
'Mengatur perintah simpan'
CM = New OleDb.OleDbCommand("INSERT INTO DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARGA) VALUES ('" & nt073.Text & "','" & XX("KODEBARANG") & "', " & XX("UNIT") & ", " & XX("HARGA") & ")", AA)
AA.Open()
CM.ExecuteNonQuery()
AA.Close()
CM.Dispose()
Next
NO073.Text = "_"
nt073.Text = ""
jt073.Text = ""
data.Rows.Clear()
TOTALJUMLAH()
Latihan40A_36109073.evi()
End Sub
Private Sub SIMPAN_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SIMPAN.Click
If NO073.Text = "_" Then
Simpan_tambah()
Else
simpan_edit()
End If
End Sub
End Class
Tidak ada komentar:
Posting Komentar