Daily updates from Odoo
Thursday, December 12, 2024
21 changes
1 change
Enhancements to existing features
Point of Sale now only displays lot or serial numbers that have available stock in the configured source location. This helps prevent staff from selecting items that are already reserved for other stock movements, improving accuracy during checkout.
Original PR description
Only display lot/serial numbers if their forecasted quantity is available. Now when using a 2 step routes (inventory) we only show in PoS the serial numbers that are not already reserved for a stock move (like in sales). To do this we check that the `stock.lot` is located in the `pos_config` default source location. task-id: 4320066 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
9 changes
Enhancements to existing features
A new automated test checks that helpdesk tickets are converted to CRM opportunities or leads correctly based on a user's permissions. This helps reduce the risk of regressions in the support-to-sales handoff process.
Original PR description
This commit introduces a new test case that ensures the conversion of helpdesk tickets to opportunities in the CRM module is functioning as expected. Test Details: A new user is created, and conversion is attempted both before and after assigning the user to the relevant group (crm.group_use_lead). Assertions check for both "Convert to Opportunity" and "Convert to Lead" behavior depending on the user's group permissions. task: 4180279
The delivery pickup location tests were updated to avoid unnecessary email sending during automated checks. This keeps test runs stable and reduces maintenance effort without changing the customer-facing delivery flow.
Original PR description
Now that the salesperson is set on the cart after its confirmation, the test failed because it tried to send an email when the mail configuration was not properly configured. By relying on the standard test common from website_sale, we disable the mail sending, and can simplify the existing test setup. task-4270127
Missed call counts are now shown directly on the VoIP icon in the top bar instead of opening the softphone panel. This makes missed calls easier to notice while reducing interruptions to the user's workflow.
Original PR description
This commit will stop opening the softphone container for showing missed calls count in topbar instead the missed calls count will be shown in VoIP systray item icon badge. Task-3392951
Adds an XML export option to the German Intrastat report, helping businesses prepare the required declaration file for Germany's statistics portal. This reduces manual work and supports more consistent Intrastat reporting for German companies.
Original PR description
This commit add the export to xml button on the intrastat report for Germany. More information can be found here: - https://erhebungsportal.estatistik.de/Erhebungsportal/informationen/hilfe-zur-meldungsabgabe-3749 task-4194404
This work begins loading product expiry information into barcode-based stock operations. It should help warehouse teams handle lots and expiration dates more accurately when scanning products, though the change appears to be work in progress.
Timesheet approver information is now shown with a clearer label in tooltips, filters, and grouping options. Employees can also be grouped by their Timesheet Approver, making it easier for managers to review and organize timesheet responsibilities.
Original PR description
This commit renames the label of `timesheet_manager_id` field to have `Timesheets Approver` displayed in tooltip and custom filter/group by. It also adds a group by in `hr.employee` model to let the user to group by Timesheet Approver. task-4313650
Self-order kiosks can now process payments through connected IoT box payment devices. This makes kiosk ordering more complete for restaurants and stores by reducing manual payment handling and enabling a smoother customer checkout.
Original PR description
The self order kiosk previously didn't support payment via IoT box devices. This PR adds that functionality. task-4128846 Community PR: https://github.com/odoo/odoo/pull/190353
When payment for a subscription quotation triggers an invoice posting error, the system now records the error message on the invoice chatter. This helps internal users quickly understand configuration issues, such as invalid electronic invoicing settings, without needing backend investigation.
Original PR description
During the payment of the quotation having recurring service products, if any error occurs during the invoice posting due to an invalid edi configuration then the error message is posted in chatter of the invoice to let the internal user knows the error generated in backend. COM-PR :- https://github.com/odoo/odoo/pull/187517 task-4330659
Time-off timesheets are no longer tied to projects or tasks configured on a specific time-off type, making the feature work more reliably across multiple companies. This prevents users from unintentionally disabling timesheet generation or limiting it to the wrong company setup.
Original PR description
Before this commit: ------ By default, the current company is set on time off types. As such, the internal project of the current company is set. After this commit: -------- This commit improves the functionality related to generating timesheets within the project_timesheet_holidays module. Specifically, it removes the association of projects and tasks from the time-off type . Removed `timesheet_generate` field, as it is not used in any view. Reason: -------- if we set the company of the time off type to false, we either have: - no project -> meaning the user will disable the feature without realizing as the field is only visible in debug mode; - the internal project of the current company that remains set -> meaning the feature won't work for the other companies in which a time off request is created. task-3605962
10 changes
Enhancements to existing features
Currency translation adjustments now use the exchange rate from the end of the fiscal year instead of the current rate, making balance sheet reporting more accurate for past periods. The update also corrects average exchange rate calculations when a period begins without a recorded currency rate, preventing understated values.
Original PR description
The way we initially implemented CTA, it was using the current rate for all the balance sheet accounts. Instead, we actually want to consider the closing rate ; that is, the rate of each currency at the end of the fiscal year the operation was made in. Current rate currency translation is still applied like before when CTA is not enabled on the report. task-4270102 ================================= [FIX] account: currency table: fix average rate for a period starting with no res.currency.rate If a period containing some res.currency.rate object starts by some sub-period without any range, the average rate computation considered this sub-period as having a rate of 0. It's wrong; it should be 1.
The accounting guided tours were simplified to avoid getting stuck on setup steps that may already be completed. The update also adds product description guidance, making the tour smoother and more useful for users learning invoice workflows.
Original PR description
Problem --------- The account tour had some troublesome steps such the one waiting for the user to select a template. If this had already been done before, it meant that the tour would be on stand…
Problem --------- The account tour had some troublesome steps such the one waiting for the user to select a template. If this had already been done before, it meant that the tour would be on stand by. The Send & Print wizard steps were also quite heavy with extra steps being taken to add an email to the partner, this would stop the tour if the selected partner already had a email address. Solution --------- This commit removes - the steps related to the template selection (for both the manual and automatic tours) - the extra steps in the send and print, asking the user to select add an address for the partner without one and simply asks him to Send & Print directly (only for the manual tour, the automatic tour maintain those steps since the automatic tour creates a new partner without email address during the run). This commit adds - Steps to add a description of a product (for both manual and auto) task-4309716 odoo/enterprise/pull/74092 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The messaging menu now presents notifications with clearer wording, better spacing, and more readable previews. Users can more easily distinguish installation prompts, push notification requests, chat messages, and delivery failures, especially on mobile.
Original PR description
Before <img width="480" alt="Screenshot 2024-12-12 at 12 53 27" src="https://github.com/user-attachments/assets/31e6def5-5899-4947-b3e2-5fddd73284d1" /> After <img width="481" alt="Screenshot 2024-12-12 at 12 58 59" src="https://github.com/user-attachments/assets/055cd267-fbc1-407b-b544-72b9cfcebb53" />
Opening the mail template list is now more reliable for companies with very large numbers of templates. The filtering process has been optimized to avoid memory issues and improve performance.
Original PR description
Before this commit, databases with thousands of mail templates could trigger a MemoryError when opening the mail template list. This issue occurred because the default filter on base templates required processing all records batch by batch in Python. With this commit, the computation is rewritten to use domain / SQL, eliminating the Python overhead.
Korean state and province names are now stored in Korean instead of English. This makes local address and invoice information clearer and more appropriate for users operating in Korea.
Original PR description
States are not handled by translations, and the Korean states were added into the data with their english version. As these will mostly be used by Korean users, to issue invoices/... in Korea, it makes more sense to store the Korean version instead. Task [link](https://www.odoo.com/odoo/project/967/tasks/4402317) task-4402317 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
When users open the full email composer from the chatter, their email signature is now automatically added to the message. This lets users review and adjust their signature before sending, improving consistency and control over outgoing emails.
Original PR description
When the user opens the full mail composer from the chatter, their signature will now automatically be inserted at the end of the email. This change allows the user to view and edit the signature when writing an email. task-4273520 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Korean administrative regions are now stored in Korean instead of English. This makes Korean addresses and invoices clearer and more appropriate for users operating in Korea.
Original PR description
States are not handled by translations, and the Korean states were added into the data with their english version. As these will mostly be used by Korean users, to issue invoices/... in Korea, it makes more sense to store the Korean version instead. task id # 4402317 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Sales commissions can now be calculated from invoices and recurring subscription plans, not only from subscription MRR logs. This helps ensure salespeople can receive commission for renewals or unchanged contracts even when no new subscription log is created.
Original PR description
Before this PR, it was not possible to override achievement report sql request.
Before this PR, subscription achievements were only available
throught MRR (sale.order.log) analysis. It would prevent to provide
commission when no log was created during a period. This could happen
when an important contract is renewed at the same conditions.
This commit allows to compute commissions based on
invoices and recurring plans.
Task 4398351Financial reports now use the year-end exchange rate for CTA calculations, making balance sheet currency translation more aligned with accounting expectations. Additional checks improve rate handling and Trial Balance consistency so report figures remain reliable across periods.
Original PR description
The way we initially implemented CTA, it was using the current rate for all the balance sheet accounts. Instead, we actually want to consider the closing rate ; that is, the rate of each currency at…
The way we initially implemented CTA, it was using the current rate for all the balance sheet accounts. Instead, we actually want to consider the closing rate ; that is, the rate of each currency at the end of the fiscal year the operation was made in. Current rate currency translation is still applied like before when CTA is not enabled on the report. task-4270102 ========================================================================== [IMP] account_reports: currency table: add test case If a period containing some res.currency.rate object starts by some sub-period without any range, the average rate computation considered this sub-period as having a rate of 0. It's wrong; it should be 1. The fix itself is in the corresponding community commit ; this one adds a check ensuring this doesn't break again in the future. Fixing this also revealed an issue in the Trial Balance, where the initial balance column group was computed with different rates than the rest of the report, which is not what we want for this instance. We fix that by properly setting the period_key on all of its column groups and ensuring the initial balance dates have no impact on the currency table.
Businesses can now choose whether UrbanPiper point-of-sale requests go to the live production service or the integration testing environment. This makes it safer to test setup changes before using them with real orders.
Original PR description
In this commit: === - Added `pos_urban_piper.is_production_mode` parameter to toggle between production and integration environments.
1 change
Enhancements to existing features
This update simplifies the accounting report button bar by ensuring the XLSX export button is consistently displayed. This change reduces complexity and improves the user experience by making the key export functionality readily available on all accounting reports.
Original PR description
Refactors the button bar component and makes the xlsx button always show on accounting reports. task-4402561