Daily updates from Odoo
Wednesday, May 8, 2024
13 changes · master
Enhancements to existing features
The appointment resource import field list now shows the resource name field as “Name” instead of “Appointment Resource.” This reduces confusion for users when matching fields during resource imports.
Original PR description
**Specification:** While importing the resources, the drop-down of the fields shows the name field as 'Appointment Resource' which creates confusion for the users. **After this PR:** The label of the field 'name' will be changed from 'Appointment Resource' to 'Name'. Task-3858701
Exports in service-related apps now avoid showing labels for technical fields that are not useful to business users. This makes exported data cleaner and easier to understand when working with documents, projects, helpdesk, field service, and related sales or accounting flows.
Original PR description
Task-3631801
Miscellaneous changes
[IMP] account_asset: Set Depreciated group in assets visible Issue: Currently, The VALUE AT IMPORT section in asset page is only visible in the debug mode which make the users walk in cycles trying to get the advantage of this section but it's not actually visible Solution: Make it the group visible by default Task-3891744 Forward-Port-Of: odoo/enterprise#61941 Forward-Port-Of: odoo/enterprise#61429
Original PR description
[IMP] account_asset: Set Depreciated group in assets visible Issue: Currently, The VALUE AT IMPORT section in asset page is only visible in the debug mode which make the users walk in cycles trying to get the advantage of this section but it's not actually visible Solution: Make it the group visible by default Task-3891744 Forward-Port-Of: odoo/enterprise#61941 Forward-Port-Of: odoo/enterprise#61429
This commit adds the missing neutralization necessary for the product_barcodelookup module introduced in [1] The purpose of the standard neutralization framework is to allow us to create database copies that will not interact with external systems in ways that could impact the production database (or if it is not possible to prevent the interactions, make sure that they are benign or wont result in actual changes), or impact the customers of the operator of the production database. This is
Original PR description
This commit adds the missing neutralization necessary for the product_barcodelookup module introduced in [1] The purpose of the standard neutralization framework is to allow us to create database copies that will not interact with external systems in ways that could impact the production database (or if it is not possible to prevent the interactions, make sure that they are benign or wont result in actual changes), or impact the customers of the operator of the production database. This is mainly useful to allow safe support investigation on database duplicates. [1] https://github.com/odoo/enterprise/pull/61949 Forward-Port-Of: odoo/enterprise#62168
Create a Bill Add on a new line tax and vehicle Save Edit line > Remove vehicle Save Issue: tax line will still have the vehicle set opw-3790136 Forward-Port-Of: odoo/enterprise#58834
Original PR description
Create a Bill Add on a new line tax and vehicle Save Edit line > Remove vehicle Save Issue: tax line will still have the vehicle set opw-3790136 Forward-Port-Of: odoo/enterprise#58834
Since the complete refactoring of the module in 17, the "open record" button of the CorrespondenceDetails no longer works: Clicking it causes the softphone to fold, but nothing more happens (the record is not displayed as expected). This is because we started retrieving the ORM service from the `useService` hook, whereas before we used to retrieve it from the env. `useService` untransparently wraps the ORM call in a "_protectMethod", which drops the return value of an RPC if the component tha
Original PR description
Since the complete refactoring of the module in 17, the "open record" button of the CorrespondenceDetails no longer works: Clicking it causes the softphone to fold, but nothing more happens (the record is not displayed as expected). This is because we started retrieving the ORM service from the `useService` hook, whereas before we used to retrieve it from the env. `useService` untransparently wraps the ORM call in a "_protectMethod", which drops the return value of an RPC if the component that made it has been destroyed in the meantime. Since clicking the "open record" button also folds the softphone, it destroyed the Correspondence Details component, preventing it from ever receiving the RPC's return value. This commit changes the way the ORM service is retrieved in order not to use `useService` and to solve the problem. opw-3904519 Forward-Port-Of: odoo/enterprise#62099
Steps to reproduce the bug: -create a contract -send him to sign -delete the tag "Signature Request" -connect has the signer -try to sign the contract -> error Expected behavior: The tag shouldn't be deletable fix: add a constraint to prevent the deletion of the tag and force create task-3695553 Forward-Port-Of: odoo/enterprise#55589
Original PR description
Steps to reproduce the bug: -create a contract -send him to sign -delete the tag "Signature Request" -connect has the signer -try to sign the contract -> error Expected behavior: The tag shouldn't be deletable fix: add a constraint to prevent the deletion of the tag and force create task-3695553 Forward-Port-Of: odoo/enterprise#55589
Steps to reproduce: - Create a BOM with multiple operations - Create an MO for it with qty 2 - Mark all operations as done with qty 2 excpet the last - Set qty as 1 on the last operation and create a backorder Bug: the created WO for the first operations are cancelled since all the necessary components have already been produced but they shouldn't be displayed since they are already cancelled opw-3737758 Forward-Port-Of: odoo/enterprise#60281
Original PR description
Steps to reproduce: - Create a BOM with multiple operations - Create an MO for it with qty 2 - Mark all operations as done with qty 2 excpet the last - Set qty as 1 on the last operation and create a backorder Bug: the created WO for the first operations are cancelled since all the necessary components have already been produced but they shouldn't be displayed since they are already cancelled opw-3737758 Forward-Port-Of: odoo/enterprise#60281
When user click on generate delivery guide in receipts, a traceback will appear. Steps to reproduce the error: - Install "l10n_mx_edi_stock" - Switch to the Mexican company - Go to Inventory > Operations > Receipts > Create new record - In receive from, Select partner from Mexico > Add a product (make sure that product has UNSPSC Category) > Validate - Go to Additional Info > Select Transport Type > Save - Click on Generate Delivery Guide Traceback: ``` AttributeError: 'res.par
Original PR description
When user click on generate delivery guide in receipts, a traceback will appear. Steps to reproduce the error: - Install "l10n_mx_edi_stock" - Switch to the Mexican company - Go to Inventory >…
When user click on generate delivery guide in receipts,
a traceback will appear.
Steps to reproduce the error:
- Install "l10n_mx_edi_stock"
- Switch to the Mexican company
- Go to Inventory > Operations > Receipts > Create new record
- In receive from, Select partner from Mexico >
Add a product (make sure that product has UNSPSC Category) > Validate
- Go to Additional Info > Select Transport Type > Save
- Click on Generate Delivery Guide
Traceback:
```
AttributeError: 'res.partner' object has no attribute 'l10n_mx_edi_colony_code'
File "odoo/http.py", line 2254, in __call__
response = request._serve_db()
File "odoo/http.py", line 1830, in _serve_db
return self._transactioning(_serve_ir_http, readonly=ro)
File "odoo/http.py", line 1850, in _transactioning
return service_model.retrying(func, env=self.env)
File "odoo/service/model.py", line 134, in retrying
result = func()
File "odoo/http.py", line 1828, in _serve_ir_http
return self._serve_ir_http(rule, args)
File "odoo/http.py", line 1835, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "odoo/http.py", line 2060, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "odoo/addons/base/models/ir_http.py", line 220, in _dispatch
result = endpoint(**request.params)
File "odoo/http.py", line 742, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "addons/web/controllers/dataset.py", line 42, in call_button
action = self._call_kw(model, method, args, kwargs)
File "addons/web/controllers/dataset.py", line 34, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "odoo/api.py", line 458, in call_kw
result = getattr(recs, name)(*args, **kwargs)
File "home/odoo/src/enterprise/saas-17.2/l10n_mx_edi_stock/models/stock_picking.py", line 480, in l10n_mx_edi_cfdi_try_send
self.env['l10n_mx_edi.document']._send_api(
File "home/odoo/src/enterprise/saas-17.2/l10n_mx_edi/models/l10n_mx_edi_document.py", line 2090, in _send_api
populate_return = on_populate(cfdi_values)
File "home/odoo/src/enterprise/saas-17.2/l10n_mx_edi_stock/models/stock_picking.py", line 466, in on_populate
self._l10n_mx_edi_add_picking_cfdi_values(cfdi_values)
File "home/odoo/src/enterprise/saas-17.2/l10n_mx_edi_stock/models/stock_picking.py", line 325, in _l10n_mx_edi_add_picking_cfdi_values
self._l10n_mx_edi_add_domicilio_cfdi_values(cfdi_values['origen'], warehouse_partner)
File "home/odoo/src/enterprise/saas-17.2/l10n_mx_edi_stock/models/stock_picking.py", line 346, in _l10n_mx_edi_add_domicilio_cfdi_values
'colonia': partner.l10n_mx_edi_colony_code,
```
https://github.com/odoo/enterprise/blob/6a0bcd778d3c1481642db040d1334920075d3cf2/l10n_mx_edi_stock/models/stock_picking.py#L347
Since [commit](https://github.com/odoo/enterprise/commit/f972faf9cb98c27fe44883789588ab8e957435f8)
"l10n_mx_edi_colony_code" field is used, this field is in
the "l10n_mx_edi_extended" module,
so when this module is not installed,
it will lead to the above traceback.
This commit solves this issue by adding "l10n_mx_edi_colony_code" field in
"_l10n_mx_edi_add_domicilio_cfdi_values" method of "l10n_mx_edi_stock_extended" module
to extend "l10n_mx_edi_stock" module.
sentry-5261838949
Forward-Port-Of: odoo/enterprise#61755Issue ----- The document name is replaced by `...` on the kanban card when the name is too long and locking the document. Steps to reproduce ------------------ - Install `documents` module - Click on any document card to open the right sidebar - Change the document name to a very long one (Should display `...` at the end of name on the card) - Click on the lock icon in the sidebar to lock the document Cause ----- There is a `o_text_overflow` CSS class on the field that use `text-o
Original PR description
Issue ----- The document name is replaced by `...` on the kanban card when the name is too long and locking the document. Steps to reproduce ------------------ - Install `documents` module - Click on any document card to open the right sidebar - Change the document name to a very long one (Should display `...` at the end of name on the card) - Click on the lock icon in the sidebar to lock the document Cause ----- There is a `o_text_overflow` CSS class on the field that use `text-overflow` while a parent also use it(`o_kanban_record_title`). Note: No issue before v16.0 because it seems that the renderer get ride of any extra class on a text field in the kanban view. Solution -------- Remove the extra `o_text_overflow` CSS class from the field. opw-3829011 Forward-Port-Of: odoo/enterprise#62025 Forward-Port-Of: odoo/enterprise#60052
[ADD] account_asset: Add tooltip to Prorata Date Add tooltip to Prorata Date field in account_asset module and add its translation Reason: Enhance user-experience Task-3864117 Forward-Port-Of: odoo/enterprise#60863
Original PR description
[ADD] account_asset: Add tooltip to Prorata Date Add tooltip to Prorata Date field in account_asset module and add its translation Reason: Enhance user-experience Task-3864117 Forward-Port-Of: odoo/enterprise#60863
Steps to reproduce: - Install Accounting and l10n_mx_edi - Switch to a Mexican company (e.g. ESCUELA KEMPER URGATE) - Create 2 invoices: - Customer: [any] (e.g. Deco Addict) - Product: [Three-Seat Sofa] - Confirm the invoice - Generate CFDI via "Send & Print" button - Register Payment (Payment Way: Monedero Electrónico) - Click on "Update Payments" button - Go to the payment - Force CFDI for both payment - From the view list, select both payments and send receipts by email Issue: The CFD
Original PR description
Steps to reproduce: - Install Accounting and l10n_mx_edi - Switch to a Mexican company (e.g. ESCUELA KEMPER URGATE) - Create 2 invoices: - Customer: [any] (e.g. Deco Addict) - Product: [Three-Seat Sofa] - Confirm the invoice - Generate CFDI via "Send & Print" button - Register Payment (Payment Way: Monedero Electrónico) - Click on "Update Payments" button - Go to the payment - Force CFDI for both payment - From the view list, select both payments and send receipts by email Issue: The CFDI documents of the payments are not in the attachments of the email as it was in previous versions. Cause: The feature was lost during the refactoring of "l10n_mx_edi" module to not depend on "account_edi" module opw-3838799 Forward-Port-Of: odoo/enterprise#62122 Forward-Port-Of: odoo/enterprise#61552
### [FIX] marketing_automation: CP MarketingCampaign with server action activity Until now copying MarketingActivity it was required to have mass_mailing_id. However MarketingActivity can have other activity_type than email in which mass_mailing_id is not existent, thus causing errors when trying to duplicate an Activity. ### [Reproduce] Steps to reproduce: - Install marketing_automation - Go to Marketing Automation / Campaigns - Create a marketing automation with an activity c
Original PR description
### [FIX] marketing_automation: CP MarketingCampaign with server action activity Until now copying MarketingActivity it was required to have mass_mailing_id. However MarketingActivity can have other activity_type than email in which mass_mailing_id is not existent, thus causing errors when trying to duplicate an Activity. ### [Reproduce] Steps to reproduce: - Install marketing_automation - Go to Marketing Automation / Campaigns - Create a marketing automation with an activity called "server action" - Duplicate the marketing automation -> BUG: Traceback ### [Related] https://github.com/odoo/enterprise/commit/4275e172342cd4b201d1eb703aa02cfc1ceb0a76 <-this commit introduced copy_data opw-3745805 Forward-Port-Of: odoo/enterprise#59887