Commit Graph
103231 Commits
Author SHA1 Message Date
Nicolas Martinelli eb26694e0f [FIX] stock_landed_costs: account/valuation inconsistencies
When stock landed costs are divided per product unit, inconsistencies
may arise between the real stock valuation and the stock valuation
account. This is likely to happen when several products are bought, but
these products leave the stock one at a time.

A numerical example is the following: a landed cost of 15.00 is applied
to a purchase of 13 units. An amount of 15.00 is recorded when the
products enter the stock. If the product leave the stock one at a time,
13 entries of 1.15 are recorded (15.00/13 = 1.153846... ≈ 1.15), which
is then equal to 13 * 1.15 = 14.95. In this case, All the products have
left the stock (stock valuation is zero), but 5 cents remain on the
account.

This is of course even worse the higher the ratio is. For example, a
landed cost of 4.00 split into 1000 units sold piece by piece will never
be recorded when a product leaves the stock.

The fix is to record the rounding difference on a specific quant. In the
previous example, instead of adding 1.153846... on the unit cost of the
13 units, we do the following:
- 12 units to which we add 1.15 on unit cost
- 1 unit to which we add 1.20 on unit cost

opw-675222
2016-04-20 13:09:25 +02:00
Nicolas Martinelli 262d98bb69 [FIX] stock_account: account/valuation inconsistencies
When the product price is divided per product unit, inconsistencies
may arise between the real stock valuation and the stock valuation
account. This is likely to happen when a product is bought in a UoM
different from the standard UoM of the product.

A numerical example is the following: a box of 13 is bought for 15.00.
An amount of 15.00 is recorded when the products enter the stock. If the
product leave the stock one at a time, 13 entries of 1.15 are recorded
(15.00/13 = 1.153846... ≈ 1.15), which is then equal to
13 * 1.15 = 14.95. In this case, All the products have left the stock
(stock valuation is zero), but 5 cents remain on the account.

This is of course even worse the higher the ratio is. For example, a
box of 4.00 split into 1000 units sold piece by piece will never be
recorded when a product leaves the stock.

The fix is to record the rounding difference on a specific quant. In the
previous example, instead of adding 1.153846... on the unit cost of the
13 units, we do the following:
- 12 units to which we add 1.15 on unit cost
- 1 unit to which we add 1.20 on unit cost

opw-675222
2016-04-20 13:09:25 +02:00
Nicolas Martinelli bd025cda6a [FIX] stock_landed_costs: former_cost_per_unit precision
The precision of `former_cost_per_unit` should not be set. Indeed, a
stock move can contain several quants with different unit prices.
Therefore, we should not round the field when stored, otherwise the
difference per unit will not be calculated correctly.

This is a workaround since we cannot change the DB structure in stable.

opw-675222
2016-04-20 13:09:24 +02:00
Nicolas Martinelli 85fd972149 [FIX] stock_landed_costs: use correct UoM
Use the normalized quantity, otherwise the amount per unit is wrongly
calculated.
2016-04-20 13:09:24 +02:00
Xavier Morel e23a879e57 [IMP] read_group: better version of ec12e529c8
Simpler fix for handling of grouping on an empty date/datetime, adds a
few tests.
2016-04-20 12:54:54 +02:00
Goffin Simon e113ba6599 [FIX] account, l10n_generic_coa, l10n_th: U.S. CoA Misconfigured
Translation.

opw:674632
2016-04-20 12:26:58 +02:00
Goffin Simon 33c58a351f [FIX] l10n_generic_coa:
The Cost of Good Sold should be of type "Direct Costs

opw:674632
2016-04-20 12:26:57 +02:00
Goffin Simon 6f5acf6001 [FIX] account, l10n_generic_coa, l10n_th: U.S. CoA Misconfigured
Translation.

opw:674632
2016-04-20 12:08:04 +02:00
Goffin Simon b8e73c248e [FIX] l10n_generic_coa:
The Cost of Good Sold should be of type "Direct Costs

