الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمليات الحذف\إضافه\تعديل على datagridview

بدأه mac2 في 10 يونيو 2013 · 5 رد · 1,202 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم 

 

 

 

السلام عليكم 

 

قمت بعمل مشروع عبارة عن قاعدة بيانات الموظفين وقام الاخ المشرف\omani بالتعديل على هذا المشروع واعطى نتائج مبهرة , فجزاه الله خيرا كثيرا 

 

ولدي مشكلة تتعلق في عمليات الحذف والحفظ والتعديل على الاجازات من خلال الاداة datagridview ,  وقد جربت طرق عدة بهذا الخصوص , إلا أنني لم أنجح قط

 

هذا هو المشروع مرفق , وأرجوا ممن لديه الخبرة بأن يتكرم مشكورا 

 

 

 

 

وشكرا لكم

WindowsApplication1.zip

#2

السلام عليكم إخوان
جرب هذا الكود في عملية الحذف
في الزر button2

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        NumCodeSup = Int(DataGridView1(0, NumRow).Value)

        If MessageBox.Show("Voulez Vous Supprimer Cette Ligne ? ", "Titre", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
            con.Open()
            SQLcommand = con.CreateCommand
            SQLcommand.CommandText = "DELETE FROM vacation WHERE number=@1"
            SQLcommand.Parameters.AddWithValue("@1", NumCodeSup)
            SQLcommand.ExecuteNonQuery()
            SQLcommand.Dispose()
            con.Close()
            MessageBox.Show("Suppression Avec Succes !", "Titre", MessageBoxButtons.OK, MessageBoxIcon.Information)
            'datadridshow()
            Button2.Enabled = False
            datadridshow()
        End If
    End Sub

و في حدث CellMouseClick :

 

Private Sub DataGridView1_CellMouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DataGridView1.CellMouseClick
        If DataGridView1.Rows.Count > 0 And e.RowIndex >= 0 Then

            NumRow = DataGridView1.CurrentRow.Index

            Button2.Enabled = True
        End If
    End Sub

و لا تنس أخي تعريف هذه المتغيرات :

 

Dim con As New OleDbConnection
    Dim Sql As String
    Dim NumRow As Integer
    Dim NumCodeSup As String
    Dim ds As New DataSet
    Dim da As New OleDbDataAdapter
    Dim SQLcommand As New OleDbCommand

 

و السلام

#3
dragonsouf كتب:

السلام عليكم إخوان

جرب هذا الكود في عملية الحذف

في الزر button2

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        NumCodeSup = Int(DataGridView1(0, NumRow).Value)

        If MessageBox.Show("Voulez Vous Supprimer Cette Ligne ? ", "Titre", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
            con.Open()
            SQLcommand = con.CreateCommand
            SQLcommand.CommandText = "DELETE FROM vacation WHERE number=@1"
            SQLcommand.Parameters.AddWithValue("@1", NumCodeSup)
            SQLcommand.ExecuteNonQuery()
            SQLcommand.Dispose()
            con.Close()
            MessageBox.Show("Suppression Avec Succes !", "Titre", MessageBoxButtons.OK, MessageBoxIcon.Information)
            'datadridshow()
            Button2.Enabled = False
            datadridshow()
        End If
    End Sub

و في حدث CellMouseClick :

 

Private Sub DataGridView1_CellMouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DataGridView1.CellMouseClick
        If DataGridView1.Rows.Count > 0 And e.RowIndex >= 0 Then

            NumRow = DataGridView1.CurrentRow.Index

            Button2.Enabled = True
        End If
    End Sub

و لا تنس أخي تعريف هذه المتغيرات :

 

Dim con As New OleDbConnection

    Dim Sql As String

    Dim NumRow As Integer

    Dim NumCodeSup As String

    Dim ds As New DataSet

    Dim da As New OleDbDataAdapter

    Dim SQLcommand As New OleDbCommand

 

و السلام

الله يعطيك العافية اخ 

dragonsouf , هذا الكود يقوم بحذف كامل الاجازات لدى الموظف , اريد الحذف يكون على اجازة محددة فقظ 
#4

أظن أخي عليك أن تظيف رقم الإجازة في جدول الإجازات و يكون primary key في آخر الجدول مثلا NumVacation

تم تغير الكود السابق بالتالي :

 

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        NumCodeSup = Int(DataGridView1(0, NumRow).Value)
        NumCodeVacationSup = Int(DataGridView1(4, NumRow).Value)

        If MessageBox.Show("Voulez Vous Supprimer Cette Ligne ? ", "Titre", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
            con.Open()
            SQLcommand = con.CreateCommand
            SQLcommand.CommandText = "DELETE FROM vacation WHERE number=@1 AND NumVacation=@2"
            SQLcommand.Parameters.AddWithValue("@1", NumCodeSup)
            SQLcommand.Parameters.AddWithValue("@2", NumCodeVacationSup)
            SQLcommand.ExecuteNonQuery()
            SQLcommand.Dispose()
            con.Close()
            MessageBox.Show("Suppression Avec Succes !", "Titre", MessageBoxButtons.OK, MessageBoxIcon.Information)
                     Button2.Enabled = False
            datadridshow()
        End If
    End Sub

ولا تنس المتغير العام Dim NumCodeVacationSup As String

 

و السلام

#5

لقد قمت باضافة رقم الاجازة primarykey  واضفت textbox لكي تظهر فيه رقم الاجازة لأستطيع الحذف من خلالها 


 


لكن المشكلة أن رقم الاجازة لايتغير من خلال التنقل خلال datagrid


 


ارفق لك هذاالبرنامج للتوضيح 


 


وشكرا لك 


WindowsApplication1.zip

تم تعديل هذه المشاركة بواسطة mac2 في 16 يونيو 2013 في 16:48

#6

السلام عليكم إخوان
جرب هذا الكود

 

WindowsApplication.rar

مواضيع مشابهة