منطق مخصص

مكتمل

يوفر Microsoft Dataverse العديد من الطرق المختلفة لتنفيذ منطق مخصص.

تتوفر العديد من الخيارات لتطبيق منطق الأعمال المخصص فِي Dataverse، وتشمل:

  • قواعد العمل
  • عمليات سير العمل الكلاسيكية
  • عمليات سير عمل سحابة Power Automate
  • سير إجراءات العمل
  • الأعمدة المحسوبة
  • أعمدة القيمة المحتسبة
  • المكونات الإضافية
  • تجميعات سير العمل المخصصة
  • الإجراءات المخصصة
  • واجهة API المخصصة
  • البرمجة النصية من جانب العميل
  • مكونات التعليمة البرمجية لـ Power Apps component framework
  • تكامل ناقل خدمة Azure ومراكز الأحداث
  • خطافات الويب

إنشاء منطق مخصص

سيتعين أن يكون مهندس الحلول قادراً على تحديد أي مكون من Microsoft Power Platform يتم استخدامه وأين يتم استخدامه فِي الحل. لا توجد قواعد مفروضة على هذا القرار لأن لكل خيار إيجابيات وسلبيات.

على سبيل المثال، يمكن أن تحدث القيود التالية:

  • لا يمكنك تشغيل عمليات سير Power Automate من أعمده محسوبة أو ذات قيمة محتسبة.
  • يتم إعادة حساب أعمدة القيمة المحتسبة كل ساعة فقط.
  • يمكن لقواعد العمل فقط الوصول إلى الأعمدة الموجودة فِي النموذج للجدول الخاص بها.
  • لا يمكن لمهام سير العمل التقليدية الوصول إلى الصفوف فِي علاقات واحد إلى متعدد.
  • لن تؤدي البيانات التي تم تغييرها من خلال قاعدة عمل إلى تشغيل حدث OnChange الذي تم إنشاؤه باستخدام JavaScript.

قائمة القيود هذه ليست شاملة.

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

المعالجة المتزامنة مقابل المعالجة غير المتزامنة

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

رسم تخطيطي للعمل المتزامن مقابل العمل غير المتزامن.

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

عندما يتم تنفيذ العمليات بصورة غير متزامنة، يتم إرجاع شاشة المستخدم بعد حفظ بياناته فِي قاعدة البيانات. ستتم إضافة العملية إلى قائمة انتظار وسيتم إجراؤها فِي وقت لاحق، والذي قد يكون فِي غضون بضع ثوانٍ أو عدة دقائق أو حتى ساعات، اعتماداً على حمل العمل. يعني "غير متزامن" أنه سيتعين على المستخدمين تحديث شاشتهم لرؤية النتائج. يحدث العبء الإضافي فِي تشغيل الوظائف غير المتزامنة. ينشئ النظام الأساسي صفوفاً فِي جدولي AsyncOperation وWorkflowLog. يتم تحديث هذه الصفوف عند بدء العملية، وأثناء تقدمها، وبعد اكتمالها. يمكن تعيين الصفوف ليتم حذفها تلقائيًا. يمكن تنفيذ المكونات الإضافية لـ Dataverse ومهام سير العمل بصورة غير متزامنة. يتم تنفيذ تدفقات سحابة Power Automate بصورة غير متزامنة.

العميل مقابل معالجة الخادم

يحتاج مهندسو الحلول إلى فهم مكان تنفيذ المنطق.

تحدث صيغ تطبيق اللوحة، والبرنامج النصي للنموذج الذي يستند إلى النموذج، وقواعد العمل، ومنطق Power Apps component framework فِي واجهة المستخدم وسيرى المستخدم النتيجة على الفور. ومع ذلك، لا يتم فرض هذا المنطق إلا فِي التطبيق الذي يتم تطبيق المنطق فيه.

لا تحدث المكونات الإضافية، وتدفقات سحابة Power Automate ومهام سير العمل الكلاسيكية، وقواعد العمل (مع تعيين النطاق على جدول) إلا عندما يتم إرسال البيانات إلى الخادم من خلال تطبيق أو تدفق أو استدعاء API. لا يرى المستخدم سوى نتائج منطق الخدمة المخصص فِي تطبيقه عند تحديث البيانات. يتم فرض منطق الخادم عند استخدام أي تطبيق أو تدفق أو API.

يفرض Microsoft Power Platform قيوداً على عدد الاستدعاءات التي يمكن إجراؤها. يحتاج مهندس الحلول إلى تصميم الحل مع مراعاة هذه الحدود.