Kamis, 21 November 2013

Form Update Stock

Public Class Form_Update_Stock
    Dim SQL As String
    Dim proses As New ClsKoneksi
    Dim tbBarang As DataTable

    Private Sub Form_Update_Stock_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        init_form()
    End Sub
    Private Sub init_form()
        TxtIdSupplier.Enabled = False
        TxtNamaSupplier.Enabled = False
        TxtAlamat.Enabled = False
        TxtTelp.Enabled = False

        TxtIdBarang.Enabled = False
        TxtNamaBarang.Enabled = False
        TxtCurrentStock.Enabled = False
        TxtIdSupplier.Clear()

        TxtNamaSupplier.Clear()
        TxtAlamat.Clear()
        TxtTelp.Clear()

        TxtIdBarang.Clear()
        TxtNamaBarang.Clear()
        TxtCurrentStock.Clear()

        TxtStockin.Clear()

        If DgUpdate.Rows.Count <> 0 Then
            DgUpdate.Rows.Clear()
        End If

        BtnCariBarang.Enabled = False

        ToolTip1.SetToolTip(BtnUpdate, "Update")
        ToolTip1.SetToolTip(BtnCancel, "Cancel")
        ToolTip1.SetToolTip(BtnExit, "Exit")
    End Sub
    Private Sub add()
        If TxtIdBarang.Text = "" Then
            MsgBox("Pilih barang terlebih dahulu !", MsgBoxStyle.Critical, "Error")
        Else
            If TxtStockin.Text = "" Or Val(TxtStockin.Text) < 1 Then
                MsgBox("Jumlah tidak boleh kosong", MsgBoxStyle.Critical, "Error")
            Else
                If DgUpdate.RowCount <> 0 Then
                    Dim i As Integer
                    For i = 0 To DgUpdate.RowCount - 1
                        If (TxtIdBarang.Text = DgUpdate.Rows(i).Cells(0).Value.ToString) Then

                            MsgBox("Id Barang " & TxtIdBarang.Text & " sudah ada", MsgBoxStyle.Critical, "Error")
                            Return
                        End If
                    Next
                End If

                Dim row As String() = New String() {TxtIdBarang.Text, TxtNamaBarang.Text, TxtCurrentStock.Text, TxtStockin.Text}
                DgUpdate.Rows.Add(row)
                TxtIdBarang.Clear()
                TxtNamaBarang.Clear()
                TxtCurrentStock.Clear()
                TxtStockin.Clear()
            End If
        End If
    End Sub

    Private Sub BtnCariSupplier_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCariSupplier.Click
        Form_Cari_Supplier.ShowDialog()
        If Form_Cari_Supplier.DialogResult = Windows.Forms.DialogResult.OK Then
            TxtIdSupplier.Text = gl_kode_supplier
            TxtNamaSupplier.Text = gl_nama_supplier
            TxtAlamat.Text = gl_alamat_supplier
            TxtTelp.Text = gl_telepon_supplier
        End If
    End Sub
    Public Function getKodeSupplier(ByVal kode As String)
        tbBarang = proses.ExecuteQuery("select id_supplier from tb_supplier where nama_supplier = '" & kode & "'")
        Dim kodeSupplier As String
        kodeSupplier = tbBarang.Rows(0).Item("id_supplier")
        Return kodeSupplier
    End Function

    Private Sub BtnCariBarang_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCariBarang.Click
        gl_filter_kode_customer = TxtIdSupplier.Text
        Form_Cari_Barang_Supplier.ShowDialog()
        If Form_Cari_Barang_Supplier.DialogResult = Windows.Forms.DialogResult.OK Then
            TxtIdBarang.Text = gl_kode_Barang
            TxtNamaBarang.Text = gl_nama_Barang
            TxtCurrentStock.Text = gl_stok_Barang
        End If
        gl_filter_kode_customer = ""
    End Sub

    Private Sub TxtStockin_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtStockin.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack Or e.KeyChar = Chr(13)) Then e.Handled() = True

        If (e.KeyChar = Chr(13)) Then
            add()
        End If

    End Sub

    Private Sub updateStok()
        If (TxtIdSupplier.Text = "") Then
            MsgBox("Isi data supplier terlebih dahulu", MsgBoxStyle.Critical, "Error")
            Return
        End If

        If (DgUpdate.RowCount <= 0) Then
            MsgBox("Silahkan tambah barang yang ingin ditambah stok", MsgBoxStyle.Critical, "Error")
            Return
        End If

        Try
            Dim i As Integer
            For i = 0 To (DgUpdate.RowCount - 1)
                Dim stok As Integer
                stok = Val(DgUpdate.Rows(i).Cells(2).Value.ToString) + Val(DgUpdate.Rows(i).Cells(3).Value.ToString)
                SQL = "Insert Into tb_stock (id_supplier, tanggal_supply, id_barang, stok_awal, tambah_stok, stok_akhir) Values ('" & TxtIdSupplier.Text & "','" & DtTanggal.Value & "','" & DgUpdate.Rows(i).Cells(0).Value.ToString & "','" & DgUpdate.Rows(i).Cells(2).Value.ToString & "','" & DgUpdate.Rows(i).Cells(3).Value.ToString & "','" & stok & "')"
                proses.ExecuteNonQuery(SQL)
                SQL = "update tb_barang set stock = '" & stok & "' where id_barang = '" & Trim(DgUpdate.Rows(i).Cells(0).Value.ToString) & "'"
                proses.ExecuteNonQuery(SQL)

            Next
            MsgBox("stok berhasil diupdate", MsgBoxStyle.Information, "sUKSES")
            init_form()
        Catch ex As Exception
            MsgBox(ex.ToString, MsgBoxStyle.Critical, "Error")

        End Try
    End Sub
    Private Sub fill_form(ByVal row As Integer)
        If row < 0 Then
            Exit Sub
        End If
        If Not DgUpdate.Rows(row).Cells(0).Value.ToString = "" Then
            TxtIdBarang.Text = DgUpdate.Rows(row).Cells(0).Value.ToString
            TxtNamaBarang.Text = DgUpdate.Rows(row).Cells(1).Value.ToString
            TxtCurrentStock.Text = DgUpdate.Rows(row).Cells(2).Value.ToString
            TxtStockin.Text = DgUpdate.Rows(row).Cells(3).Value.ToString
        End If
    End Sub

    Private Sub BtnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAdd.Click
        add()
    End Sub

    Private Sub TxtStockin_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxtStockin.TextChanged

    End Sub

    Private Sub BtnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnUpdate.Click
        updateStok()
    End Sub

    Private Sub DgUpdate_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DgUpdate.CellClick

    End Sub

    Private Sub DgUpdate_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DgUpdate.CellContentClick

    End Sub

    Private Sub DgUpdate_CellDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DgUpdate.CellDoubleClick
        If e.RowIndex < 0 Then
            Exit Sub
        End If
        If MessageBox.Show("anda yakin ingin hapus", "Konfirmasi", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.No Then
            Return
        Else
            DgUpdate.Rows.RemoveAt(e.RowIndex)
        End If
    End Sub

    Private Sub BtnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCancel.Click
        init_form()
    End Sub

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

    Private Sub TxtIdSupplier_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxtIdSupplier.TextChanged
        If TxtIdSupplier.Text <> "" Then
            BtnCariBarang.Enabled = True
        Else
            BtnCariBarang.Enabled = False
        End If
    End Sub

    Private Sub BtnCariBarang_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCariBarang.Click
      
    End Sub
End Class

Tidak ada komentar:

Posting Komentar