Tuesday, July 27, 2021
31 changes · master
Enhancements to existing features
This update adds internal warnings when developers use search behavior in a way that may be unintended or inefficient. It helps catch potential mistakes earlier, improving reliability and maintainability without changing day-to-day user workflows.
The accounting account form now gives more room to the account name field. This makes longer account names easier to read and edit, improving day-to-day usability for accounting users.
Original PR description
The account name field may be a bit too small when having accounts with a longer name. Change it to take more of the available space for this field. Task id #2608446 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The guided tour bubble on invoice screens has been moved from the bottom to the right side. This keeps invoice lists easier to read during onboarding and makes the walkthrough less disruptive for users.
Original PR description
During the tour, the bubble on the invoice view, placed at the bottom, made the list slightly difficult to read. It is a little bit better on the right. Task: 2476548 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update makes automated tests fail when a broken template customization is actually used, helping teams catch website display issues earlier. It also removes an obsolete website sales helper module and unused accounting styling that no longer affected the product.
Original PR description
In case of wrong xpath in qweb js and that xpath applied during test, now branch is red
The Belgian payroll contract form has been adjusted so fields line up more clearly. This makes the form easier to read and complete, with no change to payroll rules or business process.
Original PR description
The purpose of this commit is to improve the field alignment on the form view. TaskID-2577867
The Mexican electronic invoicing payment workflow now uses a clearer internal label for payment information. This makes the code easier to understand and maintain without changing the user-facing behavior.
Original PR description
"key_values" key is changed to "payment_values" in wizard._get_batches() returned dict. Task: 2475598 Community PR: https://github.com/odoo/odoo/pull/69578
Resolved issues and error corrections
Event dates are now displayed using the date format for each user's selected language. This makes event information clearer for international users and avoids confusion caused by unfamiliar date formats.
Original PR description
Before this Commit, dates was not formatted based on user's lang. With this commit, we use `format_date` to correctly format dates.. 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
Miscellaneous changes
**First commit** When adding some services to a vehicle that does not have any immatriculation date, the costs report does not consider these services. To reproduce the error: (DB without any demo data) 1. Create a vehicle V - Remove the Immatriculation Date 2. Add a service for V - The category of the service type does not matter - Cost > 0 - Date: today 3. Fleet > Reporting > Costs Error: Costs Analysis is empty, the service is not considered In the SQL view,
Original PR description
**First commit** When adding some services to a vehicle that does not have any immatriculation date, the costs report does not consider these services. To reproduce the error: (DB without any demo…
**First commit**
When adding some services to a vehicle that does not have any immatriculation date, the costs report does not consider these services.
To reproduce the error:
(DB without any demo data)
1. Create a vehicle V
- Remove the Immatriculation Date
2. Add a service for V
- The category of the service type does not matter
- Cost > 0
- Date: today
3. Fleet > Reporting > Costs
Error: Costs Analysis is empty, the service is not considered
In the SQL view, the date used as start point is the oldest immatriculation date. Therefore, if the vehicle doesn't have this date, the report lines won't be generated.
**Second commit**
When consulting the costs reports, if the beginning of the dates range has a day greater than the day of today (e.g., start date: 2021/02/25, today: 2021/07/10 => 25 > 10), the costs of the current month won't be include in the report.
To reproduce the issue:
(DB without any demo data. Let X be the day of the month for today)
1. Create a vehicle V
2. Add a service S1 for V
- The category of the service type does not matter
- Cost: 500
- Date: today
3. Add a second service S2 for V
- Same service type
- Cost: 250
- Date: Last month with a day > X (so if today is 2021/07/26, date could be 2021/06/27)
4. Fleet > Reporting > Costs
Error: The report does not include S1
When generating the dates range, the current date is used as the end of the interval. Since the interval step is '1 month', it will lead to an issue in the above case:
Suppose today is 2021/07/26, the interval starts on 2021/06/27. Then, if we add one month to this date, we have 2021/07/27, which is after the end of the interval (2021/07/26), so the date is ignored. As a result, current month won't be included in the report.
Note: A similar issue can happen with the contracts
OPW-2477004
Forward-Port-Of: odoo/odoo#74219The website contact form now leaves fields blank when a logged-in user's profile is missing information. This prevents customers from seeing the word "false" auto-filled in fields, making the form clearer and more professional.
Original PR description
Description of the issue/feature this PR addresses: On the 'Contact us' form of the 'website' module, the client can auto-fill the fields with the 'false' text string when the logged partner has some missing values. Current behavior before PR: The client will issue an RPC call to retrieve the values of the logged partner. The server will then load the data and set all missing values to 'false'. The client will then automatically fill the form with the loaded values. Desired behavior after PR is merged: The client will replace the falsy values with an empty string before updating the form fields. Task id: 2610948 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Action buttons in the Project forecast Gantt view now work correctly when sample data is shown. This prevents error screens when users explore the view with demo content, making the experience smoother and more reliable.
Original PR description
Before this commit, clicking on the action button of some rows when the sample data was displayed lead to a traceback, as shown in [this link](https://www.awesomescreenshot.com/video/4623651?key=ee57c75d599e11869efd82afa02bc675). This bug was introduced by the PR #18819. This commit reverts the behaviour of the sample data in this particular view. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
A manufacturing work order test was updated to reflect that manufacturing orders are now locked by default. This keeps automated checks aligned with current behavior and helps prevent false test failures in future updates.
Original PR description
Fixing test due to community fix that now makes MOs locked by default. Task: 2518523 COM PR: odoo/odoo#73939 Upgrade PR: odoo/upgrade#2655
This update removes a leftover customization that pointed to code no longer present in the core product. It helps avoid potential errors or maintenance issues in accounting screens without changing day-to-day functionality.
Original PR description
This class has been removed in commit odoo/odoo@d201a393571481a26a1d3e046d35f521ec0a131e
Description of the issue/feature this PR addresses: The PDF controllers have empty anchor links. When the user clicks on one of those links, the browsers based on Chromium will trigger a scroll jump which is quite annoying when the PDF document does not fit entirely on screen. This PR aims to remove this behavior by setting an empty click event listener on each link. Current behavior before PR: When the user clicks on a PDF controller, the browser trigger a scroll jump. Desired behavior
Original PR description
Description of the issue/feature this PR addresses: The PDF controllers have empty anchor links. When the user clicks on one of those links, the browsers based on Chromium will trigger a scroll jump which is quite annoying when the PDF document does not fit entirely on screen. This PR aims to remove this behavior by setting an empty click event listener on each link. Current behavior before PR: When the user clicks on a PDF controller, the browser trigger a scroll jump. Desired behavior after PR is merged: When the user clicks on a PDF controller, the browser should no longer trigger a scroll jump. Task id: 2500574 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#73943 Forward-Port-Of: odoo/odoo#73816
Purpose Change the pager if there are still remaining records after the deletion of a record. SPEC When there is only one record on the last page of a list view and we delete it, the noContentHelper shows. TASK 2446911 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#73650 Forward-Port-Of: odoo/odoo#66523
Original PR description
Purpose Change the pager if there are still remaining records after the deletion of a record. SPEC When there is only one record on the last page of a list view and we delete it, the noContentHelper shows. TASK 2446911 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#73650 Forward-Port-Of: odoo/odoo#66523
Before this commit, anchor select on link dialig was never shown -> xpath done on attribute class but t-attf-class is used Now we show the anchor input. This commit also avoid useless anchor detection for empty url and external url. Or in case of the selected url is the same than the last one loaded. E.g. type /contactus -> load anchor -> choose one identicalfrom list before -> reload anchor now -> we don't refresh anchor screen Description of the issue/feature this PR
Original PR description
Before this commit, anchor select on link dialig was never shown
-> xpath done on attribute class but t-attf-class is used
Now we show the anchor input.
This commit also avoid useless anchor detection for empty url and external url.
Or in case of the selected url is the same than the last one loaded.
E.g. type /contactus -> load anchor -> choose one identicalfrom list
before -> reload anchor
now -> we don't refresh anchor screen
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#74190
Forward-Port-Of: odoo/odoo#74164Due to not passing the escaping parameter option in displayNotification, it will display any html tag as a string in the warning. With this commit, we have passed 'messageIsHtml' as a parameter to properly display the Link in the warning notification. task-2601633 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74220
Original PR description
Due to not passing the escaping parameter option in displayNotification, it will display any html tag as a string in the warning. With this commit, we have passed 'messageIsHtml' as a parameter to properly display the Link in the warning notification. task-2601633 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74220
Before this commit, User was allowed to create new records from form view through Graph view' action. Since we do not have a way to prevent opening form view from Graph and also we should not Introduce new form view on stable version. With this commit, we are disabling create/edit/copy from action. PS: I don't think it good idea to add disable_lining on Graph here as we still need to view record from Graph. -- I confirm I have signed the CLA and read the PR guidelines at www
Original PR description
Before this commit, User was allowed to create new records from form view through Graph view' action. Since we do not have a way to prevent opening form view from Graph and also we should not Introduce new form view on stable version. With this commit, we are disabling create/edit/copy from action. PS: I don't think it good idea to add disable_lining on Graph here as we still need to view record from Graph. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#70820
replace t-field with t-esc so it's support "or" operation opw-2589887 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74290
Original PR description
replace t-field with t-esc so it's support "or" operation opw-2589887 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74290
When sending the same invoice from Invoices > list view > select an invoice > action > Send and print, the email received by the client does not contain the header and the link to the invoice This PR adds the custom_layout attribute to the context of "Send & Print" action opw-2544654 Forward-Port-Of: odoo/odoo#74249
Original PR description
When sending the same invoice from Invoices > list view > select an invoice > action > Send and print, the email received by the client does not contain the header and the link to the invoice This PR adds the custom_layout attribute to the context of "Send & Print" action opw-2544654 Forward-Port-Of: odoo/odoo#74249
Excluding non-active records decrease number of combinations generated in _cartesian_product. The excluded combinations have to be rejected anyway [1], so don't waste time on it. STEPS: * activate "Product Configurator" * create a product with many attributes * make some `product.template.attribute.value` inactive (ptav_active = False): ** create a sale order with that value (e.g. color "Black" in "Customizable Desk (CONFIG)") ** delete that value in `product.template` form (tab
Original PR description
Excluding non-active records decrease number of combinations generated in _cartesian_product. The excluded combinations have to be rejected anyway [1], so don't waste time on it. STEPS: * activate "Product Configurator" * create a product with many attributes * make some `product.template.attribute.value` inactive (ptav_active = False): ** create a sale order with that value (e.g. color "Black" in "Customizable Desk (CONFIG)") ** delete that value in `product.template` form (tab "Variants") * add the product to a sale order * RESULT: `_cartesian_product` doesn't generates combination with archived attribute * [1] https://github.com/odoo/odoo/blob/f9d26509a714ecd290c42e1d58e416bb01268447/addons/product/models/product_template.py#L839-L841 --- opw-2540675 Forward-Port-Of: odoo/odoo#74119
Task ID: 2586134 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#74224
Original PR description
Task ID: 2586134 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#74224
When the final receipt of an order is printed, the order is marked as printed, as it can be then removed, and nothing can be added to it anymore. When the Bill is printed, we should not mark it as printed, as there can be some modifications made after the bill is printed. So as the bill receipt is an inherited object from the final receipt, we have to change the behavior for the bill receipt to not mark the order as printed. OPW-2555272 Description of the issue/feature this PR a
Original PR description
When the final receipt of an order is printed, the order is marked as printed, as it can be then removed, and nothing can be added to it anymore. When the Bill is printed, we should not mark it as printed, as there can be some modifications made after the bill is printed. So as the bill receipt is an inherited object from the final receipt, we have to change the behavior for the bill receipt to not mark the order as printed. OPW-2555272 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#74317
…idation 1. Have a product [TEST] with a BoM to manufacture and the Manufacturing & 2. Have a product [SERVICE] type service which create tasks in project Field Service. 3. Create a sales order with [TEST] and [SERVICE] 4. Mark the MO as done 5. Set the associated manufacturing as done 6. Set the Field Service task as done Outgoing transfer is automatically validated. Moreover a second move line is created for the MO. This results in two quantities of the product being recorded.
Original PR description
…idation 1. Have a product [TEST] with a BoM to manufacture and the Manufacturing & 2. Have a product [SERVICE] type service which create tasks in project Field Service. 3. Create a sales order with [TEST] and [SERVICE] 4. Mark the MO as done 5. Set the associated manufacturing as done 6. Set the Field Service task as done Outgoing transfer is automatically validated. Moreover a second move line is created for the MO. This results in two quantities of the product being recorded. This occur because the validation of the move take into account all products in the sale order opw-2491085 Forward-Port-Of: odoo/enterprise#19639
When consulting the Balance Sheet, if the user selects another date than "Today", some lines (such as Current Year Earnings) are incorrect To reproduce the error: 1. Create & Confirm 3 invoices: - INV01: - Date: today - Amount: $1000 - INV02: - Date: today minus one month - Amount: $2000 - INV03: - Date: today minus two months - Amount: $4000 2. Accounting > Reporting > US GAAP > Balance Sheet 3. Change the date filter:
Original PR description
When consulting the Balance Sheet, if the user selects another date than "Today", some lines (such as Current Year Earnings) are incorrect To reproduce the error: 1. Create & Confirm 3 invoices: -…
When consulting the Balance Sheet, if the user selects another date than
"Today", some lines (such as Current Year Earnings) are incorrect
To reproduce the error:
1. Create & Confirm 3 invoices:
- INV01:
- Date: today
- Amount: $1000
- INV02:
- Date: today minus one month
- Amount: $2000
- INV03:
- Date: today minus two months
- Amount: $4000
2. Accounting > Reporting > US GAAP > Balance Sheet
3. Change the date filter: "End of Last Month"
Error: The amount of "Current Year Earnings" is $2000, it should be
$6000
When selecting "End of Last Month", a request is sent with a dates range
('Start of the month', 'End of the month') and the mode of the dates
filter is "single". The end date of the range will be the date used to
compute the values.
However, some lines are computed in "range" mode (this is the case for
Current Year Earnings). Therefore, it uses the dates range (the whole
month) to get the values. This explains why the amount $2000 is
displayed and why INV03 is ignored.
In such situation (computing a "range-mode" value in a "single-mode"
context), the start date should be defined with the beginning of the
fiscal year.
OPW-2554985
Forward-Port-Of: odoo/enterprise#19840
Forward-Port-Of: odoo/enterprise#19715…tement reconciliation - Configure Bank journal to not use statement reconciliation by setting the same account for "Bank Account" and "Outstanding Receipts/Payments Accounts" - Create 2 bills - Select created bills and register payment - Select created payments and created batch payment Batch payment is automatically created in reconciled state and cannot be validated. Computation of the state of batch payment doesn't take into account the case where journal is configured to not use
Original PR description
…tement reconciliation - Configure Bank journal to not use statement reconciliation by setting the same account for "Bank Account" and "Outstanding Receipts/Payments Accounts" - Create 2 bills - Select created bills and register payment - Select created payments and created batch payment Batch payment is automatically created in reconciled state and cannot be validated. Computation of the state of batch payment doesn't take into account the case where journal is configured to not use statement reconciliation. opw-2556740 opw-2522224 Forward-Port-Of: odoo/enterprise#19801 Forward-Port-Of: odoo/enterprise#19787
This was caused by the fact that new icons were added to the image, changing its dimensions. but the css fixing those dimensions to the original ones was not adapted. This commit fixes that by making the width "auto", allowing new icons to be added without having to adapt the css. Forward-Port-Of: odoo/enterprise#19814
Original PR description
This was caused by the fact that new icons were added to the image, changing its dimensions. but the css fixing those dimensions to the original ones was not adapted. This commit fixes that by making the width "auto", allowing new icons to be added without having to adapt the css. Forward-Port-Of: odoo/enterprise#19814
before this commit: it was throwing an error dialog when the user got a connection or timeout error after this commit: user will be notified with UserError prompt Task: https://www.odoo.com/web#id=2535625&action=4043&model=project.task&view_type=form&cids=2&menu_id=4720 Forward-Port-Of: odoo/enterprise#19684 Forward-Port-Of: odoo/enterprise#18412
Original PR description
before this commit: it was throwing an error dialog when the user got a connection or timeout error after this commit: user will be notified with UserError prompt Task: https://www.odoo.com/web#id=2535625&action=4043&model=project.task&view_type=form&cids=2&menu_id=4720 Forward-Port-Of: odoo/enterprise#19684 Forward-Port-Of: odoo/enterprise#18412
Use the first language installed in case none has been selected Ticket: 2514138 Forward-Port-Of: odoo/enterprise#19657
Original PR description
Use the first language installed in case none has been selected Ticket: 2514138 Forward-Port-Of: odoo/enterprise#19657
When setting the tax on the invoice line for which we weren't able to predict a tax, use the default tax in priority if its amount matches the tax found by the OCR. Forward-Port-Of: odoo/enterprise#19670
Original PR description
When setting the tax on the invoice line for which we weren't able to predict a tax, use the default tax in priority if its amount matches the tax found by the OCR. Forward-Port-Of: odoo/enterprise#19670
- Define a [DEMO] prod with tracking by SN and add some SNs - Activate "use existing lot/serial number" on the receipt picking type - Activate "Packages" in Settings>Inventory>Operations - Create a purchase order for [DEMO] - Process the receipt in the barcode app: * Scan the product * Scan the SN barcode * Validate User will get an error, because the system will be unable to get a valid quant for the lot as there are none opw-2474347 Forward-Port-Of: odoo/enterprise#19806
Original PR description
- Define a [DEMO] prod with tracking by SN and add some SNs - Activate "use existing lot/serial number" on the receipt picking type - Activate "Packages" in Settings>Inventory>Operations - Create a purchase order for [DEMO] - Process the receipt in the barcode app: * Scan the product * Scan the SN barcode * Validate User will get an error, because the system will be unable to get a valid quant for the lot as there are none opw-2474347 Forward-Port-Of: odoo/enterprise#19806
On https://github.com/odoo/enterprise/commit/db7ddabbdbf8fe40fabfb9553ef4c79816095405 were renamed the methods to security enhancements in reports. The method for closing report was missing Forward-Port-Of: odoo/enterprise#19759
Original PR description
On https://github.com/odoo/enterprise/commit/db7ddabbdbf8fe40fabfb9553ef4c79816095405 were renamed the methods to security enhancements in reports. The method for closing report was missing Forward-Port-Of: odoo/enterprise#19759