تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] سؤال : كود يجمع العناصر المتشابة في داتا قريد عن الاظافة بدون تكرار
#14
كود :
Imports System.Data.OleDb

Public Class F1

   Private Sub F1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
       DataGridView1.AutoGenerateColumns = False
       TextBox5.ReadOnly = True
       fill_namesGrid()
       TextBox1.Select()
   End Sub


   Dim row As DataRow
   Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
       Dim no_itm As Integer = Val(sender.Text)
       Dim myDA As New OleDbDataAdapter("SELECT * FROM [itm] WHERE [no_itm]=" & no_itm, db)
       Dim myDataTable As New DataTable()
       row = Nothing
       If myDA.Fill(myDataTable) > 0 Then
           row = myDataTable.Rows(0)
           TextBox3.Text = row("na_itm")
           TextBox2.Text = row("sell_itm")
           TextBox3.Enabled = False
           TextBox2.Enabled = False
       Else
           TextBox3.Clear()
           TextBox2.Clear()
           TextBox4.Clear()
           TextBox3.Enabled = True
           TextBox2.Enabled = True
       End If
   End Sub

   Private Sub TextBox2_TextBox4_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox2.TextChanged, TextBox4.TextChanged
       TextBox5.Text = Val(TextBox4.Text) * Val(TextBox2.Text)
   End Sub


   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

       If Not IsNumeric(TextBox1.Text) AndAlso Val(TextBox1.Text) <= 0 Then
           MsgBox("الرجاء ادخال رقم الصنف")
           TextBox1.Select()
           Exit Sub
       End If

       If TextBox3.Text.Trim = "" Then
           MsgBox("الرجاء ادخال اسم الصنف")
           TextBox3.Select()
           Exit Sub
       End If

       If Not IsNumeric(TextBox2.Text) AndAlso Val(TextBox2.Text) <= 0 Then
           MsgBox("الرجاء ادخال سعر البيع")
           TextBox2.Select()
           Exit Sub
       End If

       If Not IsNumeric(TextBox4.Text) AndAlso Val(TextBox4.Text) <= 0 Then
           MsgBox("الرجاء ادخال عدد الوحدات")
           TextBox4.Select()
           Exit Sub
       End If

       Try
           If db.State <> ConnectionState.Open Then db.Open()

           If IsNothing(row) Then

               Dim sql As String = "INSERT INTO [itm] ([no_itm], [na_itm], [sell_itm], [units_itm], [Total_itm]) VALUES(@no_itm, @na_itm, @sell_itm, @units_itm, @Total_itm)"
               Dim sw As New OleDbCommand(sql, db)
               sw.Parameters.AddWithValue("@no_itm", TextBox1.Text)
               sw.Parameters.AddWithValue("@na_itm", TextBox3.Text)
               sw.Parameters.AddWithValue("@sell_itm", TextBox2.Text)
               sw.Parameters.AddWithValue("@units_itm", TextBox4.Text)
               sw.Parameters.AddWithValue("@Total_itm", TextBox5.Text)
               sw.ExecuteNonQuery()

           Else
               Dim sql As String = "UPDATE [itm] SET [units_itm] = [units_itm] + @units_itm, [Total_itm] = @Total_itm WHERE [no_itm]=@no_itm"
               Dim sw As New OleDbCommand(sql, db)
               sw.Parameters.AddWithValue("@units_itm", TextBox4.Text)
               sw.Parameters.AddWithValue("@Total_itm", row("Total_itm") + TextBox5.Text)
               sw.Parameters.AddWithValue("@no_itm", TextBox1.Text)
               sw.ExecuteNonQuery()
           End If

           TextBox1.Clear()
           TextBox3.Clear()
           TextBox2.Clear()
           TextBox4.Clear()
           TextBox1.Select()

           fill_namesGrid()

           MsgBox("تم تسجيل بيانات الصنف")

       Catch
           MsgBox("عذراً... هناك خطأ ما ")
       Finally
           db.Close()
       End Try

   End Sub

   Sub fill_namesGrid()
       Dim myDA As New OleDbDataAdapter("SELECT * FROM [itm]", db)
       Dim myDataTable As New DataTable()
       myDA.Fill(myDataTable)
       DataGridView1.AutoGenerateColumns = False
       DataGridView1.DataSource = myDataTable
   End Sub

End Class
الرد }}}
تم الشكر بواسطة: EYADISMAIL


الردود في هذا الموضوع
RE: سؤال : كود يجمع العناصر المتشابة في داتا قريد عن الاظافة بدون تكرار - بواسطة 911 - 10-09-18, 03:25 AM


التنقل السريع :


يقوم بقرائة الموضوع: