Customizing the Panel Management System Component

The ipc Panel Management System (PMS) provides ways of customizing your system by changing values in a set of tables. The tables are:
cadts151
The
CA IPC
Panel Management System (PMS) provides ways of customizing your system by changing values in a set of tables. The tables are:
  • PMSTBLS specifies the names and abbreviations of months and days and the uppercase and lowercase characters of an alphabet.
  • PMSTRUC specifies the conversion characters that translate lowercase characters to uppercase characters.
  • PMSTRND and PMSTRNDK specify the conversion characters that translate special characters.
This page contains the following topics:
How to Modify the Alphabet and Dates (PMSTBLS)
The $PMSTBLS macro generates the PMSTBLS module, which contains the names and abbreviations for the months and weekdays and the uppercase and lowercase alphabet translate tables. You must modify the $PMSTBLS macro when you make changes to this PMS table. One reason to change PMSTBLS is to build a system for a language, such as French. A PMSTBLS source containing the default $PMSTBLS call is distributed with the system to make modification easier.
How to Change PMSTBLS
Use the following procedure to change the default PMS tables.
  1. Get the PMSTBLS source member from the
    CA IPC
    CAIMAC library.
  2. Use the following information in the $PMSTBLS Macro Format Descriptions to make the necessary changes. The following conventions are in effect:
    • For environments that support standard lowercase EBCDIC characters, for example, X'81' through X'B9', the names of months and days are specified in lowercase with the first character in uppercase.
    • For an environment that does not use X'81' through X'B9' for standard lowercase EBCDIC characters, specify the names exactly as they should appear and specify ALLOWUC=NO.
    • If an apostrophe or ampersand is part of a name or an alphabet, type two apostrophes or two ampersands to specify one character inside of a quoted string.
    • A list of names, including commas, is restricted to 256 characters by the assembler.
  3. Assemble and linkedit the modified PMSTBLS using the following sample JCL:
    //         JOB //* //JS01     EXEC ASMA90,PARM=’NODECK,LOAD’ //ASM.SYSLIB DD DISP=SHR,DSN=SOURCE //           DD DISP=SHR,DSN=SOURCE //           DD DISP=SHR,DSN=SOURCE //           DD DISP=SHR,DSN=SYS1.MACLIB //SYSGO    DD  DISP=SHR,DSN=OBJECT(PMSTBLS) //SYSIN    DD  *  COPY PMSTBLS  END /* //JS02    EXEC IEWL,COND=(0,NE), //            PARM=’XREF,LIST,NCAL,REUS(RENT)’ //SYSLMOD  DD DISP=SHR,DSN=LOAD //OBJECT   DD DISP=SHR,DSN=OBJECT //SYSIN    DD *  INCLUDE   OBJECT(PMSTBLS)  NAME      PMSTBLS(R) /*
$PMSTBLS Macro Format Descriptions
The parameters are presented in alphabetical order. Use the following descriptions to decide which settings are appropriate for your site:
  • ADAYS=
    (Input required.) Specifies the abbreviations of the seven days, Sunday through Saturday. The value is a list of seven names enclosed by parentheses. You can enclose each name in quotes, but this is required only when the environment does not support standard lowercase EBCDIC characters (X'81' through X'B9').
    The default is SUN.
  • ALLOWUC=
    (Input optional.) Specifies whether the month and day names can be converted to uppercase by using standard uppercase translation, for example, converting X'81' to X'C1', and so on. The values are:
    • YES
      The default. The names were specified in lowercase EBCDIC and can safely be translated when you want uppercase output.
    • NO
      The names were specified using foreign characters and should never be translated. This is used in environments where the lowercase EBCDIC characters were replaced by other graphics, such as the Katakana characters on an IBM 5550.
  • AMONTHS=
    (Input required.) Specifies the abbreviations of the twelve months, January through December. The value is a list of twelve names enclosed by parentheses. You can enclose each name in quotes, but this is required only when the environment does not support standard lowercase EBCDIC characters (X'81' through X'B9').
  • DATE=
    (Input optional.) Specifies the date of the assembly as eight characters, in the form
    mm/dd/yy
    (without quotes), where
    mm
    stands for the month,
    dd
    stands for the day of the month, and
    yy
    stands for the year. If your assembler supports &SYSDATE., you can specify DATE=&SYSDATE. The default specification is eight blank characters.
  • DAYS=
    (Input required.) Specifies the full names of the seven days, Sunday through Saturday. The value is a list of seven names enclosed by parentheses. You can enclose each name in quotes, but this is required only when the environment does not support standard lowercase EBCDIC characters (X'81' through X'B9').
  • FIRSTWW=
    (Input optional.) Specifies how the WW date pattern treats a partial week at the start of the year. Values are:
    • 0
      A value of 0 is returned for dates before the first full week of the year. WW values range from 0 to 53. The dates in the first full week of the year have a value of 1.
    • 1
      A value of 1 is returned for dates before the first full week of the year. WW values range from 1 to 54. The dates in the first full week of the year have a value of 2.
    The default is 0.
  • LCALPHA=
    (Input required.) Specifies the characters in the lowercase alphabet. The value is a string, which must be enclosed by single quotes, that contains each character of the alphabet. You must include a blank character. You can specify the characters in any order.
  • MONTHS=
    (Input required.) Specifies the full names of the twelve months, January through December. The value is a list of twelve names enclosed by parentheses. You can enclose each name in quotes, but this is required only when the environment does not support standard lowercase EBCDIC characters (X'81' through X'B9').
  • STRTDAY=
    (Input optional.) Specifies the day of the week that begins with and affects the WW and WEEKDAY functions. Values are:
    • SUN
      The first day of the week is Sunday.
    • MON
      The first day of the week is Monday.
  • TIME=
    (Input optional.) Specifies the time of the assembly as five characters, in the form
    hh.mm
    (without quotes), where
    hh
    stands for the hour, and
    mm
    stands for the minute. If your assembler supports &SYSTIME., you can specify TIME=&SYSTIME. The default specification is five blank characters.
  • UCALPHA=
    (Input required.) Specifies the characters in the uppercase alphabet. The value is a string, which must be enclosed by single quotes, that contains each character of the alphabet. You must include a blank character. You can specify the characters in any order.
