da12f2b809
Pricelist computations need to consider 2 different Units
of Measure:
- The default product UoM (product.uom_id), used as reference
for the various quantities and amounts specified in each
pricelist rules.
- The `context UoM` is the UoM in which the result is requested,
that is the list price UoM.
For example the 'price_min_margin' amount is meant for the unit
price of 1 x default UoM. When the context UoM is not the default
product UoM, it can be any UoM of the same UoM Category, and the
various quantities and amounts specified on the rule need to
be adapted accordingly:
- min_quantity (expressed in terms of the default UoM)
- price_surcharge (specified for 1 x default UoM)
- price_min_margin (specified for 1 x default UoM)
- price_max_margin (specified for 1 x default UoM)
The UoM corrections were not done consistently and resulted in
wrong prices when computing the price using a non-default UoM.
The cases were a conversion was needed or not were not properly
identified within the _price_rule_get_multi().
After this commit, the various code branches in _price_rule_get_multi
always ensures that:
- price requested for: `qty` of `qty_uom_id`
- `qty_in_product_uom` is the requested `qty` converted to default UoM
- current (intermediary) price: `price` for `price_uom_id`
Therefore `price` and `price_uom_id` are always in sync, and `price_uom_id`
can always be compared with `qty_uom_id' in order to know whether
a conversion is still needed.
This patch also corrects and extends the regression tests
introduced at revision
|
||
---|---|---|
addons | ||
debian | ||
doc | ||
openerp | ||
setup | ||
.gitignore | ||
CONTRIBUTING.md | ||
LICENSE | ||
MANIFEST.in | ||
Makefile | ||
README.md | ||
odoo.py | ||
openerp-gevent | ||
openerp-server | ||
openerp-wsgi.py | ||
requirements.txt | ||
setup.cfg | ||
setup.py |
README.md
Odoo
Odoo is a suite of web based open source business apps.
The main Odoo Apps include an Open Source CRM, Website Builder, eCommerce, Project Management, Billing & Accounting, Point of Sale, Human Resources, Marketing, Manufacturing, Purchase Management, ...
Odoo Apps can be used as stand-alone applications, but they also integrate seamlessly so you get
a full-featured Open Source ERP when you install several Apps.
Getting started with Odoo development
If you are a developer type the following command at your terminal:
wget -O- https://raw.githubusercontent.com/odoo/odoo/master/odoo.py | python
Then follow the developer tutorial
Packages, tarballs and installers
-
Debian packages
Add this apt repository to your /etc/apt/sources.list file
deb http://nightly.odoo.com/8.0/nightly/deb/ ./
Then type:
$ sudo apt-get update $ sudo apt-get install odoo
If you plan to use Odoo with a local database, please make sure to install PostgreSQL before installing the Odoo Debian package.
For Odoo employees
To add the odoo-dev remote use this command:
$ ./odoo.py setup_git_dev
To fetch odoo merge pull requests refs use this command:
$ ./odoo.py setup_git_review