لمحة عن واجهة ITranslatePerson
تُستخدم واجهة ITranslatePerson لترجمة طلبات الأشخاص في LIS إلى UserObject خاص بحزمة التكامل لأنظمة معلومات الطالب في Brightspace.
تنفيذ الواجهة هو D2L.IM.IPSIS.LIS.PMS.ITranslatePerson.
توفر قائمة التكوين الآتية نقطة بداية لأي تنفيذ:
قالب، حزمة التكامل لأنظمة معلومات الطالب
- PersonRequestBaseTranslator (ترتيب الفرز = 10)
- PersonRequestFirstAndLastNameRequiredTranslator (ترتيب الفرز = 20)
- PersonRequestInstitutionRoleOptionalTranslator (ترتيب الفرز = 30)
- PersonRequestEmailPrimaryOptionalTranslator (ترتيب الفرز = 40)
- PersonRequestFirstUserIdAndPasswordOptionalTranslator (ترتيب الفرز = 50)
PersonRequestBaseTranslator
يتطلب PersonRequestBaseTranslator معرِّف الشخص ويقوم بتعيينه.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestBaseTranslator
السلوك المتوقع
يؤدي المترجم المهام الآتية:
- تعيين OrgDefinedId إلى القيمة المتوفرة في sourcedGUID.sourcedid.
- تستمر المعالجة إلى المترجم التالي.
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
OrgDefinedId
|
result.Entity.OrgDefinedId
|
sourcedGUID.sourcedId
|
سلوك الخطأ
في حالة وجود مشكلة في أثناء المعالجة، سيتم طرح IncompleteRequestException. وينتج عن ذلك:
- تعليق جميع عمليات المعالجة الإضافية.
- رأس استجابة LIS يحتوي على:
- CodeMajor = فشل.
- الخطورة = الحالة.
- CodeMinor = invaliddata.
ملاحظة التكوين
يجب تكوين هذا المترجم (أو مترجم أساسي بديل) أولاً في قائمة المترجمين.
PersonRequestIsActiveTranslator
يقوم PersonRequestIsActiveTranslator بتعيين حالة المستخدم استنادًا إلى قيمة الحقل.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestIsActiveTranslator
السلوك المتوقع
يؤدي المترجم المهام الآتية:
- قراءة رسالة LIS لحقول الملحقات حيث يكون fieldName = "IsActive".
- يجب أن تكون قيمة الحقل إما 0 أو 1، أو صواب أو خطأ.
- تستمر المعالجة إلى المترجم التالي (ليُرجع قيمة صحيحة).
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
الحالة
|
result.Entity.Status
|
extension.extensionField.fieldValue[IsActive]
|
سلوك الخطأ
لم يتم طرح أي أخطاء لهذا المترجم.
ملاحظة التكوين
يجب تكوين هذا المترجم في أي مكان بعد PersonRequestBaseTranslator.
PersonRequestFirstAndLastNameRequiredTranslator
يتطلب PersonRequestFirstAndLastNameRequiredTranslator الاسم الأول واسم العائلة ويقوم بتعيينهما.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestFirstAndLastNameRequiredTranslator
السلوك المتوقع
يؤدي المترجم المهام الآتية:
- محاولة تعبئة الاسم الأول بناءً على تطابقات المفردات الآتية:
- إذا كان name.nameType.instanceName.textString = (اسم جهة الاتصال أو الاسم الكامل)
- وname.partName.instanceName.textString = (الاسم الأول أو الاسم المعين)
- محاولة تعبئة اسم العائلة بناءً على تطابقات المفردات الآتية:
- إذا كان name.nameType.instanceName.textString = (اسم جهة الاتصال أو الاسم الكامل)
- وname.partName.instanceName.textString = (اسم العائلة أو الاسم الأخير أو اللقب)
- تستمر المعالجة إلى المترجم التالي.
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
الاسم الأول
|
result.Entity.FirstName
|
person.name.partName.instanceValue.textString
عندما يكون person.name.partName.instanceName.textString = (الاسم الأول أو الاسم المعين)
|
اسم العائلة
|
result.Entity.LastName
|
person.name.partName.instanceValue.textString
عندما يكون person.name.partName.instanceName.textString = (اسم العائلة أو الاسم الأخير أو اللقب)
|
سلوك الخطأ
في حالة وجود مشكلة في أثناء المعالجة، سيتم طرح IncompleteRequestException. وينتج عن ذلك:
- تعليق جميع عمليات المعالجة الإضافية.
- رأس استجابة LIS يحتوي على:
- CodeMajor = فشل.
- الخطورة = الحالة.
- CodeMinor = invaliddata.
ملاحظة التكوين
يمكن وضع هذا المترجم في أي مكان بعد المترجم الأساسي.
PersonRequestInstitutionRoleOptionalTranslator
يحاول PersonRequestInstitutionRoleOptionalTranslator تعيين خاصية دور ودور أساسي.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestInstitutionRoleOptionalTranslator
السلوك المتوقع
يؤدي المترجم المهام الآتية:
- إضافة الأدوار من عناصر institutionRole إلى قائمة أدوار النتائج.
- إذا تمت الإشارة إلى قيمة institutionRole على أنها primaryroletype، فسيُستخدم هذا الدور كدور أساسي.
- إذا لم يتم توفير دور، فستنتقل المعالجة إلى المترجم التالي.
- تستمر المعالجة إلى المترجم التالي.
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
الأدوار
|
result.SISRoles(*).Name
|
person.roles.institutionRole(*).institutionroletype.instanceValue.textString
|
الدور الأساسي
|
result.SISRoles(*).Primary
|
person.roles.institutionRole(*).institutionroletype.instanceValue.textString
عندما يكون person.roles.institutionRole(*).primaryroletype = صواب
|
سلوك الخطأ
في حالة وجود مشكلة في أثناء المعالجة، سيتم طرح IncompleteRequestException. وينتج عن ذلك:
- تعليق جميع عمليات المعالجة الإضافية.
- رأس استجابة LIS يحتوي على:
- CodeMajor = فشل.
- الخطورة = الحالة.
- CodeMinor = invaliddata.
ملاحظة التكوين
يمكن وضع هذا المترجم في أي مكان بعد المترجم الأساسي.
PersonRequestEmailPrimaryOptionalTranslator
يحاول PersonRequestEmailPrimaryOptionalTranslator تعيين عنوان بريد إلكتروني.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestEmailPrimaryOptionalTranslator
السلوك المتوقع
يؤدي المترجم المهام الآتية:
- إذا لم يكن قد تم إعداد عنوان بريد إلكتروني بالفعل، فسيستخدم المترجم المفردات ويحصل على أول قيمة لـ EmailPrimary يتم العثور عليها.
- تستمر المعالجة إلى المترجم التالي.
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
الأدوار
|
result.Entity.ExternalEmail
|
person.contactinfo.contactInfoValue.textString
عندما يكون person.contactinfo.contactInfoType.instanceValue.textString = EmailPrimary
|
سلوك الخطأ
في حالة وجود مشكلة في أثناء المعالجة، سيتم طرح IncompleteRequestException. وينتج عن ذلك:
- تعليق جميع عمليات المعالجة الإضافية.
- رأس استجابة LIS يحتوي على:
- CodeMajor = فشل.
- الخطورة = الحالة.
- CodeMinor = invaliddata.
ملاحظة التكوين
يمكن وضع هذا المترجم في أي مكان بعد المترجم الأساسي.
PersonRequestFirstUserIdAndPasswordOptionalTranslator
يحاول PersonRequestFirstUserIdAndPasswordOptionalTranslator تعيين userid وكلمة المرور.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestFirstUserIdAndPasswordOptionalTranslator
السلوك المتوقع
يؤدي المترجم المهام الآتية:
- تتم تعبئة اسم المستخدم من userId إذا كان متوفرًا.
- في حالة توفير اسم مستخدم، تتم تعبئة كلمة المرور.
- إذا كان نوع تشفير كلمة المرور متوفرًا، تتم تعبئة تشفير كلمة المرور.
- تستمر المعالجة إلى المترجم التالي.
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
اسم المستخدم
|
result.Entity.Username.value
|
person.userId.userIdValue.textString
|
UserIdType
|
result.Entity.UserIdType
|
person.userId.userIdType.textString
|
كلمة المرور
|
result.Entity.Username.Password.Value
|
person.userId.password.textString
|
EncryptionMethod
|
result.Entity.EncryptionMethod
|
person.userId.pwEncryptionType.textString
|
نوع المصادقة
|
result.Username.AuthenticationType
|
person.userId.authenticationType.textString
|
سلوك الخطأ
في حالة وجود مشكلة في أثناء المعالجة، سيتم طرح IncompleteRequestException. وينتج عن ذلك:
- تعليق جميع عمليات المعالجة الإضافية.
- رأس استجابة LIS يحتوي على:
- CodeMajor = فشل.
- الخطورة = الحالة.
- CodeMinor = invaliddata.
ملاحظة التكوين
يمكن وضع هذا المترجم في أي مكان بعد المترجم الأساسي.
PersonRequestSystemRoleOptionalTranslator
يحاول PersonRequestSystemRoleOptionalTranslator تعيين دور النظام.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestSystemRoleOptionalTranslator
السلوك المتوقع
- إضافة الدور من عناصر النظام إلى قائمة أدوار النتائج.
- تستمر المعالجة إلى المترجم التالي.
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
الأدوار
|
result.SISRoles(*).Name
|
person.roles.systemRole.instanceValue.textString
|
سلوك الخطأ
في حالة وجود مشكلة في أثناء المعالجة، سيتم طرح IncompleteRequestException. وينتج عن ذلك:
- تعليق جميع عمليات المعالجة الإضافية.
- رأس استجابة LIS يحتوي على:
- CodeMajor = فشل.
- الخطورة = الحالة.
- CodeMinor = invaliddata.
ملاحظة التكوين
يمكن وضع هذا المترجم في أي مكان بعد المترجم الأساسي.
PersonRequestEmailSecondaryOptionalTranslator
يحاول PersonRequestEmailSecondaryOptionalTranslator تعيين عنوان بريد إلكتروني استنادًا إلى رسائل البريد الإلكتروني الثانوية في الرسالة إذا لم يكن قد تم إعداد عنوان بريد إلكتروني بالفعل.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestEmailSecondaryOptionalTranslator
السلوك المتوقع
- إذا لم يكن قد تم إعداد عنوان بريد إلكتروني بالفعل، فاستخدم المفردات واحصل على أول قيمة لـ EmailSecondary يتم العثور عليها.
- تستمر المعالجة إلى المترجم التالي.
الخاصية
|
عنصر نتيجة الترجمة
|
تعيين طلب LIS
|
الأدوار
|
result.Entity.ExternalEmail
|
person.contactinfo.contactInfoValue.textString
عندما يكون person.contactinfo.contactInfoType.instanceValue.textString = EmailSecondary
|
سلوك الخطأ
في حالة وجود مشكلة في أثناء المعالجة، سيتم طرح IncompleteRequestException. وينتج عن ذلك:
- تعليق جميع عمليات المعالجة الإضافية.
- رأس استجابة LIS يحتوي على:
- CodeMajor = فشل.
- الخطورة = الحالة.
- CodeMinor = invaliddata.
ملاحظة التكوين
يمكن وضع هذا المترجم في أي مكان بعد المترجم الأساسي.
PersonRequestCreateRecordFromSourcedIdRequiredTranslator
يقوم PersonRequestCreateRecordFromSourcedIdRequiredTranslator بإنشاء طلب شخص صالح إذا كان كل ما تم تمريره هو sourcedId.
التنفيذ
D2L.IM.IPSIS.LIS.RequestAdapters.PMS.Default.PersonRequestCreateRecordFromSourcedIdRequiredTranslator
السلوك المتوقع
يؤدي المترجم المهام الآتية:
- في حالة عدم وجود سجل شخص صالح في الطلب، يقوم المترجم بإنشاء طلب شخص وهمي، باستخدام sourcedId للاسم الأول واسم العائلة ومعرِّف المستخدم.
- تستمر المعالجة إلى المترجم التالي.
ملاحظات التكوين
- هذا المترجم يجب أن يتواجد مباشرة بعد المترجم الأساسي.
- لا يُستخدم هذا المترجم إلا عندما يُتوقع تلقي معلومات غير كافية من نظام معلومات الطالب لإنشاء شخص في Brightspace.