Daily updates from Odoo
Thursday, February 29, 2024
29 changes · saas-17.1
New functionality added to Odoo
This update introduces direct integration with Starshipit, a leading fulfillment provider specializing in Australia and New Zealand. Users can now automatically receive shipping rates and options through Odoo, streamlining the order fulfillment process for online businesses. This enhancement supports key markets and improves shipping efficiency.
Original PR description
Starshipit is the leading provider of integrated and automated fulfillment solutions for online businesses integrating with the leading carriers used in Australia and New Zealand, such as Australia Post, DHL, Aramex, CouriersPlease, and more This PR will add support to integrate with starshipit directly in Odoo, providing rates and shipping for users who need it. Task ID # 3041982 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#135839
Enhancements to existing features
This update enhances how Odoo generates PDF reports by creating attachments more efficiently. Previously, attachment values needed to be manually overridden for some reports. This change introduces a new process to prepare these attachment values during PDF generation, ensuring consistent and accurate attachment creation without altering the core report functionality.
Original PR description
Description of the issue/feature this PR addresses: Previously, an `ir_actions_report` refactor landed on: - [ ] https://github.com/odoo/odoo/pull/85150 It totally makes sense to create `ir.attachment` from the streams if needed during PDF generation. For some of the projects we still need to override attachment values. This PR provides a hook to prepare attachment values needed for attachments creation during the pdf report generation. Nothing changes in the sense of business logic. Ping @smetl @xmo-odoo --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#153086 Forward-Port-Of: odoo/odoo#138159
This update makes it easier for developers to customize how clicks are handled within the Odoo dropdown menu. Previously, changes required extensive modifications, but now a simpler approach allows for quicker and more efficient updates. This improves the overall flexibility and maintainability of the Odoo web interface.
Original PR description
With this commit, overriding the `onWindowClick` function from `dropdown.js` becomes much simpler. Previously, it necessitated overriding the entire function, but now it can be done with minimal effort by just overriding this specific part. task-3717014 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155326 Forward-Port-Of: odoo/odoo#154315
This update enhances the testing of Odoo's email functionality, specifically focusing on how event attendee emails are sent in batches. The changes include new tests for batch email sending, improved test setup for event scheduling, and added checks for registration emails. These improvements ensure more reliable email delivery and scalability.
Original PR description
PURPOSE Mail: add tests for MailTemplate send_mail Several flows use MailTemplate.send_mail() in batch, notably event email scheduler which sends emails to event attendee in batch. This commit adds…
PURPOSE
Mail: add tests for MailTemplate send_mail
Several flows use MailTemplate.send_mail() in batch, notably event email
scheduler which sends emails to event attendee in batch. This commit adds
tests around 'send_mail' method of MailTemplate model
* add tests for batch: it is currently not supported hence using a loop but
batch is going to be added soon, allowing to test the batch version works
as intended;
* add query counters, notably for batch mode and when dynamic reports are
involved in templates;
Event: improve mail scheduler tests
Make them easier to improve and modify
* use a dedicated setup (allowing to add specific unit tests on test data);
* move initial asserts into its own unit test (to keep other tests shorter);
* use available mocks for freezetime and sql.now;
Then add tests for registration emails, to check what happens for communication
scheduled right at registration time.
LINKS
Part of Task-3764894: Event: Allow using cron triggers for communication
Part of Task-3764891: Mail: Batch-ize MailTemplate send_mail
Part of Task-3164278: Mail: Batch send: ensure limit, avoid force
Part of Task-3084943: Event: Improve communication scheduler scalability
Forward-Port-Of: odoo/odoo#155717Resolved issues and error corrections
This update corrects a technical issue within the HR Skills module that caused errors when accessing a duplicate tab name ('Work Information') in the employee record view. Previously, the system would crash due to a conflicting XML definition. This fix ensures the tab is removed smoothly without any errors, improving stability and user experience.
Original PR description
Description of the issue/feature this PR addresses: When hr_skills is installed we have 2 tabs/page with the same name in xml (Work Information and Resume). As "Work Information" is defined in hr modules hr_skills must be updated.  - In employee form - Open studio - Click on "Work Information" tab/page - Remove "Work Information" tab/page view Current behavior before PR: - Traceback due to invalid xpath expression (or error depending of version and/or module installed - Invalid xpath due to duplicated name for a node Desired behavior after PR is merged: - Tab is removed without traceback --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#154776 Forward-Port-Of: odoo/odoo#154731
This update fixes an issue where route rules for dropshipping could be inconsistent between two companies. The change ensures that route company settings always align with the associated rule company, preventing errors and improving data reliability within the inventory management system. This maintains accurate stock tracking and order fulfillment processes.
Original PR description
### Steps to reproduce:
- Create two companies:
- (ex. Daughter Company)
- (ex. Mother Company)
- Install **Inventory** app and **stock_dropshipping** module
- In the settings of both companies:
- enable **Multi-Step Routes**
- enable **Dropshipping** option
- Using the **Daughter Company**, go to **Routes** > **Dropship** route
- When You try to set Company to Daughter Company, it's _**possible**_ to do so even thought the rules belonging to the Dropship route belongs to two companies: Daughter Company and Mother Company which is **_NOT_** consistent
### Discuss
- We constraint the route company to always be consistent with the rule(s) company and vice verca
opw-3648535
Forward-Port-Of: odoo/odoo#154403
Forward-Port-Of: odoo/odoo#149894This update corrects duplicated navbar and mega menu elements, improving website stability and user experience. The changes ensure consistent menu behavior across desktop and mobile views, addressing synchronization problems and preventing unexpected behavior during interactions.
Original PR description
This PR fixes issues linked to the new headers: - fix the duplicated navbar ids - consider Offcanvas instead of Collapse for "burger" menus - fix the header history, as some observed changes were breaking it (needed for the next commit, but should also be backported in earlier versions) - fix duplicated mega menu synchronization issues task-3609531 opw-3730165 Forward-Port-Of: odoo/odoo#146492
This update fixes a bug where the 'Validate' button was missing from the Pivot View in Timesheets. The changes enhance the Pivot component's flexibility, allowing for customized button layouts and ensuring the button is always displayed. This improves usability for users working with pivot data.
Original PR description
**Steps:** - Open Timesheets - Go to To Validate > All Timesheets - Pivot View is rendered **Issue:** The validate button is not rendered when the pivot view is loaded **Solution:** The changes…
**Steps:** - Open Timesheets - Go to To Validate > All Timesheets - Pivot View is rendered **Issue:** The validate button is not rendered when the pivot view is loaded **Solution:** The changes introduced in these files are aimed at enhancing the customization and flexibility of the Pivot component in the web application. By adding the buttonTemplate prop to the PivotController and utilizing it in the PivotRenderer template, developers can dynamically choose the template for rendering buttons within the pivot view. This change is particularly beneficial for scenarios where different button layouts or styles are required based on specific use cases or user preferences. Additionally, the introduction of a default value for buttonTemplate in the PivotView configuration ensures a smooth fallback mechanism if a custom template is not explicitly provided. Overall, these adjustments contribute to a more adaptable and extensible Pivot component, catering to diverse application requirements. **Task**-3623493 Forward-Port-Of: odoo/odoo#155547 Forward-Port-Of: odoo/odoo#147054
This update fixes an issue where channel mentions weren't consistently working across all messaging channels (channels, chats, and groups). The team has removed unnecessary data fetching and added a test to ensure channel mentions function correctly, particularly within live chat where access was previously restricted.
Original PR description
1. channel mention should work for channels, chats, and groups, even if there is a group restriction for the channel. 2. channel mention in livechat is disabled because the visitor can't get access to the channel. 3. remove the fetch and search for channel mentions in livechat so that there is no extra rpc call for unuseful data. 4. add a test for the channel mention in thread. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155380
This update resolves an issue where long attachment filenames in forms (like the 'Mail Template' field) caused labels to be incorrectly 'squashed' or truncated. The fix allows the form layout to handle longer filenames gracefully, ensuring labels are displayed correctly. This improves the user experience when uploading large files.
Original PR description
Since Odoo v16, we also use grid in the form layout (inner group). In a group we use the CSS `grid-template-columns` with the value of: * `fit-content(150px)`: for the first column (TLDR: col max…
Since Odoo v16, we also use grid in the form layout (inner group).
In a group we use the CSS `grid-template-columns` with the value of:
* `fit-content(150px)`: for the first column (TLDR: col max 150px)
* `1fr`: for the second column (TLDR: take the "remaining" max space)
```css
.o_form_view .o_inner_group {
grid-template-columns: fit-content(150px) 1fr;
}
```
These rules at the first glance seem correct.
But due to "big word"/language, some unbreakable text is overflowing, to avoid this, we have added the `text-break` BS class.
So now all text can be "squash"/wrap if there is no space available.
The problem is when we have a text be too long and unbreakable in the second column, the label (first column) is squashed to see only one or two characters.
In our case, the bug happens when we upload a file with a big filename to an "Attachement" (`many2many_binary`) field.
On the `many2many_binary` field there is a custom CSS rules:
```css
.o_attachment .caption {
white-space: nowrap;
}
```
that force the text to not wrap on the next line, and so the grid takes the width of the file name as its min value for the width of the second column, and "squash"/wrap the first column.
This commit fixes the issue by allowing the second column to be smaller than the `max-content` width using the css `minmax(0, 1fr)`.
Steps to reproduce:
* Open "Marketing automation" app
* Create a New campaign ("New" button)
* Click on "ADD NEW ACTIVITY"
* Select the "Mail Template" field
* Create and edit a "Mail Template"
* Click on the "Options" tab
* Upload an attachment with a long name => BUG, all labels (first column) are "squashed"
Note:
* the `text-break` class is equivalent to:
```css
.text-break {
word-wrap: break-word !important;
word-break: break-word !important;
}
```
* when we use `Xfr` (X a positive numeric value `1fr` in our case) outside a `minmax()` notation, the GRID specs[1] specifies that it should be converted to `minmax(auto, Xfr)`.
* also the `auto`[2] in the case of `minmax(auto, Xfr)`the value represents the largest minimum size (in our case, the file name).
[1]: https://www.w3.org/TR/css-grid-2/#valdef-grid-template-columns-flex
[2]: https://www.w3.org/TR/css-grid-2/#valdef-grid-template-columns-auto
task-3644267
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#155420This update ensures that customer names are consistently printed on reprinted receipts, resolving an issue where they were missing. This change aligns with user expectations and provides a more complete and accurate record of transactions, regardless of loyalty program usage.
Original PR description
Before this commit, due to a recent change, the customer name was not being printed on reprinted receipts. This was inconsistent with user expectations, as they expected to see the customer name on the receipt, regardless of whether a loyalty program was in place or not. With this commit, we ensure that the customer name is always printed on reprinted receipts, aligning the system behavior with user expectations. opw-3760165 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155543
This update resolves a previous issue where users couldn't successfully unsubscribe phone numbers from receiving SMS notifications. The fix ensures users can now properly blacklist numbers and opt out of SMS communications, improving the reliability of the mass mailing system. This was a follow-up to a previous bug fix.
Original PR description
**Description of the issue/feature this PR addresses:** Before this PR: Users encountered errors when attempting to unsubscribe a phone number from receiving SMS. After this PR: Now, issue has been fixed, allowing users to successfully blacklist numbers and opt out of receiving SMS notifications. issue raised from - (https://github.com/odoo/odoo/commit/adfdf5ab33e719a55f65e2d9ff34ff265fe1b579) task-3651401 Forward-Port-Of: odoo/odoo#152638
This update fixes a potential issue where point of sale orders were sometimes duplicated, particularly when using scales. The change relaxes a comparison rule to avoid errors caused by minor quantity rounding differences, ensuring order accuracy and preventing lost sales. This improves the reliability of the point of sale system.
Original PR description
Before this commit, it was possible to capture an order twice due to the rounding difference in quantity, especially when users use a scale. With this commit, it uses a more relaxed condition and remove the quantity from the orderline comparison. Given that the system checks the payments and with the same product and price units, it's unlikely that two orders will have the same payment amount. opw-3735436 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155513
This update fixes an issue where UBL invoice imports didn't correctly account for line quantities, leading to incorrect tax calculations. The fix ensures that fixed tax amounts are properly adjusted based on the quantity of items, improving the accuracy of imported invoices. A new test case has also been added to verify this functionality.
Original PR description
Fix import of invoices with fixed taxes, discount and quantity > 1. When exporting the UBL xml, we compute the fixed tax amount of the line and create a charge on the line with this amount (e.g. see the test). When importing this xml, we read the charges with code 'AEO' on each lines and use the `amount` and `name` to search the fixed taxes on the database. This issue is that we do not take the quantity of the line into account: if we have a line with quantity = 2, and the fixed tax amount = 1, the xml indicates a charge of 2. When we import the line, the amount of the fixed tax to be searched should be 2 / quantity = 1. In addition, add an test for the export and import of a line with quantity > 1, a discount, a fixed tax and a regular tax. opw-3717306 Forward-Port-Of: odoo/odoo#155468 Forward-Port-Of: odoo/odoo#153639
This update reverts a previous change that was no longer needed in the newer version of Odoo. The update ensures that sale prices are calculated correctly, as the new system now only sends essential data, eliminating unnecessary recalculations. This improves the efficiency and accuracy of sales transactions.
Original PR description
This reverts commit 789186a43c0234c7b3cb308b1b6673adeedbb308. The fix is not necessary in 17+ since the new onchange only sends the necessary information and not the whole x2m record data. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155550
This update resolves an issue where transient messages (temporary emails) were incorrectly showing a date in the message sidebar. The fix removes this display, ensuring transient messages are presented without extraneous date information. This improves the clarity and usability of the email interface.
Original PR description
**Before this PR:** Squashed transient messages had date displayed in the sidebar of the message. This was introduced by this commit: 631ae1c **After this PR:** Squashed transient messages would not have date in the message sidebar. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#154594
This update resolves a printing error that occurred when generating DIN5008 repair orders with a specific document layout. The fix removes a reference to a deleted field, preventing a traceback during the printing process. This ensures that repair orders can be printed correctly.
Original PR description
### Steps to reproduce * install `l10n_din5008_repair` * set the document layout to din5008 * create a Repair order and attempt to print it You should be met with a traceback. opw-3718479 Forward-Port-Of: odoo/odoo#153648
A recent test related to channel subscriptions was failing due to a timing issue between channel creation and bus subscription updates. This update adjusts the test's timing to ensure the channel is created before the subscription, resolving the test failure. This ensures the core subscription functionality operates correctly.
Original PR description
Since [1], the `Channel subscription is renewed when channel is added from invite` test was sometimes failing. The bus subscription is refreshed when the user joins a channel at the same time or after the initial bus subscription. Usually, the channel is created at the same time than the bus subscription. When it is not the case, the test fails. This PR fixes the issue by patching the date so that the channel is clearly created before the bus subscription. As a result, there will be no subscription initially. fixes runbot-57787 [1]: https://github.com/odoo/odoo/pull/153666
This update removes specific print-related CSS rules from the survey addon that were previously causing issues in the Odoo backend. These rules were designed for the frontend survey views and didn't impact the core Odoo interface. This ensures a cleaner and more stable Odoo experience.
Original PR description
PURPOSE ======= The survey addon assets contain some global rules for print mode, that are present in the global backend stack. In Odoo 15.2, we put these rules in `survey_templates_results.scss`.…
PURPOSE ======= The survey addon assets contain some global rules for print mode, that are present in the global backend stack. In Odoo 15.2, we put these rules in `survey_templates_results.scss`. Then, in later versions of Odoo we updated it wih more 'print mode' global rules. As these rules are specific to the survey addon, we don't want them to affect the (whole) Odoo backend. HOW TO FIX ========== It seems rules defined in `survey_templates_results.scss` are not used in survey backend views, but specific to frontend views. `survey_templates_results.scss` is also part of the `survey.survey_assets` bundle. This bundle is loaded only for the following frontend views: - Survey: main page (take survey) - Survey: custom 403 page - Survey: void content - Survey: login required - Survey: expired - Survey: Access Code page - Survey: print page - Survey: result statistics page Among them, views that are not intended to be printed are not negatively impacted by the css rules for print mode. A solution would therefore be to remove `survey_templates_results.scss` from the backend stack. see https://github.com/odoo/odoo/commit/03641610c2b4a6b832ea87795fd21e1d7af10b59 see https://github.com/odoo/odoo/pull/135683 see https://github.com/odoo/odoo/pull/146812 task-3666858 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155126 Forward-Port-Of: odoo/odoo#148296
This update brings the Odoo spreadsheet component to the latest version (17.1.6), addressing several technical improvements and bug fixes. These changes enhance the spreadsheet's functionality and stability, ensuring a smoother user experience within Odoo.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/b29861875 [REL] 17.1.6 https://github.com/odoo/o-spreadsheet/commit/684956d91 [FIX] Migration: Propagate datafilter correction on every version Task: 3728009 https://github.com/odoo/o-spreadsheet/commit/d5fb81831 [FIX] migration: Fix migration steps Task: 3771209 https://github.com/odoo/o-spreadsheet/commit/b794ec2c8 [FIX] Find&Replace: Do not reset the search when iterating through search results Task: 3743879 https://github.com/odoo/o-spreadsheet/commit/c16dbe42c [IMP] cssPropertiesToCss: don't use `Object.entries()` https://github.com/odoo/o-spreadsheet/commit/5a7a69ade [FIX] selection_inputs_manager: arrow keys when broken ranges https://github.com/odoo/o-spreadsheet/commit/cf70a5b00 [IMP] formula: add INT function Task: 3756478
This update ensures that tax information is correctly displayed on Point of Sale (POS) tickets in India, as required by local regulations. Previously, this crucial detail was missing, creating a compliance issue. This change ensures Odoo POS systems meet Indian tax reporting standards.
Original PR description
In India, it is mandatory to show the tax info This commit solves the issue where tax info was missing on POS ticket 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 fixes a calculation error in the Point of Sale module. Previously, taxes with multiple distribution lines were incorrectly multiplying the base amount, leading to inaccurate sales totals. This change ensures the base amount is calculated only once, resulting in correct tax calculations and improved sales reporting.
Original PR description
Before this commit, if a tax had multiple distribution lines, the base amount was calculated for each line. This resulted in the base amount being multiplied by the number of distribution lines. This issue has been resolved by ensuring the base amount is counted only once for each tax and line. opw-3696800 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#154783 Forward-Port-Of: odoo/odoo#152823
This update fixes a data error that incorrectly listed the phone codes for the Democratic Republic of the Congo (CD) and The Republic of the Congo (CG). The codes have been reversed to ensure accurate international dialing. This ensures correct contact information is recorded within the system.
Original PR description
Phone codes for the Democratic Republic of the Congo (CD) and The Republic of the Congo (CG) are the wrong way around, and ought to be reversed. This commit is based on a commit that was not merged in v14.0 in this PR: https://github.com/odoo/odoo/pull/133287 Forward-Port-Of: odoo/odoo#155557
This update fixes an issue where the correct analytic account wasn't being displayed when switching between assets. The previous code was using outdated data, leading to incorrect account assignments. This change ensures that assets are properly linked to the correct analytic accounts when navigating between them.
Original PR description
Steps to reproduce: - activate analytic - Create two assets with different analytic distribution - Open the first asset - Navigate to the second asset via the arrow Issue: The analytic account will not be displayed correctly Cause: In `jsonToData` the record used is the previous one. Solution: Use the record that will efectively be displayed opw-3698383 Forward-Port-Of: odoo/odoo#153681
This update corrects an issue where invoice totals were misaligned when printing invoices in the Arabic localization (l10n_ar). The fix adds more columns to the report to accurately display large invoice amounts. This ensures invoices are printed correctly and professionally for Arabic-speaking customers.
Original PR description
Steps to reproduce: [l10n_ar] - create an invoice with an invoice line having a big amount - confirm - print invoice Issue: The alignment of total is not correct Solution: In l10n_ar, we need more cols to be able to display the correct information. In the base report, the difference is not important visually (the line total is slightly longer) opw-3670830 Forward-Port-Of: odoo/odoo#152682
This update removes unnecessary code from the sale order process, streamlining how product warnings are handled. Previously, warnings were always loaded, even when products were already added to the order. This change ensures warnings are only added when specifically needed, improving efficiency and reducing potential confusion.
Original PR description
This is a fixup of: https://github.com/odoo/odoo/pull/149155 Warning is duplicated: https://github.com/odoo/odoo/blob/8ccde3f101cdb6ca41fe29cc5b4252f13745774a/addons/sale/models/sale_order_line.py#L1223-L1232 In the case where some products are already added to the SO before selecting the catalog, the warning props will always be loaded. However, since the warning props is a String but sale_line_warn can be false, it only need no be added if sale_line_warn is set. opw-3631511 Forward-Port-Of: odoo/odoo#155523
This update resolves an issue where users without access to the related record would receive an error when scheduling activities. The change removes a restriction that prevented activity assignment to users lacking access, ensuring activities can now be scheduled regardless of user permissions. This improves usability for scenarios where users need to view and manage activities related to records they don't directly own.
Original PR description
How to reproduce: - Install hr with demo data - Create a user without access to hr and turn it into an employee - Create a user for Abigail - Assign Abigail as manager of the new user - Click on…
How to reproduce: - Install hr with demo data - Create a user without access to hr and turn it into an employee - Create a user for Abigail - Assign Abigail as manager of the new user - Click on "onboarding plan" in the chatter of the new user - Then in the dialog, click on "Schedule" button You get the error "Assigned user test has no access to the document and is not able to handle this activity." because the new user has no access to the record employee on which those activities are scheduled. As activities for which the user has no access to the underlying record are now displayed in the systray (with no access to the record), we remove the check that prevent assigning an activity to a user on a record he has no access to. Technical note: before odoo/odoo#149965, activities scheduled manually were created with the flag "automated" set to True and when this flag is set the check that ensures that the user has access to the record is skipped. With odoo/odoo#149965, as the "automated" flag is set to False when scheduling activities manually, an error is trigerred if the user has no access to the underlying record. Here we always skip that test and mark the method as deprecated because the user can see the activity no matter the access he has on the underlying record. Task-3598836 Forward-Port-Of: odoo/odoo#155576
This update resolves an issue preventing Romanian companies from generating CIUS-RO XML invoices without a country code prefix on their VAT IDs. The fix adjusts how the system handles Romanian tax IDs, ensuring compliance with XML validation rules while allowing for the valid practice of not including the 'RO' prefix. This improves the usability of the CIUS-RO feature for Romanian businesses.
Original PR description
Previously, when exporting CIUS-RO XML and the supplier (company) or customer doesn't have a country code prefix on either their VAT or company ID, an error will be thrown preventing the user from…
Previously, when exporting CIUS-RO XML and the supplier (company) or customer doesn't have a country code prefix on either their VAT or company ID, an error will be thrown preventing the user from generating the XML. But after allowing the XML generating process, the XML is then rejected by the validator because of `BR-CO-09` rule: ```xml <assert id="BR-CO-09" flag="fatal" test="( contains( ' 1A AD AE AF AG AI AL AM AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BJ BL BM BN BO BQ BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CW CX CY CZ DE DJ DK DM DO DZ EC EE EG EH EL ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR SS ST SV SX SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS XI YE YT ZA ZM ZW ',substring(cbc:CompanyID,1,2) ) )">[BR-CO-09]-The Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) shall have a prefix in accordance with ISO code ISO 3166-1 alpha-2 by which the country of issue may be identified. Nevertheless, Greece may use the prefix ‘EL’.</assert> ``` In Romania however, there are multiple types of "Tax IDs", and it is perfectly valid in Romania to have a Tax ID without RO (country code prefix) in front of them. They are not a subject to paying VAT, and it should still be possible to generate CIUS-RO XML with their tax identifications. This commit aims to fix this behavior by applying some special treatment to Romanian partners when generating the XML: by modiying the TaxScheme ID. The error only raises when the detected ID is 'VAT'. This commit also fixes and clean some of the irrelevant constraints and tests previously written in `l10n_ro_edi`. task-id: 3649426 Forward-Port-Of: odoo/odoo#155252
This update fixes a bug where Kanban progress bars weren't showing the correct aggregated data when grouped by date or many2one fields. The fix ensures that the system accurately calculates and displays the aggregate values, improving the usability of the Kanban view. This also includes a related fix to the testing environment, allowing for more robust testing of this functionality.
Original PR description
Before this commit, in a kanban view grouped by a date(time) field, with progressbars and an aggregate field, after clicking on a bar to filter records, the aggregate value was always 0. This was due…
Before this commit, in a kanban view grouped by a date(time) field, with progressbars and an aggregate field, after clicking on a bar to filter records, the aggregate value was always 0. This was due to a mismatch when trying to find the value of the aggregate in the web_read_group result, as when grouped by a date or datetime field, the key is `fieldname:granularity`, and we were looking for the fieldname only. This commit fixes the issue. It also fixes the mocked version of read_progress_bar in the MockServer, s.t. we can correctly reproduce the scenario in tests, as in the previous version, keys in the returned object weren't computed the same way as in the real read_progress_bar (e.g., "14,Mitchel", instead of "Mitchel"). A similar fix has been done in [1]. This allows us to introduce a test when grouped by many2one, which doesn't work as of 17.0. [1] fd759f18d056844c486a68d0c394df5a03e789f0 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#155701 Forward-Port-Of: odoo/odoo#155524