- Open the bank reconciliation widget
- Throttle the connection
- Click multiple times on the same move line in order to select it
The line is added multiple times to the statement line.
We mitigate the behavior thanks to a `debounce`.
Fixes#33000
opw-1978551
closesodoo/odoo#33020
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Before this commit, the date_last_stage_update field in fill everytime at task creation. This does not make sense if ther is no project linked to the task or if there is no stages associated to the project/task.
This commit populates the date_last_stage_update field only when needed. So, we can now have newly created task without date_last_stage_update filled.
closesodoo/odoo#31999
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
On write, a check is done that raises
'You can not modify already invoiced timesheets …'.
We put that check in a function so that this behaviour can be extended.
(restricted by an override, or relaxed by not calling the super)
opw 1974968
closes#33057closesodoo/odoo#33092
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
Steps to reproduce the bug:
- Configured bank account for CHF with all the ISR related informations
- Click on "Send & Print" on a customer invoice with that bank account
- Save the email template
Bug:
An error was raised because the key 'attachments' didn't exist in the variable
rslt.
opw:1970005
closesodoo/odoo#33042
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Create a model and extend this model using an inherits. Define a
constraint in the inherited model that uses a field of the parent model.
Create a valid element using the inherited model then write an invalid
value. This pass the constraint although it should raise an exception.
The problem resides in the `write` function of `models.py`. It first
write values on the inherited model then write values on the parent
model. The order is wrong, it should write on the parent model first
then on the child model.
The solution is to change the order fields are written: first we update
child references to their parents, then we update the parents, then we
update the child.
opw-1962705
closes#32919closesodoo/odoo#33003
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
When dragging a snippet in the editor, drop zones are created at the
correct locations (e.g. between columns when dragging a column). Some
code is in charge of "cleaning" the created drop zones to, for example,
remove multiples ones which are at the same position. This code is also
currently removing the drop zones which are between two "non-block"
elements. This is preventing to swap form rows thanks to the form
builder as rows are "non-block" elements as they are flex elements.
This commit solves the problem by changing the "is non-block" condition
to "is inline" condition which is what was intended.
Note 1: rows became flex elements with BS4, that is why this is fixed
in 12.0.
Note 2: this could be back-ported in previous stable versions as this
actually preventing to drop snippets between tables, list
items, etc (all non-block elements) but this can be considered
as a limitation unless a real breaking case presents itself.
See task-1874350 which discovered the bug.
closesodoo/odoo#33054
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
In the tree view for account.invoice, there are totals' in some columns.
There is no logic in adding the invoices values for these columns, the
invoices could be of different types, or the invoices could have
different currencies, which creates incoherents totals.
opw-1964348
closesodoo/odoo#33051
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
When 80f1ac3599 removed deferral of
parent store computations (the MPTT at the time), it also errornously
removed the computation during auto_init.
As a result, when adding a `_parent_store = True` and `parent_path`
field to an existing model (e.g. in an override, or when updating the
database) the column will be created but the column will be
False-filled, and hierarchical queries break as odoo will attempt to
perform string operations on `False` (either `False + '%'` or
`False.split('/')`).
Fix the issue by reintroducing the parent_store computation.
Note: uses the same gating as the old commit, the computation is only
performed if this is the install/update where the parent_path column
gets created.
We could alternatively gate on just _parent_store, but even the RCTE
can be expensive when executed on millions of records (at least when
it has to set all the parent_path) and while it could allow inserting
a bunch of records when calling -u to generate their parent_paths, it
feels like the caller could and would do so manually as they might
have shuffled the tree and need to update more than just the records
for which parent_path is null.
closesodoo/odoo#33034
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Setting the `order_id` as read-only in the model prevents the import of
SO lines separately from the SO. We set it read-only in the view
instead.
opw-1978453
closesodoo/odoo#33021
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Steps to reproduce the bug:
- Install Timesheet, Sales, Accounting
- Create a product P that creates a project when validated on a SO
- Create a SO with P and validate it
- Create an invoice with a downpayment of 10% and validate it
- On the SO, click on "Project(s) overview" smart button
Bug:
The invoiced amount on the overview was not updated with the downpayment invoiced.
When the SO was completely invoiced, the amount of the downpayment was counted in
"Other cost" (because an analityc line is created for the downpayment SO line)
opw:1969143
closesodoo/odoo#32962
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Long product descriptions were overflowing on mobile when the list
layout was used. Indeed in all other cases (non mobile or grid layout),
a max-height is set to prevent this problem. This commit sets a
max-height for the mobile list layout use case.
Note: the layout is still to be reviewed to handle these cases the right
way. A task is actually being developed in master to do that.
opw-1974989
closesodoo/odoo#33023
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
When the snippet was moved from the theme repository to the community
repository, some scss mixins were badly refactored, making the theme
specific styles not work anymore.
This commit removes the bg color which was added to latest posts
snippet's post elements as it made no sense, appeared broken and was
not possible to remove. It also adds some padding to the snippet by
default.
This commit also reviews the snippet options which seemed to allow post
color edition while it is in fact not possible.
opw-1964485
closesodoo/odoo#33016
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Facebook API does not accept float values for height and width
parameters anymore.
closesodoo/odoo#32970
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Forward Port 0c46c8a929 from v10.0
has dome flows, namely, the new feature of grouping the taxes by tax group was not supported
Now it is supported: when modifying an optional product's quantity, every field is updated with the new values
OPW 1974708
closesodoo/odoo#32980
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Install CRM (we need the "Hide Private Message" record rule defined by
that module), create a meeting as of today, set a reminder of one day,
invite another user (Demo) as attendee, save. Edit, go to the options,
change the "Show time as" to "free", save => access error due to the
said record rule.
Using a search instead of browse ensures record unavailable due to a
record rule are filtered.
Same as 54e970e
opw-1974599
closesodoo/odoo#32987
Signed-off-by: Julien Castiaux <Julien00859@users.noreply.github.com>
Following the fix in 4c35983d0, it appears that the excludes and
packages options are conflicting. py2exe seems smart enough to include
jinja2 package without the explicit include via the 'package' options.
closesodoo/odoo#32991
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
Prefetching it triggers its translation, which quickly becomes most of
the overhead of /jobs despite the field not being displayed on that
page: an empty /jobs takes ~150ms, a /jobs with 99 jobs takes ~2000ms,
>70% of which are spent in html_translate and ultimately
translate.py:process (14600 calls, 60% of runtime, 40% own).
Removing prefetching lowers the runtime to ~700ms.
closesodoo/odoo#32985
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
It is more logical to display the order date on the portal rather than
the create date. Indeed, all computations (e.g. currency conversion) are
performed with the order date, not the create date.
opw-1966040
closesodoo/odoo#32973
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Make a PO then an invoice with a product that will create an asset
cancel the invoice
Open the Assets Analysis report
Before this commit, the asset lines corresponding to the invoice
are shown
After this commit, they are not shown (only non archived assets are by default)
OPW 1974344
closesodoo/odoo#32955
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Since 78ba90d5, when building the windows package, py2exe fails to
compiles jinja2 asyncsupport module. Even tough jinja detects the
environement, py2exe tries to compile the async part. The problem comes
from the fact that async keyword was introduced in python 3 and we use
py2exe with python 2.7.
With this commit the async part of jinja is execluded from py2exe.
closesodoo/odoo#32913
Signed-off-by: Olivier Dony (odo) <odo@openerp.com>
Because of c56b746221
server action "state" (what it should execute) defaults to
Update a record
This commit corrects the check printing action accordingly
OPW 1972938
closes#32928
Have a PO with a product in automated valorization, and average as method of valorization
Validate and receive *partially* (create backorder)
invoice with a different price than the PO
Receive the backorder
Invoice the rest, also with a different price than the PO
Before this commit, wrong amounts were written in the account.move corresponding to the invoice.
In particular, the payable account's amount was erroneous because it is computed to balance the move
As a result, the bill showed an amount due different from its total, even though nothing was reconciled with it.
After this commit, the payable entry and hence the amount due on the invoice are correct
OPW 1967289
closesodoo/odoo#32920
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Instead of fil - fil_PH, it should have been fil_PH - fil.
The iso_code is used in URLs
The "code" value can not be changed in stable but iso-code can.
The code value will be changed in master as requires a migration script
closesodoo/odoo#32867
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Create an expense paid directly by the company, validate and post entries.
While the account move lines are correct, the payment is not: it is always null.
opw 1962500
closesodoo/odoo#32956
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
Configure a route to be in 3 steps
make a PO, validate all three pickings
Go on the final picking, the one that has the destination to the Stock
Click on the smart button to access the traceability report
unfold as many lines as you can
Before this commit, the first picking of the whole tree (Vendors to Input)
appeared as a direct child of the final picking,
as well as a child of the intermediary picking (as it should)
- Quality > Stock
|
- Input > Quality
| |
| -Vendors > Input
- Vendors > Input
After this commit, the final picking contains only the intermediary
which in turn contains only the origin
- Quality > Stock
|
- Input > Quality
|
-Vendors > Input
OPW 1970286
closesodoo/odoo#32953
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
The Traceability Report printing option is hidden since the report is
pretty much unusable.
opw-1973161
closesodoo/odoo#32939
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Pretty much the whole module is covered by the tests in this commit:
- standard comparison, from shop, from product page
- comparison with more complicated product configuration
- the comparison page itself
- the alternative products
task-1929151
closesodoo/odoo#32901
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Co-authored-by: Priyanka Kakadiya <pka@odoo.com>
Co-authored-by: Mohammed Shekha <msh@openerp.com>
Co-authored-by: Sébastien Theys <seb@odoo.com>
Steps to reproduce the bug:
- Install MRP
- Uninstall MRP
- Install MRP
Bug:
An error was raised by sql constraint 'barcode_company_uniq' which ensures that
a barcode for a location is unique per company.
But when uninstalling MRP, some locations such as pbm_loc_id or sam_loc_id are set to
active = False and when re-installing MRP, the function _create_missing_locations tried
to re-create these locations and the sql constraint was raised.
opw:1967534
closesodoo/odoo#32882
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
The goal of commit 2dbce5e was to handle the company
holiday type in onchange which was probably forgotten
when the company type was introduced.
However because the last `elif` was changed to `else`,
the `else` clause is executed in some situations where
it shouldn't.
e.g. If holiday type is `employee` and an employee is set,
the `else` clause is (obviously wrongly) executed.
This is particularly a problem if the employee is not
HR user nor manager. In that case, the field employee_id
is invisible and its value has been deleted by the onchange.
The allocation cannot be saved because it violates the
sql constraint (employee is null).
Also, the `mode_company_id` and `category_id` should be set
to `False` when the holiday type is not company/category.
1. Open form view to create a leave
2. Change the leave type to 'By department'
3. Choose the department of the current user
4. Save the leave
5. Approve the leave
=> ValidationError, cannot have two leaves at the same time.
In `@api.onchange('holiday_type')`, when choosing by department
it sets `employee_id`, `mode_company_id` and `category_id`
to `False` ONLY if the department is not already set.
But by default, the employee is set to the user's employee
and the department is set to the employee's department.
Therefore the employee is never set to `False` and the
department leave is linked to this employee.
When validating the 'department' leave, an 'employee'
leave is created for each employee in the department.
For the current user, it crashes because the deparment leave overlaps with
the 'employee' leave since the department leave is linked to
the employee.
Since it is possible to create an operation in the regular list view, it
should also be possible to do it in the kanban mobile view.
opw-1963527
closesodoo/odoo#32907
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
- Create 2 companies A & B
- For each company, create a website linked to a different URL and
activate 'Free sign up' and 'Specific User Account'.
- As a public user, go to website of company B
- Go to 'Sign in > Don't have an account?' and create an account
The user is created in company A (the company of the user template)
instead of company B (the company of the website).
We set the company of the user based on the company of the website.
opw-1962197
closesodoo/odoo#32823
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
- Create 2 companies A & B
- For each company, create a website linked to a specific URL
- As a public user, visit website of B
- Buy a product, register your address
The partner is in company A (the company of the superuser) instead of
company B (the company of the website).
opw-1962197
closesodoo/odoo#32822
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
We remove the remaining comparisons to use the precision rounding of the UoM.
opw 1969888
closes#32707closes#32745closesodoo/odoo#32844
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>