تدريب - إنشاء امتداد باستخدام سلسلة أمر
أنت مطور يجب عليه أن يقوم بإجراء تخصيص لأسلوب إدراج CustTable. عند إنشاء العميل، إذا كان التقدير الائتماني للعميل أقل من 200، فيجب حظر العميل لجميع عمليات التسليم والفواتير. يجب أن تظهر مطالبة لتنبيه الشخص الذي يقوم بإدخال تفاصيل العميل.
قبل البدء
للحصول على أقصى استفادة من هذا التدريب، نوصيك بأن يكون متوفر لديك بيانات العينة القياسية المتوفرة في تطبيقات التمويل والعمليات والتي يتم تثبيتها باستخدام Lifecycle Services. ستحتاج أيضاً إلى بيئة مطور وترخيص تجريبي أو دائم باستخدام Visual Studio.
إنشاء مشروع جديد
- افتح Visual Studio، الذي يعمل كمسؤول، وافتح قائمة ملف.
- حدد جديد > مشروع.
- في مربع الحوار مشروع جديد، تأكد من تحديد Dynamics 365 في الجزء الأيسر ضمن القوالب.
- في الجزء الأوسط، حدد العمليات المالية.
- قم بتسمية مشروع ChainOfCommand.
- حدد موافق.
- افتح القائمة Dynamics 365 في الشريط.
- حدد خيارات.
- ضمن عُقدة Dynamics 365 في الجزء الأيمن، حدد المشاريع.
- حدد خانتي الاختيار الخاصتين بكل من تنظيم المشروعات حسب نوع الصنف ومزامنة قاعدة البيانات في البناء الخاص بالمشروع الذي تم إنشاؤه حديثاً.
- حدد موافق.
- في نافذة مستكشف الحلول، انقر بزر الماوس الأيمن فوق اسم مشروعك وحدد الخصائص.
- في صفحه الخصائص، قم بتغيير حقل النموذج إلى Fleet Management.
- حدد موافق.
- تحتاج الآن للتأكد من أن لديك المراجع الصحيحة.
- انتقل إلى قائمة Dynamics 365.
- حدد إدارة النماذج > تحديث معلمات النموذج.
- في القائمة المنسدلة اسم النموذج حدد Fleet Management.
- حدد التالي.
- في الصفحة حزم المراجع المحددة، تأكد من تحديد الدليل ومجموعة التطبيقات.
- بمجرد الانتهاء، حدد إنهاء.
إنشاء امتداد لأسلوب في فئة CustTable
- في نافذة مستكشف الحلول، انقر بزر الماوس الأيمن فوق مشروع ChainOfCommand.
- حدد إضافة > عنصر جديد.
- في الجزء الأيمن، حدد عناصر Dynamics 365.
- في الجزء الأوسط، حدد الفئة.
- أدخل CustTable_Extension باعتباره الاسم.
- حدد إضافة.
- في فئة CustTable_Extension أضف الكود التالي لتعيين الحقل الفوترة والتسليم قيد الانتظار إلى الكل لعرض رسالة بعد الإدراج.
[ExtensionOf(tableStr(CustTable))]
final class CustTable_Extension
{
public void insert(DirPartyType _partyType, Name _name,boolean _updateCRM)
{
if (str2Int(this.creditRating) < 200)
{
this.blocked = CustVendorBlocked::All;
info("The customer has been placed on hold due to low credit rating. Please review.");
}
next insert();
}
}
- احفظ الفئة.
- أنشئ المشروع.