sami120 قام بنشر ديسمبر 25, 2007 قام بنشر ديسمبر 25, 2007 قمت بتصميم نموذج يحتوي رقم الموظف و اسم الموظف و العنوان وقد أنشئت تقرير عن طريق الاستعلام بحيث عند ادخال رقم الموظف يظهر في التقرير بيانات الموظف فأنا أريد أن يعطيني رسالة تحذير عند ادخال رقم موظف غير موجود " الرقم هذا غير موجود"
anamo قام بنشر ديسمبر 25, 2007 قام بنشر ديسمبر 25, 2007 أخي سامي.. ربما كان من الأفضل لو أرفقت مثالا على ما تريد.. حاول جرب وضع هذا الكود في الحدث الذي تريد.. numberfield = Me.Number Dim a a = DLookup("[number]", "names", "[number]='" & Me.Number & "'") If (IsNull(a)) Then MsgBox "هذا الرقم غير موجود", vbCritical, "رسالة تحذيرية" Cancel = True Me.Undo End If حيث في Me.Number استبدل ال Number بإسم الخانة التي وضع فيها الرقم (اسم مربع النص) وفي دالة ال DLookup استبدل ال number بإسم مصدر الحقل للرقم الذي وضع واستبدل ال names باسم الجدول الذي فيه الرقم.. أرجو أن أكون وفقت في التوضيح..
sami120 قام بنشر ديسمبر 26, 2007 الكاتب قام بنشر ديسمبر 26, 2007 شكراً لك أخي anamo بصراحة لم أفهم شيء هل يكتب الكود في زر الأمر أو في رقم الموظف أو في النموذج أو في الواجهة البرمجية وهذا هو المثال db2.rar
يوسف أحمد قام بنشر ديسمبر 26, 2007 قام بنشر ديسمبر 26, 2007 (معدل) اضافة الى ما تفضل به اخي anamo مشكوراً اخي / sami120 السلام عليكم ورحمة الله وبركاته بالنسبة لعرض السجل الحالي بامكانك جعل الجدول كمصدر للتقرير وتحدد بارامتر فتح التقرير بحيث يكون حسب رقم الموظف الحالي بالنموذج ويمكنك بهذه الطريقة الاستغناء عن الاستعلام انظر الكود في حدث عند النقر لزر الامر الخاص بعرض التقرير بالنسبة لعملية البحث فقد اشبع هذا الموضوع نقاشاً ويوجد مشاركات عديدة وما عليك الا البحث وستجد ما يسرك وباكثر من طريقة . اليك المرفق وبالتوفيق ان شاء الله db2.rar تم تعديل ديسمبر 26, 2007 بواسطه yousef
محب العلم قام بنشر ديسمبر 26, 2007 قام بنشر ديسمبر 26, 2007 (معدل) السلام عليكم شكرا لكل المشاركين ، يبدو أن يوسف قد نسي ارفاق التعديل anamo، برجى الانتباه أنك في حلك افترضت أن حقل الرقم هو نص وليس رقم كما هو الحال في مثال سامي الذي ارفقه. سامي ، حل هذه المشكلة يكون بالاحتياط لذلك كلما حدثنا في حقل الرقم أو أضفنا سجل جديد ولذلك يجب التحقق من أن الرقم لا يتكرر بعد حدث التحديث update لرقم الموظف وذلك بإضافة الإجراء الأتي لحدث التحديث لحقل رقم الموظف Private Sub رقم_الموظف_AfterUpdate() empno = Me.رقم_الموظف a = Nz(DCount("[رقم الموظف]", "[جدول الموظفين]", "[رقم الموظف]= " & Str(empno)), 0) If a <> 0 Then MsgBox "هذا الرقم موجود مسبقا", vbCritical, "رسالة تحذيرية" Me.Undo End If End Sub ولاحظ هنا أنه يتم عد كم مرة يتكرر الرقم في جدول الموظفين فإذا كانت النتيجة صفرا فهو لم يتكرر أما إذا كانت غير ذلك فهذا يعني انه تكرر وفي هذا الحالة يتم التحذير والتراجع عن التحديث أو الاضافة لجديد مكرر ملفك بعد التعديل : db2update.rar تحياتي تم تعديل ديسمبر 26, 2007 بواسطه محب العلم
sami120 قام بنشر ديسمبر 27, 2007 الكاتب قام بنشر ديسمبر 27, 2007 السلام عليكم عند مجموعة موظفين وكل موظف له رقم أنشأت تقرير بحيث عند ادخال رقم الموظف يطبع التقرير المشكلة هي أنني أريد بالبرنامج يعطيني رسالة تحذير عند ادخال رقم غير موجود من أرقام الموظفين مثلا لدي 3 موظفين بحيث الأول له رقم 1 والثاني له رقم 2 والثالث له رقم 3 أريد البرنامج يعطيني رسالة تحذير عند ادخال الرقم 4 بأن هذا الرقم غير موجود وشكراً
محب العلم قام بنشر ديسمبر 27, 2007 قام بنشر ديسمبر 27, 2007 نفس الجواب السابق ولكن هذه المرة تعكس الشرط وتعكس الرسالة
sami120 قام بنشر ديسمبر 27, 2007 الكاتب قام بنشر ديسمبر 27, 2007 السلام عليكم بالنسبة للتعديل عملت التعديل بحيث يكون a=0 ورسالة التحذير تكون الرقم موجود غير موجود وعند إضافة مستخدم وعند الضغظ على زر التالي أو السابق يظهر على أن هذا السجل هو الموجود فقط رغم وجود سجلين وبعد ظهرت لدي رسالة خطأ تقول أن نوع البيانات مختلفة ولا يتم التعديل على البرنامج
محب العلم قام بنشر ديسمبر 27, 2007 قام بنشر ديسمبر 27, 2007 السلام عليكم تمام ، على كل الأحول ما فعلناه سابقا بخصوص عدم تكرار الحقل عند الادخال في النموذج هو مفيد جدا للبرنامج أما بالنسبة لضبط التقرير بالطريقة التي تعرضها فقد تم أيضا في التعديل الجديد ولاحظ أن الطباعة من داخل النموذج من زر طباعة المعلومات. الملف المعدل :update3.rar تحياتي
sami120 قام بنشر ديسمبر 27, 2007 الكاتب قام بنشر ديسمبر 27, 2007 شكراً لك أخي محب العلم و الله يجزاك كل خير ويصرف عنك كل شر
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.