Automatic warehousing training guide


Auto-warehousing is a process of automatically printing out picking slips from a print queue which is collected from all workstation that produce picking slips from orders. Generally, this stage is complete during the training section of the project or during initial discussions of the project with the client, if they have a prior knowledge of the concept of auto-warehousing. Once it is decided that the customer requires the auto warehousing function for their business the following steps need to be confirmed:

  • Which Printer would control the printing for the produced picking slips ?
  • A companion program runs on the server and prints picking slips once automatic warehousing releases them. The printer/s used to print picking slips should always be available to the network. It is preferable to use network attached printers, so warehouse picking slip printing does not stop if someone turns off the computer supporting the warehouse printer.
  • An understand of how long an order should be kept in the queue before it is created into a shipment and printed as a picking slip.
  • What time intervals are required to check and print from the queue for picking slip. e.g. check and print picking ships from the queue every 15 mins from 8 am - 5 pm from Monday to Friday.   

 Auto-Warehousing Workflow Diagram

Auto warehouse does not start running until a Sales Order has been Saved and has a Transaction number. Saving A Transaction for Auto Warehousing

Drop shipments do not qualify for automatic warehousing.

At the time that you receive the invoice against the purchase order/purchase receipt, you are given the chance to "Complete Sale Shipment". Should you not choose to complete the sale shipment, the system will not then issue a sale shipment through the automated warehousing process. You will need to manually ship from the sales order, hit pick if you want to scan check the goods and then complete the sale shipment to issue the invoice.

How orders qualify for automatic warehousing.

  • At least one line of the sale must be fully supplied
  • The number of open and in-progress shipments does not exceed the maximum shipments as configured on the site
  • Transaction type is not 'SALQUO'
  • Status is either Open or Pending
  • Sale is not On Hold
  • Sale has met the minimum % Fully Allocated
  • Sale has not been modified within the "minimum age" as configured on the site
  • Ship after date is either empty or has passed
  • Purchase type is not "Drop Shipment"
  • Any other criteria set on "site" is met

    If those are passed, the order is considered for automatic warehousing
    If it does not ship, you should be able to check the "Log" tab on the sale order for more details

Setting up

