Solved

det info needed reg subfiles

Posted on 2003-10-30
9
550 Views
Last Modified: 2007-11-27
what is an expanding subfile???
0
Comment
Question by:kavithaSuresh
  • 6
  • 3
9 Comments
 
LVL 14

Expert Comment

by:daveslater
ID: 9656850
An expanding subfile is where you have a subfile with multiple lines where the key information is on the first line and secorday infor in on the other lines.

Using SFLDROP/SFLFOLD and a function key you can show/hide the extra information

Dave
0
 
LVL 14

Expert Comment

by:daveslater
ID: 9656860
Ps

If you need an example let me know

Dave
0
 

Author Comment

by:kavithaSuresh
ID: 9656874
thanks Dave ..........would u give a example.....i really wanna get to know in det abt that.
0
ScreenConnect 6.0 Free Trial

Explore all the enhancements in one game-changing release, ScreenConnect 6.0, based on partner feedback. New features include a redesigned UI, app configurations and chat acknowledgement to improve customer engagement!

 
LVL 14

Accepted Solution

by:
daveslater earned 125 total points
ID: 9657196
Hi
attached is code for a quick demo (it is in RPGLE)
Once the display/pgm are craeted run as followes

Call the program. The subfile is expanded
Press ENTER the subfile collapses
Press enter then program quits

Call the program again
Press F10. This will toggle betwen collapsed and expanded

********************************************************
File SFLDROP
Type DSPF
********************************************************


A*****************************************************************      
A*                                                               *      
A* System Name...  DEMONSTRATE SFLDROP/SFLFOLD                   *      
A*                                                               *      
A* AUTHOR........  D.SLATER                                      *      
A*                                                               *      
A*****************************************************************      
A*%%EC                                                                  
A                                      DSPSIZ(24 80 *DS3)              
A                                      CHGINPDFT(UL)                    
A                                      MSGLOC(24)                      
 ************************************************                      
A          R F01SFL                    SFL                              
A            LINE01        30   O  6  2                                
A            LINE02        30   O  7  4                                
A            LINE03        30   O  8  5                                
 ************************************************                      
A          R F01CTL                    SFLCTL(F01SFL)                  
A  31                                  SFLDSP                          
A                                      SFLDSPCTL OVERLAY                    
A N31                                  SFLCLR                              
A  40                                  SFLDROP(CF10)                        
A N40                                  SFLFOLD(CF10)                        
A                                      SFLSIZ(0006)                        
A                                      SFLPAG(0005)                        
A            RRN            3  0H      SFLRCDNBR                            
 ************************************************                          
A          R F01FTR                                                        
A                                      OVERLAY                              
A                                 22  2'                                  -
A                                                                         -
A                                               '                          
A                                      DSPATR(UL)                          
A                                 23  2'F10=More / Less Detail'            


********************************************************
Program SFLDROP
Type RPGLE
********************************************************

H                                                                                          
 *****************************************************************                          
 *                                                               *                          
 * System Name...  DEMONSTRATE SFLDROP/SFLFOLD                   *                          
 *                                                               *                          
 * AUTHOR........  D.SLATER                                      *                          
 *                                                               *                          
 *****************************************************************                          
FSFLDROP   CF   E             WORKSTN SFILE(F01SFL:RRN)                                    
 *****************************************************************                          
D I               S              3  0                                                      
 ** file subfile with dumm records                                                          
C                   DO        30            I                                              
C                   EVAL      LINE01='Record ' + %editc(i:'Z') +                            
C                             ' Line 01'                                                    
C                   EVAL      LINE02='Record ' + %editc(i:'Z') +                            
C                             ' Line 01'                                                    
C                   EVAL      LINE03='Record ' + %editc(i:'Z') +                            
C                             ' Line 01'                                                    
C                   ADD       1             rrn                                      
C                   WRITE     F01SFL                                                  
C                   ENDDO                                                            
 ** set subfile at first record                                                      
C                   EVAL      *IN31=*ON                                              
C                   EVAL      RRN=1                                                  
 ** show subfile expanded                                                            
 ** ie SFLFOLD is active                                                              
C                   WRITE     F01FTR                                                  
C                   EXFMT     F01CTL                                                  
 **                                                                                  
 ** show subfile collapsed                                                            
 ** ie SFLDROP is active                                                              
C                   EVAL      *IN40=*ON                                              
C                   EXFMT     F01CTL                                                  
C                   EVAL      *INlr=*ON                  



Regards

Dave
                   
0
 
LVL 14

Expert Comment

by:daveslater
ID: 9671691
Hi
Just a qick tip
As you may have noticed using this method does not return control to the program.
If you need this functionallity the what I do is:

A  40                                  SFLDROP(CF22)                        
A N40                                  SFLFOLD(CF22)              
A                                      CF10(10 'Toggle')

Then in the rpg condition *in40 if F10 is pressed then re-display
C                   if        *IN10
C                   EVAL      *in40 = not *in40
C                   endif

Dave
0
 

Author Comment

