تقييم الموضوع :
  • 1 أصوات - بمعدل 5
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] [طلب] كود حذف السجل الحالي+جميع السجلات
#1
Smile 
بسم الله الرحمن الرحيم

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

اخوتي احبتي اساتذتي الكرام حياكم الله وبياكم وللجنة سهل الله خطاكم 
الكتاب واضح من عنوانه  Blush
محتاج كود لحذف البسجل الحالي على ان يعمل على الحذف السجل وتحديث قاعدة البيانات مباشرة دون الحاجة الى اغلاق واعادة تشغيل البرنامج لتنفيذ الامر.
بالاضافة الى كود لحذف جميع السجلات + كود لإعادة ترقيم السجلات لان مثل ماتعرفون حضراتكم انه عند حذف سجل معين ليكن مثلا رقم 2 سيكون مكانه فارغ اي التسلسل سوف يصبح 1 3 4 5 وهكذا ولتلافي الامر نعيد ترقيم السجلات من جديد 
تفضلوا هذا المثال جزاكم الله خير 

بالأنتظار جزاكم الله خير
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو
#2
اخي الكريم اكواد الحذف يتم تنفيذها فور اجرائها  .. لكن الذي سبب لك الارباك هو كون اجراء جلب البيانات ليس مستقلا
فلقد كتبت عدة امثلة استخدمها لكن يبدو انك لم تفطن لها
مثلا اجراء gd
نكتب
PHP كود :
private sub gd()

هنا اكواد جلب البيانات وربطها
end sub 

PHP كود :
وهنا في اي حدث مثلا حدث تحميل الفورم نكتب فقط gd() 
فبعد الاضافة او الحذف او التعديل تنادي الاجراء gd() هذا هو الحل
الرد }}}
#3
(10-08-15, 01:14 AM)سعود كتب : اخي الكريم اكواد الحذف يتم تنفيذها فور اجرائها  .. لكن الذي سبب لك الارباك هو كون اجراء جلب البيانات ليس مستقلا
فلقد كتبت عدة امثلة استخدمها لكن يبدو انك لم تفطن لها
مثلا اجراء gd
نكتب
PHP كود :
private sub gd()

هنا اكواد جلب البيانات وربطها
end sub 

PHP كود :
وهنا في اي حدث مثلا حدث تحميل الفورم نكتب فقط gd() 
فبعد الاضافة او الحذف او التعديل تنادي الاجراء gd() هذا هو الحل
السلام عليكم ورحمة الله وبركاته 
تقريباً موجود مثل ماقلت دالة جلب البيانات  Blush
لكن المشكلة تم عرض البيانات عن طريق الكمبوبوكس :Smile
هل يتم الحذف من الكومبوبوكس ام من القاعدة مباشرةً
جزاكـ الله خير
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو
#4
اللي انصح بيه اخواني .. في حال التجربة والتعلم ان لا يتطرقوا لامثلة كبيرة معقدة وانما فقط اشياء صغيرة حتى يتمكن من حل كل الاشكالات التي تواجهه بعد ذلك يستطيع تضخيم مشروعه الى اكبر ما يمكن.
اطلعت على المثال المرفق (لا ادري يبدو لاني البارحة مرهق) فلم اتمكن من الاستمرار بالنظر اليه.
باذن الله اما سعود او غيره يكتب الحل ان سهل الله ويسر.
الرد }}}
تم الشكر بواسطة: مبرمج بلا حدود , ابراهيم ايبو
#5
يفترض أن لا يتم إعادة ترقيم السجلات، لأنه عند حذف سجل قديم مثلاً ... ربما يكون هناك سجلات في جداول أخرى مرتبطة بها السجل اعتماداً على رقم ID السجل، وإعادة الترقيم سيخلط السجلات، بحيث سترتبط بالسجل الخطأ.
الرد }}}
#6
(10-08-15, 12:03 PM)أبوبكر سويدان كتب : يفترض أن لا يتم إعادة ترقيم السجلات، لأنه عند حذف سجل قديم مثلاً  ... ربما يكون هناك سجلات في جداول أخرى مرتبطة بها السجل اعتماداً على رقم ID السجل، وإعادة الترقيم سيخلط السجلات، بحيث سترتبط بالسجل الخطأ.

أحسنت اخي .. بارك الله بيك .. هذا امر قليل من يفطن له.

