تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
جزئية بسيطة في الداتاسيت اريد ان اعرف كيف تتعاملون معها
#1
السلام عليكم وتقبل الله صيامكم وقبامكم

لفت انتباهي جزئية حيرتني في التعامل معها
عندما يقوم المستخدم بالتغيير في البيانات بالوضع المنفصل تتغير ولكن لا يتم حفظها حتى ينقر زر حفظ
اليكم الصورة
المستخدم يتصفح بيانات السجلات للموظفين تم ينقر زر تعديل فتفتح نافذة للتعديل
قام بتغيير بعض البيانات ولكن لم يحفظها لسبب تراجعه مثلا
الان اقفل نموذج التعديل والبيانات متغيرة
اذا دخل على تعديل بيانات سجل اخر وقام بالحفظ  سيتم حفظ حتى البيانات السابقة التي لا يريد تغييرها
هل يجب عمل
RejectChange
كلما خرج من النموذج حتى ولو قام بالنقر على زر الحفظ احتياطيا ام هناك طريقة افضل
الرد }}}
تم الشكر بواسطة:
#2
وعليكم السلام...
-حسب فهمي أعتقد أنك تريد تغير البيانات لكل سجل مستقل كمثلا هيتم تعديل ولم يتم الضغط علي "تعديل" فالبيانات لمم تتغير, أما لو "عدلت" علي سجل أخر بيعدل السجل دا والسابق.

الحل: أن تضع عمود"id" من نوع ترقيم تلقائي وتعدل كل سجل حسب رقمه.
المبرمج لا يفكر في المشكلة بل في الحل!!
الرد }}}
#3
(16-05-20, 01:06 AM)ابو محمد محمد محمد كتب : هل يجب عمل
RejectChange
كلما خرج من النموذج حتى ولو قام بالنقر على زر الحفظ احتياطيا ام هناك طريقة افضل

نعم ربما من الأفضل تجديد الداتاست او الداتا تيبل

أو كما ذكر أخي أسامة -- قم بحفظ التعديل على صف معين وليس كل الصفوف

الرد }}}
#4
أخي العزيز تفضل هذا المثال به عمليه (الحفظ, التعديل, الحذف, البحث).
لو في أي غموض أو لبس راسلني علي الرسائل.
أو واتس: +201115740074 وانا بالأمر لأي توضيح.

تفضل:


الملفات المرفقة
.rar   المستوصف.rar (الحجم : 813.88 ك ب / التحميلات : 13)
المبرمج لا يفكر في المشكلة بل في الحل!!
الرد }}}
#5
من الواضح أنك تتعامل مع النسخة الأصل للـ DataSet
وإذا أردت أن تعدل على سجل فإنك تتعامل مع نفس الـ DataSet

إذا قمت بعمل DataSet.RejectChanges فهذا يعني إلغاء كل التغييرات على كامل الـ DataSet حتى السجلات السابقة سيتم إلغاء التغييرات التي تمت عليها. وليس هذا الجدول فقط , بل سيتم إغاء كل التغييرات على جميع الجداول الموجودة في هذة الـ DataSet
حتى لو قمت بإستخدام DataTable.RejectChanges على الجدول سيتم إغاء كل التغييرات على جميع السجلات الموجودة في هذة الجدول.
أنت تحتاج إلى DataRow.RejectChanges هذا الآخير سيقوم بإلغاء التغييرات فقط على مستوى السجل فقط.


الأفضل أنه عند فتح نافذة التعديل تأخذ نسخة من السجل والأفضل من ذلك جلبة مرة أخرى من قاعدة البيانات في ( جدول جديد أو في داتا ست جديدة ) فقط مخصوص لهذا السجل 
إذا تم التعديل وتم الحفظ بنجاح تقوم بإعادة جلب السجل للنافذة الأم التي كانت تعرض السجل سابقاً لتحديث بياناته ( أو مباشرتاً من نافذة التعديل قم بإرجاع السجل للنافذة الأم لتحديث بياناتة على الشاشة ) ولا تنسى عمل ( DataRow.AcceptChanges ) فقط للسجل الأصل في النافذة الأم أو الداتا ست الأصل
وإذا لم يتم التعديل لأي سبب كان ( بكل بساطة أغلق النافذة ) لأن التعديلات تمت على سجل منسوخ من الأصل أو تم جلبة من قاعدة البيانات وليس السجل الموجود في النافذة الأم أو الداتاست الأصل التي تعمل عليها )
الرد }}}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  اريد طباعة الباركود المحدد فقط مع الكمية new_programer 5 432 09-01-24, 08:40 PM
آخر رد: new_programer
  اريد مساعدة في العملية الحسابية melad2002 3 406 29-12-23, 09:10 PM
آخر رد: melad2002
  [كود] اريد كود إرسال البيانات من الفيجوال بيسك إلىPDF issamsaidd 10 5,829 25-12-23, 06:30 PM
آخر رد: الحزين اليماني
  [VB.NET] اريد تعديل في الكود عند طباعة DGV abu_hisham7 1 431 03-12-23, 02:40 AM
آخر رد: abu_hisham7
  [سؤال] اريد تغيير اسم حقل ضمن جدول بقاعدة بيانات اكسس mh66 1 360 08-11-23, 08:16 AM
آخر رد: justforit
  كيف اجعل البرنامج في بداية الشهر ينفذ حدث معين بالاصح اريد البرنامج في تاريخ واحد من Adel27213 3 484 05-11-23, 01:45 AM
آخر رد: justforit
Star [كود] اريد تزويد 45 دقيقة على DateTimePicker1 كل ضغطة Button Ameenh 1 348 01-09-23, 07:13 AM
آخر رد: Asem2
Star [كود] اريد تزويد 45 دقيقة على DateTimePicker1 كل ضغطة Button Ameenh 0 280 01-09-23, 05:56 AM
آخر رد: Ameenh
  اريد اضافة متغيراخر داخل Listbox1 احتاج تعديل بسيط moh61 0 350 05-08-23, 02:29 PM
آخر رد: moh61
  اريد ارسال pdf عبر واتساب عن طريق ال API محتاج تعديل على الكود moh61 0 518 03-08-23, 03:41 PM
آخر رد: moh61

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم