إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: Azure Logic Apps (قياسي)
يصف هذا الدليل كيفية إضافة عوامل تشغيل حسابية ومنطقية إلى القواعد في مجموعة القواعد باستخدام Microsoft Rules Composer.
المتطلبات الأساسية
ملف XML الذي يحتوي على مجموعة القواعد التي تريد العمل عليها.
إضافة عامل تشغيل حسابي إلى قاعدة
يمكنك إضافة عامل تشغيل حسابي إلى شرط أو إجراء في قاعدة. يصف الجدول التالي عوامل التشغيل الحسابية المتوفرة:
| عامل تشغيل حسابي | الوصف |
|---|---|
| إضافة | عامل تشغيل الإضافة الذي يضيف arg1 إلى arg2. |
| طرح | عامل تشغيل الطرح الذي يطرح arg1 من arg2. |
| ضرب | عامل تشغيل الضرب الذي يضرب arg1 في arg2. |
| قسمة | عامل تشغيل القسمة الذي يقسم arg1 على arg2. |
| الباقي | عامل التشغيل المتبقي الذي ينفذ arg1 modulo arg2. |
في Microsoft Rules Composer، قم بتحميل ملف XML الذي يحتوي على مخزن القواعد الذي تريد العمل عليه.
في نافذة RuleSet Explorer ، ابحث عن القاعدة التي تريدها وحددها.
في نافذة مستكشف الحقائق، حدد علامة التبويب المفردات .
ضمن المفردات>دالات>الإصدار 1.0، اسحب عامل التشغيل الحسابي الذي تريد وسيطة في شرط في محرر الشروط أو إجراء في محرر الإجراءات.
في وسيطات الشرط أو الإجراء، حدد قيم المعاملات اليسرى واليمين.
إذا كان للمعاملات أنواع مختلفة، يقوم محرك القواعد بإجراء ترقية رقمية تلقائية حيث يحول المحرك نوع المعاملات الأصغر إلى نوع معامل أكبر.
على سبيل المثال، افترض أنك تستخدم عامل التشغيل Add على معامل له نوع int ومعامل له نوع طويل . قبل أن ينفذ المحرك عملية إضافة ، يحول المحرك نوع int إلى النوع الطويل .
إذا كان المحرك يمكنه ترقية كلا المعاملين إلى نوع شائع، فإن المحرك يدعم الترقية المزدوجة.
على سبيل المثال، افترض أنك تستخدم عامل التشغيل Add على معامل له نوع int ومعامل له نوع uint . قبل أن ينفذ المحرك عملية إضافة ، يحول المحرك كلا النوعين من المعاملات إلى النوع الطويل .
إضافة عامل تشغيل منطقي إلى قاعدة
يمكنك إضافة عامل تشغيل منطقي إلى دالة تقييم في شرط. يصف الجدول التالي عوامل التشغيل المنطقية المتوفرة:
| عامل التشغيل المنطقي | الوصف |
|---|---|
| و | اجمع بين دالتي تقييم أو أكثر لتشكيل تعبير AND منطقي. إرجاع true إذا تم تقييم كلا التقييمين إلى true. وإلا، يتم إرجاع false. |
| أو | اجمع بين دالتي تقييم أو أكثر لتشكيل تعبير OR منطقي. إرجاع true إذا تم تقييم دالة تقييم واحدة إلى true. وإلا، يتم إرجاع false. |
| لا | نفي تعبير منطقي أو دالة تقييم. إرجاع true إذا تم تقييم دالة التقييم إلى false. وإلا، يتم إرجاع false. |
في Microsoft Rules Composer، قم بتحميل ملف XML الذي يحتوي على مخزن القواعد الذي تريد العمل عليه.
في نافذة RuleSet Explorer ، ابحث عن القاعدة التي تريدها وحددها.
في جزء IF ، وهو محرر الشروط، من القائمة المختصرة الشروط ، حدد أحد الأوامر التالية:
عامل التشغيل المنطقي الوصف إضافة منطقية AND اجمع بين دالتي تقييم أو أكثر لتشكيل تعبير AND منطقي. إضافة OR منطقي اجمع بين دالتي تقييم أو أكثر لتشكيل تعبير OR منطقي. إضافة منطقي NOT نفي تعبير منطقي أو دالة تقييم. في محرر الشروط، افتح القائمة المختصرة للمشغل، وأضف دالات التقييم أو عوامل التشغيل المنطقية المتداخلة التي تريدها.
إذا كان للمعاملات أنواع مختلفة، يقوم محرك القواعد بتحويل نوع معامل واحد لمطابقة النوع للمعامل الآخر، أو يحول الأنواع لكلا المعاملين إلى نوع شائع قبل تقييم التعبير.
معالجة القيم الفارغة
يصف القسم التالي السلوكيات المتوقعة للقيم الخالية المقترنة بالأنواع المختلفة ويوفر خيارات للتحقق من القيم الخالية أو وجود حقل أو عضو معين.
فئات .NET
بالنسبة إلى الأنواع المشتقة من نوع الكائن ، يمكنك تعيين حقولها إلى فارغة.
يمكنك تمرير القيمة الخالية كوسيطة للمعلمات التي ليست أنواع قيم، ولكن قد تحصل على خطأ في وقت التشغيل، استنادا إلى تنفيذ العضو.
لا يمكنك استخدام القيمة الخالية للمقارنة إذا لم يكن نوع الإرجاع نوع كائن.
عناصر XML
لا يقوم مستند XML بإرجاع قيمة XML كقيمة فارغة. بدلا من ذلك، هذه القيمة إما سلسلة فارغة أو خطأ "غير موجود". بالنسبة لسلسلة فارغة، قد يحدث خطأ لتحويل أنواع معينة، مثل الحقول المحددة كنوع عدد صحيح عند إنشاء قاعدة.
لا يسمح لك Microsoft Rules Composer بتعيين حقل إلى خال أو بتعيين نوع حقل إلى كائن.
من خلال نموذج الكائن، يمكنك تعيين النوع إلى Object. في هذه الحالة، تحتوي القيمة التي تم إرجاعها على النوع الذي يقيم إليه XPath، مثل Float أو Boolean أو String، استنادا إلى تعبير XPath.
التحقق من وجود أو قيمة خالية
عند كتابة القواعد، تريد بطبيعة الحال التحقق من وجود حقل قبل مقارنة قيمته. ومع ذلك، إذا كان الحقل فارغا أو غير موجود، فإن مقارنة القيمة تؤدي إلى حدوث خطأ.
على سبيل المثال، افترض أن لديك القاعدة التالية:
IF Product/Quantity Exists AND Product/Quantity > 1
إذا لم يكن المنتج/الكمية موجودا، فإن القاعدة تطرح خطأ. لحل هذه المشكلة، يمكنك تمرير عقدة أصل إلى أسلوب مساعد يقوم بإرجاع قيمة المنتج/الكمية إذا كان هذا العنصر موجودا، أو إرجاع شيء آخر إذا لم يكن هذا العنصر موجودا.
يوضح المثال التالي قاعدة أسلوب المساعد المحدثة والجديدة:
القاعدة 1
IF Exists(Product/Quantity) THEN Assert(CreateObject(typeof(Helper), Product/Quantity))
القاعدة 2
IF Helper.Value == X THEN...
كحل آخر ممكن، يمكنك إنشاء قاعدة مثل المثال التالي:
IF Product/Quantity Exists THEN CheckQuantityAndDoSomething(Product/Quantity)
في المثال السابق، تتحقق الدالة <CheckQuantityAndDoSomething> من قيمة المعلمة وتنفذ إذا تم استيفاء الشرط.
لتحديد ما إذا كانت الوسيطة الموجودة فارغة، استخدم composer:
argument is equal to <null>
إشعار
بدلا من ذلك، يمكنك تعديل خاصية حقل XPath لحقيقة XML لالتقاط أي أخطاء، ولكن هذا الأسلوب غير مستحسن.