معالجة الاستثناء

مكتمل

قد تحدث استثناءات من أي إجراء تقريباً. لهذا السبب، تحتوي معظم خصائص الإجراءات على زر عند الخطأ. يسمح هذا الزر بالوصول إلى إعدادات معالجة الاستثناءات الخاصة بالإجراء.

معالجة الاستثناءات على مستوى الإجراء

في المثال الأولي، ذكرنا أن قاعدة بيانات العميل قد يتعذر الوصول إليها، ما يتسبب في أن يُصدر الإجراء الذي يتصل بقاعدة البيانات استثناءً.

ولمنع هذا، افتح خصائص الإجراء، واضغط على الزر عند الخطأ.

معالجة الاستثناءات في خصائص الإجراء

في طريقة العرض هذه، ستتمكن من تكوين سلوك معالجة الاستثناءات للإجراء، إما عن طريق تنشيط قواعد محددة مسبقًا أو إضافة قواعد جديدة. وتدخل هذه القواعد حيز التنفيذ إذا فشل هذا الإجراء المحدد، وبالترتيب الذي تم ترتيبها به:

علامة التبويب

ملاحظة

يمكنك سحب أي قواعد مُنشأة من قِبل المستخدم وإفلاتها لإعادة ترتيبها.

في الحالة المذكورة أعلاه، على سبيل المثال، عندما يفشل هذا الإجراء، ستتم إعادة المحاولة مرة أخرى بعد ثانيتين، ثم يتم تشغيل تدفق فرعي سيرسل رسالة بريد إلكتروني لإعلام المسؤول بحالة قاعدة البيانات. بالإضافة إلى ذلك، سيؤدي الإجراء إلى تغيير قيمة المتغير الذي يشير إلى أن قاعدة البيانات معطلة.

بشكل افتراضي، تسري معالجة الاستثناءات عند حدوث أي استثناء أثناء تشغيل هذا الإجراء - ومع ذلك، يمكنك التكوين بحيث تحدث معالجة الاستثناءات فقط على نوع معين من الاستثناءات. يحتوي كل إجراء على أنواع استثناءات محددة قد ينتج عنها:

‏‫علامة التبويب

في هذا المثال، لن يتم تطبيق قواعد معالجة الاستثناءات إلا عند حدوث الاستثناء يتعذر الاتصال بمصدر البيانات.

معالجة الاستثناءات على مستوى الكتلة

هناك حالات لا يمكن فيها التأكد من الإجراء المعرّض لخطر الفشل، وليس من العملي تطبيق قواعد معالجة الاستثناءات نفسها على كل إجراء منفرد.

على سبيل المثال، فكر في تدفق يتفاعل فيه Power Automate لسطح المكتب مع مدخل الويب. في حالة عدم استجابة المدخل أو المستعرض في أي وقت أثناء هذه الهامة، يكون الإجراء المفضل هو إغلاق المستعرض وتشغيله مرة أخرى وإعادة تشغيل تفاعل مدخل الويب بالكامل من البداية. ومع ذلك، يمكن أن يمتد تفاعل مدخل الويب إلى عشرات أو حتى مئات الإجراءات؛ لذا فإن تعيين قواعد معالجة الاستثناءات نفسها لكل إجراء على حدة أمر غير عملي.

يسمح لك الإجراء عند حدوث خطأ في الكتلة بتطبيق مجموعة واحدة من قواعد معالجة الاستثناءات على كتلة كاملة من الإجراءات:

مربع حوار خصائص الإجراء

تتأثر الإجراءات الواقعة بين الإجراءين عند حدوث خطأ في الكتلة وإنهاء بقواعد معالجة استثناءات الكتلة:

مساحة العمل مع مثال لاستخدام الإجراء

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

أولويات معالجة الاستثناءات

الترتيب الذي يتم تطبيق معالجة الاستثناءات به يكون من الأسفل إلى الأعلى؛ وهذا يعني أنه في حالة فشل إجراء ما، فإن قواعد معالجة الاستثناءات الفردية الخاصة به ستصبح سارية المفعول على الفور. وإذا لم يكن ذلك كافيًا لاستئناف التدفق، فسيتم تفعيل أي معالجة استثناءات على مستوى الكتلة.

لذلك، فإنه يتم تشغيل أي قواعد لمعالجة الاستثناءات على مستوى الإجراء قبل تشغيل القواعد على مستوى الكتلة المعنية.