Friday, November 25, 2022
81 changes · master
Enhancements to existing features
Survey users can now find live sessions by entering their session code in the existing survey name search. This makes it easier to locate the right survey session without adding extra fields or cluttering the screen.
Original PR description
Allow users to search by live session code without taking extra space in the UI. Task-3067507
Accounting dashboard graphs now load asynchronously, so users can open and use the dashboard without waiting for chart data to finish loading. This improves perceived performance and responsiveness for finance teams working with journal dashboards.
Original PR description
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
The manufacturing work order planning view now shows blocked time slots and totals planned times more clearly. This helps production teams better understand capacity constraints and scheduling workload at a glance.
Original PR description
Adapt workorder gantt view to show blocked slots and summed times. task: 2444754 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
Project users get clearer task views, easier access to all tasks, and more informative shared task cards. Sales-linked milestones now provide direct access to their related sales orders, helping teams move between project delivery and sales context faster.
Original PR description
Purpose of this commit to improve generic usage of project app. So in this commit done the following changes: - switch the id and the priority fields from place for task list view - add a 'view sales order' button that should open the form view of the SO linked to the SOL set on the milestone for milestone list view - add a 'sales order' stat button that should open the form view of the SO linked to the SOL set on the milestone for milestone form view - add a 'done' option; represent it in purple in status field - if there is only 1 assignee, display its name on the card instead of 1 assignee for project sharing kanban view - add an 'all tasks' menu on the right of the 'my tasks' one task-2917086
This update improves how certain Mail-related records appear in navigation breadcrumbs. Instead of showing technical model names and record IDs, users will see clearer record labels, making navigation easier and less confusing.
Original PR description
**Description of the issue/feature this PR addresses:** for models mail.channel.rtc.session, res.users.settings, res.users.settings.volumes name field is not there in the model, so breadcrump currently showing model_name, id , so adding rec_name for these model for better breadcrump. **Current behavior before PR:** Breadcrump showing model_name, id **Desired behavior after PR is merged:** Better breadcrumb for the models --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The product grid configurator used in sales and purchasing has been updated to a newer dialog experience. This keeps the product selection workflow more consistent with the rest of Odoo and helps reduce reliance on older interface code.
Original PR description
Product configurators were migrated to Owl, but some legacy code was kept as not urgent to migrate (not required to drop the compatibility layer of views). This commit focus on the 'matrix' (or grid) configurator. See also: - https://github.com/odoo/enterprise/pull/34401 task-3056594
The email marketing unsubscribe and subscription pages now load more appropriate website assets, reducing unnecessary page weight and fixing display issues. Blocklist changes for email and SMS are logged with clearer context, making it easier for teams to understand why contacts were added or removed.
Original PR description
PURPOSE Fix assets in mass mailing (unsubscription page is broken and assets usage is a complete mess). Improve blocklist logging. Update tools methods, controllers and templates naming to ease…
PURPOSE
Fix assets in mass mailing (unsubscription page is broken and assets usage is
a complete mess). Improve blocklist logging. Update tools methods, controllers
and templates naming to ease future improvements and refactoring.
SPECIFICATIONS
[FIX] mass_mailing: use frontend assets in subscription page
Unsubscribe page uses a custom layout allowing a portal-like behavior for
mass mailing without any link to website or portal. However it currently
uses the complete backend assets. This leads to a lot of unnecessary css
and js being loaded.
When having frontend pages like the one used in mass mailing it should rely
on frontend assets with some custom assets if necessary for the page to
be correctly displayed.
In this commit we choose to use frontend assets like other portal-like pages.
Mailing layout now uses the frontend layout defined in web and adds its own
subset of assets (mailing_assets). Some custom css is moved or added as well
as few tweaks to ensure layouting is globally the same as before this commit.
[IMP] mail, phone_validation: allow to log a message when (un)blacklisting
Add possibility to add a message when adding or removing a blacklist entry
for both mail and phone_validation (used for SMS). This replaces the
``action_remove_with_reason`` method.
When updating active flag this is added as a tracking note to avoid having
several messages. Indeed message is concatenated with the tracking itself
instead of adding message for tracking + a message for the log itself. When
a new record is created, a note is logged.
Use it in mass mailing.
[REF] mass_mailing: rename templates and controller methods
Rename templates to better understand their purpose. Current naming is not
crystal clear.
Rename controller methods in order to be clearer and more aligned with current
guidelines. Notably namespace by mailing, try to be clearer about their
purpose, ...
Add a helper field to know when a mailing runs on mailing lists as it triggers
some specific behavior.
In this commit we rename methods generating tokens (for recipients and report
management). Otherwise it is hard to distinguish them as naming is not really
convenient to use
* _unsubscribe_token -> was actually generating token for a given recipient
on a given mailing;
* _get_unsubscribe_token -> was actually generating token for mailing
users to deactivate D+1 KPI reporting;
Hash for mail tracking is also moved in its own method to avoid having the
same code twice. Better delegate it to a tool sub method.
Rename main routes, and keep a legacy for the main unsubscribe route to
keep retro compatibility for existing mailings.
[IMP] mass_mailing: show blacklist button by default on portal
We now consider being able to blacklist their email is a default behavior for
users being redirected to the subscription management portal page.
LINKS
Task-3082546 (Mass Mailing: Fix assets and unsubscribe page)
Task-2710804 (Mail: Clean MailThread API)
Prepares Task-2669037 (Mass Mailing: Subscription page code cleaning)
Prepares Task-2150462 (Mass Mailing: Unsubscribe flow refactoring)The automated rental order test flow was updated to work with the newer product selection dialog. This helps keep rental product configuration checks reliable after the related interface change.
Original PR description
Following the changes made to use the new OWL Dialog in `product_matrix`, adapt the tour to the new Dialog. See also: - https://github.com/odoo/odoo/pull/105841 task-3056594
The manufacturing work order planning view now highlights blocked time slots and shows combined time totals. This helps planners better understand machine or work center availability and make scheduling decisions faster.
Original PR description
Adapt workorder gantt view to show blocked slots and summed times. task: 2444754
This update adjusts the version information for the Peru electronic invoicing module in preparation for a webinar. It is a minor administrative change with no expected impact on day-to-day business workflows.
Project planning screens are easier to use with a new Gantt view for all tasks and better default reporting measures. Users can more quickly review allocated time, actual hours, and progress while seeing planning grouped in a more useful way.
Original PR description
…for project ** = project_timesheet_forecast Purpose of this commit to improve generic usage of project app. So in this commit done the following changes: - Add gantt view for all tasks button - The pivot view displays the following measures by default: allocated time, effective hours, progress 'hours planned' stat button - Hide the 'I am unavailable' button on the 'hours planned' stat button - Group the gantt view by resource instead of the 'hours planned' stat button - Hide the 'I am unavailable' button on the 'hours planned' stat button task-2917086
Resolved issues and error corrections
The accounting dashboard now allows users to configure automated bank statement synchronization even when no online bank has been selected yet. This removes a setup roadblock and makes it easier for businesses to connect bank journals for automatic updates.
Original PR description
When the bank journal is set to automated online synchronization, we also want to be able to configure it when no online bank is set. task-3043449 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
This pull request makes a small update in the Spreadsheet area, based on the files changed. The provided description and commit messages do not specify a clear business-facing behavior change, so the impact appears limited.
Original PR description
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
The bank dashboard now shows the right action depending on how bank feeds are configured. Users can more easily import statements, start online synchronization, fetch transactions, or reconcile items without confusing or missing options.
Original PR description
… on dashboard When the bank feeds is set to: - 'Undefined yet' : I need to be able either to import or to create an online synchronization. - Import(CAMT, CODA, CSV, OFX, QIF) :Then I need the "import statement" link if "Reconcile X items" is the primary CTA. Import statement becomes a primary CTA when nothing is left to reconcile on this specific journal. - Automated Bank Synchronization : - Either I effectively have a bank sync, then I need to be able to fetch transactions from the journal - Or I don't really have a bank sync (because I modified the config of the bank feeds manually for example), then I need to be able to create an online sync task-3043449
Some tags in Factur-X are translated (for instance: 'INVOICE' becomes 'FACTURE') and thus break the compliance tests of PDFA/3. Also prevent translating 'VAT' into 'TVA' because it breaks the factur-x/UBL tests. task-3077791 Forward-Port-Of: odoo/odoo#106386 Forward-Port-Of: odoo/odoo#106299
Original PR description
Some tags in Factur-X are translated (for instance: 'INVOICE' becomes 'FACTURE') and thus break the compliance tests of PDFA/3. Also prevent translating 'VAT' into 'TVA' because it breaks the factur-x/UBL tests. task-3077791 Forward-Port-Of: odoo/odoo#106386 Forward-Port-Of: odoo/odoo#106299
**Description of the issue/feature this PR addresses:** Goal Description and Goal Definition fields in the Goal Definitions form view is not properly aligned in the form view. Similarly description field and Forum Badge Level in badges form view. 1. Developer Mode 2. Settings -> Gamificaton Tools -> Goal Definition // Badges 3. Create or open an existing record 4. Specified fields are not aligned well **Current behavior before PR:** Goal Definition: goal description and definiti
Original PR description
**Description of the issue/feature this PR addresses:** Goal Description and Goal Definition fields in the Goal Definitions form view is not properly aligned in the form view. Similarly description…
**Description of the issue/feature this PR addresses:** Goal Description and Goal Definition fields in the Goal Definitions form view is not properly aligned in the form view. Similarly description field and Forum Badge Level in badges form view. 1. Developer Mode 2. Settings -> Gamificaton Tools -> Goal Definition // Badges 3. Create or open an existing record 4. Specified fields are not aligned well **Current behavior before PR:** Goal Definition: goal description and definition field in the form is not properly aligned.  Badges:  Forum badge level field:  **Desired behavior after PR is merged:** Full width for goal definition and goal description fields. Goal Definition:  Badges:  Forum badge level field:  --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#103999
This change fixes some (redundant) taxes, tax groups and specific terms for Australia. [task-2989002](https://www.odoo.com/web#id=2989002&cids=1&menu_id=4720&action=4043&model=project.task&view_type=form) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#105525
Original PR description
This change fixes some (redundant) taxes, tax groups and specific terms for Australia. [task-2989002](https://www.odoo.com/web#id=2989002&cids=1&menu_id=4720&action=4043&model=project.task&view_type=form) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#105525
Add a group by product categories in the stock.quant. Part of task-2985735 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106396
Original PR description
Add a group by product categories in the stock.quant. Part of task-2985735 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106396
Steps to reproduce: - Create a product with both MTO and Buy routes. - Create a Sale Order containing this product. - On the created PO, go to Alternatives -> Create Alternative and select another vendor. - Go back to the original Sale Order - Click on the linked Purchase Order - Go to Alternatives -> Compare Product Lines When doing this, the `active_id` in the context is the id of the Sale Order, which raises an issue in the renderer for this list as it's using the active_id as if it
Original PR description
Steps to reproduce: - Create a product with both MTO and Buy routes. - Create a Sale Order containing this product. - On the created PO, go to Alternatives -> Create Alternative and select another vendor. - Go back to the original Sale Order - Click on the linked Purchase Order - Go to Alternatives -> Compare Product Lines When doing this, the `active_id` in the context is the id of the Sale Order, which raises an issue in the renderer for this list as it's using the active_id as if it was the Purchase Order. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106085
Ever since the website is previewed in the iframe [1], pressing CTRL-K (or Meta-K on macOS) while previewing the website can result in focusing the browser's URL bar on top of summoning the command palette. Steps to reproduce: - Preview the website - Click on the iframe to focus on it - Press CTRL|Meta - K - URL bar is focused This commit fixes that by preventing the default behaviour within the iframe and only summon the command palette. [1]: https://github.com/odoo/odoo/commit/31
Original PR description
Ever since the website is previewed in the iframe [1], pressing CTRL-K (or Meta-K on macOS) while previewing the website can result in focusing the browser's URL bar on top of summoning the command palette. Steps to reproduce: - Preview the website - Click on the iframe to focus on it - Press CTRL|Meta - K - URL bar is focused This commit fixes that by preventing the default behaviour within the iframe and only summon the command palette. [1]: https://github.com/odoo/odoo/commit/31cc10b91dc7762e23b4bde9b945be0c4ce3fe3b task-3035637 Forward-Port-Of: odoo/odoo#106272
This is just our corporate CLA file --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106400
Original PR description
This is just our corporate CLA file --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106400
*: asiapay, flutterwave and mercado_pago. Wrong numerical code for USD in Asiapay. Remove unsupported currencies for Flutterwave (ARS, BRL, CVE, CDF, GMD, LRD, MXN, MZN, SOL, ZMK). Add supported currencies for Mercado Pago (BOB, EUR). Reorder currencies from support page list. Forward-Port-Of: odoo/odoo#106427
Original PR description
*: asiapay, flutterwave and mercado_pago. Wrong numerical code for USD in Asiapay. Remove unsupported currencies for Flutterwave (ARS, BRL, CVE, CDF, GMD, LRD, MXN, MZN, SOL, ZMK). Add supported currencies for Mercado Pago (BOB, EUR). Reorder currencies from support page list. Forward-Port-Of: odoo/odoo#106427
Before this commit: In the bottom of the settings, it would show: `Database expiration: Invalid Datetime` if the `database.expiration_date` system parameter value is set. After this commit: The date is displayed correctly OPW-3047586 OPW-3072884 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106434
Original PR description
Before this commit: In the bottom of the settings, it would show: `Database expiration: Invalid Datetime` if the `database.expiration_date` system parameter value is set. After this commit: The date is displayed correctly OPW-3047586 OPW-3072884 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106434
Steps to reproduce: -Go to Account app > Configuration > Chart of Accounts. -Here change the view to kanban view. Issue: The "Type" field is displaying "[object, Object]" for every account instead of the proper type. Solution: The "Type" field view in kanban view was missing the ".value". So instead of "record.account_type" we should have "record.account_type.value". From 16.0 to master. opw-3063341 Forward-Port-Of: odoo/odoo#105949
Original PR description
Steps to reproduce: -Go to Account app > Configuration > Chart of Accounts. -Here change the view to kanban view. Issue: The "Type" field is displaying "[object, Object]" for every account instead of the proper type. Solution: The "Type" field view in kanban view was missing the ".value". So instead of "record.account_type" we should have "record.account_type.value". From 16.0 to master. opw-3063341 Forward-Port-Of: odoo/odoo#105949
Before this commit: If we remove a payment line using an Adyen payment method, `pending_adyen_line()` return `undefined`. With the `_poll_for_response` still being executed, it will pop some JS traceback each call with: ```js TypeError: Cannot read properties of undefined (reading 'terminalServiceId') ``` After this commit: No JS traceback loop OPW-3032391 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odo
Original PR description
Before this commit: If we remove a payment line using an Adyen payment method, `pending_adyen_line()` return `undefined`. With the `_poll_for_response` still being executed, it will pop some JS traceback each call with: ```js TypeError: Cannot read properties of undefined (reading 'terminalServiceId') ``` After this commit: No JS traceback loop OPW-3032391 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#105716
**Current behavior before PR:** - When you try to paste text beside a text which is in code formate it puts the new text in new line with smaller font. - When we try to paste text in code formate in new line then it will give a blank space below the pasted text **Desired behavior after PR is merged:** - when you try to paste text beside a text which is in code formate it puts the pasted text in new line with original fontsize. - When we paste the text in code formate in n
Original PR description
**Current behavior before PR:** - When you try to paste text beside a text which is in code formate it puts the new text in new line with smaller font. - When we try to paste text in code formate in new line then it will give a blank space below the pasted text **Desired behavior after PR is merged:** - when you try to paste text beside a text which is in code formate it puts the pasted text in new line with original fontsize. - When we paste the text in code formate in new line then it will not give a empty line below it, Task-2683455 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#105939 Forward-Port-Of: odoo/odoo#96763
**Current behavior before PR:** When we try to add signature from powerbox then sometimes it does not show the signature. **Desired behavior after PR is merged:** Now when we try to add signature from powerbox then it will show the signature. Task-2939080 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#103013
Original PR description
**Current behavior before PR:** When we try to add signature from powerbox then sometimes it does not show the signature. **Desired behavior after PR is merged:** Now when we try to add signature from powerbox then it will show the signature. Task-2939080 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#103013
Steps to reproduce: (Activate Project, Timesheets, Sales, and Inventory) - connect with portal - open Projects - try to open project "AGR - S00021 - Sales Order" Issue: Access Error Cause: We want to access to the field "is_gs1_nomenclature" for which Portal has no access. Note: On the main Runbot (all apps) it does work because the subcontractin_portal adds the Barcode Nomenclature access to Portal user opw-3073064 Forward-Port-Of: odoo/odoo#106384
Original PR description
Steps to reproduce: (Activate Project, Timesheets, Sales, and Inventory) - connect with portal - open Projects - try to open project "AGR - S00021 - Sales Order" Issue: Access Error Cause: We want to access to the field "is_gs1_nomenclature" for which Portal has no access. Note: On the main Runbot (all apps) it does work because the subcontractin_portal adds the Barcode Nomenclature access to Portal user opw-3073064 Forward-Port-Of: odoo/odoo#106384
Before this PR, the presence service would crash on cross-origin iframes. This is due to the fact that accessing the parent document of a cross origin iframe is forbidden for security concerns. This error was introduced when trying to synchronize the website iframe and the window focus state in https://github.com/odoo/odoo/pull/102479. This PR fixes the issue by catching the error and fallbacking to the old behavior given than task-3006023 has been fixed by https://github.com/odoo/odoo
Original PR description
Before this PR, the presence service would crash on cross-origin iframes. This is due to the fact that accessing the parent document of a cross origin iframe is forbidden for security concerns. This error was introduced when trying to synchronize the website iframe and the window focus state in https://github.com/odoo/odoo/pull/102479. This PR fixes the issue by catching the error and fallbacking to the old behavior given than task-3006023 has been fixed by https://github.com/odoo/odoo/pull/53143 anyway. task-3073242 Forward-Port-Of: odoo/odoo#106454
**Description of the issue/feature this PR addresses:** When manually creating a picking/transfer, the Mark As To Do button is only visible after clicking the save button. With the new ui for the Odoo 16, the button is expected to be visible for the user so that he can see it without clicking the save button. **Current behavior before PR:** Button is visible only after manual saving **Desired behavior after PR is merged:** Button will be visible even without clicking the save button.
Original PR description
**Description of the issue/feature this PR addresses:** When manually creating a picking/transfer, the Mark As To Do button is only visible after clicking the save button. With the new ui for the Odoo 16, the button is expected to be visible for the user so that he can see it without clicking the save button. **Current behavior before PR:** Button is visible only after manual saving **Desired behavior after PR is merged:** Button will be visible even without clicking the save button. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#103695
To Reproduce ============ - on chatter, upload 2 images - open the first image click or zoom with the mouse wheel (no problem) - switch to the second one and try same thing -> traceback Problem ======= some actions are too fast that sometimes the function `_updateZoomerStyle` is called before setting the refs, so we just do nothing when image is null Solution ======== do nothing when image is `null` opw-3029580 opw-3071054 Forward-Port-Of: odoo/odoo#106445 Forward-Port-Of: odo
Original PR description
To Reproduce ============ - on chatter, upload 2 images - open the first image click or zoom with the mouse wheel (no problem) - switch to the second one and try same thing -> traceback Problem ======= some actions are too fast that sometimes the function `_updateZoomerStyle` is called before setting the refs, so we just do nothing when image is null Solution ======== do nothing when image is `null` opw-3029580 opw-3071054 Forward-Port-Of: odoo/odoo#106445 Forward-Port-Of: odoo/odoo#106423
When activity group (e.g. activities for Sale Orders) has future acitivities, but not today or overdue activities, the group is deleted. This is not what we want. In v15 it worked opposite way, but in v16 it was changed after js refactoring. Variable name for `total_count` is confusing. It actually means today activities + overdue activities [1] [1] https://github.com/odoo/odoo/blob/1666ee5515996fab8a843b36b4fd93b776172f75/addons/mail/models/res_users.py#L237-L238 opw-3042616 opw-3063110
Original PR description
When activity group (e.g. activities for Sale Orders) has future acitivities, but not today or overdue activities, the group is deleted. This is not what we want. In v15 it worked opposite way, but in v16 it was changed after js refactoring. Variable name for `total_count` is confusing. It actually means today activities + overdue activities [1] [1] https://github.com/odoo/odoo/blob/1666ee5515996fab8a843b36b4fd93b776172f75/addons/mail/models/res_users.py#L237-L238 opw-3042616 opw-3063110 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#106178
We decided to make this list as feature and not app. It allows any user in mode OneAppFree to use them without become an Extra App. List of apps impacted: blog forum all payments acquirer task-3062641 Forward-Port-Of: odoo/odoo#105787
Original PR description
We decided to make this list as feature and not app. It allows any user in mode OneAppFree to use them without become an Extra App.
List of apps impacted:
blog
forum
all payments acquirer
task-3062641
Forward-Port-Of: odoo/odoo#105787The new get_views API inlines every subview into the main view in an effort to optimize client/server communication. In the situation: ``` <form> <field name="my_one_to_many" /> </form> ``` The server algorithm will fetch kanban or list views to display that x2many and inline them in the final arch that is sent to the client. This commit aims at factorizing the code which does just that in order for studio (or other modules) to be able to detect whether the subview it receives
Original PR description
The new get_views API inlines every subview into the main view in an effort to optimize client/server communication. In the situation: ``` <form> <field name="my_one_to_many" /> </form> ``` The server algorithm will fetch kanban or list views to display that x2many and inline them in the final arch that is sent to the client. This commit aims at factorizing the code which does just that in order for studio (or other modules) to be able to detect whether the subview it receives is "real" or inlined Forward-Port-Of: odoo/odoo#106271
## Issues - When the google and outlook sync plugins are not installed the admin user should see an option to install them from the calendar but other users should not see anything. - The 'groups' guard would have prevented regular users from syncing their calendar at all if it had worked - Users can get an obtuse error message if the administrator has not configured the installed sync modules ## Fix - Replaces the 'groups' attribute in the calendar controller template with a t-if
Original PR description
## Issues - When the google and outlook sync plugins are not installed the admin user should see an option to install them from the calendar but other users should not see anything. - The 'groups' guard would have prevented regular users from syncing their calendar at all if it had worked - Users can get an obtuse error message if the administrator has not configured the installed sync modules ## Fix - Replaces the 'groups' attribute in the calendar controller template with a t-if and a dynamic check as OWL doesn't process 'groups'. - Update the structure of the calendar sync template to facilitate overriding the display conditions - Update the inherits to override the display conditions and allow anyone to see the sync button once a module is installed - Update the code that handles clicking 'sync' to throw the same error as it would have for other misconfigurations task - 3056311 Forward-Port-Of: odoo/odoo#105461
Some updates to Kenya localization: - Withholing taxes support - Inventory Interim accounts are set by default when automatic valuation of stocks is used - Default temporary account for POS Task: 3067646 Forward-Port-Of: odoo/odoo#105906
Original PR description
Some updates to Kenya localization: - Withholing taxes support - Inventory Interim accounts are set by default when automatic valuation of stocks is used - Default temporary account for POS Task: 3067646 Forward-Port-Of: odoo/odoo#105906
The fix in #106174 was not good. The translation dialog cannot update not translated terms the initial term value may be empty "" when the source and the translation are the same at first. So, the source to for update_field_translations should be const source = term.value ? term.value : term.source; 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 guid
Original PR description
The fix in #106174 was not good. The translation dialog cannot update not translated terms the initial term value may be empty "" when the source and the translation are the same at first. So, the source to for update_field_translations should be const source = term.value ? term.value : term.source; 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#106360
hr_*: - hr - hr_contract - hr_work_entry - hr_work_entry_contract Fixes multiple visual issues in various models task-3002444 Forward-Port-Of: odoo/odoo#102922
Original PR description
hr_*: - hr - hr_contract - hr_work_entry - hr_work_entry_contract Fixes multiple visual issues in various models task-3002444 Forward-Port-Of: odoo/odoo#102922
**Description of the issue/feature this PR addresses:** history field in the live chat session history form is not aligned well in the form and currently it is too compact. 1. Live Chat -> Report -> Session History 2. Open any record 3. See the History field in the form **Current behavior before PR:** Field is not aligned well in the form view.  **Desired behavior after PR is merged:** Field will be aligned correctly in the form view.  --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#104788
Issue: In the MO view, the src location for components was editable and the dest location for byproducts was editable when neither of these should be. Due to the same field appearing twice in the same x2many field list, there were 2 issues: 1. something changed (probably during OWL refactoring) that made it so the 2nd invisible field instance of the field was overriding the "readonly='1'" property of the 1st instance when it was in the view (i.e. when multi-locations is active
Original PR description
Issue: In the MO view, the src location for components was editable and the dest location for byproducts was editable when neither of these should be. Due to the same field appearing twice in the…
Issue: In the MO view, the src location for components was editable and the dest location for byproducts was editable when neither of these should be. Due to the same field appearing twice in the same x2many field list, there were 2 issues: 1. something changed (probably during OWL refactoring) that made it so the 2nd invisible field instance of the field was overriding the "readonly='1'" property of the 1st instance when it was in the view (i.e. when multi-locations is active) [in previous versions this did not happen] 2. because of the change by https://github.com/odoo/odoo/commit/168cbe66bee7824bdf389de5c6c680342e27bc6d we ensure that these two required fields are always correctly set (to the MO's values as per the default when multi-loc is active) when the MO's moves are created. Part of general bugfix task: 2985735 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#105959
**Description of the issue/feature this PR addresses:** In large database, if you try to get all subcontrat quant you can crach postgres with a big query. @rco-odoo --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106480
Original PR description
**Description of the issue/feature this PR addresses:** In large database, if you try to get all subcontrat quant you can crach postgres with a big query. @rco-odoo --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106480
Since #106454 the `isOdooFocused` variable is not updated correctly. This commit fixes this issue. Forward-Port-Of: odoo/odoo#106514
Original PR description
Since #106454 the `isOdooFocused` variable is not updated correctly. This commit fixes this issue. Forward-Port-Of: odoo/odoo#106514
Bug: - enable wave transfers - Kanban view should not have a create button Fix: removed the button opw-2978078 Forward-Port-Of: odoo/odoo#99970
Original PR description
Bug: - enable wave transfers - Kanban view should not have a create button Fix: removed the button opw-2978078 Forward-Port-Of: odoo/odoo#99970
payment_sips: wrong numerical code for PLN currency Forward-Port-Of: odoo/odoo#106466 Forward-Port-Of: odoo/odoo#106424
Original PR description
payment_sips: wrong numerical code for PLN currency Forward-Port-Of: odoo/odoo#106466 Forward-Port-Of: odoo/odoo#106424
Purpose ======= Fix the inline input fields which width seems broken because of the new always edit mode. Specifications =========== Web : Introduce new css classes to be added to the input fields in order to constraint their width and avoid white gaps in forms. Event : Limit the size of the confirmed attendees input field in the event form and event type form to display the confirmed attendees message in one line. When using the debug mode, in the event templates, inline the
Original PR description
Purpose ======= Fix the inline input fields which width seems broken because of the new always edit mode. Specifications =========== Web : Introduce new css classes to be added to the input fields in…
Purpose ======= Fix the inline input fields which width seems broken because of the new always edit mode. Specifications =========== Web : Introduce new css classes to be added to the input fields in order to constraint their width and avoid white gaps in forms. Event : Limit the size of the confirmed attendees input field in the event form and event type form to display the confirmed attendees message in one line. When using the debug mode, in the event templates, inline the Register Button with its checkbox to avoid line breaks. Mail : Limit the size of the delay count input field in the activity type form and restore the inline display of the schedule message to avoid unnecessary white gaps. CRM : Fix the leads generation form inlined inputs display by reducing the inputs width to match their content display. Fix the lead form view to align the expected revenue with the probability for better UI. Fix the geolocation field and send email button of the Assigned Partner form tab by restoring their inline property. Because of the form grid layout, nested groups had to be used to correctly restore the display. Alternative solutions modify the DOM too much, which could lead to more xpath and inheritance issues. Task-2996467 See: odoo/enterprise#32460 Forward-Port-Of: odoo/odoo#102546
mrp === - Remove 3 buttons (plan, unreserve, cancel) when open manufacturing orders from any many2many field. - no time has been recorded on operations then give warning with apply button - do not allow to mass edit UOM in any manufacturing state - set value of lot/serial from MO and set read only on unbuild from MO - MO form view fix https://tinyurl.com/2cmrpvre repair ====== Currently it is not possible to select a return on a repair order unless save it first. so after this
Original PR description
mrp === - Remove 3 buttons (plan, unreserve, cancel) when open manufacturing orders from any many2many field. - no time has been recorded on operations then give warning with apply button - do not allow to mass edit UOM in any manufacturing state - set value of lot/serial from MO and set read only on unbuild from MO - MO form view fix https://tinyurl.com/2cmrpvre repair ====== Currently it is not possible to select a return on a repair order unless save it first. so after this commit user can able to select it without save it. only show picking related to selected product 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#102596
**Description of the issue/feature this PR addresses:** Activate Product variants and create a new products with attributes Legs, Size and color. Now enable _Variant Grid Entry_ and _Purchase Agreements_ from purchase settings and now create a Blanket Order from _Purchase -> Orders -> Blanket Orders_ with any products from above created variants. Confirm the created blanked order and click on New Quotation, now a new RFQ will be created, and click on add an item button and select the p
Original PR description
**Description of the issue/feature this PR addresses:** Activate Product variants and create a new products with attributes Legs, Size and color. Now enable _Variant Grid Entry_ and _Purchase…
**Description of the issue/feature this PR addresses:**
Activate Product variants and create a new products with attributes Legs, Size and color.
Now enable _Variant Grid Entry_ and _Purchase Agreements_ from purchase settings and now create a Blanket Order from _Purchase -> Orders -> Blanket Orders_ with any products from above created variants.
Confirm the created blanked order and click on New Quotation, now a new RFQ will be created, and click on add an item button and select the product we have created before, now Choose Product Variants matrix will be opened. Enter some random quantities in multiple lines and click on confirm button.
**Exception will be raised:**
raise ValueError("Expected singleton: %s" % self)
ValueError: Expected singleton: purchase.order.line(<NewId ref='virtual_22'>, <NewId 0x7fbfa5bfa940>, <NewId 0x7fbfa5bfa910>, <NewId 0x7fbfa5bfa580>, <NewId 0x7fbfa5bfa8b0>, <NewId 0x7fbfa5c66d60>, <NewId 0x7fbfa5c66d30>, <NewId 0x7fbfa5bdc310>)
**Issue**: https://github.com/odoo/odoo/commit/6e7f778e1d0dbe4795fa9446bfd3542ecec9815c#commitcomment-90751626
**Related to**: https://github.com/odoo/odoo/commit/6e7f778e1d0dbe4795fa9446bfd3542ecec9815c
**Current behavior before PR:**
single ton error is raised when adding product to rfq(related to blanket order) using variant grid entry feature.
https://user-images.githubusercontent.com/27989791/203976427-dc74acee-1c1c-49fb-a949-f0966bb94f5e.mp4
**Desired behavior after PR is merged:**
products can be added rfq using variant grid entry.
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#106507The session page could not be open in non-debug due to create_date being restricted to debug. This field is required for ordering of records. There was no reason to restrict to just have it only in debug, so we just make it available at any time. Forward-Port-Of: odoo/odoo#106535
Original PR description
The session page could not be open in non-debug due to create_date being restricted to debug. This field is required for ordering of records. There was no reason to restrict to just have it only in debug, so we just make it available at any time. Forward-Port-Of: odoo/odoo#106535
Description of the issue/feature this PR addresses: Before this commit it is possible to archive a product if the current user have no access to all reward (multi company rules). --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106293
Original PR description
Description of the issue/feature this PR addresses: Before this commit it is possible to archive a product if the current user have no access to all reward (multi company rules). --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#106293
**Description of the issue/feature this PR addresses:** Display knowledge and social module in odoo community similar to other enterprise modules **Current behavior before PR:** Knowledge and social module is not shown as it is not added in data **Desired behavior after PR is merged:** Knowledge and social module will be listed in community with upgrade button --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#10
Original PR description
**Description of the issue/feature this PR addresses:** Display knowledge and social module in odoo community similar to other enterprise modules **Current behavior before PR:** Knowledge and social module is not shown as it is not added in data **Desired behavior after PR is merged:** Knowledge and social module will be listed in community with upgrade button --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#103324
**Use case**: in the reconciliation widget, we need to know when the pager is updated before the next render because we need to select the appropriate id to use. cf the following PR: https://github.com/odoo/enterprise/pull/33631 opw-3031131 Forward-Port-Of: odoo/odoo#105738
Original PR description
**Use case**: in the reconciliation widget, we need to know when the pager is updated before the next render because we need to select the appropriate id to use. cf the following PR: https://github.com/odoo/enterprise/pull/33631 opw-3031131 Forward-Port-Of: odoo/odoo#105738
First correction: force a simple order to `read_group` in order to avoid useless joints on table product_template and ir_translation when the grouping key is a Many2One. Second correction: add an index on workorder's `state` field. The get_conflicted_workorder_ids() method search for ready workorders that are in conflict relate to their planning. The state value is searched to many times to not index it Task: 2852423 Description of the issue/feature this PR addresses: Current behavio
Original PR description
First correction: force a simple order to `read_group` in order to avoid useless joints on table product_template and ir_translation when the grouping key is a Many2One. Second correction: add an index on workorder's `state` field. The get_conflicted_workorder_ids() method search for ready workorders that are in conflict relate to their planning. The state value is searched to many times to not index it Task: 2852423 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#106536 Forward-Port-Of: odoo/odoo#106436
To reproduce: 1) activate qr code on invoices 2) print an invoice with a qr code 3) print a followup letter, and attach the printed invoice -> error due to missing 'qr_code_urls' variable in invoice template This can happen with any report calling this template, thus we decided to set the qr_code_urls inside the `report_invoice_document` template directly, so we never need to set it again in _get_report_values() This allows to remove the following report classes (done in master due to
Original PR description
To reproduce: 1) activate qr code on invoices 2) print an invoice with a qr code 3) print a followup letter, and attach the printed invoice -> error due to missing 'qr_code_urls' variable in invoice template This can happen with any report calling this template, thus we decided to set the qr_code_urls inside the `report_invoice_document` template directly, so we never need to set it again in _get_report_values() This allows to remove the following report classes (done in master due to stable policy) - `ReportInvoiceWithoutPayment` - `ReportInvoiceWithPayment` - `PosInvoiceReport` (not even used anywhere) Forward-Port-Of: odoo/odoo#106448
Steps to reproduce: - edit RFQ model with studio - add a toggle widget to the product list - activate/deactivate the toggle multiple times on different products Bug: sometimes the element on the widget is undefined when trying to rerender Fix: check the element is defined before trying to render it opw-3013024 Forward-Port-Of: odoo/odoo#103186
Original PR description
Steps to reproduce: - edit RFQ model with studio - add a toggle widget to the product list - activate/deactivate the toggle multiple times on different products Bug: sometimes the element on the widget is undefined when trying to rerender Fix: check the element is defined before trying to render it opw-3013024 Forward-Port-Of: odoo/odoo#103186
Purpose ======= Prevents auto save of not dirty forms with text fields on page reload and tab/browser closing. Specifications ============== The text field default value is making Odoo consider the form as dirty even when it's not which triggers auto saving for not dirty forms. Change the text field widget setDirty condition to prevent considering empty textarea string dirty. Typically, if the previous value was false, false and empty string should be considered as the same value
Original PR description
Purpose ======= Prevents auto save of not dirty forms with text fields on page reload and tab/browser closing. Specifications ============== The text field default value is making Odoo consider the form as dirty even when it's not which triggers auto saving for not dirty forms. Change the text field widget setDirty condition to prevent considering empty textarea string dirty. Typically, if the previous value was false, false and empty string should be considered as the same value. Task-3031570 Forward-Port-Of: odoo/odoo#106439
With commit [1] we refactored the cookies bar to let the user decide if he wants to accept the cookies (and/or only part of it). Before that commit, the `website_cookies_bar` cookie could only hold `true` as value, which now is holding an object like `{"required": true, "optional": false}`. This creates an issue if a user is coming from a previous version with `true` as cookie value because since the refactoring it will crash both in JS and PY because `in` instruction with a boolean value wil
Original PR description
With commit [1] we refactored the cookies bar to let the user decide if he wants to accept the cookies (and/or only part of it). Before that commit, the `website_cookies_bar` cookie could only hold `true` as value, which now is holding an object like `{"required": true, "optional": false}`.
This creates an issue if a user is coming from a previous version with `true` as cookie value because since the refactoring it will crash both in JS and PY because `in` instruction with a boolean value will fail in both languages.
The decision taken here is simply to remove the cookie if we face such a case so the user can decide again what he wants (since there is more choices now).
It also means that we won't be holding a outdated value in the cookie any longer.
[1]: https://github.com/odoo/odoo/commit/2cbda6c98ee947cea1d06c09880eee8c758304a8
opw-3074303
Forward-Port-Of: odoo/odoo#106476Before this commit, the buttons to scroll to the next element might not work if the next element was invisible. Steps to reproduce the bug fixed by this commit: (Note that these steps are only reproducible from 15.0. We decided to merge this fix in 14.0 to be custo-friendly) - Install two languages on a website - Drop a cover block (1), with a height of 100% and a scroll down button - Drop a new block (2) only visible for language B below the block 1 - Drop a new block (3) visible fo
Original PR description
Before this commit, the buttons to scroll to the next element might not work if the next element was invisible. Steps to reproduce the bug fixed by this commit: (Note that these steps are only reproducible from 15.0. We decided to merge this fix in 14.0 to be custo-friendly) - Install two languages on a website - Drop a cover block (1), with a height of 100% and a scroll down button - Drop a new block (2) only visible for language B below the block 1 - Drop a new block (3) visible for everyone below the block 2 - Save and go to the site in language A - Click on the scroll down button => No scroll at all while the user expects to scroll to the block visible to everyone (3). This commit fixes that by making the user scroll down to see the next visible element. opw-2967706 Forward-Port-Of: odoo/odoo#105334
When creating draft deferred entries in a reconcilable account, we should not attempt to reconcile them, because only posted entries can be reconciled. Forward-Port-Of: odoo/odoo#106524
Original PR description
When creating draft deferred entries in a reconcilable account, we should not attempt to reconcile them, because only posted entries can be reconciled. Forward-Port-Of: odoo/odoo#106524
Steps to reproduce: - Set an emmployee hourly cost to 100$ - create a work order and assign that employee to it - log some time on that order with the employee and validate the order Bug: on the cost analysis tab costs are recorded correctly but on Reporting > Overall equipement effectiveness the cost is wrong hourly employee cost is multiplied by duration in minutes Fix: correct the cost Note: I noticed another bug to fix in master employee cost is recomputed on every change mean
Original PR description
Steps to reproduce: - Set an emmployee hourly cost to 100$ - create a work order and assign that employee to it - log some time on that order with the employee and validate the order Bug: on the cost analysis tab costs are recorded correctly but on Reporting > Overall equipement effectiveness the cost is wrong hourly employee cost is multiplied by duration in minutes Fix: correct the cost Note: I noticed another bug to fix in master employee cost is recomputed on every change meaning that if an employee gets a raise for instance it will increase the cost of all his previous opperations that are already completed opw-3028356 Forward-Port-Of: odoo/enterprise#34332
This commit changes a typo in the loseWriteMessage and changes the dialog message when the change of permission for a user will restrict the article's permissions compared to those from its parent. task-3073941 Forward-Port-Of: odoo/enterprise#34133
Original PR description
This commit changes a typo in the loseWriteMessage and changes the dialog message when the change of permission for a user will restrict the article's permissions compared to those from its parent. task-3073941 Forward-Port-Of: odoo/enterprise#34133
If you deleted document Mail.png and then you upgrade Document app, It tried to find that document reference for thumbnail to add and for that we got traceback as on documentes we already set forecreate to avoid recreating deleted document, need to add forecreate on thumbnail record too. ``` Traceback (most recent call last): File "/home/odoo/src/odoo/16.0/odoo/service/server.py", line 1289, in preload_registries registry = Registry.new(dbname, update_module=update_module) F
Original PR description
If you deleted document Mail.png and then you upgrade Document app, It tried to find that document reference for thumbnail to add and for that we got traceback as on documentes we already set…
If you deleted document Mail.png and then you upgrade Document app,
It tried to find that document reference for thumbnail to add and for that we got traceback as on documentes we already set forecreate to avoid recreating deleted document, need to add forecreate on thumbnail record too.
```
Traceback (most recent call last):
File "/home/odoo/src/odoo/16.0/odoo/service/server.py", line 1289, in preload_registries
registry = Registry.new(dbname, update_module=update_module)
File "<decorator-gen-14>", line 2, in new
File "/home/odoo/src/odoo/16.0/odoo/tools/func.py", line 87, in locked
return func(inst, *args, **kwargs)
File "/home/odoo/src/odoo/16.0/odoo/modules/registry.py", line 91, in new
odoo.modules.load_modules(registry, force_demo, status, update_module)
File "/home/odoo/src/odoo/16.0/odoo/modules/loading.py", line 478, in load_modules
processed_modules += load_marked_modules(cr, graph,
File "/home/odoo/src/odoo/16.0/odoo/modules/loading.py", line 371, in load_marked_modules
loaded, processed = load_module_graph(
File "/home/odoo/src/odoo/16.0/odoo/modules/loading.py", line 230, in load_module_graph
load_data(cr, idref, mode, kind='data', package=package)
File "/home/odoo/src/odoo/16.0/odoo/modules/loading.py", line 71, in load_data
tools.convert_file(cr, package.name, filename, idref, mode, noupdate, kind)
File "/home/odoo/src/odoo/16.0/odoo/tools/convert.py", line 760, in convert_file
convert_xml_import(cr, module, fp, idref, mode, noupdate)
File "/home/odoo/src/odoo/16.0/odoo/tools/convert.py", line 826, in convert_xml_import
obj.parse(doc.getroot())
File "/home/odoo/src/odoo/16.0/odoo/tools/convert.py", line 746, in parse
self._tag_root(de)
File "/home/odoo/src/odoo/16.0/odoo/tools/convert.py", line 695, in _tag_root
f(rec)
File "/home/odoo/src/odoo/16.0/odoo/tools/convert.py", line 708, in _tag_root
raise ParseError('while parsing %s:%s, somewhere inside\n%s' % (
odoo.tools.convert.ParseError: while parsing /home/odoo/src/enterprise/16.0/documents/data/files_data.xml:31, somewhere inside
<record id="documents.documents_mail_png" model="documents.document">
<field name="thumbnail" type="base64" file="documents/data/files/mail_thumbnail.png"/>
</record>
```
Forward-Port-Of: odoo/enterprise#34222Steps to reproduce ================== - Go to accounting - Under the bank card, click on reconcile 8 items - Edit the top right hand corner pager to say 1-2 - Click on the next page arrow -> `Cannot read properties of undefined (reading 'id' from 'this.recordById(state.selectedStLineId)')` Cause of the issue ================== The `selectedStLineId` has not been updated with the pager Solution ======== Check if the selectLine is in the records before a render. If not, se
Original PR description
Steps to reproduce ================== - Go to accounting - Under the bank card, click on reconcile 8 items - Edit the top right hand corner pager to say 1-2 - Click on the next page arrow -> `Cannot read properties of undefined (reading 'id' from 'this.recordById(state.selectedStLineId)')` Cause of the issue ================== The `selectedStLineId` has not been updated with the pager Solution ======== Check if the selectLine is in the records before a render. If not, set it to the next available one. opw-3031131 Forward-Port-Of: odoo/enterprise#33631
The lot_id field on unbuild order is automaticcaly set and readonly in case of unbuild for specific manufacturing order that produced a tracked product. Task: 2845380 Forward-Port-Of: odoo/enterprise#34381
Original PR description
The lot_id field on unbuild order is automaticcaly set and readonly in case of unbuild for specific manufacturing order that produced a tracked product. Task: 2845380 Forward-Port-Of: odoo/enterprise#34381
Purpose ======= Fix the inline input fields which width seems broken because of the new always edit mode. Specifications ============== In the appointment form view, limit the width for the float inputs and the integer input to fix the inline display and prevent from having huge white gaps. Task-2996467 See: odoo/odoo#102546 Forward-Port-Of: odoo/enterprise#32460
Original PR description
Purpose ======= Fix the inline input fields which width seems broken because of the new always edit mode. Specifications ============== In the appointment form view, limit the width for the float inputs and the integer input to fix the inline display and prevent from having huge white gaps. Task-2996467 See: odoo/odoo#102546 Forward-Port-Of: odoo/enterprise#32460
- Upload an XLSX file to Documents app. - Click on the document to edit it, this will take you to Odoo Spreadsheets and work fine. - Now upload the same XLSX file in the chatter of a Project Task. - Locate that file in Documents and try to edit it. - Receive "Record does not exist" error. opw-3061745 Forward-Port-Of: odoo/enterprise#34342
Original PR description
- Upload an XLSX file to Documents app. - Click on the document to edit it, this will take you to Odoo Spreadsheets and work fine. - Now upload the same XLSX file in the chatter of a Project Task. - Locate that file in Documents and try to edit it. - Receive "Record does not exist" error. opw-3061745 Forward-Port-Of: odoo/enterprise#34342
A MO.move_raw_ids.location_id should never be directly set by users in the form view. Now that this field is either readonly when multi-loc is active or not in the view at all when multi-loc is not active, we remove the setting of this field from tests that fail with this fix. COM PR: odoo/odoo#105959 Forward-Port-Of: odoo/enterprise#34276
Original PR description
A MO.move_raw_ids.location_id should never be directly set by users in the form view. Now that this field is either readonly when multi-loc is active or not in the view at all when multi-loc is not active, we remove the setting of this field from tests that fail with this fix. COM PR: odoo/odoo#105959 Forward-Port-Of: odoo/enterprise#34276
hr_*: - documents_l10n_be_hr_payroll - hr_contract_salary - hr_payroll - l10n_be_hr_payroll - l10n_be_hr_payroll_account Fixes multiple visual issues in various models task-3002444 Forward-Port-Of: odoo/enterprise#32638
Original PR description
hr_*: - documents_l10n_be_hr_payroll - hr_contract_salary - hr_payroll - l10n_be_hr_payroll - l10n_be_hr_payroll_account Fixes multiple visual issues in various models task-3002444 Forward-Port-Of: odoo/enterprise#32638
Issue ===== Error message send the last transaction but in some case it was not the last transaction when the payment.transaction has the order.name as reference and the order has a client_order_ref Solution ======= You want to find transaction with a reference ilike name or reference ilike client_order_ref Forward-Port-Of: odoo/enterprise#34339
Original PR description
Issue ===== Error message send the last transaction but in some case it was not the last transaction when the payment.transaction has the order.name as reference and the order has a client_order_ref Solution ======= You want to find transaction with a reference ilike name or reference ilike client_order_ref Forward-Port-Of: odoo/enterprise#34339
Forward-Port-Of: odoo/enterprise#34359 Forward-Port-Of: odoo/enterprise#33374
Original PR description
Forward-Port-Of: odoo/enterprise#34359 Forward-Port-Of: odoo/enterprise#33374
Update mocked routes to handle the new group check. task 3056311 Forward-Port-Of: odoo/enterprise#33838
Original PR description
Update mocked routes to handle the new group check. task 3056311 Forward-Port-Of: odoo/enterprise#33838
Forward-Port-Of: odoo/enterprise#34250
Original PR description
Forward-Port-Of: odoo/enterprise#34250
We decided to make this list as feature and not app. It allows any user in mode OneAppFree to use them without become an Extra App. List of apps impacted: blog forum all payments acquirer task-3062641 Related to https://github.com/odoo/odoo/pull/105787 Forward-Port-Of: odoo/enterprise#33961
Original PR description
We decided to make this list as feature and not app. It allows any user in mode OneAppFree to use them without become an Extra App.
List of apps impacted:
blog
forum
all payments acquirer
task-3062641
Related to https://github.com/odoo/odoo/pull/105787
Forward-Port-Of: odoo/enterprise#33961in approval request form view, and quality alert form view, currently the smart buttons, ie, oe_button_box is not properly aligned in the form view due to missing name. Approvals -> Manager -> Approvals to Review -> , click and open any records. Quality -> Quality Control > Quality Alerts -> , click and open any records. **Current behavior before PR:** button is not aligned properly  **Desired behavior after PR is merged:** button is properly aligned in the view.  Forward-Port-Of: odoo/enterprise#33889
Steps to reproduce: - install the "Subscriptions" module; - with "Sales" app create a sale order; - without add a customer, choose a subscription template. Issue: An error appears and which mentions "precision_rounding must be positive, got 0.0" Cause: When we compare the subtotal of the order line to zero and there is no customer selected, no currency is considered. Therefore the rounding value is 0.0 and not 0.0...1. Solution: When there is no custom
Original PR description
Steps to reproduce:
- install the "Subscriptions" module;
- with "Sales" app create a sale order;
- without add a customer, choose a subscription template.
Issue:
An error appears and which mentions "precision_rounding must be positive, got 0.0"
Cause:
When we compare the subtotal of the order line to zero and there is no customer selected, no currency is considered.
Therefore the rounding value is 0.0 and not 0.0...1.
Solution:
When there is no customer selected, the rounding value of the current company is used.
opw-3059073
Forward-Port-Of: odoo/enterprise#34274…idate - Open the bank reconciliation widget - Select a statement line with a partner_id set - Click on the validate button without changing anything => the partner is gone Since the 'auto_balance' line hasn't be edited and the wizard has been validated directly, its flag is still 'auto_balance'. During the validating, we are getting the partners to set on the statement line but the 'liquidity' line and the 'auto_balance' line are ignored. Therefore, we don't find any partner to set on t
Original PR description
…idate - Open the bank reconciliation widget - Select a statement line with a partner_id set - Click on the validate button without changing anything => the partner is gone Since the 'auto_balance' line hasn't be edited and the wizard has been validated directly, its flag is still 'auto_balance'. During the validating, we are getting the partners to set on the statement line but the 'liquidity' line and the 'auto_balance' line are ignored. Therefore, we don't find any partner to set on the statement line and the original partner is now gone. issue: 3075557 Forward-Port-Of: odoo/enterprise#34340
Since 16.0, following OWL refactoring, props are validated in debug mode. One of the props being validated in standard views is the record id, aka resID. This id expects a number (integer), but it seems that the auto-generated ids for the `sale.rental.schedule` SQL view were not numbers but strings, including useless parenthesis from the SQL view query. This commit makes sure the id is a valid number, avoiding the traceback raised by the props validation (when opening the form view of a `
Original PR description
Since 16.0, following OWL refactoring, props are validated in debug mode. One of the props being validated in standard views is the record id, aka resID. This id expects a number (integer), but it seems that the auto-generated ids for the `sale.rental.schedule` SQL view were not numbers but strings, including useless parenthesis from the SQL view query. This commit makes sure the id is a valid number, avoiding the traceback raised by the props validation (when opening the form view of a `sale.rental.schedule` record in debug mode. Forward-Port-Of: odoo/enterprise#34338
Only displays the rainbow man at the summary step of a workorder in the tablet view only if it's the best time in the last 30 days. Part of task-2985735 Forward-Port-Of: odoo/enterprise#33655
Original PR description
Only displays the rainbow man at the summary step of a workorder in the tablet view only if it's the best time in the last 30 days. Part of task-2985735 Forward-Port-Of: odoo/enterprise#33655
[FIX] account_reports: apply proper date computation in options if no mode is provided + clean dead code Providing dates without the mode in the previous_options lead to the default_filter always being applied. This was wrong and could cause issues when calling the report directly from the code (for example to generate an export file). Also, removed an unused condition containing dead code (self.filter_date doesn't exist anymore). When using a 'custom' date filter, the dates will be comput
Original PR description
[FIX] account_reports: apply proper date computation in options if no mode is provided + clean dead code Providing dates without the mode in the previous_options lead to the default_filter always…
[FIX] account_reports: apply proper date computation in options if no mode is provided + clean dead code Providing dates without the mode in the previous_options lead to the default_filter always being applied. This was wrong and could cause issues when calling the report directly from the code (for example to generate an export file). Also, removed an unused condition containing dead code (self.filter_date doesn't exist anymore). When using a 'custom' date filter, the dates will be computed before reaching this condition anyway, so nothing is to be done there. [FIX] l10n_be_reports: use proper dates when exporting tax report XML + fix file indentation The date options was not passed properly to the report. Because of that, though the file contained the right date, the data it contained where always the ones from the report's default date filter (last_month). Furthermore, he indentation of the generated file was messy. This commits brings it back to something structured and human-readable. OPW 3073193 Forward-Port-Of: odoo/enterprise#34300
**Steps to reproduce :** - Create a BoM with an operation containing a passfail Quality Check. - Create an MO with the previously created BoM and confirm it. - Enter in the tablet view of the just created Work Order. - Set the quality check as 'Fail'. - Change the same quality check to set it as 'Pass'. **Expected Behavior** - When clicking 'Fail' : The 'Fail' is directly confirmed and the next step is loaded. - When clicking 'Pass' : The `quality_state` should change from `'fail'` to
Original PR description
**Steps to reproduce :** - Create a BoM with an operation containing a passfail Quality Check. - Create an MO with the previously created BoM and confirm it. - Enter in the tablet view of the just…
**Steps to reproduce :** - Create a BoM with an operation containing a passfail Quality Check. - Create an MO with the previously created BoM and confirm it. - Enter in the tablet view of the just created Work Order. - Set the quality check as 'Fail'. - Change the same quality check to set it as 'Pass'. **Expected Behavior** - When clicking 'Fail' : The 'Fail' is directly confirmed and the next step is loaded. - When clicking 'Pass' : The `quality_state` should change from `'fail'` to `'pass'`. **Actual behavior :** When clicking 'Fail' : - The QCP page update and a new button 'Next' appears. - The user can confirm that the quality check is failed by clicking on the 'Next' button, or he can press 'Pass' to correct a misinput. - He can eventually press again 'Fail' though it's useless. - Either he press 'Next' or 'Pass', the next step is loaded. When clicking 'Pass' : The `quality_state` value stay `'fail'`. https://github.com/odoo/enterprise/blob/316238b28539575d4917265e8e637d2dcda84d32/quality_mrp_workorder/views/quality_views.xml#L97-L98 Unlike the 'Fail' button that calls `do_fail()`, the 'Pass' button calls `action_next()` instead of `do_pass()`. `action_next()` calls `_next()` that set the value of `quality_state` to `'pass'`, but only if `quality_state` wasn't already defined (an so equal to `'none'`). https://github.com/odoo/enterprise/blob/316238b28539575d4917265e8e637d2dcda84d32/mrp_workorder/models/quality.py#L465-L466 This behavior is used by quality checks that have 2 possible states : `'none', 'pass'`, such as upload a picture, take measure... But is not intended to be used when there's more than 2 possible states, as it's the case in the `'passfail'` test_type. We so make the 'Pass' button calls the newly introduced ´action_pass_and_next()`, that calls ´action_next()` as it updates Task: 2985735 Forward-Port-Of: odoo/enterprise#33408
Steps to reproduce: - install the "Subscriptions" module; - go to Alerts tab; - modify the action of an alert by selecting "Send an email to the customer"; - choose an email template; - save or push on the "TRIGGER NOW" button. Issue: An error occurs. Cause: The values encoded for the fields (`state`) of the model "ir_act_server" are not correct. Solution: Update the action fields in the "ir_act_server" table when necessary for sending emails and
Original PR description
Steps to reproduce:
- install the "Subscriptions" module;
- go to Alerts tab;
- modify the action of an alert by selecting "Send an email to the customer";
- choose an email template;
- save or push on the "TRIGGER NOW" button.
Issue:
An error occurs.
Cause:
The values encoded for the fields (`state`) of the model "ir_act_server" are not correct.
Solution:
Update the action fields in the "ir_act_server" table when necessary for sending emails and sms.
opw-3061631
Forward-Port-Of: odoo/enterprise#342861) Create a Misc Journal (Other than the default one) 2) Create an import file for an asset Set the name of the misc journal in the column 'Journal' Example file: |Acquisition Date|Asset Code|Asset Name|Duration|Journal| Method|Number of Months in a Period|Original Value|Status| |----------------|----------|----------|--------|-------|-------------|----------------------------|--------------|------| | 2012-09-15| SDM04| SDM04| 60.00| TEST|Straight Line|
Original PR description
1) Create a Misc Journal (Other than the default one) 2) Create an import file for an asset Set the name of the misc journal in the column 'Journal' Example file: |Acquisition Date|Asset Code|Asset Name|Duration|Journal| Method|Number of Months in a Period|Original Value|Status| |----------------|----------|----------|--------|-------|-------------|----------------------------|--------------|------| | 2012-09-15| SDM04| SDM04| 60.00| TEST|Straight Line| Months| 80,701.89| Draft| 3) In Accounting>Accounting>Management>Assets Click on 'Favorites'>Import records Upload Created file and import records Created record will use the default journal instead of the one specified in the file. This occurs because the journal_id is a computed (stored) field, and the compute function will overwrite the journal right after record creation opw-3051346 Forward-Port-Of: odoo/enterprise#34206