Copy Message Descriptions
November 7, 2007 Hey, Ted
The Work with Message Descriptions (WRKSMSGD) panel gives me options 2, 4, 5, and 6 to change, delete, display, and print message descriptions. But there is no option to allow me to copy a message description. Such an option would be helpful when I need to create a new message description that is similar to an existing one, or when I copy a message description to another message file. Am I overlooking an easy way to copy message descriptions? –Ron To the best of my knowledge, no. (Buddy, I hope I’m wrong on this one.) Let’s take the second case you mentioned–copying a message description from one message file to another. You can use the Merge Message File (MRGMSGF) command, which copies messages from one file to another. The following command copies message XYZ1492 from message file XYZMSGF to message file NEWMSGF. MRGMSGF FROMMSGF(XYZMSGF) + TOMSGF(NEWMSGF) SELECT(XYZ1492) I used this technique recently to copy a message description on one system to the same message file on another system. I created a message file in QTEMP, ran MRGMSGF to copy the message to the temporary message file, ran SAVOBJ to save the message file to a save file, FTP’d the save file to the other system, restored the message file to QTEMP, and ran MRGMSGF to copy the message from the temporary message file to the production message file. As for the first case, I know a method that is really crummy, but it works. (I really, really, really hope somebody writes in with a better idea.) You need to be working with an emulator session, not a dumb terminal. (I know some people still use those things, but I have a hard time believing that anyone who reads this newsletter does.) In the “Work with Message Descriptions” panel, navigate to the message description that you want to copy. Enter option 2 to change the message description, even though you’re not going to change it, and press “Enter.” You will be in the “Change Message Description” panel, with the parameters filled in with their existing values. Key over one character in each parameter that you want to include in the creation of the new message. Press F14 to see the “Change Message Description” command that the system intends to execute when you press “Enter.” If you don’t see all the parameters you need, press “Enter” to return to the change screen and key over at least one character of the missing parameters. Keep this up until F14 shows you all the parameters you need. The command will look something like this: CHGMSGD ?*MSGID(XYZ1066) ?*MSGF(XYZMSGF) ?<MSG('Do &1 to &2 if &3 does &4.') ?<SECLVL('Eat at Joe''s.') ?<FMT((*CHAR 10) (*CHAR 10) (*CHAR 10) (*CHAR 12)) ?<DFTPGM(*LIBL/MYPGM) ??CCSID(*JOB) Copy the command to your PC’s clipboard and press F12 until you’re out of the “Change Message Description” panel without having changed the message description. Paste the clipboard into your favorite text editor. Change the CHGMSGD command to ADDMSGD, change the message ID parameter to the ID of the new message, change any other parameters as necessary, and get rid of those funny characters in front of each parameter keyword. addMSGD MSGID(XYZ1492) MSGF(XYZMSGF) MSG('Buy &1 from &2 if &3.') SECLVL('Eat more possum.') FMT((*CHAR 16) (*CHAR 12) (*CHAR 12)) CCSID(*JOB) In your green-screen session, call QCMD and press F11 to get a full screen command entry field. Copy the modified command in your text editor and paste it into the green screen. Press “Enter.” You’ve got yourself a new message description. It’s just plain goofy, but it beats re-keying all those parameters and maybe making a mistake.
|