z/OS TSO/E User's Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Changing Program Function (PF) Key Definitions

z/OS TSO/E User's Guide
SA32-0971-00

Program function (PF) keys can be defined as TSO/E or Session Manager commands, input to programs, or text-strings that comment your streams. Use the CHANGE.PFK command to modify the meaning of any of the PF keys. This command requires that you enter the number of the PF key to be changed, the definition-text-string for the key, and the name of the stream where the definition-text-string is to be placed when the PF key is pressed.

You can make a PF key a TSO/E command (or commands) by defining the definition-text-string as a valid TSO/E command or subcommand and specifying TSOIN as the target stream-name. This is useful when working with programs that prompt for input or commands that have subcommands. For example, you can define a PF key as often-entered subcommands of the TSO/E TEST command, such as SAVE or GO.

You can make a PF key a Session Manager command (or commands) by defining the definition-text-string as a valid Session Manager command and specifying SMIN as the target stream-name. This is done in the default environment to allow you to use the PF keys for scrolling.

If you have the definition-text-string sent to another stream (such as the TSOOUT stream), the PF keys can be used to comment your streams.

When you press a PF key, Session Manager:
  • Places each line of information typed on the screen since the last time you pressed the Enter, CLEAR, PA1, PA2, or any PF key in the appropriate stream, just as if you had pressed the Enter key.
  • Places the definition-text-string of the PF key definition in the target stream.
You can also define PF keys to perform symbolic substitution when they are pressed. When you define the PF key, you can specify symbolic arguments within the definition-text-string and specify the SUBSTITUTE keyword operand to indicate that symbolic substitution is to be performed. Each symbolic argument is denoted by an ampersand (&) followed by an integer (or an asterisk). For example,
&1., &2., &3., … &n., and &*.
If the ampersand appears elsewhere in the definition-text-string when SUBSTITUTE is specified, it must be doubled.

You must provide parameters (tokens) to this symbolic substitution process by entering them on a line of the screen (separated by one or more blanks), and pressing the PF key.

Session Manager performs the symbolic substitution for each new line of information found on the screen when you press a PF key. It:
  • Scans the line of information once from left to right and breaks the line into as many words (tokens) as there are numbered symbolic arguments in the PF key definition-text-string. This process is called tokenization. The remainder of the text in the line becomes the "*" token. If there are no numeric symbolic arguments in the text, the entire line of information becomes the "*" token.
  • Substitutes the words (tokens) into the PF key definition-text-string, replacing the symbolic arguments. If there are more symbolic arguments than words, null characters are substituted for those arguments. If there are more words than symbolic arguments, the extra words are ignored. If there are no modified fields on the screen, null characters are substituted for each argument in the text-string.
  • Places the resulting definition-text-string in the next available line of the target stream.

The periods immediately following the numeric symbolic arguments are used to distinguish the arguments from the characters immediately following them in the definition-text-string. The periods are not needed if the character after the argument is not a digit.

The example section of the CHANGE.PFK command includes several examples of how the PF keys can be defined.

Most PF keys in the default environment are defined as a string of Session Manager commands that are placed in the SMIN stream.

The following table summarizes the default definitions of the PF keys. PF keys 13-24 have the same definition as PF keys 1-12.

Table 1. Program Function (PF) Key Definitions
PF Key/PF Key Default Definition PF Key/PF Key Default Definition PF Key/PF Key Default Definition
PF1/13 Not Defined PF2/14 Set Scroll Amount PF3/15 Not Defined
PF4/16 Not Defined PF5/17 Find/Repeat Find PF6/18 Change CURRENT Window
PF7/19 Scroll Backward PF8/20 Scroll Forward PF9/21 Scroll Top
PF10/22 Scroll Left PF11/23 Scroll Right PF12/24 Scroll Bottom Unlock
The following section describes how the PF keys are defined in the default environment. Most of the keys are defined as several Session Manager commands that work together to create the desired effect. Unless you are using the split screen capability or have changed the definition for the default window, all references to the default window mean the MAIN window. For a complete description of each command, refer to z/OS TSO/E Command Reference.
PF1/13
PF1/13 is not defined in the default environment. If you press this key, Session Manager does the following:
  • Places the message "PF1 NOT DEFINED" or "PF13 NOT DEFINED" in the SMOUT stream
  • Moves the PASSWD window so that the window displays the message.