opw:674632
2016-04-20 12:08:03 +02:00
Olivier Dony fc2aa73606 [FIX] web: fix db manager layout in Chrome 50
Complement of f992c8ee19,
to be reverted in saas-6+ and in 8.0 when Chrome's
fix reaches the stable Chrome channel.

Fixes #11629

See https://bugs.chromium.org/p/chromium/issues/detail?id=603507
2016-04-20 11:42:03 +02:00
Joren Van Onder d043fd03ce [FIX] point_of_sale: display correct uom on weighable products
Everything's displayed fine on orderlines with weighable products, this
only affected the small blue labels on the products.

opw-674264
2016-04-20 11:09:07 +02:00
Denis Ledoux 5c47651306 [FIX] sale: allow to import quotations without lines description
When importing a quotation,
if the lines `name`, `price_unit`, `product_uom` or `tax_id`
are not specified, but the product is,
retrieve them from the product `on_change`

This was the case in Odoo 8.0,
it was done as well in the override `create` method
of `sale.order.line`

opw-675434
2016-04-20 11:03:00 +02:00
Denis Ledoux 21ccf2fe1c [FIX] stock: remove spaces surrounding the / in locations complete name
The location name get is computed as:
`parent.name + '/' + child.name`

While, the complete was computed as:
`parent.name + ' / ' + child.name`

This leaded to an obvious inconsistency.

Besides, this prevented to use the `location`
filter in the search of the products list to
know the quantity available of products for
a specifc location, as the domain used
to retrieve the locations is set as
`[('complete_name','ilike',context['location'])]`

`context['location']` containing the content of the `name_get`
(No spaces surrounding `/`)
and
`complete_name` surrounding `/` with spaces.

opw-674378
2016-04-20 10:12:45 +02:00
Fabien Pinckaers 4b2091e8c9 [FIX] account: demo data invoice line without required name
[IMP] account: d'ont create journal items for invoice lines with quantity 0 (not amount because of tax)
[IMP] crm: usability kanban view and schedule an activity
[FIX] crm: schedule an activity bug when no activity yet
[IMP] website: app for website (not a menu in website admin)
2016-04-20 00:17:17 -07:00
Stephen Medina 92f1cbeb6f [FIX] server: support psutils >= 4.0
In version 3, process.memory_info() returns only rss and vms
In version 4, it now returns rss, vms, shared, text, lib, data and dirty
Automatic unpacking is no longer possible in 4.0

Fixes #11052, Closes #11459
2016-04-20 09:13:27 +02:00
Stephen Medina 58d99909ec [CLA] signature for stephen144
signature #11459
2016-04-20 09:13:27 +02:00
Eduardo Rodríguez Crespo 364e80f718 [CLA] signature for erocre
Closes #11639
2016-04-20 09:13:27 +02:00
Rubén bdfc75e613 [CLA] coprorate signature by bisneSmart
Closes #11312
2016-04-20 08:53:08 +02:00
javcasas c225c78a3a [CLA] signature for Javier Casas
Closes #11329
2016-04-20 08:52:24 +02:00
Cyril Gaudin 1bb2371746 [CLA] add cyrilgdn to camptocamp signature
Closes #11711
2016-04-20 08:50:20 +02:00
Cody K ae594be594 [CLA] individual signature for tesserb
Closes #11745
2016-04-20 08:48:44 +02:00
Yenthe 2a40c72ac1 [CLA] signature for Van Roey corporate agreement
This is the corporate agreement for Van Roey.

Closes #11653
2016-04-20 08:47:20 +02:00
Denis Ledoux 999b2c7e32 [FIX] mrp: expected date of the manufactured product move
This revision is related to eafebcb308

According to the `stock.move` fields definition:
`date` is the "scheduled date until move is done, then date of actual move processing"
`date_expected` is the "Scheduled date for the processing of this move"

The scheduled date of the product being produced in a
manufacturing order is the same scheduled date than written
on the manufacturing order.

