
يحظى كل إصدار رئيسي من Odoo بالدعم لمدة ثلاث سنوات، ويأتي كل إصدار جديد بمزايا وإصلاحات وأداء أفضل. والبقاء على إصدار قديم يجعل الترقية اللاحقة أصعب، لأن الفجوة بين الإصدارات تتسع باستمرار. يشرح هذا الدليل كيف تتم الترقية فعليًا، خطوة بخطوة، لكل نوع من أنواع الاستضافة، وما الذي ينبغي للشركة تجهيزه قبل نقل قاعدة بيانات الإنتاج.
ملاحظة حول المصادر: تتبع الخطوات التالية وثائق الترقية الرسمية وأدلة المطورين الصادرة عن Odoo. وقد تتغير الأوامر والقوائم وشروط الخدمة من إصدار إلى آخر، لذا تحقق دائمًا من التعليمات الحالية في الوثائق الرسمية للإصدار المستهدف قبل البدء.
ما هي الترقية، وما الذي لا تشمله
تنقل الترقية قاعدة بياناتك الحالية، بكل ما فيها من بيانات، من إصدار أقدم من Odoo إلى إصدار أحدث مدعوم. تتولى خدمة الترقية في Odoo تحويل بنية البيانات، ثم يختبر فريقك النتيجة قبل التحول الفعلي.
لا تشمل خدمة الترقية الرجوع إلى إصدار أقدم، أو التحويل بين Community وEnterprise، أو تغيير نوع الاستضافة، أو الانتقال من نظام ERP آخر. فكل واحد من هذه مشروع مستقل.
عدد مرات الترقية الإلزامية حسب نوع الاستضافة
- Odoo Online: الترقية إلى إصدار رئيسي إلزامية كل عامين. يخطرك Odoo قبل الموعد ببضعة أسابيع، ويُجري ترقية اختبارية صامتة، وإذا لم تتخذ أي إجراء حتى تاريخ الاستحقاق تتم ترقية قاعدة البيانات تلقائيًا.
- Odoo.sh: بعد انتهاء سنوات الدعم الثلاث لإصدارك، تتاح لك سنتان إضافيتان لإتمام الترقية، وتخطرك المنصة عندما تصبح الترقية إلزامية.
- التثبيت المحلي: يمكنك البقاء على الإصدار نفسه إلى أجل غير مسمى، لكن ذلك غير مستحسن. فكلما صغرت الفجوة بين الإصدارات، كانت الترقية أسهل وأقل تكلفة.

