Wednesday, March 29, 2023
26 changes · master
New functionality added to Odoo
Warehouse users can now perform zero quantity counts directly within barcode picking and batch picking workflows, organized by location to reduce unnecessary movement. This helps confirm empty locations during operations, though the completed check may be lost if users refresh or later change quantities before validation.
Original PR description
This commit implements the Zero Quantity Count feature in
the barcode's picking and batch picking client actions.
Note that this feature is done by location rather than by picking/batch
picking to reduce the amount of moving a user has to do (i.e. do the zqc
check before they move to the next location). Because of the difficulty
implementing maintaining whether a zqc is complete before validating the
picking/batch, there are data inconsistencies (in addition to the
community-only ones) that can occur while using the zqc check such as:
- user does a zqc for a location then returns to the page before
validating and changes the qtys done.
- user leaves/refreshes the page and the zqc completed flag is wiped
COM PR: odoo/odoo#46637
TaskID: 1938108Enhancements to existing features
This update improves the Planning experience by making key shift details easier to see, broadening eligible resource choices when roles are used, and sorting resources more clearly in email scheduling. Progress indicators in the Gantt view are also rounded for cleaner, easier-to-read percentages.
Original PR description
In this commit improve the following generic UX - move the start date, end date, allocated time, allocated time %, and effective hours fields to the left of the resource. - when a role_id is set on the shift, it should be possible to select resources that either has this role or no roles at all. - send planning by email wizard: if possible, sort resources by alphabetical order. - gantt view progress bar: round percentages to the unit. task-3073907
Code cleanup and technical improvements
Helpdesk-related code and view files were reorganized so each file focuses on a single business object. This is an internal cleanup that should make future updates easier and safer, without changing how users work with Helpdesk.
Miscellaneous changes
Steps: - Install project_account_budget module - Open the any Project Updates - Add Budget - New Budget (Select Responsible) and - Click on internal link of the Responsible Issue: When we click on the internal link or Entries button, the form is opened behind the wizard and the project update component is distorted. In this commit, We hide Entries button and internal link of Budgetary Position, Responsible, Company. task-3177655 Forward-Port-Of: odoo/enterprise#368
Original PR description
Steps: - Install project_account_budget module - Open the any Project Updates - Add Budget - New Budget (Select Responsible) and - Click on internal link of the Responsible Issue: When we click on the internal link or Entries button, the form is opened behind the wizard and the project update component is distorted. In this commit, We hide Entries button and internal link of Budgetary Position, Responsible, Company. task-3177655 Forward-Port-Of: odoo/enterprise#36883
This update makes everyday field service, project, helpdesk, map, and worksheet screens clearer and easier to use. It improves menu labels, report naming and content, worksheet behavior, setup guidance, and warning visibility so teams can navigate and complete work with less confusion.
Original PR description
** = helpdesk,web_map,worksheet. Purpose of this commit is to improve generic ux for industry_fsm,project and helpdesk apps. So in this commit add following improvements: - industry_fsm ->…
** = helpdesk,web_map,worksheet. Purpose of this commit is to improve generic ux for industry_fsm,project and helpdesk apps. So in this commit add following improvements: - industry_fsm -> configuration add 'Project Stages' menu and rename 'Stages' to 'Task Stages'. - add 'Project' menu should open the same view as the project menu from the 'project' app. - project.task view disable the new worksheet create on quickcreate and form view. - hide 'worksheete' state button from 'worksheet template' form view if records is 0. - industry_fsm -> setting -> 'Time and Material' set documentation link on this field. - add MapBox sign up link and change label string. - change string for 'Task Report' to ' Intervention Report'. - add task name on task report. - add placeholder in default worksheet form view. - change warning for map view. - improve warning visibility for partner phone in 'project.task' form. - improve warning visibility for partner phone and email in 'helpdesk.ticket' form. task-3058275
This update brings Ecuador localization electronic invoicing work from Odoo 14.0 into the master branch. It helps keep Ecuadorian tax reporting and electronic document workflows aligned with current Odoo versions, including invoices, refunds, debit notes, taxes, payments, and company settings.
Original PR description
Porting advances from 14.0 to master.
The Documents app interface is easier to use with clearer folder management actions and improved navigation controls in attachment previews. These updates make common document browsing and organization tasks more intuitive for users.
Appointment onboarding now uses the shared clipboard service when users copy invitation details. This improves reliability and fixes a traceback that could occur during the copy action.
Original PR description
Example of using the new clipboard service. Fixing the traceback of task-3223000
Barcode operations in Inventory are now handled separately from report printing. This makes the workflow clearer and helps avoid mixing operational barcode commands with document output.
Original PR description
In this commit, We split both the operations from barcode commands and now we are printing reports separately. opw - 2579195
Automatically generated subscription invoices will now include the related salesperson as a follower. This helps ensure the salesperson stays informed about invoice activity and customer billing updates without manual follow-up.
Original PR description
Add saleperson as follower on automaticaly generated invoices task-id : 3084135
This update removes leftover internal code from the Quality Control app that was no longer being used after a previous workflow change. It helps keep the system easier to maintain without changing day-to-day user behavior.
Original PR description
by this PR: https://github.com/odoo/enterprise/pull/20102 changed the flow of where and when is called so that is no longer used by quality.check. This commit removes one of the leftover methods should have been deleted as part of this PR.
Original PR description
In this commit we re-structured all python model files and all xml view files in order for each file to only contain records/ classes of one model. The change was applied to all the helpdesk related modules listed below: helpdesk helpdesk account helpdesk_fsm helpdesk_holidays helpdesk_repair helpdesk_sale helpdesk_sale_loyalty helpdesk_sale_timesheet helpdesk_sms helpdesk_stock helpdesk_timesheet
In the bank reconciliation widget, a task on visual improvement has been done with the following commit : https://github.com/odoo/enterprise/commit/8935dc93fc511d14f780183e1281687489676957. It added an 'overflow: hidden' which was not the appropriate approach. This PR provides a better solution. owp : 3252225, 3251660, 3251502, 3250888, 3249692, 3249181, 3249050 task: 3218226 Forward-Port-Of: odoo/enterprise#38954
Original PR description
In the bank reconciliation widget, a task on visual improvement has been done with the following commit : https://github.com/odoo/enterprise/commit/8935dc93fc511d14f780183e1281687489676957. It added an 'overflow: hidden' which was not the appropriate approach. This PR provides a better solution. owp : 3252225, 3251660, 3251502, 3250888, 3249692, 3249181, 3249050 task: 3218226 Forward-Port-Of: odoo/enterprise#38954
- Have a partner with 2 invoices overdue - Open Followup report for the partner - Set 'Next reminder' to today and automatic remainders, state should be 'in need of action'. - Mark one invoice as blocked ("Exclude from follow-ups") - The current followup level should be configured to send an email - Run the followup cron manually Sent email body will be correct but in the attachments both invoices are present opw-3224849 Forward-Port-Of: odoo/enterprise#38686
Original PR description
- Have a partner with 2 invoices overdue
- Open Followup report for the partner
- Set 'Next reminder' to today and automatic remainders, state should be 'in need of action'.
- Mark one invoice as blocked ("Exclude from follow-ups")
- The current followup level should be configured to send an email
- Run the followup cron manually
Sent email body will be correct but in the attachments both invoices are present
opw-3224849
Forward-Port-Of: odoo/enterprise#38686Merging two products may lead to an incorrect stock valuation. For instance in FIFO, it is not possible to generate a consistent history for the merged product. OPW-3181378 Forward-Port-Of: odoo/enterprise#38924 Forward-Port-Of: odoo/enterprise#38500
Original PR description
Merging two products may lead to an incorrect stock valuation. For instance in FIFO, it is not possible to generate a consistent history for the merged product. OPW-3181378 Forward-Port-Of: odoo/enterprise#38924 Forward-Port-Of: odoo/enterprise#38500
To reproduce the issue: 1. Create a service based item 2. Add an optional product 3. Error message "... a optional product ..." Error: Should have been "... an optional product ..." OPW-3232405 Forward-Port-Of: odoo/enterprise#38728 Forward-Port-Of: odoo/enterprise#38400
Original PR description
To reproduce the issue: 1. Create a service based item 2. Add an optional product 3. Error message "... a optional product ..." Error: Should have been "... an optional product ..." OPW-3232405 Forward-Port-Of: odoo/enterprise#38728 Forward-Port-Of: odoo/enterprise#38400
Before this PR, the non_recurring_total field was using the taxed amount to compute the non recurring value. The recurring revenue of upsell was never computed or displayed. taskid: 3232957 Forward-Port-Of: odoo/enterprise#38273
Original PR description
Before this PR, the non_recurring_total field was using the taxed amount to compute the non recurring value. The recurring revenue of upsell was never computed or displayed. taskid: 3232957 Forward-Port-Of: odoo/enterprise#38273
Currently, the service available in Odoo for the exchange rate in Peru is the Bank of Perú. The official rate in Peru is the one from the SUNAT. Bank of Peru is also official but actually the rates Bank of Peru uses, come from the SUNAT from this link https://www.sunat.gob.pe/a/txt/tipoCambio.txt. The problem is that the Bank of Peru currently being used in Odoo is down most of the time and creates more problems than it solves. The SUNAT link only brings the rate for the current date, which is a
Original PR description
Currently, the service available in Odoo for the exchange rate in Peru is the Bank of Perú. The official rate in Peru is the one from the SUNAT. Bank of Peru is also official but actually the rates…
Currently, the service available in Odoo for the exchange rate in Peru is the Bank of Perú. The official rate in Peru is the one from the SUNAT. Bank of Peru is also official but actually the rates Bank of Peru uses, come from the SUNAT from this link https://www.sunat.gob.pe/a/txt/tipoCambio.txt. The problem is that the Bank of Peru currently being used in Odoo is down most of the time and creates more problems than it solves. The SUNAT link only brings the rate for the current date, which is a downside for the service but it is never down (it does not bring historic rates). Solution: We will implement the SUNAT service instead of the Bank of Peru and if customers need the historic rates, they can manually search on an official website (Bank of Peru, for instance) and import the rates needed. The way this will be done is by substituting the current bank of Peru service with the SUNAT link in the same method and replacing the name with the SUNAT's. This will be done in stable since the Bank of Peru is causing more problems than it is solving. Forward-Port-Of: odoo/enterprise#38647 Forward-Port-Of: odoo/enterprise#37890
Purpose ======= Dependent on l10n_ke module, which is not a dependency of l10n_ke_hr_payroll. Forward-Port-Of: odoo/enterprise#38893
Original PR description
Purpose ======= Dependent on l10n_ke module, which is not a dependency of l10n_ke_hr_payroll. Forward-Port-Of: odoo/enterprise#38893
## backport of 1133fdec12585de458022e4564d692d405d5d60f The aim of this commit is to make the multi-vat feature allowing to impact several tax report with the same tax on one invoice. Context: A Belgian company with a warehouse in Netherland has to fill the NL tax report when they sell goods coming from that warehouse. At the same time, if the goods were coming from Belgium, the company is suppose to fill the [47] tax grid. To avoid a lot of manual work, the customer would like to be abl
Original PR description
## backport of 1133fdec12585de458022e4564d692d405d5d60f The aim of this commit is to make the multi-vat feature allowing to impact several tax report with the same tax on one invoice. Context: A…
## backport of 1133fdec12585de458022e4564d692d405d5d60f The aim of this commit is to make the multi-vat feature allowing to impact several tax report with the same tax on one invoice. Context: A Belgian company with a warehouse in Netherland has to fill the NL tax report when they sell goods coming from that warehouse. At the same time, if the goods were coming from Belgium, the company is suppose to fill the [47] tax grid. To avoid a lot of manual work, the customer would like to be able to put the belgian tax grid on a NL tax. To be consistent, if it works when applying local tag to foreign tax, it should also work when applying foreign tag on local tax. Before the commit: The tax tag is applied on the journal item but the Belgian tax report is ignoring it. Similarly, a NL tag on a belgian tax would be ignored too. After the commit: The Belgian tax report is taking the journal item with the Duch tax in account. Similarly, the Dutch tax report is also taking the journal item with the Belgian tax in account. Task-id: 3196547 opw-2810712 Forward-Port-Of: odoo/enterprise#38751 Forward-Port-Of: odoo/enterprise#38718
Steps to reproduce: 1. Set up UPS shipping, choose an international delivery service 2. Make an international sale order to a customer with no company 3. Validate the delivery, get error from UPS API Before this commit Odoo used commercial company name for name field of SoldTo. If the customer had no company assigned, it would cause an error because the name was empty. In this case, we can use the name of the customer (similar to shipper) to avoid error. We also need to limit the leng
Original PR description
Steps to reproduce: 1. Set up UPS shipping, choose an international delivery service 2. Make an international sale order to a customer with no company 3. Validate the delivery, get error from UPS API Before this commit Odoo used commercial company name for name field of SoldTo. If the customer had no company assigned, it would cause an error because the name was empty. In this case, we can use the name of the customer (similar to shipper) to avoid error. We also need to limit the length of this field to 35 characters. opw-3191379 Forward-Port-Of: odoo/enterprise#37729
We should not block the export of the tax report if we have an error stating that the SteuerNummer is invalid. The user may have already converted his SteuerNummer to the electronic format and we shouldn't block it if it is his real SteuerNummer. task-3204796 Forward-Port-Of: odoo/enterprise#38280
Original PR description
We should not block the export of the tax report if we have an error stating that the SteuerNummer is invalid. The user may have already converted his SteuerNummer to the electronic format and we shouldn't block it if it is his real SteuerNummer. task-3204796 Forward-Port-Of: odoo/enterprise#38280
When we are in the portal and the date of today is the date of the next_invoice date, we get an inconsistent state, as in the list view we have a status 'to renew' and in the form view we are 'in progress'. To avoid this inconsistance, we are only displaying 'to renew' one day after the next_invoice date Forward-Port-Of: odoo/enterprise#38859
Original PR description
When we are in the portal and the date of today is the date of the next_invoice date, we get an inconsistent state, as in the list view we have a status 'to renew' and in the form view we are 'in progress'. To avoid this inconsistance, we are only displaying 'to renew' one day after the next_invoice date Forward-Port-Of: odoo/enterprise#38859
before this commit, for the company_id field the user groups given was base.main_company, such a group is not existing in the system after this commit, the group will be changed to base.group_multi_company from base.main_company Forward-Port-Of: odoo/enterprise#38903 Forward-Port-Of: odoo/enterprise#38871
Original PR description
before this commit, for the company_id field the user groups given was base.main_company, such a group is not existing in the system after this commit, the group will be changed to base.group_multi_company from base.main_company Forward-Port-Of: odoo/enterprise#38903 Forward-Port-Of: odoo/enterprise#38871
Currently the `payment_exception` field has no parameter copy=False. When a existing subscription order with "payment failure" status gets duplicated, `payment_exception = true` gest carried over, which will lead to a UserError when the customer tries to create an invoice from the duplicated record. The root is this filter call https://github.com/odoo/enterprise/blob/16.0/sale_subscription/models/sale_order.py/#L1140-L1141 Before this change: Duplicating a subscription with `payment_except
Original PR description
Currently the `payment_exception` field has no parameter copy=False. When a existing subscription order with "payment failure" status gets duplicated, `payment_exception = true` gest carried over, which will lead to a UserError when the customer tries to create an invoice from the duplicated record. The root is this filter call https://github.com/odoo/enterprise/blob/16.0/sale_subscription/models/sale_order.py/#L1140-L1141 Before this change: Duplicating a subscription with `payment_exception = true`, copies the status to the duplicate and blocks any invoice to be created out of the duplicated record. After this change: Duplicating a subscription with 'payment failure' should correctly keep the `payment_exception = false` and function as expected, i.e. invoices can be created. opw-3216747 Forward-Port-Of: odoo/enterprise#38888 Forward-Port-Of: odoo/enterprise#38788
## Current behaviour Broken xpath when unarchiving one of the "List View Variants" (check ticket for more info). ## Expected behaviour There should be no broken xpath. ## Steps to reproduce - Install website_sale_renting - Make sure Variants are active - In debug mode, edit the views, (with active or inactive filter) search for the views "List View of Variants". - If you archive the one with the external ID, you cannot unarchive it after that. ## Reason for the problem Depending
Original PR description
## Current behaviour Broken xpath when unarchiving one of the "List View Variants" (check ticket for more info). ## Expected behaviour There should be no broken xpath. ## Steps to reproduce - Install website_sale_renting - Make sure Variants are active - In debug mode, edit the views, (with active or inactive filter) search for the views "List View of Variants". - If you archive the one with the external ID, you cannot unarchive it after that. ## Reason for the problem Depending on the order of installation of the views, the `t-placeholder` may not be a direct child of the element that has the class `js_main_product`. ## Fix Correct the XPath so that `t-placeholder` is not necessarilly a child of the element with the class `js_main_product`. ## Affected versions - 16.0 - saas-16.1 - saas-16.2 - master --- opw-3236843 Forward-Port-Of: odoo/enterprise#38577
Issue: When we send a document with the 'Enable Signing Order' option activated, when we check the 'Specify Signing Order' option, the numbers appear but we don't know what they correspond to. Solution: Add the column header for this field. opw-3215908 Forward-Port-Of: odoo/enterprise#38815
Original PR description
Issue: When we send a document with the 'Enable Signing Order' option activated, when we check the 'Specify Signing Order' option, the numbers appear but we don't know what they correspond to. Solution: Add the column header for this field. opw-3215908 Forward-Port-Of: odoo/enterprise#38815