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