دوره آموزشی برنامهنویسی در Odoo با Python معمولاً شامل مجموعهای از مفاهیم و تکنیکها برای توسعه و سفارشیسازی ماژولهای Odoo میشود. Odoo یک سیستم ERP (Enterprise Resource Planning) است که بر پایه Python و PostgreSQL ساخته شده و امکان توسعه و گسترشپذیری بسیار بالایی دارد.
در اینجا سرفصلهای معمول دوره آموزشی برنامهنویسی Odoo با Python آورده شده است:
بخش 1. مقدمهای بر Odoo و معماری آن
فصل 1. معرفی Odoo و کاربردهای آن
- Odoo چیست و چه کاربردهایی دارد؟
- مقایسه Odoo با سایر سیستمهای ERP
- نسخههای مختلف Odoo (Community و Enterprise)
- قابلیتهای کلیدی Odoo (مدیریت فروش، انبار، حسابداری و …)
- موارد استفاده عملی از Odoo در کسبوکارهای مختلف
فصل 2. معماری Odoo و اجزای اصلی آن
- معرفی معماری ماژولار Odoo
- بررسی ساختار کلی Odoo (Backend و Frontend)
- نحوه ارتباط Odoo با پایگاهداده PostgreSQL
- معرفی ORM (Object Relational Mapping) در Odoo
- بررسی مدل MVC در Odoo و نحوه کارکرد آن
- مفاهیم اصلی در Odoo:
- مدلها (Models): مدیریت دادهها و ارتباط بین جداول
- نماها (Views): نمایش دادهها در رابط کاربری
- کنترلرها (Controllers): مدیریت درخواستها و تعاملات
فصل 3. نصب و راهاندازی محیط توسعه Odoo
- بررسی پیشنیازهای نصب Odoo (Python، PostgreSQL و …)
- راهاندازی محیط توسعه روی سیستمعاملهای مختلف (Linux, Windows, macOS)
- نصب Odoo از طریق سورس کد و راهاندازی سرور
- بررسی ساختار دایرکتوری Odoo
- معرفی فایلهای اصلی در Odoo (odoo-bin، addons، config و …)
فصل 4. ایجاد و پیکربندی یک پایگاه داده جدید در Odoo
- نحوه ایجاد یک پایگاه داده جدید در Odoo
- تنظیمات پایگاه داده Odoo در PostgreSQL
- مدیریت چندین پایگاه داده در Odoo
- اعمال تنظیمات امنیتی برای پایگاه داده
فصل 5. آشنایی با رابط کاربری Odoo
- معرفی داشبورد Odoo و نحوه استفاده از آن
- بررسی ماژولهای پیشفرض و نحوه نصب آنها
- معرفی بخشهای مختلف رابط کاربری (منوها، فرمها، لیستها و …)
- تنظیمات اولیه Odoo برای سفارشیسازی محیط کاربری
فصل 6. راهاندازی اولین پروژه توسعه در Odoo
- نحوه ایجاد یک ماژول جدید در Odoo
- معرفی ساختار دایرکتوری یک ماژول (models, views, controllers, security)
- ایجاد اولین مدل داده در Odoo
- اجرای اولین ماژول و بررسی نحوه بارگذاری آن
فصل 7. پیکربندی فایلهای اصلی و تنظیمات Odoo
- بررسی و ویرایش فایل odoo.conf برای مدیریت تنظیمات
- مدیریت کاربران و سطح دسترسیها در Odoo
- بررسی لاگها و دیباگینگ در Odoo برای توسعهدهندگان
بخش 2. آشنایی با زبان Python و استفاده از آن در Odoo
فصل 1. مقدمهای بر Python و کاربرد آن در Odoo
- تاریخچه و ویژگیهای زبان Python
- دلیل استفاده از Python در Odoo
- ساختار کلی یک برنامه Python در Odoo
فصل 2. راهاندازی محیط برنامهنویسی Python برای Odoo
- نصب Python و ابزارهای مورد نیاز
- نصب و استفاده از یک محیط توسعه (VS Code, PyCharm)
- راهاندازی یک محیط مجازی (Virtual Environment)
- تنظیم و استفاده از
odoo-binبرای اجرای Odoo
فصل 3. مبانی زبان Python
- متغیرها و انواع دادهها در Python
- عملگرها و دستورات پایهای
- شرطها و حلقهها (if, for, while)
- توابع و نحوه تعریف آنها
- مدیریت خطاها و Exception Handling
فصل 4. برنامهنویسی شیگرا (OOP) در Python و Odoo
- مفهوم کلاس و شیء در Python
- اصول وراثت (Inheritance) و چندریختی (Polymorphism)
- استفاده از کلاسها برای توسعه ماژولهای Odoo
- تعریف مدلهای دادهای با استفاده از کلاسها
فصل 5. استفاده از Python برای کار با پایگاهداده PostgreSQL در Odoo
- آشنایی با پایگاهداده PostgreSQL و ارتباط آن با Odoo
- اجرای دستورات SQL در Python
- استفاده از ORM (Object Relational Mapping) برای مدیریت دادهها
- ارتباط بین جداول در پایگاهداده و کلاسهای Odoo
فصل 6. ماژولهای داخلی Python و کاربرد آنها در Odoo
- کار با ماژولهای استاندارد Python (os, json, datetime, logging)
- استفاده از
jsonبرای مدیریت دادهها در Odoo - مدیریت فایلها و دایرکتوریها در Odoo با استفاده از
os - کار با تاریخ و زمان در Odoo
فصل 7. توسعه و گسترش قابلیتهای Odoo با Python
- استفاده از توابع دکوراتور (Decorators) در Odoo
- تعریف و استفاده از متدهای
@api.model,@api.depends,@api.onchange - ایجاد متدهای اختصاصی برای پردازش دادهها
فصل 8. تعامل Odoo با وب و APIها از طریق Python
- استفاده از درخواستهای HTTP در Odoo با
requests - کار با JSON-RPC برای ارتباط با سیستمهای دیگر
- ارسال و دریافت داده به/از APIها
فصل 9. مدیریت استثناها و لاگگیری در Odoo
- روشهای مدیریت خطا و Exception Handling
- استفاده از ماژول
loggingبرای مانیتورینگ و دیباگ - ایجاد گزارشهای لاگ در Odoo برای بررسی مشکلات
بخش 3. مدلها (Models) و مدیریت دادهها
فصل 1. مقدمهای بر مدلها در Odoo
- معرفی ORM (Object-Relational Mapping) در Odoo
- ساختار مدلها و ارتباط آنها با پایگاه داده
- مزایای استفاده از ORM در مقایسه با دستورات SQL خام
فصل 2. ایجاد یک مدل سفارشی در Odoo
- تعریف یک مدل جدید با استفاده از کلاسهای Python
- استفاده از ویژگی
_nameو_description - ذخیرهسازی دادهها در جداول پایگاه داده
فصل 3. مدیریت فیلدها در مدلها
- معرفی انواع فیلدها (Char, Integer, Float, Boolean, Date, Datetime, Binary, Many2one, One2many, Many2many)
- تعریف فیلدهای ضروری و اختیاری
- مقداردهی پیشفرض برای فیلدها (
default=) - فیلدهای محاسباتی (
compute=) و ذخیره آنها (store=) - استفاده از
related=برای ایجاد فیلدهای وابسته
فصل 4. مدیریت روابط بین مدلها
- تعریف و استفاده از رابطه
Many2one - تعریف و استفاده از رابطه
One2many - تعریف و استفاده از رابطه
Many2many - تفاوت بین این روابط و کاربرد آنها در Odoo
فصل 5. عملیات CRUD (ایجاد، خواندن، بروزرسانی و حذف) در مدلها
- افزودن داده جدید به مدل
- جستجو و فیلتر دادهها (
search(),browse(),read()) - بروزرسانی دادهها (
write()) - حذف دادهها (
unlink()) - استفاده از دامنهها (
domain) برای فیلتر کردن دادهها
فصل 6. استفاده از Constrains و Validations در مدلها
- اعتبارسنجی دادهها با استفاده از
@api.constrains - اعمال قوانین بر روی فیلدها با
@api.onchange - استفاده از
SQL Constraintsدر مدلها برای محدودیتهای سطح پایگاه داده
فصل 7. وراثت (Inheritance) در مدلهای Odoo
- معرفی وراثت کلاسیک (
_inherit) و ایجاد تغییر در ماژولهای پیشفرض - وراثت
delegationو تفاوت آن با وراثت کلاسیک - ایجاد مدلهای ترکیبی و گسترش قابلیتهای مدلها
فصل 8. ایجاد و مدیریت رکوردهای مجازی (Transient Models)
- معرفی مدلهای گذرا (
TransientModel) و تفاوت آن با مدلهای معمولی - کاربردهای TransientModel در Wizardها و فرمهای موقت
- نحوه حذف خودکار رکوردهای موقت در Odoo
فصل 9. کار با Context و Prefetch در Odoo
- مدیریت Context در عملیات مختلف
- نحوه ارسال اطلاعات بین متدهای مختلف
- بهینهسازی عملکرد مدلها با استفاده از
@api.modelو@api.depends
فصل 10. افزودن و استفاده از Sequence برای شمارهگذاری خودکار
- ایجاد و استفاده از Sequence برای تولید شمارههای خودکار
- پیکربندی Sequence در Odoo
- ترکیب Sequence با عملیات ایجاد رکورد
فصل 11. مدیریت رکوردها با استفاده از Actions و Server Actions
- اجرای عملیات خاص روی رکوردها با Server Actions
- ایجاد دکمههای اختصاصی برای اجرای فرآیندها
- استفاده از Python Actions در ماژولهای Odoo
فصل 12. بهینهسازی عملکرد مدلها و Queryها
- استفاده از
search_read()وsearch_count()برای بهینهسازی جستجوها - استفاده از indexing در پایگاه داده برای بهبود سرعت دسترسی
- بهینهسازی مدلهای دارای دادههای حجیم
بخش 4. ویوها (Views) و صفحات کاربری
فصل 1. مقدمهای بر ویوها در Odoo
- آشنایی با مفهوم ویوها در Odoo
- انواع مختلف ویوها در Odoo (Form View, Tree View, Kanban View, Calendar View, Graph View, Pivot View)
- نحوه ارتباط ویوها با مدلها و دادهها
- تعریف ساختار کلی ویوها و نقش XML در Odoo
فصل 2. ویوهای فرم (Form View)
- ساختار و تعریف یک ویو فرم در XML
- استفاده از تگهای اصلی در فرمها (form, field, group, notebook, page)
- نحوه تنظیم فیلدها در فرمها
- مدیریت رفتار فیلدها (required, readonly, invisible, etc.)
- استفاده از واژگان پویا در ویو فرم (widget, context, attrs)
- ایجاد و ویرایش ویوهای فرم سفارشی برای مدلها
فصل 3. ویوهای لیستی (Tree View)
- تعریف و ساختار ویو لیستی در XML
- نمایش دادهها در قالب لیست و استفاده از تگهای مختلف
- مدیریت ستونها و فیلدهای قابل مشاهده در لیستها
- افزودن فیلدهای محاسباتی و فرمها به لیستها
- استفاده از فیلترها و گروهبندی در ویوهای لیستی
فصل 4. ویوهای کانبان (Kanban View)
- معرفی ویو کانبان و کاربرد آن
- ساختار XML برای ویو کانبان
- استفاده از کارتها و اطلاعات نمایش دادهشده در هر کارت
- طراحی و سفارشیسازی نمای کانبان برای مدلها
- افزودن عملگرهای اضافی به کانبان برای تعاملات کاربری
فصل 5. ویوهای تقویم (Calendar View)
- تعریف ویو تقویم و کاربرد آن
- ساختار XML برای ویو تقویم
- تنظیم نمایش رویدادها بر اساس تاریخها
- سفارشیسازی تقویم برای نیازهای خاص (نمایش چند رویداد، رنگبندیها و …)
- افزودن تعاملات (Click، Drag & Drop) به رویدادها در تقویم
فصل 6. ویوهای گرافیکی (Graph View)
- آشنایی با ویو گرافیکی در Odoo
- تعریف و ساختار ویو گرافیکی در XML
- ایجاد انواع نمودار (ستونی، خطی، دایرهای)
- تنظیمات محورها و مقیاسها در نمودارها
- استفاده از فیلدهای محاسباتی در نمودارها
فصل 7. ویوهای Pivot
- معرفی ویو Pivot در Odoo
- ساختار XML برای ویو Pivot
- ایجاد جدولهای دادهای با قابلیت مرتبسازی و فیلتر
- نمایش دادهها به صورت ماتریس و چگونگی استفاده از آن در تحلیل دادهها
فصل 8. ویوهای مگامنو (Multi-Views)
- استفاده از مگامنوها برای ترکیب چندین ویو
- تعریف و ساختار XML برای ترکیب ویوهای مختلف در یک صفحه
- تنظیم نمای قابل تغییر و پویا برای نمایش اطلاعات در چند ویو
فصل 9. ویوهای ویژه برای ویزاردها (Wizard Views)
- تعریف و استفاده از ویوهای ویزارد برای تعاملات پیچیده
- ساختار XML برای ویو ویزارد و فرمهای چند مرحلهای
- استفاده از تگهای ویژه مانند “button” و “wizard”
- نحوه استفاده از context برای انتقال دادهها بین مراحل ویزارد
فصل 10. امنیت در ویوها و صفحات کاربری
- مدیریت دسترسیها و مجوزها در ویوها
- استفاده از گاردهای امنیتی در ویوهای سفارشی (Groups, Record Rules)
- کنترل دسترسیها به ویوهای خاص براساس نقش کاربران
- تعریف قوانین امنیتی برای اطمینان از نمایش درست دادهها
فصل 11. تعامل با ویوها از طریق JavaScript
- آشنایی با استفاده از JavaScript برای افزودن قابلیتهای تعاملی در ویوها
- رویدادهای JavaScript در ویوها (onchange, click, etc.)
- استفاده از QWeb و افزودن کدهای JS سفارشی به ویوها
- تعامل با APIهای Odoo از طریق JavaScript
فصل 12. بهینهسازی ویوها برای کارایی و تجربه کاربری
- نکات و تکنیکهای بهینهسازی ویوها برای بارگذاری سریعتر
- استفاده از Cache برای ذخیرهسازی دادهها
- طراحی و توسعه برای تجربه کاربری بهتر (Responsive Design, UI/UX)
- بررسی رفتار ویوها در دستگاههای مختلف
بخش 5. مدیریت فرآیندها و قوانین کسبوکار
فصل 1. معرفی فرآیندهای کسبوکار و اهمیت آنها در Odoo
- تعریف فرآیندهای کسبوکار در Odoo
- اهمیت مدلسازی فرآیندهای کسبوکار در سیستم ERP
- ایجاد و مدیریت فرآیندهای تجاری در Odoo
- نحوه شبیهسازی و بهینهسازی فرآیندها در Odoo
فصل 2. اتوماسیون فرآیندها در Odoo
- معرفی ابزارهای اتوماسیون در Odoo (Automated Actions)
- نحوه تنظیم قوانین خودکار برای انجام فرآیندها
- استفاده از “Scheduled Actions” برای انجام وظایف در زمانهای خاص
- مثالهای کاربردی از اتوماسیون فرآیندها در Odoo
فصل 3. تعریف قوانین کسبوکار در Odoo
- آشنایی با قوانین کسبوکار (Business Rules) و نحوه تعریف آنها
- استفاده از قوانین در قالب “Server Actions” برای مدیریت فرآیندها
- ترکیب Server Actions با مدلهای Odoo برای اعمال قوانین
- ایجاد قوانین پیچیده با استفاده از Python در Odoo
فصل 4. مدیریت گردش کار (Workflow) در Odoo
- معرفی گردش کار در Odoo و نحوه استفاده از آن
- تعریف وضعیتها (States) و مراحل (Stages) در گردش کار
- پیکربندی انتقال بین مراحل مختلف در گردش کار
- مثالهای عملی از گردش کار در بخشهای مختلف (فروش، خرید، انبارداری و …)
فصل 5. استفاده از قواعد و شرایط در فرآیندهای کسبوکار
- تعریف شروط و قوانین برای شرایط خاص در فرآیندها
- ایجاد شرایط مبتنی بر دادهها برای اجرای قوانین
- استفاده از “Record Rules” برای محدودیتهای دسترسی به دادهها
- ترکیب قواعد با مدلهای داده برای مدیریت فرآیندها
فصل 6. مدیریت وظایف و مسئولیتها در Odoo
- استفاده از ماژولهای Task و Project برای مدیریت وظایف
- تخصیص و پیگیری مسئولیتها در تیمها
- بررسی نمودارهای Gantt برای مدیریت زمانبندی پروژهها
- استفاده از قوانین برای اولویتدهی به وظایف و پروژهها
فصل 7. مدیریت و پیگیری تصمیمات و تغییرات در فرآیندها
- ثبت و پیگیری تغییرات در فرآیندهای کسبوکار
- استفاده از تاریخچه و گزارشها برای نظارت بر فرآیندها
- تحلیل روند تغییرات و تاثیر آنها بر عملکرد کسبوکار
فصل 8. استفاده از “Rules” و “Triggers” برای واکنش به رویدادها
- تعریف Triggers برای ایجاد واکنشها در مواقع خاص
- ایجاد Rules برای شبیهسازی فرآیندهای پیچیدهتر
- استفاده از Triggers و Rules در ماژولهای مختلف (فروش، خدمات، انبار)
فصل 9. کنترل کیفیت و نظارت بر فرآیندها
- تعریف مراحل و مراحل بازرسی برای کنترل کیفیت در فرآیندها
- استفاده از معیارهای کیفیت برای ارزیابی عملکرد فرآیندها
- پیادهسازی فرآیندهای بهبود مستمر در Odoo
فصل 10. مدیریت استثناها و خطاها در فرآیندها
- شناسایی و مدیریت استثناها در فرآیندهای کسبوکار
- استفاده از سیستم هشدارها و اعلانها برای پیگیری خطاها
- نحوه اصلاح و بازنگری در فرآیندهای مختلشده
فصل 11. تحلیل دادهها و گزارشگیری از فرآیندهای کسبوکار
- استفاده از ابزارهای گزارشگیری Odoo برای تجزیه و تحلیل دادهها
- ایجاد گزارشهای سفارشی بر اساس فرآیندها و قوانین
- استفاده از داشبوردهای Odoo برای نمایش و تحلیل عملکرد فرآیندها
[cdb_course_lessons title=”دانلود کتاب آموزشی”][cdb_course_lesson icon=”fa fa-solid fa-circle-arrow-down” badge=”attachments” private_lesson=”true” title=”دانلود جلد اول کتاب آموزش برنامهنویسی در Odoo با Python به زبان فارسی” download_lesson=”https://dl.faraznetwork.ir/book/odoo/odoo-with-python-yefhdsj756451-1.pdf”][/cdb_course_lesson][/cdb_course_lessons]
خدمات شبکه فراز نتورک | پیشرو در ارائه خدمات دیتاسنتری و کلود

نقد و بررسی وجود ندارد.