الخطوات السبع للعملية الرسمية
- الخطوة 1: طلب قاعدة بيانات اختبار مُرقّاة.
- الخطوة 2: ترقية الشيفرة المصدرية لوحداتك المخصصة، إن وُجدت.
- الخطوة 3: اختبار قاعدة البيانات المُرقّاة اختبارًا شاملًا.
- الخطوة 4: إبلاغ دعم Odoo بأي مشكلة تظهر أثناء الاختبار، تحت مرحلة الترحيل.
- الخطوة 5: عندما تطمئن إلى النتائج، خطط لترقية بيئة الإنتاج.
- الخطوة 6: اطلب ترقية بيئة الإنتاج. تكون قاعدة البيانات غير متاحة أثناء تنفيذها.
- الخطوة 7: إبلاغ دعم Odoo بأي مشكلة تظهر بعد الإطلاق الفعلي، تحت مرحلة الإنتاج.
الخطوة 1: طلب قاعدة بيانات اختبار مُرقّاة
في Odoo Online، افتح مدير قواعد البيانات، واختر قاعدة البيانات، ثم انقر على إدارة ثم ترقية. اختر الإصدار المستهدف، وأدخل عنوان بريد إلكتروني لتلقي الإشعارات، واترك الغرض على اختبار ثم أكّد. وعند انتهاء العملية تصلك رسالة بريد إلكتروني تتضمن رابط قاعدة بيانات الاختبار.
في Odoo.sh، افتح علامة التبويب ترقية وابدأ الترقية على فرع مرحلي (Staging). تُرسل أحدث نسخة احتياطية يومية من بيئة الإنتاج إلى منصة الترقية، ويدخل الفرع وضعًا خاصًا تستعيد فيه كل عملية commit جديدة النسخة الاحتياطية المُرقّاة وتحدّث وحداتك المخصصة. ويتوفر سجل الترقية في الملف upgrade.log داخل مجلد السجلات الخاص ببناء الفرع المرحلي المُرقّى.
في التثبيت المحلي، شغّل سكربت الترقية الرسمي على خادم قاعدة البيانات مع خيار الاختبار واسم قاعدة البيانات والإصدار المستهدف، كما هو موضح في وثائق الترقية لدى Odoo. يحتاج الخادم إلى اتصال شبكي بخوادم الترقية. ولا تتضمن النسخة المُعادة مخزن الملفات (filestore)، لذا ادمج مجلد مخزن الملفات المُسلَّم مع مخزن ملفات بيئة الإنتاج قبل الاختبار.
بعد كل ترقية ناجحة، يُرفق تقرير الترقية برسالة التأكيد عبر البريد الإلكتروني، ويُنشر أيضًا في Discuss للمسؤولين. اقرأه بعناية، فهو يسرد ما تغيّر وما يحتاج إلى متابعة.
الخطوة 2: ترقية وحداتك المخصصة
لا يمكن ترقية قاعدة بيانات تحتوي على وحدات مخصصة إلى أن يتوفر لهذه الوحدات إصدار متوافق مع الإصدار المستهدف. ابدأ هذا العمل بالتوازي مع طلب قاعدة الاختبار.
- جمّد التطوير: توقف عن إضافة المزايا واقبل إصلاحات الأخطاء فقط حتى تكتمل الترقية.
- قارن تخصيصاتك بالإصدار الجديد واحذف كل ما أصبح Odoo يوفره بشكل قياسي.
- ثبّت كل وحدة على قاعدة بيانات فارغة من الإصدار المستهدف وأصلح كل خطأ وتحذير.
- راجع طرق العرض وقوالب البريد الإلكتروني والتقارير وإجراءات الخادم والإجراءات التلقائية والحقول المحسوبة، وأضف اختبارات آلية حيثما كان ذلك مفيدًا.
- اكتب سكربتات ترقية لتغييرات البيانات: النماذج والحقول والمعرّفات الخارجية التي أُعيدت تسميتها، والبيانات المستردة من النماذج المحذوفة، والحقول المعاد احتسابها.
توجد سكربتات الترقية داخل الوحدة في مجلد باسم upgrades أو migrations، ثم مجلد باسم الإصدار الكامل للوحدة، مثل 19.0.2.0. يبدأ اسم كل ملف بـ pre- أو post- أو end-، وهو ما يحدد توقيت تشغيله: قبل تحميل الوحدة، أو بعد تحديث الوحدة، أو بعد تحديث جميع الوحدات. ويعرّف كل ملف دالة migrate تستقبل مؤشر قاعدة البيانات والإصدار المثبّت.
في Odoo.sh تشغّل المنصة هذه السكربتات عند تحديث وحداتك. وفي التثبيت المحلي تستعيد النسخة المُرقّاة وتحدّث وحداتك باستخدام odoo-bin وخيار التحديث. أما في Odoo Online فلا يمكن تثبيت وحدات Python مخصصة، لذا يجب بناء أي تخصيص هناك باستخدام Studio.
الخطوة 3: اختبار قاعدة البيانات المُرقّاة
تُحيَّد قواعد بيانات الاختبار لحماية بيئة الإنتاج: إذ تُعطَّل الإجراءات المجدولة، ويُستبدل بخوادم البريد الصادر خادم وهمي، وتُحوَّل مزودات الدفع وشركات الشحن إلى وضع الاختبار، وتُوقَف مزامنة البنوك. اطلب من مزود الخدمة البنكية بيانات اعتماد لبيئة تجريبية (sandbox) إن احتجت إلى اختبارها.
- تحقق من أن طرق العرض النشطة في بيئة الإنتاج لا تزال نشطة بعد الترقية.
- اطبع الفواتير وعروض الأسعار وإيصالات التسليم وغيرها من التقارير وقارنها ببيئة الإنتاج.
- أنشئ السجلات وعدّلها، واختبر عوامل تصفية البحث وقوالب البريد الإلكتروني وعمليات التصدير.
- راجع صفحات الموقع الإلكتروني ونفّذ دورات عملك الرئيسية من البداية إلى النهاية، مثل: عرض السعر ثم الفاتورة ثم الدفع، والشراء ثم الاستلام ثم فاتورة المورد.
- اختبر عمليات التكامل الخارجية مثل API وEDI، والإجراءات التلقائية، وإجراءات الخادم، وسير العمل بين التطبيقات.
- قارن الأرقام الرئيسية ببيئة الإنتاج: قيم المخزون، وأرصدة الحسابات، والذمم المدينة والدائنة المفتوحة.
خصص لكل قسم سيناريو اختبار مكتوبًا ومسؤولًا عنه، وسجّل كل نتيجة. فالاختبار غير الموثق كأنه لم يحدث.
الخطوة 4: الإبلاغ عن المشكلات قبل الإطلاق الفعلي
أبلغ دعم Odoo بكل اختلاف أو خطأ في قاعدة بيانات الاختبار عبر صفحة الدعم، مع اختيار مرحلة الترحيل. يقوم Odoo بعد ذلك بإصلاح سكربتات الترقية، وتطلب أنت قاعدة بيانات اختبار جديدة للتأكد من الإصلاح. كرر ذلك حتى تصبح النتائج سليمة.
الخطوة 5: التخطيط لترقية بيئة الإنتاج
- اختر وقتًا يقل فيه النشاط، لأن قاعدة البيانات تكون غير متاحة أثناء الترقية.
- اطلب قاعدة بيانات اختبار حديثة قبيل الإطلاق الفعلي، ونفّذ بروفة كاملة في اليوم السابق.
- أبلغ المستخدمين بفترة التوقف، وأوقف إدخال البيانات قبل بدء الترقية.
- خذ نسخة احتياطية وتحقق منها، وجهّز قائمة مراجعة قصيرة للساعات الأولى بعد الإطلاق الفعلي.
الخطوة 6: طلب ترقية بيئة الإنتاج
في Odoo Online، كرر طلب الاختبار نفسه ولكن اضبط الغرض على الإنتاج. وبمجرد اكتمال العملية، لا يمكنك العودة إلى الإصدار السابق.
في Odoo.sh، تبدأ ترقية بيئة الإنتاج عند دفع commit جديد إلى فرع الإنتاج، فتُنشر قاعدة البيانات المُرقّاة ووحداتك المخصصة المحدّثة معًا. وإذا فشل أي شيء، تتراجع المنصة عن الترقية تلقائيًا، وعند النجاح تحتفظ بنسخة احتياطية أُخذت قبل الترقية.
في التثبيت المحلي، شغّل سكربت الترقية نفسه مع خيار الإنتاج بدلًا من خيار الاختبار. وأي تغيير يُجرى في بيئة الإنتاج بعد إرسال قاعدة البيانات لن يظهر في قاعدة البيانات المُرقّاة. ادمج مخزن الملفات قبل تشغيل الإصدار الجديد.
الخطوة 7: الدعم بعد الإطلاق الفعلي
أبقِ المستخدمين الرئيسيين متاحين خلال الأيام الأولى، وراقب الإجراءات المجدولة ورسائل البريد الإلكتروني وعمليات التكامل عند إعادة تفعيلها، وأبلغ دعم Odoo بأي مشكلة تحت مرحلة الإنتاج.
ما تغطيه خدمة الترقية لعملاء Enterprise
مع Odoo Enterprise، تكون الترقية إلى أحدث إصدار مشمولة في الاشتراك، إلى جانب الدعم في معالجة الاختلافات التي تظهر في قاعدة البيانات المُرقّاة. ويشمل ذلك التطبيقات القياسية، وتخصيصات Studio ما دام Studio واشتراكه فعّالَين، والتخصيصات المشمولة باشتراك صيانة التخصيصات.
ولا تشمل الخدمة تنظيف البيانات أو الإعدادات الحالية، أو ترقية الوحدات المطورة داخليًا أو وحدات الجهات الخارجية دون عقد صيانة، أو التدريب على الإصدار الجديد. ولا يشمل هذه الخدمة مستخدمي Community، الذين يعتمدون عادةً على مشروع OpenUpgrade مفتوح المصدر الذي تشرف عليه Odoo Community Association.
نصائح عملية من مشاريع الترقية
- نظّف البيانات الأساسية قبل الترقية: فالشركاء المكررون والمنتجات غير المستخدمة والإعدادات المؤرشفة تبطئ الاختبار.
- ألغِ تثبيت الوحدات التي لم تعد تستخدمها قبل طلب قاعدة الاختبار، حتى يقل ما تحتاج الترقية إلى تحويله.
- خطط للترقية بالانتقال إصدارًا واحدًا في كل مرة، حتى لو كانت الخدمة تُرقّي مباشرة إلى الإصدار المستهدف.
- احتفظ بقائمة بكل تخصيص مع المسؤول عنه، وقرر لكل منها: الإبقاء عليه، أو استبداله بالوظيفة القياسية، أو الاستغناء عنه.
- لا تتخطَّ البروفة أبدًا: فمعظم المفاجآت عند الإطلاق الفعلي تأتي من بيانات أُدخلت بعد آخر اختبار.
كيف يمكن أن تساعدك 1CBMS
تخطط 1CBMS لمشاريع ترقية Odoo وتنفذها من البداية إلى النهاية: من تقييم إصدارك الحالي وتخصيصاتك، إلى ترحيل الوحدات المخصصة، وكتابة سيناريوهات الاختبار لكل قسم، وإدارة المشكلات مع دعم Odoo، والإشراف على الإطلاق الفعلي لبيئة الإنتاج. تواصل معنا عبر الموقع الإلكتروني لمراجعة مسار الترقية الخاص بك.