Wednesday, January 11, 2023
21 changes · master
New functionality added to Odoo
The Odoo Enterprise backend can now be installed as a Progressive Web App, making it easier for users to launch it from supported devices like a regular app. This adds configurable app branding, updated icons, browser theme coloring, and the basic service worker needed for installability, while removing outdated mobile web metadata from project sharing pages.
Original PR description
This merge setups the backend (aka `/web`) as an installable Progressive Web App. task-3063485
Adds a new homeworking module to manage employee remote-work locations, schedules, exceptions, and related reporting. This helps HR teams track planned homeworking days and align work entries with those arrangements for clearer workforce planning.
Enhancements to existing features
YouTube social account information now includes the channel handle, making accounts easier to identify by their public username. This helps users distinguish channels more clearly when managing YouTube accounts in Odoo.
Original PR description
Purpose ======= YouTube added a "handles", a username to identify a YouTube channel. Add this "handles" in the social account information. Task-3098238
Code cleanup and technical improvements
The subscription dashboard has been reorganized into smaller, modern interface components, replacing older implementation patterns. This should make the dashboard easier to maintain and improve over time, with limited direct change expected for end users.
Original PR description
Currently in sale_subscription_dashboard, we have 1600 lines declaring multiple dashboards. This commit breaks the module into multiple OWL components, drops the usage of jQuery and seeks to modernize the code overall. task-2796525
Miscellaneous changes
Before this commit when you tried to create a private copy of an article the changes that were made to the said article were not saved beforehand. This means that the changes were not added to the private copy. Now we are saving the article if changes were made before copying it. task-3126137 Forward-Port-Of: odoo/enterprise#35608
Original PR description
Before this commit when you tried to create a private copy of an article the changes that were made to the said article were not saved beforehand. This means that the changes were not added to the private copy. Now we are saving the article if changes were made before copying it. task-3126137 Forward-Port-Of: odoo/enterprise#35608
The signing flow now shows a clear Close button on the Thank You dialog when users can continue, and displays helpful information when they cannot. This makes the document signing experience easier to understand and reduces confusion after completing a signature.
Original PR description
The Thank You dialog now has a proper Close button, if the flow can be continued. Otherwise, informational text is displayed. Also, this commit includes refactoring and fixes for related parts of the UI. task-3119741
Scale selectors in calendar, cohort, gantt, and grid views now have a more consistent look and behavior. This makes switching time scales feel more uniform across planning, payroll, cohort analysis, gantt, and grid screens, while also fixing selector issues that could cause crashes.
Original PR description
*: hr_payroll, web_grid This is commit improves the consistency of scale selectors in multiple views. It is the enterprise counterpart of PR (1), which moved the calendar selector to a new component. Since gantt and grid views conversions are not complete yet, only the xml structure has been ported to the legacy implementations of those views. For the next implementation, the ViewScaleButton component should be used instead. Some selectors in xpath have been fixed to prevent crashes. part of task #2867569 Community PR: https://github.com/odoo/odoo/pull/109090
The sales subscription flow no longer shows weekly recurrence options where they are not supported. This helps prevent users from selecting billing intervals that subscriptions cannot use, reducing confusion and setup errors.
Original PR description
Hide recurrence that have a week unit in SO's reccurence field. This is done because this is a subscription-only field and subscription does not allow recurrence with a unit shorter than a month. task-id : 3101590
Indian GST return workflows are expanded to support eFiling through Odoo's IAP services. Businesses can send and review GSTR-1 summaries, match GSTR-2B data, and view GSTR-3B reports more directly from Odoo, reducing manual compliance work.
Original PR description
GST return filing using IAP GSTR-1: Send and view a summary report GSTR-2B: Matching GSTR-3B: View the reports
The code allowing exporting the Swedish tax report to xml had not been properly converted by the new reports refactoring made for 16.0. Because of that, the export button was not shown on the report at all anymore. Forward-Port-Of: odoo/enterprise#35615
Original PR description
The code allowing exporting the Swedish tax report to xml had not been properly converted by the new reports refactoring made for 16.0. Because of that, the export button was not shown on the report at all anymore. Forward-Port-Of: odoo/enterprise#35615
In #89282 the category_id was added to the fleet.vehicle, but the salary configurator was only taking into consideration the category of the model. task-3127744 Forward-Port-Of: odoo/enterprise#35631
Original PR description
In #89282 the category_id was added to the fleet.vehicle, but the salary configurator was only taking into consideration the category of the model. task-3127744 Forward-Port-Of: odoo/enterprise#35631
**Description of the issue/feature this PR addresses:** Form view is not defined for the model sale.order.log and form view is set in the action and thus it shows odoo generated form view. 1. Subscriptions -> Subscription -> Open any record 2. Click on MRR smart button with records in it. 3. Click on tree view, form will be opened now **Current behavior before PR:** Showing odoo generated form view for the model.  **Desired behavior after PR is merged:** form view is not displayed for the users. Forward-Port-Of: odoo/enterprise#33434
This commit fixes a bug where when you would click on the refresh button on articles_structure and then access an article via one of the links, the structure would be reset to its previous state. This happened because the body of the article wasn't save in DB, now we are checking when the props are patched and if there was a modification and we save the record's data. task-3113212 Forward-Port-Of: odoo/enterprise#35283
Original PR description
This commit fixes a bug where when you would click on the refresh button on articles_structure and then access an article via one of the links, the structure would be reset to its previous state. This happened because the body of the article wasn't save in DB, now we are checking when the props are patched and if there was a modification and we save the record's data. task-3113212 Forward-Port-Of: odoo/enterprise#35283
Steps to reproduce: - Go to the Documents app > kanban view. - Select internal workspace - The workspace description is not displayed in the documents inspector. Issue: Folder description is appeared only if withFilePreview. In this commit, If nbPreviews is zero or withFilePreview then the folder description will appear. task-3101417 Forward-Port-Of: odoo/enterprise#35282
Original PR description
Steps to reproduce: - Go to the Documents app > kanban view. - Select internal workspace - The workspace description is not displayed in the documents inspector. Issue: Folder description is appeared only if withFilePreview. In this commit, If nbPreviews is zero or withFilePreview then the folder description will appear. task-3101417 Forward-Port-Of: odoo/enterprise#35282
Purpose: -------- In the trashed articles list, we currently order by default the articles using their deletion date. This does not work because the `deletion_date` field is computed and not stored, and logs a Warning: `Model 'knowledge.article' cannot be sorted on field 'deletion_date' (not a column)`. This commit sorts the articles in the trashed articles list using the `write_date` field. This is the same as sorting them using the deletion date, given the fact that the deletion da
Original PR description
Purpose: -------- In the trashed articles list, we currently order by default the articles using their deletion date. This does not work because the `deletion_date` field is computed and not stored, and logs a Warning: `Model 'knowledge.article' cannot be sorted on field 'deletion_date' (not a column)`. This commit sorts the articles in the trashed articles list using the `write_date` field. This is the same as sorting them using the deletion date, given the fact that the deletion date is simply the write date plus a "trash delay" (which is the same for every article), except that `write_date` is stored, and can therefore be used in a `order by` statement. Task-3114916 Forward-Port-Of: odoo/enterprise#35300
Steps: - Open some record from a list view to go to the form view - Open studio - Close studio Before this commit, after closing studio, the record display in its form view was the first record of the list. After this commit, we stay on the record we originally selected. opw-3064158 Forward-Port-Of: odoo/enterprise#35455
Original PR description
Steps: - Open some record from a list view to go to the form view - Open studio - Close studio Before this commit, after closing studio, the record display in its form view was the first record of the list. After this commit, we stay on the record we originally selected. opw-3064158 Forward-Port-Of: odoo/enterprise#35455
The primary purpose is to standardize communication between components. To this end, we introduce a service which provides a bus-like communication system (event driven and synchronous). The service also keeps the kanban state and the form states to allow restoring data where necessary. Additional features include: - store/restore the search state of the embedded list views (both account.move.line and account.batch.payment) - store/restore the prepared journal entry (lines_widget) data - A
Original PR description
The primary purpose is to standardize communication between components. To this end, we introduce a service which provides a bus-like communication system (event driven and synchronous). The service…
The primary purpose is to standardize communication between components. To this end, we introduce a service which provides a bus-like communication system (event driven and synchronous). The service also keeps the kanban state and the form states to allow restoring data where necessary. Additional features include: - store/restore the search state of the embedded list views (both account.move.line and account.batch.payment) - store/restore the prepared journal entry (lines_widget) data - A view switcher component used in the list view that allows activating the kanban view for the selected statement line, without any change to the breadcrumbs - The balance link is improved to display the balance of the journal related to the current statement link - A loading spinner is added to the kanban card while the reconciliation is taking place - Scroll to the selected statement line Extra Info: - Props and env variables have been removed (use the service instead) - Since the async capability has been disabled, we rely on model.notify to re-render the views. (This might be improved in a later version when we are able to bring the async capability back) - A test tour is added to test the above features and prevent regression Task-3111695 Co-authored-by: h4818 ayh@odoo.com Co-authored-by: smetl las@odoo.com Forward-Port-Of: odoo/enterprise#35426
Since changes made here: odoo/enterprise/pull/35560 the access rights had been removed for the document users and set only for the Settings user. In a recent fix: odoo/enterprise/pull/35560 the access rights have been changed to include the documents manager. But What we want is to allow he document users, so we adapted it to allow the users. Forward-Port-Of: odoo/enterprise#35634
Original PR description
Since changes made here: odoo/enterprise/pull/35560 the access rights had been removed for the document users and set only for the Settings user. In a recent fix: odoo/enterprise/pull/35560 the access rights have been changed to include the documents manager. But What we want is to allow he document users, so we adapted it to allow the users. Forward-Port-Of: odoo/enterprise#35634
Test module shouldn't be auto-install. This was discovered truing to mograte templates containing l10n modules. since `l10n_be` is installed, `test_l10n_be_hr_payroll_account` was installed too. In 16, the wizard `l10n_be_dimona_wizard_action` combined with record "`notice_period_wizard`" causes a failure in test_mock_crawl during the pre upgrade tests. .test_mock_crawl: Mocking menu Payroll > Reporting > Belgium > DIMONA ``` 2022-12-28 10:22:55,715 17 ERROR 22259264-16-0-all o
Original PR description
Test module shouldn't be auto-install. This was discovered truing to mograte templates containing l10n modules. since `l10n_be` is installed, `test_l10n_be_hr_payroll_account` was installed too. In…
Test module shouldn't be auto-install.
This was discovered truing to mograte templates containing l10n modules. since `l10n_be` is installed,
`test_l10n_be_hr_payroll_account` was installed too.
In 16, the wizard `l10n_be_dimona_wizard_action` combined with record "`notice_period_wizard`" causes a failure in test_mock_crawl during the pre upgrade tests.
.test_mock_crawl: Mocking menu Payroll > Reporting > Belgium > DIMONA
```
2022-12-28 10:22:55,715 17 ERROR 22259264-16-0-all odoo.sql_db: bad query: UPDATE "hr_payslip_employee_depature_notice" SET "first_contract" = NULL, "write_date" = '2022-12-28 10:22:41.090745', "write_uid" = 2 WHERE id IN (1)
ERROR: null value in column "first_contract" of relation "hr_payslip_employee_depature_notice" violates not-null constraint
DETAIL: Failing row contains (1, 48, 1, 1, 2, Doesn't reach his target anymore, superior, without, 2020-04-15, 2020-04-15, null, f, 2022-12-28 10:19:52.572341, 2022-12-28 10:22:41.090745).
```
This is maybe because of `_compute_oldest_contract_id`?
Anyway, having a test_module auto install doesn't make sence.
Forward-Port-Of: odoo/enterprise#35275Before this commit, the default contract for a generation link used to be the default_contract_id for the employee. After this commit, the contract of the employee is used instead. task-3106778 Forward-Port-Of: odoo/enterprise#35606
Original PR description
Before this commit, the default contract for a generation link used to be the default_contract_id for the employee. After this commit, the contract of the employee is used instead. task-3106778 Forward-Port-Of: odoo/enterprise#35606
Reproduction: 1. Install Accounting, account_intrastat, sale_intrastat 2. Go to Accounting, create a new customer invoice 3. Choose a customer from the US, go to the Other info tab, the Intrastat Country is unset, and this is correct 4. Edit the shipping address to one in the EU, the Intrastat Country is still not set, which is incorrect Reason: the recomputing method to reset the intrastat country was removed for Odoo 16 Fix: make a more generic intrastat country compute and specify d
Original PR description
Reproduction: 1. Install Accounting, account_intrastat, sale_intrastat 2. Go to Accounting, create a new customer invoice 3. Choose a customer from the US, go to the Other info tab, the Intrastat…
Reproduction: 1. Install Accounting, account_intrastat, sale_intrastat 2. Go to Accounting, create a new customer invoice 3. Choose a customer from the US, go to the Other info tab, the Intrastat Country is unset, and this is correct 4. Edit the shipping address to one in the EU, the Intrastat Country is still not set, which is incorrect Reason: the recomputing method to reset the intrastat country was removed for Odoo 16 Fix: make a more generic intrastat country compute and specify different cases in getting intrastat country in account_intrastat, remove the overide in sale_intrastat. We also make sure the intrastat country id is returned when the partner is on the intrastat country list The initial commit: https://github.com/odoo-dev/enterprise/commit/e355e4c3af0d8d727e1c90053ad611541a2f2ec2 The method removal: https://github.com/odoo-dev/enterprise/commit/61c7cd9c908985a2167286dac31772484e2196e1 When solving this issue another issue is popped out, which is the resetting of shipping address doesn’t have a check for intrastat country code PR for this sub issue is here: https://github.com/odoo/enterprise/pull/34619 opw-3051881 Forward-Port-Of: odoo/enterprise#34622