إضافة مستخدمي Office 365 إلَى تطبيقك

مكتمل

يتيح لك اتصال مستخدمو Office 365 لـ Power Apps الوصول إلَى ملفات تعريف المستخدمين فِي مؤسستك باستخدام حساب Office 365 الخاص بك. يمكنك تنفيذ العديد مِن الإجراءات، مثل الحصول على ملف التعريف الخاص بك أو الحصول على ملف تعريف المستخدم أو الحصول على مدير المستخدم أو الحصول على التقارير المباشرة.

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

إضافة اتصال

مصدر بيانات مستخدمي Office 365 عبارة عن موصل قياسي يمكن استخدامه فِي Power Apps. لإضافة هذا الموصل، حدِّد إضافة البيانات مِن شريط الأوامر، وأدخل "مستخدمو Office 365" فِي حقل البحث. حدّد مستخدمي Office 365 مِن القائمة، وفي مربع الحوار الذي يظهر مع اتصالك، حدِّد اتصال مستخدمي Office 365 لديك.

لقطة شاشة لأيقونة البيانات مع زر إضافة البيانات ونتائج البحث عن المكتب.

لقطة شاشة لنافذة إضافة البيانات مع تحديد مستخدمي Office 365.

قد ترى مربع حوار مشابهاً للمربع أدناه، إذا كانت هذه هي المرة الأولى التي تضيف فيها هذا الموصل فِي هذه البيئة. حدّد "اتصال" لإضافة هذا الاتصال.

لقطة شاشة لنافذة مستخدمو Office 365 مع زر الاتصال.

معلومات ملف تعريف المستخدم

يتم استدعاء معلومات ملف تعريف المستخدم مِن خلال إجراء مستخدمي Office 365 MyProfile. وبالمثل، يمكننا الحصول على معلومات حول المستخدمين الآخرين مِن خلال استدعاء إجراء SearchUser. لديك عدد قليل مِن الخيارات للحصول على معلومات المستخدم فِي تطبيق اللوحة. للحصول على معلومات حول المستخدم الذي يستخدم التطبيق، يمكنك إما استخدام الدالة فِي App OnStart أو OnSelect مِن الزر.

تخزين معلومات ملف تعريف المستخدم باستخدام App OnStart

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

حدّد التطبيق، وحدّد خاصية OnStart، وأضف الصيغة التالية.

Set(varUserInfo, Office365Users.MyProfileV2())

لقطة شاشة لـ OnStart property مع عرض الصيغة.

لملء المتغير الخاص بنا، حدِّد علامة الحذف بجوار التطبيق ، وحدّد تشغيل OnStart.

لقطة شاشة للخاصية OnStart مع عرض الصيغة.

بعد ملء متغير السجل العمومي varUserInfo الآن، يمكنك الاتصال بهذه المعلومات فِي أي مكان فِي التطبيق. على سبيل المثال، فِي خاصية Default لعنصر تحكم إدخال النص، يمكنك إضافة varUserInfo.displayName.

النص البديل

تُظهر الصورة أدناه السمات التي يمكن ملؤها تلقائيًا فِي تطبيقك، مما يوفر وقت المستخدم مقابل إدخالها يدوياً.

لقطة شاشة لمعلومات ملف تعريف المستخدم.

تتضمن البيانات التي تم جمعها مِن إجراء MyProfileV2 المعلومات التالية مِن ملف تعريف مستخدم Office 365 الخاص بالمستخدم: id وdisplayالاسم وgivenالاسم وsurالاسم وmail وmailNickالاسم وaccountEnabled وuserPrincipalالاسم وdepartment وjobTitle وmobilePhone وbusinessPhonescity وcompanyالاسم وcountry, officeLocation وpostalCode.

عنصر تحكم OnSelect

إذا كنت بحاجة إلَى جمع بيانات حول مستخدم آخر (شخص آخر غير المستخدم الحالي)، فيمكنك استخدام إجراء SearchUser. فلنتدرب على هذا عن طريق إضافة عنصر تحكم ComboBox ضمن حقل إدخال نص "عنوان الشارع".

قم بتعيين خصائص combo box الخاص بك على النحو التالي:

الخاصية القيمة
DefaultSelectedItems Office365Users.SearchUser({searchTerm:varUserInfo.displayName})
DisplayFields ["DisplayName"]
IsSearchable true
Items Office365Users.SearchUser()
SelectMultiple false
OnChange Set(varSearchUserInfo, Office365Users.UserProfile(Self.Selected.Id))

يجمع إجراء SearchUser بيانات مماثلة كإجراء MyProfile ، لكن البيانات تكون مختلفة قليلاً. يعرض إجراء SearchUser (افتراضياً) المعلومات التالية حول المستخدم:

  • City
  • Companyالاسم
  • Country
  • Department
  • Displayالاسم
  • Givenالاسم
  • ID
  • JobTitle
  • Mail
  • MailNickالاسم
  • mobilePhone
  • OfficeLocation
  • PostalCode
  • Surالاسم
  • TelephoneNumber
  • UserPrincipalالاسم
  • AccountEnabled
  • BusinessPhones

ملاحظة

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

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

