إضافة طريقة عرض أو تحرير عبر الامتداد في Dynamics 365
نُشرت: ١٦ فبراير ٢٠٢٥ م في ١١:٥٤:٥٨ ص UTC
آخر تحديث: ١٢ يناير ٢٠٢٦ م في ٨:٥٧:١٣ ص UTC
في هذه المقالة، أشرح كيفية استخدام امتداد الفئة لإضافة طريقة عرض إلى جدول ونموذج في Dynamics 365 for Operations، مع تضمين أمثلة على كود X++.
Add Display or Edit Method via Extension in Dynamics 365
في حين أن التخطيط لاستخدام طرق العرض أو التحرير في Dynamics هو أمر يجب أن يجعلك تفكر بشكل عام فيما إذا كان بإمكانك تصميم الحل الخاص بك بطريقة مختلفة، إلا أنها في بعض الأحيان تكون أفضل طريقة للقيام بذلك.
في الإصدارات السابقة من Dynamics و Axapta، كان من السهل جدًا إنشاء طرق العرض أو التحرير على الجداول والنماذج، ولكن عندما اضطررت مؤخرًا إلى إنشاء أول طريقة تحرير لي في Dynamics 365، اكتشفت أن الإجراء المتبع للقيام بذلك مختلف إلى حد ما.
توجد عدة طرق صحيحة، لكن الطريقة التي أجدها الأفضل (من حيث سهولة الاستخدام وجمال الكود) هي استخدام امتداد الفئة. نعم، يمكنك استخدام امتدادات الفئات لإضافة وظائف إلى أنواع عناصر أخرى غير الفئات - في هذه الحالة جدول، لكنها تعمل مع النماذج أيضًا.
أولًا، أنشئ فئة جديدة. يمكنك تسميتها كما تشاء، ولكن لسبب ما يجب أن تُلحق بالاسم "_Extension". لنفترض أنك تريد إضافة دالة عرض إلى CustTable، يمكنك على سبيل المثال تسميتها MyCustTable_Extension.
يجب تزيين الفئة باستخدام ExtensionOf لإعلام النظام بما تقوم بتوسيعه، كما يلي:
public final class MyCustTable_Extension
{
}
الآن يمكنك ببساطة تنفيذ طريقة العرض الخاصة بك في هذه الفئة، كما كنت ستفعل مباشرة على الجدول في الإصدارات السابقة من Dynamics - يشير "this" حتى إلى الجدول، حتى تتمكن من الوصول إلى الحقول والأساليب الأخرى.
على سبيل المثال، قد تبدو فئة تحتوي على دالة عرض بسيطة (وغير مفيدة تمامًا) تقوم فقط بإرجاع رقم حساب العميل على النحو التالي:
public final class MyCustTable_Extension
{
public display CustAccount displayAccountNum()
{
;
return this.AccountNum;
}
}
الآن، لإضافة طريقة العرض إلى نموذج (أو امتداد النموذج، إذا لم تتمكن من تعديل النموذج مباشرة)، تحتاج إلى إضافة حقل إلى النموذج يدويًا والتأكد من استخدام النوع الصحيح (سلسلة نصية في هذا المثال).
ثم، في عنصر التحكم، يمكنك تعيين DataSource إلى CustTable (أو أيًا كان اسم مصدر بيانات CustTable الخاص بك) و DataMethod إلى MyCustTable_Extension.displayAccountNum (تأكد من تضمين اسم الفئة، وإلا فلن يتمكن المترجم من العثور على الطريقة).
وهكذا تكون قد انتهيت :-)
تحديث: لم يعد من الضروري تضمين اسم فئة الامتداد عند إضافة دالة العرض إلى نموذج، ولكن كان ذلك ضروريًا عند النشر الأصلي. أبقي هذه المعلومة هنا تحسبًا لوجود بعض القراء الذين ما زالوا يستخدمون إصدارات أقدم.
قراءات إضافية
إذا أعجبك هذا المنشور، فقد تعجبك أيضًا هذه الاقتراحات:
- وضع تطوير أو اختبار آلة Dynamics 365 FO الافتراضية في وضع الصيانة
- توقف Visual Studio عند بدء التشغيل أثناء تحميل المشاريع الحديثة
- إنشاء حقل بحث لبعد مالي في Dynamics 365
