الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة الترقيم التلقائي؟

مغلق
بدأه النقيب في 15 سبتمبر 2003 · 14 رد · 1,019 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عندما عملت ترقيم تلقائي قمت بحذف آخر خمسة سجلات....

يعني لو عملت 20 سجل مرقم تلقائياً من 1 إلى 20 وقمت بحذف آخر خمسة يعني بقي لدي 15 سجل ،، أردت إضافة سجل جديد المفترض أن يبدأ الترقيم من العدد 15 ولكن المشكله انه يبدأ من العدد 21 آخر سجل تم حذفه.

#2

لنفرض لدينا 20 سجل

احزف سجل19

احزف سجل18

احزف سجل17

اضغط البنات

يبدء في سجل 17

==========

في حال حزفت

سجل 15

في بعده سجل 16

الاكسس ما برجع سجل 15

بيدء سجل 17

ان شاء الله تكون فهمت الموضوع

   لبنان / قب الياس
       /index.php?showtopic=37977
 

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

http://www.cb4a.com/books/
-------------------

#3

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

فقمت بحذف كل السجلات لأنها كانت بمثابة تجربه فقط حتى يتم إدخل البيانات الصحيحة ولكني تفاجئت بأني عند ادخال البيانات من جديد وجدت الترقيم التلقائي أبتدأ من 50 مثلاً وليس من 1 .

#4

بسم الله الرحمن الرحيم

أخي العزيز .. أصنع ترقيم تلقائي بنفسك عن طريق الكود كما يلي :

لدينا جدول اسمه : table1

وبه حقل رقم اسمه : NoID

وفي زر الأمر نكتب الكود التالي

Dim intNOID AS long
intNOID=NZ(Dmax("[intNOID]"."table1",0))
If intNOID=0 then 
MsgBox " من فضلك ضع الرقم بنفسك"
Me.NOID.SetFocus
Exit sub
Else
Me.NOID=intNOID+1
End If

إذا لم يكن في الجدول سجلات ستخرج لك رسالة ضع الرقم بنفسك واكتب الرقم الذي تريد مثلاً 1000

بعد ذلك في المرة الثانية لن يسألك وسيضيف العدد 1001 من تلقاء نفسه

ملاحظة // أقتباس من طريقة أحد الأخوة في المنتدى ..

#5

عزيزي النقيب ما هو قصدك من هذا الحقل ،،، أي ما هي فائدتك منه ،،،

هل لعمل عداد للسجلات ؟؟؟

أم هو لحفظ قيمة لسجل ما للعودة إليه في حال الحاجة ؟؟؟؟

أخي الكريم هذا ما يعمله الترقيم التلقائي ،،، في حال أنك حذفت أي سجل وأضفت سجلاً آخر سوف لن يرجع لك من رقم أخر سجل تمت إضافته ,,,, ولكن سوف يأخذ أخر قيمة تمت إضافتها ويضيف إليها رقما آخر ,,,,

عزيزي ،،، بإمكانك التغلب على هذا الأمر ،،، قم بإلغاء هذا الحقل ذو ( الترقيم التلقائي ) وأضف حقلاً عادي ( رقمي ) ,,,

ضع مع خصائص هذا الحقل في النموذج :

خاصية ( تمكين ) : ( لا )

خاصية ( مؤمن ) : ( نعم ) .

أنشيء ( مربع نص ) أي حقل غير منضم على النموذج وليكن اسمه ( n ) مثلا وضع في خاصية ( مصدر عنصر التحكم ) لهذا الحقل هذا الكود :

n = DCount("[اسم الحقل]", "اسم الجدول")

لابد أن هناك حقلاً سوف يبدأ به البرنامج ضع في هذا الحقل في خاصية حدث ( بعد التحديث ) :

n+1=[اسم الحقل]

معنى الكود الأول : هو عمل عداد لجميع السجلات المدخلة في الجدول ،،، أي أنه سوف يأتي لك برقم آخر سجل مدخل بالجدول .

