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

نسخة كاملة : اضافة سجل في datagridview1
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
(20-10-14, 10:46 AM)Abu Ehab كتب : [ -> ]السلام عليكم
الأمر سهل جدا
أنا عملت لك مثال على السريع
مع أني تركت البيسك  حاليا  ولا أستخدمها
شوف :
لنفرض مثلا عندنا داتا جريد فيوو فيها 3 أعمده  ومجموعه لا محدوده من السطور
وعايزين نجمع الأعمده في سطر منفصل في أخر سجل للجريدفيوو

أنا عملت هنا 3 أعمده
الأول للمنتج
التاني للشراء
التالث للأرباح
وجمعتهم وأظهرتهم في سجل منفصل في اخر الجريدفيوو  وكمان تم تلوين السطر بلون مختلف حتى يكون واضح لك .
وكمان رقمت لك السطور Wink





PHP كود :
Public Class Form1
    Sub CreateGrd
()
 
       With DataGridView1
            
.ColumnCount 3
            
.Columns(0).HeaderText "Product"
 
           .Columns(1).HeaderText "Cost Pice"
 
           .Columns(2).HeaderText "Profit"
 
       End With
    End Sub
    Private Sub Form1_Load
(sender As ObjectAs EventArgsHandles MyBase.Load
        CreateGrd
()

 
   End Sub

    Private Sub Button1_Click
(sender As ObjectAs EventArgsHandles Button1.Click

        Dim TotalCostPrice 
As Integer = (From rr As DataGridViewRow In DataGridView1.Rows _
                                        Select CInt
(rr.Cells(1).Value)).Sum()

 
       Dim TotalProfie As Integer = (From rr As DataGridViewRow In DataGridView1.Rows _
                                   Select CInt
(rr.Cells(2).Value)).Sum()

 
       DataGridView1.Rows.Add(New String() {"Total"TotalCostPriceTotalProfie})


 
       For Each r As DataGridViewRow In DataGridView1.Rows

            r
.HeaderCell.Value = (r.Index 1).ToString()
 
           If r.Cells(0).Value "Total" Then
                r
.DefaultCellStyle.ForeColor Color.White
                r
.DefaultCellStyle.BackColor Color.Black
            End 
If



 
       Next


    End Sub
End 
Class 

في البداية اكثر شيء افرحني بالمنتدى رد اخي ابو ايهاب بعد تجربة الكود على بيانات معروضة من قاعدة البيانات تظهر نفس رسالة الخطأ التالية (يتعذر إضافة صفوف إلى مجموعة صفوف DataGridView برمجيًا عندما يكون عنصر التحكم مرتبطًا ببيانات.)  تم تجربة الكود على مثال اخي  benomar  ولتوضيح اكثر مرفق المثال
عمرها ما حصلت أنه :
أبوأيهاب يرفع كود خـــطأ ..

طيب :
عملية جراحية سريعه على الكود

PHP كود :
Imports System.Data
Imports System
.Data.OleDb

Public Class Form1
    Dim myDA 
As OleDbDataAdapter
    Dim Ds 
As DataSet

    Private Sub Form1_Load
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        Dim con 
As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=db2.mdb")
 
       Dim Da As OleDbDataAdapter = New OleDbDataAdapter("SELECT * FROM table_user"con)



 
       Dim builder As OleDbCommandBuilder = New OleDbCommandBuilder(myDA)

 
       Ds = New DataSet()
 
       Ds.Clear()
 
       Da.Fill(Ds"MyTable")
 
       DataGridView1.ColumnCount 4
        For i 
As Integer 0 To Ds.Tables(0).Rows.Count 1
            DataGridView1
.Rows.Add(New String() {Ds.Tables(0).Rows(i).Item(0).ToString(), _
                                                 Ds
.Tables(0).Rows(i).Item(1).ToString(), _
                                                 Ds
.Tables(0).Rows(i).Item(2).ToString(), _
                                                 Ds
.Tables(0).Rows(i).Item(3).ToString()})
 
       Next
        Dim TotalCostPrice 
As Integer = (From rr As DataGridViewRow In DataGridView1.Rows _
                              Select CInt
(rr.Cells(3).Value)).Sum()


 
       DataGridView1.Rows.Add(New String() {"Total"""""TotalCostPrice})


 
       For Each r As DataGridViewRow In DataGridView1.Rows

            r
.HeaderCell.Value = (r.Index 1).ToString()
 
           If r.Cells(0).Value "Total" Then
                r
.DefaultCellStyle.ForeColor Color.White
                r
.DefaultCellStyle.BackColor Color.Black
            End 
If



 
       Next

    End Sub

    
' Save data from DataGridView into Database
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Me.Validate()
        Me.myDA.Update(Ds.Tables("MyTable"))
        Me.Ds.AcceptChanges()
    End Sub

  

End Class 
(20-10-14, 12:56 PM)Abu Ehab كتب : [ -> ]عمرها ما حصلت أنه :
أبوأيهاب يرفع كود خـــطأ ..

طيب :
عملية جراحية سريعه على الكود


PHP كود :
Imports System.Data
Imports System
.Data.OleDb

Public Class Form1
    Dim myDA 
As OleDbDataAdapter
    Dim Ds 
As DataSet

    Private Sub Form1_Load
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        Dim con 
As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=db2.mdb")
 
       Dim Da As OleDbDataAdapter = New OleDbDataAdapter("SELECT * FROM table_user"con)



 
       Dim builder As OleDbCommandBuilder = New OleDbCommandBuilder(myDA)

 
       Ds = New DataSet()
 
       Ds.Clear()
 
       Da.Fill(Ds"MyTable")
 
       DataGridView1.ColumnCount 4
        For i 
As Integer 0 To Ds.Tables(0).Rows.Count 1
            DataGridView1
.Rows.Add(New String() {Ds.Tables(0).Rows(i).Item(0).ToString(), _
                                                 Ds
.Tables(0).Rows(i).Item(1).ToString(), _
                                                 Ds
.Tables(0).Rows(i).Item(2).ToString(), _
                                                 Ds
.Tables(0).Rows(i).Item(3).ToString()})
 
       Next
        Dim TotalCostPrice 
As Integer = (From rr As DataGridViewRow In DataGridView1.Rows _
                              Select CInt
(rr.Cells(3).Value)).Sum()


 
       DataGridView1.Rows.Add(New String() {"Total"""""TotalCostPrice})


 
       For Each r As DataGridViewRow In DataGridView1.Rows

            r
.HeaderCell.Value = (r.Index 1).ToString()
 
           If r.Cells(0).Value "Total" Then
                r
.DefaultCellStyle.ForeColor Color.White
                r
.DefaultCellStyle.BackColor Color.Black
            End 
If



 
       Next

    End Sub

    
' Save data from DataGridView into Database
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Me.Validate()
        Me.myDA.Update(Ds.Tables("MyTable"))
        Me.Ds.AcceptChanges()
    End Sub

  

End Class 

احنا بنعرف ابو ايهاب وقداته في البرمجة بس الكود الاول صحيح ويعمل المجموع من غير البيانات المعروضة تكون من قاعدة البيانات والكود الثاني العرض من قاعدة بيانات في dataset ومن ثم وضعهم في مصفوفة ومن ثم استخراج المجموع على كل حال تم حل المشكلة وبارك الله فيك
اعرض نسخة من الحل للإستفادة العامة
(21-10-14, 05:29 AM)benomar كتب : [ -> ]اعرض نسخة من الحل للإستفادة العامة

تفضل
السلام عليكم
المشروع يحتاج إلى إضافة سطر - سجل جديد
ثم زر إعداد تقرير يعني تطوير المشروع .
لكي تعم الفائدة .
السادة الافاضل جميعا

عمليه التعديل لا تعمل تظهر خطا
برجاء تعديل الكود لمن اشتغل عنده الكود
شكرا
السادة الافاضل برجاء الرد
اين الردود ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
الصفحات : 1 2