الدرس 6 — الصلاحيات، والأرشفة بدل الكتابة فوق القيمة
المعرّفات تُقرأ كثيراً، وتُكتب نادراً، وتكلّف غالياً حين تكون خاطئة. وهذه التركيبة هي بالضبط ما وُجدت له مجموعة القراءة فقط، وهذا التطبيق يشحن واحدة. كما يشحن قاعدة أهم من الصلاحيات نفسها: حين يتغير رقم، تُؤرشف القيمة القديمة بدل الكتابة فوقها، ويبقى التاريخ في قاعدة البيانات حيث يستطيع مدقق رؤيته.
النموذج الذهني: مجموعتان هنا، ومجموعة واحدة هناك. ينشئ التطبيق الأساسي مجموعتَي صلاحيات خاصتين به. أما جسر الموارد البشرية فلا ينشئ أي مجموعة على الإطلاق — بل يتكئ كلياً على المجموعة التي تحمي هذه البيانات أصلاً على نموذج الموظف الأساسي.
| المجموعة | ما تتيحه للمستخدم | أين تنطبق |
|---|---|---|
| UAE Identifiers / User | قراءة الفهرس والاطلاع على القيم — قراءة فقط | الفهرس وسجل القيم |
| UAE Identifiers / Manager | إنشاء قيم السجل وتعديلها وأرشفتها، وتعديل الفهرس نفسه | الفهرس وسجل القيم |
الموظفون / مسؤول (hr.group_hr_user) |
رؤية مجموعة UAE IDs، وعمود الموظف في All Identifiers | سجلات الموظفين |
امنحوا مجموعة Manager لمن يحتاج إضافة قيمة سجل أو تصحيحها أو تعديل الفهرس؛ وامنحوا مجموعة User لمن يحتاج الاطلاع على القيم. أما في جهة الموارد البشرية فلا شيء تمنحونه فوق ما تمنحونه أصلاً: كل حقل يلمسه الجسر مقيَّد بالفعل بمجموعة الموظفون / مسؤول (Employees / Officer)، وهي المجموعة نفسها التي تحمي أصلاً حقول بطاقة الهوية الإماراتية وجواز السفر ورخصة العمل والتأشيرة على نموذج الموظف الأساسي. فمن يستطيع أصلاً رؤية تفاصيل الموارد البشرية الخاصة بموظف يرى مجموعة UAE IDs؛ ومن لا يستطيع لن يراها ولا أي حقل داخلها.
مسار الضغط لقيمة تغيّرت. افتحوا All Identifiers، وجدوا القيمة الحالية لذلك المعرّف وذلك الحامل، وأرشفوها، ثم أنشئوا الجديدة. افعلوا ذلك بهذا الترتيب فلا تشتبك معكم قاعدة القيمة النشطة الواحدة أبداً. وتحتاج الخطوتان معاً مجموعة UAE Identifiers / Manager، ولهذا ينبغي أن يحملها من يتولى صيانة هذه الأرقام، وألّا يحملها معظم الناس.
لماذا الأرشفة أفضل من الكتابة فوق القيمة. المعرّف الذي تجاوزه الزمن لا يفقد أهميته لحظة استبداله. فهو يظهر على فواتير أصدرتموها، وعلى إقرارات قدّمتموها، وفي مراسلات سيضعها أحدهم أمامكم يوماً. اكتبوا فوق الحقل يختفِ ذلك الرقم من قاعدة بياناتكم؛ وأرشفوه يبقَ موجوداً موسوماً بأنه لم يعد الحالي. والقيد الذي يفرضه التطبيق قيمة نشطة واحدة — والقيم المؤرشفة لا تُحسب عليه، فحفظ تاريخكم لا يكلّفكم شيئاً.
المثال العملي. يصدر لـ Marina Ridge Trading LLC رقم تسجيل جمركي بديل عن الشارقة. يفتح المدير All Identifiers، ويؤرشف قيمة الشارقة التي تجاوزها الزمن، وينشئ الجديدة. ولا يُمسّ تسجيل دبي، ويبقى رقما الإمارتين نشطين جنباً إلى جنب — وهذا صحيح، وهو قاعدة «لكل إمارة» من الدرس 4 تؤدي عملها مرة ثانية.
نمط الفشل. «لا يمكنني إضافة قيمة سجل أو تعديلها». القراءة متاحة لمجموعة User؛ أما الإنشاء والتعديل والأرشفة فتحتاج مجموعة UAE Identifiers / Manager. «لا أرى عمود الموظف في All Identifiers». تلك مسألة مستوى وصول مسؤول الموارد البشرية، لا مجموعة UAE Identifiers — فلجهتَي هذه الدورة جوابان مختلفان، وطلب المجموعة الخاطئة أبطأ طريق للحصول على الوصول.
التعليقات معطلة في هذه الدورة.