Commit Graph
106440 Commits
Author SHA1 Message Date
Goffin Simon 8684b75924 [FIX] account_asset: date of an account.asset.asset
When creating an account.asset.asset from an invoice, the date set
on the account.asset.asset must be the invoice date.

opw:692808
2016-11-09 14:36:48 +01:00
Goffin Simon df34168177 [FIX] delivery: onchange_carrier with non integrated carrier
The price set for the non integrated carrier must be the same either when you
set it on the SO with button "set_price" or when you set it on the stock picking.

The field "carrier_price" must be in readonly when the state of the picking is done.

opw:691224
2016-11-09 13:33:37 +01:00
Nicolas Martinelli 6f807c5057 [FIX] account_asset: account labels
Partial backport of 6e9d174330

opw-692155
2016-11-09 11:02:29 +01:00
Nicolas Martinelli 2738ad6ef5 [FIX] account_asset: account labels
The labels do not correspond to the purpose of the account.

opw-691623
2016-11-09 10:58:11 +01:00
David Monjoie ca11d35a62 [FIX] base: enforce deterministic view inheritance
If multiple views had the same name and same priority, the order
of application of their xpath was not deterministic. That may be a
big deal if both of them were doing xpath with position = inside.
2016-11-09 10:51:09 +01:00
Nicolas Martinelli 11e834a4c1 [FIX] account_asset: account labels
The labels do not correspond to the purpose of the account.

opw-691623
2016-11-09 09:52:49 +01:00
Pierre Masereel 231090c0e6 [FIX] stock: '_move_quants_by_lot' bad 'false_quants' values
Hypothesis:
 - We have a product 'pa' managed by lot.
 - We don't create lots, when we receive products.
 - We create lots when we deliver products.
 - We don't have any units of product 'pa' in stock.
 - We recieve 4 units of product 'pa' in one picking.
 - We create a picking to deliver 3 products 'pa' (stock.move).
 - We actually deliver 4 units of product 'pa' (1 in 'LOT1', 1 in 'LOT2' and 2 in 'LOT3').
 - The problem also occurs when you just have 2 products in and 2 out in
   different lots, but we based the example on the tests defined in
   'test_stock_flow.py'

Thesis:
 - We don't have anymore quants of product 'pa' in stock after delivering the 4 units

Problem:
 - We actually have 3 quants of product 'pa' in stock, two having the 'lot_id' corresponding
   to 'LOT3' and 'qty=-1', and one having no 'lot_id' and 'qty=2'.

Origin:
 - This problem is caused by a bad condition in the function '_move_quants_by_lot' defined
   in the model 'stock.move'.

Explanation:

When we reserve the 3 units of product 'pa' in the picking out, the quant in stock having
'qty=4' is splitted in 2 quants, one having 'qty=3' and a 'reservation_id' equals to the id
of the move in the picking out. And one with 'qty=1', having not reservation id.

So once the products are reserved, we will complete the pack operation present in the picking.
We will add 4 units of product 'pa' dispatched in Lot as 1 in 'LOT1', 1 in 'LOT2' and 2 in 'LOT3'
to the pack operation.

Then when we validate the picking, the quants with references to 'lot_id' must be created, and
then moved to the client.
Because we have set 4 units of the product 'pa' in the pack operation, an extra move of 1 unit of
product 'pa' is added to the picking to have a total of 4 untis of 'pa' moved to the customer
location.

When the function '_move_quants_by_lot' is called, it gets in parameter 'false_quants' which contains
the quant reserved by the first move, it means the quant in stock with the reservation_id to the first
move, and 'qty=3'.

The function, will now split this quant in 2 different quants:
 - one with 'lot_id' corresponding to 'LOT1' and moved to customer location.
 - one with no 'lot_id' staying in stock location still reserved to the first move.

Then, the function should reset the 'false_quants' with the quant containing the 2 last units reserved
in the quant from the last split in order to complete the next operation (create a quant with lot_id 'LOT2').

But the condition to find this new reserved quant contains (x.package_id.id != ops.package_id.id) where x is
a quant which is wrong, because when we don't manage package, x.package_id.id is 'False' and ops.package_id.id
is 'False' too. So it doesn't find the remaining quant.

So to fix it, we changed this part of the condition as the quant package_id should be equal to the pack operation
package_id (if no packages, False = False)
2016-11-08 17:14:38 +01:00
Olivier Dony 2ea66453ed [FIX] rating: allow customizing rating confirmation page based on rating 2016-11-08 16:03:42 +01:00
Wolfgang Taferner f8c8715188 [FIX] account: partner of account move
The partner of an account move is defined as a related on the partner of
the move lines. This kind of relation implies that the partner of the
account move is the partner of the first account move line. This is
arbitrary and doesn't make much sense.