Once the data are collected and understood, Readysell will need to be configured to activate the auto warehousing:

  1. From the Navigational panel, click on Administration, click on Sites then select Settings tab to view the Auto-warehousing settings. (Sites > Settings > Auto-Warehousing

     Show me
  2. As seen in the image above there are a few fields and flag which required input from the operator such as:
    1. exclude web orders from auto-warehousing run until its workflow status is changed to Ready by the user  
    2. exclude web order if any product-id is equal SPECIAL i.e., product order from the web site does not exist in the inventory; until it is changed to a valid product-id
    3. exclude sale orders with OnHold Workflow Status

       Show me

      ([Workflow Status] Is Null Or [Workflow Status.Name] <> 'OnHold') And ([Transaction Type.Code] <> 'SALWEB' Or [Transaction Type.Code] = 'SALWEB' And [Workflow Status.Name] = 'Ready' And [Sale Order Lines][[Product.Product ID] = 'SPECIAL'].Count() = 0)


    1. Generate Shipment flag must be on/checked.
    2. Minimum Allocation % is used to work out if any orders might be ready to release. The system checks the percentage fully allocated for each order. If any order has a percentage fully allocated that is greater than or equal to the site specified Minimum Allocation % then that sale order will be considered for generation of a sale shipment and picking slip. 
      It is critical that you are aware that automatic warehousing uses Percent Fully Allocated on the order. This is totally different to the simple Percent Allocated figure on the order. If you look at percent allocated and try to understand what automatic warehousing is doing you will get confused. Stick to Percent Fully Allocated on the sale order. Refer to Understanding Percent Fully Allocated and Linkage to the Auto-Warehouse Function for more details.
    3. Maximum Shipments Outstanding is used in deciding if the warehouse has the capacity for any more shipments. Automatic warehousing will only cause a new sale shipment to print if the warehouse team have time to work on the picking slip. It does this by using the maximum shipment outstanding as a measure of the warehouses total capacity. If the number of sale shipments being picked in the warehouse is greater than or equal to the maximum sale shipments outstanding the warehouse has no spare capacity. Automatic warehousing will stop releasing picking slips. It will wait until the number of sale shipments being picked in the warehouse falls below the maximum shipments allowed to be outstanding in the warehouse at one time. If for example the maximum shipments outstanding is 50. If there are 51 sale shipments in the warehouse, automatic warehousing will wait. Once the number of sale shipment fall below 50, automated warehousing will regard the warehouse as having the capacity to handle more sale shipments. It will then check and see if there are any orders that might be ready to be considered for picking.
    4. Minimum Age can be expressed as minutes or hours The system reads the time at which the sales order was last saved. It then adds the minimum age to the last saved time and checks if the last saved time plus the minimum age is less than the current time. If so the sales order is considered for picking. If not automated warehousing waits until the time span since the sales order was last saved exceeds the minimum age. It then considers the sales order for picking.

      This is expressed in 60 minutes so to calculate the Minimum Age value use the following formula Minimum Age = Order age in minutes / 60

      e.g., For order age is 6 minutes it is calculated as follows

      Minimum Age = 6/60 = 0.1

    5. Mins of Priority for Cut Off : If this is set when the task is considering releasing shipments and where more than one shipment could be released. Give priority to any shipments where the related carriers cut-off time (Administration>Carriers>Cut Off Time) happens within the specified number of minutes.
    6. Always Release Priority to always release shipments if any lines on the order with supply type of 'Priority' and that line is fully allocated.
    7. Criteria is optional and used to include or exclude orders from Auto-warehousing run e.g:
  3. The built-In/programmed criteria are
    1. Exclude sale quotes from auto-warehouse
    2. Exclude sale order if there is a Ship After Date and it has not reached
    3. Include sale order with status Open or InProgress
    4. Supply Type (see supply types)
  4. Ensure the printer which is used for Auto warehousing is installed on all workstations and server involved with Auto warehousing and configured to the workstation settings to the Picking Slip layout.
  5. In the Workstations>General Settings, the Execute Printing Queue flag must be on/checked.

     Show me

  6. In the Administration>Advanced>Tasks section of Readysell, select the Automatic Warehousing task (previously know as Generate Shipments for Allocated Orders), it is required to complete the following step:
    1. Ensure the task is enabled.
    2. Set the schedule to the required time by the client. E.g. Prints order every five minutes during working hours (0 2/5 7-18 * * ?).  This translate that it will run every 5 minutes from 7am to 6pm, 7 days a week. 

       Show me

      *ContactReadysellSupport to change the task schedule e.g. to run from 8am to 4pm Monday-Friday only, the Schedule would be 0 2/5 8-16 ? * MON-FRI

      *Restart ReadysellServer service to effect the change

  7. Once settings are enabled, testing is required by creating a sale and ensure that each stage is completed. The workflow should be as follows:
    1. Create sale order and save the order.
    2. Wait the time allocated to the print job and confirm that a picking slip is produced.
    3. Once that is confirmed, check the order and see if a shipment is created. 

A log is displayed on the task showing what decisions the task makes about each order being considered. Orders that are already posted or which are not up the required percentage allocated do not show on the log. If you are testing and you don't see an order on the log. It is probably held or not yet up to the required fully allocated percentage.

 Show me

The log messages are :

  1. {OutstandingShipments} shipments in the warehouse which is greater than or equal to the maximum shipments allowed ({MaximumSaleShipmentsOutstanding})
  2. {TransactionType} # {TransactionNumber} - Customer does not allow back orders, but shipments already exist
  3. {TransactionType} # {TransactionNumber} - Supply type is 'In Stock' but order has a back-ordered line
  4. {TransactionType} # {TransactionNumber} - Product '{ProductID}' has no category
  5. {TransactionType} # Sale order line {Oid} with product '{ProductID}' ordered '{EachQuantityOrdered}', shipped '{EachQuantityShipped}', allocated '{EachQuantityAllocated}' withdraw stock from product movement {Oid} with balance {Balance}, unallocated shipments: {QuantityOnUnallocatedSaleShipments}, allocated {StockAllocationLines.Sum(Quantity)}. The order is under-allocated, aborting shipping.
  6. {TransactionType} # {TransactionNumber} - Quantity left to ship is zero
  7. {TransactionType} # {TransactionNumber} - Percent fully allocated ({PercentFullyAllocated}) is less than minimum allocation percentage ({MinimumAllocationPercentageOfSaleOrder})
  8. {TransactionType} # {TransactionNumber} - Customer '{CardID}' settings limit them to a maximum of {MaximumShipments} shipments per sale. Final shipment cannot be generated until all lines are fully supplied.
  9. {TransactionType} # {TransactionNumber} - Customer '{CardID}' is on stop, but order is not on hold. Proceeding...
  10. {TransactionType} # {TransactionNumber} - Unable to ship, '{ProductID}' does not have enough stock
  11. {TransactionType} # {TransactionNumber} - Unable to ship, '{ProductID}' (ordered {UnitQuantityOrdered}, attempted to ship {UnitQuantityOnShipments}). Aborting as this would be over-ship.
  12. {TransactionType} # {TransactionNumber} - Generated successfully

where {...} = a substitued value e.g., a variable

Frequently asked questions

Some of the key areas in which new users often have to fine tune operations when using automatic warehousing include:

  • The number of shipments being extracted and manually tracked can be higher than you would like. There is room to:
    • Set some customers to one shipment per order
    • Reduce the maximum number of shipments that automatic warehousing allows to be released into the warehouse at any one time
  • The quantity on sales back order can be dragged onto purchase receipt lines. This shows you the quantity on each receipt line that is a back order and needs to be put aside
  • The picking slip can be setup to print picking slip “n of m” on the picking slip. Which tells you which picking slips are back orders. This can indicate if you need to go to the back order area to get the goods.