إقتباس :لكن المشكلة تم عرض البيانات عن طريق الكمبوبوكس
لا فرق اخي الكريم فانت حين تنفذ اي اجراء فانك ستطلب الاجراء الرئيسي الذي يجلب البيانات الى الادوات ومن بينها الكومبوبوكس.
الرد }}}
#7
السلام عليكم إخواني الأعزاء ورحمة الله وبركاته
ما تفضل به الأخ أبو بكر سويدان هو عين المنطق في التعامل مع السجلات في قواعد البيانات، ولتلافي هذا الأمر يمكن إدراج حقل جديد في الجدول بعنوان Active مثلا ويكون نوع البيانات إما Boolean أو رقمي ونجعل القيمة الإفتراضيه (1) وعند حذف سجل ما يرتبط به سجلات أخرى فإنه سوف يحول القيمة من 1 إلى 0 ، ويكون ذلك من خلال استبدال جملة التنفيذية Delete بـ Update وبعد ذلك يتم استدعاء أو جلب البيانات عند الحدث Load للنموذج بإضافة شرط إلى جملة Select ويكون Where Active =1.
أما قاعدة بيانات SQL فيمكن استخدام Trigger Instead of Delete فإنها أيضا تؤدي نفس الغرض.
أما بالنسبة للكومبوبوكس فأنا مع رأي الأخ أبو بكر سويدان لأنه أعود وأكرر المنطق البرمجي الأدبيات البرمجية القواعد المبادئ سميها ما شئت يجب أن نراعيها.

للأسف لم تفتح قاعدة البيانات عندي ولكن لقد اطلعت على تصميم المشروع وتبين لي أنك قد قمت بالإعلان عن جملة متغيرات منها CurrencyManager التي لها علاقة بالتعامل مع السجلات (التنقل بين السجلات / الحذف / التعديل ...)
أنظر أخي العزيز، لو قمنا بالإعلان عن متغير Dim cm as Currencymanager ثم استخدمنا نفس المتغير لحذف البيانات فأين المشكلة في ذلك، إليك الكود التالي :
حذف السجل الحالي :
PHP كود :
cm.RemoveAt(cm.Position
حذف جميع السجلات:
PHP كود :
For as integer 0 to cm.count -1
cm
.RemoveAt(i)
next 

أما بالنسبة للتحديث فقد وجدت أيضا من جملة المتغيرات CommandBuilder من خلال هذا الكائن يمكن تحديث البيانات بعد الحذف فأين المشكلة في ذلك ؟
فعلى سبيل المثال تحديث البيانات بعد الحذف مباشرة :
PHP كود :
cm.RemoveAt(cm.Position)
cb = new OledbCommandBuilder(da)
da.Update(dt

وهكذا مع حذف جميع البيانات أيضاً.
والسلام عليكم ورحمة الله وبركاته
واعبد ربك حتى يأتيك اليقين
الرد }}}
#8
أضيف إلى ما تفضل به الأخ khodor1985 ... أنني في برامجي لا أستعمل الحذف إطلاقاً، بل أخفي السجلات، لأنه مع الخبرة ومعرفة طبيعة الزبائن ... ستندم على الحذف.

أنشيء حقل خاص بالإظهار والإخفاء، وعلى حسب طبيعة العمل المطلوب، مع إمكانية الاسترجاع.



هذه الطريقة وما تحتويه من متاعب أفضل من الحذف والمشاكل المترتبة عليه.
الرد }}}
#9
(13-08-15, 02:48 AM)khodor1985 كتب : السلام عليكم إخواني الأعزاء ورحمة الله وبركاته
ما تفضل به الأخ أبو بكر سويدان هو عين المنطق في التعامل مع السجلات في قواعد البيانات، ولتلافي هذا الأمر يمكن إدراج حقل جديد في الجدول بعنوان Active مثلا ويكون نوع البيانات إما Boolean أو رقمي ونجعل القيمة الإفتراضيه (1)  وعند حذف سجل ما يرتبط به سجلات أخرى فإنه سوف يحول القيمة من 1 إلى 0 ، ويكون ذلك من خلال استبدال جملة التنفيذية Delete  بـ Update وبعد ذلك يتم استدعاء أو جلب البيانات عند الحدث Load للنموذج  بإضافة شرط إلى جملة Select ويكون Where Active =1.
أما قاعدة بيانات SQL فيمكن استخدام Trigger Instead of Delete فإنها أيضا تؤدي نفس الغرض.
أما بالنسبة للكومبوبوكس فأنا مع رأي الأخ أبو بكر سويدان لأنه أعود وأكرر المنطق البرمجي الأدبيات البرمجية القواعد المبادئ سميها ما شئت يجب أن نراعيها.

