Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Strange AS400 DDS Screen problem - when I change any 3 field to both from output then the function keys quit working.

Posted on 2011-02-20
14
1,660 Views
Last Modified: 2013-12-06
I have 7 fields in a subfile (one for each day of the week).  When I change any 3 or more of them to both from output only - the function keys quit working.  Change any two and all is good.  When 3 or more are changed I have to use system attention '2' (enter)  twice to get out.  It freezes.  I will create a screencast showing the problem.  I'm not including any code besides the DDS (for now) because everything else is constant.  I will forward anything needed, but I thought this might be strange enough someone would recognize it.  

Thank You in advance......... lynn-harris-411709.flv
0
Comment
Question by:lynn_harris
  • 9
  • 5
14 Comments
 
LVL 35

Expert Comment

by:Gary Patterson
ID: 34940082
Lynn,

It certainly appears to be an unusual problem, but it is probably a lot less mysterious than you think.  

Compile the program to include a source debugging view, and then single step through the problem part of the program (after the EXFMT that throws the subfile control record): odds are the problem will become obvious when you do that.

Changing these fields from Output to Both has a number of consequences:  it changes the length of the input buffer, for example.  Maybe that creates an unexpected condition that causes the program to loop once the buffer exceeds a certain length (that would explain why it takes 3 or more changed to "B" before it starts looping).

It also makes it possible for the "B" fields to a have a different value on return than when written out to the screen - perhaps that is a condition that the program wasn't designed to handle, again, resulting in a loop.

Anyway, run it under debug and see if you can't see where it takes a wrong turn.

If you still can't track down the issue, post the source for the RPG and the DSPF and I'll be happy to take a look and see if I can spot it.

- Gary Patterson
0
 

Author Comment

by:lynn_harris
ID: 34940250
Hi Gary,

Control does not return to the program.  ??   Is there something else you would recommend before I post the source for you?  I have not had the program control not return before.

Many Thanks,
Lynn  
0
 

Author Comment

by:lynn_harris
ID: 34940366

Gary,

I'm going to page through the program and DSPF with screencast. I didn't want to attach a file.  If there is a better way, please let me know.  

Also, I changed the EXFMT to WRITE/READ to see if it would make a difference.... it did not.

Thanks,
Lynn  lynn-harris-411742.flv
0
How our DevOps Teams Maximize Uptime

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us. Read the use case whitepaper.

 
LVL 35

Expert Comment

by:Gary Patterson
ID: 34943311
Lynn,

What makes you say that program does not return to the program?  

When you compiled for debugging, did you remember to set OPTION(*NODEBUGIO)?  Remember that if you forget this option, you have to STEP in the debugger once for each field and indicator on the screen after an EXFMT, which can give the appearance of the debugger being stuck on the EXFMT.  As an alternative, set your breakpoint on the line of code after the EXFMT statement, instead of on the EXFMT statement itself.

It is too hard to look at the program and dds in this format.  Suggest you upload them as text files next time.

Also, look at the compiled DDS listing (from the problem version of the DSPF, especially) and see if you have any warnings or errors in the compile.

- Gary

0
 

Author Comment

by:lynn_harris
ID: 34944243
Hi Gary,

Thank you for getting back with me.  

I always compile with the option(*NODEBUGIO) and I place my break point on the line of code after the exfmt.  I found another clue.... well maybe for you. I can get it to work, but not sure where to go from there.  

I have added a window which displays information prior to the main screen.  It function correctly either way.

Control does not return to the program after the main screen is display.  If I press system attention (shift esc) and just press enter..... (do not enter a '2') twice the correct pop-up window is displayed. I can entered a value and it continues correctly.   It appears only the main screen is having the problem.  

I've attached the program and scree in txt format.  

Thank You,
Lynn

 program.txt Screen.txt
0
 

Author Comment

by:lynn_harris
ID: 34944327
Sorry, forgot to embed the screencast.... here it is

lynn-harris-411916.flv
0
 

Author Comment

by:lynn_harris
ID: 34944397

Darn... sorry again.... I forgot to let you know, there are no warning or errors on the compile of the DDS. (from either version)

0
 
LVL 35

Expert Comment

by:Gary Patterson
ID: 34944653
What specific line is it hanging on?

- Gary
0
 

Author Comment

by:lynn_harris
ID: 34944835
59200 is where it hangs because it does not get to 60200 after the exfmt.  


However, since I last posted.  I commented out the write on lines 55200 and 58200.  The write for the header and command keys.  (HDG & CMDKY1)  It works correctly with these lines commented out when 3 are changed to 'both'.  However, screen works
 correctly with 2 or less even with the lines not commented out.   ??


Lynn
0
 

Author Comment

by:lynn_harris
ID: 34944973

Gary,

A little more information.  

It is the command keys which are causing the issue.   I can leave the header record in and it works correctly.  Remove the header record and only have the command key prior to the exfmt and it fails.  


thanks,
Lynn
0
 
LVL 35

Accepted Solution

by:
Gary Patterson earned 500 total points
ID: 34945022
Try commenting out the ASSUME record format and recompiling.

I don't recognize the 5250 emulator you are using.  Does this behave the same way on a real terminal (if you have one), or using a different emulator like Client Access?

- Gary
0
 

Author Comment

by:lynn_harris
ID: 34945130
Gary,

WOW!!!  The interface is ES32 software.  It is the problem.  I've used it for 7 or 8 years and never had a problem....

When I use Client Access the problem does not occur.

Very Very Strange.    

Thank You so much!   I would not have thought to try CA.   Honestly, this is the first problem I've had which can be traced to ES32.  

Lynn

0
 

Author Closing Comment

by:lynn_harris
ID: 34945133
Thank You!!!
0
 
LVL 35

Expert Comment

by:Gary Patterson
ID: 34945222
Lynn,

Interesting problem.  Glad I could help.  

Maybe a patch or update to your software is available.  If not, you should probably open a support incident with the vendor if you are under maintenance.

- Gary Patterson
0

Featured Post

Webinar: Aligning, Automating, Winning

Join Dan Russo, Senior Manager of Operations Intelligence, for an in-depth discussion on how Dealertrack, leading provider of integrated digital solutions for the automotive industry, transformed their DevOps processes to increase collaboration and move with greater velocity.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Windows 10 is here and for most admins this means frustration and challenges getting that first working Windows 10 image. As in my previous sysprep articles, I've put together a simple help guide to get you through this process. The aim is to achiev…
I use more than 1 computer in my office for various reasons. Multiple keyboards and mice take up more than just extra space, they make working a little more complicated. Using one mouse and keyboard for all of my computers makes life easier. This co…
This is used to tweak the memory usage for your computer, it is used for servers more so than workstations but just be careful editing registry settings as it may cause irreversible results. I hold no responsibility for anything you do to the regist…
Hi friends,  in this video  I'll show you how new windows 10 user can learn the using of windows 10. Thank you.

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question