none
Selam. Satış Programında Barkod Okutulduğu Zaman Satıl Yapıldığında Adet Stoktan Nasıl Düşer? Kodlarım Bu RRS feed

  • Soru

  •  Dim con As SqlConnection = New SqlConnection("Data Source=DESKTOP-MA56756\SQLEXPRESS;Initial Catalog=sistemos;Integrated Security=True;")
            Dim com As SqlCommand = New SqlCommand("INSERT INTO satis(Barkod, UrunAdi,Fiyat,Miktar,Toplam,Komisyon,TopKomisyon,Personel,Tarih) VALUES (@Barkod, @UrunAdi, @Fiyat,@Miktar,@Toplam,@Komisyon,@TopKomisyon,@Personel,@Tarih)", con)
            Dim ds As DataSet = New DataSet()
            For Each dgRow As DataGridViewRow In DataGridView2.Rows
                If Not dgRow.IsNewRow Then
                    con.Open()
                    com.Parameters.AddWithValue("@Barkod", dgRow.Cells(0).Value.ToString)
                    com.Parameters.AddWithValue("@UrunAdi", Convert.ToString(dgRow.Cells(1).Value))
                    com.Parameters.AddWithValue("@Fiyat", Convert.ToDecimal(dgRow.Cells(2).Value))
                    com.Parameters.AddWithValue("@Miktar", Convert.ToDecimal(dgRow.Cells(3).Value))
                    Dim toplam As Decimal = Convert.ToDecimal(dgRow.Cells(4).Value)
                    Dim topkomisyon As Decimal = (toplam * (NumericUpDown1.Value / 100))
                    com.Parameters.AddWithValue("@Toplam", toplam)
                    com.Parameters.AddWithValue("@Komisyon", NumericUpDown1.Value)
                    com.Parameters.AddWithValue("@TopKomisyon", topkomisyon)
                    com.Parameters.AddWithValue("@Personel", ComboBox1.Text)
                    com.Parameters.AddWithValue("@Tarih", DateTimePicker1.Value)
                    com.ExecuteNonQuery()
                    com.Parameters.Clear()
                    con.Close()

                End If
                DataGridView2.Rows.Clear()
                TextBox4.Text = ("")
                TextBox2.Text = ("")
                TextBox3.Text = ("")
                TextBox5.Text = ("")
                TextBox6.Text = ("")
                TextBox7.Text = ("")

                MessageBox.Show("Satış Başarılı")
            Next
    16 Mart 2018 Cuma 21:04

Tüm Yanıtlar

  • satış tablonuz da sadece miktar alanı var girencikan adinda yeni bir alan daha ekler girişlerde true çıkışlarda false değer verirsiniz

    bu değerlere göre giren çıkan ayırt edilebilir

    17 Mart 2018 Cumartesi 07:52
  • Hocam Örnek Bi kod Paylaşsanız  vb ye Yabancıyım Öğrenmeye Çalışıyorum. 
    17 Mart 2018 Cumartesi 08:05
  • örnek kod eklemenin bir anlamı yok bence

    satış tablonuza  girencikan adinda yeni bir alan ekleyeceksiniz satış yaptığınızda bu alana true ekleyeceksiniz

    stok girişinde ise bu alanı false olarak gireceksiniz hepsi bu kadar 

    yukarıdaki kodlarınıza da bu alanı com.Parameters.AddWithValue("@girencikan", true)

    giren stok sql

    select * from satışlar where girencikan= false yada true ile de stokun girdiğini yada çıktığını bulabilirsiniz

    17 Mart 2018 Cumartesi 11:14
  •  Private Sub Button20_Click(sender As System.Object, e As System.EventArgs) Handles Button20.Click
            Dim dTable As DataTable = New DataTable()
            Dim conn As SqlConnection = New SqlConnection("Data Source=DESKTOP-MA56756\SQLEXPRESS;Initial Catalog=sistemos;Integrated Security=True;")
            Dim dAdapter As SqlDataAdapter = New SqlDataAdapter("SELECT * FROM stok WHERE barkodNo=@barkodNo", conn)
            dAdapter.SelectCommand.Parameters.AddWithValue("BarkodNo", TextBox1.Text)
            dAdapter.Fill(dTable)

            If (dTable.Rows.Count > 0) Then

            End If
            Dim satirNo As Integer = -1
            Dim miktar As Integer = 1
            Dim birimFiyat As Decimal = 0
            If (Not (dTable.Rows(0)("SatisFiyati")) Is Nothing) Then
                birimFiyat = Convert.ToDecimal(dTable.Rows(0)("SatisFiyati"))
            End If

            For Each dRow As DataGridViewRow In DataGridView2.Rows
                If Not dRow.IsNewRow Then
                    If dRow.Cells(0).Value.ToString() = TextBox1.Text Then
                        miktar = (Convert.ToInt32(dRow.Cells(3).Value) + 1)
                        satirNo = dRow.Cells(0).RowIndex
                    End If
                End If
            Next
            If (satirNo < 0) Then
                DataGridView2.Rows.Add(dTable.Rows(0)("BarkodNo"), dTable.Rows(0)("UrunAdi"), dTable.Rows(0)("SatisFiyati"), miktar, (miktar * birimFiyat))
            Else
                DataGridView2.Rows(satirNo).Cells(3).Value = miktar
                DataGridView2.Rows(satirNo).Cells(4).Value = (miktar * birimFiyat)
                TextBox4.Text = miktar * birimFiyat
            End If
            TextBox1.Text = ""
            TextBox1.Focus()
            Dim Toplam As Double = 0
            Dim Sat1r As Integer = DataGridView2.Rows.Count
            Dim i As Integer = 0
            Do While (i _
                        < (Sat1r - 1))
                Toplam = (Toplam + Convert.ToDouble(DataGridView2(4, i).Value.ToString))
                i = (i + 1)
            Loop

            TextBox4.Text = Toplam.ToString
            TextBox6.Text = birimFiyat
            TextBox5.Text = miktar
            TextBox7.Text = Toplam


        End Sub
    17 Mart 2018 Cumartesi 15:43
  • Hocam Barkod Taramam Bu Şekilde? Burayamı Eklemem Gerekiyor Satış Yap Butonuna Eklediğimde Olmadı.
    17 Mart 2018 Cumartesi 15:44