Solved

RPG Problems

Posted on 2008-10-20
1
2,356 Views
Last Modified: 2013-11-25
I am getting compile errors.  I have taken one 8 hour class in RPG and I could use expert help with the following code/errors - I have also attached a word document - It is very hard to cut and paste from - the compiler errors are in red.

0001.00 HDATFMT(*ISO)    DATEDIT(*YMD)                                                                  
0002.00 FBADMPEU   IF   E             DISK                                                              
0003.00 FBADMPNU   IF   E             DISK                                                              
0004.00 FNAMECHG   O    E           K DISK    RENAME(NAMECHG:NCOUT)                                      
0005.00 DYEST             S               D                                        YESTERDAY VARIABLE    
0006.00 DTODAY            S               D                                        TODAY'S DATE          
0007.00 DHOSP             S              3I 0                                      HOSPITAL #            
0008.00 DCHGDT            S             10I 0                                      DATE NAME CHANGED    
0009.00 DSPID             S             20A                                        SPID                  
0010.00 DCHGBY            S              4A                                        NAME CHGED BY INITIL  
0011.00 DNEWLN            S             35A                                        NEW LAST NAME        
0012.00 DPREVFN           S             35A                                        PREVIOUS FIRST NAME  
0013.00 DPREVMN           S             35A                                        PREVIOUS MIDDLE NAME  
0014.00 DNEWFN            S             35A                                        NEW FIRST NAME        
0015.00 DNEWMN            S             35A                                        NEW MIDDLE NAME      
0016.00 DPREVLN           S             35A                                        PREVIOUS LAST NAME    
0017.00                                                                                                  
0018.00  /FREE                                                                                          
0019.00     TODAY = %date();                                                                            
0020.00     YEST = TODAY + %DAYS(-1);                                                                                        
0021.00     DOU %EOF(BADMPNU);                                                                                                
0022.00       READ PFPNR1;                                                                                                  
0023.00       IF NOT %EOF(BADMPNU);                                                                                        
0024.00          IF %DATE(PNNMDT) = YEST;                                                                                    
0025.00           chain (PNHSP : PNSPID) BADMPEU;                                                                            
0026.00              IF %FOUND(BADMPEU);                                                                                      
0027.00                 HOSP = PEHSP;                                                                                        
0028.00                 CHGDT = PNNMDT;                                                                                      
0029.00                 SPID = PNSPID;                                                                                        
0030.00                 PREVLN = PNLSTN;                                                                                      
0031.00                 PREVFN = PNFSTN;                                                                                      
0032.00                 PREVMN = PNMIDN;                                                                                      
0033.00                 NEWFN = PEFSTN;                                                                                      
0034.00                 NEWMN = PEMIDN;                                                                                      
0035.00                 NEWLN = PELSTN;                                                                                      
0036.00                 CHGBY = PNLMBY;                                                                                      
0037.00                 WRITE NAMECHG;                                                                                      
0038.00               ENDIF;                                                                                081019                  
0039.00            ENDIF;                                                                                   081019                  
0040.00         ENDIF;                                                                                    
0041.00       ENDDO;                                                                                      
0042.00                                                                                                  
0043.00    *INLR = *ON;                                                                                  
0044.00    RETURN;                                                                                        

000400  External descriptions for file NAMECHG not found; file is  
         ignored.
*RNF7066 00      2 000200  Record-Format PFPER1 not used for input or output.              
 *RNF7702 30    100 002500  A list of key fields is not allowed with program described      
                            file.   corresponds to line 25                                                          
 *RNF7503 30    112 003700  Expression contains an operand that is not defined. corresponds to line 37            
 *RNF7086 00      3 000300  RPG handles blocking for file BADMPNU. INFDS is updated          
                            only when blocks of data are transferred.

The file called NAMECHG had a record format of NAMECHG  if the line reads:
0004.00 FNAMECHG   O    E             DISK        

Then I get the following error:

*RNF2121 30 a      000400  Record format NAMECHG in file NAMECHG already defined;    
                           record format is ignored.                                
*RNF2109 40 b      000400  All Record Formats for externally-described file NAMECHG  
                           ignored or dropped due to error; file ignored.            
                                                         

namechgerrs.doc
0
Comment
Question by:Jeanniem
1 Comment
 

Accepted Solution

by:
Jeanniem earned 0 total points
ID: 22770094
I found that the main problem with the above code is that I didn't specify that the files had key fields in the F spec.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Suggested Solutions

We need a new way to communicate time sensitive or critical info.   The best part of my role at xMatters is visiting our clients all over the world to learn about how they operate their businesses, share insights that xMatters has gleaned across…
With the rapid rise in mobile usage, mobile devices are here to stay and have become an integral part of doing business. Here are 9 great apps for your BYOD environment.
In this video I am going to show you how to back up and restore Office 365 mailboxes using CodeTwo Backup for Office 365. Learn more about the tool used in this video here: http://www.codetwo.com/backup-for-office-365/ (http://www.codetwo.com/ba…
With the power of JIRA, there's an unlimited number of ways you can customize it, use it and benefit from it. With that in mind, there's bound to be things that I wasn't able to cover in this course. With this summary we'll look at some places to go…

895 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now