در اودوو، «تقویم فارسی» صرفاً به معنای نمایش یا ویرایش تاریخ بر پایه تقویم جلالی است، نه الزاماً یک نرمافزار مدیریت رویدادها. منظور ما در این بلاگ، همین بُعد از تقویم است — یعنی نحوهی نمایش، چاپ و ورود تاریخها بر اساس تقویم فارسی.
در این مطلب قصد داریم روشها و راهکارهای مختلف بومیسازی تاریخ در اودوو را معرفی کنیم؛ از تنظیمات ساده برای نمایش تاریخ جلالی گرفته تا تغییرات عمیقتر در ماژولها و فرانتاند سیستم.
در پایان نیز، مجموعهای از لینکهای مفید آوردهایم که نحوهی پیادهسازی تقویم فارسی را در نسخههای مختلف اودوو بهصورت گامبهگام توضیح میدهند.
چالشهای بومیسازی تقویم فارسی در اودوو
پیادهسازی تقویم فارسی (جلالی) در اودوو در ظاهر شاید ساده به نظر برسد، اما در عمل با چالشهای فنی متعددی در بخشهای مختلف سیستم روبهرو است. این چالشها معمولاً در چهار دسته اصلی قابل بررسی هستند:
-
چالشهای مربوط به بخش فرانتاند (Front-end)
هماهنگسازی تقویم فارسی در واسط کاربری، از جمله در فرمها، ویجتهای تاریخ و تقویمهای پویا، نیازمند تغییر در جاوااسکریپت و کتابخانههای UI است. بسیاری از این اجزا بهصورت پیشفرض تنها با تقویم میلادی سازگار هستند. -
چالشهای مربوط به بخش بکاند (Back-end)
در سمت سرور، تبدیل صحیح بین تاریخ میلادی و شمسی هنگام ذخیرهسازی، پردازش گزارشها و محاسبات تاریخی اهمیت بالایی دارد. کوچکترین ناهماهنگی در این بخش میتواند منجر به خطاهای دادهای شود. -
چالشهای مربوط به پایگاه داده (Database)
پایگاه داده اودوو تاریخها را بهصورت میلادی ذخیره میکند. بنابراین نیاز است سازوکاری برای نگهداری دادهها بهصورت استاندارد میلادی و در عین حال نمایش آنها بهصورت شمسی در سطح کاربر در نظر گرفته شود. -
چالشهای مربوط به نسخههای مختلف اودوو
ساختار ماژولها، واسط کاربری و API در نسخههای مختلف اودوو تغییراتی داشته است؛ به همین دلیل، راهکارهایی که در نسخههای قدیمی کار میکردند، ممکن است در نسخههای جدید مانند Odoo 16 یا 17 نیاز به بازنویسی داشته باشند.
بومی سازی تقویم فارسی در نسخههای اودوو
در لینک های موجود در بخش تقویم فارسی اودوو ۱۶ و ۱۷ به شرح ساختار یک ماژول تقویم فارسی متناسب با هر نسخه و توابعی که بازنویسی می شوند، می پردازیم.