We help IT Professionals succeed at work.

Writing Out Bottom Screen with Subfile and READ(E)

nickmbnabb
nickmbnabb asked
on
I have a subfile program and want command key descriptions on the bottom.  Usually, I write a BOTTOM screen, then EXFMT, but this time I am auto-refreshing, so I'm using INVITE, WAITRCD(5) and READ(E).  The BOTTOM screen displays briefly, then seems to get overlaid by the subfile screen.  I have OVERLAY on both screens.  Any way to get the BOTTOM screen to display?
Comment
Watch Question

Gary PattersonVP Technology / Senior Consultant

Commented:
Suggest you post the DSPD DDS and relevant section(s) of code.

- Gary Patterson

Author

Commented:
A          R SFFL5                     SFL                  
A            RECNUM        15S 0H                          
A            TERM          10A  O  8  2DSPATR(HI)          
A  50                                  COLOR(RED)          
A            VNBR          15A  O  8 13DSPATR(HI)          
A  50                                  COLOR(RED)          
A            TYPE          10A  O  8 29DSPATR(HI)          
A  50                                  COLOR(RED)          
A            LOC            6A  O  8 40DSPATR(HI)          
A  50                                  COLOR(RED)          
A            BSTAT         15A  O  8 47DSPATR(HI)          
A  50                                  COLOR(RED)          
A            ENDATE         6Y 0O  8 63EDTCDE(Y)            
A                                      DSPATR(HI)          
A  50                                  COLOR(RED)          
A            ENTIME         4Y 0O  8 72DSPATR(HI)          
A                                      EDTWRD('0  :  ')    
A  50                                  COLOR(RED)          
A          R SFCT5                     SFLCTL(SFFL5)                        
A                                      SFLSIZ(1400)                          
A                                      SFLPAG(0014)                          
A  30                                  SFLEND(*MORE)                        
A  22                                  SFLDSP                                
A  21                                  SFLDSPCTL                            
A  20                                  SFLCLR                                
A                                      OVERLAY                              
A                                      CA03(03 'EXIT')                      
A                                      RTNCSRLOC(*MOUSE &ROW &COL)          
A                                      SFLCSRRRN(&RRNF)                      
A            ROW            3S 0H                                            
A            COL            3S 0H                                            
A            RRNF           5S 0H                                            
         
A                                  2 32'Arrival Status'                  
A                                  1 69DATE                                  
A                                      EDTCDE(Y)                            
A                                  2 69TIME                                  
A                                      EDTWRD('0 :  :  ')                    
A                                  5 11'Total # of Containers:'              
 A          R BOTTOM1                                    
A                                      OVERLAY          
A                                 23 49' F3 - EXIT '    
A                                      DSPATR(RI)        
A                                      DSPATR(UL)        
A                                 22 49'           '    
A                                      DSPATR(UL)        


0014.00 FCAVW01D   CF   e             WORKSTN infsr(*pssr)            
0015.00 F                                     SFILE(SFFL5:RRN)        
0015.05 F                                     maxdev(*file)            
0015.06 F                                     INFDS(infods)      
    d infods          ds                  
    d stat1                  11     15    

 
c** initial  load sffl5                                                
                                       
c                   z-add     0             rrn               4 0      
c                   z-add     0             ctr               4 0      
c                   movea     '100'         *in(20)                    
c                   write     sfct5                                    
c                   movea     '011'         *in(20)                    
c     avkey         setll     cesav05        
 c                   do        14              
c     avkey1        reade     cesav05                30
c     *in30         ifeq      *off                  
c                   move      avvnbr        svnbr            15          
c                   move      avdten        sdate             6 0        
c                   move      avtmen        stime             6 0
c                   write     sffl5
c                   end                                                  
c                    write     BOTTOM1              
 c                   write     sfct5                
 c                   setoff                         8081
 c                   read(e)   cavw01d              

At this point, BOTTOM1 briefly displays, then SFCT5 overlays it.

                                                                           

Author

Commented:
Oops, left out ENDDO at the end of the DO  14 loop.
VP Technology / Senior Consultant
Commented:
Looks to me like part of your SFFL5 record runs into your BOTTOM1 record:

SFLCTL is on line 8
SFL is 14 long, so it occupies lines 9-22
BOTTOM has a field defined on line 22, also (blanks, underlined).

A                                 22 49'           '    
A                                      DSPATR(UL)        

Try eliminating the overlap.

- Gary Patterson

Author

Commented:
Duhhh!  Do I feel like an idiot.  It's always something simpler than one thinks.

Thanks ,Gary.
Gary PattersonVP Technology / Senior Consultant

Commented:
Sure.  Happy to help.  A lot of times it just takes a second set of eyes.

- Gary