In this article I describe the possible ways of picking up a warehouse order for execution in the RF environment, and the algorithm SAP EWM uses to select an order.
In the standard transaction /SCWM/RFUI an order can be picked up for execution from the following menu items:
01 System-Guided – 01 System-Guided Selection

Description:
With this menu item the system looks for the most suitable warehouse order and hands it to the resource for execution.
Selection algorithm:
- The system determines the resource group and the resource type for the resource (CALL FUNCTION '/SCWM/RSRC_RESOURCE_MEMORY')
- For the resource group it determines the list of queues the group is allowed to work in and their sequence (CALL FUNCTION ‘/SCWM/RSRC_QUALIF_QUEUE_CHECK’)
- It goes through the queues one by one, looking for an open warehouse order that this resource type is able to execute
- If orders are found, the first one is handed to the resource for execution, in LSD sort order
01 System-Guided – 02 System-Guided by Queue

Description:
With this menu item the system looks for the most suitable warehouse order in the queue the resource specified, and if one is found it hands it over for execution.
Selection algorithm:
The algorithm is the same as described in the previous item, with the single difference that the order is always searched for in the queue specified by the resource.
02 Manual Selection – 01 Selection by Warehouse Order

Description:
Selecting a warehouse order for execution by its number.
Algorithm:
- For the order entered by the resource, the system determines its queue and its status.
- If the order status is «A», «B» or «C», the system issues a message that the order was not found. If the order status is «D» and the current resource is assigned to it, the system hands the order over for execution. If the status is « », the following checks are performed.
- For the current resource the system determines its group and its type
- It checks whether this resource group is allowed to work in the queue the order is in. If it is not, the system reports that the order was not found.
- It checks whether this resource type is able to execute the order that was entered. If it is not, the system reports that the order was not found.
- If all the checks pass, the order is handed to the resource for execution
02 Manual Selection – 02 Selection by HU

Description:
Selecting a warehouse order for execution by HU number.
Algorithm:
- The system determines the resource group and the resource type
- It determines the open warehouse tasks in which the specified HU acts as the source HU (CALL FUNCTION '/SCWM/TO_READ_SRC'). If any are found, it remembers the warehouse order of that task
- It determines the open warehouse orders in which the HU entered acts as the pick HU (CALL FUNCTION '/SCWM/WHOHU_SELECT'). If any are found, it remembers the warehouse order.
- It checks whether the resource group and the resource type are able to execute the orders that were found.
- If they are, the system hands the order over for execution.
02 Manual Selection – 03 Selection by Warehouse Request

Description:
Picking up warehouse orders for execution by the number and the type of the warehouse request.
Algorithm:
- The system determines the resource group and the resource type
- It determines the warehouse tasks belonging to the warehouse request that was entered (CALL FUNCTION '/SCWM/TO_READ_WHR')
- Out of those it determines the open ones (CALL FUNCTION '/SCWM/TO_READ_MULT')
- It applies the BAdI for filtering pick warehouse tasks (/SCWM/EX_RF_PICK_WT_FILTER~FILTER_WTS, standard fallback /SCWM/CL_EI_RF_PICK_WT_FILTER)
- From the remaining warehouse tasks it determines their order numbers and works out which orders the resource can execute (by resource group and resource type)
- The first one by LSD is handed over for execution.
04 Goods Issue Processes – 01 Picking

Description:
Picking up picking warehouse orders for execution.
Algorithm:
The warehouse order selection algorithm is the same as described above, with the single difference that the system filters the orders it found by order type – «Picking» (in the table /SCWM/WO_RSRC_TY, field content = 2).