CHGMSGD (Change Message Description)
CHGMSGD Command syntax diagram
Purpose
The Change Message Description (CHGMSGD) command changes an existing message description stored in a message file and stores those changes in that message file for later use. The message description remains in the message file until the file is deleted, until the Remove Message Description (RMVMSGD) command is used to remove the message from the file, or until the message is changed again by using the CHGMSGD command.
Note: If the message and its second-level text exceeds 512 characters, it will not fit in the prompt field. In this case, enter the command on the Command Entry panel or in a CL program. Caution: Specifying the alert option in the range CPx7B00 to CPx7BFF (messages sent from the alert process) may cause unpredictable results.
Required Parameters
- MSGID
- Specifies the message identifier of the message being changed. The message identifier must be seven characters long and in the format, pppnnnn.
The first three characters (ppp) must be a code consisting of one alphabetic character followed by two alphanumeric (alphabetic or decimal) characters; the last four characters (nnnn) may consist of the decimal numbers 0 through 9 and the characters A through F.
- MSGF
- Specifies the qualified name of the message file where the message being changed is stored. This command ignores any message file overrides in effect for the job.
The name of the message file can be qualified by one of the following library values:
*LIBL: All libraries in the job's library list are searched until the first match is found.
*CURLIB: The current library for the job is searched. If no library is specified as the current library for the job, the QGPL library is used.
library-name: Specify the name of the library to be searched.
message-file-name: Specify the name of the message file to use.
Optional Parameters
Reply Validity Specification Parameters
- MSG
- Specifies the first-level message text of the message being changed.
*SAME: The value does not change.
'message-text': Specify the message text that is initially displayed, printed, or sent to a program or log. Up to maximum of 132 characters (enclosed in apostrophes) can be specified, but the work station display size may cause additional limitations.
Note: If the message text is changed, the entire original message text is replaced with the specified change. One or more substitution variables can be embedded in the message text string to indicate positional replacement fields. These replacement fields allow variable data to be substituted in the message by the program before the message is sent. The rules below must be followed when variables are used.
- Variables must be specified in the form &n, where n is a 1- or 2-digit (1-99) number identifying the data field that is substituted.
- Variables can be preceded by any alphanumeric character (including blanks). For example, the variables shown in the message below are valid.
Command&34&72 &2 &99help
- Variables can be followed by any non-numeric character (the character following the variable cannot be digits 0-9). For example, the variables shown below are not valid.
Command&345 &244 &999help
- The variables can be enclosed in apostrophes if only the variables themselves make up the message. For example, to show a two-part decimal value, the message '&1.&2' can be specified.)
- Variables do not have to be in ascending or descending sequence.
Note: The data fields are described positionally in the FMT parameter and are specified positionally in the MSGDTA parameter of the Send Program Message (SNDPGMMSG) command and the Send User Message (SNDUSRMSG) command. More details on substituting data fields in message text are in the CL Programming book. Double-Byte Character Set Considerations
When entering double-byte characters on this parameter, several combinations of characters may cause errors to occur on this command. If the double-byte characters contain the string, X'50Fn' (where n is a 1-digit number, 0-9), error messages CPF2424 or CPF2431 may result. Examples are: X'50F0', X'50F4', X'50F9'.
Coded Character Set Identifier (CCSID) Considerations
The text supplied on the MSG parameter is assumed to be in the CCSID of the job calling this command unless the CCSID parameter is coded. If the CCSID parameter is coded, the text is assumed to be in the CCSID specified. For more information about the message handler and its use of CCSIDs, see the Globalization topic in the Information Center.
- SECLVL
- Specifies second-level message text being changed. Second-level message text can also be written to the job log, if *SECLVL is specified on the LOG parameter of the job commands.
*SAME: The value does not change.
*NONE: There is to be no second-level message text for this message description. Second-level message text in the original message description is removed.
'second-level-message': Specify the second-level message text. Up to 3000 characters (enclosed in apostrophes) can be specified, but display limitations must be considered. One or more substitution variables can be embedded in the second-level message text, as described in the MSG parameter. If second-level message text is changed, the entire second-level message text is replaced with the specified change.
Second-level message text can be formatted for the work station using three format control characters:
- &N: Forces the text to a new line (column 2). If the text is longer than one line, the next lines are indented to column 4 until the end of the text or until another format control character is found.
- &P: Forces the text to a new line, indented to column 6. If the text is longer than one line, the next lines start in column 4 until the end of the text or until another format control character is found.
- &B: Forces the text to a new line, starting in column 4. If the text is longer than one line, the next lines are indented to column 6 until the end of the text or until another format control character is found.
Double-Byte Character Set Considerations
When entering double-byte characters on this parameter, several combinations of characters may cause errors to occur on this command. If the double-byte characters contain the string, X'50Fn' (where n is a 1-digit number, 0-9), error messages CPF2424 or CPF2431 may result. Examples are: X'50F0', X'50F4', X'50F9'.
Coded Character Set Identifier (CCSID) Considerations
The text supplied on the SECLVL parameter is assumed to be in the CCSID of the job calling this command unless the CCSID parameter is coded. If the CCSID parameter is coded, the text is assumed to be in the CCSID specified. For more information about the message handler and its use of CCSIDs, see the Globalization topic in the Information Center.
- SEV
- Specifies the severity code of the message. The severity code indicates the severity level of the condition that causes the message to be sent. More information on message severity is in Commonly used parameters.
*SAME: The value does not change.
severity-code: Specify a value, 00 through 99, for the severity level of this message. The assigned code for the message should correspond to the predefined IBM severity codes. Any 2-digit value can be specified, even if no severity code (predefined or user-defined) has been defined for it.
- FMT
- Specifies the formats of from 1 through 99 message data fields being changed. Each field is described in this parameter by a list of attributes. All 99 of the message data fields can be used as substitution values in the first-level and second-level messages defined in this message description. They can also be specified in the DMPLST parameter of this command. When specified in the MSGDTA parameter of the Send Program Message (SNDPGMMSG) or Send User Message (SNDUSRMSG) commands, the data fields must be concatenated to form one character string of no more than 512 characters and must match the format and sequence specified here.
Note: If any of the previously defined formats are being changed, all existing formats must be included in the FMT parameter. For example, if seven formats had been previously defined and now the third of the seven formats is to be changed from *CHAR 24 to *HEX 8, all seven of the formats (including their types and lengths) must be included in the FMT parameter. *SAME: The value does not change.
*NONE: Either no format is being described for the message fields, or the original formats are removed. If *NONE is specified, no references can be made to message data fields in the MSG, SECLVL, or DMPLST parameters.
Note: If FMT was originally specified, but now FMT(*NONE) is specified, all references to those formats must be removed from the first-level and second-level messages and from the dump list. type (length[decimal-positions]): Specify a list of attributes that define each message data field (up to 99 fields) in this message description. These attributes specify the type of data in the field, the total length of the field, and, optionally, the number of decimal digits to the right of the decimal point. Certain data types do not require a length field. Boundary alignment requirements must be considered (for example, pointers are always aligned on 16-byte boundaries). Fields &1 through &99 can be defined in and can appear in, the message text. Fields beyond that number can appear only in the dump list.
Type of Message Data:
The first value specifies the type of data the substitution field contains and how the data is formatted in the message text. The contents of the second and third values vary depending on the message type specified. One of the following types can be specified for each field described by this parameter:
*QTDCHAR: A character string formatted (by the Operating System/400) with enclosing apostrophes (for example, 'Monday, the 1st') is specified.
*CHAR: A character string formatted without enclosing apostrophes is used. An alphanumeric string is used, for example, to specify a name (BOB). Trailing blanks are truncated.
*HEX: A string of bytes formatted as a hexadecimal value (for example, X'C0F4') is specified.
*SPP: A 16-byte space pointer to data in a space object is specified. When referred to in the DMPLST parameter, the data in the space object (from the offset indicated by the pointer) for the length specified is dumped. *SPP is not valid as a replacement field in message text.
*DEC: A packed decimal number (for example, X'058C') that is formatted in the message as a signed decimal value with a decimal point (for example, 58.) is specified. Values for length (required) and decimal positions (optional) specified *DEC indicate the number of decimal digits and the number of digits to the right of the decimal point. If the number of decimal positions is not specified, zero is assumed.
*BIN: A binary value that is 2, 4, or 8 bytes long (for example, B'0000 0000 0011 1010'), which is formatted in the message as a signed decimal value (for example, 58), can be specified.
*UBIN: A binary value that is 2, 4, or 8 bytes long (for example, B'0000 0000 0011 1010'), which is formatted in the message as an unsigned decimal value (for example, 58), can be specified.
*CCHAR: A character string that can be converted. If data of this type is sent to a message queue that has a CCSID tag other than 65535 or 65534, the data is converted from the CCSID specified on the send function to the CCSID of the message queue. Conversions can also occur on data of this type when the data is obtained from the message queue using a receive or display function. See the Message Handler section of the Globalization topic in the Information Center for more details on CCSID conversions.
The following formats are valid only in IBM-provided message descriptions and should not be used for other messages.
*DTS: An 8-byte field that contains a system-date time-stamp is specified. The date in the output message is in the format specified by the system values QDATFMT and QDATSEP. The time is formatted as hh:mm:ss.
*SYP: A 16-byte system pointer to a system object is specified. When referred to in message text, the simple name of the system object is formatted as described in the name type, *CHAR. When referred to by the DMPLST parameter, the object itself is dumped.
*ITV: An 8-byte field that contains a time interval is specified. The time is formatted in the output message in the form of seconds.
Length of Message Data:
After the type specification, a second value (length) can be specified to indicate the number of characters or digits that are passed in the message data. How the second value is used depends on the type specified in the first value.
- If a length is not specified for *QTDCHAR, *CHAR, *HEX, or *SPP, then *VARY is assumed for the length. If *VARY is assumed, the message data field passed by the SNDPGMMSG or SNDUSRMSG commands must be preceded by a 2-byte or 4-byte binary field that indicates the actual number of bytes of data being passed. However, when *SPP is specified, the first bytes pointed to by the space pointer contain the field length. Therefore, the 2- or 4-byte field must precede the data pointed to by the space pointer, and must not precede the space pointer that is passed as part of the message data.
- If the type *DEC is specified, the total number of decimal digits (including the fraction) must be specified as the second value; the number of digits in the fraction can be specified optionally as the third value.
- If the type *BIN or *UBIN is specified, the message data field can be only 2, 4 or 8 bytes long. The default is 2 bytes.
- If the type *CCHAR is specified, the message data length field can be only *VARY. A variable length field is required because as the data in this field gets converted to different coded character set identifiers (CCSIDs), its length may change.
Length Field Size/Decimal Positions:
The third value is used in one of two ways, depending on the type specified in the first value: (1) if *QTDCHAR, *CHAR, *CCHAR, *HEX, or *SPP is specified, and if *VARY is specified or assumed for the second value, the third value is used with *VARY to indicate the size of the length field actually passed. The third value can be either 2 or 4, which is the number of bytes specifying the length (in binary) of the passed value; (2) if *DEC is specified, the third value indicates the number of decimal positions in the decimal value. If not specified for a decimal substitution value, the default is 0 decimal positions.
Note: If an object has been damaged or deleted, the substitution variable, when displayed, is not replaced by the name of the object. Instead, the object appears as &n (where n = number). If the message is sent as an inquiry message or as a notify message (specified by MSGTYPE(*INQ) or MSGTYPE(NOTIFY) on the SNDPGMMSG command) and a reply is expected, seven parameters can be used to specify some requirements that validate the reply received. The seven validity-checking parameters are: TYPE, LEN, VALUES, SPCVAL, RANGE, REL, and DFT.
These parameters are not necessary for a message to allow a reply, but they can be used to define valid replies made to the message. The VALUES, RANGE, and REL are mutually exclusive; only one of them can be specified in this command.
Note: If the reply type or length is changed, and if VALUES, RANGE, or REL had been previously specified, the existing VALUES, RANGE, REL, SPCVAL and DFT must also be changed to be compatible with the new reply type and/or length. If the reply type is changed, LEN must be changed also. If the reply type is changed to *NONE, then LEN and (if they were coded previously) VALUES, SPCVAL, RANGE, REL, and DFT must be coded as *NONE.
- TYPE
- Specifies, only if the message is sent as an inquiry or notify message, the type of valid reply to this message.
*SAME: The value does not change.
*NONE: Reply message validity is not checked. Existing reply message type specifications are removed. LEN(*NONE) also must be specified.
*CHAR: Any character string is a valid reply message type specification. If it is a quoted character string, the apostrophes are passed as part of the character string.
*DEC: Only a decimal number is a valid reply message type.
*ALPHA: Only an alphabetic (A through Z, $, #, and @) character string is a valid reply message type specification. Blanks are not allowed.
*NAME: Only a simple name is a valid reply message type specification. The name does not have to be a OS/400 system object name, but must start with an alphabetic character; the remaining characters must be alphanumeric. If all reply characters are alphabetic (A-Z), the reply is converted to uppercase characters.
- LEN
- Specifies, only if the message is sent as an inquiry or notify message, the maximum reply length.
*SAME: The value does not change.
*NONE: The validity of the reply message is not checked. The existing LEN specification, if any, is removed and TYPE(*NONE) must also be specified.
*TYPE: The maximum length is determined by the type of reply specified on the TYPE parameter. The maximum length for each type of reply is as follows:
- Up to 132 characters can be specified for types *CHAR and *ALPHA. If additional validity checking is being performed (for example, if VALUES, RANGE, REL, or SPCVAL are specified), the maximum length allowed for *CHAR and *ALPHA is 32 characters.
- Up to 15 digits can be specified for *DEC, of which up to 9 digits can be to the right of the decimal point.
- Up to 10 alphanumeric characters can be specified for *NAME.
length (decimal-positions): Specify the maximum reply length. The length specified here cannot exceed the maximums shown above. If the reply type is a decimal value, the number of decimal positions can be optionally specified; if a decimal is not specified, zero decimal positions are assumed.
- VALUES
- Specifies, only if the message is sent as an inquiry or notify message, a list of values, one of which is received as a valid reply. No more than 20 values can be specified in the list. Each value in the list must meet the requirements specified for message replies by the TYPE and LEN parameters. If the VALUES parameter is specified, the RANGE and REL parameters cannot be specified.
*SAME: The value does not change.
*NONE: No list of reply values is specified. The reply can have any value that is consistent with the other validity-checking parameters. Any existing VALUES are removed.
value: Specify up to 20 values. To be valid, these must match a reply value sent in response to the message defined in this message description. The maximum length of each value is 32 characters.
- SPCVAL
- Specifies, only if the message is sent as an inquiry or notify message, a list of up to 20 sets of special values of which one set (the from-value matched by the sent reply) is used as the reply. These values are special in that they may not meet all of the validity checking specifications given in the other reply-oriented parameters. The reply message sent is compared to the from-value in each set, if a match is found, and a to-value was specified in that set, the to-value is sent as the reply. If no to-value was specified, the from-value is sent as the reply. If the reply sent does not match any from-value, then the reply is validity-checked by the specifications in the other reply-oriented parameters.
*SAME: The value does not change.
*NONE: No special values are specified for the replies to this message. Any existing special values are removed from the message description.
from-value (to-value): Specify up to 20 sets of values to determine the reply sent to the sender of the message. Each set must have a from-value with which the reply is compared, and an optional to-value to be sent as the reply (if its from-value matches the reply).
- RANGE
- Specifies, only if the message is sent as an inquiry or notify message, the lower and upper value limits for valid replies to this message. These values must meet the requirements specified for replies by the TYPE and LEN parameters, and both values must be of the same type. If both values are not of the same length, the shorter value is padded on the right with blanks. For type *CHAR and *ALPHA replies, the reply is padded on the right with blanks or truncated on the right (to the length of the specified values) before the value range is validity-checked. If RANGE is specified, the VALUES and REL parameters cannot be specified.
*SAME: The value does not change.
*NONE: No range values are specified for the replies to this message. Any existing range values are removed from the message description.
lower-value upper-value: Specify the lower and upper limit values for valid replies to this message.
- REL
- Specifies, only if the message is sent as an inquiry or notify message, the relationship that must exist for a reply to be valid. The value specified must meet the requirements specified for replies by the TYPE and LEN parameters. For replies of the types *CHAR and *ALPHA, the reply is padded on the right with blanks or truncated on the right to match the length of the value specified, before the system performs the test on the reply value that is sent.
*SAME: The value does not change.
*NONE: No relationship is specified for replies to this message. Existing relationship specifications are removed from the message description.
operator-value: Specify one of the relational operators and the value against which the reply message is checked. If the reply is valid in the relational test, it is sent to the sender of the message. The relational operators that can be entered are:
- *LT
- Less than
- *LE
- Less than or equal to
- *GT
- Greater than
- *GE
- Greater than or equal to
- *EQ
- Equal to
- *NL
- Not less than
- *NG
- Not greater than
- *NE
- Not equal to
Note: If VALUES, RANGE, or REL had been specified on the existing message, and they are being changed to another type of reply validity-checking, then the existing check must be removed by specifying *NONE. For example, if VALUES had been specified originally, but now the user wants to specify a RANGE, then VALUES(*NONE) and RANGE(lower-value upper-value) must be specified in the CHGMSGD command.
- DFT
- Specifies, only if the message is sent as an inquiry or notify message, the default reply (enclosed in apostrophes, if it contains special characters) used when the receiver of the message has indicated that all messages to him or her are to use default replies, or when a message is deleted from a message queue and no reply was specified. The default reply can also be used to answer unmonitored notify messages. The default reply must meet the requirements specified for replies by the validity-checking parameters.
*SAME: The value does not change.
*NONE: No default reply is specified. Existing default replies are removed.
'default-reply': Specify the reply, enclosed in apostrophes if it contains special characters, to use as the default reply.
- DFTPGM
- Specifies the qualified name of the default program (if any) that takes default action when this message is sent as an escape message to a program that is not monitoring for it. This parameter is ignored if the message is not sent as an escape message. If it is sent as an escape message, the following parameters are passed to the default program:
- Program message queue name (10 characters). The name of the program message queue to which the message was sent. This is the same name as that of the program that did not monitor for the message.
- Message reference key (4 characters). The message reference key of the escape message on the program message queue.
*SAME: The value does not change.
*NONE: No default program is specified for this message. Any existing default program is removed from the message description.
The name of the program can be qualified by one of the following library values:
*LIBL: All libraries in the job's library list are searched until the first match is found.
*CURLIB: The current library for the job is searched. If no library is specified as the current library for the job, the QGPL library is used.
library-name: Specify the name of the library to be searched.
default-program-name: Specify the name of the default program that is called when an escape message is sent.
- DMPLST
- Specifies the data that is dumped when this message is sent as an escape message to a program that is not monitoring for it. This parameter can specify that data related to the job be dumped, that data from message data fields be dumped, or that a combination of these be dumped. When data from message data fields is dumped, this parameter specifies one or more numbers that positionally identify the data fields being dumped.
The system objects indicated by system pointers are dumped. The data in a space object, indicated by a space pointer, is dumped starting from the offset indicated by the space pointer for the length indicated in the field description. The standard job dump can also be requested.
Notes
- If any of these values are specified for DMPLST, *JOB is assumed to be part of the values. For example, DMPLST (1 2 *JOBDMP) gives the same result as DMPLST(*JOB 1 2 *JOBDMP).
- Any value specified for the DMPLST parameter may be overridden by the QSRVDMP system value. More information is in the chapter on system values in the Work Management book.
- The program receiving the unmonitored message must have a name starting with 'Q' or the message severity must be 50 or higher.
- The user of the job in which the dump is specified must be authorized to the dump command requested on this parameter.
*SAME: The value does not change.
*JOB: This value has the same effect as specifying JOB(*) and OUTPUT(*PRINT) on the Display Job (DSPJOB) command. See the DSPJOB command description for more information.
*JOBDMP: The data areas of the job are dumped as specified by the Dump Job (DMPJOB) command. *JOBDMP can be specified either by itself, with *JOB, with *JOBINT, or with a list of message data field numbers.
*JOBINT: The internal machine data structures related to the job processing are dumped to the machine error log as specified by the DMPJOBINT command. *JOBINT can be specified either by itself, with *JOBDMP, with *JOB, or with a list of message data field numbers.
message-data-field-number: Specify the numbers of the message data fields that identify the data dumped when this escape message is sent but not monitored. As many as 99 data field numbers can be specified in the list. In addition, the list can contain the values *JOB and *JOBINT.
Single Value
*NONE: There is no dump list for this message. Any existing dump list is removed from the message description.
- ALROPT
- Specifies the alert option associated with messages sent to the QHST log and the system operator message queue. More information is in the Alerts Support book.
*SAME: The value does not change.
*NO: No alert is sent.
Element 1: When an Alert is Sent
*IMMED: An alert is sent immediately, simultaneously sending the message to QHST.
*UNATTEND: An alert is sent immediately only when the system is running in the unattended mode.
The system is considered to be unattended when the Alert Status (ALRSTS) network attribute is set to *UNATTEND.
*DEFER: The alert is sent after local problem analysis.
*DEFER should be specified only for messages against which problem analysis can be run. An alert is sent at the first exit from problem analysis for the problem referred to by the message.
All alerts set to *DEFER are treated as *IMMED if:
- The system is running in the unattended mode
- The problem cannot be resolved through problem analysis
- An error log ID is not available for a problem that might be resolved by using problem analysis
- The LOGPRB parameter for the message is set to *NO
Element 2: Message Data Field Format Number
*NONE: No message data field format number is passed with the alert identifier.
format-number: Specify the message data field format number that is passed with the alert identifier.
- LOGPRB
- Specifies, for IBM-supplied messages, whether an entry is put into the problem log. If there is an error log ID for the message and *YES is specified for this parameter, the user can press the F14 key from the system operator message queue display (Display Messages) to call for problem analysis.
*SAME: The value does not change.
*NO: The entry is not put in the problem log.
*YES: The entry is put in the problem log if there is an error log ID associated with the message.
- CCSID
- Specifies the coded character set identifier (CCSID) that the text supplied on the MSG and SECLVL parameters is in.
If both the MSG and SECLVL parameters are not coded, the value supplied on the CCSID parameter is used to change the CCSID tag associated with the message description. No text conversion will occur in this case. Use the CCSID parameter in this way to correct a message description that has an incorrect CCSID tag.
If either the MSG and/or the SECLVL parameters are coded along with the CCSID parameter, the text supplied on the MSG or SECLVL parameters is assumed to be in the CCSID specified. If only one of the MSG or SECLVL parameters is coded, but not both, any existing text associated with the parameter that is not coded will be converted to the specified CCSID to ensure that all text is coded using the same CCSID.
If the message file is anything other than 65535 or 65534, the text is converted from the CCSID specified to the CCSID of the message file. Otherwise, the CCSID specified is saved with the MSG description in the event a conversion is needed during a retrieve or display type function.
If the CCSID specified does not match the character encoding of the message description, unpredictable results may occur.
To use the CCSID associated with the message description, the CCSID associated with the message file must be 65534. See the CHGMSGF command for details on how to change the CCSID associated with the message file.
The CCSID only applies to the first level message text and the second level message text of the message description.
*JOB: If the MSG and SECLVL parameters are specified, the text supplied in these parameters is assumed to be in the CCSID specified. If the MSG and SECLVL parameters are not coded, the CCSID of the message description is not changed.
*SAME: The CCSID tag of the message description is not changed. If the MSG or SECLVL parameter is specified, the text is considered to be in the same CCSID as the text it is replacing.
*HEX: The CCSID tag of the message description is changed to the special CCSID value of 65535 which means this message description is not to be converted when used.
coded-character-set-identifier: Specify the CCSID you want the text to be considered in. Valid values range from 1 through 65535. For a list of valid CCSID values, see the Globalization topic in the Information Center. Only CCSIDs that a job can be changed to are accepted.
If the MSG and SECLVL parameters are coded, the text supplied in these parameters is considered to be in the CCSID specified. For more information about the message handler and its use of CCSIDs, see the Globalization topic in the Information Center.
Examples for CHGMSGD
Example 1: Changing the First-Level Message and Severity
CHGMSGD MSGID(UIN0115) MSGF(INV) MSG('Enter your name') SEV(55)This command changes the first-level message and the severity of message UIN0115 stored in the message file INV. The rest of the message description remains as originally specified in the ADDMSGD command.
Example 2: Changing to a Range of Valid Replies
Assume the user created message UPY0047 as follows:
ADDMSGD MSGID(UPY0047) MSGF(PAYLIB/TIMECARD) MSG('Enter department number:') TYPE(*DEC) LEN(4) VALUES(0816 0727 0319 8774)To change to a range of valid replies (RANGE parameter), instead of specific reply values (as specified with the VALUE parameter), the following command can be used:
CHGMSGD MSGID(UPY0047) MSGF(PAYLIB/TIMECARD) VALUES(*NONE) RANGE(0300 8900)The VALUES as originally defined are removed and the RANGE parameters are added to the message description. The type and length of the reply values do not change.
Note: All changes made to an existing message description must be compatible with the existing message description. For example, the following change would be diagnosed as invalid because the RANGE values are not compatible with the reply length as defined on the original ADDMSGD command. Example 3: Changing the Length Parameter
ADDMSGD MSGID(XYZ0202) MSGF(XYZMSGF) MSG('Enter routing code:') TYPE(*CHAR) LEN(2) VALUES(AA BB CC DD EE)
CHGMSGD MSGID(XYZ0202) MSGF(XYZMSGF) VALUES(*NONE) RANGE(AAA ZZZ)To make the change to the range of reply values valid, the user must also change the length (LEN parameter). The correct command coding would be as follows:
CHGMSGD MSGID(XYZ0202) MSGF(XYZMSGF) LEN(3) VALUES(*NONE) RANGE(AAA ZZZ)Error messages for CHGMSGD
*ESCAPE Messages
- CPF2401
- Not authorized to library &1.
- CPF2407
- Message file &1 in &2 not found.
- CPF2411
- Not authorized to message file &1 in &2.
- CPF2419
- Message identifier &1 not found in message file &2 in &3.
- CPF2461
- Message file &1 could not be extended.
- CPF2483
- Message file currently in use.
- CPF2499
- Message identifier &1 not allowed.
- CPF2510
- Message file &1 in &2 logically damaged.
- CPF2542
- Message description not changed for &1.
- CPF9830
- Cannot assign library &1.
- CPF9838
- User profile storage limit exceeded.