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

مشكلة في التعديل

بدأه assdd في 2 يوليو 2011 · 6 رد · 485 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

لدي برنامج مكون من جدولين جدول البرامج و جدول الموظفين (emplooy ،prog)

وعملت فورم لإدراج البيانات مكون من كمبو بوكس ،وتكست بوكس،وداتا قريد

وأزرار جديد:لتفريغ الحقول، حفظ: لإدراج البيانات في القاعدة، تعديل:لحفظ أي تعديل على البيانات في القاعدة ،حذف : لحذف البيانات من القاعدة

واجهتني عدة مشاكل وتم تجريب عدة حلول لكن لم أصل إلى نتيجة مُرضية لأنه كلما حُلت مشكلة ظهرت أخرى.

بعض من المشاكل التي واجهتني:يتم التعديل ما عدا عند التعديل على الداتاقريد بإضافة مكلف ثاني جديد أو حذف أحد المكلفين لا يتم ذلك وأنما يكرر السجل

ألغيت زر التعديل وجعلت زر الحفظ للإدراج والتعديل معاً لكن لم ينفع ذلك عملت ترانزاكشن (لإدراج موظف جديد في جدول الموظفين ويدرج بيانات البرنامج الخاص به في جدول البرامج) بحيث يتنفذ الترانزاكشن عندما يكون الموظف جديد وكذلك لم أصل إلى نتيجة.

فآمل مساعدتي بالأكواد الصحيحة للحفظ والتعديل بناء على برنامجي

الملف على الرابط التالي:

http://filaty.com/f/1107/54509/PI.zip.html

وشكراً

#2

السلام عليكم ورحمه الله وبركاته

اخي ارجو منك حصر مشكلتك لأن بصراحه كودك يحتاج تحسين كثييييير!!

.:: Wish to become better and better ::.

#3

السلام عليكم ورحمة الله وبركاته

أخي

مشكلتي بإختصار في كود الحفظ والتعديل

أريد كود جديد للحفظ والتعديل (سواء في زر واحد أو كل كود في زر مستقل) يتناسب مع برنامجي ولا يظهر أي مشاكل

لأن الأكواد التي جربتها تحل مشكلة وتظهر مشكلة أخرى

وموعد تسليم المشروع أزف وأنا لم أجد حل

وشكراً

#4

السلام عليكم ورحمه الله وبركاته

اخي ممكن توضح اين الخطأ؟ او قم بكتابة رسالة الخطأ ..

.:: Wish to become better and better ::.

#5

السلم عليكم ورحمة الله وبركاته

أستاذي

عند التعديل على البيانات يقبل التعديل على جميع البيانات لكن المشكلة أنه في حال التعديل على الموظفين في نفس البرنامج لا يقبل أن يضيف موظف ثاني أو يحذف أحد الموظفين الموجودين في الداتا قريد

هل وضحت الفكرة؟

#6

أستاذي

pec1.JPG

كما ترى بالصورة

عند التعديل باستخدام الكود التالي :

Private Sub Button1_Click_3(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            con.Open()
              com_update.Parameters("e7tiajat").Value = TextBox_ahtyajat.Text
                com_update.Parameters("from_dateg_d").Value = ComboBox_d_d_from.SelectedItem
                com_update.Parameters("from_dateg_m").Value = ComboBox_d_m_from.SelectedItem
                com_update.Parameters("from_dateg_y").Value = ComboBox_y_from.SelectedItem
                com_update.Parameters("from_datehej_d").Value = ComboBox_h_d_from.SelectedItem
                com_update.Parameters("from_datehej_m").Value = ComboBox_h_m_from.SelectedItem
                com_update.Parameters("from_datehej_y").Value = ComboBox_h_y_from.SelectedItem
                com_update.Parameters("note").Value = TextBox_molahdat.Text

                com_update.Parameters("pro_name").Value = ComboBox_prp.Text
                com_update.Parameters("to_dateg_d").Value = ComboBox_d_d_to.SelectedItem
                com_update.Parameters("to_dateg_m").Value = ComboBox_d_m_to.SelectedItem
                com_update.Parameters("to_dateg_y").Value = ComboBox_d_y_to.SelectedItem
                com_update.Parameters("to_datehej_d").Value = ComboBox_h_d_to.SelectedItem
                com_update.Parameters("to_datehej_m").Value = ComboBox_h_m_to.SelectedItem
                com_update.Parameters("to_datehej_y").Value = ComboBox_h_y_to.SelectedItem
                com_update.Parameters("vinerycat").Value = TextBox_vi.Text


                If RadioButton_nofed.Checked = True Then
                    com_update.Parameters("execution").Value = "نفذ"
                Else
                    com_update.Parameters("execution").Value = "لم ينفذ"
                End If

                Dim i As Integer

                'كود لعمل الادراج حذف تعديل على عموةد معين في داتا قريد
                Dim dgcount As Integer = DataGrid1.BindingContext(DataGrid1.DataSource, DataGrid1.DataMember).Count
                ' Dim i As Integer
                For i = 0 To dgcount - 1


                    com_update.Parameters("Original_emp_id").Value = DataGrid1.Item(i, 0)
                    com_update.Parameters("Original_ID").Value = DataGrid1.Item(i, 0)
                    com_update.Parameters("emp_name1").Value = DataGrid1.Item(i, 1)
                    com_update.Parameters("emp_name2").Value = DataGrid1.Item(i, 2)
                    com_update.Parameters("emp_name3").Value = DataGrid1.Item(i, 3)
                    com_update.Parameters("emp_name4").Value = DataGrid1.Item(i, 4)



                    com_update.ExecuteNonQuery()
                Next
Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
        con.Close()
    End Sub
End Class

يحدث ما يلي :

تظهر رسالة الخطأ التالية:

eror1.JPG

ويتم التعديل ما عدا :

- التنفيذ (رقم6) لا يقبل التعديل على الريديو بوتن نهائياً

- يعدل فقط على بيانات البرنامج المرتبط بالسجل الذي عليه المؤشر في الداتا قريد(رقم2) وعند الانتقال بالمؤشر إلى السجل الأخر نجد التكست بوكس فارغ و لم يجري أي تعديل على الكمبوبوكس

- ولا يقبل التعديل بإضافة مكلف ثاني(رقم4) أو حذف مكلف (رقم3)

- عند وضع المؤشر في عمود الرقم في الداتاقريد تمسح البيانات الموجودة في التكست بوكس فقط

آمل أن تكون الفكرة واضحة

#7

السلام عليكم ورحمه الله وبركاته

اخي المشكلة انك ادخلت قيمة مكررة, تأكد من عدم تكرار قيمة المفتاح الاساسي؟

.:: Wish to become better and better ::.

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