opw-674237
2016-04-19 18:25:13 +02:00
Olivier Dony 7f6bd2dc66 [FIX] web: fix layout issue in Chrome 50 (again)
Makes the fix in f992c8ee19
specific to the view manager of the main oe_application
container, in order to avoid disrupting other view manager
occurrences (such as the ones in modal windows or x2many
list views).

Fixes #11629 (again)

Note: Hopefully the Blink team will fix Chrome so we can
get rid of this hack in the future:
  https://bugs.chromium.org/p/chromium/issues/detail?id=603507
2016-04-19 17:44:24 +02:00
Richard Mathot cd13ea9935 [FIX] mail: race condition in mail composer
When an user sends an email from the chatter then quickly switch to
another record, it may happen that this.composer is already destroyed.

We prevent to display a traceback with this fix.
2016-04-19 17:01:44 +02:00
Denis Ledoux e1a17b433d [FIX] audittrail: prevent loop between models having *2m between each other
When setting rules on models having o2m/m2m relationship
between each other
e.g.
- `res.partner`:
  o2m `sale_order_ids` to `sale.order`
- `sale.order`
  o2m `message_follower_ids` to `res.partner`

an infinite loop could occur if records
of these models referenced records of the
other models in their o2m relationships
e.g.
 - `res.partner` ID 68:
   `sale.order` ID 9 in its `sale_order_ids`
 - `sale.order` ID 9:
   `res.partner` ID 68 in its `message_partner_ids`

This revision solves this use case, by passing the already
treated records in the context and checking that the records
haven't yet be treated before making the recursive call.

This revision makes sure to not break the API of methods
`get_data_context` and `prepare_audittrail_log_line`
(a new parameter had to be introduced for the above purpose)

opw-670904
2016-04-19 16:56:20 +02:00
fossoult 17d0117edc [FIX] web: expose list view Column widget
The list view Column widget should be exposed, so it can be extended.
This is required to allow the creation of other kind of list widgets.
The _format method is not extendable if we don't add this line.

(comment from ged) The file list_view.js should be split in two, and
reorganized, but this should not be done in 9.0.
2016-04-19 16:14:28 +02:00
Virbhadrasinh Gohil 9205a143ed [MIG] stock_picking_wave: new API
New API yey ! Otherwise, no change. Only migration.
2016-04-19 16:01:39 +02:00
Virbhadrasinh Gohil 030d25f0de [MOV] stock_picking_wave: rearrange files
Files are renamed and moved according to the guidelines. No change has been
performed in this commit. No bug has been harmed.
2016-04-19 16:01:06 +02:00
Ravi Gohil 09c5c241be [REM] stock_picking_wave: Removed unused controller 2016-04-19 16:01:05 +02:00
Stefan Rijnhart 04765d4917 [FIX] hw_escpos: RBG images do not necessarily have an alpha channel 2016-04-19 15:34:45 +02:00
Mansi Gandhi be232e69da [REM] mail: subtype dropdown in chatter
The possibility to choose a subtype when logging a note was added with the
activities mechanism in CRM. However as the user should not use the chatter
but a dedicated wizard in order to do this, the dropdown is removed.

The internal subtype mechanism is kept. Only the possibility to log something
else than a note through the chatter UI has been removed.
2016-04-19 15:25:51 +02:00
Denis Ledoux 7bde7b9016 [FIX] mail: message_post requires record write access
By default, users are supposed to be able to write messages
in threads only if they have the write access on the record.

This behavior is the behavior defined in Odoo 8.0.

This behavior can be changed by defining
`_mail_post_access` on the model,
to allow the creation of new messages
if the user has only the read access, for instance.

This is the case on `project.issue`, for instance.

Since 9.0, @ revision 88b8cd0587,
this behavior was broken: Any users having the read
access on the record was allowed to write messages in the thread,
while this should not be the case, except if
`_mail_post_access = 'read'`
has been defined on the model.