Closes #14167
opw-693289
2016-11-08 15:56:21 +01:00
Christophe Matthieu 6da7628b86 [FIX] web_editor: split h5,h3,...p... node to insert table
opw-686393
2016-11-08 15:48:47 +01:00
Moisés López cc444338ed [FIX] base: change Mexican city name
'Distrito Federal' is renamed 'Ciudad de México'
English news:
https://www.theguardian.com/world/2016/jan/29/mexico-city-name-change-federal-district-df
Official reference (spanish):
http://www.dof.gob.mx/nota_detalle.php?codigo=5424565&fecha=05/02/2016

Closes #14034
2016-11-08 15:37:46 +01:00
Christophe Simonis 3d085f632d [MERGE] forward port branch saas-12 up to 6386037 2016-11-08 15:01:20 +01:00
Christophe Simonis 63860373ac [MERGE] forward port branch saas-11 up to c19f546 2016-11-08 14:43:28 +01:00
Christophe Simonis c19f546505 [MERGE] forward port branch 9.0 up to b795755 2016-11-08 14:20:07 +01:00
Christophe Simonis b795755001 [MERGE] forward port branch saas-6 up to a56d265 2016-11-08 13:51:21 +01:00
Christophe Simonis a56d2655b4 [MERGE] forward port branch 8.0 up to 4809b57 2016-11-08 13:07:33 +01:00
Goffin Simon 7fca8ad89e [FIX] account: wrong amount with _prepare_analytic_line
To have the right sign, amount = debit - credit

Before the fix:
 -Create an invoice in another currency than the currency of your company
 -Link the invoice lines to an analytic account.
 -Validate the invoice.

Bug:
The analytic lines have a negative amount in the amount currency field
which was a bit stange as it is the opposite sign than the amount in the company currency.

opw:692557
2016-11-08 11:53:01 +01:00
Nicolas Martinelli 40f2d55190 [FIX] account_asset: first depreciation amount
When an asset is set as Prorata Temporis, with a one month period, the
first depreciation amount is computed on the basis of the remaining days
in the purchase year. This doesn't make sense for a monthly
depreciation.

This commit makes the distinction between a monthly and a yearly
depreciation. In the case of a monthly depreciation, the remaining days
in the purchase month are taken into account.

opw-690034

Backport of 0a3899b72c

The fiscal year start date should be taken into account when calculating
the depreciation amount in case of prorata temporis.

opw-678072

Backport of e69d9b8b7d
2016-11-08 11:43:38 +01:00
Goffin Simon 6171f50e85 [FIX] delivery: onchange_carrier
Steps to reproduce:

- Create a Sales Order with 2 product qty
- Keep Delivery Method as DHL International
- Confirm
- Open Delivery Order
- Edit Qty of the Delivery Order
- Change Carrier (any integrated)
- Validate the transfer
- Process the backorder
- Edit and change the Carrier to normal or free delivery charges
- Validate

Bug:
The price of the free delivery charges was not recomputed and kept
the carrier price set on the SO.

Fix:
When the price of the carrier is "fixed" or "base_on_rule", the price must
be reconsidered in case of change.

opw:691224
2016-11-08 11:28:46 +01:00
Nicolas Lempereur 3c3cced5d9 [FIX] openerp: monetary not xmlrpc serializable
Since 1ba91042d monetary fields values could be represented by a
float_precision which is aimed as an improvment for digit precision when
saving a monetary field value to the database.

xmlrpclib (we are using to serialze the response) is handling some
common datatypes, but for custom one we would need to register it with
how it needs to be serialized.

This commit add a convert_to_read method to the Monetary field so when
reading monetary fields value we get the float numbers and not the
float_precision ones.

The float_precision is needed when saving, so it is alright to have float
when reading.

fixes #13857
closes #14125

opw-692373
2016-11-08 11:14:36 +01:00
Nicolas Martinelli 8fc81b871d [FIX] account: sequence of statement
It can happen that the account moves generated during reconciliation
from a bank statement with several lines have the same number.

This is a complement of commit 9365482df0. The order of statement lines
is not derterministic since it is based on `statement_id desc,
sequence`. Therefore, at each call of `process_reconciliation`, the
array `self.statement_id.line_ids.ids` can be different.

opw-690853
2016-11-08 10:53:30 +01:00
Martin Trigaux 74ef15f01f [ADD] website_theme_install: translation sources 2016-11-08 10:40:58 +01:00
Nicolas Martinelli 11321b09fb [FIX] point_of_sale: PoS journal
complement of commit e99e0d6922, to make it work in multi-company
environments.

opw-691771
2016-11-08 10:07:27 +01:00
Goffin Simon d32970830e [FIX] crm: the field stage_id in a lead is useless
Since this commit d025251c7e, a lead
does not use stage anymore. A lead is either alive or archived.
Then the field stage_id is useless in the crm_case_tree_view_leads view

