[
https://issues.apache.org/jira/browse/OFBIZ-11457?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Swapnil Shah updated OFBIZ-11457:
---------------------------------
Description:
*Business Case*
Many a times its required to promise the delivery date to customers for her
sales orders that are back-order (BO) based on the expected arrival of future
incoming/purchase shipments. Currently its not possible without either manually
pegging the supply to demand or having the MRP run.
*Scope*
The scope of demand versus supply pegging is limited to purchase shipments only
assuming that shipment data would be synced back in Ofbiz and
procurement/replenishment would be external to OFbiz universe. If that is not
the case then MRP run might be preferred way to achieve the same.
*Possible Solution*
To solve for this problem on real time basis, the Reservation flow can be
leveraged as that makes the determination whether the punched in sales order
(or demand for production run for that matter) is going to be backordered or
not.
If and when there is SHIPMENT.ESTIMATED_ARRIVAL_DATE available against the
scheduled or incoming receipts in the system say with
SHIPMENT_TYPE_ID=PURCHASE_SHIPMENT (or INCOMING_SHIPMENT) then the reservation
or post-reservation run can be triggered to peg and allocate the expected
shipment volume to backorders on FIFO basis and inherit the earliest
SHIPMENT.ESTIMATED_ARRIVAL_DATE over
ORDER_ITEM_SHIP_GRP_INV_RES.PROMISED_DATETIME which can be promised and
communicated to customer.
*Use Cases*
1. Product GZ-2644 has 50 units backordered across 2 sales order placed on
different dates:
ORDER_1 : Placed as BO on 01/01/2020 with Order Qty = 30 units with all units
backordered
ORDER_2 : Placed as BO on 01/03/2020 with Order Qty = 20 units with all units
backordered
Two Shipments for Product GZ-2644 scheduled to arrive on different dates as
follows:
SHIPMENT_1 : Estimated Arrival Date on 01/25/2020 with Qty=20 units
SHIPMENT_2 : Estimated Arrival Date on 01/31/2020 with Qty=40 units
_*Expected Result*_
Upon reservation, here is how they would get their promised date:
ORDER_1: Although its pegged to both the shipment (i.e., 20 units from
SHIPMENT_1 and 10 units from SHIPMENT_2) but gets the Promise Date of
01/25/2020 (as shortness takes precedence over lateness)
ORDER_2: It gets pegged to second shipment (20 units from SHIPMENT_2) and gets
the Promise Date of 01/31/2020
2. Product GZ-2644 has 50 units backordered across 2 sales order placed on
different dates but also has Safety Stock threshold of 30 units to be
maintained:
ORDER_1 : Placed as BO on 01/01/2020 with Order Qty = 30 units with all units
backordered
ORDER_2 : Placed as BO on 01/03/2020 with Order Qty = 20 units with all units
backordered
Two Shipments for Product GZ-2644 scheduled to arrive on different dates as
follows:
SHIPMENT_1 : Estimated Arrival Date on 01/25/2020 with Qty=20 units
SHIPMENT_2 : Estimated Arrival Date on 01/31/2020 with Qty=40 units
_*Expected Result*_
Upon reservation, here is how they would get their promised date:
ORDER_1: After allocating 30 units for Safety Stock (i,e., 20 units from
SHIPMENT_1 and 10 units from SHIPMENT_2), its pegged to the second shipment
(i.e., 20 units left from SHIPMENT_2) and gets the Promise Date of 01/31/2020
(as Safety Stock takes precedence over sales orders)
ORDER_2: It gets no shipment left to peg to and hence no promised date or can
be defaulted based on average lead time from supplier.
was:
*Business Case*
Many a times its required to promise the delivery date to customers for her
sales orders that are back-order (BO) based on the expected arrival of future
incoming/purchase shipments. Currently its not possible without either manually
pegging the supply to demand or running the whole MRP engine.
*Possible Solution*
To solve for this problem on real time basis, the Reservation flow can be
leveraged as that makes the determination whether the punched in sales order
(or demand for production run for that matter) is going to be backordered or
not.
If and when there is SHIPMENT.ESTIMATED_ARRIVAL_DATE available against the
scheduled or incoming receipts in the system say with
SHIPMENT_TYPE_ID=PURCHASE_SHIPMENT (or INCOMING_SHIPMENT) then the reservation
or post-reservation run can be triggered to peg and allocate the expected
shipment volume to backorders on FIFO basis and inherit the earliest
SHIPMENT.ESTIMATED_ARRIVAL_DATE over
ORDER_ITEM_SHIP_GRP_INV_RES.PROMISED_DATETIME which can be promised and
communicated to customer.
*Use Cases*
1. Product GZ-2644 has 50 units backordered across 2 sales order placed on
different dates:
ORDER_1 : Placed as BO on 01/01/2020 with Order Qty = 30 units with all units
backordered
ORDER_2 : Placed as BO on 01/03/2020 with Order Qty = 20 units with all units
backordered
Two Shipments for Product GZ-2644 scheduled to arrive on different dates as
follows:
SHIPMENT_1 : Estimated Arrival Date on 01/25/2020 with Qty=20 units
SHIPMENT_2 : Estimated Arrival Date on 01/31/2020 with Qty=40 units
_*Expected Result*_
Upon reservation, here is how they would get their promised date:
ORDER_1: Although its pegged to both the shipment (i.e., 20 units from
SHIPMENT_1 and 10 units from SHIPMENT_2) but gets the Promise Date of
01/25/2020 (as shortness takes precedence over lateness)
ORDER_2: It gets pegged to second shipment (20 units from SHIPMENT_2) and gets
the Promise Date of 01/31/2020
2. Product GZ-2644 has 50 units backordered across 2 sales order placed on
different dates but also has Safety Stock threshold of 30 units to be
maintained:
ORDER_1 : Placed as BO on 01/01/2020 with Order Qty = 30 units with all units
backordered
ORDER_2 : Placed as BO on 01/03/2020 with Order Qty = 20 units with all units
backordered
Two Shipments for Product GZ-2644 scheduled to arrive on different dates as
follows:
SHIPMENT_1 : Estimated Arrival Date on 01/25/2020 with Qty=20 units
SHIPMENT_2 : Estimated Arrival Date on 01/31/2020 with Qty=40 units
_*Expected Result*_
Upon reservation, here is how they would get their promised date:
ORDER_1: After allocating 30 units for Safety Stock (i,e., 20 units from
SHIPMENT_1 and 10 units from SHIPMENT_2), its pegged to the second shipment
(i.e., 20 units left from SHIPMENT_2) and gets the Promise Date of 01/31/2020
(as Safety Stock takes precedence over sales orders)
ORDER_2: It gets no shipment left to peg to and hence no promised date or can
be defaulted based on average lead time from supplier.
> Expected arrival of Incoming Shipment needs to be reflected over back-order
> ---------------------------------------------------------------------------
>
> Key: OFBIZ-11457
> URL: https://issues.apache.org/jira/browse/OFBIZ-11457
> Project: OFBiz
> Issue Type: New Feature
> Components: order
> Affects Versions: 17.12.02
> Reporter: Swapnil Shah
> Priority: Major
> Fix For: Upcoming Branch
>
>
> *Business Case*
> Many a times its required to promise the delivery date to customers for her
> sales orders that are back-order (BO) based on the expected arrival of future
> incoming/purchase shipments. Currently its not possible without either
> manually pegging the supply to demand or having the MRP run.
> *Scope*
> The scope of demand versus supply pegging is limited to purchase shipments
> only assuming that shipment data would be synced back in Ofbiz and
> procurement/replenishment would be external to OFbiz universe. If that is not
> the case then MRP run might be preferred way to achieve the same.
> *Possible Solution*
> To solve for this problem on real time basis, the Reservation flow can be
> leveraged as that makes the determination whether the punched in sales order
> (or demand for production run for that matter) is going to be backordered or
> not.
> If and when there is SHIPMENT.ESTIMATED_ARRIVAL_DATE available against the
> scheduled or incoming receipts in the system say with
> SHIPMENT_TYPE_ID=PURCHASE_SHIPMENT (or INCOMING_SHIPMENT) then the
> reservation or post-reservation run can be triggered to peg and allocate the
> expected shipment volume to backorders on FIFO basis and inherit the earliest
> SHIPMENT.ESTIMATED_ARRIVAL_DATE over
> ORDER_ITEM_SHIP_GRP_INV_RES.PROMISED_DATETIME which can be promised and
> communicated to customer.
> *Use Cases*
> 1. Product GZ-2644 has 50 units backordered across 2 sales order placed on
> different dates:
> ORDER_1 : Placed as BO on 01/01/2020 with Order Qty = 30 units with all
> units backordered
> ORDER_2 : Placed as BO on 01/03/2020 with Order Qty = 20 units with all
> units backordered
> Two Shipments for Product GZ-2644 scheduled to arrive on different dates as
> follows:
> SHIPMENT_1 : Estimated Arrival Date on 01/25/2020 with Qty=20 units
> SHIPMENT_2 : Estimated Arrival Date on 01/31/2020 with Qty=40 units
> _*Expected Result*_
> Upon reservation, here is how they would get their promised date:
> ORDER_1: Although its pegged to both the shipment (i.e., 20 units from
> SHIPMENT_1 and 10 units from SHIPMENT_2) but gets the Promise Date of
> 01/25/2020 (as shortness takes precedence over lateness)
> ORDER_2: It gets pegged to second shipment (20 units from SHIPMENT_2) and
> gets the Promise Date of 01/31/2020
> 2. Product GZ-2644 has 50 units backordered across 2 sales order placed on
> different dates but also has Safety Stock threshold of 30 units to be
> maintained:
> ORDER_1 : Placed as BO on 01/01/2020 with Order Qty = 30 units with all
> units backordered
> ORDER_2 : Placed as BO on 01/03/2020 with Order Qty = 20 units with all
> units backordered
> Two Shipments for Product GZ-2644 scheduled to arrive on different dates as
> follows:
> SHIPMENT_1 : Estimated Arrival Date on 01/25/2020 with Qty=20 units
> SHIPMENT_2 : Estimated Arrival Date on 01/31/2020 with Qty=40 units
> _*Expected Result*_
> Upon reservation, here is how they would get their promised date:
> ORDER_1: After allocating 30 units for Safety Stock (i,e., 20 units from
> SHIPMENT_1 and 10 units from SHIPMENT_2), its pegged to the second shipment
> (i.e., 20 units left from SHIPMENT_2) and gets the Promise Date of 01/31/2020
> (as Safety Stock takes precedence over sales orders)
> ORDER_2: It gets no shipment left to peg to and hence no promised date or
> can be defaulted based on average lead time from supplier.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)