Advertisement
Guest User

PENJUALAN

a guest
May 20th, 2019
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 8.81 KB | None | 0 0
  1. Imports System.Data.OleDb
  2.  
  3. Public Class Penjualan2
  4.  
  5.     Sub HitungBarang()
  6.         Dim Hitung As Integer = 0
  7.         For Baris As Integer = 0 To DGV.RowCount - 1
  8.             Hitung = Hitung + DGV.Rows(Baris).Cells(3).Value
  9.         Next
  10.         LBLTotalBarang.Text = Hitung
  11.     End Sub
  12.  
  13.     Sub HitungHarga()
  14.         Dim Hitung As Integer = 0
  15.         For Baris As Integer = 0 To DGV.RowCount - 1
  16.             Hitung = Hitung + DGV.Rows(Baris).Cells(4).Value
  17.         Next
  18.         LBLTotalHarga.Text = Hitung
  19.     End Sub
  20.  
  21.     Sub Bersihkan()
  22.         ComboBox1.Text = ""
  23.         LBLNamaCustomer.Text = ""
  24.         LBLTotalBarang.Text = 0
  25.         LBLTotalHarga.Text = 0
  26.         TXTDibayar.Text = 0
  27.         LBLKembali.Text = 0
  28.         DGV.Rows.Clear()
  29.         ComboBox1.Focus()
  30.     End Sub
  31.  
  32.     Sub FakturOtomatis()
  33.         cmd = New OleDbCommand("Select Faktur from tbl_penjualan order by Faktur desc", conn)
  34.         dr = cmd.ExecuteReader
  35.         dr.Read()
  36.         If Not dr.HasRows Then
  37.             LBLFaktur.Text = Format(Today, "yyMMdd") + "0001"
  38.         Else
  39.             If Microsoft.VisualBasic.Left(dr.Item("Faktur"), 6) = Format(Today, "yyMMdd") Then
  40.                 LBLFaktur.Text = dr.Item("Faktur") + 1
  41.             Else
  42.                 LBLFaktur.Text = Format(Today, "yyMMdd") + "0001"
  43.             End If
  44.         End If
  45.     End Sub
  46.  
  47.     Private Sub Penjualan2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  48.         Call Koneksi()
  49.         Call FakturOtomatis()
  50.         LBLTanggal.Text = Format(Today, "dd-MMM-yyyy")
  51.         Call Bersihkan()
  52.         cmd = New OleDbCommand("Select Kode_Customer from tbl_customer", conn)
  53.         dr = cmd.ExecuteReader
  54.         Do While dr.Read
  55.             ComboBox1.Items.Add(dr.Item("Kode_Customer"))
  56.         Loop
  57.     End Sub
  58.  
  59.     Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
  60.         cmd = New OleDbCommand("Select * from tbl_customer where Kode_Customer='" & ComboBox1.Text & "'", conn)
  61.         dr = cmd.ExecuteReader
  62.         dr.Read()
  63.         If dr.HasRows Then
  64.             LBLNamaCustomer.Text = dr.Item("Nama_Customer")
  65.         End If
  66.     End Sub
  67.  
  68.     Private Sub BTNTutup_Click(sender As Object, e As EventArgs) Handles BTNTutup.Click
  69.         Me.Close()
  70.     End Sub
  71.  
  72.     Private Sub BTNBatal_Click(sender As Object, e As EventArgs) Handles BTNBatal.Click
  73.         Call Bersihkan()
  74.     End Sub
  75.  
  76.     Private Sub DGV_CellEndEdit(sender As Object, e As DataGridViewCellEventArgs) Handles DGV.CellEndEdit
  77.  
  78.         If e.ColumnIndex = 0 Then
  79.  
  80.             For BarisAtas As Integer = 0 To DGV.RowCount - 1
  81.                 For BarisBawah As Integer = BarisAtas + 1 To DGV.RowCount - 1
  82.  
  83.                     If DGV.Rows(BarisBawah).Cells(0).Value = DGV.Rows(BarisAtas).Cells(0).Value Then
  84.                         'MsgBox("Kode Ini Sudah Dientri")
  85.                         DGV.Rows(BarisAtas).Cells(3).Value = DGV.Rows(BarisAtas).Cells(3).Value + 1
  86.                         DGV.Rows(BarisAtas).Cells(4).Value = DGV.Rows(BarisAtas).Cells(2).Value * DGV.Rows(BarisAtas).Cells(3).Value
  87.                         Call HitungBarang()
  88.                         Call HitungHarga()
  89.                         SendKeys.Send("{UP}")
  90.                         DGV.Rows(BarisBawah).Cells(0).Value = ""
  91.                         Exit Sub
  92.                     End If
  93.  
  94.                 Next
  95.             Next
  96.             cmd = New OleDbCommand("Select * from tbl_barang where Kode_Barang='" & DGV.Rows(e.RowIndex).Cells(0).Value & "'", conn)
  97.             dr = cmd.ExecuteReader
  98.             dr.Read()
  99.             If dr.HasRows Then
  100.                 DGV.Rows(e.RowIndex).Cells(1).Value = dr.Item("Nama_Barang")
  101.                 DGV.Rows(e.RowIndex).Cells(2).Value = dr.Item("Harga_Jual")
  102.                 DGV.Rows(e.RowIndex).Cells(3).Value = 1
  103.                 DGV.Rows(e.RowIndex).Cells(4).Value = DGV.Rows(e.RowIndex).Cells(2).Value * DGV.Rows(e.RowIndex).Cells(3).Value
  104.             Else
  105.                 MsgBox("Kode Tidak Terdaftar")
  106.                 SendKeys.Send("{down}")
  107.                 DGV.Rows(e.RowIndex).Cells(0).Value = ""
  108.                 DGV.Rows.Remove(DGV.CurrentRow)
  109.             End If
  110.         End If
  111.  
  112.         If e.ColumnIndex = 3 Then
  113.             Try
  114.                 cmd = New OleDbCommand("Select * from tbl_barang where Kode_Barang='" & DGV.Rows(e.RowIndex).Cells(0).Value & "'", conn)
  115.                 dr = cmd.ExecuteReader
  116.                 dr.Read()
  117.                 If DGV.Rows(e.RowIndex).Cells(3).Value > dr.Item("Stok") Then
  118.                     MsgBox("Stok Hanya Ada " & dr.Item("Stok") & "")
  119.                     SendKeys.Send("{UP}")
  120.                     DGV.Rows(e.RowIndex).Cells(3).Value = dr.Item("Stok")
  121.                     DGV.Rows(e.RowIndex).Cells(4).Value = DGV.Rows(e.RowIndex).Cells(2).Value * DGV.Rows(e.RowIndex).Cells(3).Value
  122.                 Else
  123.                     DGV.Rows(e.RowIndex).Cells(4).Value = DGV.Rows(e.RowIndex).Cells(2).Value * DGV.Rows(e.RowIndex).Cells(3).Value
  124.                 End If
  125.             Catch ex As Exception
  126.                 MsgBox("Harus Angka")
  127.                 SendKeys.Send("{UP}")
  128.                 DGV.Rows(e.RowIndex).Cells(3).Value = 1
  129.                 DGV.Rows(e.RowIndex).Cells(4).Value = DGV.Rows(e.RowIndex).Cells(2).Value * DGV.Rows(e.RowIndex).Cells(3).Value
  130.             End Try
  131.         End If
  132.  
  133.         DGV.Columns(2).DefaultCellStyle.Format = "###,###,###"
  134.         DGV.Columns(3).DefaultCellStyle.Format = "###,###,###"
  135.         DGV.Columns(4).DefaultCellStyle.Format = "###,###,###"
  136.  
  137.         DGV.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  138.         DGV.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  139.         DGV.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  140.  
  141.         Call HitungBarang()
  142.         Call HitungHarga()
  143.     End Sub
  144.  
  145.     Private Sub DGV_KeyPress(sender As Object, e As KeyPressEventArgs) Handles DGV.KeyPress
  146.         On Error Resume Next
  147.         If e.KeyChar = Chr(27) Then
  148.             DGV.Rows.Remove(DGV.CurrentRow)
  149.             Call HitungBarang()
  150.             Call HitungHarga()
  151.         End If
  152.  
  153.         If e.KeyChar = Chr(13) Then
  154.             TXTDibayar.Focus()
  155.         End If
  156.     End Sub
  157.  
  158.     Private Sub TXTDibayar_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TXTDibayar.KeyPress
  159.  
  160.         If e.KeyChar = Chr(13) Then
  161.             If Val(TXTDibayar.Text) < Val(LBLTotalHarga.Text) Then
  162.                 MsgBox("Pembayaran Kurang")
  163.                 TXTDibayar.Focus()
  164.                 Exit Sub
  165.             ElseIf Val(TXTDibayar.Text) >= Val(LBLTotalHarga.Text) Then
  166.                 LBLKembali.Text = Val(TXTDibayar.Text) - Val(LBLTotalHarga.Text)
  167.                 BTNSimpan.Focus()
  168.             End If
  169.         End If
  170.  
  171.         If Not (e.KeyChar >= "0" And e.KeyChar <= "9" Or e.KeyChar = vbBack) Then
  172.             e.Handled = True
  173.         End If
  174.     End Sub
  175.  
  176.     Private Sub BTNSimpan_Click(sender As Object, e As EventArgs) Handles BTNSimpan.Click
  177.  
  178.         If ComboBox1.Text = "" Or TXTDibayar.Text = 0 Then
  179.             MsgBox("Transaksi Belum Lengkap")
  180.             Exit Sub
  181.         End If
  182.  
  183.         Dim SimpanPenjualan As String = "insert into tbl_penjualan values('" & LBLFaktur.Text & "','" & LBLTanggal.Text & "','" & ComboBox1.Text & "','" & LBLTotalBarang.Text & "','" & LBLTotalHarga.Text & "','" & TXTDibayar.Text & "','" & LBLKembali.Text & "','User')"
  184.         cmd = New OleDbCommand(SimpanPenjualan, conn)
  185.         cmd.ExecuteNonQuery()
  186.  
  187.         For Baris As Integer = 0 To DGV.RowCount - 2
  188.             Dim SimpanDetail As String = "insert into tbl_detailjual values('" & LBLFaktur.Text & "','" & DGV.Rows(Baris).Cells(0).Value & "','" & DGV.Rows(Baris).Cells(2).Value & "','" & DGV.Rows(Baris).Cells(3).Value & "','" & DGV.Rows(Baris).Cells(4).Value & "')"
  189.             cmd = New OleDbCommand(SimpanDetail, conn)
  190.             cmd.ExecuteNonQuery()
  191.  
  192.             cmd = New OleDbCommand("Select * from tbl_barang where Kode_Barang ='" & DGV.Rows(Baris).Cells(0).Value & "'", conn)
  193.             dr = cmd.ExecuteReader
  194.             dr.Read()
  195.  
  196.             If dr.HasRows Then
  197.                 Dim KurangiStok As String = "update tbl_barang set Stok='" & dr.Item("Stok") - DGV.Rows(Baris).Cells(3).Value & "' where Kode_Barang='" & DGV.Rows(Baris).Cells(0).Value & "'"
  198.                 cmd = New OleDbCommand(KurangiStok, conn)
  199.                 cmd.ExecuteNonQuery()
  200.             End If
  201.         Next
  202.  
  203.         Call Bersihkan()
  204.         Call FakturOtomatis()
  205.  
  206.     End Sub
  207.  
  208.     Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  209.         ListBoxBedaForm.Show()
  210.     End Sub
  211.  
  212.     Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
  213.         DataGridBedaForm.Show()
  214.     End Sub
  215. End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement