Files
odoo_source/addons/sale
Thibault Delavallée 418761e344 [LINT] mail, various: use explicit subtype in message_post_{with_...}
RATIONALE

Purpose of this commit is to be explicit in subtype chosen when invoking the
message composer / calling message_post. As default value may not always be
clear, better be explicit in case the composer default value changes.

SPECIFICATIONS

Add explicit references to subtype when it is not obvious what will be the
final subtype, notably when using helpers (post_with_view or template which
uses the composer that is not crystal clear in its subtype management).

In this commit we also add support of XMLID-based subtype when invoking the
composer. A ``default_subtype_xmlid`` context key is transformed into a
``default_subtype_id``, to be used notably in JS where we cannot easily
use a ``ref``-like statement. Post API now also supports 'subytpe_xmlid'
argument allowing to give the xml id and ease calling the methods.

Use ``_xmlid_to_res_id`` to get directly the ID of subtypes in order to
avoid useless queries from ``ref`` that does an exists.

Also remove useless values given to post API, notably author_id that is by
default the current users' partner.

Task-2710804 (Mail: Clean MailThread Posting API)

Part-of: odoo/odoo#99482
2023-01-17 20:58:33 +01:00
..
…

Sales Management Made Easy

From quotes to invoices, in just a few clicks with the Odoo Sales Management.

Drive your sales operations from quotes to invoices with all the information you need, easily accessible. Keep track of long term contracts, automate invoicing and notify sales when they have things to do.

Create Professional Quotations

Create quotations in a matter of seconds. Send quotes by email or get a professional PDF. Track quotations, and convert them to sales order in one click.

Spend the extra time focusing on selling, not recording data.

Fully Integrated

The information your need, where you need it.

Don't lose time looking for customers, products or contracts related information; they are all conveniently accessible when creating quotations.

Get access to stock availabilities in the different warehouses, to customer's specific prices, to the history of preceeding offers for this prospect, etc.

Your Address Book

So many features, so easy to use.

Assign tags to your prospects, manage relationships between contacts and store all customer's preferences including pricing, billing conditions, addresses, payment terms, etc.

Navigate through all the documents related to a customer with the powerfull breadcrumb: quotations, invoices, emails, meetings.

Fully Integrated Invoicing

Whether you invoice based on time and materials, on delivery orders or fixed price; Odoo supports all possible methods.

Get recurring invoices produced automatically, create advances in just a few clicks, re-invoices expenses easily, etc.

Keep track of your contracts

Get rid of wasted paper and record all your contracts in the application. Invoices are generated automatically based on your contract conditions. Your account managers get alerts before contracts have to be renewed.

Communicate Efficiently With Customers

The chatter feature enables you to communicate faster and more efficiently with your customer. This takes place directly on a quotation or sale order from within Odoo or via email.

Get all the negotiations and discussions attached to the right document and relevent managers notified on specific events.

Fully Extensible

By default, sales order are very simple, limited to a small number of features. Don't be confused by features you don't need.

But you can activate options to fit your specific need: multi-warehouses, multi unit of measures, manage customer specific prices with pricelists, control margins on quotations, use different addresses for shipping and billing, etc.

Built-in Customer Relationship Management

Activate the CRM application to manage your funnel of opportunities, attract leads, log calls, schedule meetings and launch marketing campaigns.

Opportunities can be converted into quotations in just one click.

Drive Engagement with Gamification

Align Sales Teams on clear targets. Define clear commission plans. Get real time statistics on the performance of individual sales or channels. Motivate your teams with challenges, rewards and leaderboards.

Have Clear Pricing Strategies

Use pricelists to record special conditions for a specific customer or to define prices for a segment of customers. Define promotions and have them applied automatically for all your Sales Teams.