-
Введение в ODOO
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Основы программирования в ODOO
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Базовые Навыки Программирования в ODOO: Создание и настройка модулей
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Базовые Навыки Программирования в ODOO: Работа с данными и ORM
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Основы системного администрирования
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Создание и настройка интерфейсов: Использование QWeb для создания отчетов и шаблонов
-
Создание и настройка интерфейсов: Кастомизация интерфейсов с помощью JavaScript и CSS
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Создание и настройка интерфейсов: Фреймворк OWL
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Портальная часть ODOO
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Автоматизация и бизнес-логика
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Интеграция с внешними системами
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Основы работы с переводами
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Настройка прав доступа и ролей
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
-
Резервное копирование и восстановление данных
-
- Присоединяйтесь к этому курсу для доступа к ресурсам
Основные модули ODOO и их функционал
Модули в ODOO - это строительные блоки. Если вы хотите что-то добавить или изменить в системе, вам необходимо создать модуль внутри которого будут находится все необходимые файлы.
Модуль - это каталог в котором обязательно должен находиться файл __manifest__.py. Какие параметры нужно указывать в этом файле, вы можете узнать из этой статьи документации
Техническое имя модуля - это имя каталога в котором находится файл __manifest__.py. Его можно увидеть если зайти в каталог приложений и включить режим разработчика:

Техническое имя модуля является важной частью пространства имен самой ODOO. Модули могут зависеть от других модулей, и тогда их технические имена(имена их каталогов) нужно прописывать в ключе depends в файле __manifest__.py. Так же при использование xml_id идентификаторов, полный идентификатор состоит из технического имени модуля и уникального id записи внутри этого модуля.
В дальнейшем под именем "имя модуля" следует понимать его техническое имя (имя каталога)
Модуль так же могут называть приложением. Как правило, приложение - это не один модуль, а несколько модулей, объединенных между собой цепочкой зависимостей.
В модуле должны находится все файлы и ресурсы, которые необходимы для работы.
Сама платформа ищет И сканирует каталоги, которые указаны в параметре addons_path в файле конфигурации. В этот параметр не надо добавлять каталоги с самими модулями, в него надо добавлять каталоги, в которых находятся каталоги с модулями, например:

