Since option 5 on the System Request menu executes the Send Message (SNDMSG) command, it provides a convenient way to send a message to another user. However, the problem with this method is that it requires you to know the user profile of the person you want to send a message to.
An answer to this problem comes in the form of one of the Operational Assistant APIs called QEZSNDMG. This API allows you to press F4 to obtain a list from which you can select one or more user profiles. To see this capability in action, enter the following command:
Tab down to the "Send to" field and press the F4 key. From there, you can use option 1 to select user profiles, using the roll keys if necessary.
To take this one step further, you can execute this API from option 5 on the System Request menu in place of the default SNDMSG command. This change would affect everyone on your system. Implementing this on your system involves two steps.
Step one is to key in the command shown in 3 and compile it. Be sure to put this command in a library which is in everyone's library list. We put the command in QGPL.
Step one is to key in the command shown in Figure 3 and compile it. Be sure to put this command in a library which is in everyone's library list. We put the command in QGPL.
Step two involves changing a message description. All of the commands which execute from the System Request menu are stored in the message CPX2313 in message file QCPFMSG in QSYS. Each command has a fixed starting position within the message text. To make this work, you need to modify one of the commands without changing the starting positions of any of the other commands.
To accomplish this, enter the following command:
WRKMSGD MSGID(CPX2313) + MSGF(QSYS/QCPFMSG)
When the list of messages appears, take option 2 (change) for message CPX2313 and you will see what the message currently looks like. Move the cursor over to the first letter of the SNDMSG command using your arrow keys, and type QEZSNDMG over it. Be careful not to change anything else. Also be sure your Insert key is not on; and if you make a mistake, do not use your Delete key, as this would change the starting position of other commands in the message. After you make the change, press Enter. The message CPX2313 is now changed. Press F3 to exit the Work with Message Descriptions (WRKMSGD) command. From this point on, System Request 5 will present you with the Operational Assistant "Send a Message" screen.
Editor's Note: You should make a copy of the QCPFMSG message file before you modify it. Just use the Create Duplicate Object (CRTDUPOBJ) command to accomplish this.
Use System Request to Send EZ Messages
Figure 3 The QEZSNDMG Command
/*===============================================================*/ /* To compile: */ /* */ /* CRTCMD CMD(XXX/QEZSNDMG) PGM(QSYS/QEZSNDMG) + */ /* SRCFILE(XXX/QCMDSRC) */ /* */ /*===============================================================*/ CMD PROMPT('Send Message')