• The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
Menu
  • The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
  • Keep Your Users Informed

    April 28, 2004 Hey, Ted

    Although we run an ERP package, we have plenty of homegrown programs that fill holes in the package. Most of them produce reports that the package doesn’t offer us. Sometimes a user keys runtime information into a prompt screen and presses a function key to submit a request to batch. However, if the results don’t come off the printer PDQ, the user may submit another request, thinking the first one was not accepted. How can we inform the user that the request was received?

    –George

    Your problem reminds me of something I’ve noticed: that homegrown software often does a poor job of keeping the user informed. I have received calls from users whose terminals had apparently “locked up.” The problem often turned out to be a long-running interactive program. The screen was blank, and there were no messages to tell the user what was going on.

    Fortunately, yours is a very easy problem to fix, George.

    Whenever you code a Submit Job (SBMJOB) command in a prompting program, make it a habit to follow SBMJOB with the Send Program Message (SNDPGMMSG) command, which informs the user that the job has been submitted to batch. The easiest way to accomplish this is to send a generic-type completion message.

    SNDPGMMSG  MSG('Job was submitted for processing.') +
                 MSGTYPE(*COMP)
    

    That should be easy enough. You might enhance the message by including values that the user just keyed into the prompt screen.

    SNDPGMMSG  MSG('Report for customer' *BCAT &CUSNO *BCAT + 
                  'was submitted for processing.') +           
                  MSGTYPE(*COMP)
    

    Including keyed values helps the user who is submitting multiple requests, perhaps taken from a list on paper.

    Another approach is to trap the message that OS/400 sends to the submitting program and send it to the caller.

    DCL        VAR(&MSGID) TYPE(*CHAR) LEN(7)                
    DCL        VAR(&MSGDTA) TYPE(*CHAR) LEN(80)              
    
    SBMJOB     CMD(DSPLIBL) JOB(TED)                         
    RCVMSG     MSGTYPE(*COMP) MSGDTA(&MSGDTA) MSGID(&MSGID)  
    IF         COND(&MSGID *EQ CPC1221) THEN(DO)             
    SNDPGMMSG  MSGID(CPC1221) MSGF(QCPFMSG) MSGDTA(&MSGDTA) +
                 MSGTYPE(*COMP)                              
    ENDDO
    

    The user will see a message like the following one at the bottom of his menu.

    Job 024488/AUSER/AJOB submitted to job queue QBATCH1 in library QGPL.
    

    Before you implement any of these ideas, first take a look at the ERP package. Packaged software, unlike much of the homegrown stuff I’ve seen, is usually built upon a strong architecture. That is, there are certain ways that things are done. How does your ERP package inform the user that a job has been submitted to batch? I suggest you use the same approach, if possible. I like consistency, mainly because I (as well as users) hate inconsistency. Even if you don’t like the way the ERP package does something, it would help the users to make your homegrown stuff work the way the ERP package does.

    –Ted

    Share this:

    • Share on Reddit (Opens in new window) Reddit
    • Share on Facebook (Opens in new window) Facebook
    • Share on LinkedIn (Opens in new window) LinkedIn
    • Share on X (Opens in new window) X
    • Email a link to a friend (Opens in new window) Email

    Tags:

    Sponsored by
    Manta Technologies

    The Leader in IBM i Education!
    Need training on anything i?
    Manta is all you need.

    Courses and competency exams on:
    · IBM i operations
    · System Management and Security
    · IBM i Programming Tools
    · Programming in RPG, COBOL, CL, Java
    · Web Development

    SQL, DB2, QueryProduct features:
    · Runs in every popular browser
    · Available 24/7/365
    · Free Student Reference Guides
    · Free Student Administration
    · Concurrent User License
    · Built-In IBM i Simulator

    You can download our 200-page catalog and take sample sessions at MantaTech.com

    Share this:

    • Share on Reddit (Opens in new window) Reddit
    • Share on Facebook (Opens in new window) Facebook
    • Share on LinkedIn (Opens in new window) LinkedIn
    • Share on X (Opens in new window) X
    • Email a link to a friend (Opens in new window) Email

    Using RPG As Your ASP Language, Part 1 Find Database Records with Invalid Dates

    Leave a ReplyCancel reply

Volume 4, Number 14 -- April 28, 2004
THIS ISSUE
SPONSORED BY:

Advanced Systems Concepts
COMMON
Guild Companies
WorksRight Sofware
Profound Logic Software

Table of Contents

  • Cross-Reference Your Procedures
  • Using RPG As Your ASP Language, Part 1
  • Keep Your Users Informed
  • Find Database Records with Invalid Dates
  • OS/400 Alert: Googlize Your Enterprise

Content archive

  • The Four Hundred
  • Four Hundred Stuff
  • Four Hundred Guru

Recent Posts

  • Power Systems Turns In Another Great Quarter
  • Big Blue Is Right On Schedule With Fall 2026 IBM i Tech Refreshes
  • Guru: Environment Variables – Global Variables Wearing Hiking Boots
  • A New IBM i Entity Takes Shape: Power By Fortra
  • IBM i PTF Guide, Volume 28, Number 38
  • Critical PHP2Shell Security Vulns Evoke ‘Black October’
  • Why Fortra Partnered with FalconStor to Launch Continuity Care: A Validated Recovery Service for IBM i
  • Guru: Analyzing User Session Statistics, Part 2
  • Fresche Launches OpsIQ, a Free AI-Based Operation Assistant for IBM i
  • IBM i PTF Guide, Volume 28, Number 37

Subscribe

To get news from IT Jungle sent to your inbox every week, subscribe to our newsletter.

Pages

  • About Us
  • Contact
  • Contributors
  • Four Hundred Monitor
  • IBM i PTF Guide
  • Media Kit
  • Subscribe

Search

Copyright © 2025 IT Jungle