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

تعديل الكود اذا كان بالامكان لاضافة رقم مفقود في الجدول

بدأه خالد يحي الامام في 24 يناير 2012 · 20 رد · 913 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

Private Sub Gr_No_AfterUpdate()
On Error Resume Next
Me.Refresh
Dim Xx As String
Dim i As String
Dim Y As String
Dim Z As Integer
i = right(Me.Gr_No, 2)  ' year
Y = Left(Me.Gr_No, 1)   ' Group_No
Z = DCount("gr_no", "جدول المتدرب", "Left([Gr_No], 1)='" & Y & "'" & " and right([Gr_No], 2)='" & i & "'")
If Z = 0 Then
Xx = "01"
Else
Xx = Nz(CLng(DMax("tr_no", "جدول المتدرب", "Left([Gr_No], 1)='" & Y & "'" & " and right([Gr_No], 2)='" & i & "'") + 1), 0)
If IsNull(Xx) Or Xx = "" Then
Xx = "01"
End If
Xx = right(Xx, 2)
End If
Me.Tr_No = i & Y & Xx
End Sub

وكان جهد ممتاز جدا وجميل

ولكن في بعض الحالات يبدأ المتدرب في التدريب ويعطي رقم مثلا 12103 ويستمر الامر لعدة متدربين وبعد شهر يستقيل المتدرب وعند حضور متدرب جديد الكود بعطيه بعد آخر رقم يعني اذا اخر رقم 12115 بعطيه 12116 وهكذا هل بالامكان تعديل الكود بحيث اذا كان هناك رقم مفقود يبحث في الجدول ويعطيه الرقم المفقود اذا كان ممكن ذلك واكرر الشكر والتقدير

#2

صباح الخير للرفع

#3

للرفع

#4

مساء الخير الموضوع غير ممكن

#5

للرفع اين الاستاذة

#6

للرفع

#7

للرفـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــع

#8

للرقع والتذكير

#9

اخي الفاضل

ضع هذا الكود في قاعدة بيانات مع كل الحقول لأنه لا ينفع ان يكون الكود بمفرده لأنه معتمد على حقول في القاعدة

بالتوفيق

#10

للرفع والتذكير

#11
zahrah كتب:

اخي الفاضل

ضع هذا الكود في قاعدة بيانات مع كل الحقول لأنه لا ينفع ان يكون الكود بمفرده لأنه معتمد على حقول في القاعدة

بالتوفيق

#12

إن شاء الله حاضرين

الكود موجود في النموذج الفرعي sub ftraining في حقل Gr_No عند ادخال رقم الدفعة مثلاً 3 اولا ثم / ثم 2011 للمتدرب مصبح الروشدي يعطيه رقم المتدرب 11313 والمفقود في الجدول الارقام 11306 و 11309 وهكذا اذا اعطينا المتدرب عبد الله الشهومي رقم الدفعة 3/2011 يعطيه 11314 فارجو ان يكون الامر واضح ( فتح نموذج ftraining ) ولكي الشكر والتقدير

Dat_Code.rar

#13

اخي الفاضل : خالد

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

اولا : نقوم بعمل دالة تستخرج الأرقام المفقوده من بين الأرقام الموجوده وليست الخالية اي ما بين الأرقام 11301 - 11312 ( وطبعا الأرقام المفقوده بين هذه الأرقام هما الرقمين 11306 و 11309 وسيتم حفظ هذان الرقمان في استعلام الإرقام المفقوده

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

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

post-15367-071650600 1327770759_thumb.gi

رابعا : الآن سيظهر لنا نموذج الأرقام المفقوده ونختار الرقم المطلوب ( بالضغط عليه دبل كلك ) لتحديث حقل رقم المتدرب بالرقم المفقود

post-15367-094784700 1327771149_thumb.gi

post-15367-022363500 1327771173_thumb.gi

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

post-15367-012860500 1327771386_thumb.gi

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

za-Dat-Code-UP.rar

بالتوفيق

المرفقات
G1.gifG2.gifG3.gifG4.gif
1
#14

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

#15

استاذتي الفاضلة واجهتني مشكلة وهي في حالة وجود اكثر من مجموعة مثلا 3/2011 و 2/2011 و 1/2012 و 2/2012 لان احيانا يكون في السنة مجموعتين او ثلاثة او ربما اربعة وطبعا 2011 تشير إلى 2011 و 2012 تشير إلى 2012 ولكي الشكر فارجو ان تجربي ذلك على الملف

#16

اخي الفاضل : خالد

لا يوجد اي مشكله في البرنامج والترقيم لأي سنه من السنوات صحيح

post-15367-089666900 1327819088_thumb.gi

فأين هي المشكله !!!!!

بالتوفيق

المرفقات
K1.gif
#17

بدأ لكي الشكر استاذتي ولكن ارجو تجربة البرنامج بان تحذفي جميل سجلات جدول لنبدأ بعد ذلك في تعبيئة البيانات في نموذج ftraining لدفع مختلفة نبدأ بالدفعة 1/2012 ناخذ سجلين نلاحظ الارقام ثم الدفعة 2/2012 وناخذ كذلك سجلين مثلا والدفعة الثالثة 3/2012 وندخل سجلين او ثلاثة ومن ثم بعد ذلك نحذف اين من رقمي السجلين من الدفعة الأولي ومن ثم ناخذ سجل جديد لنضيف اليه رقم عن طريق الزر نلاحظ ظهور رسالة خطأ مفادها ان هنالك خطأ في الكود ونلاحظ وجود عدد كبير جدا من الارقام في جدول Lost_Number ولدي سؤال عن الجدول ( فشل حفظ التصحيح التلقائي للاسم ) ايش الفائدة منه ولكي الشكر

#18

للرفع

#19

السلام عليكم استاذتي رجعت ليك مرة اخري للحوجة ارجو ان تمسحي جميع سجلات جدول المتدرب وابدئي في ادخال البيانات مرة اخري بحيث ادخلي رقم الدفعة الأولي للعام 2012/1 نلاحظ الرقم 1211 والرقم الثاني 1211212 من الفترض ان يكون الرقم الأول 12101 والثاني 12102 ورقم الدفعة الثانية نلاحظ الرقم الأول 1221 والثاني 1221222 ومن المفترض ان يكون الأول 12201 والثاني 12202 وهكذا ولكي الشكر

#20

للرفع

#21

الاستاذة مالك جهلتينا مافي اي مشاركة

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