The commands that issue the message and move the PASSWD window over the SMOUT stream are:
CHANGE.PFK 1 'PFK 1 NOT DEFINED' SMOUT;
              CHANGE.WINDOW PASSWD
              VIEW(SMOUT)
PF2/14
PF2/14 accepts the value typed on the screen for the scroll amount field and places this value highlighted in the EXTRA3 stream. It then changes the definitions of the scroll PF keys (PF7/19, PF8/20, PF10/22, and PF11/23) to do the following:
  • Set the scroll value to zero. This is done so that the default window will not move if a not valid value is entered.
  • Scroll the amount entered. Session Manager substitutes the value entered in the place of the symbolic argument in the AMOUNT operand.
  • Scroll the LVALUE window over line 8 in the HEADER stream so the word "LOCKED" is displayed.
  • Unlock the terminal keyboard so additional scrolling PF keys can be pressed.
  • Scroll the LINE window the entered amount (for PF keys 10/22 and 11/23 only).
The commands that define PF2/14 are:
CHANGE.PFK 2 'PUT ''&1'' EXTRA3 INTENSITY(2);
              CHANGE.PFK 7 ''SCROLL.BACK 0;
               SCROLL.BACK AMOUNT(&1);
               SCROLL.ABSOLUTE 8 LVALUE;
               CHANGE.TERMINAL CONTROL(0)''
               SMIN;
              CHANGE.PFK 8 ''SCROLL.FORWARD 0;
               SCROLL.FORWARD AMOUNT(&1);
               SCROLL.ABSOLUTE 8 LVALUE;
               CHANGE.TERMINAL CONTROL(0)''
               SMIN;
              CHANGE.PFK 10 ''SCROLL.LEFT 0;
               SCROLL.LEFT AMOUNT(&1);
               SCROLL.LEFT LINE AMOUNT(&1);
               SCROLL.ABSOLUTE 8 LVALUE;
               CHANGE.TERMINAL CONTROL(0)''
               SMIN;
              CHANGE.PFK 11 ''SCROLL.RIGHT 0;
               SCROLL.RIGHT AMOUNT(&1);
               SCROLL.RIGHT LINE AMOUNT(&1);
               SCROLL.ABSOLUTE 8 LVALUE;
               CHANGE.TERMINAL CONTROL(0)''
               SMIN' SMIN SUBSTITUTE
PF3/15
PF3/15 is not defined in the default environment. If you press this key, Session Manager does the following:
  • Places the message "PF3 NOT DEFINED" or "PF15 NOT DEFINED" in the SMOUT stream
  • Moves the PASSWD window so that it displays the message
The commands that issue the message and move the PASSWD window over the SMOUT stream are:
CHANGE.PFK 3 'PFK 3 NOT DEFINED' SMOUT;
              CHANGE.WINDOW PASSWD VIEW(SMOUT)
PF4/16
PF4/16 is not defined in the default environment. If you press this key, Session Manager does the following:
  • Places the message "PF4 NOT DEFINED" or "PF16 NOT DEFINED" in the SMOUT stream
  • Moves the PASSWD window so that it displays the message
The commands that issue the message and move the PASSWD window over the SMOUT stream are:
CHANGE.PFK 4 'PFK 4 NOT DEFINED' SMOUT;
              CHANGE.WINDOW PASSWD VIEW(SMOUT)
PF5/17
PF5/17 is the find/repeat find key. It does the following:
  • Locks the default window by issuing the SCROLL command specifying a value of 0.
  • Issues the FIND.BACKWARD command substituting the information typed on the screen as the character string to be found. If you press PF5/17 without typing anything on the screen, the previous find command is repeated.
  • Sets the terminal keyboard control to unlock after 5 seconds.
  • Scrolls the LVALUE window to display the word "LOCKED" on line 8 in the HEADER stream.
The commands that define PF5/17 are:
CHANGE.PFK 5 'SCROLL.BACKWARD 0;
              FIND.BACKWARD ''&*'';
              CHANGE    TERMINAL CONTROL(5);
              SCROLL.ABSOLUTE 8 LVALUE' SMIN
              SUBSTITUTE(&)
PF6/18
PF6/18 changes the CURRENT window to display either the last two lines in the TSOOUT stream or the last two lines in the TSOIN stream. Initially, the window displays the last two lines in the TSOOUT stream. When you press PF6/18, it does the following:
  • Saves all of the current PF key definitions
  • Changes the CURRENT window to display the TSOIN stream
  • Redefines itself so that the next time you press the key, the CURRENT window again displays the TSOOUT stream and the PF key definitions are restored
