Monday, June 20, 2022
28 changes · master
Enhancements to existing features
Purchasing teams can now manage and compare alternative supplier quotes directly from purchase orders, instead of creating a separate call-to-tender record. This streamlines RFQ comparison with visual price and date highlights, easier alternative quote creation, and options to cancel or zero out non-selected alternatives.
Original PR description
Feature Improvement Info: ==================== Previously the "call to tender" flow involved creating a `purchase.requisition` record, creating each RFQ via that record, and then manually going…
Feature Improvement Info:
====================
Previously the "call to tender" flow involved creating a
`purchase.requisition` record, creating each RFQ via that record, and
then manually going through each RFQ to compare the prices/dates/etc.
By linking the "call to tender" POs within the POs, we remove an
unnecessary `purchase.requestion` record and makes it easier to track
which RFQs are related to each other as an Alternative RFQ.
On top of this, we add some comparision features to make it easier to
determine the best RFQ, specificially the ability to compare PO lines in
the same view with some visual aids (best price/date colored green +
buttons to check these lines to make them easier to view). We also add
an extra feature to set the qty of non-selected PO lines to 0 to aid in
the RFQ selection process (only applies to non-confirmed/done/cancelled
POs).
Some other features included with this:
- option to cancel alternative POs when confirming one, which purposely
does not cancel ones that have already been confirmed/completed.
- new wizard for creating alternative POs so user can select whether or
not they want to copy the products/qtys from the original PO.
Important Notes:
- JS Customizations:
- custom many2many widget added so user can click between alternative
POs in same window + keep breadcrumb. Useful since all alt POs are
interconnected and long breadcrumb chain is possible (+ we want to
avoid windows within windows.) It is expected that user will be
aware that unsaved changes will auto-save when alt PO is clicked on.
- custom view js for Comparing Order Lines to help highlight best
options, including "Select" buttons that only check boxes in list +
feature to set "not selected" lines to qty=0 isn't possible via
normal python action, since we have to manually calc those res_ids.
- General implementation warnings:
- Anytime any button/alternative PO is clicked on within a PO, the
form will auto-save. This is due to how the current action service
handles changing views.
- POs created via "Create Alternative" button purposely:
- require a vendor to ensure correct lead times/prices
- show all vendor/product warnings in wizard because we cannot
reproduce the pop-up warning that would occur in the PO when
they are selected. We also purposely block the PO creation when a
blocking warning is set since we cannot remove the values
(especially in the case of a blocking vendor message) from a
newly created PO.
- Technical purchase.order.group model created to help with difficult
management of complicated behaviors:
- unlink from self if a PO is no longer linked to any other POs
- linkages must be symmetric (i.e. linkage PO1 => PO2 must
reflect PO2 => PO1 in their form views)
- don't lose existing linkages (i.e. PO1 => PO2 and PO2 => PO3
should auto-link PO1 => PO3)
These last two behaviors are difficult to do without grouping due to
possibility of remove and adding linkages at the same time. To avoid
complex code to ensure these complexities hold when when creating a
new PO, linkaging to alternatives is not allowed when PO is not yet
saved as a record.
Old Feature Removal Info
====================
Of course we remove the old call to tender flow and its associated modules/code.
This includes removing the 'tenders' option for products which means the
dropshipping + auto-create call to tenders use case no longer exists =>
purchase_requisition_stock_dropshipping module is no longer
needed.
Extra refactoring of onchange => compute
================================
Additionally, to avoid having to add more manual `onchange_quantity` calls to the
new flow, we convert it to a compute function and fix the associated code/tests
related to it.
Task: 2695116
Upgrade PR: https://github.com/odoo/upgrade/pull/3586The timesheet experience is improved with clearer reporting options, including new measures in the timesheet and attendance report. Timesheet managers can also make necessary changes to invoiced timesheets, helping teams correct records more easily and manage time data with less friction.
Original PR description
So in this PR improve the form view, filter and report and some feature usability. Purpose of this PR to improve the generic UX of the timesheet app. - Add the measures in the timesheet/attendance report. - Currently, the timesheet manager cannot modify the invoiced timesheet. Will be able to now. task-2782768
This update improves the Project app experience by making reporting, search, task details, and settings easier to use. It also adds convenient email and SMS actions for projects and tasks, helping teams communicate faster from their project records.
Original PR description
Purpose of this PR to improve generic usage of project app. So, in this PR done following changes: - added group by assigned to under reporting -> customer ratings - In quick search, changed "rated…
Purpose of this PR to improve generic usage of project app. So, in this PR done following changes: - added group by assigned to under reporting -> customer ratings - In quick search, changed "rated rated" operator to "assigned to" under project.project search view - removed rating_status field from project > configuration > settings > customer ratings - switched the 'timesheets' and 'planning' features from place from project > configuration > settings - In project.task extra info notebook: - Added the 'parent task' field above the 'analytic account' field - Added the 'company' field above the 'sequence' field - changed toast notification in project.task gantt view - added send mail and sms action in project.project and project.task list and form view task-2806292 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 makes internal test data creation more explicit by replacing empty record creation calls with clearly empty values. It helps keep development and testing behavior consistent while preparing to remove an unsupported shortcut, with no expected impact on everyday users.
Original PR description
\* mail, test_mail_full, website_livechat
**Current behavior before PR:**
Creating a record with no values has no sense but is sometimes useful during
tests.
The support should be dropped for `default` parameter in `create`.
**Desired behavior after PR is merged:**
All the occurrences of `create()` have been replaced by `create({})`.
Task-2869394
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prThis update corrects wording in the Accounting app from “digitalization” to “digitization” when referring to extracting data from documents. It improves clarity and uses the more accurate business term, with no expected change to functionality.
Original PR description
The correct word for the extraction of data from a document is digitization, not digitalization. See feedback #2862606.
CRM leads now automatically inherit the company associated with the selected customer. This helps sales teams keep lead ownership and company context consistent in multi-company setups, reducing manual corrections and reporting errors.
Accounting users can now enable a fiduciary mode to enter invoices more quickly by editing invoice numbers, totals, payment details, and commonly used accounts with fewer steps. Partner records also gain searchable company registry numbers, improving identification and reducing duplicate or incorrect partner selection.
Original PR description
This PR: - adds a fiduciary mode which allows fast encoding of invoices. This is an Accounting setting which must be activated. This fiduciary mode allows one to edit directly the invoice sequence…
This PR: - adds a fiduciary mode which allows fast encoding of invoices. This is an Accounting setting which must be activated. This fiduciary mode allows one to edit directly the invoice sequence and enter the total amount of the invoice (by creating a single line which contains the base price, the tax amount, and the most frequent account) such that we match this 'quick total amount'. - adds a new test for this feature - adds a 'quick edit total amount' in the tax computation which verifies that the 'quick edit total amount' correctly matches sum of the base and the tax (in case of fiduciary mode) - sorts and filters the accounts suggestions in an invoice line. The most frequent accounts for a particular partner rank higher while filtering on the type of account suggested (this is disabled if the user searches itself for the account) - selects by default the most frequent account for a particular partner when creating a new invoice line - moves the "Company Registry Number" from `res_company` to `res_partner` (which might be different from the VAT in some localizations). This must be unique among all partners of the same country. - allows the search of partner by using their "VAT" or their "Company Registry Number" - modifies the invoice UI (new quick total, payment reference and partner bank id) to allow faster encoding (by typing TAB) of invoices - adds the option to hide some columns (label & quantity) - moves the car column after the account column in case the Fleet app is installed Task-id: 2857253 Community PR: https://github.com/odoo/odoo/pull/91938 Enterprise PR: https://github.com/odoo/enterprise/pull/27605 Upgrade PR: https://github.com/odoo/upgrade/pull/3570
This update streamlines how attachments are managed and shared across Odoo messaging areas, including Discuss, Live Chat, Portal, and ratings. It reduces reliance on older attachment handling paths, making message-related features more consistent and easier to maintain without changing core business workflows.
Original PR description
Part of task-2886642
The live chat experience is updated with a clearer button view and chatbot-related behavior for website visitors. This helps businesses present automated chat interactions more consistently and makes it easier for customers to start conversations online.
Original PR description
*: website_livechat Task-2888356
The live chat experience is being updated with a clearer structure for how the chat button is displayed and controlled on websites. This should make live chat behavior more consistent and easier to maintain, helping visitors access support more reliably.
Original PR description
*: website_livechat Task-2888310
The live chat experience now better manages chatbot redirection, helping visitors transition more smoothly during automated chat flows. This reduces confusion in customer conversations and supports a more reliable online support experience.
Original PR description
Task-2883215
The live chat components have been updated to use a newer button view structure across live chat and website live chat. This should make the chat entry point more consistent and easier to maintain, supporting a smoother experience for website visitors and chat operators.
Original PR description
Task-2883259
The live chat experience has been improved by better managing the chat button view and customer typing timeout behavior. This helps make conversations feel smoother and more responsive for website visitors and support teams.
Original PR description
Task-2888539
The live chat button has been updated to better manage how visitors start and return to chat conversations. This should make the website chat experience smoother and more consistent for customers.
Original PR description
Task-2883232
Live chat now carries clearer server information through the website chat flow, including chatbot-related messages. This helps route conversations more reliably and supports a smoother visitor support experience.
Original PR description
Task-2883609
The live chat experience has been updated to better manage the chat button and message flow on websites. This should make customer conversations smoother and more reliable, especially when automated chatbot interactions are involved.
Original PR description
Task-2883579
The website live chat module now separates the chatbot server URL handling, making chatbot conversations easier to configure and maintain. This helps improve reliability for visitor chat interactions without changing the overall user experience.
Original PR description
Task-2883598
The live chat module has been updated to better organize how the chat button and initialization process work. This should make the website chat experience easier to maintain and more reliable for future improvements, with limited direct impact on daily users.
Original PR description
Task-2888551
The live chat experience now has a clearer default visitor name available through the chat button view. This helps keep conversations easier to identify when visitors have not provided their own name.
Original PR description
Task-2884731
This update improves how the website live chat button and chatbot welcome messages are handled. It helps make the live chat experience smoother and more consistent for visitors when starting a conversation.
Original PR description
Task-2888558
This update renames accounting security access rights to make permissions easier to understand and manage. It also clarifies a Colombian electronic invoicing company registry label to avoid duplicate wording, reducing confusion for administrators.
Original PR description
This PR: - renames the security access rights Task-id: 2857253 Community PR: https://github.com/odoo/odoo/pull/91938
This update simplifies how attachments are loaded and previewed in enterprise mail and accounting-related screens. It removes outdated internal options and updates tests, helping keep document workflows more reliable as the interface framework evolves.
Original PR description
Part of task-2886642
Documents processed with OCR now keep the extracted text so it can be found through the Documents indexed content search. This helps users reuse information already captured during invoice scanning and makes previously scanned documents easier to locate.
Original PR description
At this point in time, we don't allow the user to search on the content of a document that went through the OCR, despite the fact that at one point we actually had the detail of its inner content. This leads to a situation where we created some value by extracting all the text, and if it was stored we could exploit it in the Documents search. Now, when a document went through OCR, we store a basic extraction of the text that is returned by the OCR, and make it searchable via the "Indexed content" search in Documents. The full text annotation is stored inside the JSON file that is being already sent to the client side.
The Gantt view now shows a clearer notification when users try to automatically reschedule tasks that are already in the past. This helps users understand that those tasks need manual rescheduling instead of leaving the system behavior ambiguous.
Original PR description
Purpose of this PR to improve generic usage of project app. So, in this PR done following changes: - changed toast notification in project.task gantt view task-2806292
User-facing wording in document extraction features now uses “digitization” instead of “digitalization.” This improves terminology accuracy and consistency across invoice and expense extraction screens and messages.
Original PR description
The correct word for the extraction of data from a document is digitization, not digitalization. See feedback #2862606.
Users can now organize the main Documents view by contact, owner, or document type. This makes it faster to find related files and review document collections without manually scanning the list.
Original PR description
**PURPOSE** The purpose is to allow the user to quickly sort the documents based on their contact, owner, type in Documents module. **SPECIFICATION** Adding a Group By option on the main view of the module by giving default groups (contact, owner, type). This will work more efficientely. Task-2587414
The test code now uses an explicit empty value when creating records, matching the newer expected behavior. This is an internal cleanup that helps keep automated tests reliable and aligned with platform conventions, with no expected impact on day-to-day users.
Original PR description
**Current behavior before PR:**
Creating a record with no values has no sense but is sometimes useful during
tests.
The support should be dropped for the `default` parameter in `create`.
**Desired behavior after PR is merged:**
All the occurrences of `create()` have been replaced by `create({})`.
Task-2869394
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prTimesheet users get clearer searches, better email formatting, and easier mobile grid views that open by day by default. Managers can also return validated billable timesheets to draft, and the timesheet planning analysis report is now available from the Timesheets app where users expect it.
Original PR description
Purpose of this PR to improve the generic UX of timesheet app. So, in this PR done following changes: - improve the search view, mail template and some feature usability. - Currently, the timesheet manager cannot move validated and billable timesheets to the draft stage. Will be able to now. - ignore grid_range context from action for mobile device and add first(day) range as default range for the mobile device. - Move the 'timesheets and planning analysis' report from project to timesheet app. task-2782768