This is because the SQL query which is performed in order
to know the thread messages the user has been notified of
was expected to return only the ids of the notified message,
while it actually always returned all the message ids of the thread,
because of the LEFT JOINS, e.g.

```
LEFT JOIN "mail_message_res_partner_rel" partner_rel
ON partner_rel.mail_message_id = m.id AND partner_rel.res_partner_id = (%%s)
```

Instead of just checking the ids of the messages returned by this
query, it must check that one of the two columns
`partner_rel.res_partner_id` or `channel_partner.partner_id`
is filled, meaning the partner has been notified of the message or
is a member of the channel the message has been posted to.

opw-668589
2016-04-19 15:16:32 +02:00
rmu-odoo 83569f9b32 [IMP] website_slide: subject of publish emails
When publishing a slide, a message is posted using a template defined on the
channel. This commit uses the template subject to form the message
subject instead of having a generic 'Re: <slide>' as subject.
2016-04-19 14:46:38 +02:00
qdp-odoo 1df72cb01b [FIX] account: fixed query_get() when a domain is passed as argument (safe_eval must receive a string) 2016-04-19 14:26:44 +02:00
Joren Van Onder e18660c330 [FIX] web: fix iOS file downloading
e8a00bc50d moved the get_file function
from web.session to web.ajax. The issue is that get_file uses
session.url() for iOS devices. Also, in order to prevent an infinite
spinner options.complete() is called before actually opening up the new
window. Although this resolves the issue it still requires the user to
configure Safari to allow pop-ups, otherwise they are silently ignored.

opw-672882
2016-04-19 13:26:01 +02:00
Christophe Simonis 73fbadf8ae [MERGE] forward port of branch 9.0 up to 7c04420 2016-04-19 12:58:55 +02:00
Christophe Simonis 7c04420802 [MERGE] forward port of branch saas-6 up to 7033a97 2016-04-19 12:48:58 +02:00
Christophe Simonis 7033a97f77 Revert "[FIX] web: fix layout issue in Chrome 50"
This reverts commit f992c8ee19 which
should not be forward-ported.
2016-04-19 11:44:48 +02:00
Christophe Simonis 76d1116a25 [MERGE] forward port of branch 8.0 up to 9fa53b7 2016-04-19 11:33:17 +02:00
Goffin Simon cb5d41da3b [FIX] account_asset: asset_create
When creating assets from invoice lines, the system must check
that assets have not already been created for the related invoice.
If assets already exist then these assets have to be removed.

Used case:

- In the purchase journal, tick "allow canceling entries"
- On a supplier invoice line, set an asset category
- validate the invoice
- cancel the invoice
- set to draft
- validate the invoice

Before the fix: the asset was created twice.
After the fix: A warning is raised if an asset already exists for the invoice.

opw:674674
2016-04-19 11:27:34 +02:00
Nicolas Martinelli a4fbaaa776 [FIX] sale_timesheet: fix traceback in write
When calling `write` with more than one id, `_get_timesheet_cost`
generates a traceback since it uses `self.is_timesheet`.
2016-04-19 10:25:41 +02:00
Joren Van Onder 4ff34a98bc [FIX] point_of_sale: adapt to Chrome 50's new handling of cell heights
Forward-port of saas-6 77dae4c9c5.

Chrome 50 treats percent-height divs inside of auto-height cells as
auto [1]. So from now on it's important that an explicit 'height: 100%' CSS
property is set on parent tds, otherwise you'll end up with elements
with a height of 0.

An extra difficulty is that this new height property on
subwindow-container will result in the element being as high as his
parent table. So the collapsed trick doesn't work anymore in the
customer list.

This has to be done conditionally. The proposed workaround of adding
100% height to parents of affected elements causes issues in IE/Edge
because the effect of adding a height in percent to a table-{cell,row}
element is not defined by CSS [2].

