تعيين قواعد عناصر WHEN و DEFAULT و COPY.

يصف هذا المقطع السلوك والتفاعلات المتوقعة عند استخدام قواعد <WHEN*> و < DEFAULT > و <COPY>.

تصف الخطوات التالية، في التسلسل الصحيح، التفاعلات التي يتم تنفيذها بواسطة Team Foundation Server و بواسطة مستخدم نموذج عنصر العمل. يتم تنفيذ الخطوات 1 و 8 و13 فقط بواسطة المستخدم.

  1. باستخدام واجهة مستخدم Visual Studio، يقوم المستخدم بإنشاء عنصر عمل جديد أو تحرير عنصر عمل موجود.

  2. تعبئة القيم الافتراضية للحقل. لكافة الحقول، استخدم أي قواعد <DEFAULT> خارج قواعد <WHEN*>.

  3. نسخ قيم الحقل. لكافة الحقول، استخدم أي قواعد <COPY> خارج قواعد <WHEN*>.‬

  4. لكافة الحقول التي تنطبق عليها قاعدة <WHEN>، قم أولاً بعمل القاعدة < DEFAULT > ثم <COPY> في الداخل.

  5. لكافة الحقول التي تنطبق عليها قاعدة <WHENNOT>، قم أولاً بعمل القاعدة < DEFAULT > ثم <COPY> في الداخل.

    ملاحظة

    يقوم Team Foundation Server بمعالجة قواعد <WHEN> دوماً قبل قواعد < WHENNOT >.

  6. لكافة الحقول التي تم تغيير قواعدها منذ الخطوة 1 و التي تتضمن قواعد < WHENCHANGED > قم أولاً بعمل القاعدة < DEFAULT > ثم القاعدة <COPY> في الداخل.

  7. السماح للمستخدم ببدء التحرير.

  8. يقوم المستخدم بتغيير قيمة حقل ومن ثم نقل التركيز من الحقل.

  9. قم برفع أي قواعد <WHEN> للحقل والتي تطابق القيمة الجديدة.

  10. قم برفع أي قواعد <WHENNOT> للحقل والتي تطابق القيمة الجديدة.

  11. قم برفع أي قواعد <WHENCHANGED> للحقل والتي تطابق القيمة الجديدة.

  12. إرجاع قدرة التحرير إلى المستخدم.

  13. يقوم المستخدم بحفظ التغييرات إلى قاعدة البيانات.

  14. لكافة الحقول، قم بتنفيذ عمليات < SERVERDEFAULT > المعرّفة للحقل بطريقة مباشرة أو غير مباشرة تحت قاعدة <WHEN> أو < WHENNOT >.

معالجة ضغط المفاتيح

عندما يستخدم مستخدم باستخدام واجهة المستخدم الرسومية لتعديل نموذج عنصر عمل، يتم تعيين قيمة جديدة كل مرة يتم فيها إدخال ضغطة مفتاح في حقل. وهذا يعني أن قاعدة <WHEN*> يمكن أن تحدث بشكل غير متوقع عند تحقق الشروط المسبقة للقاعدة.

في مثال XML التالي، سوف يتم تفريغ SubStatus أثناء كتابة "Approved Again" في حقل الحالة بسبب حدوث القاعدة <WHEN*> بمجرد قيام المستخدم بكتابة الحرف “e” في Approved حتى إذا لم تكن القيمة النهائية المقصودة هي "Approve". ولهذا السبب، فكر بعناية عند استخدام القواعد الشرطية.

<FIELD refname="MyCorp.SubStatus" />
<WHEN field="MyCorp.Status" value="Approve" >
<EMPTY />
</WHEN>
</FIELD>

راجع أيضًا:

المبادئ

فئات قاعدة الحقل: قواعد الافتراضيات، والمؤهلات، والقائمة، والإجراء، و الشروط

تحديد الشروط: عناصر WHEN و WHENNOT و WHENCHANGED و WHENNOTCHANGED