140 pts.
 rpg/400
while i am compiling the below program compile sucessfull and write the records into SA100 (Flatfile). C READ APHL01 C *IN20 DOWEQ *OFF C EVAL EDTE = APIRDT C EVAL CCDE = APCMPY C EVAL ERPN = PHDCPX + %EDITC(PHDCSQ:'X') C EVAL FYEAR = PHDCYR C EVAL INVNO = APINV C EVAL INVDT = AINVDT C WRITE SA100 (flatfile) C READ APHL01 20 C ENDDO C EVAL *INLR = *ON C RETURN when i insert the condition in below within do loop records not written to flat file SA100. APSTAT is a field in APHL01. so please advice.. C READ APHL01 C *IN20 DOWEQ *OFF C IF APSTAT = 'U' C EVAL EDTE = APIRDT C EVAL CCDE = APCMPY C EVAL ERPN = PHDCPX + %EDITC(PHDCSQ:'X') C EVAL FYEAR = PHDCYR C EVAL INVNO = APINV C EVAL INVDT = AINVDT C WRITE SA100 (flatfile) C READ APHL01 20 C ENDIF C ENDDO C EVAL *INLR = *ON C RETURN

Software/Hardware used:
ASKED: December 31, 2008  12:00 PM
UPDATED: December 31, 2008  7:19 PM

Answer Wiki:
Hi, Your ENDIF is in the wrong place, this will result in only reading one record then the program getting stuck in a loop. Try this :- C READ APHL01 C *IN20 DOWEQ *OFF C IF APSTAT = 'U' C EVAL EDTE = APIRDT C EVAL CCDE = APCMPY C EVAL ERPN = PHDCPX + %EDITC(PHDCSQ:'X') C EVAL FYEAR = PHDCYR C EVAL INVNO = APINV C EVAL INVDT = AINVDT C WRITE SA100 (flatfile) <b>C ENDIF</b> C READ APHL01 20 C ENDDO C EVAL *INLR = *ON C RETURN Regards, Martin Gilbert.
Last Wiki Answer Submitted:  December 31, 2008  12:23 pm  by  Gilly400   23,625 pts.
All Answer Wiki Contributors:  Gilly400   23,625 pts.
To see all answers submitted to the Answer Wiki: View Answer History.


Discuss This Question:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _