Ü  SFLSCROLL

 

·         This display file keyword is used to store the RRN value of the first record of the subfile after the PAGE UP or PAGE DOWN activity is done.

·         When we do PAGE UP/PAGE DOWN and then press ENTER, the current RRN value of the top record of subfile is returned to the program.

 

 

Example

 

 


Columns . . . :    1  80                 Browse                         AMITCCCCC/QRPGLESRC
SEU==>                                                                           LOAD_DSPC3
FMT DP .....AAN01N02N03T.Name++++++RLen++TDpBLinPosFunctions+++++++++++++++++++++++++++
*************** Beginning of data *********************************************************
0001.00      A                                      DSPSIZ(24 80 *DS3)
0002.00      A                                      CA03(03 'EXIT')
0003.00      A          R HEADER
0004.00      A                                      OVERLAY
0005.00      A                                  1  3USER
0006.00      A                                      DSPATR(HI)
0007.00      A                                      COLOR(BLU)
0008.00      A                                  1 71DATE
0009.00      A                                      EDTCDE(Y)
0010.00      A                                      DSPATR(HI)
0011.00      A                                      COLOR(BLU)
0012.00      A                                  2 71TIME
0013.00      A                                      DSPATR(HI)
0014.00      A                                      COLOR(BLU)
0015.00      A                                  1 23'DISPLAY THE LOADALL SUBFILE'
0016.00      A                                      DSPATR(HI)
0017.00      A                                      COLOR(BLU)
0018.00      A          R FOOTER
0019.00      A                                      OVERLAY
0020.00      A                                 23  7'F3'
0021.00      A                                      DSPATR(RI)
0022.00      A                                      COLOR(WHT)
0023.00      A                                 23 10'= EXIT'
0024.00      A                                 23 26'F12'
0025.00      A                                      DSPATR(HI)
0026.00      A                                      DSPATR(RI)
0027.00      A                                 23 30'=PREVIOUS'
0028.00      A          R EXPD_SFL                  SFL
0029.00      A  56                                  SFLNXTCHG
0030.00      A            S_ORG          3S 0O  8 12
0031.00      A            S_ACC         12A  O  8 28
0032.00      A            S_CCY          3A  O  8 49
0033.00      A          R EXPD_CTL                  SFLCTL(EXPD_SFL)
0034.00      A                                      OVERLAY
0035.00      A  52                                  SFLDSP
0036.00      A  51                                  SFLDSPCTL
0037.00      A  50                                  SFLCLR
0038.00      A  45                                  SFLEND(*MORE)
0039.00      A                                      SFLSIZ(0006)
0040.00      A                                      SFLPAG(0005)
0041.00      A            S_SCROLL       5S 0H      SFLSCROLL
0042.00      A            S_SCRVAL       5S 0O 03 63
0043.00      A            S_RECNO        4S 0H      SFLRCDNBR
0044.00      A                                  3 40'CURRENT RECORD NUMBER:'
0045.00      A                                  6 12'ORG CODE'
0046.00      A                                  6 27'ACCOUNT NUMBER'
0047.00      A                                  6 48'CURRENCY'
****************** End of data ********************************************************

 

 

 

 


