Thursday, October 31, 2024
92 changes
4 changes
Miscellaneous changes
…line Steps to reproduce: - Create two taxes T1 and T2 of 17% with two tax grids lines (+) and (-) - Configure a payment term of 2% discount - Create a payment of `-762.20` for a partner with a reference 'ref123' - Create and confirm a bill for the same partner, with a ref 'ref123', with the payment term and two lines; L1{'amount': 739.95 , 'tax': T1} L2{'amount': 37.8, 'tax':T2} - In Dashboard > Bank > select the transaction Issue: The last line tax will be 0.14 (difference of one 1
Original PR description
…line
Steps to reproduce:
- Create two taxes T1 and T2 of 17% with two tax grids lines (+) and (-)
- Configure a payment term of 2% discount
- Create a payment of `-762.20` for a partner with a reference 'ref123'
- Create and confirm a bill for the same partner, with a ref 'ref123', with the payment term and two lines; L1{'amount': 739.95 , 'tax': T1} L2{'amount': 37.8, 'tax':T2}
- In Dashboard > Bank > select the transaction
Issue:
The last line tax will be 0.14 (difference of one 1)
Cause:
The rounding issues sum up and we arbitrarily assign it to the last tax line (which can result in an unbalance).
Solution:
Instead, we assign this difference to the "biggest" base line (as the change will proportionnaly be smaller). While doing so, we keep consistencies between the tax lines.
opw-3966041
Forward-Port-Of: odoo/odoo#182386A problem was left to be fixed in the previous PR: What was to be considered the url and label was sometimes incorrectly computed with html_keep_url. As it is used in other places, we simply don't use it anymore, but extract the needed part from it: how a link is safely rendered. Task-3502174 Forward-Port-Of: odoo/odoo#184290 Forward-Port-Of: odoo/odoo#176074
Original PR description
A problem was left to be fixed in the previous PR: What was to be considered the url and label was sometimes incorrectly computed with html_keep_url. As it is used in other places, we simply don't use it anymore, but extract the needed part from it: how a link is safely rendered. Task-3502174 Forward-Port-Of: odoo/odoo#184290 Forward-Port-Of: odoo/odoo#176074
There was a typo in the test, which was breaking tests when they ran without demo data. This commit fixes it. [broken test builds](https://runbot.odoo.com/web#id=56563&menu_id=424&cids=1&action=573&model=runbot.build.error&view_type=form) Forward-Port-Of: odoo/odoo#185659
Original PR description
There was a typo in the test, which was breaking tests when they ran without demo data. This commit fixes it. [broken test builds](https://runbot.odoo.com/web#id=56563&menu_id=424&cids=1&action=573&model=runbot.build.error&view_type=form) Forward-Port-Of: odoo/odoo#185659
When guessing the language at install (or upgrade) we cannot trigger a pre-fetch of all fields of `res.company` because some of its columns may be not initialized yet. One way to trigger this behaviour is to add a stored field whose default value uses translations, while at the same time adding any other stored field. If the translation is fetched in a sudo environment we can get an error when the System partner has `NULL` language. Steps to reproduce: 1. On a cleanly initialized DB (only `b
Original PR description
When guessing the language at install (or upgrade) we cannot trigger a pre-fetch of all fields of `res.company` because some of its columns may be not initialized yet. One way to trigger this…
When guessing the language at install (or upgrade) we cannot trigger a pre-fetch of all fields of `res.company` because some of its columns may be not initialized yet. One way to trigger this behaviour is to add a stored field whose default value uses translations, while at the same time adding any other stored field. If the translation is fetched in a sudo environment we can get an error when the System partner has `NULL` language.
Steps to reproduce:
1. On a cleanly initialized DB (only `base`) add any extra language (en_GB would do).
2. Open Users & Companies (show inactive users) open System user.
3. Open Related Partner.
3. In the form view of the System partner set the language to None.
4. Try to install via the command line a module with the fields as described above (see below for a code example).
We get an error like:
```
2024-10-30 08:48:40,831 41180 INFO test_16 odoo.modules.registry: module mymodule: creating or updating database tables
2024-10-30 08:48:40,839 41180 ERROR test_16 odoo.sql_db: bad query: SELECT "res_company"."id" AS "id", "res_company"."name" AS "name"
... <many more fields, redacted> ... "res_company"."bar" AS "bar", "res_company"."foo" AS "foo" FROM "res_company" WHERE "res_company".id IN (1)
ERROR: column res_company.foo does not exist
LINE 1: ...e" AS "write_date", "res_company"."bar" AS "bar", "res_compa...
```
The solution we propose is to skip the prefetch of `res.company` fields when we are in the process of guessing the language. In this case the language is correctly picked from the System partner's company.
This issue has been observed in many upgrades to 18, but it's present in older Odoo versions as well. The language field in `res.partner` is not required, thus it is also possible to set the language to `NULL` via code.
Example data observed in upgrades:
```
> select id,name,active,lang from res_partner where lang is null
+----+-----------------------+--------+--------+
| id | name | active | lang |
|----+-----------------------+--------+--------|
| 4 | Public user | False | <null> |
| 5 | Default User Template | False | <null> |
| 6 | Portal User Template | False | <null> |
| 2 | System | False | <null> |
+----+-----------------------+--------+--------+
```
There may be other standard flows that lead to such setup where System partner has no language set.
Example inherit of `res.company` that triggers the issue:
```py
class A(models.Model):
_inherit = "res.company"
bar = fields.Many2one(
comodel_name="ir.sequence",
default=lambda self: self.env["ir.sequence"].sudo().create({"name": _("Dummy")}),
required=True,
)
foo = fields.Integer()
```
Standard example of this code pattern that triggers the issue during upgrades to 18:
https://github.com/odoo/odoo/blob/dd71d998/addons/account/models/company.py#L140-L152
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#18581021 changes
Resolved issues and error corrections
The Documents app now keeps a display-layering rule limited to Documents screens instead of letting it affect other areas of Odoo. This prevents visual overlap issues elsewhere while preserving the intended dropdown behavior in Documents.
Original PR description
This PR fixes an issue about a `z-index` CSS property defined in Documents that is affecting the whole back-end and front-end environment as it is not scoped within a Documents related selector. While this CSS is actually needed if you have a dropdown with a `+ X` item at the end to prevent the button from being rendered under the view, it needs to be scoped to Documents only. We also take that opportunity to use the `SCSS` variable related to that `z-index` value. | 18.0 | This PR | |--------|--------| |  |  | task-4270185
The payment form now hides the journal entry shortcut from invoicing-only users. This avoids showing a confusing option that leads to limited accounting details they are not meant to use, while keeping it available for accounting users.
Original PR description
Steps to reproduce: - Install invoicing enterprise (but not accounting) - Register a payment on an invoice - open the form view of the payment When opening the payment form view, if the payment is associated with a journal entry, which can be accessed with the smart button. However, with invoicing enterprise, this button doesn't make sense because the user will only see the "other info" tab of the journal entry. We therefore limit the access to the button only for accounting users. task-4224553
An unused invoice data field was removed from the invoice screen because it could trigger access errors for users with sales permissions but without invoice rights. This prevents those users from being blocked by a field that was not needed for the interface or related behavior.
Original PR description
The field extract_word_ids is in the account move view but raises an access error when someone without invoice rights open the invoice (rights you have when you have some sales rights). As this field is not used in the view or in the associated JS, we can remove it and fix the access rights issues.
The Gantt view now displays the total row title centered as intended. This minor visual correction improves readability and gives users a more polished planning view.
Original PR description
This commit fixes a position issue with the total row title which should be center aligned. task-4251407
The Luxembourg payroll screens now better distinguish which employee information can be edited and which cannot. Contract index values are also shown correctly as non-monetary amounts, reducing confusion during payroll administration.
Original PR description
On the employee, we should clarify the view to tell what is editable or not. On the contract, the index is monetary but shouldn't.
This update fixes user assignment in Quality Point kanban cards and adds clearer help text in the manufacturing planning wizard. It helps teams assign quality responsibilities correctly and better understand planning fields when adding products.
Original PR description
Draft for a mixed bag of MRP bugfixes for post-freeze 18.0. 1. Fixed the responsible assignment button for Quality Points in the kanban view. 2. Added tooltips to the BoM and indirect demand fields of MPS wizard. Task ID: [4154879](https://www.odoo.com/odoo/966/tasks/4154879)
This fixes an internal automated test for the German POS certification module after a related platform change made the old test setting invalid. It helps keep quality checks reliable without changing day-to-day user functionality.
Original PR description
After odoo/odoo@45b90b8b7ce252e1558728f4fc03e52459817565 `test: true` is not a valid tour key anymore
Miscellaneous changes
When guessing the language at install (or upgrade) we cannot trigger a pre-fetch of all fields of `res.company` because some of its columns may be not initialized yet. One way to trigger this behaviour is to add a stored field whose default value uses translations, while at the same time adding any other stored field. If the translation is fetched in a sudo environment we can get an error when the System partner has `NULL` language. Steps to reproduce: 1. On a cleanly initialized DB (only `b
Original PR description
When guessing the language at install (or upgrade) we cannot trigger a pre-fetch of all fields of `res.company` because some of its columns may be not initialized yet. One way to trigger this…
When guessing the language at install (or upgrade) we cannot trigger a pre-fetch of all fields of `res.company` because some of its columns may be not initialized yet. One way to trigger this behaviour is to add a stored field whose default value uses translations, while at the same time adding any other stored field. If the translation is fetched in a sudo environment we can get an error when the System partner has `NULL` language.
Steps to reproduce:
1. On a cleanly initialized DB (only `base`) add any extra language (en_GB would do).
2. Open Users & Companies (show inactive users) open System user.
3. Open Related Partner.
3. In the form view of the System partner set the language to None.
4. Try to install via the command line a module with the fields as described above (see below for a code example).
We get an error like:
```
2024-10-30 08:48:40,831 41180 INFO test_16 odoo.modules.registry: module mymodule: creating or updating database tables
2024-10-30 08:48:40,839 41180 ERROR test_16 odoo.sql_db: bad query: SELECT "res_company"."id" AS "id", "res_company"."name" AS "name"
... <many more fields, redacted> ... "res_company"."bar" AS "bar", "res_company"."foo" AS "foo" FROM "res_company" WHERE "res_company".id IN (1)
ERROR: column res_company.foo does not exist
LINE 1: ...e" AS "write_date", "res_company"."bar" AS "bar", "res_compa...
```
The solution we propose is to skip the prefetch of `res.company` fields when we are in the process of guessing the language. In this case the language is correctly picked from the System partner's company.
This issue has been observed in many upgrades to 18, but it's present in older Odoo versions as well. The language field in `res.partner` is not required, thus it is also possible to set the language to `NULL` via code.
Example data observed in upgrades:
```
> select id,name,active,lang from res_partner where lang is null
+----+-----------------------+--------+--------+
| id | name | active | lang |
|----+-----------------------+--------+--------|
| 4 | Public user | False | <null> |
| 5 | Default User Template | False | <null> |
| 6 | Portal User Template | False | <null> |
| 2 | System | False | <null> |
+----+-----------------------+--------+--------+
```
There may be other standard flows that lead to such setup where System partner has no language set.
Example inherit of `res.company` that triggers the issue:
```py
class A(models.Model):
_inherit = "res.company"
bar = fields.Many2one(
comodel_name="ir.sequence",
default=lambda self: self.env["ir.sequence"].sudo().create({"name": _("Dummy")}),
required=True,
)
foo = fields.Integer()
```
Standard example of this code pattern that triggers the issue during upgrades to 18:
https://github.com/odoo/odoo/blob/dd71d998/addons/account/models/company.py#L140-L152
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#185810There was a typo in the test, which was breaking tests when they ran without demo data. This commit fixes it. [broken test builds](https://runbot.odoo.com/web#id=56563&menu_id=424&cids=1&action=573&model=runbot.build.error&view_type=form) Forward-Port-Of: odoo/odoo#185659
Original PR description
There was a typo in the test, which was breaking tests when they ran without demo data. This commit fixes it. [broken test builds](https://runbot.odoo.com/web#id=56563&menu_id=424&cids=1&action=573&model=runbot.build.error&view_type=form) Forward-Port-Of: odoo/odoo#185659
Steps to reproduce: - New Project > New Task > Timesheet 10h on task - New subtask on task > Timesheet 5h on subtask - Reporting > Tasks Analysis Remaining hours are computed incorrectly, when no allocated hours are set on a task, we have null values in database that prevent the computation of allocated_hours and remaining_hours which also messes up the project totals. The computation of remaining hours is also only supposed to occur when we have a non zero amount of allocated hours,
Original PR description
Steps to reproduce: - New Project > New Task > Timesheet 10h on task - New subtask on task > Timesheet 5h on subtask - Reporting > Tasks Analysis Remaining hours are computed incorrectly, when no…
Steps to reproduce: - New Project > New Task > Timesheet 10h on task - New subtask on task > Timesheet 5h on subtask - Reporting > Tasks Analysis Remaining hours are computed incorrectly, when no allocated hours are set on a task, we have null values in database that prevent the computation of allocated_hours and remaining_hours which also messes up the project totals. The computation of remaining hours is also only supposed to occur when we have a non zero amount of allocated hours, otherwise the remaining hours are always 0. Additionally, the 'Total Hours' column is confusing for customers as it is meant to compute the total hours spent on a task (subtasks included) but is enabled by default when looking at the projects as a whole which does not make sense. For instance, with 'Task' parent of 'Subtask': | Name | Allocated | Hours spent | Remaining | Total Hours | | -------- | --------- | ----------- | ---------- | ----------- | | Project | 0 | 15 | -15 (-> 0) | 20 | | Task | 0 | 10 | -10 (-> 0) | 15 | | Subtask | 0 | 5 | -5 (-> 0) | 5 | The sum of total hours on project is meaningless and confusing so it is preferable not to have it enabled by default (Subtask is counted twice, once in Task and once itself). opw-4236984 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185733 Forward-Port-Of: odoo/odoo#184291
When downloading a url type attachment, it will not open in a new tab and breaks the activity of the current tab,such as rtc call and breadcrumbs. To reproduce the error: Project > Task > click on the url attachment > open in the current tab, the breadcrumbs (previous filters) will be lost This commit fixes the issue by opening the url attachment in a new tab. And "downloading" a url does not make sense, so the download button is replaced by an open button. --- I confirm I have signed
Original PR description
When downloading a url type attachment, it will not open in a new tab and breaks the activity of the current tab,such as rtc call and breadcrumbs. To reproduce the error: Project > Task > click on the url attachment > open in the current tab, the breadcrumbs (previous filters) will be lost This commit fixes the issue by opening the url attachment in a new tab. And "downloading" a url does not make sense, so the download button is replaced by an open button. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185636 Forward-Port-Of: odoo/odoo#184264
The invoice prints the "Shipping address" instead of the "Invoicing and shipping address." Commit 6d36b38 moved `l10n_din5008` formatting logic from Python to XML, but the values were not set properly. Setting the `t-value` will resolve this issue. To reproduce: 1. Create an invoice. 2. Assign an individual customer that has its company set. 3. Print it. <details> <summary>Click here to see</summary> Before: <img src="https://github.com/user-attachments/assets/4eb54685
Original PR description
The invoice prints the "Shipping address" instead of the "Invoicing and shipping address."
Commit 6d36b38 moved `l10n_din5008` formatting logic from Python to XML, but the values were not set properly. Setting the `t-value` will resolve this issue.
To reproduce:
1. Create an invoice.
2. Assign an individual customer that has its company set.
3. Print it.
<details>
<summary>Click here to see</summary>
Before:
<img src="https://github.com/user-attachments/assets/4eb54685-f906-4c29-87b3-70015ca84b9a"/>
After:
<img src="https://github.com/user-attachments/assets/1889a202-420f-4128-aeb6-a47fc9cd3a2e"/>
</details>
upg-2092611
opw-4209922
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#182538*l10n_din5008_account_followup,l10n_din5008_industry_fsm, l10n_din5008_sale_renting Related to https://github.com/odoo/odoo/pull/184790 Forward-Port-Of: odoo/enterprise#72707
Original PR description
*l10n_din5008_account_followup,l10n_din5008_industry_fsm, l10n_din5008_sale_renting Related to https://github.com/odoo/odoo/pull/184790 Forward-Port-Of: odoo/enterprise#72707
In the Appointment app, when trying to select an "Up-front payment product," products configured to create a task in a project are not available in the dropdown list. Cause of the issue: In the `appointment_type` model definition within the `appointment_account_payment` module, a domain was applied on the `product_id` field, restricting the selectable products. The domain filtered out products with the `service_tracking` field set to values other than `"no"`. As a result, products that creat
Original PR description
In the Appointment app, when trying to select an "Up-front payment product," products configured to create a task in a project are not available in the dropdown list. Cause of the issue: In the `appointment_type` model definition within the `appointment_account_payment` module, a domain was applied on the `product_id` field, restricting the selectable products. The domain filtered out products with the `service_tracking` field set to values other than `"no"`. As a result, products that create tasks in projects (which have `service_tracking` set to `"task_global_project"`) were excluded. The commit https://github.com/odoo/enterprise/commit/ff54ff6cbdf79b1c24c468b5238d8eeb91e85cb9 aim was to prevent `event` and `event_booth` product to be selectable. This commit allows other product whose `service_tracking != 'no'` to be selectable while not allowing `event` and `event_booth`. opw-4146731 Forward-Port-Of: odoo/enterprise#71166
**Steps to reproduce:** - Install l10n_cl - Switch to a Chilean company (e.g. CL Company) - Activate a foreign currency (e.g. USD) - Make sure that the rate of the foreign currency is not 1 For example: * Unit per CLP: 0.001057876419 * CLP per Unit:945.29 - Create an invoice in USD with 2 lines having different amount: * 15.80 * 15.00 - Save the invoice - Print the invoice **Issue:** On the printed invoice, a slightly different currency rate is displayed for each invoice l
Original PR description
**Steps to reproduce:** - Install l10n_cl - Switch to a Chilean company (e.g. CL Company) - Activate a foreign currency (e.g. USD) - Make sure that the rate of the foreign currency is not 1 For…
**Steps to reproduce:** - Install l10n_cl - Switch to a Chilean company (e.g. CL Company) - Activate a foreign currency (e.g. USD) - Make sure that the rate of the foreign currency is not 1 For example: * Unit per CLP: 0.001057876419 * CLP per Unit:945.29 - Create an invoice in USD with 2 lines having different amount: * 15.80 * 15.00 - Save the invoice - Print the invoice **Issue:** On the printed invoice, a slightly different currency rate is displayed for each invoice line. **Cause:** The currency rate to display is computed for each invoice line, based on the following formula: abs(self.balance) / self.price_subtotal However, the value of balance is rounded to the unit because of the CLP currency and therefore it generates a different rate when trying to compute it. **Solution:** Compute the rate from the total values instead of the subtotal of each line. The real rate configured on the currency cannot be used because it can be modified after the creation of the invoice. opw-4242448 Linked community PR: https://github.com/odoo/odoo/pull/185230 Forward-Port-Of: odoo/enterprise#73035
This partially redoes odoo/enterprise#64900. Copying tax_ids from the sale order lines to the down payment line on the invoice doesn't work for external tax calculators. Tax percentages returned by tax calculators are only informational. When they return e.g. 5% tax, the actual amount can be different from 5% because of differences in rounding or (partial) exemptions. The authoritative tax is returned as a value amount (e.g. $10). Because of this, we cannot rely on Odoo to calculate the tax from
Original PR description
This partially redoes odoo/enterprise#64900. Copying tax_ids from the sale order lines to the down payment line on the invoice doesn't work for external tax calculators. Tax percentages returned by…
This partially redoes odoo/enterprise#64900. Copying tax_ids from the sale order lines to the down payment line on the invoice doesn't work for external tax calculators. Tax percentages returned by tax calculators are only informational. When they return e.g. 5% tax, the actual amount can be different from 5% because of differences in rounding or (partial) exemptions. The authoritative tax is returned as a value amount (e.g. $10). Because of this, we cannot rely on Odoo to calculate the tax from account.tax records. It's not always going to match. It's not possible to fix this by externally calculating taxes on the down payment invoice. The single down payment line cannot accomodate all different tax categories. Creating a down payment line per tax category (e.g. avatax_category_id) was considered, but a specific down payment product would need to be created per used tax category which would clutter the database. On top of that, down payment products are removed in later versions [1] which would complicate this approach even further. This solves the issue by not calculating taxes on down payments at all. The down payment invoice will not be sent to external tax calculators. The resulting down payment lines on the SO won't have taxes set, and those lines will be excluded from the request to the external tax calculator. The final, "regular invoice" transaction will happen as if no down payments were made. The down payment lines won't be sent, so this will look like a regular invoice from the external calculator's view. By default, the downpayment lines equal the subtotal of the selected down payment amount. We remove tax_ids from the lines because we cannot count on calculating tax locally (see above). To keep the behavior analogous we override the downpayment wizard to create a single down payment line with a total equal to the entered total in the wizard. [1] odoo/odoo@9aa52dd6418e5881adc2d96d15d062b55d6150c5 opw-3971513 Forward-Port-Of: odoo/enterprise#73027 Forward-Port-Of: odoo/enterprise#70517
To reproduce: 1) Activate storno accounting in the settings 2) Create a new partner 3) Create a Vendor Credit Note for that partner, post it 4) Register a full payment for the credit note 5) Open the Aged Payable report ====> The partner appears in the report, even though it has an amount of 0. It shouldn't, since there is no open amount for it. This was due to the way we checked the amount of the credit note was zero. In storno, the payable line of the refund is a negative credit inst
Original PR description
To reproduce: 1) Activate storno accounting in the settings 2) Create a new partner 3) Create a Vendor Credit Note for that partner, post it 4) Register a full payment for the credit note 5) Open the Aged Payable report ====> The partner appears in the report, even though it has an amount of 0. It shouldn't, since there is no open amount for it. This was due to the way we checked the amount of the credit note was zero. In storno, the payable line of the refund is a negative credit instead of being a debit. Still, it's linked through the debit_move_id field to the partial reconcile. So, removing the debit from the debit or credit from the credit wasn't enough in that setup. opw-4166891 Forward-Port-Of: odoo/enterprise#72827 Forward-Port-Of: odoo/enterprise#72422
Collection of small shop floor fixes for v17. Please refer to the individual feature commits for details. Forward-Port-Of: odoo/enterprise#73062 Forward-Port-Of: odoo/enterprise#70704
Original PR description
Collection of small shop floor fixes for v17. Please refer to the individual feature commits for details. Forward-Port-Of: odoo/enterprise#73062 Forward-Port-Of: odoo/enterprise#70704
Steps ----- - Install timesheet_grid - Set monday as the first day of the week in the language settings - Set the timezone of the user's working schedule to a more advanced timezone, e.g. UTC+10 - Go to Timesheets and add some hours on monday -> The under/over time is calculated relative to a lower number of hours than the real number of working hours for that day. Cause ----- `get_daily_working_hours` uses UTC's start/end of day for the start and end of the period, causing some workin
Original PR description
Steps ----- - Install timesheet_grid - Set monday as the first day of the week in the language settings - Set the timezone of the user's working schedule to a more advanced timezone, e.g. UTC+10 - Go to Timesheets and add some hours on monday -> The under/over time is calculated relative to a lower number of hours than the real number of working hours for that day. Cause ----- `get_daily_working_hours` uses UTC's start/end of day for the start and end of the period, causing some working hours near the start/end of the period to be missed. opw-4163183 Forward-Port-Of: odoo/enterprise#73010 Forward-Port-Of: odoo/enterprise#72526
Versions: ------------ 17.0 Steps to Reproduce: ----------------------------- 1. go to sign document 2. add sign item in document 3. click on sign document now 4. click on start seems be not working properly 5. video link: https://nimb.ws/WKMlFjB Issue: ------- stacking order of sign item navigator seems to be low Solution: ------------ increase z-index value of `o_sign_sign_item_navigator`. task-4191542 Forward-Port-Of: odoo/enterprise#70170
Original PR description
Versions: ------------ 17.0 Steps to Reproduce: ----------------------------- 1. go to sign document 2. add sign item in document 3. click on sign document now 4. click on start seems be not working properly 5. video link: https://nimb.ws/WKMlFjB Issue: ------- stacking order of sign item navigator seems to be low Solution: ------------ increase z-index value of `o_sign_sign_item_navigator`. task-4191542 Forward-Port-Of: odoo/enterprise#70170
The SLA success rate was previously being computed using the entire history of closed tickets as the domain. This is contrary to the expected behavior, given the helper text on Odoo and the list view of tickets that opens up if you click the percentage. This commit changes the domain to only consider tickets that were closed in the last 7 days. To reproduce on Runbot, follow the steps laid out here, as the process involves forcing tickets to fail and be older than 7 days closed: htt
Original PR description
The SLA success rate was previously being computed using the entire history of closed tickets as the domain. This is contrary to the expected behavior, given the helper text on Odoo and the list view of tickets that opens up if you click the percentage. This commit changes the domain to only consider tickets that were closed in the last 7 days. To reproduce on Runbot, follow the steps laid out here, as the process involves forcing tickets to fail and be older than 7 days closed: https://www.odoo.com/odoo/49/tasks/4206255 opw-4206255 Forward-Port-Of: odoo/enterprise#71600