opw:691838
2016-11-08 09:47:04 +01:00
Goffin Simon dfe12d20df [FIX] account_asset: context in open_entries
The function open_entries doesn't have to propagate the context
because it propagated group_by from other models.
Example:
- Click on Accounting > Adviser > Assets
- Click on Group by > Category
- Click on an asset
- Click Entries

The group by "category_id" was propagated on the model "account.move"
and it led to a traceback.

opw:692888
2016-11-08 09:27:44 +01:00
Nicolas Martinelli 143c998bba [FIX] stock_account: default new price
When modules `product_extended` is installed, click on "Compute from
BOM" on the product view. It opens a wizard with a default new price of
zero, even if the components of the product have a price defined.

This is an oversight of 191994577. When calling `default_get`, the
default values set thanks to context keys `default_*` have already been
replaced.

opw-693053
2016-11-08 08:32:35 +01:00
stefanorigano 23c6c37c8d [FIX] mass_mailing: vertical alignments & multiline text
* vertical alignment: Keep ‘vertical-align: top’ as default, but
define ‘middle’ exceptions for header and footer snippets.

* ‘comparison_table’: multiline text.
Remove inline style for inner <p/> elements and define default padding
for parent <td/> instead. This will allow to create multiple line of
text keeping a coherent margin between each <td/>.
A css set of rules triggering any kind of elements allow to use
multiline text for any kind of tag (p, h1, etc..)

* Footer snippets padding, minor
2016-11-07 17:08:18 +01:00
Nicolas Martinelli 4809b57283 [FIX] account: tax line amount
The company currency is USD, the invoice currency is EUR.
- Create an invoice in EUR, set an invoice date
- Compute the taxes (click on "update" button)
- Change the exchange rate between EUR and USD
- Validate the invoice

At validation, the tax lines are not recomputed. Therefore, the tax
amounts, are still converted in the company currency using the old
rates. On the other hands, the other account move lines will have the
appropriate new rate.

Closes #14024
opw-692430
2016-11-07 14:31:00 +01:00
Christophe Matthieu 3378f9c771 [FIX] web: correctly saves last change in wizards with many2omany
With this change, form_relational_widgets will wait for the 'web.ListEditor'
module to be loaded before patching the list view.  This is particularly
important for wizards containing and editable list view.

Note that to achieve this, I had to fix a horrible hack in session.
2016-11-07 13:39:08 +01:00
Nicolas Martinelli 0a17be70e0 [FIX] account: tax line amount
The company currency is USD, the invoice currency is EUR.
- Create an invoice in EUR, set an invoice date
- Compute the taxes (click on "update" button)
- Change the exchange rate between EUR and USD
- Validate the invoice

At validation, the tax amounts are not recomputed. Therefore, they are
still converted in the company currency using the old rate.

Closes #14024
opw-692430
2016-11-07 13:35:54 +01:00
Christophe Matthieu af865c2e9e [FIX] web_editor: widget html preview doesn't match wysiwig editor (widget html iframe)
The widget html is used for plain text and html content.
Need to check if the content is a valid html code, if is not wrap with p tag every lines.

opw-692158
2016-11-07 12:02:13 +01:00
Damien Bouvy 929cfc2616 [FIX] sale_timesheet: stpo creating tasks in wrong project
When confirming a SO as the admin, for example through the website_quote
module, browse the product with the correct company to get the right
project (this is a company_dependent field).
2016-11-07 11:45:59 +01:00
Odoo Translation Bot 7cfbdd57b4 [I18N] Update translation terms from Transifex 2016-11-07 11:09:10 +01:00
Raphael Collet 530909405d [FIX] base: allow write() on ir.model as long as values are not changed
This should enable the re-import of model exported to XML.
2016-11-07 10:25:50 +01:00
Aaron Bohy 3555625990 [FIX] web: do_action in target='new': specify Dialog size
Instantiate the Dialog with the optional dialog_size specified in
the action's context.
2016-11-07 10:25:50 +01:00
Goffin Simon 99743cc4aa [FIX] sale: _get_tax_amount_by_group
The function _get_tax_amount_by_group must take the discount applied
on line when computing the amount of each tax.