[1] https://chromium.googlesource.com/chromium/src/+/8876584335b48c99cf8df552ef4d8efebb131041
[2] http://stackoverflow.com/a/27384730
2016-04-19 09:49:54 +02:00
Joren Van Onder 77dae4c9c5 [FIX] point_of_sale: adapt to Chrome 50's new handling of cell heights
Forward-port of v8 9fa53b7ee7.

Chrome 50 treats percent-height divs inside of auto-height cells as
auto [1]. So from now on it's important that an explicit 'height: 100%' CSS
property is set on parent tds, otherwise you'll end up with elements
with a height of 0.

An extra difficulty is that this new height property on
subwindow-container will result in the element being as high as his
parent table. So the collapsed trick doesn't work anymore in the
customer list.

This has to be done conditionally. The proposed workaround of adding
100% height to parents of affected elements causes issues in IE/Edge
because the effect of adding a height in percent to a table-{cell,row}
element is not defined by CSS [2].

DO NOT FORWARD-PORT!

[1] https://chromium.googlesource.com/chromium/src/+/8876584335b48c99cf8df552ef4d8efebb131041
[2] http://stackoverflow.com/a/27384730
2016-04-19 09:01:32 +02:00
Joren Van Onder 9fa53b7ee7 [FIX] point_of_sale: adapt to Chrome 50's new handling of cell heights
Chrome 50 treats percent-height divs inside of auto-height cells as
auto [1]. So from now on it's important that an explicit 'height: 100%' CSS
property is set on parent tds, otherwise you'll end up with elements
with a height of 0.

An extra difficulty is that this new height property on
subwindow-container will result in the element being as high as his
parent table. So the collapsed trick doesn't work anymore in the
customer list.

This has to be done conditionally. The proposed workaround of adding
100% height to parents of affected elements causes issues in IE/Edge
because the effect of adding a height in percent to a table-{cell,row}
element is not defined by CSS [2].

DO NOT FORWARD-PORT!

[1] https://chromium.googlesource.com/chromium/src/+/8876584335b48c99cf8df552ef4d8efebb131041
[2] http://stackoverflow.com/a/27384730
2016-04-19 08:53:10 +02:00
Goffin Simon 6057e645d6 [FIX] purchase: Shipping exception when cancelling a PO
When canceling and clicking on "reset to draft" button a PO with
invoicing method = Based on generated draft invoice, the purchase
workflow led to a shipping exception.

To be in state done the PO must have:

All its PO lines invoiced with _set_po_lines_invoiced
All its incoming shipments done with test_moves_done

opw:673561
2016-04-19 08:47:22 +02:00
Fabien Pinckaers 0613ed4451 [iMP] account: better terminology, related button in two lines instead of 3 2016-04-18 21:27:09 -07:00
Joren Van Onder 09a9e4aeb5 [FIX] point_of_sale: deal with Chrome 50's new height inheritance
Chrome 50 treats percent-height divs inside of auto-height cells as
auto [1]. So from now on it's important that an explicit 'height: 100%' CSS
property is set on parent tds, otherwise you'll end up with elements
with a height of 0.

DO NOT FORWARD-PORT!

[1] https://chromium.googlesource.com/chromium/src/+/8876584335b48c99cf8df552ef4d8efebb131041
2016-04-18 16:42:09 +02:00
Denis Ledoux 237a0b6160 [FIX] account: translate-able label on invoices
Provide the possibility for the taxes
label on invoices to be translated.

In other words,
to give the possibility for the taxes labels
in the invoice report to be translated in the invoice
lines
(e.g. 21% VAT in English, 21% BTW in Dutch,
in the invoice lines)

opw-675038
2016-04-18 15:59:33 +02:00
Denis Ledoux 6c7a88d74c [FIX] account: translate tax description in partner lang
The tax description in the taxes lines
(e.g. in invoices) is supposed
to be translated in the customer/supplier language,
as this is what is displayed in the printed reports
sent to the customer.

This is the behavior in place in Odoo 7.0 & 8.0.
(e.g. in invoices)

opw-675038
2016-04-18 15:59:33 +02:00