Defining command prefix strings
You should adopt a system-wide convention for your CPFs for all subsystems to avoid conflicts. You should adhere to the following guidelines:
- Define a CPF as string of up to eight characters.
- Do not use a CPF that is already in use by any other subsystem, and avoid using the JES backspace character defined on your system as the first character of your string.
- Define your CPF using characters from the set of valid characters listed in Table 6.
- Do not use a CPF that is an abbreviation for an already defined process or that might be confused with command syntax. For example, a CPF such as 'D' conflicts with z/OS commands such as DISPLAY. To avoid this happening, you should use one of the special characters (shown in Table 6) as the first or only character in your CPF string.
- Do not define a CPF that is either a subset or a superset of an existing CPF. For an example, see Table 5.
Table 5. Example of CPF subset and superset rules Subsystem name CPF defined Commands routed to... MQA !A MQA MQB !B MQB MQC1 !C1 MQC1 MQC2 !C2 MQC2 MQB1 !B1 MQB Commands intended for subsystem MQB1 (using CPF !B1) are routed to subsystem MQB because the CPF for this subsystem is !B, a subset of !B1. For example, if you entered the command:
!B1 START QMGRsubsystem MQB receives the command:
1 START QMGR(which, in this case, it cannot deal with).
We can see which prefixes already exist by issuing the z/OS command DISPLAY OPDATA.
If you are running in a sysplex, z/OS diagnoses any conflicts of this type at the time of CPF registration (see CPFs in a sysplex environment for information about CPF registration).
Table 6 shows the characters that we can use when defining your CPF strings:
Table 6. Valid character set for CPF strings Character set Contents Alphabetic Uppercase A through Z, lowercase a through z Numeric 0 through 9 National (see note) @ $ # (Characters that can be represented as hexadecimal values X'7C', X'5B', and X'7B', respectively) Special . / ( ) * & + - = ¢ < | ! ; % _ ? : > Note:The system recognizes the following hexadecimal representations of the national characters: @ as X'7C', $ as X'5B', and # as X'7B'. In countries other than the U.S., the U.S. national characters represented on terminal keyboards might generate a different hexadecimal representation and cause an error. For example, in some countries the $ character might generate an X'4A'.