In maintenance.equipment form view, the field owner_user_id has been replaced
by equipment_assign_to, employee_id and department_id. But in the kanban view,
this field was still displayed even though the image was replaced by the image
of the employee. So now, the kanban view follows the same behavior as the form view.
opw:724378
- Create a PO with a product "Control Purchase Bills" set to "On
received quantities".
- Validate the PO.
The invoice status is "Waiting Bills", while it should be "Bills
Received".
opw-726245
If you had a price with a tax included and the user has fiscal position.
The tax included in the unit price was not substract before the mapping.
Eg: product $115 with tin 15% included in price.
Once in the cart with a fiscal position intracom (0% tva), the unit price
should be 100$ and not 115$.
This commit closes#16022
- Create a product with unique SN, create a BOM for this product
- Create a MO to produce 2 units
- Produce the first unit, create a lot number
- Produce the second unit, use the previously created lot number
Nothing prevents the user to do this. However, the user won't be able to
set the MO as "Done", but it is better to prevent the issue as soon as
possible.
opw-724944
When you have multiplle global push rules with the same source location,
a traceback is raised because the '_apply' method of
"stock.location.path" is called with more than one record, and doesn't
handle multiple record.
To fix this, we limit the number of records returned when a global rule
is searched to 1 (as for other 'search' of push rules in this file).
This bug has been introduced during migration in rev: https://github.com/odoo/odoo/commit/cb486d7eb6353a66eea2cb3610141b4f3a778791
opw-725874
When the groups are loaded in the kanban view, a `read` is done on the
relation model to load extra fields.
This `read` was done regardless if there really were extra fields to
read.
This is a priori not a big issue, except if the user has no read
access to the relation model and can only perform a `name_get`.
With multiple companies defined, ensure consistency in demo data in case a localization reusing the ones defined in account module is installed. Before that, the demo data used several hardcoded values to reference the company, but some models relied on the default company, which lead to crash when the active company was not the one hardcoded in demo data and such a new localization got installed.
When a theme is customized to be 'boxed', the website is not full width
in mobile, and there is an horizontal scrolling.
To fix this issue, we removed only set the width of the "wrapwrap" div
to 85% when the screen is bigger than a phone.
When clicking on button "Print Checks" on "account.payment", if the
check is not printed, the state of the "account.payment" doesn't have
to be change in state "Sent". Now the state is changed in function
do_print_checks which is overwritten in repository enterprise.
opw:725626
In Sale order decimal accuracy works well as expected for Order
quantity, Delivered Quantity and Invoiced Quantity BUT in PO there is
issue to show decimal accuracy into the "Received Quantity" and "Billed
Quantity".
opw-726110
When posting journal entries for an hr.expense.sheet with several expense lines
(by clicking on the button "Post journal entries"), all the account move lines
created for the same sheet must be linked to the same account move because
the model hr.expense.sheet has just a field "account_move_id" to access all the entries
(by clicking on button "Accounting Entries")
opw:715523,709930,725798,716239
This revert commits 51882ea70c and d94c449547 that were introduced to solve OPW-693955.
The usability before those fixes was good, but the bug was appearing when we first create the journal without the boolean 'dedicated refund sequence' set, then we try to modify that va$
This time, the fix consist to create automatically the sequence on the write of the boolean if it's not existing yet, in the same fashion than on the create().
Clicking on an editable list row makes the row editable. Clicking on
an editable list row while another row is being edited, first make
the row being edited readonly before making the clicked row editable.
The row which goes back to readonly have to be reloaded, operation
which is not instantaneous. If another row is clicked while a row
is going back to readonly (this typically happens if a row is double
clicked while another one is being edited), a form view dialog was
opened to edit the row (behavior which was not expected).
opw-710627
With multiple companies defined, ensure consistency in demo data in case a localization reusing the ones defined in account module is installed. Before that, the demo data used several hardcoded values to reference the company, but some models relied on the default company, which lead to crash when the active company was not the one hardcoded in demo data and such a new localization got installed.
- Create a product with 2 variants
- Create a BOM specific for each variant
- Go in the product variant page
the stat button indicates 2 BOMs instead of one.
opw-725126
- Create a MO, components needed are 1 unit of Prod A and 1 unit of Prod
B.
- Click on "Check Availability"
The button "Unreserve" does not appear unless all components are
available.
opw-724940
New api regression: xmlid_to_res_id() had the flag to raise set to
false by default while ref() does the opposite. Since the intent
here was clearly to allow not finding the record (given the if
condition under the ref call), avoid crashing for a simple default.
The CompoundDomain class allows to regroup several domains with an
implicit "AND"; these domains can be either a string, an array or
another CompoundDomain. A CompoundDomain can then be converted to
an array thanks to pyeval.js.
For example, if a CompoundDomain is initialized with `[A, B]` and
`[C]`, the array conversion gave `[A, B, C]` (which is expected).
However, a hackish method was used with CompoundDomain. If one of the
domain of a CompoundDomain is equal to `["|"]` (an array with the
OR operator in it), the two next subdomains were supposed to be joined
by a OR operator. Indeed, for the case of a CompoundDomain initialized
with `["|"]`, `[A]` and `[B]`, the array conversion gave `["|", A, B]`
(which is expected). However, if initialized with `["|"]`, `[A, B]` and
`[C]`, the array conversion gave `["|", A, B, C]` which is very wrong
as what was expected is `["|", "&", A, B, C]`. The problem is that the
given `[A, B]` contains implicit "&" operators.
This commit fixes the problem by normalizing only if the CompoundDomain
starts with a ["|"] or ["!"] array which is the standard odoo case.
This allows to limit breaking custom code (e.g we want a simple "AND"
of `[A]` and `[B]` to stay `[A, B]`, not become `["&", A, B]`).
The commit also modifies a test so that it checks that the problem is
properly solved.
When editing a report, the editor is launched in an iframe with an
environment which is different from backend and frontend. The problem
here is that the editor uses the `Dialog` API while the report editor
was not loading the associated xml file this API needs to work. Indeed,
when clicking on the "Discard" button for example, nothing seemed to
happen as a dialog was supposed to be opened.
This worked before as the editor was not using the `Dialog` API until
commit 62fb1bb924.
Unfortunatly, this commit adapted "iframe.js" to load the associated
xml file but forgot to adapt the report editor. In a future
amelioration, this "iframe.js" file could be added to the report editor
so that all "iframe editor" environement work properly with the same
adaptation code.
opw-724784
On firefox pressing special keys such as: Left Arrow or Backspace
trigger a keypress event.
This is different from google chrome which only generate a keydown and
keyup event.
There was thus two issue when using a FieldFloatScannable and firefox:
1. Keys such as ArrowLeft: would still be catched by FieldFloatScannable
and be added programatically to the field but since Odoo didn't fix
them a ASCII NUL character (0x0) would be added (in firefox it is
represented by a large space).
2. Keys such as Backspace: would still be catched by FieldFloatScannable
but were modified and corrected by Odoo so the corresponding ASCII
character was added (ASCII BS character (0x8) for backspace).
The feature in FieldFloatScannable which add the character is used to
add characters for which the browser had been prevented to display them.
Thus this fix:
- for issue 1 and 2: only use the feature of FieldFloatScannable if the
event was previously prevented and the current one is a forgery.
- for issue 2: add "Backspace" and "Delete" as specials characters which
should not be modified or stopped by the scanner heuristic.
opw-706352
The allocation requests have date fields that are only informative.
Having an allocation request (e.g. specifying dates of a public holiday)
overlapping the dates of a request is actually fine (if an employee is sick
during a public holidays, he can still use it for a leave request).
Closes#11026
The many2many_tags_email's internal value change logic fails to process
all its values. It is not concurrency proof either.
The internal value change logic is now replaced by a mutex and deferreds
are used for the partner's form view popups in order to allow concurrent
events.
The many2many_tags_email's internal value change logic fails to process
all its values. It is not concurrency proof either.
The internal value change logic is now replaced by a mutex and deferreds
are used for the partner's form view popups in order to allow concurrent
events.
The many2many_tags_email's internal value change logic fails to process
all its values. It is not concurrency proof either.
The internal value change logic is now replaced by a mutex and deferreds
are used for the partner's form view popups in order to allow concurrent
events.
To have the same behavior when the variant is added manually on the SO
or when it's added with a sale.quote.template. The description on the
SO line must include the default_code and the name of the variant.
opw:725072
Grouping by stage_id on tree view in "project.task" when group_by_full
is defined on stage_id(to show all the stages in kanban view even if
they are empty), grouped by stage without summing all other the fields
such as remainig_hours.
Reason: The order defined in "project.task.type" was not strict and the
function _read_group_fill_results cannot group if the order defined by the
group_by_full(right_side) and the read_group(left_side) is not the same.
opw:724785