Columns . . . :    6  80                Browse                     AMITCCCCC/QRPGLESRC
SEU==>                                                                      LOAD_RPGC3
FMT *   *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8
*************** Beginning of data ****************************************************
0001.00                                                                                
0002.00 HDEBUG(*YES)                                                                   
0003.00 HOPTION(*NODEBUGIO)                                                             
0004.00  *                                                                             
0005.00 FMASTER    IF   E           K DISK                                             
0006.00 FLOAD_DSPC3CF   E             WORKSTN                                          
0007.00 F                                     SFILE(EXPD_SFL:RRN)                      
0008.00 F                                     INFDS(infds)                             
0009.00  *                                                                             
0010.00 Dinfds            DS                                                           
0011.00 DRECNO                  378    379I 0                                           
0012.00  *____________________________________________________________________         
0013.00  *______ In load all subfile after PAGE DOWN if we press ENTER, then           
0014.00  *______ first PAGE will be displayed, to avoid this we pass min RRN           
0015.00  *______ value of current page( using INFDS) to SFLRECNBR variable.            
0016.00  *____________________________________________________________________         
0017.00 C     *IN03         DOWEQ     *OFF                                             
0018.00 C                   EXSR      MAIN                                             
0019.00 C                   EXSR      DSPSFL                                            
0020.00 C                   ENDDO                                                      
0021.00 C                   SETON                                            LR        
0022.00 C*                                                                              
0023.00 C*_____________________________________________                                
0024.00 C*____________MAIN SUBROUTINE BEGINS HERE______                                
0025.00 C*_____________________________________________                                
0026.00 C     MAIN          BEGSR                                                      
0027.00 C* _ _ _ PAGE UP / PAGE DOWN HANDLING NOT NEEDED_ _                             
0028.00 C                   ENDSR                                                      
0029.00 C*_________________________________________________                            
0030.00 C*_________________________________________________                            
0031.00 C*_______________CLEAR SUBFILE_____________________                            
0032.00 C*_________________________________________________                            
0033.00 C     CLRSFL        BEGSR                                                      
0034.00 C                   EVAL      RRN=0                                            
0035.00 C                   SETON                                        50             
0036.00 C                   WRITE     EXPD_CTL                                         
0037.00 C                   SETOFF                                       50            
0038.00 C                   ENDSR                                                       
0039.00 C*_________________________________________________                            
0040.00 C*_______________FIRST FUBROUTINE__________________                            
0041.00 C*_________________________________________________                            
0042.00 C*                                                                             
0043.00 C     *INZSR        BEGSR                                                      
0044.00 C                   SETOFF                                       505152        
0045.00 C                   SETOFF                                       45            
0046.00 C                   Z-ADD     *ZEROS        RRN               4 0              
0047.00 C                   EVAL      S_RECNO=1                                        
0048.00 C                   EXSR      CLRSFL                                           
0049.00 C                   EXSR      FILSFL                                           
0050.00 C                   EXSR      DSPSFL                                           
0051.00 C                   ENDSR                                                      
0052.00 C*_________________________________________________                            
0053.00 C*_______________FILL SUBFILE__________________                                
0054.00 C*_________________________________________________                             
0055.00 C*                                                                             
0056.00 C     FILSFL        BEGSR                                                      
0057.00 C                   SETOFF                                       45            
0058.00 C                   DOU       %EOF(MASTER)                                     
0059.00 C                   READ(N)   REC1                                             
0060.00 C                   IF        %EOF(MASTER)                                     
0061.00 C                   EVAL      *IN45=%EOF(MASTER)                               
0062.00 C                   LEAVESR                                                     
0063.00 C                   ENDIF                                                      
0064.00 C                   EVAL      S_ORG=ORG                                        
0065.00 C                   EVAL      S_ACC=ACC                                        
0066.00 C                   EVAL      S_CCY=CCY                                        
0067.00 C                   ADD       1             RRN                                
0068.00  *- - Don't write to subfile buffer if RRN>9999                                
0069.00 C                   IF        RRN>9999                                         
0070.00 C                   LEAVE                                                       
0071.00 C                   ENDIF                                                      
0072.00 C                   WRITE     EXPD_SFL                                         
0073.00 C                   ENDDO                                                       
0074.00 C                   ENDSR                                                      
0075.00 C*_________________________________________________                            
0076.00 C*                                                                              
0077.00 C     DSPSFL        BEGSR                                                      
0078.00 C                   SETON                                        5152          
0079.00  * - - - Handle session device error if RRN<=0 i.e. no data in the buffer        
0080.00 C                   IF        RRN<=0                                           
0081.00 C                   SETOFF                                       52            
0082.00 C                   ENDIF                                                      
0083.00  *                                                                             
0084.00 C                   EVAL      S_SCRVAL=S_SCROLL                                
0085.00 C                   WRITE     HEADER                                           
0086.00 C                   WRITE     FOOTER                                           
0087.00 C                   EXFMT     EXPD_CTL                                         
0088.00 C                   EVAL      S_RECNO=RECNO                                    
0089.00 C                   SETOFF                                       5152          
0090.00 C                   ENDSR                                                      
****************** End of data *******************************************************



OUTPUT


 

This is the screen that will be displayed the very first time we run the program.

 


  AMIT                DISPLAY THE LOADALL SUBFILE                     12/04/13 
                                                                      13:17:50 
                                       CURRENT RECORD NUMBER: 00000            
                                                                               
                                                                               
           ORG CODE       ACCOUNT NUMBER       CURRENCY                        
                                                                               
           190             A00000000001         EUR                            
           190             A00000000002         USD                            
           190             A00000000004         EUR                            
           190             A00000000005         USD                            
           191             A00000000006         USD                            
                                                                        More...
                                                              
                                                                                
      F3 = EXIT          F12 =PREVIOUS      


 

 

Now we press ENTER and get the CURRENT RECORD NUMBER as 00001.


 


  AMIT                DISPLAY THE LOADALL SUBFILE                     12/04/13 
                                                                      13:17:57 
                                       CURRENT RECORD NUMBER: 00001             
                                                                               
                                                                               
           ORG CODE       ACCOUNT NUMBER       CURRENCY                        
                                                                                
           190             A00000000001         EUR                            
           190             A00000000002         USD                            
           190             A00000000004         EUR                            
           190             A00000000005         USD                            
           191             A00000000006         USD                            
                                                                        More...
                                                           
                                                                               
      F3 = EXIT          F12 =PREVIOUS                        


 

 

Press PAGEDOWN, then press ENTER and we get the CURRENT RECORD NUMBER as 00006.

 


 AMIT                DISPLAY THE LOADALL SUBFILE                     12/04/13 
                                                                      13:18:10 
                                       CURRENT RECORD NUMBER: 00006            
                                                                                
                                                                               
           ORG CODE       ACCOUNT NUMBER       CURRENCY                        
                                                                                
           191             A00000000007         EUR                            
           191             A00000000008         USD                            
           192             A00000000009         TRY                            
           192             A00000000010         INR                            
           192             A00000000011         INR                            
                                                                        More...
                                                
                                                                               
      F3 = EXIT          F12 =PREVIOUS                                         




 

 







User Comments:



Copyright © www.go4as400.com, 2013-2023. Copyright notice   Terms of services   Privacy policy