Projected Quantity does not have any value for the user

The documentation states “Projected Quantity is the level of stock that is predicted for a particular Item based on the current stock levels and other requirements”.
However it does NOT!
example 1:
Suppose you have stock =0 and a purchase of 10 will arrive in 1 week. projected stock = 10.
If you get a customer order of 3 with requested delivery date in 4 days the projected quantity is 7 and thus implies you will not have any problems. However in real life you have, because you cannot deliver!!!
example 2:
you have stock of 10. purchase leadtime of the product is 1 month. product cost price = 1000 USD per piece. you have a sales order for 1000 pieces to be delivered in 12 months.
The projected quantity will be -990. So this implies a problem !! the user will think he has to order but if he does now (witout using mrp) he will have spent 1000 * 1000 = 1.000.000 USD 11 month in advance.
So the projected quantity formula is incorrect !!

Wy is it incorrect: because it does not take into account the timing of all movements and reservation.

what should be in ERPNEXT:

  • economic stock level in every movement and reservation
  • avaliable to promise calculation
  • capable to promise calculation
  1. Available to promise is: calculate if stock is available on the requested sales order delivery date.
    This can either be done
    1a) by using your :“Projected quantity” calculation BUT only taking into account stock, all movements and reservation between now and the delivery date !!
    1b) Or registering in every move and reservation the calculated stock level at that moment (= economic stock level).
    If you get a new sales order you can easily go to the movement/reservation of that date, look at the economic stock level and decide if enough stock is available.

a remark: only no problem will result for other customers if stock level at purchase lead-time date is also above 0!!

  1. Capable to promise:
    this is used when not enough stock is available, it determines what the earliest date will be it will be available. So taking into account purchase lead-time, assembly times, etc.

Thank you for reporting this and welcome to ERPNext @mp2020!

I read somewhere the first rule of open source is when you find something you don’t like, fix it :slight_smile:

So perhaps users familiar with the case you outline can advise what they do to handle this situation?

One option as a next step to its resolution is to develop a test for that would define this particular constraint in concrete terms.

Perhaps other interests will chime in here…

Good question, this is the missing MRP report(in SAP the most popular transaction code MD04) like the below, this to-be added new report should be linked as drill down detail of the projected quantity report, it also should have summary by period like the stock balance report, the only difference is that this new report is based on future material movements instead of actual movements.

1 Like

Indeed the SAP example is a good example of the report. In there you see the available / economic projected quantiy (for sales). MRP for purchasing should react on this.
Apart from this insight via a report, ERPnext would also benefit having instant calculation of available quantity on the sales order / quotation based on the requested delivery date. (so you don’t have to look at the report to confirm the order).

yes, in SAP there is availability check button in sales order and production order( work order in ERPNext) which links to this report filtered by the relevant item.

Just a reminder for future reference, this slide explains very well the order reservation logic in SAP, can be considered in ERPNext? it will involve huge efforts because currently no grand child(schedule line as child under item child table) support available

Just found out via the stock ledger report that in the database a field is present which actually shows the economic stock level (in a specific warehouse) of an article. So why is ERPnext not using this field as a basis for the Available to promise and MRP?? The field is called “Balance Qty”.

I hope the MRP creation of material requests is reacting on the balance quantity versus re-order level, otherwise ERPNext also generates incorrect purchase requisitions.

I’m also questioning the usefulness of a Projected Qty without reference to a future date.

I am particularly curious to know how others handle this, having many stock transactions planned in the future?

For example, let’s say I schedule 2 months ahead of work orders. As soon as they are submitted, the next MRP run will generate material requests right away for all work orders, without considering the work order planned date nor the raw material lead time to purchase.