Memory pool ID

The memory pool ID (POOLID) parameter of the routing entry specifies the pool identifier of the storage pool in which the program runs. The pool identifier specified here relates to the storage pools in the subsystem description.

Program to call

The program to call (PGM) parameter of the routing entry specifies the name and library of the program called as the first program run in the routing step. No parameters can be passed to the specified program. The program name can be either explicitly specified in the routing entry, or extracted from the routing data.

If a program name is specified in a routing entry, selection of that routing entry results in the routing entry program being called (regardless of the program name passed in an EVOKE function). If the program specified in the EVOKE function is supposed to be called, *RTGDTA must be specified in this parameter. If the program does not exist when the routing entry is added or changed, a library qualifier must be specified because the qualified program name is kept in the subsystem description.

Sequence number

The sequence number (SEQNBR) parameter of the routing entry tells the subsystem the order in which routing entries are to be searched for a routing data match. The routing entries are searched in sequence number order. When you add routing entries to a subsystem description, you should order them so that the entries likely to be compared most often are first. This reduces the search time.

Sequence Number Comparison Value
10 'ABC'
20 'AB'
30 'A'
40 'E'
50 'D'
In the above example, the routing entries are searched in sequence number order. If the routing data is ’A’, the search ends with routing entry 30. If the routing data is ’AB’, the search ends with routing entry 20. If the routing data is ’ABC’, the search ends with routing entry 10. Because routing data can be longer than the comparison value of the routing entry, the comparison (which is done in left-to-right order) stops when it reaches the end of the comparison value. Therefore, if the routing data is ’ABCD’, the search ends with routing entry 10.
When you define routing entries, they must be ordered from the most specific to the most general. The following example shows a correct and incorrect way to define routing entries:
Correct Incorrect
Sequence Number Comparison Value Sequence Number Comparison Value
10 'ABC' 10 'ABC'
20 'AB' 20 'ABCD'
30 'A'    
40 'E'    
9999 *ANY    
In the incorrect example, it is no longer possible to match routing entry 20 because any routing data that matches the comparison value for routing entry 20 matches the routing entry 10 first. When a routing entry is changed or added to a subsystem description with a comparison value that causes this situation, the system sends a diagnostic message identifying the situation.

The program named in the routing entry is given control when the routing step for the job is started. Parameters to control the run-time environment (priority, time slice, and so on) of the routing step for the job are taken from the class specified in the routing entry.

Related concepts
Class
Comparison data
Maximum active routing steps