ترجمة بالذكاء الاصطناعي. لم يراجعها المجتمع بعد. اقرأ بالإنجليزية

المدوّنة · 14 سبتمبر 2023 · Steve Simpson · معمارية البيانات

Steve Data Modeling: من قوائم الاختيار إلى اللانهاية وما بعدها

مقدمة:

مرحبًا بك في جلسة مفيدة أخرى عن نمذجة البيانات ضمن سلسلة Steve’s Data Modeling! في هذه المقالة سنستكشف الاستخدامات المتعددة لقوائم الاختيار (picklists)، ونناقش السيناريوهات التي قد تحتاج فيها إلى التفكير في بدائل لمتطلبات نمذجة بيانات أكثر تقدمًا.

فهم قوائم الاختيار

قوائم الاختيار مثالية عندما يكون لديك حقل يتطلب مجموعة من القيم الثابتة. فهي تقدّم تجربة مستخدم نظيفة، لكنها تأتي مع بعض القيود:

تحدث أخطاء في التحقق من البيانات إذا لم تُضَف مسبقًا في Salesforce القيمُ القادمة من تكاملات الأطراف الثالثة.

استكشاف خيارات قوائم الاختيار

إليك بعض خيارات قوائم الاختيار التي تستحق النظر:

الخيار 1: مجموعات القيم العامة

هذا هو الخيار القياسي في Salesforce، ويمكنه الاستفادة من القوائم عبر الكائنات.

الخيار 1، قوائم الاختيار ومجموعات القيم العامة. الميزة: تجربة مستخدم نظيفة. العيوب: يجب أن يضيف المسؤول القيم، والتغييرات تحتاج إلى نشر في بيئات sandbox، والأنظمة الخارجية تسبب مشكلات، ولا يمكن للقيمة أن تحمل حقولًا مرتبطة

مجموعات القيم العامة هي الأنسب للقيم المستخدمة في أماكن متعددة. فمثلًا، يمكن أن يكون لديك مجموعتا قيم عامتان لـ «قطر الأنبوب» و«سماكة الأنبوب»، مما يوفر واجهة نظيفة يختار منها المستخدمون القيم.

[caption id="" align=“alignnone” width=“1372”]نماذج لمجموعات القيم نماذج لمجموعات القيم [/caption] [caption id="" align=“alignnone” width=“1814”]نماذج للقيم نماذج للقيم [/caption] [caption id="" align=“alignnone” width=“676”]الاختيار من قائمة الاختيار من قائمة [/caption]

الخيار 2: الحقول النصية

هذا مجرد حقل نصي بلا أي تحقق.

الخيار 2، الحقول النصية. الميزة: تقبل أي قيمة. العيوب: لا تحقق من البيانات، وتجربة مستخدم ضعيفة

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

قد يكون هذا خيارًا مناسبًا إذا كانت الحقول للقراءة فقط في Salesforce وكنت تعرض القيم فحسب.

[caption id="" align=“alignnone” width=“678”]لا تحقق لا تحقق [/caption]

الخيار 3: كائن مرجعي مشترك

الخيار 3، كائن مرجعي مشترك بأنواع سجلات، مع علاقات بحث مُصفّاة حسب نوع السجل. المزايا: تُضاف البيانات ديناميكيًا، وبعض الحقول المرتبطة. العيوب: تحميل البيانات في بيئات sandbox، والكائن المصدر يحمل مفتاحًا بدلًا من القيمة

يمكن استخدام كائن مرجعي مشترك بأنواع سجلات متعددة لتحميل البيانات. ينشئ هذا النهج علاقتَي بحث (lookup) في الكائن الرئيسي، ترتبطان بالكائن المرجعي بدلًا من القيم الفعلية. ويمكنك أيضًا إضافة قيم جديدة ديناميكيًا دون صلاحيات المسؤول، مما يعزز المرونة.

[caption id="" align=“alignnone” width=“1462”]استخدام أنواع السجلات استخدام أنواع السجلات [/caption] [caption id="" align=“alignnone” width=“1700”]استخدم علاقة بحث مُصفّاة استخدم علاقة بحث مُصفّاة [/caption] [caption id="" align=“alignnone” width=“1434”]إضافة القيم إضافة القيم [/caption] [caption id="" align=“alignnone” width=“658”]كيف يبدو اختيار قيمة. الترتيب غير صحيح، ولا تظهر كل القيم عند التحميل الأول، فعلى المستخدم أن يبحث عنها. وتأكد أيضًا من إزالة صلاحية «Create» من ملفات التعريف ومجموعات الأذونات حتى لا ينشئ المستخدمون سجلات إضافية أثناء العمل. كيف يبدو اختيار قيمة. الترتيب غير صحيح، ولا تظهر كل القيم عند التحميل الأول، فعلى المستخدم أن يبحث عنها. وتأكد أيضًا من إزالة صلاحية «Create» من ملفات التعريف ومجموعات الأذونات حتى لا ينشئ المستخدمون سجلات إضافية أثناء العمل. [/caption]

القسم 3: خيارات متقدمة

للسيناريوهات الأكثر تقدمًا، فكّر في هذه الخيارات:

الخيار 4: شاشات مخصصة مع كائن مرجعي

الخيار 4، كائن مرجعي مع حقل نصي، ومكوّن Lightning Web Component يقرأ قيم قائمة الاختيار من الكائن المرجعي. المزايا: تُضاف البيانات ديناميكيًا، ويحتفظ الكائن المصدر بالقيم. العيب: يحتاج إلى تطوير LWC وصفحات مخصصة

إذا كنت تستخدم مكوّنات Lightning Web Components ‏(LWC) مخصصة لشاشات التعديل، فيمكنك استخدام كائن مرجعي لقراءة القيم وعرضها، مع تخزين القيم الفعلية بدلًا من علاقات البحث.

الخيار 5: كائنات مستقلة

الخيار 5، كائنات مرجعية مستقلة، كائن لكل قائمة. المزايا: تُضاف البيانات ديناميكيًا، ونموذج بيانات نظيف، وحقول مرتبطة كثيرة. العيوب: تحميل البيانات في بيئات sandbox، ومفاتيح بدلًا من القيم، وكائنات كثيرة

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

أمثلة عملية

إليك أمثلة عملية توضح كل خيار:

قوائم الاختيار القياسية: تقدّم واجهة نظيفة بقيم ثابتة.

حقول نصية بلا تحقق: توفر المرونة لكن بلا تحقق من البيانات.

علاقة بحث إلى كائنات مرجعية: تستخدم الكائن نفسه مع أنواع سجلات مُصفّاة من أجل المرونة.

كائنات مستقلة: تستخدم كائنات منفصلة لكل علاقة بحث، مما يوفر نموذج بيانات نظيفًا ومرنًا.

الخلاصة

فهم دقائق قوائم الاختيار وبدائلها أمر حاسم لنمذجة بيانات فعّالة. فمن قوائم الاختيار القياسية إلى الكائنات المستقلة، يقدّم كل خيار مزايا فريدة تلبي احتياجات محددة في نمذجة البيانات.

عُد قريبًا!

لمزيد من الأفكار والنصائح، تابعنا هنا على www.SteveTechArc.com وعلى قناة @SteveTechArc (opens in a new tab) على YouTube. اشترك وارتقِ ببراعتك في نمذجة البيانات معنا!

نساعد في تغيير العالم بمشاركة أفكار رائعة مع زملائنا المعماريين ومع من هم في رحلتهم نحو أن يصبحوا معماريين!

نص مكتوب بمساعدة الذكاء الاصطناعي

STA 2.2