As Sales Orders, Loaners Orders, and Shop Orders are created and saved, or are edited and saved, the system tries to allocate any available inventory for each item to the order lines that require the item.
As Inventory is received into the system on purchase orders, the system also tries to allocate any newly available quantities for each item to order lines that may be waiting for the item.
Sales Order Entry: During the save process, after the operator has entered the order, the system checks the available quantity for each item on the order and it compares it to the quantity reserved for the item. The number of units on hand greater than the reserved quantity is the quantity available. If there are units available to allocate to the order the SHIP_QTY in the order line record is incremented and the QTY_ALLOC in the inventory record is incremented by the number available and the order line is saved with STATUS=O (open). If there are no units available, then the order is saved with STATUS=B (back ordered) and neither quantity above is incremented.
In either case the QTY_RSV in the inventory record is incremented by the quantity ordered.
Order Editing: When a sales order is edited, and the quantity ordered of a line is changed (increased or decreased), the system will attempt allocate more product to the order line if the quantity ordered is increased, and will de-allocate inventory if the quantity ordered is decreased.
Shop Order Completion: Each time a shop order is completed the allocation routine is called and the items just produced are allocated to open sales orders. If the shop order was created pointing to a sales order then completed goods are first allocated to the sales order and any remaining goods are allocated according in line with the normal allocation sequence.
Whether or not the system tries to allocate inventory to an individual order line or not depends on several factors.
Order Type: The System will try to allocate inventory to Sales Orders, Loaner Orders, and Shop Order Lines. Inventory is never allocated to a Quote.
Fullfilment Method: The system will allocate in house inventory quantities to Warehouse lines. The System will also allocate in house inventory quantities to Special Order Lines, once the purchase orders for the lines have been received. The system does not allocate in house stock to vendor shipment lines (they are saved as open, but the items ship directly from the vendor to your customer, so they are not allocated to from your in-house warehouse quantities).
Item Stock Flag: Nonstock Items are considered to be available at all times, and all order lines for non-stock items are fully allocated to as they are created. The sytem ignores the item quantity (which is 0) and the scheduling window for nonstock items and saves the order lines for the nonstock items as open and allocated to (ready to complete). For a Nonstock item, the allocated quantity in the item can be higher than the on hand quantity for the item.
Available Quantity: The System will only allocate the available quantity for a stocking item. The available quantity is the on hand quantity, less the allocated quantity for the item, less any safety stock that has been defined for the item (safety stock must be manually allocated).
Scheduling Window: The System will only allocate any available quantity for a stocking item to the order lines for the item when the order line is within the scheduling window for the item. The scheduling window is a number of days that is defined for each item. The system checks the current date and the lead time in the item to determine the scheduling window for each item (i.e. today plus 30 days). Order lines scheduled in the window (due to ship in 30 days or less) are allocated to. Order Lines with schedule dates greater than the window or to be shipped in the future are not allocated to, until they become current. The order line schedule date and the shop order header schedule date are used to determine when an order is scheduled to be shipped or completed.
Order Printed Flag. The System will not allocate to a Sales Order, Loaner Order, or a Shop Order Line that is printed (i.e. when a printed picklist or pull ticket exists for the line).