The commands that define PF6/18 are:
CHANGE.PFK 6 'SAVE.PFK;
              CHANGE.WINDOW CURRENT
              TARGET(TSOIN) VIEW(TSOIN);
              CHANGE.PFK 6 ''CHANGE.WINDOW
              CURRENT TARGET(TSOIN)
              VIEW(TSOOUT);
              RESTORE.PFK '' SMIN ' SMIN
PF7/19
PF7/19 does the following:
  • Scrolls the default window backward a half-page over the stream it is displaying (As part of the SCROLL command, Session Manager locks the window.)
  • Unlocks the keyboard
  • Scrolls the LVALUE window to display the word "LOCKED" on line 8 in the HEADER stream
The commands that define PF7/19 are:
CHANGE.PFK 7 'SCROLL.BACKWARD AMOUNT(HALF);
               CHANGE.TERMINAL CNTL(0);
               SCROLL.ABSOLUTE 8 LVALUE' SMIN
PF8/20
PF8/20 does the following:
  • Scrolls the default window forward a half-page over the stream it is displaying (As part of the SCROLL command, Session Manager locks the window.)
  • Unlocks the keyboard
  • Scrolls the LVALUE window to display the word "LOCKED" on line 8 in the HEADER stream
The commands that define PF8/20 are:
CHANGE.PFK 8 'SCROLL.FORWARD AMOUNT(HALF);
               CHANGE.TERMINAL CNTL(0);
               SCROLL.ABSOLUTE 8 LVALUE' SMIN
PF9/21
PF9/21 does the following:
  • Scrolls the default window to the oldest information in the stream it is displaying (As part of the SCROLL command, Session Manager locks the window.)
  • Unlocks the terminal keyboard so that additional PF keys can be used
  • Scrolls the LVALUE window to display the word "LOCKED" on line 8 in the HEADER stream
The commands that define PF9/21 are:
CHANGE.PFK 9 'SCROLL.OLDEST;
              CHANGE.TERMINAL CNTL(0);
              SCROLL.ABSOLUTE 8 LVALUE'
              SMIN
PF10/22
PF10/22 does the following:
  • Scrolls the default window one half-page to the left side of the information in the stream it is displaying (As part of the SCROLL command, Session Manager locks the window.)
  • Scrolls the LINE window one half-page to the left
  • Unlocks the terminal keyboard
  • Moves the LVALUE window over the word "LOCKED" on line 8 in the HEADER stream
The commands that define PF10/22 are:
CHANGE.PFK 10 'SCROLL.LEFT AMOUNT(HALF);
               SCROLL.LEFT LINE AMOUNT(HALF);
               CHANGE.TERMINAL CNTL(0);
               SCROLL.ABSOLUTE 8 LVALUE' SMIN
PF11/23
PF11/23 does the following:
  • Scrolls the default window one half-page to the right side of the information in the stream it is displaying (As part of the SCROLL command, Session Manager locks the window.)
  • Scrolls the LINE window one half-page to the right
  • Unlocks the terminal keyboard
  • Scrolls the LVALUE window over the word "LOCKED" on line 8 in the HEADER stream
The commands that define PF11/23 are:
CHANGE.PFK 11 'SCROLL.RIGHT AMOUNT(HALF);
               SCROLL.RIGHT LINE AMOUNT(HALF);
               CHANGE.TERMINAL CNTL(0);
               SCROLL.ABSOLUTE 8 LVALUE' SMIN
PF12/24
PF12/24 does the following:
  • Scrolls the LINE window the maximum amount to the left (to column 1)
  • Scrolls the default window the maximum amount to the left (to column 1)
  • Moves the default window to the newest information in the stream and then unlocks the window
  • Sets the maximum time that the keyboard can be locked to the last non-zero value entered
  • Scrolls the LVALUE window over the word "UNLOCKED" on line 7 in the HEADER stream
The commands that define PF12/24 are:
CHANGE.PFK 12 'SCROLL.LEFT LINE AMOUNT(MAX);
               SCROLL.LEFT AMOUNT(MAX);
               UNLOCK.NEWEST;
               CHANGE.TERMINAL CNTL(LAST);
               SCROLL.ABSOLUTE 7 LVALUE'
               SMIN

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014