والكود الثاني : سوف يقوم بزيادة ( 1 ) إلى مجموع عدد السجلات المدخلة ويضع هذا المجموع في الحقل المطلوب .

شاكر

المسلم من سلم الناس من لسانه ويده

#6

الاخ العزيز شاكر الزين

نشكرك على مجهوداتك وسرعة ردودك

لك منا كل الشكر على التوضيح الرائع وياريت تكمل جميلك ةترفق مثال على ذلك وتقبل تحياتى وتحيات كافة الزملاء

عنوانى البريدي هو

afify1965 @hotmail.com

#7

يعطيكم ألف عافية

ضبطت معي الطريقة،

#8

الاخوه الاعزاء انا ما ضبطت معى

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

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

وهذه السجلات فارغة بمعنى انه يضيف التسلسل ولكن بسجلات فارغة

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

وشكرا للجميع

#9

الاخ : أحمد عفيفي ، السلام عليكم ورحمة الله وبركاته

حاولت أن أعمل لك مثال

المثال المرفق

شاكر

المسلم من سلم الناس من لسانه ويده

#10

الاخ العزيز شاكر

شكرا لاهتمامك البالغ

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

#11

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

أخي هل تريد بعد حذف عدة سجلات مثلاً :

1

2

3

4

5

6

7

8

9

حذفت مثلا

1

2

3

تريد إعادة ترتيب الارقام :

من 4 إلى 1

من 5 إلى 2

وهكذا إلى جميع السجلات ،،، أي إعادة ترقيم السجلات من الواحد مرة أخرى

هل هذا هو المطلوب ؟؟؟؟ ما الذي تستفيده من هذه الطريقة ؟؟؟؟

وهل هذا الجدول مرتبط بجدول آخر ( بالرقم ) ؟؟؟؟

إذا مرتبطاً بجدول آخر سوف لن تستفيد من إعادة ترتيب الارقام ،،، إلا بعمل ربط

( بفرض التكامل المرجعي ) ،،، ( تتالي تحديث الحقول المرتبطة ) ....

اقتباس

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

المثال يعمل كذلك الآن يضيف بعد آخر رقم في السجلات ,,,,

شاكر

تم تعديل هذه المشاركة بواسطة شاكر الزين في 27 سبتمبر 2003 في 00:23

المسلم من سلم الناس من لسانه ويده

#12

الاخ العزيز شاكر

اولاً اشكرك على الاهتمام والرد بسرعة

اقتباس:

اقتباس

وهل هذا الجدول مرتبط بجدول آخر ( بالرقم ) ؟؟؟؟

إذا مرتبطاً بجدول آخر سوف لن تستفيد من إعادة ترتيب الارقام ،،، إلا بعمل ربط

( بفرض التكامل المرجعي ) ،،، ( تتالي تحديث الحقول المرتبطة ) ....

نعم الجدول مرتبط بجدول اخر بالرقم وقمت بعمل فرض التكامل المرجعى وتتالى تحديث الحقول المرتبطة

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

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

ان يعود الترقيم للسجلات من الاول اى من 1 ثم 2 وهكذا ولك منى جزيل الشكر

وفقكم الله لما فيه الخير لنا جميعا

#13

مرحباً ،،، أخي ،،،، تفحص المثال مرة آخرى

المثال هنا

شاكر

المسلم من سلم الناس من لسانه ويده

#14

الاخ العزيز شاكر

تحية اجلال وتقدير لشخصك وعلمك الكبير

هذا والله ما اردته

الف الف شكر على افادتى وافادة كل الاصدقاء

بارك الله فيك وجعلك واصدقاء المنتدى العظام (وهم كثيرين والله والجميع يعرفهم) عوناً لنا

الف شكر وجعلها فى ميزان حسناتك

#15

حياك الله ،،،، يا أخ عفيفي ،،،، إحنا حاضرين للطيبين ,,,,

شاكر

المسلم من سلم الناس من لسانه ويده

هذا الموضوع مغلق.

مواضيع مشابهة