by:kavithaSuresh
ID: 9684421
Dave what do u think about rollup/roll down or page up/down for expanding subfiles?????????????????????????

is the functionality of these keys similar to that of F10-toggle.?????????

and can u tell me where these expanding subfiles are used???????
0
 
LVL 14

Expert Comment

by:daveslater
ID: 9685498
Hi
I think this is what you mean by page up/down
Your are building the subfile one page at a time.
Say you display the subfile with SFLFOLD active and the user presses F10 to collapse it.
The user then presses page down.
When you re-display the screen SFLFOLD is active so the subfile will re-display as expanded.
This is why I gave the previous tip

Condition SFLFOLD/SFLDROP on CF22 (or any other function key that is not used) This is only there to make the keyword valid and if the user presses it the subfile will change.

Display the F10=Expand ant the bottom and active F10 in the display. Use F10 in the program to condition the keywords i.e. reverse the condition on *IN40. Then when the user presses page down the display stays the same.


What I use expanding subfiles for are look up tables. Say you have a customer lookup window

Sel  Cust Id Del Seq  Cust Name
     Cust01   000       Cust name 01
     Cust02   000       Cust name 02
     Cust03   000       Cust name 03
     Cust03   001       Cust name 03
     Cust04   000       Cust name 04

F10=More Detail
     
In most situations a user will be able to identify the customer from the basic information, a new person may need additional information or if the names are similar so when the press F10 you get the first line of the address etc as confirmation

Sel  Cust Id Del Seq  Cust Name
     Cust01   000     Cust name 01
                            Address Line 1
     Cust02   000     Cust name 02
                            Address Line 1
     Cust03   000     Cust name 03
                            Address Line 1
     Cust03   001     Cust name 03
                            Address Line 1
     Cust04   000     Cust name 04
                            Address Line 1
F10=Less Detail


Dave
0
 

Author Comment

by:kavithaSuresh
ID: 9685592
hi Dave,
OK .................Thank u sooooooooo muchhhhhhhh.......that was crystal clear.i am very new to RPG/400 ...only for the past 3 months i have been working on this.....This expanding subfile is one concept that i came across while working ...similarly........i came across one program which was written by my senior.

****************************************************************        
DWPError          DS                                                    
DEBytesP                  1      4B 0 INZ(40)                          
DEBytesA                  5      8B 0                                  
DEMsgID                   9     15                                      
DEReserverd              16     16                                      
DEData                   17     56                                      
DHTTPHeader       C                   CONST('Content-type: text/html')  
DNewLine          C                   CONST(X'15')                      
DWrtDta           S           1024                                      
DWrtDtaLen        S              9B 0                                  
C                   EXSR      $Main                                    
C                   eval      *INLR = *On                              
C     $Main         BEGSR                                              
C                   eval      WrtDta = '<html><head>' +                
C                                      '<title>Hello World</title>' +  
.CL0N01Factor1+++++++Opcode&ExtExtended-factor2++++++++++++++++++++
 C                                      '</head><body>' +          
 C                                      'Hello World!' +            
 C                                      '</body></html>' +          
 C                                      NewLine                    
 C                   EXSR      $WrStout                            
 C                   ENDSR                                          
 C     $WrStout      BEGSR                                          
 C     ' '           CHECKR    WrtDta:1024   WrtDtaLen              
 C                   CALLB     'QtmhWrStout'                        
 C                   PARM                    WrtDta                
 C                   PARM                    WrtDtaLen              
 C                   PARM                    WPError                
 C                   ENDSR                                          
 C           *INZSR        BEGSR                                          
 C                   eval      WrtDta = %trim(HTTPHeader) +        
 C                                      NewLine + NewLine          
 C                   EXSR      $WrStout                            
 C                   ENDSR                  


i don't understand it can u help me to?????????                      
0
 
LVL 14

Expert Comment

by:daveslater
ID: 9685633
Hi
This is writing data to the HTTP server using the system API's
It is simply a test peogram to write "Hello world" to a web browser using HTML.

I have done some work on this but not using appachie. You would be better postine a new question if you need more info. Here is a link.

http://publib.boulder.ibm.com/iseries/v5r2/ic2924/index.htm?info/rzaie/rzaieapi_qtmhwrstout.htm


Good luck with your AS/400 career

dave
0

Featured Post

NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

Question has a verified solution.

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

Do you use a spreadsheet like Microsoft's Excel?  Have you ever wanted to link out to a non excel file on your computer or network drive?  This is the way I found to do it!
This article outlines why you need to choose a backup solution that protects your entire environment – including your VMware ESXi and Microsoft Hyper-V virtualization hosts – not just your virtual machines.
Along with being a a promotional video for my three-day Annielytics Dashboard Seminor, this Micro Tutorial is an intro to Google Analytics API data.
In a recent question (https://www.experts-exchange.com/questions/28997919/Pagination-in-Adobe-Acrobat.html) here at Experts Exchange, a member asked how to add page numbers to a PDF file using Adobe Acrobat XI Pro. This short video Micro Tutorial sh…

803 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