Odoo Basic Interview Questions (Entry Level Jobs)
Odoo is an open-source business management software suite that includes a wide range of applications, such as CRM, e-commerce, inventory management, accounting, project management, and more.
Key modules include Sales, Inventory, Accounting, CRM, Manufacturing, and Human Resources.
Odoo supports multi-currency transactions by allowing users to define different currencies for various partners and perform transactions in those currencies.
Odoo uses an Object-Relational Mapping (ORM) system to interact with the database. It allows developers to manipulate data in Python code without directly interacting with SQL.
Server actions are used for one-time server-side operations, while automated actions are triggered based on predefined conditions, automating repetitive tasks.
Odoo views can be customized using XML code. Developers can modify existing views or create new ones to tailor the interface to specific business needs.
The super()
method is used to call a method from a parent class, allowing developers to extend the functionality of that method in a child class.
Odoo widgets are used to enhance the user interface by providing interactive elements. Examples include date pickers, color pickers, and many more.
Odoo follows a role-based access control system where users are assigned roles with specific access rights. Security rules can be defined to restrict access to specific records.
The ‘domain’ attribute in Odoo fields is used to filter records displayed in relational fields based on specified criteria.
Automated actions can be scheduled using the Odoo scheduler by defining the interval and conditions under which the action should be triggered.
The ‘context’ parameter is used to pass additional information between different methods and views in Odoo. It allows developers to influence the behavior of operations.
A wizard in Odoo is a transient interface used for specific operations or data input. It differs from a form as it does not create a new record in the database.
You can extend an existing Odoo module by creating a new module that inherits from the original module. This allows you to add or override functionalities.
Odoo ORM’s lazy loading means that related records are not loaded from the database until explicitly requested. This improves performance by loading only the necessary data.
Odoo provides upgrade scripts to migrate data and structures from one version to another. It is crucial to follow the official upgrade guidelines to ensure a smooth transition.
The ‘Many2many’ field in Odoo is used to establish a many-to-many relationship between two models. It allows records in one model to be related to multiple records in another model.
The ‘sudo()’ method is used to execute a database operation with elevated privileges, bypassing access rights. It is often used when a user needs to perform actions outside their typical access level.
Data can be imported into Odoo using CSV files or by integrating with third-party tools. Odoo provides a data import module that simplifies the process.
Odoo.sh is a cloud-based platform for hosting and managing Odoo instances. It provides a simplified deployment process and facilitates collaboration among development teams.
In odoo, we can edit multiple records at once from the list view. Just open the list view of any model, then select the records you want to edit(make sure the field you want to update is visible). Now, update the value as shown in the example below –
Odoo Advanced Interview Questions (For Experienced job roles)
1. Go to Settings and activate developer mode.
2. Under Technical Link in Main header menu, search for outgoing mail servers.
3. Here you can create & test your SMTP Configurations.
Context:
In Odoo, context refers to a kind of dictionary containing information about the logged in user, his interests and what the action being performed is. Context is an effective way to convey more information to the Odoo system expecting that it will adapt itself according to this information.
Context is used mostly for:
Assigning certain field values as default
Disable certain records for viewing or executing
State whom the current company or user is
Domain:
Oppositely, a domain is that parameter which is used to restrict the search and make the system more precise. It is a list of conditions which a record has to fulfill for it to be included in the results. Domains are used to:
Restrict data based on certain parameters, for example sales orders that are in the draft state
Demarcate the boundaries of a search statement
Key differences:
Context is meant to provide more information to the Odoo framework whereas domain’s aim is to limit the data provided.
Context applies generally throughout the application whereas domain is search-based only.
Usually, the former is applied on the Odoo backend and the latter is applied on both back and front ends of the system except in search views.
Odoo Accounting Interview Questions
Odoo has a “resequence” action that can be used to customize the sequence of invoice serial numbers. We can simply select all the records an from the action dropdown, select resequence option. It will allow us to change the prefix, next number etc.
One thing to be noted here is, we can only resequence items of one journal at a time.
Yes, we can run multiple odoo instances on different ports by specifying the xmlrpc ports in their respective conf files.
Yes we can remove the requirement of specifying port in the odoo instance url by setting up reverse proxy mechanism using apache or nginx.