تقييم الموضوع :
  • 1 أصوات - بمعدل 4
  • 1
  • 2
  • 3
  • 4
  • 5
مساعدة فى حالة حذف سجل
#1
احبابى فى حالة حذف سجل يحدث خلل برقم الفاتورة وعند عمل اضافة جديد يتكرر رقم اخر فاتورة

كيف الحل احبابى فى الله
الرد }}}
تم الشكر بواسطة:
#2
اهلا و سهلا
اخي الحبيب لنصل للحل بصورة اسرع
نرجو منك ارفاق المثال
شكرا جزيلا
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري , mhareek , Ahmed_Mansoor , rnmr , rnmr
#3
اخى امير جزاك الله خير على الرد

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

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

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

جزاكم الله عنى خيرا
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy
#4
اهلا اخي الحبيب
تفضل قم بتجربة هذا الكود
- قم بوضع هذا الكود في زر الامر اضافة سجل جديد ان وجد
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 
الرد }}}
#5
الف الف شكر اخى الغالى امير جزاك الله عنى خير فعلا رائع

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

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

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

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

مثلا لو ان السجلات 100 وحذفنا رقم 99 فبالتالى سوف يكون هناك رقم خالى بينما يكون اخر السجلات 100
هل يمكن ان نعيد الترتيب بحيث ان اخر سجل يكون رقمه 99 وليس 100
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy
#6
السلام عليكم ورحمة الله وبركاته

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

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

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

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

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

وبالتوفيق
محاسب / أحمد عبد العليم

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


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

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

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

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

ارجو المساعدة اخى الغالى
الرد }}}
تم الشكر بواسطة:
#10
اساذى احمد عبد العليم

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



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


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