opw:692560
2016-11-07 09:42:07 +01:00
Nicolas Martinelli 62b3de52dc [FIX] account: write-off currency
In a multi-currency environment, company currency is USD
- Create an invoice of 100 EUR, corresponding to 65 USD
- Register a payment directly from the invoice (button "Register
  Payment") of 60 USD. Choose "Mark invoice as fully paid".
- The write-off line contains the amount in the invoice currency (field
  `amount_currency` filled in.

This was introduced in commit 003f2ee9b.

On the other hand:
- Create an invoice of 100 EUR, corresponding to 65 USD
- Create a bank statement of 60 USD.
- Proceed to reconciliation, and create a write-off line of 5 USD.
- In this case, the write-off line does not contain the amount in the
  invoice currency.

The user expects the same behavior in both cases, so we introduce the
amount currency in the second case.

opw-690784
2016-11-07 09:13:25 +01:00
joe1981alAPR f764a76d2e [CLA] Add corporate signature for APR, LLC
Closes #14138
2016-11-07 08:32:20 +01:00
Odoo Translation Bot 9da2f44587 [I18N] Update translation terms from Transifex 2016-11-06 03:41:11 +01:00
Odoo Translation Bot 369e0bcb45 [I18N] Update translation terms from Transifex 2016-11-06 02:56:48 +01:00
Odoo Translation Bot ac1c9b6cb4 [I18N] Update translation terms from Transifex 2016-11-06 00:36:01 +01:00
Joren Van Onder 0be279174d [FIX] point_of_sale: split up validate_order for easier customization
Certain localities (eg. Colombia, but South America in general) legally
require somewhat complex behavior when validating a POS order.

It was difficult to implement this behavior in the POS. The
validate_order function did way too much and was way too large. If a
user wanted to add an additional check that an order has to pass before
allowing validation the user would probably have to copy all the
validate_order code.

To solve these issues we split the functionality of validate_order into
two functions:

order_is_valid: returns true or false depending on the validity of the
order

finalize_validation: finalizes the order by sending it to the backend
etc.

Fixes #13142
Closes #13994
2016-11-04 17:49:50 -07:00
Christophe Simonis 3c30db5cbc [FIX] hr_holidays: one attribute "name" is enough 2016-11-04 17:35:11 +01:00
Martin Trigaux 66b8cc5a88 [FIX] hr_holidays: missing name on filter
To be able to select the filters via context
2016-11-04 17:12:00 +01:00
Pierre Masereel 56278a2303 [FIX] stock: _compute_package_info when children are packages
When we put a pack in a pack and try to validate the picking, we get
an error saying we are trying to create a pack operation without a
location id.

This is caused by the 'quant.package' location computation, when we
validate a picking, odoo will create the pack operations in the next
picking if there are any. And when it tries to create a pack operation
of a pack in pack, it cannot get the location id of the top level
package quant because in the compution of the location_id, it only looks
at quants having a package_id correspeding to the package. And there are
not any when the it's a package of package.

To solve this issue, we fixed the function '_compute_children_quant_ids'
that doesn't work either because of the same reasons. And then we use it
in function '_compute_package_info' to get the quants if there are any.

This bug has been introduced in rev: https://github.com/odoo/odoo/commit/fe9b31c0e703cf4f3f4f4001ab199f7a4353f9b9
2016-11-04 16:42:28 +01:00
Christophe Matthieu 2c1bcc5b11 [FIX] web: display error when js modules fails
Up to this commit, the JS module system only notified failed modules as
an 'information' instead of an 'error'.  This was annoying, since the
runbot takes the result into account, and might be green even though a
module failed to load.
2016-11-04 16:40:58 +01:00
Christophe Matthieu 5f16a6f8ab [FIX] web_kanban: display kanban tooltip
Fixes opw-687563
2016-11-04 16:34:20 +01:00
Josse Colpaert 1872b39f92 [FIX] stock: default value in many2one for lots and package should be set by passing correct parameter in context
In v9, when in the context of the many2one field in the XML of the view
you did not put default_ before the field (context={'product_id': product_id}
instead of context={'default_product_id': product_id}, this would work.

The problem is that in saas-11, this is not the case anymore and so,
when you created new lots upon receipt (or another operation), the product_id was not set,
so you needed to set it for each lot you create and can even put a different product than foreseen.

So, we changed those for the packages and the lots.

opw-692679
2016-11-04 15:51:16 +01:00
Christophe Matthieu a8e79e960a [FIX] bus,im_odoo_support, web*: fix various memory leaks
* Tip are never destroyed when change view mode
* unbind methods
* mail: memory leak with unbind methods
* web: memory leak because 'ui-autocomplete' is never destroyed
* web_editor: memory leak for wrong unbind on destroy
* web: memory leak: must remove fileupload handler
* bus: memory leak: correctly debind handlers on window in bus.Bus
* remove handlers on switch buttons and views $buttons
* remove handlers on breadcrumbs
* web: memory leak: correctly debind handlers
* im_odoo_support: memory leak: remove fileupload handler odoo_support

Note: part of this commit was actually authored by aab
2016-11-04 14:07:35 +01:00
Martin Trigaux dce53ea34c [FIX] auth_ldap: wrong configuration view
665781d moved the configuration to the general settings menu instead of the
company form

Fixes #14071
opw-692645
2016-11-04 13:42:54 +01:00