Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Estate Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Accounting
  • Inventory
  • PoS
  • Project
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

Determine status of sales orders

Subscribe

Get notified when there's activity on this post

This question has been flagged
statussales.order
2 Replies
10504 Views
Avatar
Dajac Inc.

Odoo 13


How can I get a list of sales orders, showing the status of each order? The status indicators would be something like the following.


Confirmed - A PO was received and the quote confirmed. Now the order needs to be processed.

Partial - Some items have shipped. Some items still need to be processed.

Done - All items have shipped.


Thanks,
David


0
Avatar
Discard
Avatar
Paresh Wagh
Best Answer

Hi:

You can add a computed field to the sale.order model and use it to filter the list.

1
Avatar
Discard
Dajac Inc.
Author

I'm a software engineer so this should be no problem, but I'm totally new to Odoo.

Can you provide some details on how to accomplish this in Odoo?

Chris TRINGHAM

Maybe this will help: https://odootricks.tips/computed-fields/

Paresh Wagh

The link provided by Chris gives the details of how to do this through the UI.

There is also a second way of doing this through python code using class inheritance. The code option is a little more convoluted and useful only in scenarios where you are hosting Odoo yourself.

Dajac Inc.
Author

This solution looks like exactly what I need! Thanks so much for the help.

What dependent fields do you recommend I use to compute this new field? I assume I'll need to compare Quantity to Delivered, but I'm not sure how to get the source code names of those fields.

Also, I'll have to iterate through each line of the sales order to get Quantity and Delivered values for each line. How do I iterate through the lines?

Where can I find a list of available fields and their definitions?

Paresh Wagh

You can activate developer mode and go to Settings > Technical > Models to see the fields and their definitions.

Dajac Inc.
Author

I found the Dependencies and Compute advanced properties, for my newly created field, but these properties are disabled. The interface won't allow me to edit them. What can I do to enable them?

Dajac Inc.
Author

I'm able to edit the properties now. I neglected to click Edit.

How do I iterate through the lines of the sales order and get the Quantity of each line?

Paresh Wagh

Here's an example of adding up the delivered quantities in the sale.order.line model. The total field is to be defined in the sale.order model

for record in self:

record['x_total_qty_delivered'] = sum(line.qty_delivered for line in record.order_line)

Dajac Inc.
Author

Excellent help. Thanks!

It's working now. Here is the complete solution.

Using Studio...

Add a new text field to the Sales Order form.

Set it's name to Delivery Status.

Click "More".

Activate Read Only.

Set Dependencies and Compute as shown below.

Text Field

Delivery Status

x_studio_delivery_status

Dependencies:

order_line.product_uom_qty, order_line.qty_delivered

Compute:

for record in self:

# Calculate sum of quantity on order.

qty_sum = sum(line.product_uom_qty for line in record.order_line)

# Calculate sum of deliverd.

del_sum = sum(line.qty_delivered for line in record.order_line)

if del_sum == 0:

# None delivered, so this is a new order.

record['x_studio_delivery_status'] ="New"

elif qty_sum != del_sum:

# Some delivered, but not all.

record['x_studio_delivery_status'] ="Partial"

else:

# The number delivered is equal to the number ordered, so order fully shipped.

record['x_studio_delivery_status'] ="Done"

Chris TRINGHAM

When I tried to use this, the value of the variable qty_sum seems to be from the first order line only. Any ideas what might be wrong?

Paresh Wagh

Check the definition of the qty_sum field to make sure it is recomputed every time the order lines are updated. Also, store=False.

Chris TRINGHAM

Thanks Paresh. I think it's working now.

Giles M

Thanks Dajac, this is really helpful. It should be part of Odoo really.

Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
Transform Quotations to sales orders or invoices in a bulk action
sales.order
Avatar
Avatar
Avatar
3
Feb 25
3259
Orden de venta borrada por error
sales.order
Avatar
Avatar
1
Dec 24
2816
How to create a subsection in the product order line and make the main section sum the total of the subsections in Odoo? Solved
sales.order
Avatar
Avatar
2
Mar 24
3185
Managing orders from repeat customers Solved
sales.order
Avatar
Avatar
Avatar
2
Mar 24
3747
Sales order from customer order.
sales.order
Avatar
0
Sep 23
2120
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now