Tuesday, May 25, 2021
19 changes · master
Enhancements to existing features
HR and contract screens now hide Belgian-specific employee and contract fields unless the active company is based in Belgium. This keeps forms and reports cleaner for companies in other countries and reduces confusion from irrelevant local compliance fields.
Original PR description
Hide fields related to belgian localisation when not using a belgian company. Task Id: 2496597
This change improves the notification preview in Odoo's systray so users can see rating activity and status changes instead of empty entries. It makes alerts more informative at a glance, helping users understand recent updates without opening each record.
Original PR description
Description of the issue/feature this PR addresses: https://github.com/odoo-dev/odoo/tree/master-rating-tracking-change-preview-zel Current behavior before PR: The rate and status change is shown as empty on the systray. Desired behavior after PR is merged: 1. Once gets rated, there will be a preview on the systray as a notification. 2. The status change will get displayed now on the systray and the tracking values become an object rather than an array. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Payroll and HR contract screens now hide country-specific fields when they do not apply to the selected company. This keeps Belgian, French, and Indian payroll information out of views for companies in other countries, reducing clutter and helping users focus on relevant data.
Original PR description
Hide fields related to belgian payroll localisation when using a non belgian company. Task Id: 2496597
Spreadsheet pivot data now reuses model information more efficiently instead of repeatedly requesting the same details. This reduces unnecessary server calls, which should make opening spreadsheet templates smoother and lighter on system resources.
Resolved issues and error corrections
Odoo can now process Italian vendor bills received as signed .xml.p7m files from PEC mailboxes. This prevents those invoices from being ignored and allows them to be decoded and created automatically when fetched.
Original PR description
When one or more vendor bills in Italian e-invoice format were sent to the registered PEC mailbox, if they are in the PKCS#7 format ('.xml.p7m'), nothing happened.
The e-invoice content should be automatically decoded and the invoice should be created as soon as the xml file is fetched from the PEC mailbox .
A new remove_signature function has been added in a tools/remove_signature.py file to handle this case.
The OpenSSL and pyOpenSSL libraries must be installed.
They are not in requirements.txt but they're probably available.
New tests has been provided for the signed email reading method.
Task: https://www.odoo.com/web#id=2146335&model=project.task
Related ticket link: https://www.odoo.com/web#id=2460485&model=project.task
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prMiscellaneous changes
Odoo task : https://www.odoo.com/web#id=2497893&action=333&active_id=1695&model=project.task&view_type=form&cids=1&menu_id=4720 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#70224
Original PR description
Odoo task : https://www.odoo.com/web#id=2497893&action=333&active_id=1695&model=project.task&view_type=form&cids=1&menu_id=4720 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#70224
A missing title was added to a website editor toolbar button so users can better understand what the control does. This improves clarity and accessibility in the editor with no expected impact on existing workflows.
Original PR description
Replacement of https://github.com/odoo/odoo/pull/70244 that fails to merge for unknown reason.
Time off requests can now be approved even when there are multiple payslips for the same period in different statuses. This prevents payroll records in draft or completed states from incorrectly blocking leave approval, improving reliability for HR teams.
Original PR description
Having different payslips for the same period with different statuses may prevent from accepting a time off. To prevent this we cancel every similar payslips when accepting a payslip. Adjust query count test for payslips. Task ID: 2486703
Improve mail followers SQL query performance. Forward-Port-Of: odoo/odoo#69577
Original PR description
Improve mail followers SQL query performance. Forward-Port-Of: odoo/odoo#69577
The method that computs what is due and the change of an order is based on the selected payment line which is wrong, because if you add and remove a payment line, none will be seleced, that lead to issue in this case because a change is computed, and it won't match the invoices because an amount_return is sent to server. To reproduce you can follow this simply procedure: - set rounding half-up to 0.05 - create a product at 0.98 - open POS and create an order with the produc
Original PR description
The method that computs what is due and the change of an order is based on the selected payment line which is wrong, because if you add and remove a payment line, none will be seleced, that lead to…
The method that computs what is due and the change of an order is based
on the selected payment line which is wrong, because if you add and
remove a payment line, none will be seleced, that lead to issue in this
case because a change is computed, and it won't match the invoices
because an amount_return is sent to server.
To reproduce you can follow this simply procedure:
- set rounding half-up to 0.05
- create a product at 0.98
- open POS and create an order with the product
- go to payment screen
- add cash payment (1€ auto filled)
- add bank payment (It'll autofill -0.02 not really a problem)
- remove the bank payment => It'll show 0.02 due (it is caused because of no payment method is selected)
- Set a customer and check the invoice => unbalanced (0.02 probably because it is set in amount_return of the request)
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#70825Create my CLA for base 14.0 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#71184
Original PR description
Create my CLA for base 14.0 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#71184
In database with frontend and live chat there are lot bad query error. From `/web/dataset/call_kw/mail.channel/channel_pin` ```sql bad query: UPDATE "mail_channel_partner" SET "write_uid"=5,"write_date"=(now() at time zone 'UTC') WHERE id IN (328111) ERROR: ERREUR: n'a pas pu sérialiser un accès à cause d'une mise à jour en parallèle ``` for exemple : 1500 event in 24h. @rco-odoo @odony -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Original PR description
In database with frontend and live chat there are lot bad query error. From `/web/dataset/call_kw/mail.channel/channel_pin` ```sql bad query: UPDATE "mail_channel_partner" SET "write_uid"=5,"write_date"=(now() at time zone 'UTC') WHERE id IN (328111) ERROR: ERREUR: n'a pas pu sérialiser un accès à cause d'une mise à jour en parallèle ``` for exemple : 1500 event in 24h. @rco-odoo @odony -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#70506
Description of the issue/feature this PR addresses: - Create a pos order, pay and valide - Close Pos - reopen pos - search this order - click print ticket --> Issue the hash doesn't appear on the ticket @oco-odoo -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#71208 Forward-Port-Of: odoo/odoo#71172
Original PR description
Description of the issue/feature this PR addresses: - Create a pos order, pay and valide - Close Pos - reopen pos - search this order - click print ticket --> Issue the hash doesn't appear on the ticket @oco-odoo -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#71208 Forward-Port-Of: odoo/odoo#71172
Forward-Port-Of: odoo/odoo#71183 Forward-Port-Of: odoo/odoo#71140
Original PR description
Forward-Port-Of: odoo/odoo#71183 Forward-Port-Of: odoo/odoo#71140
Potentially, users can add new fields using custom modules, hence new columns. It's therefore a good practice to fully qualify the columns when defining a report view. The case where the issue occurs is a 12.0 database updating to 13.0 which has a column `product_id` defined in another implied table than `sale_order_line` ``` 2021-04-15 11:04:12,218 457 INFO db_8460 odoo.modules.registry: module sale_renting: creating or updating database tables 2021-04-15 11:04:12,329 457 ERROR d
Original PR description
Potentially, users can add new fields using custom modules, hence new columns. It's therefore a good practice to fully qualify the columns when defining a report view. The case where the issue occurs…
Potentially, users can add new fields using custom modules,
hence new columns.
It's therefore a good practice to fully qualify the columns
when defining a report view.
The case where the issue occurs is a 12.0 database
updating to 13.0 which has a column `product_id`
defined in another implied table than `sale_order_line`
```
2021-04-15 11:04:12,218 457 INFO db_8460 odoo.modules.registry: module sale_renting: creating or updating database tables
2021-04-15 11:04:12,329 457 ERROR db_8460 odoo.sql_db: bad query: CREATE or REPLACE VIEW sale_rental_report as (
select
sol.id,
order_id,
product_id,
product_uom_qty / (u.factor * u2.factor) as quantity,
qty_delivered / (u.factor * u2.factor) as qty_delivered,
qty_returned / (u.factor * u2.factor) as qty_returned,
product_uom,
order_partner_id as partner_id,
salesman_id as user_id,
categ_id,
product_tmpl_id,
generate_series(pickup_date::date, return_date::date, '1 day'::interval)::date date,
price_subtotal / (date_part('day',return_date - pickup_date) + 1) as price,
sol.company_id,
sol.state,
sol.currency_id
from sale_order_line sol
join product_product p on p.id=sol.product_id
join product_template pt on p.product_tmpl_id=pt.id
join uom_uom u on u.id=sol.product_uom
join uom_uom u2 on u2.id=pt.uom_id
where is_rental
)
ERROR: column reference "product_id" is ambiguous
LINE 5: product_id,
```
upg-15188
Forward-Port-Of: odoo/enterprise#18502During module update, the wizard has already be run and should not be called again. Forward-Port-Of: odoo/enterprise#18499
Original PR description
During module update, the wizard has already be run and should not be called again. Forward-Port-Of: odoo/enterprise#18499
[FIX] l10n_es_reports: make BOE export compatible with generic ids of financial report lines. [FIX] l10n_es_reports: tests: avoid crashing because of multicompany environment in the tests Forward-Port-Of: odoo/enterprise#18462
Original PR description
[FIX] l10n_es_reports: make BOE export compatible with generic ids of financial report lines. [FIX] l10n_es_reports: tests: avoid crashing because of multicompany environment in the tests Forward-Port-Of: odoo/enterprise#18462
When consulting a signed document, if the user didn't complete some optional fields, theses ones are still displayed with their placeholder or field name as value Note: This issue only happens on PDF preview. The downloaded PDF does not contain any undesirable values. To reproduce the issue: 1. In Sign, upload a PDF Template: - Add two fields: - Name - Text ("Mandatory field" disabled) 2. Sign Now 3. Complete Name, but not Text 4. Validate & Send Completed Doc
Original PR description
When consulting a signed document, if the user didn't complete some optional fields, theses ones are still displayed with their placeholder or field name as value Note: This issue only happens on PDF…
When consulting a signed document, if the user didn't complete some
optional fields, theses ones are still displayed with their placeholder
or field name as value
Note: This issue only happens on PDF preview. The downloaded PDF does
not contain any undesirable values.
To reproduce the issue:
1. In Sign, upload a PDF Template:
- Add two fields:
- Name
- Text ("Mandatory field" disabled)
2. Sign Now
3. Complete Name, but not Text
4. Validate & Send Completed Document
5. Sign > Signatures, open signed document
Error: in the PDF viewer, the field Text is present on the document
(with value "Text"). It should not be present (The PDF provided by
"Download Document" button does not contain undesirable fields)
When the PDF is fully signed, a new document is generated and unfilled
fields are ignored. See in method `generate_completed_document`:
https://github.com/odoo/enterprise/blob/318da49017efbe0f2f9a045e022f601725d47f26/sign/models/sign_request.py#L468-L471
However, nothing prevents these fields to be rendered in the Sign
application viewer.
OPW-2479314
Forward-Port-Of: odoo/enterprise#18442
Forward-Port-Of: odoo/enterprise#18382In case the partner set on the payment is of type invoice, the name is not mandatory and is generally not set. This is causing a traceback when generating the SDD file as the field Debtor Name must be filled in. We should add a default case and take the parent company name instead. opw-2520713 Forward-Port-Of: odoo/enterprise#18478 Forward-Port-Of: odoo/enterprise#18390
Original PR description
In case the partner set on the payment is of type invoice, the name is not mandatory and is generally not set. This is causing a traceback when generating the SDD file as the field Debtor Name must be filled in. We should add a default case and take the parent company name instead. opw-2520713 Forward-Port-Of: odoo/enterprise#18478 Forward-Port-Of: odoo/enterprise#18390