Display or print file field descriptions

Display or print file field descriptions

The DSPFFD command on the AS/400 is quite cumbersome to read through. So, I wrote a routine that will give me the field descriptions and sizes along with a record size summary, which encapsulates the detail found in the DSPFFD command. I call mine DFD. It uses the DSPFFD command to output to a file in QTEMP. Then I run a query over the file, selecting those fields that I want to display or print. In the command and CLP I designate whether to display the query output or to print the output using the query output options on the RUNQRY command. It's really quick, the tech support and programming staff use it regularly and are grateful for not having to dig through the DSPFFD display.


DFD Command Specifications

Command:

	CMD         PROMPT('Display File Field Description')      
	PARM       KWD(FILE) TYPE(*CHAR) LEN(11) MIN(1) +        
            	 PROMPT('File Name -' 01)                    
	PARM       KWD(LIBRARY) TYPE(*CHAR) LEN(11) MIN(1) +     
            	 PROMPT('Library Name -' 02)                 
	PARM       KWD(OUTPUT) TYPE(*CHAR) LEN(11) RSTD(*YES) +  
            	    DFT(*DISPLAY) VALUES(*DISPLAY *PRINTER) +   
           	 	    MIN(0) PROMPT('Output Device -' 03)         

Program:

	             PGM        PARM(&FILE &LIBRARY &OUTPUT)                    
             DCL        VAR(&FILE) TYPE(*CHAR) LEN(11)                  
             DCL        VAR(&LIBRARY) TYPE(*CHAR) LEN(11)        

    Requires Free Membership to View

    Register today to access targeted resources from our editorial writers and independent industry experts including news, tips, and advice to help you do your job more efficiently and effectively. Stay informed on the hottest topics and biggest challenges faced by IT professionals working with iSeries products and services.

    By submitting your registration information to Search400.com you agree to receive email communications from TechTarget and TechTarget partners. We encourage you to read our Privacy Policy which contains important disclosures about how we collect and use your registration and other information. If you reside outside of the United States, by submitting this registration information you consent to having your personal data transferred to and processed in the United States. Your use of Search400.com is governed by our Terms of Use. You may contact us at webmaster@TechTarget.com.

DCL VAR(&OUTPUT) TYPE(*CHAR) LEN(11) DLTF QTEMP/DDSLIST MONMSG MSGID(CPF0000) DSPFFD FILE(&LIBRARY/&FILE) OUTPUT(*OUTFILE) + OUTFILE(QTEMP/DDSLIST) MONMSG MSGID(CPF3012 CPF3064) EXEC(DO) SNDPGMMSG MSG('File Not Found!!! Command Aborted!!!') GOTO CMDLBL(EXIT) ENDDO RUNQRY QRY(COMMON/DSPFFDQ) QRYFILE((QTEMP/DDSLIST)) + OUTTYPE(&OUTPUT) OUTFORM(*DETAIL) EXIT: ENDPGM

Query:

1. First to do is to run the Command "DSPFFD", going to and Outfile in Library OTEMP

2.

Create a Query, placing it in QGPL or a library common to all users.

	     a.  File . . . . . . . . .   DDSLIST        Name, F4 for list         
                      Library  . . . . .    QTEMP        Name, *LIBL, F4 for list  
                      Member . . . . . .  *FIRST         Name, *FIRST, F4 for list 
                      Format . .  . . . .   QWHDRFFD       Name, *FIRST, F4 for list
	     b.  Select and Sequence:
		  Seq   Field             Text                                                 Len  Dec 
                            10   WHFILE        File                                                  10      
                            20   WHFTYP       Type of file: P=Phy, L=Log, D=Dev      1      
                            30   WHNAME      Record format                                  10      
                            40   WHFLDE       External field name 		  10      
                            50   WHFLDB       Field length in bytes                            5    0 
                            60   WHFLDP       Decimal positions to right of decimal    2    0 
                            70   WHFLDD       Number of digits                                 2    0 
                            80   WHIBO          Input buffer position                            5    0 
                            90   WHFTXT        Field text description                          50           
	      c.  Set up a Sort Pattern
     			Sort                                                                          
			Prty A/D  Field           Text                                      		  Len  Dec
  			10  A   WHFILE          File                                         		  10     
 			20  A   WHFTYP          Type of file: P=Physical, L=Logical, D=D      1     
  			30  A   WHNAME          Record format                               	  10 
	      d.  Set Up Report for Selected fields accepting defaults
	      e.  Report Summary Functions
		---Options---  Field                Text                                   
            		     5  WHFLDE          External field name                 
		    1           5  WHFLDB          Field length in bytes               
              		         
	       f.  Define Report Breaks
 		Break    Sort                                                       
		Level    Prty  Field                 Text                                 
 		    1        10  WHFILE            File                                 
  		    1        20  WHFTYP          Type of file: P=Physical, L=Logical  
  		    1        30  WHNAME          Record format
	       g.  Output Type and Output form
                        Output type  . . . . . . . . . . .   1     1=Display       
                                                                         2=Printer       
                                                                         3=Database file 
                                                            
                      Form of output . . . . . . . . . .   1     1=Detail        
                                                                         2=Summary only 

This will set up will place the output to your display when the Command DFD is executed, unless you change the default for the Command to place the output to a printer (see values clause in third parm of DFD Command source).

This was first published in April 2001

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.