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

Negative on-hand should be physically impossible?

Subscribe

Get notified when there's activity on this post

This question has been flagged
inventoryquantityquantities
3 Replies
17781 Views
Avatar
Sean Samborski

I'm trying to get some insight on the thinking behind on-hand and forecasted quantities. I ahve noticed when you sell more than you have, both on-hand and forecasted will become negative. This seems like a mistake because a negative on-hand is physically impossible.

 

Let's imagine this scenario:

 

I have 5 apples.

I sell 10 apples.

I do not have -5 apples at this point becasue that would go against the laws of physics. I have 0 apples but have orders for 5 more. In OpenERP, you have -5 on-hand and -5 forecasted.

 

I am not concerned with selling more than you have, that is irrelevant to this question, but shouldn't on-hand only ever be greater than or equal to 0?

2
Avatar
Discard
Ray Carnes

On hand will only be greater than equal to 0 if you have no unprocessed inventory movements (deliveries, incoming shipments). Since people make mistakes, and things get backed up, the system if flexible enough so that things don't grind to a halt just because the receiving desk guy went to lunch before entering in the last case of apples to arrive.

Sean Samborski
Author

Hi, Ray. I understand what the system does and why it does it, I guess my question was more along the lines of why not just develop it to use the forecasted for all those calculations but keep on-hand accurate and realistic.

Ray Carnes

You are free to change the way the system works if you have a need that is different - that's the best thing about open source systems. For every 'why not do it this way?' there is a 'why do it that way?'. The editor chooses based on design principles, user feedback, community feedback, competing software, etc. Users then create modules that allow for special use cases.

Avatar
Ricardo Gross
Best Answer

Those who want to avoid negative stock scenarios could install the widely approved OCA module: https://odoo-community.org/shop/stock-disallow-negative-2467#attr=19307

0
Avatar
Discard
Avatar
Fabien Pinckaers (fp)
Best Answer

Negative on hand inventories do not exist in real life but it's a great feature. Your use case is not 100% right. If you have 5 apples in your inventory and sell 10, before having done the delivery, you get: - forecasted quantities: -5 - on hand quantities: +5 It's of course impossible that, in the future, you get "-5" apple in your inventory. But it's a great information since it tells you that if you do nothing, you will be 5 apples short according to what you promised to your customers. In real life, if your inventory is correct, you will deliver 5 apples to your customer and keep the others 5 in a backorder. But if, in real life, you force the system and deliver 10, Odoo lets you do it instead of blocking the delivery order operation. (which is correct because if you really delivered 10 apples, your delivery order must be 10 apples, even if Odoo think there is only 5 on hand) In that case, the on hand inventory becomes "-5". Even if it's not possible in the real life, it's a good information because it tells you that you made a mistake when recording incoming/ship ping operations. The most probable reason is that you forgot to record an incoming shipment. When you will record the missing incoming shipment (or do an inventory for this product), the on hand inventory will become positive again. Not that by doing so, Odoo ensure that: "on hand inventory" is always equal to "incoming - outgoing shipments", like in the real life.

Note that putting 0 instead of "-5" would be erroneous as you break this equation. And, when you will record the missing incoming shipment, your inventory will be completely wrong.
0
Avatar
Discard
Sean Samborski
Author

I understand where you're coming from. For feature wise it could be nice but I think for us we'll have to develop it to keep on-hand at 0 and the negative values in the forecasted. We run on-hand reports and they have to show exactly what we have, not what we've sold. We'll have to develop and test thoroughly for sure but I think this will be the best method for us. BTW, not me giving out the downvotes here. Guess someone else doesn't like it.

Mahmoud

i know there is a variable or field in product.product called free_qty

and it never become negative

but it become negative and i dont know how ????

should i create a bug ?

Avatar
Ludo - 21South
Best Answer

I have to agree with you, but the current stock does not work like that. The reason for this being that both "on-hand" as well as "forecasted" values are calculated, not set numbers. So basically, OpenERP is will calculate each time something relevant happens to the stock location and/or product (for example selling it, or moving it from one location to the other). Up front, OpenERP only knows at one specific moment if the move is going to take the stock to anything less then zero, thus giving you a warning ("You are about to sell 10 but you only have 5, are you sure?"). Should you ignore this warning then OpenERP assumes the current stock is somehow manipulated outside of OpenERP ( you bought 20 apples from the guy down the road and put them in your inventory) and still allows you to make that sale.

The folks over at Odoo already promised to work on stock in the new version, so I wonder if this issue will remain when Odoo 8 is finally stable.

0
Avatar
Discard
Sean Samborski
Author

If you read Fabien's answer here I'm thinking this is going to stay the way it is. If that works for the majority of users, that's what Odoo will do. I was just asking from a logic standpoint and accurate reporting standpoint.

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
Warehouse | QTY
inventory quantity
Avatar
Avatar
1
Jul 21
3154
Set the quantity by default to 0 if it is not validated yet. Solved
inventory receipt quantity
Avatar
Avatar
1
Jul 25
3072
Negative quantities on hand
inventory quantity Quantity on Hand
Avatar
Avatar
2
Oct 24
3176
Inventory adjustment error Solved
inventory quantity Quantity on Hand
Avatar
Avatar
Avatar
Avatar
3
Jul 22
7263
Set initial stock - importing quantity
import inventory quantity
Avatar
Avatar
2
Jan 21
5689
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