ناقل قام بنشر ديسمبر 18, 2019 قام بنشر ديسمبر 18, 2019 الاخوة الأعضاء ... السلام عليكم ورحمة الله وبركاته ..... هل أجد معلومات وافيه حول عبارة EOF ..... ماذا تعني .... استخداماتها ..... كيف استخدمها في العبارات البرمجية ..... شكرا لكم سلفا ,,,, بارك الله فيكم
أفضل إجابة sandanet قام بنشر ديسمبر 18, 2019 أفضل إجابة قام بنشر ديسمبر 18, 2019 أخي الكريم من المعروف برمجياً انه يجب تحديد نهاية السجلات قبل إجراء عملية MoveNext فإذا لم تحدد نهاية السجلات فانك ستحصل على خطأ لذلك يتم استخدام EOF للإشارة الى نهاية السجلات وهي تعني "end of" ويتم استخدامها كالتالي: If Not rst.EOF Then rst.MoveNext حيث ان rst تمثل مجموعة السجلات في الجدول إليك هذا المثال ايضاً Set rs = CurrentDb.OpenRecordset("select * from Table1 ") Do While rs.EOF = False rs.Edit " do something " rs1.MoveNext Loop المثال يبين ان الحلقة التكرارية do تستمر بتنفيذ العمليات البرمجية على كل سجل مادامنا لم نصل لنهاية السجلات في الجدول اي مادامت end of table1 = false فعندما نصل لنهاية السجلات ستصبح end of table1 = true وعندها ستتوقف الحلقة التكرارية وهذا مثال آخر مشابه للذي قبله Set rst = dbs.OpenRecordset("SELECT * FROM Table1", dbOpenDynaset) Do While Not rst.EOF " do something " rst.MoveNext Loop عوضاً عن القول للبرنامج نفذ الحلقة التكرارية مادامت نهاية السجلات false فان المثال الاخير يقول للبرنامج نفذ الحلقة التكرارية مادمت غير واصل لنهاية السجلات بعد مثال آخر: هنا نجد ان البرنامج يبدأ بتنفيذ الأوامر البرمجية من أخر سجل في الجدول ويتحرك الى ان يصل الى أول سجل Set rst = dbs.OpenRecordset("SELECT * FROM Table1", dbOpenDynaset) rst.MoveLast Do While Not rst.BOF " do something " rst.MovePrevious Loop أتمنى ان تكون الفكرة واضحة تحياتي 4 1
ناقل قام بنشر ديسمبر 18, 2019 الكاتب قام بنشر ديسمبر 18, 2019 استاذي الغالي .... اتضحت الفكرة شرح وافي اخي الكريم شكرا لك وبارك في عمرك
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.