التسمية إدخال النص الافتراضي
الاسم الكامل (اسم العرض) varSearchUserInfo.Displayالاسم
المسمى الوظيفي varSearchUserInfo.JobTitle
Department varSearchUserInfo.Department
البريد الإلكتروني varSearchUserInfo.Mail
City varSearchUserInfo.City
Country varSearchUserInfo.Country
الرمز البريدي varSearchUserInfo.PostalCode

لاحظ أنه لا يتوفر لدينا "عنوان شارع" أو "ولاية" فِي بيانات SearchUser. لاحظ أيضاً أن جميع حقول البيانات تبدأ بحرف كبير مع بيانات SearchUser (بدلاً مِن حرف صغير).

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

لقطة شاشة لمربع البحث.

لقطة شاشة لنتائج البحث للمستخدم.

يمكنك وضع تطبيقك فِي وضع "التشغيل" ومحاولة البحث عن مستخدمين آخرين. الآن بعد أن رأيت كيف يمكننا الحصول على معلومات للمستخدمين الآخرين، فلنلقِ نظرة على بعض بيانات الإجراءات الأخرى المتوفرة مع موصل مستخدمي Office 365.

معلومات المدير

بالإضافة إلَى الحصول على معلومات المستخدم، يمكنك الحصول على معلومات مدير المستخدم.

باستخدام عنصر تحكم ComboBox الذي أنشأته، قم بتعديل خاصية OnChange إلى: Set(varSearchUserInfo, Office365Users.Manager(ComboBox1.Selected.Id)).

لقطة شاشة لمعلومات المدير.

ملاحظة

إذا حدِّد ت مستخدماً ليس لديه مدير، فستلاحظ أن حقول إدخال النص قد تُظهر أخطاء عندما يكون تطبيقك فِي وضع التحرير. وهذا لأن Power Apps يُرجع بيانات خطأ تفيد بأنه لا يوجد أي مدير لهذا المستخدم. يمكنك بعد ذلك استخدام هذه المعلومات لعرض الإعلامات للمستخدمين، مثل: "هذا الشخص ليس لديه مدير". تقوم الدالة Errors بإرجاع معلومات حول الخطأ الخاص بك، دون الإخلال بتجربة المستخدم.

يمكنك التأكد مِن أن هذا هو المدير الصحيح فِي مركز مسؤولي Microsoft 365 ضمن المستخدمين النشطين. يؤدي تحديد اسم العرض للمستخدم إلَى فتح لوحة على الجانب الأيمن مِن الشاشة، حيث يمكنك عرض هذه المعلومات.

لقطة شاشة لمعلومات المدير فِي Microsoft Entra ID.

عرض كل التقارير المباشرة

على غرار البحث عن معلومات المدير، يتيح لك موصل مستخدمو Office 365 أيضًا العثور على جميع المستخدمين الذين يقدمون تقاريرهم مباشرة إلَى مدير واحد.

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

أضف عنصر تحكم ComboBox، وقم بتعيين خاصية Items إلَى Office365Users.SearchUser(). بعد ذلك، قم بتعيين خاصية SelectMultiple إلَى false، وخاصية DisplayFields["DisplayName"]، وخاصية OnChange إلَى ClearCollect(colDirectReports, Office365Users.DirectReportsV2(Self.Selected.Id).value).

لنقدم الآن معلومتين؛ الأول هو معرفة عدد المستخدمين الذين يقدمون تقاريرهم إلَى المدير مباشرةً، والآخر هو قائمة بأسمائهم.

للحصول على عدد مِن تقارير المستخدمين لمدير محدد، أضف عنصر تحكم التسمية، وقم بتعيين خاصية Text الخاصة به إلَى CountRows(colDirectReports). تحسب هذه الصيغة عدد الصفوف الموجودة فِي مجموعتنا مِن التقارير المباشرة للشخص المحدد. إذا رأيت صفرًا، فهذا يعني أن هذا الشخص ليس لديه تقارير مباشرة.

لقطة شاشة لعنصر التحكم label مع تعيين الخاصية text.

لعرض الجزء الآخر مِن المعلومات، قائمة بجميع التقارير المباشرة، وإدراج معرض عمودي وتعيين مصدر البيانات (أو خاصية Items) إلَى colDirectReports. قم بتغيير Layout إلَى Title وFields (أو خاصية Text الخاصة بتسمية Title فِي معرضك) لإظهار displayالاسم. عند الانتهاء، يجب أن تبدو شاشتك مشابهة لما يلي:

لقطة شاشة لخيار المعرض العمودي مِن قائمة إدراج مع تعيين خاصية items.

لقد اختبرنا الآن كيفية استدعاء بيانات الإجراء عبر اتصال مستخدمي Office 365. لقد استخدمنا هذه البيانات لملء حقول إدخال النص وملء نموذج آخر مِن البيانات يُسمى المجموعة وإظهار هذه المعلومات فِي المعرض. في الوحدة التالية، دعنا نستكشف كيفية عرض البيانات والتفاعل معها فِي معرض.

لمزيد مِن المعلومات حول اتصال مستخدمي Office 365، راجع مرجع موصل مستخدمي Office 365.