الأخوة المشرفين: لا أدري إن كنت قد وفقت في هذه المشاركة أم لا وأعني بوفقت من حيث الموضوع: مضمونه ومكان وكيفية طرحه؛ ولكم مني كل الشكر حيال ما تقومون به من نقل الموضوع أو حذفه فهذا اجتهاد مني عرضة للخطأ وقابل للتصويب.
مقدمة:
منذ فترة وأنا أقراء في أحد كتب البرمجة وقع نظري على أسطر أعجبتني فقد وافقت هوى في نفسي وأفكار أرأى بجدواها لذا أحببت أن أشرككم فيها فلعلها تنال استحسانكم وتجدون فيها الفائدة أو على الأقل تجدون فيها ما يجعلكم تُكملون قراءة جميع اسطرها.
قد يعتقد الكثير أن أعقد شيء في برمجة قواعد البيانات هو الاستعلامات التي تجمع أو تحدث عدة جداول.لكن هذا غير صحيح، فمن الممكن إنشاء نماذج متقنه تتيح لك إمكانية الوصول إلى طلبيات زبون محدد ومنها إلى تفاصيل طلبية محددة دون كتابة سطر واحد من الشيفرة. غير أنه من الصعب جداً تصميم نماذج إدخال بيانات فعالة وقوية. فبمجرد وصول البيانات إلى قاعدة البيانات، سيكون من السهل نسبياً استرجاعها، لكن يجب أن تكون برامج إدخال البيانات متأكدة من وصول المعلومات إلى مكانها الصحيح، في الوقت المناسب، وبأكملها.
وإليك النصيحة التالية حول تصميم نماذج إدخال البيانات:
أولاً: أن تكون بسيطة
لقد كتبت برامج يمكنها البحث عن السجلات اعتماداً على كل، أنواع الحقول، فقط لأكتشف أن الموظف يستخدم طريقتين فقط لإيجاد السجلات.
ثانياً: أن تدعم الطريقة التي يعمل بها مدخلي البيانات ويفضلونها
الكثير من البرامج تتيح للمستخدم اختيار المنتجات بحسب أسمائها، الكتب بحسب عناوينها، وغيرها. والحقيقة أن موظفي إدخال البيانات يعملون مع كتالوجات ويفضلون العمل مع رموز المنتجات وأرقام ISBN. إن موظفي إدخال البيانات ليسو زبائن ولا يستعرضون قاعدة البيانات، بل يصونوها.
ثالثاً: حاول نسيان الماوس:
لاتغيرالأدوات المرئية من عادة موظفي إدخال البيانات، وما يزال المستخدمون يفضلون لوحة المفاتيح على الماوس لأن أصابعهم أسرع. لقد جهزت نموذج بأقل من ساعة ثم أمضيت بقية اليوم أتأكد من صحة ترتيبTab، إتاحة المفتاح Enter في حقول معينة، تعيين مفاتيح اختصار لحقول أخرى، وغير ذلك.
باختصار، حاول نسيان الماوس. فليس هناك ما يضايق موظف إدخال البيانات أكثر من الوصول إليها. وطبعاً يجب أن تكون مفاتيح الاختصار ثابتة في كل نماذج البرنامج.
و تذكر دائماً النقاط التالية عند تصميم نماذج إدخال البيانات.
1-العمليات المعزولة: عند تصميم نماذج إدخال بيانات، اعزل كل عملية على حدة واستخدم أزراراً واضحة لبدء وإنهاء كل عملية. لإضافة سجل جديد، يجب على المستخدم نقر الزر إضافة. كما يجب عليه نقر الزر تحرير لتحرير سجل الحالي. وعندما يكون الصف الحالي قيد التحرير، يجب إلغاء تفعيل أزرار التجول، ويبقى للمستخدم خيارين فقط، إما الزر موافق أو الزر إلغاء.
2-التجول: عليك تأمين آلية مباشرة وفاعلة لإيجاد الصفوف(السجلات) عندما يضغط المستخدم المفتاح Enter في حقل فريد، عليك إيجاد السجل المطلوب. قد يطلب المستخدم أحياناً مجموعة من السجلات، مثلاً عناوين أحد الناشرين، زبائن تشترك بميزة ما(كلهم اشتروا نفس المادة خلال الربع الأخير من السنة)، وغيرها. فإذا شعرت بمثل هذه الحاجة، يجب إتاحة نموذج يستطيع المستخدم من خلاله وضع المعيار الذي يريد، استرجاع الصفوف الموافقة.
3-تجاوب مرئي: حاول تأمين نوع من التجاوب المرئي، مثل تغيير عنوان النموذج ليشير إلى العملية الحالية. يمكنك حتى أن تغير لون خلفية النموذج لتشير إلى عملية تحرير(خاصة إذا كانت هذه العملية ستؤثر على عدة صفوف). من المهم أيضاً تعيين الترتيب المناسب للمفتاح Tab لكل عناصر التحكم الموجودة على النموذج وجعل الزرين موافق و إلغاء متفاعلين مع المفتاحين Enter و Esc. إذا احتوى النموذج حقولاً لا تستخدم مع أغلبية الصفوف (كموضوع ثان اختياري)، لا تُحل هذه الحقول في ترتيب المفتاح Tab، لكن ضع مفاتيح اختصار لها للانتقال مباشرة إليها عند الحاجة. فكر أيضاً في تغيير لون صندوق النص الذي يمتلك التركيز، كإعطائه اللون الأصفر الفاتح أو الريشي(وليس لوناً صارخاً، وإنما ما يكفي للفت النظر إلى هذا العنصر).
4-التأكد من الصلاحية: حاول بقدر ماتتيح لك الشيفرة التأكد من صلاحية قيم كل الحقول، وإعلام المستخدم في حال فشل عملية ما. لا تستخدم رسائل الأخطاء المبنية داخل اللغة، بل حاول أن تضع بنفسك رسائل خطأ معبرة. فالمستخدم لا يهمه، ما إذا كان البرنامج غير قادر على تحويل نوع بيانات إلى آخر، أو غير ها من أنواع الأخطاء. ويكفي فقط رسالة تخبره أن العملية الحالية قد فشلت وتعطية الفرصة لإعادة المحاولة. وفي حال وقوع خطأ فادح. ما عليك سوى إظهار رسالة تخبر المستخدم أن البرنامج لم يتمكن من حفظ التعديلات في قاعدة البيانات ثم تعود إلى آخر صف صالح تم الوقوف عنده.
كما تعلم، يمكنك التأكد من صلاحية قيم الحقول بالطريقة الصعبة(بإنجاز كل عمليات التأكد من الصلاحية عن طريق الشيفرة البرمجية) وبالطريقة السهلة(بوضع كل ما يمكنك وضعه من قواعد التحقق من الصلاحية في تصميم قاعدة البيانات نفسها). فإذا اخترت الطريقة الثانية، عليك وضع إجراء لتصيد الخطأ قبل وقوعه ومعالجة الأخطاء المعادة من DBMS (نظم إدارة قواعد البيانات العلائقية) مثل MS ACCESS.
أخيراً: أقول أن بعض الزملاء في هذا المنتدى الرائع لديه من الخبرة في التعامل مع نماذج إدخال البيانات ما لو سطره وعبر عنه لأثرى حصيلتنا جميعاً.
وإليكم نص ما قرأت:


