Monday, June 22, 2020
52 changes · master
New functionality added to Odoo
Adds list view selection options so users can more easily select all records when working with large sets of items. This reduces repetitive manual selection and supports bulk actions across business documents and wizards.
Original PR description
Task: https://www.odoo.com/web#id=29040&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 Pad: https://pad.odoo.com/p/r.f4d7b7f4e60cb4e7fe408101780b7189
Enhancements to existing features
This update corrects a typo in the name of a website eLearning challenge. It improves clarity and polish for users viewing achievements or gamification content, with no expected change to functionality.
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
Resolved issues and error corrections
Copying a server action now preserves its configured behavior instead of resetting it to the default. This prevents duplicated automated actions from changing how they run, reducing setup mistakes and unexpected business process changes.
Original PR description
`state` is special-cased in `copy_data` and always reset to its default value if its has one. Therefore rename `state` to `action_type`, and add a related `state` field for backwards compatibility. Task 2079441 Alternative version: #53113 changes the implementation of the `state` special case instead note: probably need to fix a few visible uses of `state` if we go with this one (e.g. the view)
Miscellaneous changes
Update translation files to match the latest content Forward-Port-Of: odoo/odoo#53322 Forward-Port-Of: odoo/odoo#53288
Original PR description
Update translation files to match the latest content Forward-Port-Of: odoo/odoo#53322 Forward-Port-Of: odoo/odoo#53288
Users can now access a task's related planning directly from the task, making it easier to review scheduled work without navigating through separate menus. This improves visibility for project and planning teams and reduces time spent switching between views.
Employee schedule and timezone information is now visible without requiring debug mode. This helps avoid misleading planning details when the system default timezone, such as UTC, would otherwise be shown without context.
Original PR description
Before this commit the schedule and timezone were only visible in debug mode. As the default timezone is UTC, some misleading information could be displayed in some cases (e.g. planning without internal users). taskid: 2246557 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update makes internal server action runners private and streamlines how they are called, reducing misuse risk and simplifying maintenance. It also cleans up related evaluation logic for more predictable and efficient automated action handling.
Original PR description
And change calling conventions while at it, maybe. * there's no reason for these to be callable over RPC, in fact it probably won't work as the `action` parameter should be a record, meaning it's not possible to provide it over RPC, for most actions there's a bunch of setup to do for the `eval_context` which can't be replicated over RPC either keep the old version valid but warn about it * while at it, `self` and `action` seem redundant as `self` was already a server action record(s), just possibly a superset of the one we're trying to run, fix this up side-task of 2079441
This update makes several inventory workflows clearer and easier to use, including clearer labels for count sheets, product moves, replenishment actions, and lead times. Delivery slips now show relevant backordered products, inventory adjustments gain better activity tracking, and replenishment screens provide better grouping and access to forecast information.
Original PR description
Add improvements for stock usability via multiple small view updates: - (spec 2) Rename Print > "Inventory" to "Count Sheet" + add "Print Count Sheet" button to inventory adjustment. - (spec 4)…
Add improvements for stock usability via multiple small view updates: - (spec 2) Rename Print > "Inventory" to "Count Sheet" + add "Print Count Sheet" button to inventory adjustment. - (spec 4) Delivery Slip updated to include backordered products (not cancelled/done). Note this only goes 1 level deep (backorders w/backorders will not have their backordered values included) - (spec 5) Chatter added to stock.inventory model with `create_date` and `state` tracked. - (spec 6) Misnamed "Traceability" stat buttons renamed to "Product Move" - (spec 9) Rename stock rule "Delay" to "Lead Time" to make consistent with other models + add "days" after it appears in form for user context. - (spec 10) Don't show unnecessary document layout configuration before showing Routes diagram in product view. - (spec 14+15) Update orderpoint (replenishment) list view Task: 2206279 Enterprise PR: odoo/enterprise#10723 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The website contact form and thank you page have been refreshed to provide a clearer, more polished experience after visitors submit a form. This improves the first impression for prospects and helps make post-submission communication feel more consistent and professional.
Original PR description
task-2266756 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 Time Off calendar display has been adjusted so remaining days or hours are easier to read and no unnecessary scrollbar appears. This makes the leave overview cleaner and more comfortable for employees to use.
Original PR description
task-1251
The expense banner now appears only in the My Expenses and My Expense Reports areas, rather than across unrelated expense report menus. This reduces clutter and helps users see guidance only where it is useful, while also cleaning up unused expense actions.
Original PR description
currently, the expense banner is displayed on to many menus like: 'expense report > to Pay, to Post'. so in this commit,the banner should only be visible in the 'My Expenses' and 'My Expense Reports' menus. and also removed some unused action from hr_expense. TaskID: 2267850 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Demo records for sales orders, purchase orders, and invoices now include planned activities, making sample list views look more realistic and useful for demonstrations. Sales order demo data also includes updated tags and avoids assigning some records to Odoobot where not appropriate.
Original PR description
- with the activities added on various listviews, the goal of this commit is to update sale order/purchase order/invoice demo data with activities. - with the tags updated sale order's demo data. TaskID: 2254708 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
Demo records for sales orders, purchase orders, invoices, and related flows now include planned activities so users can better see activity tracking in list views. Some demo sales orders also include tags, making the sample data more realistic and easier to explore during demonstrations.
Original PR description
- with the activities added on various listviews, the goal of this commit is to update sale order/purchase order/invoice demo data with activities. - with the tags updated sale order's demo data. TaskID: 2254708
Stock transfer validation now opens any required quality checks instead of stopping users with an error, making warehouse workflows smoother. The update also prevents empty failure popups, adds clearer approval guidance in engineering changes, and keeps pending quality checks when backorders are created.
Original PR description
Add improvements for stock usability via multiple small updates: - (spec 11) Don't show blank Quality Check Failed window. This occurs when there is no `failure_message` or `warning_message` to show…
Add improvements for stock usability via multiple small updates: - (spec 11) Don't show blank Quality Check Failed window. This occurs when there is no `failure_message` or `warning_message` to show and is redundant since the user has already clicked on "Fail" button at this point. - (spec 12) Add tooltip to `approval_template_ids` - (spec 8) Instead of a usererror popping up when trying to validate with To Do quality checks on the move lines being validated, have the applicable quality checks open instead. Additionally, fixes a bug where when a transfers backorder is created with a product containing a quality check, then backordered product will not carry over its quality check. Note that this carry over was only applied for not done quality checks, i.e. partially completed move line of a product with a quality check will not have the backordered move line have a quality check (since at this point it is set to "Done" or "Failed"). Task: 2206279 Community PR: odoo/odoo#51681
Adds sample data across several Helpdesk-related apps so teams can better preview and demonstrate Helpdesk workflows. This helps sales, training, and evaluation users understand how field service, repairs, sales, stock, coupons, and timesheets work together in realistic scenarios.
Original PR description
helpdesk_fsm, helpdesk_repair, helpdesk_sale, helpdesk_sale_timesheet, helpdesk_stock, helpdesk_timesheet, helpdesk_coupon Developed Demo Data of Several 'Helpdesk Module'. task-2172226
The planning calendar now shows project and task details to people viewing it without a full user account, making schedules easier to understand. The update also makes the calendar page easier to customize and fixes an error that could occur when someone unassigned themselves from a task.
Original PR description
Before this PR, the planning calendar did not provided information about project as tasks. The planning vue for non user could not be easily overridden. Moreover, slot_id was not correctly set when user unassigned himself from a task, leading to a 404 error. Taskid: 2246557
This update adds more realistic sample data across Helpdesk and related after-sales workflows, including varied tickets, customer ratings, timesheets, repairs, coupons, returns, and field service interventions. It helps businesses better demonstrate and evaluate Helpdesk capabilities with practical examples instead of sparse placeholder data.
Original PR description
* : helpdesk_fsm, helpdesk_repair, helpdesk_sale,
helpdesk_sale_timesheet, helpdesk_stock,
helpdesk_timesheet, helpdesk_coupon
Developed Demo Data of Several "Helpdesk Module".
task-2172226Copying a server action now preserves its configured state when the field is explicitly marked to be copied. This prevents duplicated actions from unexpectedly reverting to a default state, reducing manual reconfiguration and potential setup mistakes.
Original PR description
`state` was special cased in `copy_data` such that it would always be reset to its default value if it had one. While this special case can be useful (maybe) and is certainly ingrained in odoo, having it not be overridable can be problematic. Move the special case to the fields, so it's possible to explicitly mark state fields as copy. Task 2079441 Alternative to #53111
Employee private addresses in demo data are now correctly marked as private, matching real privacy expectations. Related accounting and expense flows were adjusted so authorized billing users can still process payments without crashes when those private addresses are used.
Original PR description
we make the field address _home_id private address instead of regular contact for Mitchell admin and Mark demo.Due to that lots of business flows could crash because it is not visible to the demo data.We fix the flows on which errors could occur. LINKS PR #46628 TaskID: 2170016
This pull request adjusts behavior and tests across accounting, point of sale, sales, and localization areas. The changes appear to improve reliability around payments, bank details, invoices, and related workflows, helping reduce errors in day-to-day financial operations.
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
Monetary amounts shown on kanban cards now display a normal space between the value and currency symbol instead of showing raw HTML text. This makes prices and totals easier to read and avoids confusing visual glitches for users.
Original PR description
When a monetary field is present in a kanban view (without monetary widget specified), and its currency field is also defined (invisible or not, we just need the field information to be present), the field value is displayed with the currency symbol, but with a raw "` `" between the monetary value and the symbol. Example below is the inline kanban view of sale order lines, reduced to only the monetary field in the `templates` part.  --> https://2972599-10870-5bd0ea.runbot29.odoo.com/web?debug=1#action=1122&cids=1&id=43&menu_id=816&model=sale.order&view_type=form -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The recruitment app no longer shows the “Applicant created” message twice in the chatter. This reduces confusion for users reviewing applicant activity and keeps communication history cleaner.
Original PR description
Before this commit the message "Applicant created" was displayed twice in the chatter. Task-2278142
Odoo now correctly creates a single reusable identifier when a field from a shared mixin first appears on a real model. This prevents fields added through module inheritance from being missed, improving reliability for configuration, customization, and upgrades.
Original PR description
We want to create a XMLID for every first exhibition of a field in a model. That is, we just want one XMLID by field by model and not one XMLID by field by class. Previous implementation was…
We want to create a XMLID for every first exhibition of a field in a model. That is, we just want one XMLID by field by model and not one XMLID by field by class. Previous implementation was determining the "first field exhibition" by making sure the field was created and used as part of the same module. This assumption is invalid when we consider mixins. A mixin is an abstract model that define fields and methods to be included in other models. As it is abstract, it does not exhibits the field by itself. The field will only be exhibited when included in a concrete model via inheritance. When it is included in another module, the XMLID creation is discarded. Take a module M1 that defines a model A, take another module M2 that defines a mixin X with a field X1. In a third module M3, extend A to inherit from X. While M3.A is the first model module to exhibit the field X1, the XMLID creation was discarded because `"M2" != "M3"`. See https://github.com/odoo/odoo/issues/49354#issuecomment-614093767 Task: 2235368 Closes #49354 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
Employee demo records for Marc/Mitchell now use private addresses where appropriate, preventing business flows and tests from failing when private address visibility rules apply. This keeps Belgian salary contract and payroll accounting demo scenarios aligned with expected HR privacy behavior.
Original PR description
In this commit, we make the field address _home_id private address instead of regular contact for Mitchell admin and Mark demo.Due to that lots of business flows could crash because it is not visible to the demo data.We fix the flows on which errors could occur. LINKS PR #8924 TaskID: 2170016
Several Odoo Enterprise workflows now handle multiple selected records correctly instead of only working reliably on one record at a time. This reduces the risk of errors or incorrect results in areas such as assets, payroll, inter-company rules, manufacturing, quality, subscriptions, and local invoicing.
Original PR description
Wrong usage of self in for loops makes some apparently multi-friendly methods not work correctly when called with a recordset of len > 1. This commit replaces those references by the correct unique record reference which should be used at this iteration of the loop, avoiding potential exceptions or wrong behavior in the concerned methods. Enterprise followup of https://github.com/odoo/odoo/pull/53320
The timesheet grid no longer shows blank rows when users apply certain filters, such as filtering to their own projects. This makes the view clearer and prevents confusing empty entries from appearing in day-to-day timesheet review.
Original PR description
Currently, In grid view of timesheet some filters are applied then it returned completely empty lines. In this commit, we hide those empty lines for better user interface. Task-Id: 2245782 PR #10685
Steps to reproduce the bug: - Let's consider two companies C1 and C2 - Let's consider that the default company of the current user U is C1 - Log in C2 (only) - Print the POS details report Bug: The header of C1 was displayed. opw:2274282 Forward-Port-Of: odoo/odoo#52985
Original PR description
Steps to reproduce the bug: - Let's consider two companies C1 and C2 - Let's consider that the default company of the current user U is C1 - Log in C2 (only) - Print the POS details report Bug: The header of C1 was displayed. opw:2274282 Forward-Port-Of: odoo/odoo#52985
Bug === Install CRM, then go to the lead kanban view and try to generate leads. An error will be raised. Technical ========= In the "iap.account" model, in the `get` method, we can create the IAP account if it doesn't exist yet. Since 5307f47d975c3b3ebd87c7f7e2248802a1aa5be7 the operation is done in a different SQL cursor than the current one. The reason is that we need to commit the change, and committing the current SQL cursor can cause issue and break some flows (mainly if it's
Original PR description
Bug === Install CRM, then go to the lead kanban view and try to generate leads. An error will be raised. Technical ========= In the "iap.account" model, in the `get` method, we can create the IAP…
Bug
===
Install CRM, then go to the lead kanban view and try to generate leads.
An error will be raised.
Technical
=========
In the "iap.account" model, in the `get` method, we can create the IAP
account if it doesn't exist yet. Since 5307f47d975c3b3ebd87c7f7e2248802a1aa5be7
the operation is done in a different SQL cursor than the current one.
The reason is that we need to commit the change, and committing the current
SQL cursor can cause issue and break some flows (mainly if it's not done
at the very beginning/end of the flow).
In the current code, we cache the `account_token` to be able to read it
with the current SQL cursor (otherwise, the current cursor has no access
to the field because change has not yet being committing for it).
But, the cache is invalidated when the "IAP account SQL cursor" is closed.
```python
with self.pool.cursor() as cr:
...
IapAccount = self.with_env(self.env(cr=cr))
account = IapAccount.search(domain, order='id desc', limit=1)
if not account:
if not force_create:
return account
account = IapAccount.create({'service_name': service_name})
# fetch 'account_token' into cache with this cursor,
# as self's cursor cannot see this account
account.account_token
# <---- Cache is invalidated here
...
```
So we can not access the the field value after the invalidation.
Solution
========
The solution is the store the `account_token` value before closing the
"IAP account SQL cursor" and then, after closing it, we add it in the cache.
Task-2277733
Forward-Port-Of: odoo/odoo#53285Before this commit, checking if the menu was visible or not combined with checking if we are on desktop or not was enough. Now that we have website header templates using hamburger which can be enabled in desktop, this was not enough anymore. Forward-Port-Of: odoo/odoo#53290
Original PR description
Before this commit, checking if the menu was visible or not combined with checking if we are on desktop or not was enough. Now that we have website header templates using hamburger which can be enabled in desktop, this was not enough anymore. Forward-Port-Of: odoo/odoo#53290
- Modify `timesheet_action_all` to display the tree view before the grid view - In the quotation tree view, order by Status, group by Salesman and save as filter - Open a SO with timesheets - Clck on the 'Timesheets' stat button An error occurs because the `orderedBy` context key is added in the action context. The purpose of replacing the action context is to remove the default filters. We can simply set an empty dict to avoid any unwanted keys. opw-2278618 Description of
Original PR description
- Modify `timesheet_action_all` to display the tree view before the grid view - In the quotation tree view, order by Status, group by Salesman and save as filter - Open a SO with timesheets - Clck on the 'Timesheets' stat button An error occurs because the `orderedBy` context key is added in the action context. The purpose of replacing the action context is to remove the default filters. We can simply set an empty dict to avoid any unwanted keys. opw-2278618 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#53302 Forward-Port-Of: odoo/odoo#53289
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#53240 Forward-Port-Of: odoo/odoo#52903
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 Forward-Port-Of: odoo/odoo#53240 Forward-Port-Of: odoo/odoo#52903
### Description of the issue/feature this PR addresses: As users find it odd to have the RUC(Registro Único de Contribuyentes) labeled as VAT(from odoo), so we are going to add the RUC itself without modifying the one added by odoo. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52738
Original PR description
### Description of the issue/feature this PR addresses: As users find it odd to have the RUC(Registro Único de Contribuyentes) labeled as VAT(from odoo), so we are going to add the RUC itself without modifying the one added by odoo. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52738
Description of the issue/feature this PR addresses: 0) Remove the decoration-danger set on the CRM tree views Purpose : We'll set it on the right fields instead so that it's clearer for the user. Add activity_ids with list_activity widget here : https://tinyurl.com/ycqncun2 And the remaining_days on this field here :https://tinyurl.com/y73f32t5 1) Separate Leads and Opportunities in the systray. There should be one line for each type NB : It's been done for mailings in case you'
Original PR description
Description of the issue/feature this PR addresses: 0) Remove the decoration-danger set on the CRM tree views Purpose : We'll set it on the right fields instead so that it's clearer for the user. Add…
Description of the issue/feature this PR addresses:
0) Remove the decoration-danger set on the CRM tree views
Purpose : We'll set it on the right fields instead so that it's clearer for the user.
Add activity_ids with list_activity widget here : https://tinyurl.com/ycqncun2
And the remaining_days on this field here :https://tinyurl.com/y73f32t5
1) Separate Leads and Opportunities in the systray. There should be one line for each type
NB : It's been done for mailings in case you're looking for an example https://tinyurl.com/ybcms689
2) Add a new menu item "My Activities" https://docs.google.com/presentation/d/1EDZx9rdSTkmgFRXDitp45OXRL0EI3PJcUMvjmFLhVgU/edit#slide=id.g74c54ce7d7_0_0
Domain of this action is : crm.lead, type = opportunity at least an activity set
Filter is : My Activities (at least an activity assigned to me)
3) Create this new view for opportunities
https://docs.google.com/presentation/d/1EDZx9rdSTkmgFRXDitp45OXRL0EI3PJcUMvjmFLhVgU/edit#slide=id.p
And this one for leads :
https://docs.google.com/presentation/d/1EDZx9rdSTkmgFRXDitp45OXRL0EI3PJcUMvjmFLhVgU/edit#slide=id.g773783b040_0_4
4) The path from the systray (opportunity/leads) done in 1) should redirect to the respective new view instead of on the normal pipeline.
On top of the existing filters/domain, it adds the time-based filter : Today, Late, Future Activities, ...
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#51537**PURPOSE** Currently, Top toast notifications are too far apart with each other if there are multiple notifications. **SPEC** So with this commit, we have reduced the margin from the bottom to 5px so its looks closer. Task : 2278730 Forward-Port-Of: odoo/odoo#53071
Original PR description
**PURPOSE** Currently, Top toast notifications are too far apart with each other if there are multiple notifications. **SPEC** So with this commit, we have reduced the margin from the bottom to 5px so its looks closer. Task : 2278730 Forward-Port-Of: odoo/odoo#53071
- Create 3 products: A: kg, no tracking B: kg, tracked by lot AB: kg, no tracking - Create a BOM for AB: 1 kg of A 30 g of B - Create a MO for 1 kg of AB, validate and close the MO - Unbuild the MO A stock move for 0.03 g of B is created instead of 30 g. This happens because we wrongly compare the quantity in the UoM of the stock move with a normalied quantity. opw-2278727 Description of the issue/feature this PR addresses: Current behavior before PR: Desired
Original PR description
- Create 3 products: A: kg, no tracking B: kg, tracked by lot AB: kg, no tracking - Create a BOM for AB: 1 kg of A 30 g of B - Create a MO for 1 kg of AB, validate and close the MO - Unbuild the MO A stock move for 0.03 g of B is created instead of 30 g. This happens because we wrongly compare the quantity in the UoM of the stock move with a normalied quantity. opw-2278727 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#53355 Forward-Port-Of: odoo/odoo#53345
Create a promotion program with conditions: - Minimum product quantity (ex 2) - Minimum purchase in currency (ex 500$ tax excluded) - Auto apply - On current order - with reward: -- Free product (Free Prod A) -- 1 Quantity Create a sale order. Insert 3x ProdA @ 1000$. Click on "promotions". Nothing will occur because the minimum order amount for applying the reward is calculated removing from the order the product associated with the reward. This removed all of the products from the
Original PR description
Create a promotion program with conditions: - Minimum product quantity (ex 2) - Minimum purchase in currency (ex 500$ tax excluded) - Auto apply - On current order - with reward: -- Free product (Free Prod A) -- 1 Quantity Create a sale order. Insert 3x ProdA @ 1000$. Click on "promotions". Nothing will occur because the minimum order amount for applying the reward is calculated removing from the order the product associated with the reward. This removed all of the products from the order, so the result is 0. Fixing by subtracting just the amount specified in the reward program. opw-2274316 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#53380 Forward-Port-Of: odoo/odoo#53032
This commit fixes an issue with deliveries slip when time < 10 AM in autraslian timezone. If datetime is 22/06/2020 5AM, it will be 21/06/2020 on the delivery slip. This is due to the fact that we use widget=date on a datetime field. OPW-2277194 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#53396
Original PR description
This commit fixes an issue with deliveries slip when time < 10 AM in autraslian timezone. If datetime is 22/06/2020 5AM, it will be 21/06/2020 on the delivery slip. This is due to the fact that we use widget=date on a datetime field. OPW-2277194 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#53396
- Create 2 companies A & B, with different currencies - Create a product in company B Set the company on the product Automated valuation - Receive some stock in company B - Switch to company A, and keep B available - Go to Inventory > Reporting > Inventory Report The currency on the product is the currency of the product company instead of the currency of the current company. The value is computed in the current company currency: https://github.com/odoo/odoo/blob/bc3d1f2dc408
Original PR description
- Create 2 companies A & B, with different currencies - Create a product in company B Set the company on the product Automated valuation - Receive some stock in company B - Switch to company A, and keep B available - Go to Inventory > Reporting > Inventory Report The currency on the product is the currency of the product company instead of the currency of the current company. The value is computed in the current company currency: https://github.com/odoo/odoo/blob/bc3d1f2dc408fa91d42743d6a7063042e0f6c42b/addons/stock_account/models/product.py#L115 The currency should be consistent. opw-2278751 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#53401
Partial backport of https://github.com/FortAwesome/Font-Awesome/pull/16353/commits/e446f7e16ba3904a36babba767c739f1da6eae3e To remove warning in lighthouse 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#53383
Original PR description
Partial backport of https://github.com/FortAwesome/Font-Awesome/pull/16353/commits/e446f7e16ba3904a36babba767c739f1da6eae3e To remove warning in lighthouse 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#53383
This PR allows to display sample (fake) data in empty views, in the hope of easing user onboarding. This can be enabled (in list and kanban views) with attribute sample="1" on the arch root element. In this case, if there is no data to display, sample data will be generated based on heuristics (depending on field types and names). This can be used in addition to the no content helper. This PR also activates it in a bunch of list and kanban views. Task 2232801 Co-authored-by: Aaron
Original PR description
This PR allows to display sample (fake) data in empty views, in the hope of easing user onboarding. This can be enabled (in list and kanban views) with attribute sample="1" on the arch root element. In this case, if there is no data to display, sample data will be generated based on heuristics (depending on field types and names). This can be used in addition to the no content helper. This PR also activates it in a bunch of list and kanban views. Task 2232801 Co-authored-by: Aaron Bohy <aab@odoo.com> Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com> Co-authored-by: Jérémy Hennecart <jeh@odoo.com> Co-authored-by: Julien Mougenot <jum@odoo.com> Forward-Port-Of: odoo/odoo#52867
task-2279222 Forward-Port-Of: odoo/odoo#53163
Original PR description
task-2279222 Forward-Port-Of: odoo/odoo#53163
When clicking on an image in edit mode, the web editor attempts to find an attachment that corresponds to the image's URL. In the case of the website logo, the URL looks like it's referencing an attachment by id or xml-id, but it's actually neither. This cause a variable to never be initialized, which in turns causes a traceback when trying to access it later. This commit fixes that by assigning None to the variable when the URL does not correspond to an attachment. Forward-Port-Of: od
Original PR description
When clicking on an image in edit mode, the web editor attempts to find an attachment that corresponds to the image's URL. In the case of the website logo, the URL looks like it's referencing an attachment by id or xml-id, but it's actually neither. This cause a variable to never be initialized, which in turns causes a traceback when trying to access it later. This commit fixes that by assigning None to the variable when the URL does not correspond to an attachment. Forward-Port-Of: odoo/odoo#53047
task-2171881 Forward-Port-Of: odoo/odoo#53297
Original PR description
task-2171881 Forward-Port-Of: odoo/odoo#53297
When a view is: - a specific view (duplicated for a specific website) - inherited by a new view that is translated the inheriting view will also be duplicated, but the translation will only be created for the generic version and not the specific ones. With this changeset, we duplicate translation of arch_db terms of the generic view onto matching specific views. Without the change, added test fails with: AssertionError: `'<div>hello</div>' != '<div>hi</div>'` loading modul
Original PR description
When a view is: - a specific view (duplicated for a specific website) - inherited by a new view that is translated the inheriting view will also be duplicated, but the translation will only be created for the generic version and not the specific ones. With this changeset, we duplicate translation of arch_db terms of the generic view onto matching specific views. Without the change, added test fails with: AssertionError: `'<div>hello</div>' != '<div>hi</div>'` loading module translation copy translation from base to specific view fixes #51579 opw-2261278 __pr note :__ I did something similar for specific menu (https://github.com/odoo/odoo/pull/48031), but here there is a more direct link between `[type==qweb, key, website_id=False]` and `[key, website!=False]` so in my opinion it's cleaner Forward-Port-Of: odoo/odoo#52931 Forward-Port-Of: odoo/odoo#52451
The xpath was wrongly replacing the 'owner_user_id' field before the kanban templates definition (which isn't displayed in the view) (See the `fields_view_get` of the view). -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52718
Original PR description
The xpath was wrongly replacing the 'owner_user_id' field before the kanban templates definition (which isn't displayed in the view) (See the `fields_view_get` of the view). -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52718
For both fixes made by 55e91bbdc16b2fb1b09a61138728cb71d36eb5a4, the code was throwing an exception if the `id` did not exist. The correct way to fix the problem of archived requests was to add the `active_test=False` context to the query. This commit reverts 55e91bbdc16b2fb1b09a61138728cb71d36eb5a4 and replaces it by the correct fix. Forward-Port-Of: odoo/enterprise#11312 Forward-Port-Of: odoo/enterprise#11300
Original PR description
For both fixes made by 55e91bbdc16b2fb1b09a61138728cb71d36eb5a4, the code was throwing an exception if the `id` did not exist. The correct way to fix the problem of archived requests was to add the `active_test=False` context to the query. This commit reverts 55e91bbdc16b2fb1b09a61138728cb71d36eb5a4 and replaces it by the correct fix. Forward-Port-Of: odoo/enterprise#11312 Forward-Port-Of: odoo/enterprise#11300
This PR is the counterpart of odoo/odoo#52867. It enables the sample data feature in gantt views, and activates it in several gantt views. Task 2232801 Co-authored-by: Aaron Bohy <aab@odoo.com> Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com> Co-authored-by: Jérémy Hennecart <jeh@odoo.com> Co-authored-by: Julien Mougenot <jum@odoo.com> Forward-Port-Of: odoo/enterprise#11115
Original PR description
This PR is the counterpart of odoo/odoo#52867. It enables the sample data feature in gantt views, and activates it in several gantt views. Task 2232801 Co-authored-by: Aaron Bohy <aab@odoo.com> Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com> Co-authored-by: Jérémy Hennecart <jeh@odoo.com> Co-authored-by: Julien Mougenot <jum@odoo.com> Forward-Port-Of: odoo/enterprise#11115
- Choose a Currency (Euro) - Select a Company using the chosen currency - Go to Accounting > Configuration > Journals - Create a new Journal of type Bank - Go to Accounting > Overview - Import Statements for the created journal - Select a statement file where CLAV (Closing available balance) is defined before CLDB (Closing balance) and import it - Open the statement The Ending Balance is the value of CLAV, instead of CLDB. For the moment, during the import, either CLDB or CLAV is used
Original PR description
- Choose a Currency (Euro) - Select a Company using the chosen currency - Go to Accounting > Configuration > Journals - Create a new Journal of type Bank - Go to Accounting > Overview - Import Statements for the created journal - Select a statement file where CLAV (Closing available balance) is defined before CLDB (Closing balance) and import it - Open the statement The Ending Balance is the value of CLAV, instead of CLDB. For the moment, during the import, either CLDB or CLAV is used for Ending Balance. The first encounted one in the imported file is used. opw-2266793 Forward-Port-Of: odoo/enterprise#11234
This commit changes the map marker icons. These new icons have a black border which makes them more visible on the map. Task: 2279543 Forward-Port-Of: odoo/enterprise#11237
Original PR description
This commit changes the map marker icons. These new icons have a black border which makes them more visible on the map. Task: 2279543 Forward-Port-Of: odoo/enterprise#11237
tree view by default when coming from the systray Forward-Port-Of: odoo/enterprise#11159
Original PR description
tree view by default when coming from the systray Forward-Port-Of: odoo/enterprise#11159
Update translation files to match the latest content Forward-Port-Of: odoo/enterprise#11295 Forward-Port-Of: odoo/enterprise#11287
Original PR description
Update translation files to match the latest content Forward-Port-Of: odoo/enterprise#11295 Forward-Port-Of: odoo/enterprise#11287
Issue - Install l10_us, l10n_ca and accounting - Create a vendor bill (with any partner and products), validate - Duplicate and validate at least 7 times - From the tree view select all > Register payment - Change the method type to Checks and check "Group Invoices", validate - Action > print checks Everything should look fine - Change the name of several bills with a very long name. As it can't be edited you can run the following SQL query: `update account_invoice
Original PR description
Issue - Install l10_us, l10n_ca and accounting - Create a vendor bill (with any partner and products), validate - Duplicate and validate at least 7 times - From the tree view select all > Register…
Issue - Install l10_us, l10n_ca and accounting - Create a vendor bill (with any partner and products), validate - Duplicate and validate at least 7 times - From the tree view select all > Register payment - Change the method type to Checks and check "Group Invoices", validate - Action > print checks Everything should look fine - Change the name of several bills with a very long name. As it can't be edited you can run the following SQL query: `update account_invoice set number = 'BILL/2020/00XX - very long name added after to force to be on two lines' where id = YY;` Some elements are shifted, the report is broken Cause This kind of reports doesn't support multiline in tables It was made to have the 2 table on the same page, so if the first table is too long, its end will be under the second table (but still visible) Solution Truncate the bill name (we need a max height because of wkhtmltopdf) OPW-2276065 Forward-Port-Of: odoo/enterprise#11293