13-08-15, 03:48 PM
(آخر تعديل لهذه المشاركة : 13-08-15, 04:02 PM {2} بواسطة مبرمج بلا حدود.)
(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 i 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 ... أنني في برامجي لا أستعمل الحذف إطلاقاً، بل أخفي السجلات، لأنه مع الخبرة ومعرفة طبيعة الزبائن ... ستندم على الحذف.
أنشيء حقل خاص بالإظهار والإخفاء، وعلى حسب طبيعة العمل المطلوب، مع إمكانية الاسترجاع.
هذه الطريقة وما تحتويه من متاعب أفضل من الحذف والمشاكل المترتبة عليه.
السلام عليكم ورحمة الله وبركاته
حياكـ الله خير
جزاكـ الله خير ممكن تعلمني هذه الطريقة كيفية اخفاء البيانات واستدعائها فيما بعد وفقكـ الله

