اخواني رواد منتدانا الغالي
السلام عليكم ورحمة الله وبركاته
اقدم لكم اليوم مثال على توسيع نطاق الاختيار بمربع التحرير والسرد
سيقوم المثال بعرض اسماء الموظفين اما حسب الاختيار ( اي موظف واحد حسب اختياره من القائمة ) او عرض الجميع بإختيار الكلمة (الكل) والتي يتم اضافتها باستعلام توحيد بمصدر مربع التحرير والسرد.
شرح مبسط للمثال :
كما ذكرنا سابقاًَ بأنه يتم استخدام استعلام توحيد لضم كلمة ( الكل ) الى مصدر مربع التحرير والسرد .. سيتم شرح هذه النقطة لاحقاً اثناء السياق.
يحتوي هذا المثال على :
1: جدول واحد اسمه table1 ويتكون من حقلين
أ: حقل الرقم Id
ب: حقل الاسم EName
2: نموذج واحد اسمه form1 ويتكون من :
أ: مربع تحرير وسرد اسمه combo0 ومصدر الصف له ( مصدر بياناته )
هي جملة اسكيوال الموضحة ادناه .. لا حظ كيف يتم استخدام استعلام التوحيد لضم الكلمة ( الكل ) الى مصدر الصف
SELECT Table1.EName FROM Table1 UNION select "(الكل)" from table1;
ب: زر امر لفتح استعلام سيتم الحديث عنه لا حقاً ضمن السياق
3) استعلام تحديد اسمه query1 هذا الاستعلام به معيار تحت حقل الاسم للتحكم وعرض القيم المختارة من مربع التحرير والسرد وذلك بإستخدام الدالة iif كالتالي
IIf([forms]![form1]![combo0]="(الكل)";[ename];[forms]![form1]![combo0])
نلاحظ انه اذا كانت قيمة مربع التحرير والسرد تساوي الكلمة (الكل) فإن جميع القيم ستختار وذلك بتحديد الحقل [ename] كقيمة للمعيار اما اذا لم تكن قيمة مربع التحرير والسرد تساوي الكلمة (الكل) فإن المعيار سيكون قيمة مربع التحريروالسرد
[forms]![form1]![combo0]
عودة مرة اخرى الى زر الامر والموضح بالفقرة ب
يستخدم هذا الزر لفتح الاستعلام ولكن اذا كان مربع التحرير والسرد لا يحمل قيمة فستظهر رسالة تفيد بعدم وجود قيمة ويتم فتح مربع التحرير والسرد للإختيار منه وذلك باستخدام المنهج DropDown
طريقة عمل المثال :
يتم اختيار احد الاسماء الموجودة بمربع التحرير والسرد ومن ثم الضغط على زر الامر لعرض بيانات الاسم المعروض واذا تم اختيار الكل فسيتم عرض جميع الاسماء واذا لم يتم الاختيار فسيتم عرض رسالة وينقل التركيز الى مربع التحرير والسرد ثم يتم فتحه للإختيار منه.
اعتذر على الإطالة واترككم مع المثال عسى ان يكون به الفائدة
دمتم بود
