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

نسخة كاملة : تعديل على مشروع داتا قريد
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2 3
[attachment=9612]

لسـلام عليكم ورحمة الله وبركاته 
أتمنى مسـاعدتي في مشـروعي الصغير أرفقت قاعدة البيانات من نوع سكيـول سيرفر وأيضاً المشـروع 

قاعدة البيانات عبـاره عن / أسم- العمر - التحقق 
الداتا تايب / nverchar- nverchar-bit

الفكره وهي كالتالي: 
في عمود التحقق  الذي يحمل الخاصيه bit إذا كان ترو يتم تضليل الصف وإذا كانت عادي يصير الصف بدون تضليل 
وتحفظ في قاعدة البيانات وأيضاً لا أريد المستخدم أن يعبث في البيانات الموجوده في الداتا قريد فيو توقيف التعديل فيها 
ياجماعه ماعم يصير 43 مشاهده بدون رد 
موقف شغلي والله
السلام عليكم ورحمة الله وبركاتة
اخي ده كود يمكن تنفيذة عقب تعبئة الجريد
PHP كود :
For As Integer 0 To DataGridView1.Rows.Count 1
            
If DataGridView1(2i).Value True Then
                DataGridView1
.Rows(i).DefaultCellStyle.BackColor Color.Aqua
                DataGridView1
.Rows(i).ReadOnly True
            
Else
                
DataGridView1.Rows(i).DefaultCellStyle.BackColor Color.White
                DataGridView1
.Rows(i).ReadOnly False
            End 
If
        
Next 
غير رقم العمود اللي به الحقل
أشكرك على ردك ولكن التشك بكس هو عمود يعني أبغا أضع التشك في عمود اللي يحمل داتا تايب int
الكود ده DataGridView1(2, i).Value = True
غير رقم 2 إلى رقم العمود في الجريد وخلي بالك الترقيم للأعمد يبدأ بالـــ 0
غير Vaule للقيمة اللي عاوز تقارن يها
[attachment=9618][attachment=9618]


عندي كودين كود لما يضغط على الزر بعد التحديد يحفظ 
وكود لما يتحمل الفورم ينزل نفس المتحددين
كود :
 For i = 0 To DATAG.Rows.Count - 1
           With DATAG.Rows(i)
               Dim MyCheck As String = .Cells(6).Value.ToString
               If MyCheck = "True" Then
                   .Cells(0).ReadOnly = True
                   '.Cellds(1).ReadOnly = True
                   .Cells(2).ReadOnly = True
                   .Cells(3).ReadOnly = True
                   .Cells(4).ReadOnly = True
                   .Cells(5).ReadOnly = True
                   .Cells(6).ReadOnly = True
                   .DefaultCellStyle.BackColor = Color.LightGray

               Else
                   .Cells(0).ReadOnly = False
                   .Cells(1).ReadOnly = False
                   .Cells(2).ReadOnly = False
                   .Cells(3).ReadOnly = False
                   .Cells(4).ReadOnly = False
                   .Cells(5).ReadOnly = False
                   .Cells(6).ReadOnly = False
                   .DefaultCellStyle.BackColor = Nothing
               End If
           End With
       Next
يا جماعه وضعت هذا الكود لما أضع علامة تشك في السطر اللي أحتاجه يظلل تمام 
بس باقي علي كود الحفظ في قاعدة البيانات اللي تم التأشير عليها يحفظها في القاعده 
وعند التحميل مره أخرى يبقى الشكل مثل ماهو ...
لو سمحتم لم يتبقى في مشـروعي إلا هاذي
[attachment=9633 كتب :adel27 pid='71484' dateline='1456822710']
كود :
 For i = 0 To DATAG.Rows.Count - 1
           With DATAG.Rows(i)
               Dim MyCheck As String = .Cells(6).Value.ToString
               If MyCheck = "True" Then
                   .Cells(0).ReadOnly = True
                   '.Cellds(1).ReadOnly = True
         
                   .DefaultCellStyle.BackColor = Color.LightGray

               Else
                   .Cells(0).ReadOnly = False
                   .Cells(1).ReadOnly = False
                          .DefaultCellStyle.BackColor = Nothing
               End If
           End With
       Next
ضروري يا أخوان تســـاعدوني الله لا يحرمكم الأجر
لكي تتحصل على المطلوب
اولا : يجب عليك التحقق من وجود السجل في قاعدة البيانات
ثانيا : اذا كان السجل موجود سيتم تعديل الحقول

الآن ضع هذه الدالة المسئولة عن التحقق من وجود السجل في قاعدة البيانات في اي مكان خارج اي حدث

PHP كود :
   'التأكد من وجود السجل في قاعدة البيانات
    Public Function CheckData(ByVal id As Integer)


        Dim cm As New SqlCommand("Select id from hala where id=@id", com)
        cm.Parameters.AddWithValue("@id", id)

        com.Open()
        Dim dr As SqlDataReader = cm.ExecuteReader()
        If dr.HasRows = True Then '
اذا كان السجل موجود يرجع 1
            b 
1
            com
.Close()
 
           Return b
        Else
            b 
0
            com
.Close()
 
           Return b
        End 
If

 
   End Function 

كود الحفظ سيكون كالتالي

PHP كود :
   Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click
        For i 
As Integer 0 To DataGridView1.Rows.Count 2
            If CheckData
(CInt(DataGridView1.Rows(i).Cells(0).Value)) = 1 Then
                Dim cm 
As New SqlCommand("Update hala set CName=@cn,chk=@vd where id=@id"com)
 
               cm.Parameters.AddWithValue("@id"CInt(DataGridView1.Rows(i).Cells(0).Value.ToString()))
 
               cm.Parameters.AddWithValue("@cn"DataGridView1.Rows(i).Cells(1).Value.ToString())
 
               cm.Parameters.AddWithValue("@vd"CBool(DataGridView1.Rows(i).Cells(2).Value))
 
               com.Open()
 
               cm.ExecuteNonQuery()
 
               com.Close()

 
           End If
 
       Next
        MsgBox
("تم التعديل")
 
       Form1_Load(sendere)

 
   End Sub 

غير مايلزم في الاكواد ليتوافق مع ماتريده
بالتوفيق اخي الكريم
الصفحات : 1 2 3