منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : مساعدة في داتا جريد فيو
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
اخي الحبيب
الكود الذي استخدمته هو

كود :
Try
           Dim cmd As New OleDbCommand
           cmd.Connection = con

           con.Open()
           Dim HH As String = txtFFtottal.Text
           For i As Integer = 0 To DataGridView2.Rows.Count - 1
               If i > DataGridView1.Rows.Count - 1 Then Exit For
               cmd.CommandText = "insert into Transactiooon (FatoraOutID,TRProdName,TRPRodPrice,QtyOut,FtTotal,PounceTOT,PriceTOT)values(@a1,@a2,@a3,@a4,@a5,@a6,@a7)"


               cmd.Parameters.AddWithValue("@a1", CDbl(DataGridView2.Rows(i).Cells(5).Value))
               cmd.Parameters.AddWithValue("@a2", DataGridView2.Rows(i).Cells(1).Value).ToString()
               cmd.Parameters.AddWithValue("@a3", CDbl(DataGridView2.Rows(i).Cells(2).Value))
               cmd.Parameters.AddWithValue("@a4", CDbl(DataGridView2.Rows(i).Cells(3).Value))
               cmd.Parameters.AddWithValue("@a5", CDbl(DataGridView2.Rows(i).Cells(4).Value))
               cmd.Parameters.AddWithValue("@a6", CDbl(txtFFDesc.Text))
               cmd.Parameters.AddWithValue("@a7", CDbl(txtFFtottal.Text))


               cmd.ExecuteNonQuery()

               i += 1
           Next i
           MessageBox.Show("Done other data")
           cmd.Dispose()
       Catch ex As Exception
           MessageBox.Show(ex.Message)
       Finally
           con.Close()

       End Try


تمام وبيحفظ في قاعدة البيانات لكن بيحفظ اول صف في الداتا جريد فيو فقط
يعني لو ادخلت 3 صفوف بيحفظ الاول فقط
غريبة اخي ،، عالعموم انا عملت مثال وجربته بنفسي وهو شغال تمام .

استبدل مسميات الادوات باسماء ادواتك مثل التكست بوكس وغيرها ولكن صيغة الكود لا تعدل فيه شي .

كود :
cn.Open()

       Try

           For I As Integer = 0 To DataGridView1.Rows.Count - 2

               Dim cmd As New OleDbCommand("INSERT INTO tpl1 (a1,a2,a3) VALUES (@a1,@a2,@a3)", cn)

               cmd.Parameters.AddWithValue("@a1", DataGridView1.Rows(I).Cells(0).Value)
               cmd.Parameters.AddWithValue("@a2", DataGridView1.Rows(I).Cells(1).Value)
               cmd.Parameters.AddWithValue("@a3", DataGridView1.Rows(I).Cells(2).Value)

               cmd.ExecuteNonQuery()
               cmd.Dispose()

           Next

       Catch ex As Exception
           MessageBox.Show(ex.Message)
       Finally
           cn.Close()

       End Try
أخي حريف برمجة
متشكر جدا علي تواصلك ومتأسف  لتأخر الرد لظروف سفر طارئة
أخي قمت بتطبيق الكود وهو يعمل بارك الله فيك
لكن هناك نقطة تقنية ( ليست بالكود ) لكن في طريقة العمل نفسها
عند الضغط علي مفتاح حفظ فأنه يقوم بحفظ رأس الفاتورة والأصناف في جدولين مختلفين
المفترض ان يحفظ رأس الفاتورة في سطر واحد من قاعدة البيانات و الاصناف علي حسب العدد الموجود
لكن في برنامجي الوضع مختلف فهو يحفظ بنفس العدد في الجدولين
مثلا لو قمت بأضافة 4 اصناف فأنه يقوم بحفظهم في قاعدة البيانات بشكل صحبح لكن المشكلة أنه يقوم بحفظ رأس الفاتورة 4 مرات ايضا كأنها 4 فواتير
مرفق مثال للتوضيح
الصفحات : 1 2