На этом скриншоте видно, как подключаются каталоги с модулями. В правой части в файле конфигурации указан путь к каталогу с модулями, а в левой - дерево файловой системы контейнера.
Структура модуля Odoo 17 имеет решающее значение для его правильного функционирования. Разберем ключевые компоненты модуля.
1.__init__.py: Инициализатор модуля
Файл __init__.py служит инициализатором модуля. Он отвечает за импорт необходимых пакетов или файлов, необходимых для Odoo, и, возможно, выполнение пользовательского кода во время инициализации модуля.
Пример:
from . import models
from . import controllers
2.__manifest__.py: Определение метаданных
Файл __manifest__.py содержит метаданные о модуле. Вот фрагмент из нашего примера:
{
'name': 'Module Name',
'version': '1.0',
'summary': """Summary of the Module""",
'description': """Description of the Module""",
'category': 'product',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'depends': ['base'],
'website': 'https://www.cybrosys.com',
'data': [
'security/ir.model.access.csv',
'views/filename.xml',
‘data/filename.xml',
],
'assets': {
'web.assets_backend': [
'module_name/static/src/js/*.js',
'module_name/static/src/css/*.css',
'module_name/static/src/img/*',
],
},
'images': [],
'license': 'OPL-1',
'price': 9.99,
'currency': 'EUR',
'installable': True,
'auto_install': False,
'application': False,
}
*Имя: Название модуля
*Версия: Версия модуля
*Сводка: Краткое изложение или однострочное описание модуля.
*Описание: Более подробное описание модуля.
*Категория: Категория, к которой относится модуль.
*Автор: Имя автора или создателя модуля.
*Сайт: URL-адрес веб-сайта, относящегося к модулю.
*Зависимость: Список других модулей Odoo, от которых зависит этот модуль.
*Данные: Список путей к файлам XML или CSV, содержащим определения или конфигурации данных для модуля.
*Изображения: Список путей к изображению или двоичных данных изображения, представляющих модуль.
*лицензия: Лицензия, под которой распространяется модуль.
*Цена: Цена модуля, если применимо.
*Авуары: Для определения статических файлов, относящихся к бэкенду (интерфейсу администратора). Ключ "web.assets_backend" указывает тип ресурса, а в списке ниже перечислены пути к соответствующим файлам JavaScript, CSS и изображениям в модуле.
*Валюта: Валюта, в которой указана цена.
*Устанавливаемый: Указывает, можно ли установить модуль из веб-интерфейса.
*Приложение: Указывает, является ли модуль приложением или нет.
Модули Odoo
Система Odoo объединяет более 200 модулей. Рассмотрим некоторые из них.
Управление продажами (Sales)
Модуль позволяет формировать коммерческие предложения, оформлять заказы, связанные с продажей, доставкой. Реализована поддержка оплаты в режиме онлайн и визирования документов электронной подписью. Система контролирует доступность складских остатков, позволяет автоматизировать торговые точки, анализировать доходы, эффективность сотрудников, прогнозировать продажи. Возможна синхронизация данных с маркетплейсами.
Управление складом (Inventory)
Модуль позволяет:
- управлять работой склада в режиме реального времени;
- оформлять прямые отгрузки, сквозное складирование;
- настраивать мультисклады;
- отслеживать движение запасов с требуемой детализацией характеристик (параметров);
- формировать отчеты любой сложности;
- автоматически пополнять запасы;
- проводить инвентаризацию, учитывающую все перемещения товарных позиций;
- формировать отчеты любой сложности.
Управление закупками (Purchase)
Модуль упрощает и ускоряет подготовку заявок на закупки в автоматическом режиме, позволяет проводить тендеры, фиксировать взаимодействия с поставщиками, планировать поступление товаров, оплаты, возвраты, получать и сверять счета.
Функционал предусматривает отправку ценовых запросов, импорт прайсов, работу с претензиями, задержками поставок, контроль расчетов, предоставляемых гарантий, послепродажного обслуживания. Интегрированная аналитика позволяет проводить комплексный анализ работы подразделений, отвечающих за закупки.
Финансовый учет и бухгалтерия (Accounting)
Возможности, которые появляются при использовании модуля:
- обмен данными с банком (синхронизация);
- ручное внесение и автоматический импорт выписок;
- ускоренная сверка взаиморасчетов;
- формирование счетов (в том числе упрощенное оформление повторяющихся счетов, вставление счетов для онлайн-оплаты);
- прогноз оплаты будущих периодов;
- согласование документов в режиме онлайн;
- отслеживание задолженности, отправка писем дебиторам;
- быстрая фильтрация;
- простые динамические отчеты;
- наглядные графики;
- минимальная трудоемкость создания бухгалтерского баланса.
Кадровый учет (Employees)
После установки модуля появляется возможность гибко управлять доступом к конфиденциальным данным, формировать документы и оповещения, связанные с учетом посещаемости, отпусками, релокацией, аттестацией, больничными листами и не только. Оптимизированный процесс найма позволяет размещать, продвигать вакансии и изучать отклики кандидатов в рамках одного модуля.
Стандартный набор модулей представлен ниже:
Предлагаемые функции
При создании новой модели или приложения в Студии вы можете добавить до 14 функций для ускорения вверх по процессу создания. Они включают в себя поля пакета, настройки по умолчанию и представления, которые обычно являются Используется вместе для обеспечения некоторой стандартной функциональности. Большинство из этих функций могут быть добавлены позже, Но добавление их с самого начала значительно упрощает процесс создания модели. Кроме того, эти В некоторых случаях функции взаимодействуют друг с другом, повышая их полезность.
Пример:
При создании модели с включенными функциями Picture (Изображение) и Pipeline stage (Этапы конвейера) добавляется изображение в макете карточки в режиме просмотра Канбан.
Контактная информация
При выборе контактных данных в вид формы добавляется поле Many2One, связанное с моделью контакта, и два связанных поля: телефон и электронная почта. Поле Контакт также добавляется в вид Список, и активируется вид Карта.
Пример:
Назначение пользователей
При выборе назначения пользователя в вид формы добавляется поле Many2One, связанное с моделью контакта, с помощью следующий домен: чтобы разрешить выбор только Внутренний Пользователи. Кроме того, виджет many2one_avatar_user используется для отображения аватар. Поле «Ответственный» также добавляется в представление «Список». Share User is not set
Пример:
Дата и календарь
При выборе параметра «Дата и календарь» в представление формы добавляется поле «Дата» и активируется представление «Календарь».
Диапазон дат и Gantt
При выборе диапазона дат и диаграммы Ганта в виде формы добавляются два поля даты, расположенные рядом друг с другом: одно для установки начала date, другой для установки даты окончания с помощью виджета daterange и активирует представление Ганта.
Этапы воронки продаж
При выборе этапов конвейера активируется представление Канбан, добавляется несколько полей, таких как Приоритет и Состояние Канбана, а также три этапа: Новый, Выполняется и Готово. Строка состояния конвейера и поле «Состояние канбана» добавляются в представление формы. Поле «Цвет» добавляется в представление «Список».
Заметка
Функция этапов конвейера может быть добавлена на более позднем этапе.
Обводы
Выбор строк: добавляет в вид формы строки внутри компонента Tab.
Примечания
При выборе параметра «Примечания» в представление формы добавляется файл Html на всю ширину формы.
Денежная стоимость
При выборе параметра Денежное значение в представления формы и списка добавляется поле Денежные средства. Также активируются представления «График» и «Сводка».
Заметка
Поле «Валюта» добавляется и скрывается от просмотра.
Компания
При выборе Компании в представления Форма и Список добавляется поле Many2One, связанное с моделью Компания.
Заметка
Это полезно только в том случае, если вы работаете в среде с несколькими компаниями.
Пользовательская сортировка
При выборе параметра «Пользовательская сортировка» в представлении «Список» добавляется значок маркера перетаскивания для ручного изменения порядка записей.
Пример:
Общение
Выбор Chatter добавляет в вид формы Chatter функциональные возможности (отправка сообщений, ведение журнала заметок и планирование действий).
Заметка
Функция Chatter может быть добавлена на более позднем этапе.
Пример:
Архивирование
При выборе параметра «Архивация» в представления «Форма» и «Список» добавляется действие «Архивировать» и скрывается архивированное Записи из поисковых запросов и представлений по умолчанию.
Установка и обновление модуля
Чтобы все изменения, которые мы хотим привнести в ODOO применились, необходимо установить модуль. Модуль так же можно обновить.
Сделать это можно как с помощью графического интерфейса:
- Нажмите на главное меню
- Нажмите на пункт Apps
- Найдите нужный вам модуль и нажмите Activate
Дождитесь обновления страницы.
При ведении разработки, или, например, автоматическом развертывании базы, устанавливать модули вручную не всегда удобно и для этого есть параметр командной строки -i. Если в этом параметре указать список имен модулей, то при запуске система попытается сама их установить. Обращаю ваше внимание на то, что работа осуществляется через менеджер разработки и он поддерживает только соответствующие параметры командной строки. При разработке менеджера было решено каждый раз указывать при запуске списка модулей, которые надо установить (инициализировать). Но это не очень удобно, следовательно, этот список необходимо перенести в файл конфигурации config.json, где в параметре init_modules можно указать весь список, а при запуске системы достаточно указать параметр -i.
Чтобы обновить модуль first_module:
Понимание и соблюдение модульной структуры обеспечивает стандартизированный подход к разработке Odoo и способствует сотрудничеству и масштабируемости в управлении различными бизнес-процессами. Независимо от того, являетесь ли вы разработчиком, создающим пользовательские модули, или пользователем, реализующим существующие, четкое понимание этой структуры повышает общую эффективность и результативность Odoo как решения для управления бизнесом.
На данный момент комментарии отсутствуют.
Поделиться этим контентом
Поделиться ссылкой
Поделиться в соц сетях
Поделиться через Email
Пожалуйста логин поделится этим Статья по email.