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

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

مغلق
بدأه galib في 20 ديسمبر 2005 · 3 رد · 800 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

عندي جدول اسمه الوارد توجد فيه حقول هي :

1. رمز المادة

2. التاريخ

3. نوع المادة

علما ان رمز المادة يدخل عن طريق الباركود ريدر وعندما جعلت حقل رمز المادة ( رقم ) لايقبله الاكسس الا اذا كان نوع الحقل ( نص ) ورمز المادة عبارة عن ارقام متسلسلة

السؤال هو:

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

مع الشكرالجزيل

اخوكم من العراق الجريح غالب

#2

هل لك بان ترفق لنا الملف المذكور كي نفهم الامر اكثر

#3

الاخ الفاضل غالب

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

تتمثل الطريقه كالتالي

1. يوجد لديك جدولين الاول للوارد ولنرمز له بالرمز TABLEA وجدول الصادر ونرمز له بالرمز TABLEB

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

3. نقوم بعمل نموذج مستمر مبني على الجدول الاول ونضع به مربعين نص وليكن اسم مربع النص الاول هو A والاخر هو B ونضع زر امر ونسميه ( ترحيل ) اي ترحيل بيانات ونضع به هذا الكود

Private Sub FIND_Click()
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO TABLE2 ( code, [date], type )SELECT TABLE1.code, TABLE1.date, TABLE1.type FROM TABLE1 WHERE (((TABLE1.code) Between [FORMS]![FORM2]![A] And [FORMS]![FORM2]!));"
DoCmd.RunSQL "DELETE TABLE1.code, TABLE1.date, TABLE1.type FROM TABLE1 WHERE (((TABLE1.code) Between [FORMS]![FORM2]![A] And [FORMS]![FORM2]!));"
DoCmd.SetWarnings True
MsgBox "تم ترحيل البيانات بنجاح"
DoCmd.Requery
End Sub

شرح الكود

عند الضغط على زر الامر FIND في النموذج سيقوم بعمل التالي

1. تعطيل رسائل التحذير التي تظهر مع الاستعلام من خلال الامر

DoCmd.SetWarnings False

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

DoCmd.RunSQL "INSERT INTO TABLE2 ( code, [date], type )SELECT TABLE1.code, TABLE1.date, TABLE1.type FROM TABLE1 WHERE (((TABLE1.code) Between [FORMS]![FORM2]![A] And [FORMS]![FORM2]!));"

3. انشاء استعلام حذف بالبيانات التي تم ترحيلها من الجدول الاول الى الجدول الثاني حسب العبارة التالية

DoCmd.RunSQL "DELETE TABLE1.code, TABLE1.date, TABLE1.type FROM TABLE1 WHERE (((TABLE1.code) Between [FORMS]![FORM2]![A] And [FORMS]![FORM2]!));"

4. اعادة رسائل التحذير الخاصه بالاستعلام من خلال الامر التالي

DoCmd.SetWarnings True

5. انشاء رسالة بنجاح ترحيل البيانات

MsgBox "تم ترحيل البيانات بنجاح"

6. تحديث بيانات الجدول مباشرة

DoCmd.Requery

7. واخيرا تحديث بيانات النموذج بعد التحديث حسب الكود التالي

Private Sub Form_AfterUpdate()
DoCmd.Requery
End Sub

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

1. نقوم بعمل مربع نص غير منظم في اسفل النموذج ونضع به هذا الكود المبني على عنصر التحكم code

=Count([code])

وهذا مثال مرفق

ghalib.rar

اختكم

زهره

تم تعديل هذه المشاركة بواسطة zahrah في 22 ديسمبر 2005 في 21:54

#4

السلام عليكم

اود ان اشكر الاخت الفاضلة زهرة على جهدها التي قدمته ومازالت تقدمه واسال الله العلي القدير ان يوفقها لخير الدارين وان يجعلك مثلا اعلى نقتدي به وان يزيدك الله من علمه ومنه وفضله وبركته انه سميع الدعاء لطيف مجيب

اخوكم من العراق الجريح غالب

:lol:

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…