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

كيفية عمل loop هل من مساعده ؟

مغلق
بدأه أبو صفاء في 1 مارس 2005 · 5 رد · 1,798 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

أخواني

انني لست من مرتادي هذا المنتدى

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

ابحث عن داله loop

وكيفية عمله

حيث استخدمت help ووجدت اكواد بذلك

الا انني لم استطع العمل بها بشكل جيد

واخيرا عملت عن طريق Sql

فهل من مساعده حول Loop

ما اريده منكم اخواني :

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

مشاركتي في الاكسس

/index.php?showtopic=57963

وجزاكم الله خيرا

===

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

===

المشتاق الى الجنة

أبو صفاء - مسقط

===

#2
أبو صفاء كتب:
السلام عليكم

أخواني

انني لست من مرتادي هذا المنتدى

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

ابحث عن داله loop

وكيفية عمله

حيث استخدمت help ووجدت اكواد بذلك

الا انني لم استطع العمل بها بشكل جيد

واخيرا عملت عن طريق Sql

فهل من مساعده حول Loop

ما اريده منكم اخواني :

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

مشاركتي في الاكسس

/index.php?showtopic=57963

وجزاكم الله خيرا

#3

استطيع مساعدتك ولكن عن طريقjava اذا كنت تعرف كيف تعمل عليها سوف ابعث لكcodالحل

#4

mahmoud ezat جزاك الله خيرا للمبادرة لي

وجدت هذا الكود وهو عمل معي بالشكل المطلوب

Dim rst As ADODB.Recordset
Set rst = New ADODB.Recordset
rst.Open "[t1]", CurrentProject.Connection, _
adOpenDynamic, adCmdTable
Do Until rst.EOF
    ' هذا يقوم بحذف السجلات
    DoCmd.SetWarnings False
    DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
    DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
    DoCmd.SetWarnings True
rst.MoveNext
    Loop
rst.Close
    MsgBox "Finsh Delete"

End Sub

ولله الحمد والمنه

اما بالنسبة Java فليس لدي فكرة في برمجتها

حيث أخذت دورات لكلا من :

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

الفيجوال = درست ولم اعمل برنامج الا مشروع صغير ,,,,,

الاوراكل = درست ولم اعمل برنامج الا مشروع صغير بس البرمجة فيه احلى من الاثنيين

على نية أخذ دورة متكاملة في C++ وادعو الله ان يوفقني في ذلك

والسلام عليكم

اخيكم في الله

===

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

===

المشتاق الى الجنة

أبو صفاء - مسقط

===

#5

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

1 - الصورة الأولى do While .......looop وهب تعني كرر طالما الشرط متحقق فإذا لم يتحقق الشرط يخرج من الدوارة :

مثل عندما تريد البحث عن سجل معين نكتب الكود التالي :

do while not rs.eof
if rs![stno] = val(text1.text) then
text1 = rs![stno]
text2 = rs1[stname]  
exit do
end if 
rs.move next
loop

شرح الكود

1 - تعني كرر الجمل بعد do while طالما انك لم تصل لنهاية الجدول بمعني إذا وصل لنهاية الجدول ينهي الدوارة ( يبحث هنا سجل سجل )

2 - شرط داخلي القيمة المطلوب البحث عنها

3 - غذا تحقق الشرط يتم عرض البيانات من الجدول على مربعات النصوص ويخرج من الدوارة

4 - إذا لم يجد السجل الأول مطابق ( وهنا فائدة الدوراة ) ننزله للسجل الثاني بالجملة rs.move next

5 - جملة loop تعيد العمل من أول سطر بعد do وهنا هيكرر العملية على السجل التالي

الشكل الثاني

do until .....loop

نفس الشكل السابق ولكن الإختلاف هو أن while طالما الشرط متحقق يكمل و until التكرار مستمر حتى وقوع الشرط يخرج

طبعا لكل شكل يمكن كتابته بطريقتين

لعل هذا القدر يكفي

فمثلا إذا اردت حذف سجلات معينة تحت شرط نكتب الجملة التالية

do while not rs.eof
if rs![stno] = val(text1.text) then
rs.delete
exit do
end if 
rs.move next
loop

لو محتاج حذف كل السجلات احذف جملة exit do وطبعا المفروض في الجدول أن السجلات لا تكرر ( غالبا )

إن أحببت افصل لك الموضوع رد علي وانا افعل إن شاء الله

تم تعديل هذه المشاركة بواسطة nasser50001 في 1 مارس 2005 في 20:33

#6

أخي // nasser50001

جزاك الله خيرا على ما قمت به من شرح لي

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

==

تفصيل

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

في حالة الرغبة بحذف اجراء معين لابد ان يتغيرالرصيد كما انه لم بحث شيئا

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

===

===

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

===

المشتاق الى الجنة

أبو صفاء - مسقط

===

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

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