تحدثنا فى درس سابق عن الدالة الشرطية iif واستخدامتها فى برنامج الاكسيس ms access ولاحظنا أن دالة iif تستخدم مع شرط واحد واحد وفى حالة تحقق الشرط يكون هناك ناتج محدد وفى حالة عدم تحقق الشرط يكون هناك ناتج اخر.
يمكنك الوصول إلى الدرس السابق ومراجعته عن طريق الضغط على هذا الرابط ..شرح دالة iif فى برنامج الاكسيس
ولكن ماذا لو كان لدينا أكثر من شرط وأردنا اعطاء ناتج لكل شرط من هذه الشروط.
هنا نكون بحاجة إلى دالة أخرى تستطيع التعامل مع شروط متعددة وفى هذه الحالة نلجأ إلى الدالة switch
ولإنشاء حقل يمثل الحافزفى هذا الاستعلام
نكتب عنوان الحقل وليكن عنوان الحقل الحافز ثم نضغط نقطتين فوق بعض ثم نضغط على الدوال functions ثم نختر الدالة switch ونضغط عليها double click ثم نحذف expr .
نضغط على Ok لاختبار الدالة switch على هذا الشرط ثم نضغط على view لعرض الاستعلام في وضع datasheet viewكما هو موضح بالسهم أو نضغط على run
نقوم باستكمال إنشاء الدالة كما هو موضح بحيث
يمكنك الوصول إلى الدرس السابق ومراجعته عن طريق الضغط على هذا الرابط ..شرح دالة iif فى برنامج الاكسيس
ولكن ماذا لو كان لدينا أكثر من شرط وأردنا اعطاء ناتج لكل شرط من هذه الشروط.
هنا نكون بحاجة إلى دالة أخرى تستطيع التعامل مع شروط متعددة وفى هذه الحالة نلجأ إلى الدالة switch
شكل الدالة
switch (expr1;value1;expr2;value2;...)
مكونات الدالة switch
تتكون الدالة من جزئين
الجزء الأول : التعبير expr
الجزء الثاني النتيجة وهو ما سيحدث فى حالة تحقق الشرط أو التعبير المطابق true
مثال على الدالة switch
إذا كان لدينا مجموعة معلمين ولكل معلم درجة مختلفة ونريد إعطاء حافز مخصص لكل درجة فإذا كانت الدرجة معلم تكون قيمة الحافز 100 وإذا كانت الدرجة معلم أول تكون قيمة الحافز 200 و إذا كانت الدرجة معلم أول أ تكون قيمة الحفز 300 أما إذا كانت الدرجة معلم خبير تكون قيمة الحافز 400ولإنشاء حقل يمثل الحافزفى هذا الاستعلام
ننتقل إلى وضع التصميم design
view ونقف
بالماوس في خانة فارغة ثم نضغط كليك يمين ونختر build لنفتح منشيء التعبيرات expression builder
نكتب عنوان الحقل وليكن عنوان الحقل الحافز ثم نضغط نقطتين فوق بعض ثم نضغط على الدوال functions ثم نختر الدالة switch ونضغط عليها double click ثم نحذف expr .
التعبير الأول هو أنه إذا كانت درجة الكادر
تساوى معلم لذا نضغط على جدول الكادر kader ثم نضغط على اسم الكادر kadname ثم
نكتب =“معلم“ ثم
نضغط فاصلة منقوطة semi
colon
ونكتب الناتج وهو 100ويمكن اختبار ناتج الدالة بهذا الشرط الوحيد
نضغط على Ok لاختبار الدالة switch على هذا الشرط ثم نضغط على view لعرض الاستعلام في وضع datasheet viewكما هو موضح بالسهم أو نضغط على run
نفتح الاستعلام في وضع datasheet
view
نلاحظ أنه تم إنشاء حقل جديد في هذا الاستعلام عنوان هذا الحقل هو الحافز ثم أمام
كل اسم درجته معلم فإن قيمة الحافز هي 100
نقوم باستكمال إنشاء الدالة كما هو موضح بحيث
إذا كانت الدرجة تساوى معلم تكون قيمة الحافز 100 جنيه وإذا كانت الدرجة معلم أول فإن قيمة الحافز تساوى 200 جنيه وإذا كانت الدرجة معلم أول أ فإن قيمة الحافز تساوى 300 جنيه أما إذا كانت الدرجة معلم خبير فإن قيمة الحفز تساوى 400 جنيه
وفى نهاية الدالة لا ننسى اغلاق قوس نهاية الدالة ثم نضغط على ok ثم نضغط على run لتشغيل الاستعلام كما هو مشار إليه بالسهم
نلاحظ أن الدالة تعمل بشكل صحيح كما هو
موضح بالمثال وقيمة الحافز تختلف باختلاف الدرجة كما شرحنا ذلك من قبل
ليست هناك تعليقات:
إرسال تعليق