Monday, November 6, 2023
59 changes · 17.0
Resolved issues and error corrections
Creating a server action for webhook notifications without selecting a model no longer triggers an error. This helps users configure automations more smoothly and corrects the sample payload field naming shown for webhooks.
Original PR description
**Description of the issue/feature this PR addresses:** Fix _compute_webhook_sample_payload. **Current behavior before PR:** Create a new Server Action.Leave the model empty, change type to 'Send Webhook Notification', an error raised <img width="824" alt="image" src="https://github.com/odoo/odoo/assets/5561864/90fb78b8-eb24-4bb1-9d5a-e0e6593bad3b"> **Desired behavior after PR is merged:** Stop raise the error, also the 'id' should be '_id' --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update restores a missing mail service connection needed by the web mail component. It helps prevent failures when opening or interacting with message threads, improving reliability for users who depend on Odoo conversations.
This fix removes a misleading lot/serial number placeholder that made copying and pasting lot names confusing. It also opens related stock quantity views with a default focus on items that are actually available, helping users avoid customer-delivered or zero-quantity records.
Original PR description
It's not possible to copy paste in the lot_name directly. It has been remove since the import button. Also add by default a search on hand in the quant view from the stock.move.line. We don't want to show quant already send to customer location or without quantity 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
Website editors can now edit links even when the linked page returns an error or is unreachable. Instead of showing an error, Odoo displays a simpler link popover without extra preview details such as the page title or favicon.
Original PR description
Since commit [1] removed `legacyRejectPromiseHandler()`, trying to edit a link leading to an HTTP error triggers an "Uncaught Promise" error. This commit makes sure such links do not cause a traceback: the link popover is just less detailed (no title, favicon). [1]: https://github.com/odoo/odoo/commit/fcb16a3b1bd373726ffb54f0fbe41fb6d1784769 task-3584686
This fixes an issue where newly created website shop categories could appear without their proper display name. It helps staff manage online store categories more reliably and avoids confusing labels in the website sales setup.
Original PR description
task-3582238
This fix restores the ability to edit the extra information section during website checkout. Businesses can once again add or adjust fields there while keeping the updated checkout button styling.
Original PR description
The extra_info template was no more editable due to a t-call for the CTAs in the template. To be able to add fields we need to remove the t-call and apply the buttons manually. This is due to the checkout redesign: a5899db8e12af29bd311db75473ce76bfa91d641 This commit applies the previous navigation buttons while adapting the styling to the checkout redesign. task-3582219 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Point of Sale product form will continue showing the Accounting/Invoicing tab for all product types. This ensures users can still configure sales taxes and accounting details for combo products, especially when included items may use different taxes or localization rules.
Original PR description
In this commit https://github.com/odoo/odoo/commit/00dcc575b8af5bee5204c45b80290a8e59fe10f9 they added an invisible condition of the accounting tabs (in the product view). After discussion with the PoS product owner, there is still some doubts on how combos product will be manage for the accounting tab (specially with localisation). But if we remove the Accounting/Invoicing tab, the user will be completely incapable to configure sales and taxes when combo products include products with different taxes. As we have doubts, we prefer keeping the tab by default no matter what the product type is. task: 3581797 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fixes an issue where invoices linked to a sales order were not displayed in the customer portal. This helps customers access their invoice information directly from the sales order page, reducing confusion and support requests.
Original PR description
task-3584770 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fixes a Stripe checkout issue that could block payment when a customer switched between multiple payment methods before paying. Stripe is now initialized once per payment flow, keeping checkout consistent and reducing failed payment attempts.
Original PR description
Steps to reproduce: 1. Activate Stripe and at least two payment methods 2. Click on the first pm 3. Click on the second pm 3. Select again the first one and try to pay The bug was caused by reinstantiation of stripeJS for each payment method. So that each stripe element was created from different stripeJS object which raised the following error from Stripe: "Invalid value for stripe.confirmPayment(): the 'elements' provided was created by a different Stripe instance. Please use the same Stripe instance to create the 'elements' and call stripe.confirmPayment()" After this commit StripeJS object is instantiated only once.
Restaurant point-of-sale configurations now create the needed default floor and table more reliably when demo data is not installed. This prevents duplicate setup records and helps new restaurant POS setups work as expected; discount products are also handled as special POS products.
The website blog navigation now lines up correctly with the rest of the page layout. This creates a cleaner, more consistent browsing experience for visitors and fixes a visual issue in the portal and blog styling.
Original PR description
Extracted from https://github.com/odoo/odoo/pull/120302#discussion_r1346173626 Prior to this commit, the navigation of `website_blog` wasn't correctly aligned. This commit reworks the alignment to match the page layout. task-3097005
The accounting dashboard’s menu has been simplified by removing unclear options and showing certain journal actions only when they apply to the bank feed setup. This helps users find relevant actions faster and reduces confusion when managing accounting journals.
Original PR description
1. Remove some options from the burger menu to make it more clear. 2. Make some actions on the journal's dashboard card conditional on the Bank Feed type. task-id: 3573286
Fixes an issue where inserting analytic items into a spreadsheet could show errors in the header row. This helps accounting users export and review analytic data in spreadsheets without confusing or broken column labels.
Original PR description
How to reproduce: * Install Accounting and Documents * Accounting > Configuration > Settings > check Analytic Accounting * Accounting > Accounting > Analytic Items * Cogs > Spreadsheet > Insert List Issue: The header in the spreadsheet displays errors.
Employees will no longer be automatically assigned the office as their default work location, leaving it unset unless specified. The calendar now also allows default work locations to be removed, and a typo fix restores correct handling of work location exceptions.
Original PR description
This commit changes the default worklocation set for the employee from "office" to false. Also, this commit adds the possibility to delete a default worklocation from the calendar view. A typo is also fixed from "exception" to "exceptions" which was causing a bug returning the worklocations. task-3584193 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
Reception screens now hide the source package column, which was not relevant for incoming deliveries. This reduces visual clutter and helps warehouse users focus on the information they need when receiving goods.
Original PR description
source package shouldn't be visible in reception --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
PayPal payments through Adyen now receive the correct payment amount in the checkout setup, preventing failures on payment links such as Euro invoices. Related payment form data handling was also adjusted so inline form values remain distinct across supported payment providers.
Original PR description
Steps to reproduce: 1. Create a company with currency as Euros. 2. Set up Adyen on that company with the test credentials and enable paypal. 3. Create an invoice with the currency in Euros. 4. Generate a payment link. 5. Attempt to pay on that payment link with paypal. After this commit the Adyen checkout configuration is correctly set up which allows to pay with PayPal opw-3543970
The attendance menu has been reorganized to make information easier to read and navigate. Added spacing and a cleaner layout reduce clutter, improving the day-to-day user experience for employees and managers.
Original PR description
This PR fixes the layout of the hr attendance menu. Prior to this commit, the layout was a bit cluttered and had a lack of white space, making it difficult for the user to extract the information he needed. To fix these issues, we adapt the design of the menu, mainly by reorganizing the layout and adding more white space. With this commit, we were also able to clean the files, reducing the number of lines needed to achieve a good visual result. task-3577098
The skills section now shows text alongside the report icon, making it easier for users to understand what the link does. This reduces confusion when opening employee skills reports.
Original PR description
Prior, there was only icon and it was not clear enough. 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 fixes an issue in the website editor where saved snippets could lose their mobile or desktop visibility settings when reused. Users can now drop saved snippets without unintentionally showing content that was meant to stay hidden on specific devices.
Original PR description
Since [1] when device visibility became a visibility option, when dropping a snippet that contains device-invisible blocks, all those blocks were made visible. This commit makes that behavior limited to blocks that are not device-invisible. (E.g. when dropping a popup) Steps to reproduce: - drop a Columns snippet - hide a column on mobile - hide a column on desktop - save snippet - drop saved snippet in either desktop or mobile preview => All columns were shown with the `o_snippet_override_invisible` effect on the conditional ones. [1]: https://github.com/odoo/odoo/commit/3103e0553011b5c1f4078972d7a88fa3fd4068b2 task-3538535
Fixes an issue in the Website app where URL suggestions could be hidden behind the Add Menu Item dialog. This makes editing website menus smoother by ensuring users can see and select autocomplete suggestions as intended.
Original PR description
Since this fix[1] of the overlapping. The `UrlAutocomplete` wasn't working as expected, The `AutoCompleteWithPage` dropdown are displayed behind the dialog when it was inside a dialog. Steps to reproduce: * Open the `Website` app * Click on `Site` > `Edit Menu` > `Add Menu Item` * Start to type in the url field, the dropdown is displayed behind the dialog. => bug Link [1]: https://github.com/odoo/odoo/commit/9682cfa174fb39ec9d9874951ea9ee2884058d96
Employees will no longer automatically receive “office” as their default work location, leaving it unset unless chosen. Managers can also remove default work locations directly from the calendar, reducing manual cleanup and improving flexibility for hybrid work planning.
Original PR description
This commit changes the default worklocation set for the employee from "office" to false. Also, this commit adds the possibility to delete a default worklocation from the calendar view. task-3584193 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
Opening a message thread no longer briefly jumps or flickers while messages and the saved scroll position load. This improves the user experience in Odoo Discuss and other mail-based conversations by making thread display feel steadier and more polished.
Original PR description
The `onWillStart` hook that was used in the thread component but was replaced by the `onMounted` hook. Indeed, fetching the messages in the `onWillStart` hook was leading to an infinite loop (props updated as a side-effect of the `onWillStart` hook). After messages are loaded, the scroll position of the thread is restored. Since this is done after the component is mounted, another render is triggered and results in a flicker when opening the thread. This commit fixes this issue by waiting for the thread to be mounted and for the scroll position to be restored before showing the message list. Before:  After: 
Imported modules that include their own icon now load that icon from the stored attachment instead of looking for a missing file on the server. This prevents an error during module import and makes the import process more reliable for administrators.
Original PR description
With normal module, the icon is always loaded from the filesystem but when importing a module that contains a module icon (by default in static/description/icon.png) it crash with a `FileNotFound` exceptions because the image is not available on the filesystem but as an ir.attachment. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Loading earlier messages in Discuss no longer reverses their order. This keeps conversation history readable and prevents confusion when users scroll back through past discussions.
Original PR description
Discuss models use relationnal fields. Since [1], the implementation of the `unshift` method changed for `many` fields. The new implementation is incorrect: unshifting several records resultis in an insertion on the inverse order which differs from the native implementation. This issue broke the loading of older messages in discuss: older messages are inserted with the `unshift` method thus in the inverse order. [1]: https://github.com/odoo/odoo/pull/136539
This fixes a manufacturing order status display issue when generating serial numbers for finished products. Orders with all required components reserved now continue to show as ready to produce, avoiding unnecessary confusion for production teams.
Original PR description
To reproduce: - Set tracking mode on Table Leg to no tracking and add 100 to inventory - Create MO for table with quantity more than one and confirm - Click the "+" button to generate a serial Current behavior: The reservation state of the MO goes to "available" in orange, indicating its components are not all assigned. Expected behavior: The reservation state of the MO stays "available" in green, indicating the MO has all of its components assigned and is ready to produce. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change separates how imported module dependencies are collected from how they are displayed. It helps Odoo reuse the dependency list more reliably in SaaS-related flows while keeping the user-facing behavior unchanged.
Original PR description
Since we need to get the list of dependencies for the saas (and not noly a Text of the module names, we split the function to be able to easily get the list of dependencies. 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
Forum user avatars now display with the correct proportions instead of appearing stretched when the original image is not square. The avatar image quality was also improved, making forum pages look cleaner and more professional.
Original PR description
This PR allows avatars that would not be squared to be rendered with a correct aspect ratio inside Forum. Before these changes, if the user avatar was not uploaded in a squared size, it would be stretched while being rendered inside the forum UI. To solve this issue, we simply add the `o_object_fit_cover` class to these avatars, ensuring they are well rendered. We also changed the resolution to 128x128, to provide a better render. task-358013
The search bar now keeps its icons and text properly aligned when users hover over filter chips, even when Discuss is not installed. A shared background style was moved into the core web interface so the behavior is consistent across setups.
Original PR description
When discuss is not installed, hovering a facet in the searchbar makes the cog overlap the icon/text. This is due to the `o-bg-inherit` class which is set in the mail module. Therefore if discuss is not installed, the SCSS for the background doesn't exist. This commit moves the `o-bg-inherit` as a new utility class `bg-inherit`, allowing it to be used even if no apps are installed. Therefore this commit also renames the occurences of `o-bg-inherit` into `bg-inherit`. task-3575837  --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Employees no longer receive “office” as an automatic default work location when no location is set. Users can also remove default work locations from the calendar, and a typo fix restores correct work location retrieval.
Original PR description
This commit changes the default worklocation set for the employee from "office" to false. Also, this commit adds the possibility to delete a default worklocation from the calendar view. A typo is also fixed from "exception" to "exceptions" which was causing a bug returning the worklocations. task-3584193 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
A portal alert link shown when customers preview quotations or invoices now uses the proper alert styling. This keeps the link color consistent with the message and avoids a distracting purple link in the customer portal.
Original PR description
When previewing a quotation or an invoice from a customer, an alert is displayed in the portal to go back to edit mode. The color of this link was previously using primary because it was missing the `alert-link` class. The primary being purple in the base theme since the frontend redesign it became more noticeable. task-3553146 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The point of sale combo configurator now presents items in a cleaner, more consistent layout. This makes product selection during checkout easier to read and more aligned with the rest of the interface.
Original PR description
This commit reviews the UI of articles in `ComboConfiguratorPopup` to maintain consistency with the rest of the layout. task-3582072 | Before | After | |--------|--------| |  |  | --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an internal automated test issue caused by a moved event registration desk menu. It helps keep nightly checks reliable and reduces noisy test logs without changing normal user workflows.
Original PR description
In f0b7838f the event_barcode was moved from enterprise to community, so the menu for the registration desk changed. As this menu was blacklisted in the clickbot, it started to fail in the nightly tests. While at it: * remove useless and noisy log * log when a menu is skipped instead of telling that it was tested
This fix prevents errors when setting employee homeworking locations on servers using non-English language settings. The system now identifies weekdays reliably, so location updates work consistently regardless of server locale.
Original PR description
After the rework of hr_homeworking, a traceback started occurring if the odoo server was running in an environment with a different locale. Since `.strftime("%A")` is a localized method, it wouldn't return the week name in english. This would cause a traceback because we would try to access fields that don't exist (e.g. jeudi_location_id). This commit changes the approach to get the weekday number and uses an array to access the correct field name.
task-3581762
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-prThis fix prevents crashes that could occur when users start creating certain new records, such as account groups or contact tags. It makes name display handling safer across several areas, improving reliability when opening new record forms or customized forms.
Original PR description
As of https://github.com/odoo/odoo/pull/114024, `display_name` is implicit in every form view (see the use of addFieldDependencies in the Form controller). Therefore, when you create a new record for…
As of https://github.com/odoo/odoo/pull/114024, `display_name` is implicit in every form view (see the use of addFieldDependencies in the Form controller). Therefore, when you create a new record for this model, it calls the first `onchange`, which will compute display_name for a new record (id without origin). Some `_compute_display_name` don't handle new records correctly and raise a traceback. These models are sometimes directly accessible:
- Accounting > Account Group > New => Traceback
- Contact > Contact Tags > New => Traceback
Other models are inaccessible by default (no view to access or create a new record), but if someone creates a view for them with studio (or modifies an existing one to allow creation):
- `crm.iap.lead.role`
- `crm.iap.lead.seniority`
- `chatbot.script.answer`
- `payment.token`
Change the code of `_compute_display_name` on these models to be more defensive and avoid (potential) tracebacks. Similarly, change the `convert_to_display_name` of `fields.Datetime` to take into account `None` value.
Enterprise: https://github.com/odoo/enterprise/pull/49721
#### Test to find these issues
```python
@tagged('-at_install', 'post_install')
class TestEveryModel(TransactionCase):
def test_display_name_new_record(self):
for model_name in self.registry:
model = self.env[model_name]
if model._abstract or not model._auto or model_name in IGNORE_MODEL_NAMES:
continue
with self.subTest(
msg="`_compute_display_name` doesn't work with new record (first onchange call).",
model=model_name,
):
# Check that the first onchange with display_name works on every models
# OR it will fail anyway when people will use click on New
fields_used = model._fields['display_name'].get_depends(model)[0]
fields_used = [f.split('.', 1)[0] for f in fields_used]
fields_spec = dict.fromkeys(fields_used + ['display_name'], {})
with contextlib.suppress(UserError):
model.onchange({}, [], fields_spec)
```The Settings page on small screens now shows the active tab with clearer text contrast. This makes the interface easier to read and avoids a confusing visual mismatch for mobile users.
Original PR description
This PR fixes a contrast and readability issue on the active tab within Settings on small devices. Prior to this commit, an active tab on mobile view would use a primary background, while nothing would be declared for its text color. This would cause readability issue, with a dark text on a primary background. To avoid this kind of issue, we set a `text-bg-primary` class to our button to ensure it gets readable, and also set a `shadow-none` to prevent the `tip` of the tab to appear in mobile, since it would use another color. | 17.0 | This PR | |--------|--------| |  |  | task-3580676
The web test automation component now fully stops all background monitoring, including activity inside embedded frames. This prevents automated test runs from ending too early, helping ensure all relevant tests are executed and results are reliable.
Original PR description
The MacroEngine has a stop function that allows to completely disable it. Before this commit, it correctly disconnected the "main" mutation observer, but it didn't disconnect the mutation observer for iframes. In web_tour tests, we mock the MacroEngine to stop it at the end of tests, but this didn't stop the iframe mutation observer. This had an highly undesirable side-effect in tests: the qunit suite stopped during mass_mailing tests, because the iframe mutation observer detected a change which produced the log of "test successful", which ended the whole suite. Some tests were thus never run anymore (fortunately, we're only talking about a few qunit modules).
The Stock app now shows the parent location dropdown at the normal field text size instead of inheriting the oversized heading style. This makes the location form easier to read and keeps the interface visually consistent.
Original PR description
As the parent location in the location form is in an h2 tag, the dropdown was also using the h2 font size. It should not 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 fix resolves an issue where rental product prices were not updating based on the rental period selected on the product page. The system now properly loads the necessary rental tools and uses cart dates as a fallback when rental dates aren't available, ensuring customers see accurate pricing for their selected rental periods.
Original PR description
Before this commit, some tools of website_sale_renting were broken due to a loading problem of the overrides of the Variant mixin. For instance, the price on the product page was not depending on the rental period anymore. We now force them to be executed by prepending the js files in the manifest. Furthermore, the dates were not always given in the context. In this case, the fallback is on the cart dates, if any task-3570178
This fix prevents error messages from appearing when users create new records in certain product and social media features. The system was trying to display names for incomplete new records, which caused crashes in some cases. The code now handles these situations more gracefully.
Original PR description
As of https://github.com/odoo/odoo/pull/114024, `display_name` is implicit in every form view (see the use of addFieldDependencies in the Form controller). Therefore, when you create a new record for this model, it calls the first `onchange`, which will compute display_name for a new record (id without origin). Some `_compute_display_name` don't handle new records correctly and raise a traceback. One is directly accessible: - Products > Open TaxCloud Category field > New => Traceback Other models are inaccessible by default (no view to access or create a new record), but if someone creates a view for them with studio (or modifies an existing one to allow creation): - `product.avatax.category` - `social.post.template` Change the code of `_compute_display_name` on these models to be more defensive and avoid (potential) tracebacks. Community: https://github.com/odoo/odoo/pull/139592
Fixed an issue where comment markers were appearing in exported or printed articles, creating visual clutter. The fix applies comment styling only to screen displays, ensuring printed documents are clean and professional without unnecessary comment annotations.
Original PR description
This commit fixes a bug where when a user would try to export an article the anchors for comments were still stylized. This led to printing documents with unnecessary noise in the article. Now, we added the media css query `@media screen` for comment anchors so that we apply the style when using a screen. Removing the style from the printed document. task-3572009
This update simplifies the accounting dashboard by removing unnecessary menu options and making certain actions appear only when relevant to your bank feed type. This makes the dashboard cleaner and easier to navigate by showing only the options you actually need.
Original PR description
…ounting dashboard - burger menu cleanup 1. Remove some options from the burger menu to make it more clear. 2. Make some actions on the journal's dashboard card conditional on the Bank Feed type. task-id: 3573286
This update fixes a bug in how account reports calculate totals below line items, which was incorrectly matching unrelated line IDs that happened to share similar naming patterns. The code has also been improved by replacing hardcoded separators with a named constant, making the system more maintainable and less prone to similar issues in the future.
Original PR description
[FIX] account_reports: totals below To add a total below line, we go through all the lines and check if the current line id does **not** start with the total below parent id line. If it's the case, we add it before adding the line. This makes sense because the total below should be the last child of a line. The problem is that you may have cases where the line id start with the total below parent id even tho they are not related. For example, if the line id is something like x|y-14 and the total below parent id is x|y-1. To fix it, we check if the line id does **not** start with the total below parent id **ending with** the line id hierarchy separator. [REF] account_reports: line id hierarchy delimiter Replaces the line id hierarchy delimiter `|` used in the construction of line ids by a constant named LINE_ID_HIERARCHY_DELIMITER with the same value. Forward-Port-Of: odoo/enterprise#49971 Forward-Port-Of: odoo/enterprise#49804
This update fixes a bug where automated tests were failing when run in months other than October due to hardcoded dates. The fix ensures tests work reliably regardless of the current month. Additionally, unnecessary logging has been removed to reduce log file sizes and improve performance.
Original PR description
This commit, fix the issue that some tests fails on other month than October, this occurs because the current date wasn't patched on the tests. Moreover, this commit removes the log "Clicking on: Control Panel menu", this log is not very important, and can increase significantly the size of the log.# with '#' will be ignored, and an empty message aborts the commit. Forward-Port-Of: odoo/enterprise#49988
This fix corrects how invoice totals are calculated in Spain's mod 349 tax report when invoices contain negative line items. Previously, the system was incorrectly summing both positive and negative line amounts, resulting in overstated invoice totals being reported to tax authorities. The fix ensures only the actual invoice total is reported by properly handling negative adjustments.
Original PR description
To reproduce the issue: 1) On a Spanish company, create a customer invoice, so that: - it has a line at 100, and another negative one at -42. - it uses the default Spanish sales tax of 21% on both…
To reproduce the issue:
1) On a Spanish company, create a customer invoice, so that:
- it has a line at 100, and another negative one at -42.
- it uses the default Spanish sales tax of 21% on both lines
- in is made on a non-Spanish European partner
- it defines a value in mod 349 type; E, for example
=> the total of the invoice is hence 70.18€
2) Post the invoice
3) Open mod 349 for the period corresponding to the invoice date.
===> The invoice is reported with an amount of 112.18€, which is wrong.
This happens because the domains of the report line include lines that have debit>0. In our example, two lines are debit:
- 70.18, on the receivable account
- 42, corresponding to the negative line
For these lines, we want to use the total of the invoices/refunds, so instead of just counting on selecting one side of the move (and ignoring the case of the negative lines), we should consider the payable/receivable lines only.
OPW 3559094
Forward-Port-Of: odoo/enterprise#49975
Forward-Port-Of: odoo/enterprise#49622This update fixes a visual spacing issue in the Frontdesk module where drink titles were appearing too close to their images in the kanban view. While not noticeable with the current white background images, this fix ensures proper spacing will display correctly if image backgrounds change in the future.
Original PR description
This PR adds a missing space between the image and its title in the kanban view of Frontdesk. Prior to this commit, the title of a drink within the kanban view of frontdesk had no spacing. This was not especially visible since the default images are using a white background, but this would become an issue as soon as the image stop having a white or transparent background. To prevent this unexpected renderer, we simply add a `ms-2` class to our title, ensuring it will always be spaced correctly. task-3580511 | 17.0 | 17.0-frontdesk-add-missing-spacing-chgo | | ------------- | ------------- | | <img alt="image" src="https://github.com/odoo/enterprise/assets/128030743/df215d03-0ddd-4a07-ab3d-84dc01b47093"> | <img alt="image" src="https://github.com/odoo/enterprise/assets/128030743/6ef253b6-af05-4319-8ba2-8659a4dbf4d8"> |
This fix restores the correct height of grouped total rows in the Gantt chart view, which had been inadvertently changed by a previous update. The adjustment ensures that grouped totals display properly and maintain their intended appearance in the scheduling interface.
Original PR description
This commit brings the height of grouped totals rows back to their original value before it was wrongly modified by https://github.com/odoo/enterprise/pull/47981 task-3558040
Fixed an issue where the "last updated on" field in helpdesk tickets was not being refreshed when customers sent new messages through the portal. Now when a customer replies to a ticket, the last update timestamp correctly reflects the new message activity, helping support teams see the most recent customer interactions at a glance.
Original PR description
To reproduce ============ - Go to helpdesk tickets in a list view - Add the "last updated on" field - The customer should be a portal user (e.g. Joel Willis) - Answer to the ticket from the portal account of Joel Willis --> the "last update on" field is not updated when it should be Problem ======= - when receiving multiple message from customer we don't modify anything on the record, that's why `write_date` is not updated. Solution ======== when receiving new message, trigger `write` method without values to force updating `write_date` opw-3482215 Forward-Port-Of: odoo/enterprise#49648
This update resolves test failures in the Luxembourg monthly declaration process by moving the account representative field from the payroll module to the reports module, where its required reporting functionality is located. This ensures the field is properly available when needed for monthly declarations.
Original PR description
Issus on several tests in test_monthly_declaration.py due to account_representative_id called in l10n_lu_hr_payroll. This field depends on action report installed with l10n_lu_reports. Forward-Port-Of: odoo/enterprise#49991
A configuration button next to report filters was not fully clickable - only the icon was responsive while the surrounding background was not. This fix makes the entire button area clickable, improving usability when accessing report configuration settings.
Original PR description
In this commit: https://github.com/odoo/enterprise/pull/50142/commits/1df7c45a2f56a70ae7d1d4aa90f9d0aa1a34cd36 We added a button next to the filters that will redirect to the configuration page of the report. The problem was that only the cogs was clickable and not the surrounding background.
This update fixes several issues in the rental sales module including preventing duplicate warehouse rules when using multi-step inventory processes, removing outdated code that no longer works with current system versions, and improving consistency in the settings menu text. These changes ensure the rental feature works smoothly with other inventory modules and provides a better user experience.
Original PR description
- added a check on rule creation in stock_warehouse to avoid duplicates of the push rule when switching between multisteps options this happens when modules which remove the initial pull rule (e.g. mrp, purchase_stock) are installed along with sale_stock_renting - removed _set_quantities_to_reservation because the parent function doesn't exist anymore. - removed write because it doesn't bring anything and a standard SO doesn't do that anyway - Changed text in the Configuration>Settings menu to match rest of UI texts
This fix resolves an issue where LinkedIn demo posts were being logged twice in the activity feed. The problem was caused by the post status being updated in two different places, triggering duplicate logging. By removing the redundant status update, posts now log correctly only once.
Original PR description
**Before this PR:** When a user tries to post a new post with demo data of LinkedIn, the chatter is also logged twice. **Reason:** The state is updated twice (in the _post_linkedin and _post_demo methods) and due to that, the _check_post_completion method is called twice. We have solved this issue by removing the state update in the _post_linkedin method. **After this PR:** The Chatter will be only logged once. **Task**-3459739 Forward-Port-Of: odoo/enterprise#49047
Fixed how French balance sheets display earnings carried forward and current year results to align with standard accounting practices. The changes ensure that earnings from previous years and current year results are properly categorized and displayed in real-time, making financial reports more accurate for French companies.
Original PR description
In the French balance sheet, there are two lines called Report à Nouveau and Résultat de l'Exercice. The normal accounting practice is to: - at year end, debit the Unaffected Earnings account and…
In the French balance sheet, there are two lines called Report à Nouveau and Résultat de l'Exercice.
The normal accounting practice is to:
- at year end, debit the Unaffected Earnings account and credit the Résultat de l'Exercice account
- at the affectation of earnings (which typically happens 3-4 months after year end), debit the Résultat de l'Exercice account and credit the Reserves, Dividends and Report à Nouveau accounts.
This commit aims to handle those two lines in a sensible way for real-time accounting:
- the Résultat de l'Exercice line always corresponds to the current year's effective Résultat de l'Exercice (thanks to the cross-report to the P&L)
- the Report à Nouveau line is composed of:
- previous years' earnings that were not affected by a closing entry to any equity account,
- the balance of the Résultat de l'Exercice account, which contains earnings from previous years that were closed, but have not been affected to any other Equity account, and
- the balance of the Report à Nouveau account proper.
Task: 3288626
Forward-Port-Of: odoo/enterprise#42351This update fixes visual alignment issues in the Knowledge sidebar where buttons had inconsistent spacing and weren't properly aligned with other sidebar elements. The fix ensures all buttons use consistent styling and are properly aligned to the left, improving the overall appearance and usability of the Knowledge interface.
Original PR description
This commit fixes two alignment issues in the Knowledge sidebar. > Buttons with the same design having different styling to space the icon from the text ; > Buttons not being aligned with the rest of the sidebar element to the left. To fix these issues, we adapt our two buttons to make them use the same styling. We also have to adapt a bit the overall styling of the sidebar to allow our buttons to be correctly aligned to the left. task-3582600
This fix resolves an error that occurred when users copied shifts from a previous week and then used the auto-planning feature. The issue happened because shifts with zero allocated hours were being processed but then removed from the database, causing the system to reference non-existent records. The fix ensures these empty shifts are properly cleaned up during the planning process.
Original PR description
Before this commit, when the user copies the shifts in the previous week and then auto plan, an error occurs because a record is used but it does no longer exist in the database. The reason is the shift unplanned will be used in the auto plan feature to plan it to an available resource but the problem is that shift has allocated_hours equals to 0 and so it is removed in the process since it means we have no longer something to plan for a specific SOL. This commit recomputes the `planning_hours_planned` to be sure the post_process, called in the create method, remove the shifts unplanned with allocated hours equals to 0. Forward-Port-Of: odoo/enterprise#50275
A previous update inadvertently made input field borders nearly invisible when hovering over form fields. This fix restores the proper border color so users can clearly see input field boundaries in all states, improving the overall usability of the interface.
Original PR description
This commit fixes an issue introduced in Commit[1]. Prior to Commit[1], the `border-color` property of our input was overridden in Enterprise to a `$o-gray-200` value. Commit[1] aimed to fix an issue inside list view where the "add item" button would have a grey background on focus state, by setting the background to a light gray color. Unfortunately, this commit didn't take into account the fact that `$o-form-lightsecondary` is also handling the `border-color` of our input in the hover state. By changing it to `$o-gray-100`, it made it barely impossible to notice. This commit reverts that change, ensuring the `border-color` remains visible in every state. Commit[1]: https://github.com/odoo/enterprise/commit/74bc70a35897274d0bd8d8e53abbdbb48174d8f0 task-3575546 Forward-Port-Of: odoo/enterprise#49832
This update fixes a technical issue in the Google Calendar integration where user names were losing their formatting when being processed. The system was converting formatted text to plain text, which could affect how user information displays in calendar appointments. This fix ensures the formatting is properly maintained throughout the process.
Original PR description
Doing `''.join(Markup)` converts to string
This update corrects how discount products are treated in the Point of Sale system, specifically in the Belgian blackbox and preparation display modules. The fix ensures discount products are properly classified as special items, which improves compliance and system accuracy for businesses using these POS features.
Original PR description
Related to: https://github.com/odoo/odoo/pull/141001
This fix corrects how inventory lots are transferred between company branches when processing inter-company sales and purchases. Due to recent changes in how inventory quantities are tracked, the system now properly replaces inventory records instead of adding to them, ensuring accurate stock levels across your organization.
Original PR description
Following the quantity-pocalypse, the way quantities are counted in the stock moved lines have changed, meaning we can't simply add new move lines to the inter-company reception as it was done before. Instead clears the old move lines and replaces them with ones having values from the original delivery.
This update corrects the server address URL used by the Belgian CodaBox integration to follow proper URL formatting standards by removing underscores. This ensures the integration works correctly with the IAP (In-App Purchase) service and maintains compatibility with web standards.
Original PR description
URL should avoid _ in them, so the url was changed