منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : حل مشكلة الترقيم التلقائي بعد حذف سجل معين
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم و رحمة الله و بركاته
بعد اجتهاد دام سويعات توصلت الى حل لمشكلة الترقيم التلقائي , ارجو ان تكون عونا لغيري و تحل مشكلة مؤرقة
الفكرة عبارة عن عمل بحث للأرقام  بدءا من ال 1 حتى عدد معين (اخترت العدد 100 كحد اعلى لان الغرض تعليمي و من  السهل تغييره) باستخدام For – Next  فيبتدئ البحث و يتوقف عند اول رقم غير موجود (الترتيب تصاعدي) باستخدام دالة If التي تختبر وجود كل قيمة , فعندما لا يتحقق شرط الدالة If يتم البحث عن الرقم التالي مباشرة (الشرط الا تكون هنالك نتائج للبحث) عندما يتحقق الشرط بعدم وجود نتائج مطابقة للرقم الذي يتم البحث عنه ينفذ الامر Exit For مع الاحتفاظ بقيمة الرقم الذي حقق الشرط ( الرقم الذي لا يوجد في عمود الترقيم التلقائي) 

الان و بعد ان وجدنا الرقم (المحذوف/التالي) سندرجه في سجل جديد في DGV ويتم ضغط زر الحفظ مباشرة ليتم ادراج الرقم الجديد في ال DB 
الكود موضوع في زر الاضافة

المرفقات
المشروع+قاعدة البيانات+مستند نصي للشرح
http://www.mediafire.com/file/ds3yg4d5b8...rement.rar
فيديو مباشر  العمل ع المشروع و يشرح الموضوع
http://youtu.be/wiL28bszPHE
سؤال يا أخ محمد

لماذا لا تقرأ جميع السجلات من ملف الداتا بيز و نخفظهم في داتا ست مثلا بشرط أن لا تقرأ الترقيم التلقائي
ثم نحذف جميع السجلات من الملف
ثم نقوم بإعادة إدخال البيانات مررة ثانية الي الملف و التي تم قرائتها مسبقا باستخدام الداتا ست
لم استطع تحميل المرفق!
لما لا ترفعه بمرفقات المنتدى؟!

ما رايك بالاطلاع على الموضوع التالي:
http://vb4arb.com/vb/showthread.php?tid=21616
(21-09-17, 11:06 AM)silverlight كتب : [ -> ]سؤال يا أخ محمد

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

(21-09-17, 12:30 PM)سعود كتب : [ -> ]لم استطع تحميل المرفق!
لما لا ترفعه بمرفقات المنتدى؟!

ما رايك بالاطلاع على الموضوع التالي:
http://vb4arb.com/vb/showthread.php?tid=21616

لم استطع رفعة في المنتدى لان حجمه اكبر من المسموح،  لذا رفعته في حسابي ع الميديا فاير
اتبع الرابط ثانية
http://www.mediafire.com/file/ds3yg4d5b8...rement.rar
اشكرك على اجتهادك ... ولكن عن تجربة شخصية ... اقول رايي المتواضع ...
بعد كل عملية حذف لاي سجل فانني اقوم مباشرة بحذف عمود الترقيم التلقاءي من جدول البيانات ... ثم اعادة انشاءه مرة اخرى كعمود ترقيم تلقاءي
السلام عليكم
ملاحظة : هذا الكلام لا يجوز منطقيا استخدامه في حالة وجود علاقات بين الجداول .
لانه سوف يؤثر على كل العمليات الخاصة التى تقع على قائمة السجلات المرافقة في الجدول الفرعي .
حقل التسلسل أو المرقم تلقائيا له أهمية في قاعدة البيانات اذا لم تعرفها او لم تصمم قاعدة البيانات اساسا للاستفادة منها
فيمكنك تجاهله واضافة حقل خاص تكون انت المتحكم في تسلسله بالكود
يمكنك اخفاء العمود المتسلسل تلقائيا ومنعه من الظهور في برنامجك وتركه للعمليات الخاصة بقاعدة البيانات فقط
والاكتفاء بعرض الرقم المسلسل يدويا
السلام عليكم ورحمة الله وبركاته 

طبعا اقف مع الكثير   "ضد تعديل او حذف الترقيم التلقائي"

واذا كان المطلوب هو الترقيم التلقئي لمخرجات الاستعلام فقط   يمكن استخدام الطود التالي 

انا استخدم هذا الاستعلام في قاعدة بينات اكسس   في اس كيو ال ربما هناك دالة تقوم بالعملة  وممكن استخدام نفس الطريقة ايضا 
PHP كود :
Select (Select Count(*) From Table1 tbl2 Where tbl2.ID<=tbl1.ID) as SN,Name From Table1 tbl1 Order By ID Asc 
هذا الاستعلام سيقوم بترقيم مخرجات الاستعلام من 1 الى اخر سجل  بالترتيب   حتى لو وجد  سجل محذوف  
شرط وجود  حقل i  رقمي  ترقيم تلقائي او يدوي  لا يهم  .
ما قدرت اشرحه ممكن تجربوا   كي تعرفوا  او انظر الصورة المرفقة  فهي ابغ
ممكن مثال سريع استاذي الغالي علما انني استعمل اداه adodc
الأستاذ sendbad100
نريد حقآ أى مثال مرفق على هذا الكود الذى كتبته ، وليكن نفس المثال الذى وضحت صورته
ولا تخف من أى شئ
هذا الحقل لمجرد متابعة المستخدم لتسلسل السجلات ، ولا علاقة له بأى جدول آخر أو أى حقل آخر
ولك ألف شكر