تشرح هذه المقالة كيفية إنشاء تعبيرات شرطية (معروفة أيضا باسم Boolean) في Access. يتم تقييم التعبير الشرطي إما إلى صواب أو خطأ، ثم يقوم بإرجاع نتيجة تفي بالشرط الذي تحدده. إذا كنت تستخدم دالات في التعبيرات الشرطية، فبإمكانك أيضا تحديد إجراء للقيم التي تفي بالشرط في التعبير وما لا تفي به. على سبيل المثال، يمكنك إنشاء تعبير يعثر على جميع المبيعات بهامش ربح 10 بالمائة أو أقل، ثم يحدد ظهور هذه الأرقام بخط أحمر، أو استبدال القيم برسالة.
في هذه المقالة
فهم التعبيرات الشرطية
التعبير الشرطي هو نوع من التعبيرات التي تختبر البيانات لمعرفة ما إذا كانت تفي بشرط معين ثم يتخذ إجراء استنادا إلى النتيجة. على سبيل المثال، يمكن أن يبحث تعبير ما عن قيم تاريخ بعد تاريخ بدء معين، ثم يعرض رسالة خطأ عندما تحاول إدخال تاريخ أقدم من تاريخ البدء المحدد.
تتخذ التعبيرات الشرطية الشكل نفسه وتستخدم بناء الجملة الأساسي نفسه الذي تستخدمه التعبيرات الأخرى، ويمكنك استخدامها بنفس الطرق التي تستخدمها مع تعبيرات أخرى:
- بالنسبة لحقول الجدول، يمكنك إضافة التعبير إلى الخاصية "قاعدة التحقق من الصحة" الخاصة بالحقل. يجب على المستخدمين بعد ذلك إدخال قيم في الحقل تتطابق مع الشروط في التعبير. على سبيل المثال، إذا كنت تستخدم تعبيرا مثل >=#1/1/2000# في حقل "التاريخ/الوقت"، فيجب على المستخدمين إدخال قيم مساوية ليوم 1 يناير 2000 أو بعده.
- بالنسبة لعناصر التحكم الموجودة في النماذج، يمكنك إضافة التعبير إلى الخاصية "مصدر عنصر التحكم " أو "قاعدة التحقق من الصحة" لعنصر التحكم. تقوم عادة بإضافة تعبيرات شرطية إلى الخاصية "قاعدة التحقق من الصحة "، وإضافة تعبيرات تحسب القيم إلى خاصية "مصدر عنصر التحكم ". على سبيل المثال، يؤدي استخدام >=#1/1/2000# في الخاصية "قاعدة التحقق من الصحة " لعنصر تحكم إلى منع المستخدمين من إدخال تاريخ غير صالح. يؤدي استخدام تعبير مثل Date() في خاصية "مصدر عنصر التحكم " إلى عرض التاريخ الحالي كقيمة افتراضية.
- بالنسبة للاستعلامات، يمكنك إضافة التعبيرات الشرطية إلى خلية فارغة في صف " الحقل "، أو يمكنك استخدام تعبير في صف "المعايير " للاستعلام. عند استخدام تعبير في صف "الحقل "، تظهر النتائج كعمود في نتائج الاستعلام. عند استخدام تعبير كمعايير لحقل موجود، يعمل التعبير كعامل تصفية ويقيد السجلات التي يقوم الاستعلام بإرجاعها.
على سبيل المثال، يمكنك استخدام هذا التعبير في صف "الحقل " الخاص بالاستعلام: =IIf([تاريخ الطلب]<=#04/01/2018#,[تاريخ الطلب],"تم إدخال الطلب بعد 1 أبريل"). يحدد التعبير معيار التاريخ (<=#04/01/2018#). عند تشغيل الاستعلام، يتم عرض كل قيم التاريخ التي تفي بالمعيار، ويتم استبدال أي قيم تاريخ لا تفي بالمعيار بالرسالة "تم إدخال طلب بعد 1 أبريل". تشرح الخطوات في المقطع إضافة تعبير إلى استعلام كيفية استخدام هذا التعبير في استعلام.
في المقابل، يؤدي استخدام هذا التعبير في الحقل "معايير " للاستعلام إلى إرجاع تلك السجلات ذات التواريخ التي تفي بالمعيار فقط: بين #04/01/2018# AND #05/15/2018#.
لمزيد من المعلومات حول إنشاء التعبيرات واستخدامها، راجع المقالة تعلم كيفية إنشاء تعبير.
إنشاء تعبير شرطي
توضح الخطوات الموجودة في هذا القسم كيفية إضافة تعبير شرطي إلى جدول، وعنصر تحكم في نموذج أو تقرير، واستعلام. تستخدم كل مجموعة خطوات تعبيرا مختلفا بعض الشيء لاختبار القيم في حقل التاريخ/الوقت واتخاذ إجراء، استنادا إلى ما إذا كانت قيم التاريخ تفي بالشرط المحدد أم لا.
إضافة تعبير إلى حقل جدول
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق الجدول الذي تريد تغييره ثم انقر فوق طريقة عرض التصميم من القائمة المختصرة.
في العمود "نوع البيانات "، انقر فوق الحقل "تاريخ/وقت".
ضمن "خصائص الحقل"، على علامة التبويب "عام "، انقر فوق مربع الخاصية "قاعدة التحقق من الصحة" واكتب التعبير التالي:
>=#01/01/2000#ملاحظة
لا تحتاج إلى استخدام تنسيق التاريخ الأمريكي. يمكنك استخدام تنسيق التاريخ للبلد/المنطقة أو الإعدادات المحلية. ومع ذلك، يجب إحاطة قيمة التاريخ بعلامات الشباك (#)، كما هو موضح.
انقر فوق العمود إلى جانب نص التحقق من الصحة واكتب السلسلة النصية التالية:
يجب أن يكون التاريخ أكبر من 1 يناير 2000.
مرة أخرى، يمكنك استخدام تنسيق التاريخ المحلي.احفظ التغييرات وانتقل إلى طريقة عرض ورقة البيانات. للقيام بذلك، انقر بزر الماوس الأيمن فوق علامة تبويب المستند للجدول ثم انقر فوق طريقة عرض ورقة البيانات من القائمة المختصرة.
اكتب قيمة تاريخ في الحقل "التاريخ/الوقت" قبل 1 يناير 2000. يعرض Access الرسالة المحددة في مربع الخاصية "قاعدة التحقق من الصحة "، ولا يمكنك مغادرة الحقل إلا إذا قمت بإدخال قيمة يقيمها التعبير على أنها true.
إضافة تعبير إلى عنصر تحكم
في جزء التنقل، انقر بزر الماوس الأيمن فوق النموذج الذي تريد تغييره ثم انقر فوق طريقة عرض التصميم من القائمة المختصرة.
انقر بزر الماوس الأيمن فوق عنصر تحكم مرتبط بحقل التاريخ/الوقت، ثم انقر فوق "خصائص " من القائمة المختصرة.
تظهر ورقة خصائص عنصر التحكم.في علامة التبويب بياناتأو الكل، انقر فوق الحقل الموجود بجانب قاعدة التحقق من الصحة واكتب التعبير التالي:
>=#01/01/2000#ملاحظة
لا تحتاج إلى استخدام تنسيق التاريخ الأمريكي. يمكنك استخدام تنسيق التاريخ للبلد/المنطقة أو الإعدادات المحلية. ومع ذلك، يجب إحاطة قيمة التاريخ بعلامات الشباك (#)، كما هو موضح.
انقر فوق العمود إلى جانب نص التحقق من الصحة واكتب السلسلة النصية التالية:
يجب أن يكون التاريخ أكبر من 1 يناير 2000.احفظ التغييرات وقم بالتبديل مرة أخرى إلى طريقة عرض النموذج. للقيام بذلك، انقر بزر الماوس الأيمن فوق علامة تبويب المستند للنموذج، ثم انقر فوق طريقة عرض النموذج من القائمة المختصرة.
إضافة تعبير إلى استعلام
في جزء التنقل، انقر بزر الماوس الأيمن فوق الاستعلام المراد تغييره ثم انقر فوق طريقة عرض التصميم من القائمة المختصرة.
انقر فوق خلية فارغة في صف " الحقل " بشبكة التصميم، واكتب التعبير التالي:
=IIf([Field_Name]<=#04/01/2018# , [Field_Name] , "التاريخ بعد 1 أبريل 2018")
أثناء كتابة التعبير، تأكد من استبدال كلا المثيلين من Field_Name باسم حقل التاريخ/الوقت. فضلا عن ذلك، إذا كان الجدول لا يحتوي على تواريخ قبل 1 أبريل 2018، فقم بتغيير التواريخ في التعبير لاستخدام البيانات.
احفظ التغييرات، ثم انقر فوق "تشغيل" لعرض النتائج.
يعمل التعبير كما يلي: تحدد الوسيطة الأولى (=IIf([Field_Name]<=#04/01/2018#) الشرط الذي يجب أن تفي به البيانات، — يجب أن تكون التواريخ في 1 أبريل 2018 أو قبل ذلك. تحدد الوسيطة الثانية ([Field_Name]) ما يراه المستخدمون عندما يكون الشرط صحيحا — التواريخ في الحقل. تحدد الوسيطة الثالثة ("التاريخ بعد 1 أبريل 2018") الرسالة التي تظهر للمستخدمين عندما البيانات لا تستوفي الشرط.
أثناء المتابعة، تذكر أنه ليست كل التعبيرات الشرطية تستخدم الدالة IIf . تذكر أيضا أن الدالة IIf هي جزء التعبير الذي يتطلب الوسيطات، وليس التعبير نفسه.
لمزيد من المعلومات حول التعبيرات وطرق استخدامها، راجع المقالة تعلم كيفية إنشاء تعبير.
أمثلة على التعبيرات الشرطية
توضح التعبيرات الموجودة في الجدول التالي بعض الطرق لحساب قيمتي صواب وخطأ. تستخدم هذه التعبيرات الدالة IIf (Immediate If) لتحديد ما إذا كان الشرط صواب أم خطأ، ثم ترجع قيمة إذا كان الشرط صحيحا وقيمة أخرى إذا كان الشرط خطأ.
راجع المقالة الدالة IIf للحصول على مزيد من المعلومات.
| التعبير | الوصف |
|---|---|
| =IIf([Confirmed] = "Yes", "Order Confirmed", "Order Not Confirmed") | عرض الرسالة "تم تأكيد الطلب" إذا كانت قيمة الحقل "تم تأكيده" هي نعم؛ وإلا، فسيتم عرض الرسالة "لم يتم تأكيد الطلب". |
| =IIf(IsNull([البلد/المنطقة])," ", [البلد/المنطقة]) | عرض سلسلة فارغة إذا كانت قيمة حقل البلد/المنطقة فارغة؛ وإلا، فسيتم عرض قيمة حقل البلد/المنطقة. |
| =IIf(IsNull([المنطقة]),[المدينة]&" "& [الرمز البريدي], [المدينة]&" "&[المنطقة]&" " &[الرمز البريدي]) | يعرض قيم حقلي المدينة والرمز البريدي إذا كانت قيمة حقل المنطقة فارغة؛ وإلا، فسيتم عرض قيم حقول المدينة والمنطقة والرمز البريدي. |
| =IIf(IsNull([RequiredDate] - [ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate]) | عرض الرسالة "التحقق من وجود تاريخ مفقود" إذا كانت نتيجة طرح قيمة الحقل تاريخ الشحن من حقل تاريخ إجراء الطلب هي خالية؛ وإلا، فسيتم عرض الفرق بين قيم حقلي تاريخ إجراء الطلب وتاريخ الشحن. |