بنينا منصّة عملياتٍ ميدانية كاملة لمجموعة مقاولاتٍ كهربائية سعودية تُنفّذ عقدًا إطاريًا لمرفقٍ وطني — 44 وحدة Odoo مخصّصة إضافةً إلى تطبيق جوّالٍ يعمل دون اتصال بتحديثاتٍ عبر الأثير. تربط العقد وتصاريحه وموادّه، والأسطول والسلامة والموارد البشرية والمالية، وصولًا إلى الفنّي الذي يسجّل مهمّة في الموقع — بلوحة قيادةٍ مخصّصة لكل دور، من مهندس الموقع إلى المالك.
44
وحدة Odoo مخصّصة
8+
لوحات قيادة للأدوار
OTA
تحديثات ميدانية
100+
موظف ميداني
ZATCA
متوافق
النظام — من العقد إلى الهاتف
لا يوجد نظامٌ جاهز يُدير عقدًا ميدانيًا لمرفقٍ وطني من طرفه إلى طرفه. فبنينا واحدًا — منصّة من 44 وحدة Odoo وتطبيقًا ميدانيًا يعمل دون اتصال — وجعلنا كل جزءٍ يتدفّق كسلسلةٍ واحدة: من بندٍ في العقد، إلى التصريح الذي يفتحه، إلى المادة المصروفة، إلى المهمّة على هاتف الفنّي، إلى الفاتورة.
العقد الإطاريأوامر عمل المرفق · تصاريح · بنود النطاق
→
البناءمنصّة عملياتٍ ميدانية واحدة44 وحدة Odoo · لوحات مدفوعة من الخادم · الامتثال في النموذج
→
هاتف العامليعمل دون اتصال · تحديثات OTA · مواقع بلا تغطية
↓
التصاريحالموادالأسطولالسلامة والوقايةالمشترياتالموارد البشرية والبصمةمالية ZATCAلوحات القيادةالتطبيق الميداني
عقدٌ واحد · مئات الموظفين الميدانيين · عربي / إنجليزي · ZATCA · Odoo 19 Enterprise
01 العميل
مجموعة مقاولاتٍ كهربائية سعودية تُنفّذ بنيةً تحتية للجهد المتوسّط لمرفق الكهرباء الوطني بموجب عقدٍ إطاري — مواقع متعدّدة، ومئات الموظفين الميدانيين، وثنائية اللغة عربي وإنجليزي بالكامل، ومتوافقة مع ZATCA.
تعمل على Odoo 19 Enterprise — من مالية المكتب الرئيسي وصولًا إلى فنّيٍّ في موقعٍ نائٍ.
02 المشكلة الجوهرية
عوالمُ متفرّقة لا تترابط
تنفيذ عقدٍ ميداني لمرفقٍ وطني مشكلةُ تنسيقٍ عبر عشرات العوالم التي لا يتحدّث بعضها إلى بعض. هناك العقد وأوامر عمله؛ والتصاريح التي تحكم قانونًا كل مهمّة في الموقع؛ والموادُّ التي يصرفها المرفق ويتوقّع حصرها حتى الوحدة؛ وأسطولٌ من المركبات والمعدّات موزّعٌ على المواقع؛ والسلامة ومعدّات الوقاية؛ والمشتريات وميزانيات المشاريع؛ وحضور مئات العمّال الميدانيين؛ وفوترةٌ متوافقة مع ZATCA وشهادات إنجاز.
ثم هناك الفرق الميدانية نفسها — التي تعمل في مواقع نائية بلا تغطية، لا خلف المكاتب.
لا شيء من ذلك كان مترابطًا. وكل دورٍ — مدير المشروع، ومهندس الموقع، والمستودع، والصيانة، والتنفيذي — يحتاج رؤيةً مختلفة تمامًا للعملية نفسها.
كل مهمّةٍ يحكمها تصريح، وكل مادّةٍ محصورةٌ حتى الوحدة — ولا شيء منها يتحدّث إلى الآخر.
03 المنهج
جهازٌ عصبيّ واحد، لا كومة ميزات
تعاملتُ معه كجهازٍ عصبيّ واحد، لا كومة وحدات. من بندٍ مُوقّع في العقد، إلى التصريح الذي يفتحه، إلى المادة المصروفة إلى ساحة، إلى المهمّة على هاتف الفنّي، إلى بصمة الحضور، إلى الفاتورة — إنها سلسلةٌ واحدة، وكان عليها أن تتدفّق كواحدة.
فبدلًا من إضافة ميزاتٍ فوق بعضها، بنيتُ منصّة: طبقة لوحات قيادةٍ مدفوعة من الخادم تُصيّر لوحة كل دورٍ من الإعداد لا من شاشاتٍ مكتوبة يدويًا؛ وتطبيقًا يعمل دون اتصال في الميدان ويتحدّث عبر الأثير؛ وامتثالًا مفروضًا في نموذج البيانات نفسه، لا متروكًا لذاكرة أحد.
1
رؤية الرقعة كاملة
سلسلةٌ واحدة من بند العقد إلى هاتف العامل — التصاريح والمواد والأسطول والسلامة والموارد البشرية والمالية مُنمذَجة كعمليةٍ واحدة مترابطة، لا تطبيقاتٍ منفصلة.
2
ابنِ منصّة، لا وحدات
طبقةُ لوحاتٍ مدفوعة من الخادم تُصيّر لوحة كل دورٍ من الإعداد، وتُعاد كساوتها كلّها من ملف علامةٍ واحد — أقربُ إلى low-code منها إلى مجموعة شاشات.
3
اغرس الامتثال في النموذج
التصاريح وفوترة ZATCA والسجلات المُغلقة غير القابلة للتعديل مفروضةٌ من نموذج البيانات — فلا مهمّة أو مادّة أو فاتورة تُفلت من القواعد لأن أحدًا نسيها.
4
اذهب حيث يجري العمل
تطبيقٌ ميداني يعمل دون اتصال ليواصل الفنّي عمله في موقعٍ بلا تغطية ويُزامن عند عودة الاتصال — بتحديثاتٍ عبر الأثير تُوصّل الإصلاحات إلى الهاتف في دقائق.
اهندس منصّةً يُدار بها عملٌ فعلًا — لا كومة وحدات.
04 الحل
منصّة واحدة مترابطة — 44 وحدة Odoo وتطبيق ميداني
تنفيذ العقد، محكومٌ بالتصاريح
أوامرُ عمل المرفق تُستوعَب كبنود عقدٍ مرتبطة ببنود نطاقٍ موحّدة؛ ومسوحاتُ موقعٍ قبل التنفيذ تُعدّل الكميات المخطّطة وفق الواقع؛ وتصاريحُ مفروضة على مستوى النموذج — بوّابةٌ محسوبة تمنع صرف أي مادّة دون تصريحٍ فعّال معتمَد. وتقريرُ موازنة موادٍ حيّ يتتبّع المخطّط / في الساحة / المُستخدَم / المُتلَف / غير المحصور لكل مشروع، فيظهر الهدر فورًا. وشهاداتُ الإنجاز وفواتيرُ ZATCA برمز QR تُغلق الحلقة.
الأسطول والصيانة
حزمةٌ من تسع وحدات تغطّي الدورة كاملة: صيانةٌ وقائية مجدولة بساعات التشغيل، وفحوصٌ يومية تحكم تسجيل الرحلات، ونقلُ معدّاتٍ بين المواقع بموافقة، وتصعيدُ أعطالٍ على مرحلتين، ولوحاتُ مؤشّرات، وسجلاتٌ تُقفَل غير قابلة للتعديل بمجرد إغلاقها.
طلباتُ موادٍ تتدفّق إلى مقارنة عروضٍ متعدّدة الموردين وأوامر شراءٍ مولّدة تلقائيًا — كلّها محكومةٌ بمحافظ المشاريع التي تتتبّع المُخصّص والمحجوز والمُنفَق والمتبقّي فوريًا.
الموارد البشرية والحضور البيومتري
تكاملٌ ثنائي الاتجاه مع ZKTeco ADMS يُزامن الموظفين والبصمات عبر أجهزةٍ متعدّدة المواقع، مع معالجة المناطق الزمنية ومنع البصمة المكرّرة؛ وقواعدُ آلية تكشف المخالفات وتوجّهها إلى مديرٍ ليبرّرها أو يعاقب عليها؛ وتجديدُ عقودٍ تلقائي.
المالية والامتثال
صلاحياتُ ترحيلٍ ودفاتر يومية دقيقة لكل مستخدم، ودفاترُ شركاء، ومصروفاتٌ مؤجّلة، وفوترةٌ إلكترونية متوافقة مع ZATCA.
لوحات قيادةٍ حسب الدور
أكثرُ من ثماني لوحاتٍ مخصّصة — مدير المشروع، ومهندس الموقع، والمستودع، والمنسّق، وأدوار الصيانة الأربعة، ورؤيةٌ تنفيذية للمالك — كلٌّ منها مُصيَّرة من الإعداد لا من كودٍ مخصّص، وقابلةٌ لإعادة الكساوة من ملف علامةٍ واحد. أقربُ إلى منصّة low-code منها إلى مجموعة شاشات.
التطبيق الميداني للجوّال
Flutter، يعمل دون اتصال أولًا، مبنيٌّ ليعمل حيث يجري العمل: تخزينٌ محلي فيواصل موقعٌ بلا تغطية عمله ويُزامن عند عودة الاتصال؛ والحضور والمهام والمصروفات والإجازات والسُّلف وكشوف الرواتب؛ ومساراتُ صيانةٍ حسب الدور؛ وتتبّعُ GPS والسياج الجغرافي؛ وإشعاراتٌ فورية؛ ودعمٌ كامل للعربية / الإنجليزية RTL — وتحديثاتُ Shorebird عبر الأثير تصل إلى الهواتف مباشرةً في دقائق، بلا انتظار مراجعة المتجر.
05 النتيجة
تُدير المقاولة عمليتها الميدانية كاملة — من العقد إلى النقد، ومن المكتب الرئيسي إلى الفنّي في الموقع — على نظامٍ واحدٍ مترابط. كل دورٍ يرى لوحته؛ والفرق الميدانية تعمل دون اتصال وتبقى متزامنة.
الامتثال تفرضه المنصّة لا الذاكرة: لا مادّة تتحرّك دون تصريح، وكل فاتورةٍ نظيفةٌ وفق ZATCA، والسجلات المُغلقة لا تُعدَّل. ولأن اللوحات والتطبيق مدفوعان بالإعداد، فإن دورًا أو شاشةً جديدة تغييرُ إعدادٍ — لا إعادة بناء.
لماذا يهمّ هذا
هذا ليس تخصيص نظام ERP — بل بناء جهازٍ عصبيّ تشغيلي، من بندٍ في عقد مرفقٍ وطني وصولًا إلى هاتف عاملٍ في موقعٍ بلا إشارة. تطلّب عقليّة منصّة — لوحاتٌ مدفوعة من الخادم، وتطبيقٌ يعمل دون اتصال ويتحدّث عبر الأثير، وامتثالٌ مغروسٌ في نموذج البيانات — ورؤيةَ الرقعة كاملةً لجعل المكتب الخلفي والميدان نظامًا واحدًا.
ليس ضبط برمجيات — بل هندسة منصّةٍ يُدار بها عملٌ فعلًا. هذا هو العمل.