To install odoo it is highly recommended to install python with virtual environment.

Installation

Create and enter virtual environment for odoo:

$ mkvirtualenv odoo
New python executable in /home/soda/projects/odoo/bin/python
Installing setuptools, pip, wheel...done.
virtualenvwrapper.user_scripts creating /home/soda/projects/odoo/bin/predeactivate
virtualenvwrapper.user_scripts creating /home/soda/projects/odoo/bin/postdeactivate
virtualenvwrapper.user_scripts creating /home/soda/projects/odoo/bin/preactivate
virtualenvwrapper.user_scripts creating /home/soda/projects/odoo/bin/postactivate
virtualenvwrapper.user_scripts creating /home/soda/projects/odoo/bin/get_env_details

# Enter the virtualenv directory
$ cdvirtualenv 
(odoo) soda@vm-soda ~/projects/odoo $ 

Odoo buildout

Buildout is a tool which allows us to automate steps needed to proceed when installing and deploying. Buildout is using build rules which can be re-used in different projects.

First enter your virtual environment and clone recipe:

workon odoo
git clone https://github.com/kybi/buildout-odoo-postgres odoo

# move content of ./odoo folder to one level up and remove the empty ./odoo folder
...

Postgres

In this tutorial we will assume you have the postgres installed and configured. If this is not the case, you can alter the buildout.cfg and re-enable the parts related to postgres:

  • postgres
  • psycopg2
  • postgres-conf
  • pg-hba-conf
  • pg-ident-conf

Role

To create Odoo user in postgresql database, login as postgres user and:

postgres=# create user odoo with createdb login createdb replication;
postgres=# alter user odoo with password 'secretpassword';

less-compiler

Frequently I encounter the missing less compiler. So here are the few steps to fix this issue.

NOTE: it shows that simple emerge lessc is not enough as it uses a different implementation of lessc.

Enter your virtual environment, then

pip install virtual-node virtual-less nodejs promise
npm install less-plugin-clean-css promise

nginx

Upgrading

Settings

Sales terminology

Lead

A sales lead is a set of contact information for a person or business, which could somehow facilitate a future sale. Typically a lead will be a single person at a business who is looking to purchase a service or product you offer.

A lead may or may not be the person or entity who will eventually make the purchase, they may be an adviser, a friend, or a person without decision making power. The one consistent attribute of every sales lead, is that it is somehow related to a potential sale.

You will commonly find a lead referred to as an “unqualified” sales opportunity. To understand this, look at your sales process as a series of steps to qualify and close a deal. Each business will have different qualifications which indicate how likely a person is to make a purchase, or how well of a fit your products/services match the customer’s needs.

Opportunity

Simply put, a sales opportunity is a qualified sales lead. This means an opportunity is also an object which represents a potential deal, but this specific deal has met certain criteria which indicate a high value to the business, or a high probability of closing.

This is where the differences between sales processes emerge. Since every business has a different set of criteria which determine how qualified a lead is, each business will consider a lead qualified at a different stage. There are many different pieces of information that can be used to qualify a lead.