× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: RE: Screen Refresh
  • From: SHISHIRKSINGH <SHISHIRKSINGH@xxxxxxx>
  • Date: Tue, 25 Jan 2000 11:47:37 +0530

Thanks Patrick for the piece of code. I got to know another way of way of
doing it, bypassing the dataq method. 

The display file is created as already stated using INVITE and PUTOVR and
OVRDTA. In the program, I define the display file as

FIMDTEST   CF   E             WORKSTN MAXDEV(*FILE)                      
                                                                         
                                                                         
C                   DOW       *INKC = *OFF                               
C                   WRITE     RECFMT                                     
C                   READ      IMDTEST                              2221  
                                                                         
C                   IF        *IN22 = *ON                                
C     'INPUT'       DSPLY                                                
C                   ENDIF                                                
                                                                         
C                   ENDDO                                                
C                   SETON                                        LR      


This too works fine. Guess the indicator replicates the functionality of
dataq. Though have not tried out for subfile.

Shishir


Original Message-----
From: Patrick Townsend [mailto:townsend@patownsend.com]
Sent: Monday, January 24, 2000 10:40 PM
To: MIDRANGE-L@midrange.com
Subject: Re: Screen Refresh


Shishir,

Here is a snippet of RPG code that might be helpful. Sorry that it is in
the older RPG format. Note that PUTOVR and INVITE are important on the
display file:

 C           DSPLY     BEGSR
 C*
 C* Turn on PUTOVR if needed
 C*
 C           LASTSC    IFEQ PUT                                   
 C                     MOVE '1'       *IN89            PUTOVR     
 C                     ELSE                                       
 C                     MOVE '0'       *IN89                       
 C                     END                                        
 C*                                                               
 C* WRITE THE MESSAGE SUBFILE                                     
 C*                                                               
 C                     WRITE@MSGSFLC                              
 C*                                                        
 C* WRITE TEMPLATE FORMAT
 C*                                                        
 C                     WRITERL8030AT                       
 C*                                                              
 C* READ/WRITE SUBFILE SCREEN                                    
 C*                                                              
 C                     MOVE '1'       *IN80            DISPLAY   
 C                     MOVE '0'       *IN81            INIT      
 C                     MOVE '0'       *IN83            CLEAR     
 C                     MOVE '0'       *IN84            DELETE    
 C*                                                              
 C           BOTYES    IFEQ 'Y'                                  
 C                     MOVE '1'       *IN82            CROSS     
 C                     ELSE                                      
 C                     MOVE '0'       *IN82            CROSS     
 C                     END                                       
 C*                                                              
 C* Write the subfile control record
 C*
 C                     MOVE '1'       *IN65            INVITE    
 C                     WRITERL8030AC               90            
 C                     MOVE '0'       *IN65            INVITE    
 C*                                                              
 C* RECEIVE THE DATA QUEUE                                       
 C*                                                              
 C                     Z-ADD10        DTAQWT                     
 C*                                                              
 C                     CALL 'QRCVDTAQ'                           
 C                     PARM           DTAQNM 10                  
 C                     PARM           DTAQLB 10                  
 C                     PARM           DTAQLN  50                 
 C                     PARM           DTAQFL 80                  
 C                     PARM           DTAQWT  50                 
 C*                                                             
 C* IF THE LENGTH IS 0, TREAT AS REQUEST FOR REFRESH AND UPDATE DISPLAY
 C*                                                             
 C           DTAQLN    IFEQ 0                                   
 C                     MOVE '1'       *IN05                     
 C                     ELSE                                     
 C*
 C* There is input, read it now
 C*
 C                     READ RL8030AC                 90         
 C                     END                                      
 C*                                                       
 C* CLEAR MESSAGE SUBFILE                                 
 C*                                                       
 C           MSGYES    IFEQ 'Y'                           
 C                     MOVE 'YES'     CLEAR               
 C                     EXSR $MSG                          
 C                     END                                
 C*                                                       
 C* UPDATE CONTROL FIELDS                                 
 C*                                                       
 C                     MOVE PUT       SCREEN              
 C                     MOVE PUT       LASTSC              
 C*                                                       
 C                     ENDSR

