Bookshelf Home | Contents | Index | Search | PDF | ![]() ![]() ![]() ![]() |
Siebel Field Service Guide > Fulfillment > Fulfillment Overview >
Fulfillment Engine
The Fulfillment Engine automatically finds and allocates products for selected service orders, and produces pick tickets to use for the orders. The engine uses the following information to find a product:
- Priority of an order, which can influence fulfillment relationships (see the Order Priority field in Relationships View).
- Customer's preferred inventory location. Each account has a default inventory location.
- Relationships among inventory locations (to determine which location to query next if the product cannot be found in a location).
- Product information (for example, available substitutes).
The engine can run from the Field Service user interface, in batch mode using the Repeat Interval, or by Siebel Business Process Designer. As a batch process, fulfillment can be initiated at regular intervals (for example, twice a day for pending high-priority orders or once a day for other orders) or according to conditions (for example, high-priority orders might be fulfilled immediately).
The Fulfillment Engine uses information entered elsewhere in Field Service to decide how to fulfill an order. For example, it considers account information to select the default source inventory location if no source inventory location is specified at the order and the order line item level. Where substitution of products is necessary, the engine uses substitutes specified for a product. If the product is out of stock at the warehouse of first choice, it reads the fulfillment relationships between inventory locations to determine from which other warehouse to fulfill the order. See Inventory Relationships.
The Fulfillment Engine produces this output:
- Allocated parts for each order.
- Pick tickets to be used by picker to pick, pack, and ship each order.
- Inventory transactions for part allocation.
NOTE: For the Fulfillment or Part Locator Engines to allocate a line item from inventory, the line item must have a status of On-Hand for Inventory Level.
Finding Fulfillment Inventory Locations
When fulfilling an order, the Fulfillment Engine looks for parts in this order:
- The source inventory location, if any, defined in the Line Details subview. See Line Detail Subview.
- The source inventory location defined in the Order Fulfillment view. See Fulfillment View. This may be different from the source location in the Line Details subview.
- The inventory location, if any, defined in the Accounts screen. See Accounts View.
- The system preference for DefaultFulfillInvLoc. See System Preferences for the Fulfillment and Part Locator Engines.
Fulfill Command
The Fulfill command on the Orders screen finds the order line items, allocates these items, and generates a pick ticket record for the item. (The Shipping screen, PickTickets view processes pick ticket records.) The Part Locator carries out each of these tasks separately, controlled by the Locate, Allocate, and Generate PickTickets commands.
Locate Button
The Locate button on the Orders screen, Line Items view finds in inventory the product specified in an order line item. It also finds substitutes if the product is unavailable. For more information about this function, see Fulfillment Engine.
Allocate Button
The Allocate button on the Orders screen, Line Items view, Part Locator subview creates an inventory transaction of the type Allocate (see Table 86) that reserves the product.
Generate PickTickets Command
The Generate PickTickets command on the Orders screen produces a pick ticket record. This is the logic behind the button:
- For each line item action of the type Allocate, where the item is not on a pick ticket (the Shipment number field in the Line Items view, Actions subview is blank), the Generate PickTickets function tries to create a valid pick ticket (a new row in table S_SHIPMENT). In doing so, it looks at the source inventory where the allocation is done.
If this inventory is not of the type defined for the InventoryTypeForPT system preference, then it tries to find a parent inventory for the source inventory with the type defined in the InventoryTypeForPT system preference (the default for this is Warehouse). If one is found, then it generates a pick ticket record for this location. For other line item actions that have same source, the same pick ticket is used. A new pick ticket is generated only when source warehouses are different.
- Associates the line item action to that pick ticket by updating the Shipment number field.
Figure 5 shows how the Fulfillment Engine works for an order. For each line item to be fulfilled, it does the following:
- Sets the source as the default source for the line item or the customer site.
- Allocates the lesser of the quantity available for this product and the order quantity pending.
- If the quantity allocated does not equal the quantity pending, reviews possible substitutes for the product and allocates as appropriate.
- If the quantity allocated still does not equal the quantity pending, sets the source as the next source for this order priority.
- If there is a next source, repeat Step 2 through Step 4. If there is no next source, starts again at Step 1.
- When no line items remain to be fulfilled, generates a pick ticket per selected inventory location.
Bookshelf Home | Contents | Index | Search | PDF | ![]() ![]() ![]() ![]() |
Siebel Field Service Guide Published: 21 April 2003 |