IF I:NDX = 0 SET INDEX TO &NDX ENDIF IF VALL:: STORE 'DO ' + TRANS:CD + 'VL' TO SYS::VAL ELSE STORE '* ' TO SYS::VAL ENDIF STORE TRANS:CD + 'SD' TO SYS::STA STORE TRANS:CD + 'GE' TO SYS::GE STORE TRANS:CD + 'RE' TO SYS::RE RELEASE I:RUN , I:QUIT, IN:FILE , I:FILE , NDX , SYSADD , SPACE RELEASE STOP:NR , ST: , MORE * ******************************************************************** STORE ' ; ' TO IBLK: STORE T TO ADD::ING STORE ' ' TO MC::PS DO WHILE ADD::ING STORE F TO I::ERR IF MC::PS <> 'S' .AND. MC::PS <> 'T' *********** *********************** STORE $(IBLK:,1,33) TO E::RR DO &SYS::STA *********** *********************** ENDIF ERASE STORE ' ' TO MC::PS @ 0,0 SAY TRANS:CD + ' ' + BLD:DATE @ 0,40 SAY VER: @ 01,5 SAY TRIM(HEADER) + ' - ADD' *********** *********************** DO &SYS::GE *********** *********************** STORE ' ' TO MC::PS @ 22,0 @ 23,0 SAY ' ' DO WHILE MC::PS <> 'M' .AND. MC::PS <> 'C' .AND. MC::PS <> 'P' @ 23,5 SAY ' MAIN MENU = M, CANCEL = C, PROCESS = P ' GET MC::PS READ STORE !(MC::PS) TO MC::PS ENDDO IF MC::PS = 'P' &SYS::VAL STORE LEN(E::RR) - 1 TO I:LEN STORE $(E::RR,2,I:LEN) + ' ' TO E::RR ENDIF IF I::ERR STORE ' ' TO MC::PS DO WHILE MC::PS <> 'M' .AND. MC::PS <> 'C' .AND. MC::PS <> 'T' @ 22,10 SAY '*** ERROR ***' @ 23,5 SAY 'MAIN MENU = M, CANCEL = C, TRY AGAIN = T ' GET MC::PS READ STORE !(MC::PS) TO MC::PS ENDDO IF MC::PS = 'T' LOOP ENDIF ENDIF IF MC::PS = 'P' APPEND BLANK *********** ************************** DO &SYS::RE *********** ************************** STORE ' ' TO MC::PS @ 22,0 @ 23,0 SAY ' ' DO WHILE MC::PS <> 'M' .AND. MC::PS <> 'P' .AND. MC::PS <> 'S' @ 22,10 SAY 'FUNCTION COMPLETE' @ 23,5 SAY ' SAVE = S, MAIN MENU = M, PROCESS = P ' GET MC::PS READ STORE !(MC::PS) TO MC::PS ENDDO ENDIF IF MC::PS = 'M' STORE F TO ADD::ING ENDIF ENDDO IF I:NDX = 0 SET INDEX TO ENDIF RETURN