`qty` is the quantity in the product default uom.
`move.price_unit` is the price unit of the product
in this move, for the specific uom of this move.
The quantity to use is therefore the quantity
in the move uom, `move.product_qty`
Closes#4555
The template had been previously dropped by mistake.
+ the validation buttons were not correctly handled and so changing
his password was not possible (these buttons must be in the modal
footer).
The pricelists used in the website shop was cached as a list of records. When
retrieving this information in another request, the records are broken, since
their cursor has been closed! Fix it by storing record ids instead.
When changing the template of a quote, lines and suggested lines are added to your quotation
The price of line is adapted to the quote's pricelist but not the price of options
This commit adds this behaviour to option lines
For fields with `translate=True`, translations are considered for all languages
except `en_US`. However, for xml-translated fields, translations must be
considered for all languages (there exist `en_US` translations for the terms.)
When a payment method is created, the field check_sequence_id is defined
only at the time of the create (_create_check_sequence). This method
fails since the check_sequence_id is not created yet.
X Application(s) becomes just Application(s) on the kanban card in order
to be coherent with other kanban views
When computing a job documents, do not include documents from already
hired employees, only applicants in the pipe.
The settings views are now using radio buttons which are using labels.
These were set to bold by bootstrap. Now force font-weight normal for
labels which are not labels inside an oe_form_group_cell_label (field
main label).
Writing frequently to master data, and particularly to res.users
records is dangerous because it can temporarily delay/abort
concurrent transactions due to FK locking/serializability
heuristics. (Even with PostgreSQL 9.3+)
The `login_date` field updated when a user is authentiocated
is still useful but better handled in a separate table that
exclusively receives independent INSERTs (no UPDATE/DELETE).
This minimizes the chances of transactional conflicts.
This commit moves the login_date info into a separate
`res.users.log` table for this purpose, replacing it
with a related field. The user and login date info are
automatically handled by the magical fields (create_uid,
create_date) in `res.users.log`.
The related field must not be stored because that would
create the same problems as the original field.
In order to cleanup redundant entries in res.users.log
the 'auto-vacuum' cron job used for TransientModels was
extended to be a generic "internal data vacuum cleaner",
and now takes care of this as well.
The code for updating last login and vacuuming was split
up into smaller methods to make extensions easier.
Fixes#8585Fixes#8590
Those features are available on client-side ir.filters
via pyeval, so it's useful to have them on the server-side
so the same ir.filters can be used as well.
This revision adds the possibility to use the key
`default_category_id` in the context to set
the UoM category when quick creating a new UoM,
like it's the case everywhere else with the
`default_*` keys passed in the context.
Closes#4407
Users subscribed to creation of records (new leads in a sales team, new
tasks in a project, etc.) are never notified. The reason is that users
were subscribed after the record creation notification.
Introduced in 43915a8721Closes#8723
Like view manager containers, client action containers needed the
overflow:auto property to compute their correct height inside their
flex context. This also allows client action as the reconcilation in
accounting to not care about their height.