Do you have multiple documents that you would like to follow? Or maybe too many documents you were added as a follower of, creating excessive notifications you would like to stop?

By default in Odoo, you need to go through each document individually and click Follow / Unfollow, which can be a time-consuming process.

Here are two server actions that will allow you to Follow or Unfollow multiple documents at once.

To set up the Follow action, use the following steps:

  1. Go to Settings > Technical > Actions > Server Actions​ (Developer mode is required) and click on New
  2. Add the name of the action. In our case, it is “Follow Selected Orders”.
  3. Select Execute Code​.
  4. Select the Model​ where the action should be available. In our case, it is Sales Order.
  5. If you want the action to be available only for certain access groups, select the groups in the Allowed Groups​ field.
  6. In the Code​ section, add the following code:
records.message_subscribe(partner_ids=env.user.partner_id.ids)

Save the action and click the Create Contextual Action​ button. This will create the menu Follow Selected Orders in the Action menu of the Sales Order model.

Now, if you go to the Sales Order list view, select multiple sales orders, and click on Follow Selected Orders​, it will add you as a follower of the selected sales orders.

In general, when executed, this action will add the currently logged-in user as a follower of the selected documents.

The same action can be applied to other documents. The only difference in setup is the Model​. For example, for Purchase Orders, you need to select the Purchase Order model.

To create the Unfollow action, follow the same steps as above. The only change is that in the Code​ section, you need to add the following code:

records.message_unsubscribe(partner_ids=env.user.partner_id.ids)
Functional Odoo 17 Odoo 18
Posts



Do you have products that are sold as one item but consist of multiple parts needing assembly? For example, an office desk is sold as a single product but delivered in separate components, such as table legs, screws, and a tabletop.

In such cases, it may be expected for customers to select the main product during checkout, while each component is shown separately on the delivery document. This setup is common for furniture and similar industries, where the final product is made up of individually managed items.

In Odoo, this scenario can be handled by using the Manufacturing module and defining a Bill of Materials (BoM) of type Kit for each main product.

Here is a step-by-step guide to set up the flow:

  1. Create the Main Product:
    • Set the product type to Goods.
    • Disable Track Inventory.
    • Assign the Manufacturing route to it.
  2. Create Component Products:
    • Each component should be a separate product.
    • Set the type to Goods.
    • Enable Track Inventory.
    • Assign the Buy route (unless they are produced in-house).
  3. Define the BoM:
    • Create a Bill of Materials (BoM) of type Kit for the main product.
    • Include all components that are part of the main product with appropriate quantities.

Once set up, this configuration allows the system to track stock at the component level, calculate the main product’s availability based on its components, and show only the main product in the sales order. While in the delivery document, all components are listed, making it clear what needs to be shipped.

Although the main product has the Manufacturing route, a manufacturing order is not created. Instead, the BoM is used solely to display the components that make up the product in the delivery order.


Functional Inventory Manufacturing Odoo 18
Posts



Security is essential!
Having properly configured access rights for each user in Odoo and maintaining a clear overview of them is a must.

Here are a few tips to help with user access management:

User Roles in Odoo using User Roles module from OCAAdditionally, here are a few important points to consider before starting the configuration:

  • It is crucial to understand how the security system in Odoo works.
  • Ensure each user has just enough access rights to perform their tasks.
  • Be cautious with the admin role and protect it.
Functional Odoo 18
Posts

If you are managing a multi-warehouse setup in Odoo, where purchases are received in a central warehouse and then distributed to other locations, there's a built-in feature called “Resupply From” that can streamline this process.

Once you have at least two warehouses set up, you can enable the Resupply From​ option in the warehouse settings (Inventory > Configuration > Warehouses​). This allows you to specify which warehouse will supply products to the current warehouse. When activated, a route is automatically generated for product transfers. The route must be enabled at the product or product category level for the relevant items.

When an item with the route enabled is needed in a secondary warehouse, Odoo will create a request in the Replenishment dashboard, unless there is an automatic reordering rule. When the order is placed from the Replenishment dashboard, a delivery order will be created for the main warehouse and a receipt for the receiving warehouse. During the transfer, products will be placed in the Inter-warehouse Transit location.

This setup is particularly useful when you have one central warehouse and multiple stores, with each store represented by a separate warehouse. Each store can be automatically resupplied from the central warehouse using this feature.

Important:

  • The Resupply​ setting for the central warehouse should be either "Buy to Resupply," "Manufacture to Resupply," or both, depending on the supply process.
  • Ensure the reordering rules are properly configured to maintain stock levels across your stores.
Functional Inventory Odoo 18
Posts


Odoo's Task Dependencies feature should be enabled if tasks need to follow a specific order. This feature helps manage task flow and ensures tasks are completed in the correct sequence.

To set it up:

  1. Go to Project > Configuration > Settings > Task Management​.
  2. Enable Task Dependencies​.

Once enabled, a Blocked By tab appears in each task, displaying a task list view. Add tasks to the list that must be completed before starting the current one. Dependencies can be within the same project or across different projects.

Tasks with dependencies are automatically set to the Waiting state and cannot begin until all linked tasks are marked as Done or Cancelled. Once the dependency tasks are completed, the task’s state updates to In Progress, allowing work to begin.

Functional Odoo 18 Project
Posts