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

هدية

بدأه REJA في 16 يونيو 2008 · 9 رد · 1,143 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اخواني واخواتي الاعزاء

تظهر في اكسس رسائل خطأ تربك المستخدم احيانا وخاصة عندما تكون غير مفهومة وبهذه الطريقة سوف نستغل هذه الرسائل لتخدم برامجنا

والطريقة كالاتي

بعد عمل نموذج جديد ونسمية

في حدث

Private Sub Form_Error(DataErr As Integer, Response As Integer)

نكتب الامر التالي ليظهر لنا الكود الخاص بالخطأ

 Debug.Print "DataErr = "; DataErr

نقوم الان بأدخل بيانات في النموذج ونترك مثلا حقل فارغ

وعند الانتقال الى السجل التالي سوف تظهر الرسالة

post-152473-1213616902_thumb.gif

post-152473-1213616920_thumb.gif

ثم اذهب الى محرر الفجول بيسك سوف تجد رقم في

Immediate

هو رقم الكود الي نبي

post-152473-1213616953_thumb.gif

سجل رقم الكود

واذهب الى محرر فيجول بيسك مره اخرى

وفي حدث

on Error

Private Sub Form_Error(DataErr As Integer, Response As Integer) 
  Const conErrRequiredData = 3314 
  If DataErr = conErrRequiredData Then	
	MsgBox ("Please ensure that you enter a First Name and Last Name")   
	Response = acDataErrContinue  
 Else	 
 Response = acdatadisplay  
 End If
End Sub

يتم اضافة الكود اي الرقم في

Const conErrRequiredData = 3314

والرسالة يتم كتابة كما نريد ان تظهر الى المستخدم

MsgBox ("على كيفك")

post-152473-1213616974_thumb.gif

#2

مش ماشيه معايا خالص

بعد ما بطلع الخطأ

لا اجد شئ موجود فى شاشة الimmediate

مع انه لما بجيب المساعدة بتاعة الخطأ

بيدينى رقم الخطأ

كيميائى / محمد طه

#3

اشكرك اخي الكريم ................ولكن ارجوا التوضيح اكثر في الشرح لان الفكره ممتازه ونريد نطبقها.............

أرجوا المعذرة لعدم تمكني من المشاركة بشكل مستمر لانشغالي..........

.

#4

اخي الكريم شكرا لك

مرفق لك مثال وإن شاء الله يفيدك

ارجو ان تضع قيمة مكررة في الحقل سوف تظهر الرسالة معدلة

ادخل الى محرر فجول بيسك وسترى التعديلات

وانا اسف بالنسبة الى الكود الي ظاهر بالخطا لاني غشيم بالمشاركات

db2.rar

#5

اخي الكريم

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

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

27169617.gif
#6

السلام عليكم

مشاركة جميلة جدا

ولكن يظهر عنوان الرسالة Microsoft Office Access

كما موضح فى نهاية المشاركة #1

هل ممكن تغيرها ؟

Microsoft Certified DataBase Administrator MCDBA

#7

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

اخي الكريم شكرا لك

انا والله لااعرف تغيير العنوان ولكن بحاول واذا قدرت راح انزلها في المنتدى

#8

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

بعد محاولات

إليك المثال المرفق تم تغيير علامة المايكروسفت اكسس

في الرسالة وممكن ان تضع اي عنوان تريدة انت

db2.rar

#9

السلام عليكم...

يمكن تحديد عنوان الرسالة و أيضاً إعطاؤها رمزاً لأن صيغة الدالة MsgBox هي كالتالي:

	X = MsgBox(Prompt, Style, Caption)

حيث:

* Prompt هو نص الرسالة (String).

* Style يحدد عدد و نوع أزرار الرسالة، رمز الرسالة، تعريب الرسالة (من اليمين إلى اليسار). حيث نستخدم مجموعة من الثوابت المعرفة في VBA.

* Caption عنوان الرسالة (String).

و عليه فإن سطر عرض الرسالة يمكن أن يكون كالتالي:

	MsgBox ("Please ensure that you enter a First Name and Last Name", vbCritical, "Incomplete Data")

حيث استعملنا الثايت vbCritical للبارامتر الثاني (Style) لعرض رمز الخطأ في الرسالة. و ضبطنا البارامتر الثالث (Caption)، الذي يمثل عنوان الرسالة على "Incomplete Data".

و إذا أردنا تعريب الرسالة (اتجاه محاذاة و قراءة النص من اليمين إلى اليسار) فإنه يمكننا تعريف ثابت كالتالي ثم استعماله:

	Const MSG_ARABIC = vbMsgBoxRight Or vbMsgBoxRtlReading
	'
	'
	MsgBox ("Please ensure that you enter a First Name and Last Name", vbCritical Or MSG_ARABIC, "Incomplete Data")

لكني لاحظت - رغم وجود الثابتين vbMsgBoxRight و vbMsgBoxRtlReading - فإن Access يتجاهلهما و تبقى الرسالة من اليسار إلى اليمين! ربما تكون هناك مشكلة في إعدادات Access لدي، أو خاصية لم أنتبه لها، رغم أني أستعملهما في Visual Basic بشكل صحيح.

على العموم أرجو الاستفادة و السلام.

وَ قُلِ اعْمَلُوا فَسَيَرَى اللهُ عَمَلَكُمْ وَ رَسُولُهُ وَ الْمُؤْمِنُونَ

صدق الله العظيم

#10

الاخوة الاعضاء REJA + najy_zl

مجهود جميل جدا

وشرح دقيق جدا

بخصوص نص عنوان الرسالة حتي يكون من اليمين الي اليسار لا نستخدم vbMsgBoxRtlReading

فقط نستخدم vbMsgBoxRight ثم علامة + وبعد ذلك vbCritical او vbInformation

مرفق مثال الاخ REJA بعد تعديله

post-80846-1213958400_thumb.jpg

واكرر شكري لكما علي هذه المشاركة الجميلة

اخوكم فى الله

db2.rar

Microsoft Certified DataBase Administrator MCDBA

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