How to Modify the PMS Conversion Tables (PMSTRUC, PMSTRND, and PMSTRNDK)
The PMS conversion tables are stored as a series of load modules that consist solely of the translate table characters. PMSTRUC is a table of conversion characters that translates lowercase characters to uppercase characters in panel fields that were specified as uppercase-only. PMSTRND and PMSTRNDK are tables of conversion characters that translate special characters in all output fields to support a variety of output devices. PMSTRND translates special characters on devices other than the IBM 5550 terminal. PMSTRNDK only translates special characters on the IBM 5550 terminal.
Each table is a series of 256 hexadecimal characters that correspond to hexadecimal digits X'00' to X'FF'. For PMSTRUC, the characters in the table replace the corresponding characters in a string typed into a terminal or output to a panel field. For PMSTRND and PMSTRNDK, the characters in the table replace the corresponding characters in a string output to any field. The translated character must be supported on the output device.
The translation proceeds from left to right on the field. Each character in the field is used as an offset into this table. The character from the appropriate location in the table is moved into the updated string.
For example, if you enter a lowercase letter a (X'81') into an uppercase-only field and the value of the PMSTRUC table at offset X'81' is X'C1', then the character a is translated to A.
If the value of the table at offset X'81' is X'81', then the character is not translated.
If the value of the table at offset X'81' is a question mark (X'6F'), then on input the character is translated to a question mark. On output, the character is translated to the current non-display character. The non-display character is defined as a PDF parameter.
If PMSTRND has the hexadecimal representation of a backslash character (X'E0') at offset X'E0', then outputting a X'E0' displays a backslash. If PMSTRND has the hexadecimal representation of a question mark (X'6F') at offset X'E0', then outputting X'E0' displays the current non-display character.
To modify the translation of a character, you must zap the appropriate load module using the hex value of the character as an offset. Verify the current value and replace it with the new value.
For example, to modify PMSTRND to translate the character a to the character A:
VER  0081  X'6F' REP  0081  X'C1'
To stop translating the character a:
VER  0081  X'C1' REP  0081  X'81'
To translate the character a to a question mark or non-display character:
VER  0081  X'C1' REP  0081  X'6F'
To modify PMSTRND to turn on the backslash character in output displays:
VER  00E0  X'6F' REP  00E0  X'E0'
To turn off the backslash character in output displays:
VER  007B  X'E0' REP  007B  X'6F'
PMSTRUC, PMSTRND, and PMSTRNDK are supplied on the
CA IPC
installation tape.
Translating any of the following control characters has no effect:
Control Order
Hex Character
Start Field
1D
Set Buffer Address (SBA)
11
Insert Cursor (IC)
13
Repeat to Address (RA)
3C
Start Field Extended (SFE)
29
Erase Unprotected to Address (EUA)
12
Modify Field (MF)
2C
Set Attribute (SA)
28