Hướng dẫn tạo Module Odoo Custom: Tự động hóa Milestone Task trong Odoo 18

Hướng dẫn tạo Module Odoo Custom: Tự động hóa Milestone Task trong Odoo 18

Giới thiệu

Bạn muốn mở rộng tính năng của Odoo nhưng chưa biết bắt đầu từ đâu? Bài viết này sẽ hướng dẫn bạn từng bước từ việc cấu hình môi trường, tạo cấu trúc thư mục đến việc viết những dòng code đầu tiên để tạo một module custom hoàn chỉnh trên Odoo 18.

Bước 1: Thiết lập thư mục và cấu hình hệ thống

Trước khi code, bạn cần tạo nơi lưu trữ module và “khai báo” với Odoo:

  1. Tạo thư mục odoo-custom-addons ngoài Desktop hoặc ổ đĩa làm việc.
  1. Mở Notepad bằng quyền Admin, tìm file odoo.conf trong thư mục cài đặt Odoo.
  1. Tại dòng addons_path, thêm đường dẫn thư mục custom của bạn vào sau dấu phẩy.
  1. Dùng Visual Studio mở thư mục này để bắt đầu lập trình.

Bước 2: Khởi tạo cấu trúc Module “milestone_auto_done”

Một module Odoo cơ bản cần các thành phần sau:

  • Thư mục models: Chứa các file xử lý logic Python.
  • File __manifest__.py: Chứa thông tin mô tả module (tên, phiên bản, module liên quan).
  • File __init__.py: File điều hướng để Odoo load các tài nguyên Python.

Bước 3: Lập trình Logic nghiệp vụ

Trong ví dụ này, chúng ta sẽ can thiệp vào module Project.

  • Tại file project_task.py, chúng ta kế thừa class project.task.
  • Viết các hàm xử lý tự động hóa khi một Milestone được hoàn thành.
  • Đừng quên khai báo import trong các file __init__.py tương ứng để Odoo không bỏ sót code của bạn.

Bước 4: Cài đặt và Kiểm tra

Sau khi viết code xong, bạn thực hiện các bước cuối cùng để module xuất hiện trên giao diện:

  1. Restart Odoo Service: Vào Windows Services, tìm “Odoo” và chọn Restart.
  1. Cập nhật App List: Truy cập Odoo Web > Settings > Kích hoạt Developer Mode. Sau đó vào menu Apps, nhấn Update Apps List.
  1. Cài đặt: Tìm kiếm tên module milestone_auto_done và nhấn Activate.

Kết luận

Việc tạo module custom giúp bạn làm chủ hoàn toàn quy trình vận hành của doanh nghiệp trên Odoo. Với cấu trúc chuẩn này, bạn có thể tự tin phát triển thêm nhiều tính năng phức tạp hơn như tích hợp robot, AI hoặc báo cáo chuyên sâu.

Leave a Reply

Your email address will not be published. Required fields are marked *