1. B-INITIALISE
1.1. BA-RETRIEVE Receives assignment nos. and type of assignemt from calling program(PP08/PP09/PP12/LM43)
1.2. BB-CHECK-PBS-CHAMBER Read DCMX T1 R15, to find if the Assingmnet being processed belongs to PBS chamber or not
1.3. BC-OPTIMAL-STOP-FLAG Read DCMX T1 R5 to find out the value of Optimal Stop Location Flag
1.4. BD-GET-LCML-T91-DIA If optimal stop location flag is set to "Y" or "S" read LCML T91 to get optimal stop location diameter
2. C-MAIN
2.1. IF NOT( Part Pick AND Split Assingmment)
2.1.1. CA-PROCESS-AP-WH Read all the picking locations of the assignment from APFILE or OPFILE or WHFILE and store it in an array
2.1.1.1. CBA-SORT-APFILE Sort the locations in an ascending order
2.1.1.2. CD-TO-FIND-OPT-STOP-LOC
2.1.1.2.1. CDA-TO-FIND-AISLE-RANGE Read the picking locations and find outs in which aisle range the location is falling
2.1.1.2.2. CDB-CALCULATE-DISTANCE Calculates distance between two consecutive picking locations to find out if the picking locations are in the same aisle and distance b/w them is less than Optimal Stop Location Diameter
2.1.1.2.3. CDC-FIND-OSL Tries to find out the Optimal Location b/w the first reference point (first location) and the last reference point(Last location within the same aisle and optimal diameter)
2.1.1.3. CF-LINK-TO-LU01 Links LU01 program to Transmit data from PP15 to another program and then returns the control back to PP15.
3. C-MAIN
3.1. IF Part pick OR Split Assingnmnent
3.1.1. CH-LOAD-ALL-ASSIGN In order to process Multiple assignments store all the assignments in an array along with the picking location of each one.
3.1.2. CI-PROCESS-ASSIGN works out optimal stop location for each assignment by taking one at a time and do in loop until all the assignment captured in step CH-LOAD-ALL-ASSIGN gets over. It calls section CA-PROCESS-AP-WH.