Reprogramming the SysReq Key

RPG
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

CPX2313. Remember it? Back in the days of System/38, IBM created the ability to press the System Request key (Shift+Attn on some keyboards), which allowed you to select a menu option or simply press Enter to view the System Request menu.

If you look at the message text for CPX2313, you'll see the list of CL commands that run in response to the selected SysReq menu options. Each command is in a fixed location in the message text (every 11 positions) and is offset by 1. This means that option 2 is the first menu choice stored in the message. Of course, as time passed, IBM added more commands and features, so this number scheme is not strictly valid anymore.

On my system (OS/400 V4R5), the following CL commands are specified in the CPX2313 message (yours may vary, depending on your OS):

ENDRQS (End Request)

DSPJOB (Display Job)

DSPMSG (Display Message)

SNDMSG (Send Message)

SIGNOFF (Sign Off)

DSPMSG (Display Message QSYSOPR)

DSCJOB (Disconnect Job)

DSPWSUSR (Display Workstation User)

ENDRDBRQS (End Relational Database Request)

The entries marked with numbers indicate the SysReq menu option that is used to evoke them. The entries marked with question marks (?) are displayed only when the job is in the proper context to use/display those options. If your session has passed through to another iSeries, then the Disconnect Job option is visible on the menu.

The traditional SysReq menu looks something like this:

                   System Request

Select one of the following:

       1. Display sign on for alternative job

       2. End previous request

       3. Display current job

       4. Display messages

       5. Send a message

       6. Display system operator messages

       7. Display work station user

      80. Disconnect job

      90. Sign off

If we look at the message text of CPX2313, we see the CL commands behind the SysReq menu spaced out every 11 positions. The first-level message text appears as follows:

'ENDRQS     DSPJOB     DSPMSG     SNDMSG     +
 SIGNOFF    DSPMSG     DSCJOB     DSPWSUSR   ENDRDBRQS  '   

The first four commands relate to the menu options (offset by 1), so 2=End Request, 3=Display Job, 4=Display Message, and 5=Send Message. After that, it gets a little sketchy.

Command Line Access from SysReq

In some shops, it would be great to be able to access the command line from the SysReq menu. A long-running routine can often be a problem, and you may want to do something other than just display job information or terminate the last request.

This is where knowing about CPX2313 comes in handy. You can simply change the message text and have those options behind SysReq run different commands.

For example, on my system, I've changed the DSPJOB command so that it is WRKJOB. This allows me to view the Work with Job menu, which includes a command line, as opposed to the Display Job menu, which does not.

Of course, various security issues come into play, and if your system security relies on users not knowing about certain things, then you need to keep this change quiet.

I know of a few people who have changed the SNDMSG command as well. They've changed it to anything from a user-written CL command that calls the Command Line window API to Command Entry itself. I don't bother with that because WKRJOB gives me what I need.

About 18 years ago, I started selling a tool named SUSPENSE! for the System/38. It allowed you to leave CPX2313 intact and, instead, gave you the ability to type a CL command into the "system request line." This capability became so popular that IBM added a hook to the AS/400 System Entry Point Table (SEPT) that allows any programmer to do a similar function. I've long since stopped selling SUSPENSE!, but the capability is there today with the OS/400 or i5/OS hook or by modifying CPX2313 to do something just as cool and do it a whole lot easier.

Bob Cozzi is a programmer/consultant, writer/author, and software developer of the RPG xTools, a popular add-on subprocedure library for RPG IV. His book The Modern RPG Language has been the most widely used RPG programming book for nearly two decades. He, along with others, speaks at and runs the highly-popular RPG World conference for RPG programmers.

BOB COZZI

Bob Cozzi is a programmer/consultant, writer/author, and software developer. His popular RPG xTools add-on subprocedure library for RPG IV is fast becoming a standard with RPG developers. His book The Modern RPG Language has been the most widely used RPG programming book for more than a decade. He, along with others, speaks at and produces the highly popular RPG World conference for RPG programmers.


MC Press books written by Robert Cozzi available now on the MC Press Bookstore.

RPG TnT RPG TnT
Get this jam-packed resource of quick, easy-to-implement RPG tips!
List Price $65.00

Now On Sale

The Modern RPG IV Language The Modern RPG IV Language
Cozzi on everything RPG! What more could you want?
List Price $99.95

Now On Sale

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$

Book Reviews

Resource Center

  •  

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: