Translate

Minggu, 10 November 2013

Source Code Transaksi

Public Class PO
    Dim baris, kolom As Integer
    Dim data1, data2, data3, data4, data5 As String

    Private Sub PO_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated


    End Sub
    Private Sub PO_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Call koneksi()
        Call data_pemasok()
        Call data_karyawan()
        Call isiDG1()



    End Sub
    Private Sub data_pemasok()
        ComboBox1.Items.Clear()
        Call koneksi()
        Tampil.Connection = Dtbase
        Tampil.CommandType = CommandType.Text
        Tampil.CommandText = "select * from Pemasok"
        Tampilkan = Tampil.ExecuteReader

        If Tampilkan.HasRows = True Then
            While Tampilkan.Read
                ComboBox1.Items.Add("" & Tampilkan("kd_pemasok") & "")
            End While
        End If
    End Sub
    Private Sub data_karyawan()
        ComboBox2.Items.Clear()
        Call koneksi()
        Tampil.Connection = Dtbase
        Tampil.CommandType = CommandType.Text
        Tampil.CommandText = "select * from Karyawan"
        Tampilkan = Tampil.ExecuteReader

        If Tampilkan.HasRows = True Then
            While Tampilkan.Read
                ComboBox2.Items.Add("" & Tampilkan("kd_karyawan") & "")
            End While
        End If
    End Sub

    Private Sub simpandata()
        If Tambah.Text = "Simpan" Then
            If TextBox1.Text = "" Then Exit Sub
            If ComboBox1.Text = "" Then Exit Sub
            If TextBox2.Text = "" Then Exit Sub
            If ComboBox2.Text = "" Then Exit Sub
            If TextBox3.Text = "" Then Exit Sub


            Try
                Call koneksi()
                Tampil2.Connection = Dtbase 'tampil2=variabel public class untuk memberikan perintah
                Tampil2.CommandType = CommandType.Text 'tipe commant berbentuk text

                Tabel = "Insert Into PO(no_po,tgl,kd_pemasok,total,kd_karyawan,ket)"
                Tabel = Tabel + "values ('" & Trim(TextBox1.Text) & "',"
                Tabel = Tabel + "'" & Trim(DateTimePicker1.Text) & "',"
                Tabel = Tabel + " '" & Trim(ComboBox1.Text) & "',"
                Tabel = Tabel + " '" & Trim(TextBox2.Text) & "',"
                Tabel = Tabel + " '" & Trim(ComboBox2.Text) & "',"
                Tabel = Tabel + " '" & Trim(TextBox3.Text) & "')"



                Tampil2.CommandText = Tabel
                Tampil2.ExecuteNonQuery() 'perintah untuk mengeksekusi


                Call bersih()
                TextBox1.Focus()

            Catch ex As Exception
                MsgBox(ex.ToString())
            End Try

        Else

            If Ubah.Text = "Simpan" Then
                If TextBox1.Text = "" Then Exit Sub
                If DateTimePicker1.Value = "" Then Exit Sub
                If ComboBox1.Text = "" Then Exit Sub
                If TextBox2.Text = "" Then Exit Sub
                If ComboBox2.Text = "" Then Exit Sub
                If TextBox3.Text = "" Then Exit Sub


                Try
                    Call koneksi()

                    Tampil2.Connection = Dtbase
                    Tampil2.CommandType = CommandType.Text
                    Tabel = "update PO set tgl='" & Trim(DateTimePicker1.Value) & "',kd_pemasok='" & Trim(ComboBox1.Text) & "',total='" & (TextBox2.Text) & "',kd_karyawan='" & Trim(ComboBox2.Text) & "',ket='" & Trim(TextBox3.Text) & "'"

                    Tabel = Tabel + " where no_po='" & Trim(TextBox1.Text) & "'"

                    Tampil2.CommandText = Tabel
                    Tampil2.ExecuteNonQuery()


                    Call bersih()
                    TextBox1.Focus()

                Catch ex As Exception
                    MsgBox(ex.ToString())
                End Try
            Else
                If Hapus.Text = "Ok" Then
                    If TextBox1.Text = "" Then Exit Sub
                    If DateTimePicker1.Value = "" Then Exit Sub
                    If ComboBox1.Text = "" Then Exit Sub
                    If TextBox2.Text = "" Then Exit Sub
                    If ComboBox2.Text = "" Then Exit Sub
                    If TextBox3.Text = "" Then Exit Sub


                    Try
                        Call koneksi()
                        Tampil2.Connection = Dtbase
                        Tampil2.CommandType = CommandType.Text
                        Tabel = "Delete from PO where no_po='" & Trim(TextBox1.Text) & "'"
                        Tampil2.CommandText = Tabel
                        Tampil2.ExecuteNonQuery()


                        Call bersih()
                        TextBox1.Focus()

                    Catch ex As Exception
                        MsgBox(ex.ToString())


                    End Try
                End If
            End If
        End If


    End Sub

    Private Sub normal() 'untuk menormalkan kondisi button'
        Tambah.Text = "Tambah"
        Ubah.Text = "Ubah"
        Hapus.Text = "Hapus"
        Keluar.Text = "Keluar"
        Tambah.Enabled = True
        Ubah.Enabled = True
        Hapus.Enabled = True
        Keluar.Enabled = True
    End Sub
    Private Sub bersih() 'untuk membersihkan objek entry data'
        TextBox1.Text = ""
        TextBox2.Text = ""
        TextBox3.Text = ""

    End Sub
    Private Sub caridata()
        Call koneksi()
        Tampil.Connection = Dtbase
        Tampil.CommandType = CommandType.Text
        Tampil.CommandText = "select * from PO where no_po='" & Trim(TextBox1.Text) & "'"
        Tampilkan = Tampil.ExecuteReader 'tampilkan=menyimpan hasil pembacaan data

        If Tampilkan.HasRows = True Then 'klw ada record(data)maka akan bertipe true
            While Tampilkan.Read() 'membaca data 1 per 1
                If IsDBNull(Tampilkan("no_po")) Then '
                    TextBox1.Focus()
                Else
                    DateTimePicker1.Value = Tampilkan("tgl")
                    ComboBox1.Text = Tampilkan("kd_pemasok")
                    TextBox2.Text = Tampilkan("total")
                    ComboBox2.Text = Tampilkan("kd_karyawan")
                    TextBox3.Text = Tampilkan("ket")

                    TextBox1.Focus()

                End If
            End While
        End If
    End Sub
    Private Sub Tambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Tambah.Click
        If Tambah.Text = "Tambah" Then 'jk button1 d klik,mka button 1 berubah jd simpan & button4 jd batal
            TextBox1.Focus()
            Tambah.Text = "Simpan"
            Ubah.Enabled = False
            Hapus.Enabled = False
            Keluar.Text = "Batal"

        Else
            Call simpandata()   'jk tdak maka call simpan data, call bersih,call normal
            Call bersih()
            Call normal()

        End If
    End Sub

    Private Sub Ubah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Ubah.Click
        If Ubah.Text = "Ubah" Then
            TextBox1.Focus() 'akan kembali pada textbox6
            Ubah.Text = "Simpan"
            Tambah.Enabled = False
            Hapus.Enabled = False
            Keluar.Text = "Batal"
        Else
            Call simpandata()   'jk tdk maka call simpan data dan call bersih
            Call bersih()

        End If
    End Sub

    Private Sub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Hapus.Click
        If Hapus.Text = "Hapus" Then
            TextBox1.Focus() 'jk button3 d klik maka akn mulcul 'simpan
            Hapus.Text = "Ok"
            Tambah.Enabled = False
            Ubah.Enabled = False
            Keluar.Text = "Batal"

        Else
            Call simpandata()
            Call bersih()

        End If
    End Sub

    Private Sub Keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Keluar.Click
        If Keluar.Text = "Batal" Then
            Call normal()
            TextBox2.Focus()
        Else
            Me.Close() 'untuk menutup form diri sendiri'
        End If
    End Sub


    Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        If e.KeyChar = Chr(13) Then
            Call caridata()

        End If
    End Sub

    Private Sub DG1_CellBeginEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles DG1.CellBeginEdit
        baris = DG1.CurrentRow.Index

        If DG1.Columns(e.ColumnIndex).Name = "Kode Barang" Then
            kolom = 1
        Else
            If DG1.Columns(e.ColumnIndex).Name = "Nama Barang" Then
                kolom = 2
            Else
                If DG1.Columns(e.ColumnIndex).Name = "Harga" Then
                    kolom = 3
                Else
                    If DG1.Columns(e.ColumnIndex).Name = "Qty" Then
                        kolom = 4
                    Else
                        kolom = 5

                    End If
                End If


            End If
        End If
    End Sub
    Private Sub DG1_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DG1.CellClick
      


    End Sub
    Private Sub simpan()
        Call koneksi()

        If kolom = 1 Then
            Tampil.Connection = Dtbase
            Tampil.CommandType = CommandType.Text
            Tampil.CommandText = "insert into detail_PO (no_po,kdbrg) values ('" & Trim(TextBox1.Text) & "', '" & Trim(data1) & "')"
            Tampil.ExecuteNonQuery()
        Else
          
            If kolom = 3 Then
                Tampil.Connection = Dtbase
                Tampil.CommandType = CommandType.Text
                Tampil.CommandText = "update detail_PO set harga='" & Trim(data3) & "'where kdbrg='" & Trim(data1) & "' and no_PO='" & Trim(TextBox1.Text) & "'"
                Tampil.ExecuteNonQuery()

                If kolom = 4 Then
                    Tampil.Connection = Dtbase
                    Tampil.CommandType = CommandType.Text
                    Tampil.CommandText = "update detail_PO set qty='" & Trim(data4) & "'where kdbrg='" & Trim(data1) & "' and no_PO='" & Trim(TextBox1.Text) & "'"
                    Tampil.ExecuteNonQuery()
                Else

                    If kolom = 5 Then
                        Tampil.Connection = Dtbase
                        Tampil.CommandType = CommandType.Text
                        Tampil.CommandText = "update detail_PO set sub_total='" & Trim(data5) & "'where kdbrg='" & Trim(data1) & "' and no_PO='" & Trim(TextBox1.Text) & "'"
                        Tampil.ExecuteNonQuery()
                    End If
                End If

            End If
        End If




    End Sub

    Private Sub DG1_CellValueChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DG1.CellValueChanged
        'untuk mengambil nilai dari cell
        If IsDBNull(DG1.Item(0, baris).Value) Then
        Else
            data1 = DG1.Item(0, baris).Value

        End If
        If IsDBNull(DG1.Item(1, baris).Value) Then
        Else
            data2 = DG1.Item(1, baris).Value
        End If
        If IsDBNull(DG1.Item(2, baris).Value) Then
        Else
            data3 = DG1.Item(2, baris).Value
        End If
        If IsDBNull(DG1.Item(3, baris).Value) Then
        Else
            data4 = DG1.Item(3, baris).Value
        End If
        If IsDBNull(DG1.Item(4, baris).Value) Then
        Else
            data5 = DG1.Item(4, baris).Value

        End If

        'Call simpan()
        ' Call pencarian()
        ' Call tampil_nopo_D()
        'Call isi_detail()




    End Sub
    Private Sub isiDG1()
        DS = New DataSet
        Tabel = "SELECT detail_PO.kdbrg as [Kode Barang], Barang.nmbrg as [Nama Barang], detail_PO.harga as [Harga], detail_PO.qty as [Qty], detail_PO.sub_total as [Sub Total] FROM detail_PO INNER JOIN  Barang ON detail_PO.kdbrg = Barang.kdbrg WHERE  detail_PO.no_PO = '" & Trim(TextBox1.Text) & "'"
        ' Tabel = "select kdbrg as [Kode Barang],nmbrg as [Nama Barang],harga as [Harga],qty as [Qty],sub_total as [Sub Total] FROM detail_PO  "

        '"SELECT Pembayaran.no_ktw, Pembayaran.npm, Pembayaran.semester FROM Pembayaran"
        Grid = New OleDb.OleDbDataAdapter(Tabel, Dtbase)
        Grid.Fill(DS, "detail_PO,Barang")

        Dim Gridview As New DataView(DS.Tables("detail_PO,Barang"))
        DG1.DataSource = Gridview
        DG1.Columns(0).Width = 150 'untuk menentukan lebar kolom
        DG1.Columns(1).Width = 150
        DG1.Columns(2).Width = 100
        DG1.Columns(3).Width = 100
        DG1.Columns(4).Width = 100


    End Sub
    Private Sub CaridataBarang()

        Call koneksi()
        Tampil2.Connection = Dtbase
        Tampil2.CommandType = CommandType.Text
        Tampil2.CommandText = "select* from Barang where kdbrg ='" & Trim(data1) & "'"
        Tampilkan = Tampil2.ExecuteReader
        If Tampilkan.HasRows = True Then
            While Tampilkan.Read()
                If IsDBNull(Tampilkan("kdbrg")) Then
                Else
                    DG1.Item(1, baris).Value = Tampilkan("nmbrg")
                End If

            End While
        Else
            MsgBox("Data tidak ditemukan", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "Tambah data")

        End If




    End Sub
  

    Private Sub DG1_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles DG1.Enter
      
    End Sub

    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        Call isiDG1()
    End Sub

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

    End Sub

    Private Sub DG1_CellEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DG1.CellEnter
        If kolom = 1 Then
            Call simpan()
            Call CaridataBarang()
            kolom = 0
        End If
        If kolom = 3 Then
            Call simpan()
            kolom = 0
        End If
        If kolom = 4 Then
            Call simpan()
            kolom = 0
        End If
        If kolom = 5 Then
            Call simpan()
            kolom = 0
        End If
    End Sub
End Class


Tidak ada komentar:

Posting Komentar