Thursday, March 2, 2023
74 changes · master
Enhancements to existing features
Point of Sale X and Z reports now include additional daily sales reporting details directly in the main Point of Sale module. This gives businesses clearer end-of-day and shift reporting without needing a separate reporting add-on.
Original PR description
Description of the issue/feature this PR addresses: A module (pos_daily_sales_reports) has been added to in 16.0 and forward ported to master. In master we merge this module with the module point_of_sale. Forward-port PR: odoo/odoo#113228 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The profile verification message now shows the user's email address without italic styling, preventing it from visually overlapping with nearby punctuation. This makes the verification email clearer and more polished for website users.
Original PR description
before this commit, when a verification email is send to the user when validating the website user profile, there is no spacing/overlapping between the email(in italic) and ! after this commit as the italic is removed from the email, there will be proper spacing(no overlapping) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update applies recommended JavaScript improvements to HR-related screens and the data recycling list view. It should make these areas easier to maintain and help keep the employee attendance and organization chart experience consistent and reliable.
Original PR description
*: hr_attendance, hr_org_chart Apply recommendations from odoo/odoo#104975 to HR apps. task-3069138
Tax display behavior is now driven by accounting rounding rules, while website sales keeps its own separate tax display setting. This makes invoice, purchase, sales, repair, and website displays more consistent and reduces duplicate configuration.
Original PR description
Before this commit, the accounting module had a setting on the selection of taxes used by the sales, purchase, website_sale, ... modules. In addition, the website_sale module had the same setting related to the accounting one. This PR isolates the tax selection parameter in the website_sale module, and instead of using the tax selection, the accounting module will use rounding method (round per line, round globally). Selecting one of the two will change the display of all account_move or other view using the tax selection setting. Display changes: In round per line, a column tax excluded will always be displayed while a column tax included will be in optional hide. On the other hand, in the round globally, only the tax excluded columns will be available. task-id: 2954332 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Users can now switch between available views directly from the command palette. This makes it faster to move between list, form, kanban, and other views without relying only on the view switcher controls.
Original PR description
This commit adds the possibility to navigate between the different views of the view switcher from the palette command. 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
Invoice extraction and customer portal documents now align their tax column display with the accounting rounding method. This makes totals clearer by consistently showing tax-excluded amounts and only showing tax-included amounts when relevant.
Original PR description
This PR is related to https://github.com/odoo/odoo/pull/99209 Before this commit, the accounting module had a setting on the selection of taxes used by many modules. In addition, the website_sale module had the same setting related to the accounting one. The community PR isolates the tax selection parameter in the website_sale module, and instead of using the tax selection, the accounting module will use rounding method (round per line, round globally). Selecting one of the two will change the display of all account_move or other view using the tax selection setting. Display changes: In round per line, a column tax excluded will always be displayed while a column tax included will be in optional hide. On the other hand, in the round globally, only the tax excluded columns will be available. task-id: 2954332
This change removes duplicate reporting screens, menu items, records, and related code from the Swedish point of sale localization after the reporting functionality was merged into the main point of sale module. It helps keep the system cleaner and reduces maintenance overlap without introducing a major business workflow change.
Original PR description
Description of the issue/feature this PR addresses: A module (pos_daily_sales_reports) has been added to in 16.0 and forward ported to master. In master we merge this module with the module point_of_sale. --- I confirm I have signed the CLA and read the PR guidelines at [www.odoo.com/submit-pr](http://www.odoo.com/submit-pr)
After signing a document, users now see up to three important documents that still need their signature, with quick options to sign them or ignore them. Signing actions now take users directly into signing mode, reducing extra navigation and helping documents get completed faster.
Original PR description
The sign thank you dialog now lists up to 3 most important documents that the user has to sign and gives the option to ignore them. The dialog is now slightly better worded. The Sign Next Document button lands the user directly into signing mode. task-3072737
Amazon shipment updates now include the ship-from location when pickings are synchronized. This helps avoid Amazon warnings about missing shipping origin details and improves the reliability of marketplace order processing.
Original PR description
When sending the information about the pickings, Amazon warns against the lack of information about the shipping location. This commit adds the location to the feed message when syncing the pickings. task-2904163
Resolved issues and error corrections
Fixed an issue that could make the restaurant floor screen crash when staff used a pinch gesture on a touch screen. This improves reliability for point-of-sale teams using floor plans on tablets or touch devices.
Original PR description
In odoo/odoo#112610 the draggable/resizable behaviour of the floor screen was refactored, and in doing so the FloorScreen was converted to a Component from a LegacyComponent. Doing so makes `this.el` unavailable in the component but it was still using that for the pinch, causing a crash. This commit fixes that issue by using a ref instead of using querySelector on this.el.
Code cleanup and technical improvements
This update streamlines how Odoo tracks edited fields in forms and lists by replacing a direct field property with a shared internal notification mechanism. It should make the web interface code easier to maintain while keeping normal user workflows unchanged.
Original PR description
This commit, is part of a series of commits that aim to simplifie the concrete fields API. In this commit we will remove setDirty prop from concrete fields. Now if needed the fields can declare itself dirty using triggering "FIELD_IS_DIRTY" on the model's bus. Note that this PR partially revert [1] and completely revert [2] task-id 3179751 [1] : https://github.com/odoo/odoo/commit/89c2a3978e5f46b003789f8a8a06d69162f4a404 [2]: https://github.com/odoo/odoo/commit/c79bb3c9c6ba7fcbd6cd8ad3919f83a4fa777d0a
Miscellaneous changes
In some cases, Odoo's move state is unaligned to that on the IAP Proxy Server, because the ACK message from Odoo to IAP deletes all attachments from the EDI transactions on the IAP without regard if they are with type "Send" or "Receive". We fix both cases by making Odoo just look at the state and not to the attachment when it's not needed, and it's only needed when there is a rejection of the document being sent. We reserve for the future a change to the ACK to only delete the attachments
Original PR description
In some cases, Odoo's move state is unaligned to that on the IAP Proxy Server, because the ACK message from Odoo to IAP deletes all attachments from the EDI transactions on the IAP without regard if…
In some cases, Odoo's move state is unaligned to that on the IAP Proxy Server, because the ACK message from Odoo to IAP deletes all attachments from the EDI transactions on the IAP without regard if they are with type "Send" or "Receive". We fix both cases by making Odoo just look at the state and not to the attachment when it's not needed, and it's only needed when there is a rejection of the document being sent. We reserve for the future a change to the ACK to only delete the attachments by transmission type (Send/Receive) so that they don't interfere. Error case 1: - Odoo client sends an invoice to the IAP Proxy - The IAP proxy will send it to the SdI - If everything goes well, the SdI will send a notification back - The IAP proxy sees the notification and saves it - The Odoo of the client downloads the notification and sends an ack - The IAP proxy sees the ack and deletes the attachment - (ERR!) The client resets to draft, modifies and re-confirms - The state of his invoice is set again To Send - Odoo tries to re-send the invoice with the same Id Transaction - The notification for that Id Transaction is already on the IAP proxy - Odoo client asks for changes, but just sees the old notification - (-->) The old notification has no attachment, so Odoo thinks there's no news - The move in Odoo stays in the To Send state forever Error case 2: - Odoo client sends a Tax Integration for a Vendor Bill (reverse charge) - The IAP proxy will send it to the SdI - If everything goes well, the SdI will send the same Vendor Bill back as the client's CodiceDestinatario is actually the recipient in the XML - The IAP proxy sees the file, the Id Transaction is the same for both the received and the sent documents - The SdI sends a notification because the tax integration is OK - The IAP proxy saves the notification, there are now two EDI transactions with the same Id Transaction. - Odoo checks for new documents - IAP proxy sends the document to Odoo - Odoo sends an ACK for that - (ERR!) the IAP proxy sees the ACK and clears the attachment from BOTH the records for sent and received document - Odoo checks for documents updates and gets the record without the attachment - (-->) The notification has no attachment, so Odoo thinks there's no news - The move in Odoo stays in the To Send state forever Ticket link: https://www.odoo.com/web#id=3194378&model=project.task opw-3194378 Forward-Port-Of: odoo/odoo#113913 Forward-Port-Of: odoo/odoo#113666
This update fixes several web editor behaviors so formatting is preserved when content is emptied, cursor navigation works correctly around hidden spacing characters, and pressing Enter after headings creates the expected paragraph. It helps users edit website content more predictably without losing styling or jumping to the wrong place.
Original PR description
- Make sure not to remove inline styles when emptying an element. - The insertHTML test file was named too specifically while we want it to test the recently renamed `insert` command, which doesn't only insert HTML. - If a block ends with a zero-width space, the mechanism that skips these characters when using the arrow keys should not skip all the way to the next block. task-3102841 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Dashboard data is now read correctly instead of treating it like a file size. This prevents errors when demo users open dashboard configuration options, making dashboard access more reliable.
Original PR description
Description of the issue/feature this PR addresses: Earlier, receiving data was size of the file which is not what we want. And we are trying to decode that as they are in binary form. Which can not working properly. Current behavior before PR: Now we get the sheetdata in spreadsheet_data field Desired behavior after PR is merged: Won't receive error when login using demo user and click on dashboard -> configuration -> dashboard -> any of the option -> click again any of option Task - 3162824 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Point of Sale closing process has been corrected so sessions with draft orders do not crash unexpectedly. This helps cashiers and managers close POS sessions more reliably and reduces disruption at end of day.
Original PR description
In odoo/odoo#112219 we removed the usage of useListener for cross-component communication, one such use was to close the pos from the closing popup. The closeSession method was moved from the closing popup to the store but the corresponding error handling method wasnt. It appears that the closeSession method doesn't need to be on the store at all, only the closePos method. This commit moves the closeSession method back to the closing popup, so that it has access to the handleClosingError method again.
This fixes a missing style reference that caused the barcode scanner on the mobile point-of-sale employee login screen to display incorrectly. The change restores the intended appearance, helping staff use barcode login smoothly on mobile devices.
Original PR description
In odoo/enterprise#35884 the style for the barcode scanner was moved to the barcodes module, but the manifest of pos_hr_mobile was improperly adapted: the existing scss file was removed from the manifest but the new location of the scss file was not added. This commit fixes that.
This fix ensures spreadsheet dashboard data is read correctly instead of treating the received binary content as a file size. Users should no longer hit an error when opening dashboard configuration options with the demo user.
Original PR description
Description of the issue/feature this PR addresses: Earlier, receiving data was size of the file which is not what we want. And we are trying to decode that as they are in binary form. Which can not working properly. Current behavior before PR: Now we get the sheetdata in spreadsheet_data field Desired behavior after PR is merged: Won't receive error when login using demo user and click on dashboard -> configuration -> dashboard -> any of the option -> click again any of option Task - 3162824
This change moves the main attachment capability out of a broadly used messaging component and applies it only to business records that actually need it. This should reduce unnecessary overhead across the system while preserving attachment behavior in areas such as accounting, expenses, time off, employees, and recruitment.
Original PR description
Main attachment is quite costly and as it is implemented in mail.thread and is therefore present in most model. In order to improve performance, we remove it here from mail.thread and add it through a new mixin,only on model that effectively use that features. See sub commits for more details. Task-2648976
Spreadsheet downloads now wait for background formulas to finish using direct data source updates instead of a repeated timer. This makes loading behavior cleaner and more dependable, with no visible workflow change for users.
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
This change removes duplicate spreadsheet sorting code and reuses the shared version already available in Odoo. It helps keep behavior consistent across the system and makes future maintenance safer, with no expected change for users.
Original PR description
The orderByToString function has been duplicated in spreadsheet. We will replace it with the one defined in web. 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 graph view code was cleaned up by removing an unused dependency and streamlining how chart data points are processed. This should make the feature easier to maintain without changing how users interact with graphs.
Original PR description
We remove a useless import of GroupByMenu and refactor the processing of data points in the model.
This update adjusts how color picker and priority fields determine their display context, reducing reliance on an internal view setting. It helps keep these interface elements more consistent and easier to maintain without changing the overall user workflow.
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
This update simplifies how several Odoo apps read field values behind the scenes. It should make future maintenance easier and reduce implementation complexity without changing day-to-day user workflows.
This change narrows a costly attachment capability so it is only enabled on records that actually use it. This should improve overall system performance while preserving attachment previews and related behavior where needed.
Original PR description
Main attachment is quite costly and as it is implemented in mail.thread and is therefore present in most model. In order to improve performance, we remove it here from mail.thread and add it through a new mixin,only on model that effectively use that features. See sub commits for more details. Task-2648976
Before this commit, we-matrix could create a horizontal scroll bar in the editor. This was because the inputs had a minimum width size. Steps to reproduce the bug: - Drop a chart block on a page - Add some series => The matrix overflows from the editor. There is no perfect solution to this problem... We have the choice between: 1) Leave the existing overflow on the editor. 2) Put a horizontal scroll on the we-matrix. 3) Distribute the available space between the columns. As we
Original PR description
Before this commit, we-matrix could create a horizontal scroll bar in the editor. This was because the inputs had a minimum width size. Steps to reproduce the bug: - Drop a chart block on a page - Add some series => The matrix overflows from the editor. There is no perfect solution to this problem... We have the choice between: 1) Leave the existing overflow on the editor. 2) Put a horizontal scroll on the we-matrix. 3) Distribute the available space between the columns. As we don't want a horizontal scrollbar, the best solution is to distribute the available space between the columns. This solution has a drawback which is that the cells can become really small if there are a lot of columns but this solution seems to be the least bad from a UX point of view. task-3094162 Forward-Port-Of: odoo/odoo#107400
Since [1] when only website is installed, dropping a dynamic snippet produces an error because no dynamic filter is defined and it tries to specify one selected by default. This commit avoids setting a default filter when there is none. It did work in 15.0 because the log was inside `_renderDynamicFiltersSelector` which contained an `if (dynamicFilters.length > 0)` that avoided the problem. In [2], when most of that logic was moved from the render method to the fetch method, that con
Original PR description
Since [1] when only website is installed, dropping a dynamic snippet produces an error because no dynamic filter is defined and it tries to specify one selected by default. This commit avoids setting a default filter when there is none. It did work in 15.0 because the log was inside `_renderDynamicFiltersSelector` which contained an `if (dynamicFilters.length > 0)` that avoided the problem. In [2], when most of that logic was moved from the render method to the fetch method, that condition was lost. Steps to reproduce: - Install website only - Go to debug mode - Drop a "Dynamic Snippet" or a "Dynamic Carousel" => Traceback appears because there cannot be a default filter when there is no filter. [1]: https://github.com/odoo/odoo/commit/3355dc16235355fe51e894f14e275210464608c6 [2]: https://github.com/odoo/odoo/commit/9e0b398fe608e716835260c5f9923f933d723f8e opw-3166634 Forward-Port-Of: odoo/odoo#111803
This reviews [1] (in particular changing my mind about [2] upon further review). Indeed this was marking potential non editable tab panes as editable by searching the whole DOM instead of editable savable zones. In the end, what is searched for is also reviewed. Instead of searching for a very specific structure, we now mark all oe_structure which are direct children of tab-pane as editable (if in an editable zone) and their parent (the tab-pane who have a direct oe_structure child) as readon
Original PR description
This reviews [1] (in particular changing my mind about [2] upon further review). Indeed this was marking potential non editable tab panes as editable by searching the whole DOM instead of editable savable zones. In the end, what is searched for is also reviewed. Instead of searching for a very specific structure, we now mark all oe_structure which are direct children of tab-pane as editable (if in an editable zone) and their parent (the tab-pane who have a direct oe_structure child) as readonly. [1]: https://github.com/odoo/odoo/commit/5fd99855654d220bafb8887cd0ae267042836d4b [2]: https://github.com/odoo/odoo/pull/109430#discussion_r1115792052 Forward-Port-Of: odoo/odoo#113909 Forward-Port-Of: odoo/odoo#113605
To reproduce ============ - with Invoicing installed, give a user the group Billing Administrator without giving any Administration group - connect to this user and try to add a bank account an access right is raised Problem ======= the `groups_id` on the action `action_new_bank_setting` is not specified so when running the action we check if it has `groups_id`, if not, we check if the user has the right to write on the target model which is `res.company` here, which is not for this user
Original PR description
To reproduce ============ - with Invoicing installed, give a user the group Billing Administrator without giving any Administration group - connect to this user and try to add a bank account an access right is raised Problem ======= the `groups_id` on the action `action_new_bank_setting` is not specified so when running the action we check if it has `groups_id`, if not, we check if the user has the right to write on the target model which is `res.company` here, which is not for this user because he doesn't have any Administration group. Solution ======== specify `groups_id` to `account.group_account_manager` opw-3199435 Forward-Port-Of: odoo/odoo#113836
After vendoring unittest in 9a5d1ea54be49e4cc8208c33e76a6bbd2414d5d0, The assumption that all tests class should inherit from BaseCase was not correct in all cases since some external developers may have create custom test without following this habit. This commit brings back the initial behavior using getattr for 16.0, but inheriting from BaseCase will become required in future versions. closes #114015 Forward-Port-Of: odoo/odoo#114027
Original PR description
After vendoring unittest in 9a5d1ea54be49e4cc8208c33e76a6bbd2414d5d0, The assumption that all tests class should inherit from BaseCase was not correct in all cases since some external developers may have create custom test without following this habit. This commit brings back the initial behavior using getattr for 16.0, but inheriting from BaseCase will become required in future versions. closes #114015 Forward-Port-Of: odoo/odoo#114027
This refactoring on test suite https://github.com/odoo/odoo/commit/9a5d1ea54be49e4cc8208c33e76a6bbd2414d5d0 introduced a regression on tests out there. Normally `__unittest_skip__` is set only if `skip` is used see https://github.com/python/cpython/blob/main/Lib/unittest/case.py#L147 Hence normal tests depending on base test classes should not fail if is not available. See https://github.com/python/cpython/blob/main/Lib/unittest/case.py#L602 ``` Traceback (most recent call las
Original PR description
This refactoring on test suite https://github.com/odoo/odoo/commit/9a5d1ea54be49e4cc8208c33e76a6bbd2414d5d0 introduced a regression on tests out there. Normally `__unittest_skip__` is set only if…
This refactoring on test suite https://github.com/odoo/odoo/commit/9a5d1ea54be49e4cc8208c33e76a6bbd2414d5d0 introduced a regression on tests out there.
Normally `__unittest_skip__` is set only if `skip` is used
see https://github.com/python/cpython/blob/main/Lib/unittest/case.py#L147
Hence normal tests depending on base test classes should not fail if is not available.
See https://github.com/python/cpython/blob/main/Lib/unittest/case.py#L602
```
Traceback (most recent call last):
File "/opt/odoo/odoo/service/server.py", line 1299, in preload_registries
registry = Registry.new(dbname, update_module=update_module)
File "<decorator-gen-14>", line 2, in new
File "/opt/odoo/odoo/tools/func.py", line 87, in locked
return func(inst, *args, **kwargs)
File "/opt/odoo/odoo/modules/registry.py", line 90, in new
odoo.modules.load_modules(registry, force_demo, status, update_module)
File "/opt/odoo/odoo/modules/loading.py", line 487, in load_modules
processed_modules += load_marked_modules(cr, graph,
File "/opt/odoo/odoo/modules/loading.py", line 371, in load_marked_modules
loaded, processed = load_module_graph(
File "/opt/odoo/odoo/modules/loading.py", line 289, in load_module_graph
test_results = loader.run_suite(suite, module_name)
File "/opt/odoo/odoo/tests/loader.py", line 65, in run_suite
suite(results)
File "/usr/lib/python3.10/unittest/suite.py", line 84, in __call__
return self.run(*args, **kwds)
File "/opt/odoo/odoo/tests/suite.py", line 40, in run
self._handleClassSetUp(test, result)
File "/opt/odoo/odoo/tests/suite.py", line 172, in _handleClassSetUp
super()._handleClassSetUp(test, result)
File "/opt/odoo/odoo/tests/suite.py", line 56, in _handleClassSetUp
if currentClass.__unittest_skip__:
AttributeError: type object 'TestEvent' has no attribute '__unittest_skip__'
``
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#114007In this commit, the horizontal sizing options are disabled from the snippets overlay on mobile view as they were ineffective and unnecessary. task-2978500 Forward-Port-Of: odoo/odoo#110302
Original PR description
In this commit, the horizontal sizing options are disabled from the snippets overlay on mobile view as they were ineffective and unnecessary. task-2978500 Forward-Port-Of: odoo/odoo#110302
The test returns an error if today is within 365 days before the next 29th February: datetime.date(2024, 3, 1) != datetime.date(2024, 2, 29) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#113967
Original PR description
The test returns an error if today is within 365 days before the next 29th February: datetime.date(2024, 3, 1) != datetime.date(2024, 2, 29) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#113967
Before this commit, when moving inner content inside a carousel slide (with the 'move' button), the carousel was jumping to the first slide. Steps to reproduce the bug: - In website edit mode, drag and drop a Carousel snippet onto the page. - Move to the second slide. - Click on the column to activate its overlay. - Click and hold the "drag and drop" button of the column to start dragging it. - Release the mouse button. - Bug: the carousel jumps to the first slide. task-3006831
Original PR description
Before this commit, when moving inner content inside a carousel slide (with the 'move' button), the carousel was jumping to the first slide. Steps to reproduce the bug: - In website edit mode, drag and drop a Carousel snippet onto the page. - Move to the second slide. - Click on the column to activate its overlay. - Click and hold the "drag and drop" button of the column to start dragging it. - Release the mouse button. - Bug: the carousel jumps to the first slide. task-3006831 Forward-Port-Of: odoo/odoo#113904 Forward-Port-Of: odoo/odoo#103086
*: point_of sale, web Previously, the error handling code was refactored and centralized, in doing so, we broke the ability to select a table while offline: when selecting a table we ask the server about the orders for the table. When offline, this creates an error that was previously caught, and showed an offline error popup, but continued the rest of the flow normally. The refactoring centralized the display of offline errors to an error handler, but removed the catching, causing the error
Original PR description
*: point_of sale, web Previously, the error handling code was refactored and centralized, in doing so, we broke the ability to select a table while offline: when selecting a table we ask the server about the orders for the table. When offline, this creates an error that was previously caught, and showed an offline error popup, but continued the rest of the flow normally. The refactoring centralized the display of offline errors to an error handler, but removed the catching, causing the error to interrupt the flow. This commit fixes that by catching the error again, and when it's a ConnectionLostError, it dispatched the error in a separate async call stack (using Promise.reject) so that the display of offline errors is still centralized, the the flow can continue normally. Forward-Port-Of: odoo/odoo#114005
Commit [1] introduced a usage of `structuredClone` in 16.0 where it is not supported. This was a mistake introduced by backporting [2] from master to 16.0. However, the `structuredClone` was not necessary in the first place anyway, so this commit removes it. [1]: c472e600da3237d3cb0a6352a4d26ebb3ed6e20c [2]: a5036864b11890c197d636c461a42720fbce6227 Forward-Port-Of: odoo/odoo#114018
Original PR description
Commit [1] introduced a usage of `structuredClone` in 16.0 where it is not supported. This was a mistake introduced by backporting [2] from master to 16.0. However, the `structuredClone` was not necessary in the first place anyway, so this commit removes it. [1]: c472e600da3237d3cb0a6352a4d26ebb3ed6e20c [2]: a5036864b11890c197d636c461a42720fbce6227 Forward-Port-Of: odoo/odoo#114018
Steps to reproduce: - Go to a product with a long name - Inside the product page go to "print labels" - Choose "Dymo" as label type and print. (For barcode you need to add a barcode number to the product.) Issue: The product name is not displayed correctly on the label because is too long. Solution: Removing the fixed height int he label seem to have good behavior with sizing the text.  Issue: The product name is not displayed correctly on the label because is too long. Solution: Removing the fixed height int he label seem to have good behavior with sizing the text.  opw-3120807 Forward-Port-Of: odoo/odoo#109789
Previously when we tried to delete default_website it was deleted. Traceback on Sentry : https://drive.google.com/file/d/1dBKajYpEyMzdGp0qW3J3_W6yvymgKnA6/view?usp=sharing In this commit i have fixed this issue by preventing user to unlink default_website as it is generated by the system. We have raised usererror when user tries to delete default_website. sentry-3874625419 Forward-Port-Of: odoo/odoo#113176 Forward-Port-Of: odoo/odoo#112752
Original PR description
Previously when we tried to delete default_website it was deleted. Traceback on Sentry : https://drive.google.com/file/d/1dBKajYpEyMzdGp0qW3J3_W6yvymgKnA6/view?usp=sharing In this commit i have fixed this issue by preventing user to unlink default_website as it is generated by the system. We have raised usererror when user tries to delete default_website. sentry-3874625419 Forward-Port-Of: odoo/odoo#113176 Forward-Port-Of: odoo/odoo#112752
How to reproduce ================= 1. Install `l10n_din5008` and `purchase` 2. Create a RFQ and print a Purchase Order. 2 Titles are displayed How this fix works =================== the l10n_din5008 report inherit parts of the content of `purchase_order_templates.xml`. That template adds a title to the report in addition of the title offered by `din5008`. This fix checks if that specific template is used (by using `xmlid`) and if this is not the case, `din5008` will not add any title
Original PR description
How to reproduce ================= 1. Install `l10n_din5008` and `purchase` 2. Create a RFQ and print a Purchase Order. 2 Titles are displayed How this fix works =================== the l10n_din5008 report inherit parts of the content of `purchase_order_templates.xml`. That template adds a title to the report in addition of the title offered by `din5008`. This fix checks if that specific template is used (by using `xmlid`) and if this is not the case, `din5008` will not add any title. opw-3162177 Forward-Port-Of: odoo/odoo#112675
LE is most commonly used today. opw-3188129 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#113513
Original PR description
LE is most commonly used today. opw-3188129 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#113513
When uploading a file on a draft record, it crashed. This happens because the file upload was applied on record while still in "draft". This fixes the issue by awaiting chatter is saved, to proceed with the file uploading. opw-3204555 Forward-Port-Of: odoo/odoo#114090 Forward-Port-Of: odoo/odoo#113890
Original PR description
When uploading a file on a draft record, it crashed. This happens because the file upload was applied on record while still in "draft". This fixes the issue by awaiting chatter is saved, to proceed with the file uploading. opw-3204555 Forward-Port-Of: odoo/odoo#114090 Forward-Port-Of: odoo/odoo#113890
With DB having only one blog (most common case, but we are used to test it with demo data where we have two), the search param is lost when accessing the blog controller without passing a blog. Eg, `/blog?search=hubble` will redirect to `/blog/traval-1` This is because the business code is doing an early redirect if we access the `/blog` URL without a blog post passed to it to redirect to that blog post URL directly (since there is only one), but that redirect is not passing the query para
Original PR description
With DB having only one blog (most common case, but we are used to test it with demo data where we have two), the search param is lost when accessing the blog controller without passing a blog. Eg, `/blog?search=hubble` will redirect to `/blog/traval-1` This is because the business code is doing an early redirect if we access the `/blog` URL without a blog post passed to it to redirect to that blog post URL directly (since there is only one), but that redirect is not passing the query parameters, which `search` is part of. Step to reproduce (in later version): - Be sure to only have one blog - Drag & drop the search snippet in the homepage or anywhere - Make it search on blog only (through the snippet option) Type anything, it will not work and won't do the search. It will just redirect to the blog page. Forward-Port-Of: odoo/odoo#113997 Forward-Port-Of: odoo/odoo#113855
This commit fixes the style of the "Add a note" element in the activities menu list. Before this commit, the background was white because the color was hardcoded in a scss file. This is not longer the case with this fix. Also, the input has a transparent background to match with the background color. task-3208042 Forward-Port-Of: odoo/odoo#113743
Original PR description
This commit fixes the style of the "Add a note" element in the activities menu list. Before this commit, the background was white because the color was hardcoded in a scss file. This is not longer the case with this fix. Also, the input has a transparent background to match with the background color. task-3208042 Forward-Port-Of: odoo/odoo#113743
OPW 3117373 Task: 973 **Description of the issue/feature this PR addresses**: The customer printed invoice hides part of the document type letter in the header. This commit solves that problem and also this issue: https://github.com/odoo/odoo/issues/108994 **Current behavior before PR**: The customer printed invoice hides part of the document type header letter. For example: Invoice:  Printed Invoice. At the top of the invoice the document type (letter "B") is not shown completely:  **Desired behavior after PR is merged**: Invoice:  Printed Invoice. At the top of the invoice the document type (letter "B") is shown completely:  --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#112715 Forward-Port-Of: odoo/odoo#112549
A double line would appear if the resume / skills were empty. task-3196398 Forward-Port-Of: odoo/odoo#113986
Original PR description
A double line would appear if the resume / skills were empty. task-3196398 Forward-Port-Of: odoo/odoo#113986
The button to regenerate work entries was no longer disabled, thus it lead to a traceback when clicking on it. The warning message was confusing and misleading. task-3203225 Forward-Port-Of: odoo/odoo#113867
Original PR description
The button to regenerate work entries was no longer disabled, thus it lead to a traceback when clicking on it. The warning message was confusing and misleading. task-3203225 Forward-Port-Of: odoo/odoo#113867
**Current behavior before PR:** When copy-pasting from Discord into Notes, get a text with color and background color. But when clicking on the trash icon inside the toolbar to remove the background color, it doesn't remove the background color. **Desired behavior after PR is merged:** Allowed to remove background color from text using trash icon. Task-2889682 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo
Original PR description
**Current behavior before PR:** When copy-pasting from Discord into Notes, get a text with color and background color. But when clicking on the trash icon inside the toolbar to remove the background color, it doesn't remove the background color. **Desired behavior after PR is merged:** Allowed to remove background color from text using trash icon. Task-2889682 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#114044 Forward-Port-Of: odoo/odoo#96501
When cancelling a confirmed order the message displayed on the chatter was en English, regardless of the language set for the customer or the user. After this commit the correct language will be used. opw-3175301 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#113977
Original PR description
When cancelling a confirmed order the message displayed on the chatter was en English, regardless of the language set for the customer or the user. After this commit the correct language will be used. opw-3175301 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#113977
Steps to reproduce: - create a sale order; - add products which are based on timesheets for invoicing policy; - create an invoice an confirm it; - make a full refund for this invoice with "ADD CREDIT NOTE" button; - create an new invoice for the sale order. Issue: There is no longer a statistics button that displays the hours worked on the invoice view. Cause: To reassign an account move to an account analytic line, it is necessary either that there is no invoice or that the invoi
Original PR description
Steps to reproduce: - create a sale order; - add products which are based on timesheets for invoicing policy; - create an invoice an confirm it; - make a full refund for this invoice with "ADD CREDIT NOTE" button; - create an new invoice for the sale order. Issue: There is no longer a statistics button that displays the hours worked on the invoice view. Cause: To reassign an account move to an account analytic line, it is necessary either that there is no invoice or that the invoice is in the cancel state. The case where the invoice has been refunded is not taken into account. Solution: Correct the domain that determines the timesheets (account analytic line) to be linked with the invoice being created. opw-3187219 Forward-Port-Of: odoo/odoo#113985
align chat bubble and remove space between label and h1 https://www.odoo.com/web#id=3131441&menu_id=4720&cids=1&action=333&active_id=1251&model=project.task&view_type=form Forward-Port-Of: odoo/odoo#111577
Original PR description
align chat bubble and remove space between label and h1 https://www.odoo.com/web#id=3131441&menu_id=4720&cids=1&action=333&active_id=1251&model=project.task&view_type=form Forward-Port-Of: odoo/odoo#111577
Forward-Port-Of: odoo/odoo#114099 Forward-Port-Of: odoo/odoo#114001
Original PR description
Forward-Port-Of: odoo/odoo#114099 Forward-Port-Of: odoo/odoo#114001
**Current behavior before PR:** For the safari browser, when typing any URL and pressing space, and continuing typing, the cursor jumps before the URL. **Desired behavior after PR is merged:** Inserting an element into a range clears the selection in Safari. Hence, use the cloned range to reselect it, and now the cursor position remains at the end of the URL. Task-3089091 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forwa
Original PR description
**Current behavior before PR:** For the safari browser, when typing any URL and pressing space, and continuing typing, the cursor jumps before the URL. **Desired behavior after PR is merged:** Inserting an element into a range clears the selection in Safari. Hence, use the cloned range to reselect it, and now the cursor position remains at the end of the URL. Task-3089091 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#110851
When multiple liquidity lines exist on an account.move (occuring before 14.0), the bank reconciliation widget crashes. Taking the sum of the `amount` and `amount_currency` solves it. opw-3202392 Forward-Port-Of: odoo/odoo#114126
Original PR description
When multiple liquidity lines exist on an account.move (occuring before 14.0), the bank reconciliation widget crashes. Taking the sum of the `amount` and `amount_currency` solves it. opw-3202392 Forward-Port-Of: odoo/odoo#114126
Before this commit, on iPhone 8 (and lower) it was possible to scroll the page to the right when there were animated elements in the page. A "transform: none" property was applied to non-visible animated elements to prevent the page from expanding to the right. However, this property wasn't properly overriding keyframe transforms on iPhone 8 and lower. This has been resolved by adding "overflow-x: hidden" on the wrapwrap in case "transform: none" is not applied correctly. Steps to rep
Original PR description
Before this commit, on iPhone 8 (and lower) it was possible to scroll the page to the right when there were animated elements in the page. A "transform: none" property was applied to non-visible animated elements to prevent the page from expanding to the right. However, this property wasn't properly overriding keyframe transforms on iPhone 8 and lower. This has been resolved by adding "overflow-x: hidden" on the wrapwrap in case "transform: none" is not applied correctly. Steps to reproduce the issue: - On iPhone 8 (Safari). - Drop a few snippets into a page. - Add a "Fade In-Right" animation to one of the snippets. - Scrolls the page so that the animated element is invisible. - Bug => a horizontal scrollbar appears and it is possible to scroll the page to the right. opw-3165651 Forward-Port-Of: odoo/odoo#114091 Forward-Port-Of: odoo/odoo#111750
To reproduce the issue: 1. Go to 'res.country.state.csv' in base 2. state_ch_sh is "Shaffhausen" Error: should be "Schaffhausen" State code is still SH because ISO 3166 code for this state is CH-SH OPW-3199628 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#114139
Original PR description
To reproduce the issue: 1. Go to 'res.country.state.csv' in base 2. state_ch_sh is "Shaffhausen" Error: should be "Schaffhausen" State code is still SH because ISO 3166 code for this state is CH-SH OPW-3199628 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#114139
task - 3203843 Fixing the accrual plan start_count help message Forward-Port-Of: odoo/odoo#113655
Original PR description
task - 3203843 Fixing the accrual plan start_count help message Forward-Port-Of: odoo/odoo#113655
This update contains the following commit: - [FIX] compiler: t-key and t-ref together More details at: https://github.com/odoo/owl/releases/tag/v2.0.7 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#113099
Original PR description
This update contains the following commit: - [FIX] compiler: t-key and t-ref together More details at: https://github.com/odoo/owl/releases/tag/v2.0.7 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#113099
Prior to this commit, animations on SVG shapes could use a lot of CPU and make the page stutter on some website + machine combo. This commit applies a new class which will warn the browser that the element is animated. Depending on the browser, some optimisations are done. On Chrome and Safari, a new layer is created which simplifies the render of the page and sometimes takes advantage of hardware acceleration. On Firefox, no optimisation is done yet. This might change in an update wh
Original PR description
Prior to this commit, animations on SVG shapes could use a lot of CPU and make the page stutter on some website + machine combo. This commit applies a new class which will warn the browser that the…
Prior to this commit, animations on SVG shapes could use a lot of CPU and make the page stutter on some website + machine combo. This commit applies a new class which will warn the browser that the element is animated. Depending on the browser, some optimisations are done. On Chrome and Safari, a new layer is created which simplifies the render of the page and sometimes takes advantage of hardware acceleration. On Firefox, no optimisation is done yet. This might change in an update which will take advantage of the CSS Property. The documentation says to only use `will-change` when an element is about to change. This is the case however, as most of the shape's animations are going all the time. Which is why it's applied to every shape that has animation. This optimisation only applies to background shapes with this commit. To note: one way to easily see the improvement is on the "Layers" tab of the Chrome devtools. Before this commit, the entire #wrapwrap is repainted every time the shape changes (so 60 times per second since that is the framerate the browser aims for). With this commit, the #wrapwrap and the shape are contained in their own layers so the #wrapwrap is only painted once. task-3142001 Forward-Port-Of: odoo/odoo#113843 Forward-Port-Of: odoo/odoo#110260
To reproduce ============ - on accounting -> Vendor -> Bills - upload the PDF attached on the ticket an exception is raised Problem ======= PyPDF2 finds that this pdf is encrypted,so we try to decrypt it with empty password, but the decryption fails which rise an error. Solution ======== according to this [commit](https://github.com/odoo/odoo/commit/851fe64f7789bb398383c22e3ebbaebb051791f6), when the decryption fails we skip reading the attachments and carry on to allow the user to
Original PR description
To reproduce ============ - on accounting -> Vendor -> Bills - upload the PDF attached on the ticket an exception is raised Problem ======= PyPDF2 finds that this pdf is encrypted,so we try to decrypt it with empty password, but the decryption fails which rise an error. Solution ======== according to this [commit](https://github.com/odoo/odoo/commit/851fe64f7789bb398383c22e3ebbaebb051791f6), when the decryption fails we skip reading the attachments and carry on to allow the user to upload the document. opw-3196780 Forward-Port-Of: odoo/odoo#114050
### latam task 976 / OPW 3204261 account_sequence module is adding an extra value to the move name in order to make it unique. For example if we have more than one vendor bills with name FA-A 0001-00000088 the result will be: * record 1: FA-A 0001-00000088 * record 2: FA-A 0001-00000088 (1) * record 3: FA-A 0001-00000088 (2) When using document type the vendor bill name should not need to be unique and it can be repeated, because it depends completely in the partner, in that
Original PR description
### latam task 976 / OPW 3204261 account_sequence module is adding an extra value to the move name in order to make it unique. For example if we have more than one vendor bills with name FA-A 0001-00000088 the result will be: * record 1: FA-A 0001-00000088 * record 2: FA-A 0001-00000088 (1) * record 3: FA-A 0001-00000088 (2) When using document type the vendor bill name should not need to be unique and it can be repeated, because it depends completely in the partner, in that case we should not add the "(N)" and leave the name as it is, because changing the name will result in problems, for example, like reporting VAT BOOK (AR LOC) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#114109
How to reproduce ================= Give a badge to an employee, when checking the sent mail, The image and description of the badge is nowhere to be seens. Those fields don't display because the description contains P html tags. The presence of the removed `t-if` is the main cause of the issue. Adding a `not` to the condition solves the issue. This not was lost during the Jinja -> Qweb translation (#68182ba) opw-3099419 Forward-Port-Of: odoo/odoo#111975
Original PR description
How to reproduce ================= Give a badge to an employee, when checking the sent mail, The image and description of the badge is nowhere to be seens. Those fields don't display because the description contains P html tags. The presence of the removed `t-if` is the main cause of the issue. Adding a `not` to the condition solves the issue. This not was lost during the Jinja -> Qweb translation (#68182ba) opw-3099419 Forward-Port-Of: odoo/odoo#111975
The overridden `_get_customer_country` method could not be called in two places where we referenced the base appointment controller instead of * in `Appointment` itself, the current class which could have been extended * for `_search_get_detail`, the `WebsiteAppointment` controller We here restore this override lost with 6ca7f201. The test included fails without both fix part of this commit. Forward-Port-Of: odoo/enterprise#37712 Forward-Port-Of: odoo/enterprise#36323
Original PR description
The overridden `_get_customer_country` method could not be called in two places where we referenced the base appointment controller instead of * in `Appointment` itself, the current class which could have been extended * for `_search_get_detail`, the `WebsiteAppointment` controller We here restore this override lost with 6ca7f201. The test included fails without both fix part of this commit. Forward-Port-Of: odoo/enterprise#37712 Forward-Port-Of: odoo/enterprise#36323
A filter named options:'extended' or 'standard' exists on the intrastat report to allow the user to include or exclude (respectively) the transport and incoterm columns on the report. This filter hasn't been functioning since v16.0 although the code was written to adapt the options based on the setting of this filter, the options are not adapted after the 'new_columns' are determined in the code. This code updates the options dictionary so that the columns in the options reflect those dete
Original PR description
A filter named options:'extended' or 'standard' exists on the intrastat report to allow the user to include or exclude (respectively) the transport and incoterm columns on the report. This filter hasn't been functioning since v16.0 although the code was written to adapt the options based on the setting of this filter, the options are not adapted after the 'new_columns' are determined in the code. This code updates the options dictionary so that the columns in the options reflect those determined by the filter. Forward-Port-Of: odoo/enterprise#37566
An infinite loop was blocking the interface when importing journal items from the settings menu. (Accounting > Settings > Accounting Import > Import Journal Items). https://watch.screencastify.com/v/mXeIfhBi5oHofvEAaAhp Task ID: 3211540 --- I confirm I have signed the CLA and read the PR guidelines at [www.odoo.com/submit-pr](http://www.odoo.com/submit-pr) Forward-Port-Of: odoo/enterprise#37658
Original PR description
An infinite loop was blocking the interface when importing journal items from the settings menu. (Accounting > Settings > Accounting Import > Import Journal Items). https://watch.screencastify.com/v/mXeIfhBi5oHofvEAaAhp Task ID: 3211540 --- I confirm I have signed the CLA and read the PR guidelines at [www.odoo.com/submit-pr](http://www.odoo.com/submit-pr) Forward-Port-Of: odoo/enterprise#37658
The hyphen should also be replaced by an underscore when generating the SQL query. Steps to reproduce (not really linked, but the bug was detected this way) - Install Accounting and HR payroll - Uninstall Accounting - Reinstall Accounting - Error `psycopg2.errors.SyntaxError: syntax error at or near "-"` Part of ticket 3204290 Forward-Port-Of: odoo/enterprise#37689
Original PR description
The hyphen should also be replaced by an underscore when generating the SQL query. Steps to reproduce (not really linked, but the bug was detected this way) - Install Accounting and HR payroll - Uninstall Accounting - Reinstall Accounting - Error `psycopg2.errors.SyntaxError: syntax error at or near "-"` Part of ticket 3204290 Forward-Port-Of: odoo/enterprise#37689
Grid 65 is a percentage and used to be stored as a float between 0 and 1. In 16.0, due to the introduction of external values, it now directly is the percentage. The computation of grid 66 and generation of the BOE file hence needed to be adapted. OPW 3180936 Forward-Port-Of: odoo/enterprise#37601
Original PR description
Grid 65 is a percentage and used to be stored as a float between 0 and 1. In 16.0, due to the introduction of external values, it now directly is the percentage. The computation of grid 66 and generation of the BOE file hence needed to be adapted. OPW 3180936 Forward-Port-Of: odoo/enterprise#37601
### The issue Currently, automatic currency rate updates with Bank of Peru do not work if your locale is not English. The Bank of Peru exchange rate service return dates in *English* with the following format: `%d.%b.%y`. Internally, we parse that date using`datetime.datetime.strptime`. However, parsing fails when the locale is not English because `strptime` uses the locale when parsing. For example, trying to parse `29.Dec.22`with Spanish locale does not work because `strptime` expects
Original PR description
### The issue Currently, automatic currency rate updates with Bank of Peru do not work if your locale is not English. The Bank of Peru exchange rate service return dates in *English* with the following format: `%d.%b.%y`. Internally, we parse that date using`datetime.datetime.strptime`. However, parsing fails when the locale is not English because `strptime` uses the locale when parsing. For example, trying to parse `29.Dec.22`with Spanish locale does not work because `strptime` expects `29.Dic.22`. ### Fix Replace the short month names by numbers. opw-3091837 Forward-Port-Of: odoo/enterprise#35285
With an MX Company and multicurrency setup Create an Invoice in USD, validate CFDI. Register a payment in, validate CFDI. It may occur the payment cfdi is rejected with error CRP20275, claiming that the amount of the Payment isn't correct. Since January 07th, the SAT implemented the "Complemento de Pago Versión 2.0 Versión A" https://blog.mysuitemex.com/2023/01/10/complemento-de-pago-2-0-cambios-sat/ https://soltum.com.mx/nuevo-complemento-de-pagos-2-0-revision-a-del-cfdi/ Raising the
Original PR description
With an MX Company and multicurrency setup Create an Invoice in USD, validate CFDI. Register a payment in, validate CFDI. It may occur the payment cfdi is rejected with error CRP20275, claiming that the amount of the Payment isn't correct. Since January 07th, the SAT implemented the "Complemento de Pago Versión 2.0 Versión A" https://blog.mysuitemex.com/2023/01/10/complemento-de-pago-2-0-cambios-sat/ https://soltum.com.mx/nuevo-complemento-de-pagos-2-0-revision-a-del-cfdi/ Raising the Decimal precision of EquivalenciaDR from 6 to 10 opw-3168140 Forward-Port-Of: odoo/enterprise#37679 Forward-Port-Of: odoo/enterprise#36729
Before this commit, the move was set to sent before calling send_success_mail. As send_success_mail would early return if the is_move_sent was true, the email would never be sent. Forward-Port-Of: odoo/enterprise#37678
Original PR description
Before this commit, the move was set to sent before calling send_success_mail. As send_success_mail would early return if the is_move_sent was true, the email would never be sent. Forward-Port-Of: odoo/enterprise#37678
### Steps to reproduce - install l10n_mx_edi - print a payment receipt while not in a Mexican company You should see that invoices are not displayed on the payment receipt. opw-3031324 Forward-Port-Of: odoo/enterprise#37050
Original PR description
### Steps to reproduce - install l10n_mx_edi - print a payment receipt while not in a Mexican company You should see that invoices are not displayed on the payment receipt. opw-3031324 Forward-Port-Of: odoo/enterprise#37050
When performing the extra joins we need to ensure the first join with the model table is correctly done by res_id and res_model_id. Forward-Port-Of: odoo/enterprise#37628
Original PR description
When performing the extra joins we need to ensure the first join with the model table is correctly done by res_id and res_model_id. Forward-Port-Of: odoo/enterprise#37628
To reproduce: 1/ Post an invoice with the Avatax fiscal position 2/ Click “Generate a Payment Link” in the action dropdown 3/ An Avatax error is shown mentioning “DocStatus is invalid for this operation” Odoo calls `button_update_avatax` with `commit=False` in the `payment.link.wizard` _inherit. This shouldn't happen when the invoice is committed because: - From Avatax's view we try to "uncommit" because of `commit: False`, and - We don't want to recompute the taxes anyway, the invoi
Original PR description
To reproduce: 1/ Post an invoice with the Avatax fiscal position 2/ Click “Generate a Payment Link” in the action dropdown 3/ An Avatax error is shown mentioning “DocStatus is invalid for this operation” Odoo calls `button_update_avatax` with `commit=False` in the `payment.link.wizard` _inherit. This shouldn't happen when the invoice is committed because: - From Avatax's view we try to "uncommit" because of `commit: False`, and - We don't want to recompute the taxes anyway, the invoice is posted Excluding posted invoices in `payment.link.wizard` was considered but is trickier because it's used both on `sale.order` and `account.move`. Changing the signature of private functions is allowed but discouraged in the stable policy. Not changing the signature was also considered but would be less clean and it's unlikely anyone overrode `_send_to_avatax`. opw-3136249 Forward-Port-Of: odoo/enterprise#37649 Forward-Port-Of: odoo/enterprise#37153
We can have a salary cost (so misc entries) capitalized. So, we need to be able to create assets with these. So, the condition on the domain on `original_move_line_ids` has to be lighter, to allow miscellaneous entries. task-3178241 Forward-Port-Of: odoo/enterprise#37666
Original PR description
We can have a salary cost (so misc entries) capitalized. So, we need to be able to create assets with these. So, the condition on the domain on `original_move_line_ids` has to be lighter, to allow miscellaneous entries. task-3178241 Forward-Port-Of: odoo/enterprise#37666
Forward-Port-Of: odoo/enterprise#37603
Original PR description
Forward-Port-Of: odoo/enterprise#37603
Steps to reproduce: - Install Accounting, Payroll (in this order!!) - Payroll > Payslips > All Payslips > Create - Employee = Ronnie Hart > Compute Sheet > Create Draft Entry - Under the Other Info tab, you can see the created accounting entry - Refund, select the refund payslip > Create Draft Entry - Check the refund accounting entry Issue: The refund accounting entry is a copy of the original, and not its inverse. This happens because of an unintentional change in 6e3c35a11239
Original PR description
Steps to reproduce: - Install Accounting, Payroll (in this order!!) - Payroll > Payslips > All Payslips > Create - Employee = Ronnie Hart > Compute Sheet > Create Draft Entry - Under the Other Info tab, you can see the created accounting entry - Refund, select the refund payslip > Create Draft Entry - Check the refund accounting entry Issue: The refund accounting entry is a copy of the original, and not its inverse. This happens because of an unintentional change in 6e3c35a112393921600cbb6efa56531f860e1833, which reverted the correct behaviour added in 25b74bc9d7102797c7ef76faef46138576ef9aa5. opw-3107841 Forward-Port-Of: odoo/enterprise#37620 Forward-Port-Of: odoo/enterprise#36642