للأسف لم تفتح قاعدة البيانات عندي ولكن لقد اطلعت على تصميم المشروع وتبين لي أنك قد قمت بالإعلان عن جملة متغيرات منها CurrencyManager التي لها علاقة بالتعامل مع السجلات (التنقل بين السجلات / الحذف / التعديل ...)
أنظر أخي العزيز، لو قمنا  بالإعلان عن متغير Dim cm as Currencymanager ثم استخدمنا نفس المتغير لحذف البيانات فأين المشكلة في ذلك، إليك الكود التالي :
حذف السجل الحالي :
PHP كود :
cm.RemoveAt(cm.Position
حذف جميع السجلات:
PHP كود :
For as integer 0 to cm.count -1
cm
.RemoveAt(i)
next 

أما بالنسبة للتحديث فقد وجدت أيضا من جملة المتغيرات CommandBuilder من خلال هذا الكائن يمكن تحديث البيانات بعد الحذف فأين المشكلة في ذلك ؟
فعلى سبيل المثال تحديث البيانات بعد الحذف مباشرة :
PHP كود :
cm.RemoveAt(cm.Position)
cb = new OledbCommandBuilder(da)
da.Update(dt

وهكذا مع حذف جميع البيانات أيضاً.
والسلام عليكم ورحمة الله وبركاته

وعليكم السلام ورحمة الله وبركاته 
جزاكـ الله خير اخي باركـ الله فيكـ 
لكن يعترض على المتغير (cb) 
وفقكـ الله

(13-08-15, 03:14 AM)أبوبكر سويدان كتب : أضيف إلى ما تفضل به الأخ khodor1985 ... أنني في برامجي لا أستعمل الحذف إطلاقاً، بل أخفي السجلات، لأنه مع الخبرة ومعرفة طبيعة الزبائن ... ستندم على الحذف.

أنشيء حقل خاص بالإظهار والإخفاء، وعلى حسب طبيعة العمل المطلوب، مع إمكانية الاسترجاع.



هذه الطريقة وما تحتويه من متاعب أفضل من الحذف والمشاكل المترتبة عليه.

السلام عليكم ورحمة الله وبركاته 
حياكـ الله خير 
جزاكـ الله خير ممكن تعلمني هذه الطريقة كيفية اخفاء البيانات واستدعائها فيما بعد وفقكـ الله
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو
#10
إقتباس :السلام عليكم ورحمة الله وبركاته 
حياكـ الله خير 
جزاكـ الله خير ممكن تعلمني هذه الطريقة كيفية اخفاء البيانات واستدعائها فيما بعد وفقكـ الله
بعد اذن الاخ .. يقصد بالاخفاء اي تضع عمود من نوع نعم/لا  باسم مثلا isshow  وعند الاستعلام تشترط ان القيمة نعم.
وعند الاخفاء تضع القيمة لا.
الرد }}}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  عدد السجلات ورقم السجل الحالى فى ال datagridview اسلام الكبابى 2 1,107 10-09-21, 07:36 PM
آخر رد: dalas
  كود السجل الاخير احمد خطاب 3 1,789 18-11-18, 12:01 AM
آخر رد: elgokr
  السلام عليكم طريقة عرض السجلات بطريقة افقية mohamedgadain61 0 2,007 16-10-18, 05:01 PM
آخر رد: mohamedgadain61
  [VB.NET] مثال +سؤال اضافة حذف عرض السجلات ahmedalans 6 3,320 10-05-17, 06:06 PM
آخر رد: ahmedalans
  [VB.NET] عرض السجلات خلال فترة زمنية محددة ahmed99 2 2,172 23-04-17, 06:13 PM
آخر رد: ahmed99
  عدد السجلات داخل ملف اكسس atefkhalf2004 7 4,781 18-02-17, 06:29 PM
آخر رد: atefkhalf2004
  الانتقال إلى السجل الثاني في قاعدة البيانات و إظهار الصورة التالية على picturebox ahmed_elwerfalli 6 4,241 24-12-16, 11:07 PM
آخر رد: ahmed_elwerfalli
  تعديل بيانات حقل في جميع السجلات aftfm 2 2,633 31-05-16, 06:32 PM
آخر رد: Sajad
  [Acces2010] نقل عدد من السجلات من نموذج لاخر gamarat 2 3,280 28-04-16, 10:43 PM
آخر رد: amgad525
  حساب عدد السجلات و الرقم المتكرر يحسب كأنه سجل واحد ahmed_elwerfalli 0 2,192 28-12-15, 06:55 PM
آخر رد: ahmed_elwerfalli

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


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