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

نسخة كاملة : مساعدة فى حالة حذف سجل
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
احبابى فى حالة حذف سجل يحدث خلل برقم الفاتورة وعند عمل اضافة جديد يتكرر رقم اخر فاتورة

كيف الحل احبابى فى الله
اهلا و سهلا
اخي الحبيب لنصل للحل بصورة اسرع
نرجو منك ارفاق المثال
شكرا جزيلا
اخى امير جزاك الله خير على الرد

هاك المثال اخى الغالى

فى قاعدة البيانات عند حذف سجل منها عن طريقة كود الجذف " adodc1.recordset.delete "
نجد انة قام بحزف السجل تمام واصبح رقمة غير موجود
عندما نقوم باضافة سجل جديد سوف نعمل الاتى " adodc1.Recordset.RecordCount + 1"
سوف يقوم الكود بعد السجلات ويضيف واحد فنجد انة يكرر اخر رقم فلو كان اخر السجل 10 نجدة يضسف سجل جديد ورقمة 10 ايضا

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

جزاكم الله عنى خيرا
اهلا اخي الحبيب
تفضل قم بتجربة هذا الكود
- قم بوضع هذا الكود في زر الامر اضافة سجل جديد ان وجد
PHP كود :
If Adodc1.Recordset.RecordCount 0 Then
TextID 
"1"
Else
Adodc1.Recordset.Requery
Adodc1
.Recordset.MoveLast
TextID 
CInt(Adodc1.Recordset.Fields(0)) + 1
End 
If 

وهذا الكود ايضا في حدث الفورم لود
حيث ان Table_One هو اسم الجدول

PHP كود :
Dim Data_Connect As String
Dim Data_Path 
As String
Data_Path 
App.Path "\VB4ARAB.mdb;Persist Security Info=False;Jet OLEDB:Database"

Data_Connect "Provider=Microsoft.Jet.OLEDB.4.0;" _
        
"Data Source= " Data_Path ""

Adodc1.ConnectionString Data_Connect
Adodc1
.RecordSource "Tabel_One"
Adodc1.Refresh 
الف الف شكر اخى الغالى امير جزاك الله عنى خير فعلا رائع

اخى الغالى هل استخدم كود واحد منهم ام يجب استخدام الكودين

نعم اخى الغالى اعتقد نستخدم كود الاول فقط اما الكود الثانى فاعتقد للربط فقط

لقد جربت الكود اخى الغالى والحمد لله يعمل تمام حيث انه يعتمد على الرقم الاخير بالجدول وليس عدد السجلات بالجدول

اخى الغالى هل يمكن ان نرتب قاعدة البينات بحيث ان الارقام المحذوفة من السجل يعاد ترتيبها

مثلا لو ان السجلات 100 وحذفنا رقم 99 فبالتالى سوف يكون هناك رقم خالى بينما يكون اخر السجلات 100
هل يمكن ان نعيد الترتيب بحيث ان اخر سجل يكون رقمه 99 وليس 100
السلام عليكم ورحمة الله وبركاته

اخي الحبيب هاني كيف حالك

بخصوص هذا السؤال نعم يمكنك اعادة ترتيب السريال
لكن هذا خطأ فعندما يتم حذف فاتورة يجب ان يكون مكانها خالي حتى يتبين لمن يدقق على الفواتير ان هذه الفاتورة تم حذفها فاذا تمكن المستخدم من صلاحية حذف وإعادة ترتيب السريال فسوف يسرق اغلب الفواتير

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

وهذا مستحيل ومرهق جدا

هذه نصيحه عامه للجميع تجنبوا إعادة بناء السريال مرة آخرى

وبالتوفيق
اهلا اخي الحبيب
الشكرلله دائما وابدا
انا مع الاستاذ القدير احمد عبد العليم فيما يخص موضوع اعادة ترتيب التسلسل فقط عليك الاخذ بالنصيحة وهذا سيعود عليك بنتائج ايجابية دائما
تحياتي لك
اهلا وسهلا استاذى الغالى احمد عبد العليم شرفتنا بالمشاركة القيمة استاذى


نعم احسنت استاذى الغالى احمد عبد العليم فعلا كلامك مظبوط

وسوف اخذ برئيك

سلمت يارب بارك الله فيك لا حرمنا الله منك
وسلمت اخى الغالى الاستاذ امير
نعم الناس انتم

جزاكم الله عنى خيرا
اخى الغالى عندى مشكلة ان عند عمل امر " Adodc1.Recordset.MoveLast "
قاعدة البيانات لاتذهب الى اخر سجل لا اعرف لماذا تقف عندى اى سجل وليس السجل الاخير وبالتالى الترقيم لن يكون صحيح

ارجو المساعدة اخى الغالى
اساذى احمد عبد العليم

ارجو المساعدة حيث ان عندى مشكلة بتكرار ارقام الفواتير حتى الان وامر الذهاب الى اخر الجدول   ..... لا يذهب الى اخر الجدول انما يقف عند اى سجل
الصفحات : 1 2