- Set groups on location menu for visible only if mulit-location is set.
- Restrucured the menus in configuration.
- Products
- Categories
- Barcode Nomenclatures
- Unit of Measures
- UoM Categories
- UoM
- Review UI custom colors (used for tags and kanban cards)
- Properly align control panel items
- Remove links style overrides (these rules are not necessary anymore
because already specified in bootstrap_overridden.less variables
definitions)
- Set new webclient bg color
- Adapt colors in kanban view
Complement of commit b0d498c11d
The delivered quantity displayed on the "Delivery Slip" should use the
same UOM than the "Ordered Quantity".
opw-766914
When an onchange modifies an x2many field, the line on which the user
works remains in editable mode and the cursor is returned to the same
position.
The second argument of create command is a reference used to reactivate
the edited line.
The x2many "create" command is now like: `(0, ref, vals)`, where `ref` is an
arbitrary reference that may be used to identify a new line in the relation.
The reference is returned in a similar command by the method `onchange`.
`onchange` now supports self-modifying x2many fields.
Prevents false positive error in tests.
Issue: If an error occurs that the view remains visible, then other tests that use a pointer or focus can not be performed. Errors occur because the new views are introduced afterwards and are therefore not always visible.
Suppose two ways to install sale:
-i account followed by -i sale: account is installed, the execute is done on the chart template and then,
sale is installed. In this case, the IrDefault values already exists when sale is loaded.
-i sale directly: account and sale are installed, the execute is done on the chart template.
The difference is that there is no IrDefault values set on the demo data in sale.
The problem is that such behavior can lead to wrong tests. For exemple, having taxes_id/supplier_taxes_id
set or not set on product.template during sale tests.
When producing products tracked by serial number only allow to choose
a serial number produced in a previous work order in the same
manufacturing order.
When producing multiple products tracked by serial number only the
serial number was only set for the first one in every work order. This
makes it so that when you create SN1, SN2 and SN3 in the first work
order they show up as default in the following work orders.
Make sure '.o_invisible_modifier' table-cells are forced back to
`display: table-cell` to keep correct alignement. Indeed using the
`initial` value forced them to `inline` instead (creating some
obvious visual bugs in some cases).
The problem occurred on form views with an x2many field with a
default value containing CREATE commands, i.e. when opening such
a form view in create mode, the x2many field is pre-filled with
some (non-existing yet) subrecords.
If the user then edited those subrecords, and then clicked on
'Save' to create the main record, an 'UPDATE' command was sent
alongside the 'CREATE' one for the x2many, and the id of the
'UPDATE' command was a virtual id (as the subrecord didn't exist
yet), and it crashed.
This could happen in MRP:
- Enable lots in Iventory
- Choose a product which is a component of another (through mrp bom)
- Set this product as tracked by lot
- Set this product inventory quantity to 0
- Create a new manufacturing order for the product for which it is a
component
- Click on "Check Availability"
- click on Produce: the many2many already contains a subrecord
- edit the lot field of that subrecord
- click on 'Record Production'
When updating the quantity to produce on a MO, the quantity done
on finished/consumed moves that were not done was erased.
It happens due to write on stock move that always wanted to
unreserve the move and thus drop the move lines with qty_done.
This issue has been resolve in previous commit
This commit correct some mistakes in wizard methods in order
to correctly update open moves.
Write method on stock move always unreserve concerning move if
initial demand is modified. Unreserve will delete all move lines
linked to the move including those already modified.
Thus modify initial demand(unreserve) will destroy all the
job done by the user.
This commit will only unreserve move is the initial demand
is smaller than the quantity reserved (could be improved by dropping
only few move lines). If the initial demand is greater than the
reserved quantity it will not unreserve but only change the
state to partially avaialbe.
When the external button of a many2one field is clicked, the
related record is opened in a dialog. When the user clicks on
'Save' in this dialog, a 'reload' event is triggered to reload the
parent view (the one in the background), as the display name might
have changed.
However, when there is another many2one field in the opened dialog,
and if its external button is clicked, there are 2 opened dialogs,
and thus 3 nested form views. If the user clicks on 'Save' in the
third one, only the direct parent view must be reloaded (the one
in the first dialog).
Before this rev., the 'reload' event wasn't stopPropagated, so it
was handled by the view in the dialog, and by the one in the
background, which produced a crash.
This could happen for instance in Sales Order, edit a sale order
line, click on the external button of the product, in the dialog,
click on the external button of the category, edit some field and
click on 'Save'.
Closes#19052
Before this rev., when the user pressed 'TAB' in the last cell of
the last row of an editable list with attribute create="0", a new
line was added to the list, thus totally ignoring the attribute.
Now, it goes back to the first cell of the first row instead, as it
was before the new views.
Closes#19053
Previous tag design was a colored block with a text on hover. This
text was explicitely html-escaped as put as the 'title' attribute
value.
Since https://github.com/odoo/odoo/commit/89cbbe3b0d6800a89b4385965151ed368659424f:
The text is now always shown and is thus naturally html-escaped by
the jQuery `text` method... and should thus not be explicitely escaped
before.
- The generic form now support form & s2s payments.
- The generic form is now implemented to pay on e-commerce and online
quotation.
- Added icons of supported credit cards for each payment acquirers.
- Replaced e-commerce footer that was displaying payment acquirers by
supported credit cards icons.
- The payment form doesn't render s2s forms in python anymore.
- The payment form now display an error when credit cards credentials
are not filled.
- Fixed a bug where paying with a registered token on e-commerce would
crash.
- Fixed errors not displaying on the payment form.
Before this commit, when the shop was in multi images, the main image was not refreshed when changed in the back end.
This was because of the ?unique parameter that was computed on the product variant image. Hence, when the product image changed, the variant image did not, the hash neither, and the image wasn't refreshed
This commit fixes this by adding an option to the qweb.field.image
OPW 765287
closes#19133
-changing the date_invoice field do not reset anymore the sequence_number_next (it now only affects the prefix)
-the date_invoice is now passed as ir_sequence_date AND ir_sequence_date_range in the context, for sequences that use the date_range feature in prefixes