Monday, September 9, 2024
25 changes · master
Enhancements to existing features
WhatsApp-related timezone handling now relies on standard fields instead of custom logic. This makes event registration messaging easier to maintain while keeping the expected timezone behavior intact.
Original PR description
Timezone fields can be inferred easily from a fixed list of fields. We add a related field on event registrations so it fits the heuristic, and remove the override to the method that previously defined the path to the timezone field. task-4095356
Approval request buttons now use adjusted colors to make the workflow easier to understand. This helps users quickly identify the right action and reduces confusion when processing approvals.
Original PR description
Buttons color have been adjusted to enhance the flow's understandability. task-3987625
This update renames a field used in India GSTR point-of-sale reporting to align with related reporting changes. It helps keep report terminology consistent and reduces confusion for users reviewing GST return data.
Original PR description
Related: https://github.com/odoo/odoo/pull/179265
The login page now only shows the user switch option when there is more than one available user. This keeps the sign-in experience simpler for single-user cases while still supporting quick switching when multiple users are available.
Original PR description
If there is only one user in user switch, don't display it and propose the login form. If there is more than one user, display the user switch. task-4160923
Resolved issues and error corrections
Studio exports no longer fail for databases that do not have the Website app installed. The export process now checks whether Website is available before looking for website-related data, preventing an unnecessary error for affected users.
Original PR description
**[FIX] web_studio: Fix export without website** This commit fixes a bug where we would always check for some website related fields and some records which causes an error when website was not installed. We now simply check that website is installed before checking the fields. This commit does not include a test as it would require to uninstall the website addon and the testing framework does not permit such a thing without introducing side effects.
Code cleanup and technical improvements
Miscellaneous changes
Before this commit: When a user with Billings rights scans a QR code using the vendor QR scan feature, an ir.act.window access error appears. After this commit: We fix the access error. And the QR scan feature works correctly as intended. Forward-Port-Of: odoo/enterprise#69700
Original PR description
Before this commit: When a user with Billings rights scans a QR code using the vendor QR scan feature, an ir.act.window access error appears. After this commit: We fix the access error. And the QR scan feature works correctly as intended. Forward-Port-Of: odoo/enterprise#69700
This update fixes an automated walkthrough used to verify the bank reconciliation interface. It helps keep accounting quality checks reliable, reducing the chance of unnoticed issues in future changes.
Resetting a report in Studio now also restores the header and footer layout configured on the company. This ensures reports return to the expected company branding when users choose to include the header and footer during a reset.
Original PR description
Set the external layout on the company. Edit a report that calls the "web.external_layout" template. In the report editor, hit reset report and include the header/footer. Before this commit, the company's layout was not reset. After this commit it is resetted. The reason was that the external_layout is actually selecting the company's layout via a dynamic t-call, which is ignored by the code that retrieves views. opw-4167257
The property field type selector now displays correctly inside its popover, instead of appearing with broken styling or behind other interface elements. This makes field configuration smoother and avoids confusion when users edit custom properties.
Original PR description
The dropdown inside the property field popover style was broken due to a dropdown refacor, some styles where not applied correctly and the field type dropdown was displayed behind the popover. (https://github.com/odoo/odoo/pull/137691). This PR fixes the issue in 2 commits: The first one adds a supplementary div around each overlay in the overlay container, this isolates each overlay so their z-index do not interfere, their order in the overlay-container is now sufficient to ensure a proper z-index, whatever the amount of popovers, modals, dropdowns, etc... The second adapts the property field style and removes now unnecessary custom z-index values. Community: https://github.com/odoo/odoo/pull/154021
The spreadsheet document tests were adjusted to match improved keyboard behavior in the pivot rename side panel. This helps ensure the Enter and Escape key actions continue to work reliably for users when renaming pivot elements.
Original PR description
With PR[1], we have added handlers for 'Enter' and 'Escape' key events in the pivot rename sidepanel. The test cases need to be updated accordingly. [1] https://github.com/odoo/o-spreadsheet/pull/4793 Task: 4080323
Payroll accounting tests were reorganized so shared setup steps can be reused across country-specific payroll modules. Additional payslip validation checks were added for several localisations, helping reduce payroll calculation risks without changing day-to-day user workflows.
Original PR description
For tests in l10n_xx_payroll_account modules, we used the same util functions every time. These have now been moved to the hr_payroll_account module. This also adds a util function for setting up the usual employee, contract, etc. Task: 4040388
The demo kiosk setup has been moved from the IoT-specific self-order module into the main self-order module. This makes the sample kiosk experience available to more point-of-sale configurations, not only those using IoT.
Original PR description
We added a demo kiosk to the PoS in the `pos_self_order_iot` module, but now moved it to `pos_self_order` as it can benefit both. Community PR: [https://github.com/odoo/odoo/pull/178080](https://github.com/odoo/odoo/pull/178080)
The problem was that the button tag doesn't support drag & drop functionality in Firefox (https://bugzilla.mozilla.org/show_bug.cgi?id=568313). Steps to reproduce (On firefox): - Open Sign up - Open template - Try to drag and drop new compoent - You can only drag and drop through the text inside opw-4085496 Forward-Port-Of: odoo/enterprise#69691 Forward-Port-Of: odoo/enterprise#67772
Original PR description
The problem was that the button tag doesn't support drag & drop functionality in Firefox (https://bugzilla.mozilla.org/show_bug.cgi?id=568313). Steps to reproduce (On firefox): - Open Sign up - Open template - Try to drag and drop new compoent - You can only drag and drop through the text inside opw-4085496 Forward-Port-Of: odoo/enterprise#69691 Forward-Port-Of: odoo/enterprise#67772
### Steps to reproduce: - Create a second company COMP 2 - In the settings of COMP2 tick: Inter-Company Transactions Generate SO - With COMP1 create and confirm a PO for COMP2 for 1 unit of any product #### > Traceback ### Cause of the issue: These lines rely on stock models and hence provoque the traceback: https://github.com/odoo/enterprise/blob/d42af3270dea55acf247a99b815264ef96f0ac03/sale_purchase_inter_company_rules/models/purchase_order.py#L123-L132 They were added to transfe
Original PR description
### Steps to reproduce: - Create a second company COMP 2 - In the settings of COMP2 tick: Inter-Company Transactions Generate SO - With COMP1 create and confirm a PO for COMP2 for 1 unit of any product #### > Traceback ### Cause of the issue: These lines rely on stock models and hence provoque the traceback: https://github.com/odoo/enterprise/blob/d42af3270dea55acf247a99b815264ef96f0ac03/sale_purchase_inter_company_rules/models/purchase_order.py#L123-L132 They were added to transfer the `custom_product_template_attribute_value_id` during flows using stock routes. However, the stock dependency was removed from the `sale_purchase_inter_company_rules` module so that these lines should be moved to `sale_purchase_stock_inter_company_rules` ## opw-4151614 Forward-Port-Of: odoo/enterprise#69353
Note that the Swiss payroll modules haven't been translated into any other language than French so far, so that's why only the fr.po is fw-ported. Forward-Port-Of: odoo/enterprise#69654 Forward-Port-Of: odoo/enterprise#69630
Original PR description
Note that the Swiss payroll modules haven't been translated into any other language than French so far, so that's why only the fr.po is fw-ported. Forward-Port-Of: odoo/enterprise#69654 Forward-Port-Of: odoo/enterprise#69630
We need TaxClosingNonPostedDependingMovesError inside account because it is now also used there to catch it when confirming batch of moves. Forward-Port-Of: odoo/enterprise#69518 Forward-Port-Of: odoo/enterprise#69206
Original PR description
We need TaxClosingNonPostedDependingMovesError inside account because it is now also used there to catch it when confirming batch of moves. Forward-Port-Of: odoo/enterprise#69518 Forward-Port-Of: odoo/enterprise#69206
Description: - This accommodates scenarios where the main customer raises a ticket for a delivery partner. Changes: - Code modification for improved flexibility in handling cases where the main customer raises a ticket for the delivery partner. task-3623707 Forward-Port-Of: odoo/enterprise#69637 Forward-Port-Of: odoo/enterprise#52864
Original PR description
Description: - This accommodates scenarios where the main customer raises a ticket for a delivery partner. Changes: - Code modification for improved flexibility in handling cases where the main customer raises a ticket for the delivery partner. task-3623707 Forward-Port-Of: odoo/enterprise#69637 Forward-Port-Of: odoo/enterprise#52864
Steps to reproduce ================== - Open studio - Edit any report - Make some changes - Click on discard - Click on cancel => UncaughtPromiseError Cause of the issue ================== When clicking on cancel, the promise is rejected https://github.com/odoo/odoo/blob/1ffcea337ba463c383483ca53ff57aa6b725b5a2/addons/web_editor/static/src/js/wysiwyg/wysiwyg.js#L1112 Solution ======== Instead of rejecting the promise, resolve it with the confirmation status opw-414
Original PR description
Steps to reproduce ================== - Open studio - Edit any report - Make some changes - Click on discard - Click on cancel => UncaughtPromiseError Cause of the issue ================== When clicking on cancel, the promise is rejected https://github.com/odoo/odoo/blob/1ffcea337ba463c383483ca53ff57aa6b725b5a2/addons/web_editor/static/src/js/wysiwyg/wysiwyg.js#L1112 Solution ======== Instead of rejecting the promise, resolve it with the confirmation status opw-4141192 Forward-Port-Of: odoo/enterprise#69646 Forward-Port-Of: odoo/enterprise#69127
Forward-Port-Of: odoo/enterprise#69591
Original PR description
Forward-Port-Of: odoo/enterprise#69591
The CAR (Código de Anotación de Registro) is an alphanumeric identifier composed of payment voucher data. It includes: - RUC number of the issuer: 11 numeric digits. - Type of payment voucher: 2 numeric digits. - Payment voucher series: 4 alphanumeric digits. - Payment voucher number: 10 alphanumeric digits.  Previously, support for SIRE reports was added. This change updates the general ledger t
Original PR description
The CAR (Código de Anotación de Registro) is an alphanumeric identifier composed of payment voucher data. It includes: - RUC number of the issuer: 11 numeric digits. - Type of payment voucher: 2…
The CAR (Código de Anotación de Registro) is an alphanumeric identifier composed of payment voucher data. It includes: - RUC number of the issuer: 11 numeric digits. - Type of payment voucher: 2 numeric digits. - Payment voucher series: 4 alphanumeric digits. - Payment voucher number: 10 alphanumeric digits.  Previously, support for SIRE reports was added. This change updates the general ledger to ensure compatibility. Adjusted the format of the 'book' field to include zero-padded and truncated document types, series, and folio numbers. Legal reference: https://www.sunat.gob.pe/legislacion/superin/2021/anexo-112-2021.pdf  Resolutions: [Resolución de Superintendencia N.° 112-2021](https://drive.google.com/file/d/19iWgqTeTn5WNIg3RpfAyHtF6xSIFL2rH/view?usp=sharing) Forward-Port-Of: odoo/enterprise#68808 Forward-Port-Of: odoo/enterprise#67911
Steps to reproduce: [l10n_be] - Create a customer from Spain with the following VAT: A12345674 - Create an invoice with the customer - Go to EC Sales report Issue: The country code used in the report is "A1" Solution: Instead of inferring the country code from the VAT, we use the country code per se; to be a bit more defensive we fall back on the initial flow in case there is no country code. opw-4080828 Forward-Port-Of: odoo/enterprise#69125
Original PR description
Steps to reproduce: [l10n_be] - Create a customer from Spain with the following VAT: A12345674 - Create an invoice with the customer - Go to EC Sales report Issue: The country code used in the report is "A1" Solution: Instead of inferring the country code from the VAT, we use the country code per se; to be a bit more defensive we fall back on the initial flow in case there is no country code. opw-4080828 Forward-Port-Of: odoo/enterprise#69125
This PR fixes a wrong documentation link in the helpdesk team form view. Task-4102472 Forward-Port-Of: odoo/enterprise#68101
Original PR description
This PR fixes a wrong documentation link in the helpdesk team form view. Task-4102472 Forward-Port-Of: odoo/enterprise#68101
Steps to reproduce: - Subscriptions > New > Set recurrence - Set 'Date of next invoice' in the future - Renew This should raise a ValidationError because renewing a subscription which was never started (no invoice) is invalid, as specified in the error message "You cannot upsell or renew a subscription that has not been invoiced yet". opw-4116538 Forward-Port-Of: odoo/enterprise#69361
Original PR description
Steps to reproduce: - Subscriptions > New > Set recurrence - Set 'Date of next invoice' in the future - Renew This should raise a ValidationError because renewing a subscription which was never started (no invoice) is invalid, as specified in the error message "You cannot upsell or renew a subscription that has not been invoiced yet". opw-4116538 Forward-Port-Of: odoo/enterprise#69361
In this pr: https://github.com/odoo/odoo/pull/171795 we added some computed fields which caused an increase on the query count of the l10n_au_hr_payroll_account module, this commit will increase that. task: 4127269 Forward-Port-Of: odoo/enterprise#69704
Original PR description
In this pr: https://github.com/odoo/odoo/pull/171795 we added some computed fields which caused an increase on the query count of the l10n_au_hr_payroll_account module, this commit will increase that. task: 4127269 Forward-Port-Of: odoo/enterprise#69704
Scanned barcodes were not saved (setting field in record do not register the change). Continue Production did not take advantage of saveModel parameter of doActionAndClose Forward-Port-Of: odoo/enterprise#69623 Forward-Port-Of: odoo/enterprise#69544
Original PR description
Scanned barcodes were not saved (setting field in record do not register the change). Continue Production did not take advantage of saveModel parameter of doActionAndClose Forward-Port-Of: odoo/enterprise#69623 Forward-Port-Of: odoo/enterprise#69544