السلام عليكم ورحمة الله وبركاته .. وبعد ،،
لقد حاولت تطبيق فكرة إضافة رقم مسلسل لنموذج أو إستعلام من مثال ارفقه بعض الأخوة ولكن للأسف الشديد لم تنجح معي .. أرجو مساعدتي في ذلك وجزاكم الله كل خير ..
مرفق مثال للتعديل عليه مشكورين
السلام عليكم ورحمة الله وبركاته .. وبعد ،،
لقد حاولت تطبيق فكرة إضافة رقم مسلسل لنموذج أو إستعلام من مثال ارفقه بعض الأخوة ولكن للأسف الشديد لم تنجح معي .. أرجو مساعدتي في ذلك وجزاكم الله كل خير ..
مرفق مثال للتعديل عليه مشكورين
أخي snmdody .. ابحث في المنتدى يوجد أكثر من موضوع عن هذه الفكرة
أظن ستفيدك
شكرا اخي مهند ، فقد وجدت ملفاً بالفعل وقد ارفقته هنا ولكني للأسف لم استطع ان أجري التعديلات التي اريدها على برنامج .. ارجو المساعدة وشكرا
Up
أخي الكريم ،،، لم تستطع إجراء التعديلات عليه لعدة أسباب سأذكرها لك :
أولا : لأنك لم تستورد الوحدة النمطية الموجودة بالمثال وهي :
Function RcNumq(mID As Variant, fldName As String) As Variant
Dim RstClone As Recordset
Dim Fld As Field
Dim I As Long
RcNumq = Null
If IsNull(mID) Then Exit Function
Set RstClone = CurrentDb.QueryDefs("q").OpenRecordset
If RstClone.RecordCount = 0 Then Exit Function
Set Fld = RstClone.Fields(fldName)
With RstClone
.MoveFirst
Do Until .EOF
I = I + 1
If Fld = mID Then Exit Do
.MoveNext
Loop
End With
RstClone.Close
RcNumq = I
End Functionثانيا : عندما تتفحص المثال سوف تجد أنه يعتمد على إستعلام بإسم ( q )
Set RstClone = CurrentDb.QueryDefs("q").OpenRecordsetثالثا : إعتماده لعمل عداد في الاستعلام أو في نموذج يكون على حقل ( ترقيم تلقائي )
عملت لك حقلا في جدول المعتمرين بإسم ( Number ) وجعلت له نوع البيانات ( تريقم تلقائي ) .
رابعا : في الاستعلام يعتمد فقط على الوحدة النمطية وحقل ( الترقيم التلقائي ) :
العد في الاستعلام: RcNumq([Number];"number")
خامسا : أما في النموذج فإنه يعتمد على الوحدة النمطية مع حقل ( الترقيم التلقائي ( Number ) يوضع هذا الكود في ( مصدر السجل لعرض الترقيم )
=RcNumq([Number];"number")
مرفق المثال بعد التعديل
المسلم من سلم الناس من لسانه ويده
شكراً جزيلاً اخي الكريم يعمل الملف المعدل منك بطريقة صحيحة ، ولكن حين تنفيذ الفكرة على الملف الذي ارسلته في بداية هذه المشاركة لتطبيق الفكرة عليه تظهر رسالة خطأ .
ارجو ان لا اكون قد اثقلت عليك ، وارجو ان يتم التعديل على الملف الذي تم ارساله من قبلي وتجده في الاعلى لترى رسالة الخطأ التي تظهر فلا ادري ما السبب
شكراً جزيلاً
أخي الكريم ،،، إقرأ بتمعن ما كتبته لك سوف تجد :
1 - لا يوجد عندك رقم حقل ( ترقيم تلقائي ) .
2 - لم تستورد الوحدة النمطية .
3 - لا يوجد عندك إستعلام بإسم ( q ) .
تفحص المثال الذي أرفقته لك .
وتفحص مثالك الذي بالأعلى .
سوف تجد الفرق كما أسلفت لك .
هذه الاسباب التي تسبب لك ظهور رسالة الخطأ .....
تم تعديل هذه المشاركة بواسطة starnoor2000 في 5 يونيو 2004 في 13:22
المسلم من سلم الناس من لسانه ويده
شكراً جزيلاً أخي الكريم ، اود ان اخبرك بأن الملف المعدل منك عند تشغيله يعمل بطريقة صحيحة ولكن عند إستيراده إلى برنامجي تحدث نفس المشكلة رغم إني قمت بإستيراد جميع العناصر في الملف من جدول وإستعلام ونموذج وكذلك الوحدة النمطية . وارجو كذلك إخباري هل عند الرغبة في إجراء نفس العملية لعدة إستعلامات هل يجب علي أن اكرر الوحدات النمطية بعدد الاستعلامات الموجودة لدي .
مع شكري وتقديري مقدماً
أخي الكريم ،،، أنا لم أعمل هذا المثال ،،، أقصد ( مثال على ترقيم النماذج والاستعلامات ) ولكن ما أستوعبته وفهمته من هذا المثال أنه يستوجب أن لديك في الجدول المراد عمل له ترقيم بالاستعلام أن يكون فيه حقل ( ترقيم تلقائي ) ،،،حتى تشير إليه وأيضا إستعلام كما هو موجود في المثال بإسم ( q ) أي مثله وليس هو ،،،،، للتنويه
إقتباس
اقتباسوارجو كذلك إخباري هل عند الرغبة في إجراء نفس العملية لعدة إستعلامات هل يجب علي أن اكرر الوحدات النمطية بعدد الاستعلامات الموجودة لدي
أعتقد يستوجب ذلك !!!!!
أما بالنسبة لعدم عمله بعد إستيراده إلى برنامجك لا أدري ما السبب
هل عملت حقل ( ترقيم تلقائي ) في جدولك الموجود في برنامجك ؟؟؟
وهل أشرت إليه في الاستعلام ؟؟؟
تم تعديل هذه المشاركة بواسطة starnoor2000 في 5 يونيو 2004 في 18:49
المسلم من سلم الناس من لسانه ويده
أخي الكريم لقد عرفت السبب وقمت بالتعديل على مثالك الذي أرفقته في أول المشاركة والسبب هو ترتيب المكتبات في ( Tools ) سوف يكون على النحو التالي :
Visual basic for applications Microsoft Access 10.0 object library Microsoft DAO 3.6 objects library Mircrsoft Activex Data objects 2.1 library OLE Automatin
بالترتيب كما هي ،،،، وإن شاء الله سوف يعمل معك البرنامج ,,,,
مرفق لك مثالك بعد التعديل عليه
تحياتي
المسلم من سلم الناس من لسانه ويده
والله انا عاجز عن الشكر لمتابعتك ورد السريع ، سوف اقوم بتحميل الملف الان لتجربته شكراً جزيلاً مقدماً
لم يعمل معي حتى الآن ......
اقتباسأخي الكريم لقد عرفت السبب وقمت بالتعديل على مثالك الذي أرفقته في أول المشاركة والسبب هو ترتيب المكتبات في ( Tools ) سوف يكون على النحو التالي :
يا ريت لو توضح لي أكثر كيفية تعديل المكتبات لاني وبصراحة متناهية لا اعرف عنها شياً حيث اني جديد نسبياً على الاكسس
الف شكر وآسف على الإزعاج
حسناً يا أخي الكريم سوف أشرح لك كيفية ترتيب المكتبات ( المراجع ) :
1 - إذهب إلى الوحدة النمطية وإضغط على ( تصميم ) .
2 - سوف تظهر لك شاشة ( مايكروسوفت فيجول بيسك ) .
3 - من شريط القوائم بالاعلى ( Tools --- Run --- Debug --- --------------------- Files )
4 - اختر قائمة ( Tools )
5 - سوف تظهر لك قائمة إختر منها ( References )
6 - سوف تظهر لك نافذة ( Refernces Sample )
7 - هذه النافذة فيها أسماء المكتبات التي تحتاجها قاعدة البيانات لكي تعمل بالشكل
الصحيح .
8 - ضع علامة ( صح ) أما كل من المكتبات التي ذكرتها لك وهي :
Visual basic for applications Microsoft Access 10.0 object library Microsoft DAO 3.6 objects library Mircrsoft Activex Data objects 2.1 library OLE Automatin
هذا كل ما لدي من شرح ،،،
سؤال : هل عمل معك آخر مثال أم لأ ؟؟؟؟
المسلم من سلم الناس من لسانه ويده
الف شكر على جهدك معي ...
ورداً على سؤالك .. فإن آخر مثال لم يعمل معي ، ويظهر في حقل (العد في الإستعلام) كلمة خطأ ...
جزاك الله كل خير وما قصرت ، وراح اجرب الطريقة التي اخبرتني عنها وإن شاء الله تذهب المشكلة
غريبة يا أخي الكريم ،،،، كيف لم يعمل معك المثال الأخير ؟؟؟؟
هل قمت بإنزال الاوفس كاملاً عند تحميلك للأوفس ؟؟؟
ربما عندك مشكلة ،،، أو نقص ملفات ،،،،
معذرة لانني لم أستطع مساعدتك !!!!
أسأل الله لك التوفيق
المسلم من سلم الناس من لسانه ويده
اقتباسمعذرة لانني لم أستطع مساعدتك
أخي الكريم لقد ساعدتني فعلاً ولكن ربما تكون المشكلة عندي فجزاك الله كل خير بمقدار كل حرف كتبته أو فكرت في كتابته ..
سأحاول أن اطبق ما اخبرتني به في آخر رد لك ..
كلمة شكر قليلة لشخصٍ كريمٍ مثلك
حياك الله أخي الكريم ،،،، ما كتبته وما عملته لك من طيب خاطر مني وليس لي منة عليك فقط طلباً للثواب ونشر العلم والمعرفة ,,, ولكن يحزنني أنني لم أستطع أن أوصل معك لما طلبته فقط لا غير ,,,, وحياك الله أخي مرة أخرى أخ عزيز وغالي
المسلم من سلم الناس من لسانه ويده
بارك الله فيك اخي الكريم .. واود أن اخبرك بأني تمكنت أخيراً من تنفيذ الفكرة وذلك بعد ترتيب المكتبات حسب إفادتك لي ..
ولي طلب بسيط لو سمحت لي ..
عند فتح النموذج الرئيسي ومن ثم إختيار قيمة لإظهارها في النموذج الفرعي الذي يحوي رقم مسلسل تظهر ارقام التسلسل صحيحة مية في المية ولكن عند تغيير القيمة في النموذج الرئيسي يستمر التسلسل .. ودعني اوضح اكثر ، مثلاً عند إختيار قيمة في النموذج الرئيسي ولنقل مثلاً رقم 3 فتظهر السجلات في النموذج الفرعي إبتداءاً من تسلسل رقم 1 إلى 10 مثلاً ، وعند تغيير الرقم في النموذج الرئيسي ولنقل مثلاً رقم 4 فتظهر السجلات هكذا 11 ---- الخ يعني لا يتم الفصل وإنما يستمر التسلسل ..
أرجو أن اكون قد اوضحت لك المشكلة
فعلاً يا أخي الكريم كما تفضلت ،،،،
وأعتذر لعدم مقدرتي على خدمتك ،،، فهذه المشكلة تحتاج إلى التعديل على الـ
( Function ) الموجود في الوحدة النمطية بالمثال ,,,
معذرة أخي الكريم ،،، قد يساعدك أستاذنا ومشرفنا / مهند عبادي ،،، فهو محترف في الوحدات النمطية ,,,
معذرة مرة أخرى
تحياتي
المسلم من سلم الناس من لسانه ويده
بارك الله فيك وما قصرت
السلام عليكم
أنا آسف أخي snmdody لأني لم انتبه للموضوع وكنت قد ظننت أن الأخ الرائع StarNoor2000 قد أعطاك ماتريد
تفضل هذا هو طلبك الذي تريده أخي الكريم
شكراً جزيلاً اخي مهند ، ولكن كيف تم عمل عملية الترقيم بدون وجود وحدة نمطية ، وكذلك ماهي التصفية وكيف تعمل ، وارجو شرح التصفية التالية والتي عملتها في مثالك
((P.P_name="السادس"))
ارجو ان لا اكون قد اثقلت عليك ، وجزاك الله كل خير
أخي snmdody
إن الـ Function موجود في نفس الفورم ch
بالنسبة للتصفية أنا لم أعمل تصفية .. ولكن إن خاصية التصفية تحافظ على قيمة آخر تصفية تم عملها .. ولكنها لا تفعّل إلا من خلال خاصية FilterOn نعملها تساوي True
ولعمل تصفية على قيمة ما نغضط بالزر الأيمن للفأرة فوقها ثم نختار : تصفية حسب التحديد
هذا الموضوع مغلق.