السيناريو - استخدام مصدر البيانات وسجل المعلومات

مكتمل

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

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

لتحسين تجربة المستخدم لإجراء شريط الأوامر، سيوضح الفيديو التالي كيفية استخدام DataSourceInfo.

ملاحظة

يمكنك زيادة دقة الفيديو عن طريق تحديد النقاط الثلاث والجودة واختيار معدل بت أعلى.

توفر الوظيفة DataSourceInfo أيضاً معلومات قيمة أخرى حول أعمدة مصدر البيانات بالإضافة إلى كونها مفيدة فِي التحقق من الأذونات. يمكن أن تكون هذه المعلومات مفيدة عند تكوين تعبيرات Power Fx لشريط الأوامر، بحيث لا تحتوي على قيم قابلة للتغيير. على سبيل المثال، خذ الدالة Notify التالية التي تحدّد اسم العمود كقيمة حرفية.

Notify("Invalid value for Name")

يسمح Dataverse بتغيير اسم عرض أعمدة الجدول، فِي هذا المثال إذا تم تغيير الاسم إلى "اسم المنتج"، فستظل الرسالة معروضة على أنها "الاسم". باستخدام الصيغة التالية التي تستدعي الدالة DataSourceInfo، سيتم عرض اسم العمود المناسب دون الحاجة إلى تغيير التعبير.

Notify("Invalid value for " & DataSourceInfo(Products,DataSourceInfo.DisplayName,"sample_name")

يمكن أن توفر الدالة DataSourceInfo قيماً أخرى مفيدة مثل قيمتي min/max، إذا كان العمود مطلوباً والحد الأقصى للطول المسموح به.

يمكن أن يساعد استخدام DataSourceInfo وRecordInfo فِي تحسين تجربة المستخدم للمستخدمين الذين يتفاعلون مع تخصيصات شريط الأوامر.