Patrick

SHISHIRKSINGH wrote:
> 
>         Thanks for the response. But, still I have not been able to get
the
> desired results. Basically my requirement is that when I
>         do EXFMT(or SNDRCVF) for the display file, and then for 2 minutes
I
> don't do anything, then the control should return back to
>         the program and accordingly take proper steps(based on whether it
> was a time out or whether the user entered something
>         within the stipulated 2 minutes) . I am using V4R1.
> 
>             Am I  going wrong somewhere?
> 
>                         -------- Shishir
> 
> 
> 
>  ---Original Message-----
> From: Peter Dow [mailto:pcdow@yahoo.com]
> Sent: Saturday, January 22, 2000 3:48 AM
> To: MIDRANGE-L@midrange.com
> Subject: Re: Screen Refresh
> 
> Isn't INVITE a record-level keyword?
> 
> ----- Original Message -----
> From: Leland,  <mailto:dleland@Harter.com> David
> To: 'MIDRANGE-L@midrange.com' <mailto:'MIDRANGE-L@midrange.com'>
> Sent: Friday, January 21, 2000 1:16 PM
> Subject: RE: Screen Refresh
> 
> Sounds simple enough and the example in the CL programming manual
> SC41-5721-02    looks pretty basic but something's not working.  When I
> press Enter or any function key, it doesn't put anything in the data
queue.
> 
> The display file was created w/ the DTAQ parameter and DFTWRT(*NO).
> I've created the data queue prior to calling the program.
> I write the screen - WRITE RECORD
> Then, I call the QRCVDTAQ program to receive the data queue with a wait
time
> of 120.
> When I press Enter or any function key, it just stays at the screen and
> nothing happens until the 120 seconds expires.  Nothing gets put into the
> data queue either.
> 
> What am I missing?  I don't see if from the manual.  The only thing it
> mentions is INVITE but when I put that in at the file level, I receive an
> error message.
> 
> Dave
> 
> -----Original Message-----
> From: Patrick Townsend [ mailto:townsend@patownsend.com
> <mailto:townsend@patownsend.com> ]
> Sent: Friday, January 21, 2000 2:36 PM
> To: MIDRANGE-L@midrange.com
> Subject: Re: Screen Refresh
> 
> Yes. Override the display file to a data queue and then read the data
> queue in your program. You can specify a timeout value for the data
> queue. If the user presses Enter or a function key you will be able to
> tell from the data queue contents and you can then read the display
> file. If the data queue read length is zero you know it's timed out and
> you can refresh the display or whatever.
> 
> Patrick
> --
> IBM AS/400 communications, FTP automation, and network security
> software and consulting services.
> 
> http://www.patownsend.com <http://www.patownsend.com>
> 
> SHISHIRKSINGH wrote:
> >
> > Hi,
> >
> > Is there any way of refreshing the display screen (executing the loop
> again)
> > if the user does not enter within some specified time say 2 minutes.
> >
> > TIA
> > Shishir
> > +---
> > | This is the Midrange System Mailing List!
> > | To submit a new message, send your mail to MIDRANGE-L@midrange.com.
> > | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
> > | To unsubscribe from this list send email to
> MIDRANGE-L-UNSUB@midrange.com.
> > | Questions should be directed to the list owner/operator:
> david@midrange.com
> > +---
> +---
> | This is the Midrange System Mailing List!
> | To submit a new message, send your mail to MIDRANGE-L@midrange.com.
> | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
> | To unsubscribe from this list send email to
MIDRANGE-L-UNSUB@midrange.com.
> 
> | Questions should be directed to the list owner/operator:
> david@midrange.com
> +---
> 
> +---
> | This is the Midrange System Mailing List!
> | To submit a new message, send your mail to MIDRANGE-L@midrange.com.
> | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
> | To unsubscribe from this list send email to
MIDRANGE-L-UNSUB@midrange.com.
> | Questions should be directed to the list owner/operator:
david@midrange.com
> +---

-- 
IBM AS/400 communications, FTP automation, and network security
software and consulting services.

http://www.patownsend.com
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.