com.ibm.commerce.fulfillment.commands
Interface AllocateInventoryCmd

All Superinterfaces:
ECCommand, TaskCommand
All Known Implementing Classes:
AllocateInventoryCmdImpl

public interface AllocateInventoryCmd
extends TaskCommand

This command can allocate, backorder, and reverse inventory allocations for a list of order items.

Optionally performs some of the following operations for each order item:

  1. Merge, if possible, order items in the same correlation group. (Two order items in the same correlation group were split during a previous call to AllocateInventory command. It is possible to merge two order items if they have the same information except for their quantity and information related to their allocation status, such as estimated shipping date offset.) Before an order item is merged, it is deallocated.
  2. Merge, if possible, specified order items, not necessarily in the same correlation group. Order items can be merged if they have identical values for all columns except for ORDERITEMS_ID, QUANTITY, CORRELATIONGROUP, LASTCREATE, LASTUPDATE, information calculated by PrepareOrder task command (such as SHIPCHARGE, SHIPTAXAMOUNT, TAXAMOUNT, TOTALADJUSTMENT, and TOTALPRODUCT), and information specific to the allocation status, such as estimated availability time.
  3. Check that specified order items can be allocated, either from existing or expected inventory, and obtain a fulfillment center and an estimated availability time and shipping offset.
  4. Allocate specified order items from existing inventory, and obtain a fulfillment center and an estimated shipping offset for each order item. The process of allocating from existing inventory may result in an order item being split into multiple order items. When that happens, the so split order items have the same information (including correlation group) except for their quantity and other information related to their allocation status, such as fulfillment center.
  5. Backorder (allocate from expected inventory) specified order items, and obtain a fulfillment center and an estimated availability time and shipping offset for each order item.
  6. Deallocate specified order items if they are allocated to existing or expected inventory.


    Field Summary
    static java.lang.String COPYRIGHT
               
    static java.lang.String defaultCommandClassName
               
    static java.lang.String NAME
               
     
    Method Summary
     void setAllocateOrderItems(java.util.Hashtable ahsAllocateOrderItems)
              Sets the order items to be allocated from existing inventory.
     void setAllOrderItems(java.util.Hashtable ahsAllOrderItems)
              Sets all order items to be considered when determining fulfillment centers or merging order items.
     void setBackorderOrderItems(java.util.Hashtable ahsBackorderOrderItems)
              Sets the order items to be backordered (allocated from expected inventory).
     void setCheckOrderItems(java.util.Hashtable ahsCheckOrderItems)
              Sets the order items to be checked by the CheckInventoryAvailability task command.
     void setMergeOrderItems(java.util.Hashtable ashMergeOrderItems)
              Sets the order items to be merged, if possible.
     void setRemergeOrderItems(java.util.Hashtable ahsRemergeOrderItems)
              Sets the order items to be merged, if possible, with other order items with the same correlation group.
     void setReverseOrderItems(java.util.Hashtable ahsReverseOrderItems)
              Sets the order items to be deallocated.
     
    Methods inherited from interface com.ibm.commerce.command.ECCommand
    checkIsAllowed, checkResourcePermission, execute, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getResources, getStoreId, getUser, getUserId, performExecute, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties, validateParameters
     

    Field Detail

    COPYRIGHT

    public static final java.lang.String COPYRIGHT

    defaultCommandClassName

    public static final java.lang.String defaultCommandClassName

    NAME

    public static final java.lang.String NAME
    Method Detail

    setAllocateOrderItems

    public void setAllocateOrderItems(java.util.Hashtable ahsAllocateOrderItems)
    Sets the order items to be allocated from existing inventory. Fulfillment centers and estimated shipping date offsets will be set for successfully allocated order items.

    setAllOrderItems

    public void setAllOrderItems(java.util.Hashtable ahsAllOrderItems)
    Sets all order items to be considered when determining fulfillment centers or merging order items. Normally this is all the order items in an order.

    setBackorderOrderItems

    public void setBackorderOrderItems(java.util.Hashtable ahsBackorderOrderItems)
    Sets the order items to be backordered (allocated from expected inventory). If an order item appears in both lists of order items set by setAllocateOrderItems and setBackorderOrderItems, then it is backordered only if it cannot be allocated from existing inventory. Fulfillment centers and estimated shipping date offsets will be set for successfully backordered order items.

    setCheckOrderItems

    public void setCheckOrderItems(java.util.Hashtable ahsCheckOrderItems)
    Sets the order items to be checked by the CheckInventoryAvailability task command. Fulfillment centers and estimated shipping date offsets will be set for those order items that successfully pass the check.

    setMergeOrderItems

    public void setMergeOrderItems(java.util.Hashtable ashMergeOrderItems)
    Sets the order items to be merged, if possible.

    setRemergeOrderItems

    public void setRemergeOrderItems(java.util.Hashtable ahsRemergeOrderItems)
    Sets the order items to be merged, if possible, with other order items with the same correlation group.

    setReverseOrderItems

    public void setReverseOrderItems(java.util.Hashtable ahsReverseOrderItems)
    Sets the order items to be deallocated.