يمكنك استخدام التعبيرات لتنفيذ كل ما تريد على بياناتك. على سبيل المثال، تحديد عدد الأيام التي مرت منذ أن تم شحن طلبية أو دمج الاسم الأول واسم العائلة في الاسم الكامل. تعرض لك المقاطع التالية كيفية إنشاء تعبير مفصلة خطوة بخطوة.
في هذه المقالة
حساب القيم لعناصر التحكم في النماذج والتقارير |
استخدام التعبيرات كمعايير استعلام تعيين قيم افتراضية لعناصر تحكم |
حساب القيم لعناصر التحكم في النماذج والتقارير
عند استخدام تعبير كمصدر بيانات لعنصر تحكم، تقوم بإنشاء عنصر تحكم محسوب. على سبيل المثال، لنفترض وجود تقرير يعرض سجلات مخزون متعددة وتريد إنشاء الإجمالي في تذييل التقرير الذي يجمع كل عناصر الأسطر في التقرير.
لحساب الإجمالي، ضع عنصر تحكم مربع نص في تذييل التقرير، ثم قم بتعيين الخاصية ControlSource لمربع النص إلى التعبير التالي:
=Sum([table_field])
في هذه الحالة، يكون table_field اسم الحقل الذي يحتوي على قيم الإجمالي الفرعي. يمكن أن يكون مصدر ذلك الحقل جدولاً أو استعلاماً. تحسب الدالة Sum الإجمالي لكل قيم table_field.
الإجراء
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق النموذج الذي تريد تغييره، ثم انقر فوق طريقة عرض التخطيط أو طريقة عرض التصميم من القائمة المختصرة.
-
حدد عنصر التحكم الذي ترغب في إدخال التعبير فيه.
-
إذا لم تكن "صفحة الخصائص" معروضة مسبقاً، فاضغط على F4 لعرضها.
-
لإنشاء تعبير يدوياً، ضمن علامة التبويب بيانات في ورقة الخصائص، انقر فوق الخاصية ControlSource في مربع النص ثم اكتب = متبوعة ببقية التعبير. على سبيل المثال، لحساب الإجمالي الفرعي المذكور أعلاه، اكتب =Sum([table_field])، وتأكد من أنك استبدلت table_field باسم الحقل.
-
لإنشاء تعبير باستخدام منشئ التعبير، انقر فوق الزر إنشاء في مربع الخاصية.
بعد إكمال التعبير، ستبدو صفحة الخصائص بهذا الشكل:
استخدام التعبيرات كمعايير استعلام
يمكنك استخدام المعايير في استعلام لتضييق نطاق نتائج الاستعلام. ويمكنك إدخال المعايير كتعبير ويُرجع Access الصفوف التي تتطابق مع التعبير فقط.
على سبيل المثال، افترض أنك تريد أن تشاهد جميع الطلبيات التي وقع تاريخ شحنها في الأشهر الثلاثة الأولى من العام 2017. لإدخال المعايير، أدخل التعبير التالي في الخلية معايير للعمود "التاريخ/الوقت" في الاستعلام. يستخدم هذا المثال عمود "التاريخ/الوقت" يسمى تاريخ الشحن. لتعريف نطاق تاريخ، أدخل المعايير بالطريقة التالية:
Between #1/1/2017# And #3/31/2017#
سيشبه العمود تاريخ الشحن التالي.
بالنسبة إلى كل سجل في جدول الطلبات، إذا كانت القيمة الموجودة في العمود تاريخ الشحن تقع في نطاق التاريخ الذي تحدده، يتم تضمين السجل في إخراج الاستعلام. لاحظ أنك تحيط التواريخ بعلامات الشباك (#) في التعبير. يعامل Access القيمة الموجودة داخل علامتي الشباك كقيم من نوع بيانات "التاريخ/الوقت". وتُمكنك معاملة هذه القيم كبيانات "تاريخ/وقت" من إجراء عمليات حسابية على هذه القيم، مثل طرح تاريخ من آخر.
الإجراء
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق الاستعلام المراد تغييره، ثم انقر فوق طريقة عرض التصميم من القائمة المختصرة.
-
انقر في الخلية معايير في العمود حيث تريد إدخال المعايير.
-
لإنشاء تعبير يدوياً، اكتب تعبير المعايير. لا تضع عامل التشغيل = قبل تعبير المعايير.
-
لإنشاء التعبير باستخدام منشئ التعبير، على الشريط، انقر فوق تصميم، وفي المجموعة إعداد الاستعلام انقر فوق منشئ .
إذا كنت بحاجة إلى مساحة أكبر لتحرير التعبير فيها، فضع المؤشر في الخلية معايير ثم اضغط على SHIFT+F2 لعرض المربع تكبير/تصغير:
تلميح لجعل النص أكثر قابلية للقراءة، حدد الخط.
إنشاء حقل محسوب في استعلام
لنفترض أنك تصمم استعلاماً، وتريد عرض نتائج عملية حسابية باستخدام الحقول الأخرى في الاستعلام. فلإنشاء الحقل المحسوب، عليك إدخال تعبير في خلية فارغة في صف الحقل في الاستعلام. على سبيل المثال، إذا كان لديك استعلام يحتوي على الحقل الكمية والحقل سعر الوحدة، فيمكنك ضرب الحقلين لإنشاء حقل محسوب لـ السعر المفصل بإدخال التعبير التالي في صف الحقل الخاص بالاستعلام:
Extended Price: [Quantity] * [Unit Price]
إن بدء التعبير بالنص Extended Price: يؤدي إلى تسمية العمود الجديد السعر المفصل ويُعرف هذا الاسم غالباً بالاسم المستعار. وإذا لم تضع اسماً مستعاراً، فسيقوم Access بإنشاء اسم مثل Expr1. .
عند تشغيل الاستعلام، يقوم Access بإجراء عملية حسابية على كل صف، كما هو مبين في الرسم التوضيحي التالي:
الإجراء
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق الاستعلام المراد تغييره، ثم انقر فوق طريقة عرض التصميم من القائمة المختصرة.
-
انقر فوق خلية الحقل في العمود حيث تريد إنشاء الحقل المحسوب.
-
لإنشاء التعبير يدوياً، اكتبه.
لا تضع عامل التشغيل = قبل تعبير المعايير؛ وبدلاً من ذلك، ابدأ التعبير بوصف متبوع بعلامة النقطتين. على سبيل المثال، اكتب Extended Price: لتوفير وصف لتعبير يقوم بإنشاء حقل محسوب باسم السعر المفصل. ثم أدخل المعايير للتعبير بعد علامة النقطتين.
-
لإنشاء التعبير باستخدام منشئ التعبير، على الشريط، انقر فوق تصميم، وفي المجموعة إعداد الاستعلام، انقر فوق منشئ.
إنشاء حقل محسوب في جدول
في Access، يمكنك إنشاء حقل محسوب في جدول. ويؤدي ذلك إلى التخلص من الحاجة إلى استعلام منفصل لإجراء العمليات الحسابية. فعلى سبيل المثال، إذا كان لديك جدول يسرد الكمية والسعر ونسبة الضريبة لكل عنصر في طلب ما، فيمكنك إضافة حقل محسوب يعرض السعر الإجمالي كما يلى:
[Quantity]*([UnitPrice]+([UnitPrice]*[TaxRate]))
لا يمكن أن تتضمن العملية الحسابية الحقول من استعلامات أو جداول أخرى وتكون نتائج العملية الحسابية للقراءة فقط.
الإجراء
-
افتح الجدول بالنقر نقراً مزدوجاً فوقه في "جزء التنقل".
-
قم بالتمرير أفقياً إلى العمود الموجود في أقصى يسار الجدول وانقر فوق عنوان العمود انقر للإضافة.
-
في القائمة التي تظهر، انقر فوق حقل محسوب، ثم انقر فوق نوع البيانات الذي تريده للنتيجة. Access يعرض منشئ التعبيرات.
-
أدخل العملية الحسابية التي تريدها لهذا الحقل، على سبيل المثال:
[Quantity] * [Unit Price]
بالنسبة للحقل المحسوب، لا تبدأ التعبير بعلامة المساواة (=).
-
انقر فوق موافق.
يضيف Access الحقل المحسوب، ثم يقوم بتمييز عنوان الحقل لكي تتمكن من كتابة اسم حقل.
-
اكتب اسماً للحقل المحسوب، ثم اضغط على ENTER.
تعيين قيم افتراضية لحقل جدول
يمكنك استخدام تعبير لتعيين قيمة افتراضية لحقل في جدول، وهي قيمة يستخدمها Access للسجلات الجديدة إلا إذا تم توفير قيمة أخرى. على سبيل المثال، لنفترض أنك تريد إدراج التاريخ والوقت تلقائياً في حقل يسمى OrderDate في أي وقت يقوم فيه أحد الأشخاص بإضافة سجل جديد. للقيام بذلك، يمكنك استخدام التعبير التالي:
Now()
الإجراء
-
في "جزء التنقل"، انقر نقراً مزدوجاً فوق الجدول الذي تريد تغييره.
يفتح Access الجدول في طريقة عرض "ورقة البيانات".
-
حدد الحقل المراد تغييره.
-
على الشريط، انقر فوق حقول الجدول، وفي المجموعة خصائص ، انقر فوق القيمة الافتراضية. Access يعرض منشئ التعبيرات.
-
اكتب التعبير في المربع وتأكد من أن التعبير يبدأ بعلامة المساواة (=).
ملاحظة إذا قمت بربط عنصر تحكم بحقل جدول وكان لكل منهما قيم افتراضية، فستأخذ القيمة الافتراضية لعنصر التحكم الأسبقية على حقل الجدول.
تعيين قيم افتراضية لعناصر تحكم
إن الخاصية القيمة الافتراضية الخاصة بعنصر التحكم هي من الأماكن الأخرى التي يشيع استخدام التعبير فيها. يعتبر سلوك الخاصية قيمة افتراضية لعنصر التحكم مشابهاً لسلوك الخاصية قيمة افتراضية لحقل في جدول. على سبيل المثال، لاستخدام التاريخ الحالي كقيمة افتراضية لمربع نص، يمكنك استخدام التعبير التالي:
Date()
يستخدم هذا التعبير الدالة Date لإرجاع التاريخ الحالي، وليس الوقت. إذا قمت بربط مربع النص بحقل جدول، وكان للحقل قيمة افتراضية، فتأخذ القيمة الافتراضية لعنصر التحكم الأسبقية على حقل الجدول. ويعد من الأفضل دائماً تعيين الخاصية قيمة افتراضية للحقل في الجدول. وبهذه الطريقة، إذا حددت عدة عناصر تحكم لنماذج مختلفة في حقل الجدول نفسه، فسيتم تطبيق القيمة الافتراضية نفسها لكل عنصر تحكم للمساعدة على ضمان إدخال البيانات في كل نموذج بصورة متناسقة.
الإجراء
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق النموذج أو التقرير الذي تريد تغييره، ثم انقر فوق طريقة عرض التصميم أو طريقة عرض التخطيط من القائمة المختصرة.
-
حدد عنصر التحكم الذي تريد تغييره.
-
إذا لم تكن صفحة الخصائص معروضة مسبقاً، فاضغط على F4 لعرضها.
-
انقر فوق علامة التبويب الكل في صفحة الخصائص، ثم انقر فوق مربع الخاصية قيمة افتراضية.
-
اكتب التعبير، أو انقر فوق الزر إنشاء في مربع الخاصية لإنشاء تعبير باستخدام منشئ التعبير.
إضافة قاعدة التحقق من الصحة إلى حقل جدول أو سجل
إن التعبيرات مفيدة جداً للتحقق من صحة البيانات عند إدخالها في قاعدة البيانات، وهي تمنع إدخال البيانات غير الصحيحة. في الجداول، يتوفر نوعان من قواعد التحقق من الصحة: وهما قواعد التحقق من صحة الحقول (التي تمنع المستخدمين من إدخال البيانات غير الصحيحة في حقل واحد) وقواعد التحقق من صحة السجلات (التي تمنع المستخدمين من إنشاء السجلات التي لا تتوافق مع قاعدة التحقق من الصحة). يمكنك استخدام التعبيرات لنوعي قواعد التحقق من الصحة.
فعلى سبيل المثال، لنفترض أن لديك جدول يحمل اسم المخزون ويحتوي على حقل يحمل اسم الوحدات الموجودة وتريد تعيين قاعدة تفرض على المستخدمين إدخال قيمة أكبر من الصفر أو مساوية لها. بعبارات أخرى، لا يمكن أن تساوي قيمة المخزون رقماً سالباً. يمكنك القيام بذلك باستخدام التعبير التالي كقاعدة التحقق من صحة حقل في الحقل الوحدات الموجودة:
>=0
الإجراء: أدخل قاعدة تحقق من صحة سجل أو حقل
-
في "جزء التنقل"، انقر نقراً مزدوجاً فوق الجدول الذي ترغب في تغييره. يفتح Access الجدول في طريقة عرض "ورقة البيانات".
-
بالنسبة إلى قاعدة التحقق من صحة حقل، حدد الحقل الذي تريد تغييره.
-
على الشريط، انقر فوق حقول الجدول، ثم في المجموعة التحقق من صحة الحقل انقر فوق التحقق من الصحة، ثم انقر فوق قاعدة التحقق من صحة الحقل أو قاعدة التحقق من الصحة. Access يعرض منشئ التعبيرات.
-
ابدأ بكتابة المعايير التي تريدها. على سبيل المثال، بالنسبة إلى قاعدة التحقق من صحة الحقل التي تتطلب أن تكون كل القيم أكبر من أو تساوي الصفر، اكتب ما يلي:
>=0
لا تضع علامة المساواة (=) قبل التعبير.
تكون تعبيرات التحقق من الصحة تعبيرات منطقية، ما يعني أنها تساوي True أو False لأي قيمة إدخال محددة. يجب أن تكون قيمة قاعدة التحقق من الصحة True وإلا فلن يحفظ Access الإدخال وسيعرض رسالة تحقق من الصحة تشير إلى الخطأ. في هذا المثال، إذا أدخلت قيمة لحقل الوحدات الموجودة أقل من الصفر، فتكون قيمة قاعدة التحقق من الصحة False ولا يقبل Access القيمة. إذا لم تقم بإدخال رسالة التحقق من الصحة كما هو مبين في المقطع التالي، فسيعرض Access رسالته الخاصة للإشارة إلى أن القيمة التي أدخلتها تحظرها قاعدة التحقق من الصحة الخاصة بالحقل.
الإجراء: إدخال رسالة التحقق من الصحة
لتسهيل استخدام قاعدة البيانات، يمكنك إدخال رسائل مخصصة للتحقق من الصحة. وهذا سيؤدي إلى استبدال الرسائل العامة التي يعرضها Access عندما لا تطابق البيانات قاعدة التحقق من الصحة. يمكنك استخدام رسالة التحقق من الصحة لتوفير معلومات معينة تساعد المستخدم على إدخال البيانات الصحيحة، على سبيل المثال "لا يمكن أن تكون قيمة "الوحدات الموجودة" رقماً سالباً."
-
في "جزء التنقل"، انقر نقراً مزدوجاً فوق الجدول الذي تريد تغييره.
يفتح Access الجدول في طريقة عرض "ورقة البيانات".
-
بالنسبة إلى رسالة التحقق من صحة الحقل، حدد الحقل الذي قمت بإضافة قاعدة التحقق من الصحة إليه.
-
على الشريط، انقر فوق حقول الجدول، ثم في المجموعة التحقق من صحة الحقل انقر فوق التحقق من الصحة، ثم انقر فوق رسالة التحقق من صحة الحقل أو رسالة التحقق من الصحة.
-
في مربع الحوار إدخال رسالة التحقق من الصحة، اكتب الرسالة التي ترغب في ظهورها في حالة عدم توافق البيانات مع قاعدة التحقق من الصحة، ثم انقر فوق موافق.
إضافة قاعدة التحقق من الصحة إلى عنصر تحكم
بالإضافة إلى حقول الجداول والسجلات، تحتوي عناصر التحكم أيضاً على الخاصية قاعدة التحقق من الصحة التي يمكن أن تقبل تعبيراً. على سبيل المثال، لنفترض أنك تستخدم نموذجاً لإدخال نطاق التاريخ لتقرير، وتريد التأكد من أن تاريخ البدء لا يقع قبل 2017/1/1. يمكنك تعيين خصائص قاعدة التحقق من الصحة ونص التحقق من الصحة لمربع النص حيث تقوم بإدخال تاريخ البدء على ما يلي:
الخاصية |
الإعداد |
---|---|
قاعدة التحقق من الصحة |
>=#2017/1/1# |
نص التحقق من الصحة |
يتعذر إدخال تاريخ أقدم من 2017/1/1. |
إذا حاولت إدخال تاريخ أقدم من 1/1/2017، فستظهر رسالة وتعرض النص في الخاصية نص التحقق من الصحة . إذا لم يتم إدخال أي نص في مربع الخاصية نص التحقق من الصحة ، فسيعرض Access رسالة عامة. بعد أن تنقر فوق موافق، سيرجعك Access إلى مربع النص.
يؤدي تعيين قاعدة التحقق من الصحة لحقل جدول إلى فرض القاعدة في قاعدة البيانات بالكامل، حيثما يتم تعديل هذا الحقل. أو، يؤدي تعيين قاعدة التحقق من الصحة لعنصر تحكم في نموذج إلى فرض القاعدة عند استخدام النموذج فقط. قد يفيد تعيين قواعد التحقق من الصحة بشكل منفصل لحقول الجداول وعناصر التحكم في النماذج في حال أردت إنشاء قواعد مختلفة للتحقق من الصحة لمستخدمين مختلفين.
الإجراء
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق النموذج أو التقرير الذي تريد تغييره، ثم انقر فوق طريقة عرض التصميم أو طريقة عرض التخطيط من القائمة المختصرة.
-
انقر بزر الماوس الأيمن فوق عنصر التحكم المراد تغييره، ثم انقر فوق خصائص من القائمة المختصرة. يعرض Access صفحة الخصائص لعنصر التحكم.
-
انقر فوق علامة التبويب الكل، ثم انقر فوق مربع الخاصية قاعدة التحقق من الصحة.
-
اكتب التعبير، أو انقر فوق الزر إنشاء في مربع الخاصية لإنشاء تعبير باستخدام منشئ التعبير.
لا تضع عامل التشغيل = قبل التعبير.
-
لتخصيص النص الذي يظهر في حالة إدخال المستخدم لبيانات غير مطابقة لقاعدة التحقق من الصحة، اكتب النص الذي تريد ظهوره في الخاصية نص التحقق من الصحة.
تجميع البيانات وفرزها في التقارير
استخدم الجزء التجميع والفرز والإجمالي لتعريف مستويات التجميع وترتيبات الفرز للبيانات في التقرير. وعادةً، تقوم بتجميع حقل تحدده من قائمة أو فرزه. ومع ذلك، إذا أردت إجراء تجميع أو فرز على قيمة محسوبة، فيمكنك إدخال تعبير بدلاً من ذلك.
إن التجميع هو عملية جمع أعمدة تحتوي على قيم متكررة. على سبيل المثال، افترض أن قاعدة البيانات تحتوي على معلومات مبيعات لمكاتب في مدن مختلفة وأن أحد التقارير في قاعدة البيانات يسمى "المبيعات حسب المدينة". يقوم الاستعلام الذي يوفر البيانات لهذا التقرير بجمع البيانات حسب قيم المدن. تؤدي عملية التجميع من هذا النوع إلى جعل المعلومات سهلة القراءة والفهم.
في المقابل، فإن الفرز هو عملية فرض ترتيب فرز على الصفوف (السجلات) في نتائج الاستعلام. على سبيل المثال، يمكنك فرز السجلات حسب قيم المفتاح الأساسي (أو مجموعة أخرى من القيم في حقل آخر) إما بترتيب تصاعدي أو تنازلي، أو يمكنك فرز السجلات حسب حرف واحد أو أكثر بترتيب معين، أبجدي مثلاً.
الإجراء: إضافة التجميع والفرز إلى تقرير
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق التقرير الذي تريد تغييره، ثم انقر فوق طريقة عرض التخطيط أو طريقة عرض التصميم من القائمة المختصرة.
-
على الشريط، انقر فوق تصميم التقرير، وفي المجموعة تجميع & الإجماليات ، انقر فوق تجميع & فرز. يظهر الجزء التجميع والفرز والإجمالي أسفل التقرير.
-
لإضافة مستوى تجميع إلى التقرير، انقر فوق إضافة تجميع.
-
لإضافة ترتيب فرز إلى التقرير، انقر فوق إضافة فرز.
يظهر مستوى تجميع أو ترتيب فرز جديد في الجزء، بالإضافة إلى قائمة بالحقول التي توفر البيانات للتقرير. ويُظهر الرسم التوضيحي التالي مستوى تجميع نموذجي جديد (تجميع حسب الفئة) وترتيب الفرز (فرز حسب الشركة المصنّعة)، بالإضافة إلى قائمة تحتوي على الحقول المتوفرة للتجميع والفرز:
-
ضمن قائمة الحقول المتوفرة، انقر فوق تعبير للبدء باستخدام منشئ التعبير.
-
أدخل التعبير الذي تريد استخدامه في مربع التعبير (المربع العلوي) في "منشئ التعبير". وتأكد أنك بدأت التعبير بعامل التشغيل علامة المساواة (=).
الإجراء: إضافة تعبير إلى تجميع أو فرز موجود
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق التقرير الذي تريد تغييره، ثم انقر فوق طريقة عرض التخطيط أو طريقة عرض التصميم من القائمة المختصرة.
-
انقر فوق مستوى التجميع أو ترتيب الفرز المراد تغييره.
-
انقر فوق السهم لأسفل بجانب تجميع حسب (لمستويات التجميع) أو فرز حسب (لترتيبات الفرز). تظهر قائمة تحتوي على الحقول المتاحة.
-
أسفل القائمة التي تحتوي على الحقول، انقر فوق تعبير للبدء باستخدام منشئ التعبير.
-
اكتب التعبير في مربع التعبير (المربع العلوي) في "منشئ التعبير". وتأكد أنك بدأت التعبير بعامل التشغيل علامة المساواة (=).
التحكم في إجراءات الماكرو التي يتم تشغيلها
قد ترغب أحياناً في تنفيذ إجراء أو سلسلة من الإجراءات في ماكرو فقط إذا كان الشرط المحدد صحيحاً. على سبيل المثال، لنفترض أنك تريد تشغيل إجراء ماكرو فقط عندما تكون القيمة الموجودة في مربع نص أكبر من أو تساوي 10. لتعيين هذه القاعدة، يمكنك استخدام تعبير في كتلة If في الماكرو لتحديد الشرط في الماكرو.
في هذا المثال، افترض أن مربع النص يسمى "العناصر". يكون التعبير الذي يقوم بتعيين الشرط هو:
[Items]>=10
الإجراء
-
في "جزء التنقل"، انقر بزر الماوس الأيمن فوق الماكرو المراد تغييره، ثم انقر فوق طريقة عرض التصميم من القائمة المختصرة.
-
انقر فوق كتلة If المراد تعديلها أو أضف كتلة If من الجزء "كتالوج الإجراء".
-
انقر فوق السطر العلوي لكتلة If.
-
اكتب التعبير الشرطي في المربع، أو انقر فوق الزر إنشاء بجوار مربع التعبير لبدء استخدام منشئ التعبير.
يجب أن تكون قيمة التعبير الذي تكتبه منطقية، مما يعني أنه يجب أن يكون معيناً إلى True أو False. تعمل إجراءات الماكرو داخل كتلة If فقط عندما يكون الشرط True.