Sales Order
This is the order received from the customer for the sellable item. It defines the list of all the line items that have been requested in a sales order.
Field Id | Description |
---|---|
SalesOrderId | This is a unique identifier used to track sales/customer orders |
SalesLineId | The identifier of a line in the sales order. |
SalesOrderDesc | Description of sales line |
Item | The identifier of the item being sold to the customer |
RequestedItem | The identifier of the item that was requested by the customer. |
CustomerId | An identifier of the customer. |
OrderStatus | Represents the status of an order. If the order is cancelled, then it will not plan for this order. |
OrderType | If this is a sales order or forecast or stock. |
QtyOrdered | This is the quantity of item promised and accepted by the customer. |
QtyShipped | The cumulative units of the material shipped against this line. While planning, the Quantity to be planned is QtyOrdered – QtyShipped. QtyShipped should be less than or equal to QtyOrdered. |
QtyRejected | This is the quantity rejected on the shipped quantity. |
RequestedDeliveryDate | The date on which the customer has requested the delivery of goods. |
ActualDeliveryDate | The date when the goods were actually delivered |
BuildAheadLimit | The maximum number of time units that the order is planned early than the due date. |
BuildUom | Unit of measure of time for BuildAheadLimit |
Priority | The relative importance of the sales order. The lower the value, the higher the importance. If no priority is specified, then those orders will have the least priority. |
RoutingId | If there are multiple routings, then we can specify which routing this sales order should pick up. If not specified, then the sales order will go into that routing where ever there is capacity. This routing is applicable only for the first level of BOM. |
Attribute | If the selection of routing needs to be done in the 2nd or 3rd level of BOM, then attribute has to be populated. The same attribute value should be populated in the BOM Production as well. |
CompletionDate | Date when the sales order will get completed. This is populated during planning by the system |
Region | This column can be used to populate the region if the sales order line moves to history and that can be used for forecast calculation. |
SupplyTolerance | Supply tolerance limit allowed while fulfilling a sales order. The value should be between 0 and 1. Suppose demand is 100, inventory is 98 and supply tolerance is .1, then it will allocate 98 inventory to the demand. The leftover demand is 100 - 98 = 2. So unfulfilled ratio is 2/100 = 0.02 which is less than 0.1. So it will not look for further supply. If the inventory had been only 85, the unfulfilled ratio is 15/100 = 0.15. This is greater than the tolerance of 0.1 and so it would look for further supply. By default, the value is 0.001. |
Validation
- SalesOrderId and SalesLineId combination should be unique
- QtyShipped cannot be greater than QtyOrdered
- Sales orders can be created only for those items which are marked as sellable in the item master
- Sales orders can be created only if the customer is linked to that item as part of static data.
- Sales Order Planning
- While planning for sales orders, all the orders are sorted based on priority. The lower the number, the higher the priority. If there is a tie in priority, then the orders will be sorted based on the due date and then by the lesser quantity ordered. So sorting is based on priority – due date – quantity. If no priority is specified, then these orders are considered the least priority. They will be sorted based on the due date and then by quantity.
Suppose we have the following sales orders in the system.
Sales OrderId | Qty Ordered | Qty Shipped | Qty Rejected | Due Date | Build Ahead Limit | Build Ahead Uom | Priority |
---|---|---|---|---|---|---|---|
SO_1 | 100 | 100 | 20 | 9/10/2004 | 2 | Days | |
SO_2 | 100 | 0 | 0 | 10/10/2004 | 1 | Days | 1 |
SO_3 | 200 | 0 | 0 | 10/10/2004 | 1 | Days | 1 |
In the above example, SO_2 will be planned first, then SO_3 and last will be SO_1. The due dates will be subtracted based on the build ahead limit.
What-if Analysis
This is a feature, which helps the user to run various scenarios or simulations on a sales order and find out if the sales order can be completed within the due date. Occasions, when this functionality can be used, are:
-
Received a new order from the customer and need to give a quote on the due date and quantity with existing orders and constraints in the system.
-
Change in customer requirements like due date or quantity. These changes can be checked if it is feasible and communicated back to the customer.
-
Running simulations on what will happen if overtime is added or adding new shifts or increasing the capacity.
Running what-if analysis
Any sales order can be selected from the sales order screen. It can be more than one. Then either the infinite capacity plan or finite capacity plan button can be clicked. This will open a new window giving the sales order plan for the selected sales orders. User can either accepts the changes and save the plan by clicking on save or revert back to the old one by clicking on cancel.