STORE T TO DEL::ING STORE TRANS:CD + 'SH' TO SYS::SH STORE F TO PCK::ING DO WHILE DEL::ING STORE SELECT:1 TO SE::LECT1 STORE SELECT:2 TO SE::LECT2 STORE SELECT:3 TO SE::LECT3 STORE SELECT:4 TO SE::LECT4 STORE ' ' TO MC::PS STORE ' ' TO MF::IND STORE 0 TO MF::INT STORE ' ' TO T::IT STORE 3 TO I:LN ERASE @ 0,0 SAY TRANS:CD + ' ' + BLD:DATE @ 0,40 SAY VER: @ 1,5 SAY TRIM(HEADER) + ' - DELETE' IF SELECT:1 <> ' ' @ I:LN,10 SAY '1. DELETE RECORDS ON ' + SELECT:1 STORE T::IT + ' .AND. MF::INT <> 1' TO T::IT STORE I:LN + 1 TO I:LN IF TYPE(&SE::LECT1) = 'C' STORE $(SPACE,1,LEN(&SE::LECT1)) TO F::1 ELSE STORE 0 TO F::1 ENDIF ENDIF IF SELECT:2 <> ' ' @ I:LN,10 SAY '2. DELETE RECORDS ON ' + SELECT:2 STORE T::IT + ' .AND. MF::INT <> 2' TO T::IT STORE I:LN + 1 TO I:LN IF TYPE(&SE::LECT2) = 'C' STORE $(SPACE,1,LEN(&SE::LECT2)) TO F::2 ELSE STORE 0 TO F::2 ENDIF ENDIF IF SELECT:3 <> ' ' @ I:LN,10 SAY '3. DELETE RECORDS ON ' + SELECT:3 STORE T::IT + ' .AND. MF::INT <> 3' TO T::IT STORE I:LN + 1 TO I:LN IF TYPE(&SE::LECT3) = 'C' STORE $(SPACE,1,LEN(&SE::LECT3)) TO F::3 ELSE STORE 0 TO F::3 ENDIF ENDIF IF SELECT:4 <> ' ' @ I:LN,10 SAY '4. DELETE RECORDS ON ' + SELECT:4 STORE T::IT + ' .AND. MF::INT <> 4' TO T::IT STORE I:LN + 1 TO I:LN IF TYPE(&SE::LECT4) = 'C' STORE $(SPACE,1,LEN(&SE::LECT4)) TO F::4 ELSE STORE 0 TO F::4 ENDIF ENDIF @ I:LN,10 SAY '5. RETURN TO MAIN MENU' STORE LEN(T::IT) - 7 TO I:STOP STORE $(T::IT,8,I:STOP) TO T::IT DO WHILE &T::IT .AND. MF::INT <> 5 @ 23,10 SAY 'ENTER NUMBER OF DESIRED "FIND PROCESS" ' GET MF::IND READ STORE VAL(MF::IND) TO MF::NR , MF::INT STORE ' ' TO MF::IND ENDDO RELEAS I:LN , T::IT DO CASE CASE MF::INT = 1 @ 13,10 SAY SELECT:1 GET F::1 READ IF TYPE(&SE::LECT1) = 'C' STORE TRIM(!(F::1)) TO F::1 LOCATE FOR F::1 $ &SE::LECT1 ELSE LOCATE FOR F::1 = &SE::LECT1 ENDIF CASE MF::INT = 2 @ 13,10 SAY SELECT:2 GET F::2 READ IF TYPE(&SE::LECT2) = 'C' STORE TRIM(!(F::2)) TO F::2 LOCATE FOR F::2 $ &SE::LECT2 ELSE LOCATE FOR F::2 = &SE::LECT2 ENDIF CASE MF::INT = 3 @ 13,10 SAY SELECT:3 GET F::3 READ IF TYPE(&SE::LECT3) STORE TRIM(!(F::3)) TO F::3 LOCATE FOR F::3 $ &SE::LECT3 ELSE LOCATE FOR F::3 = &SE::LECT3 ENDIF CASE MF::INT = 4 @ 13,10 SAY SELECT:4 GET F::4 READ IF TYPE(&SE::LECT4) = 'C' STORE TRIM(!(F::4)) TO F::4 LOCATE FOR F::4 $ &SE::LECT4 ELSE LOCATE FOR F::4 = &SE::LECT4 ENDIF CASE MF::INT = 5 STORE F TO DEL::ING LOOP OTHERWISE ENDCASE DO WHILE * .AND. MF::INT <> 6 CONTINUE IF EOF STORE 6 TO MF::INT ENDIF ENDDO IF EOF @ 22,20 SAY 'RECORD NOT FOUND' STORE ' ' TO MC::PS @ 23,0 SAY ' ' DO WHILE MC::PS <> 'M' .AND. MC::PS <> 'P' @ 23,5 SAY 'MAIN MENU = M, PROCESS = P ' GET MC::PS READ STORE !(MC::PS) TO MC::PS ENDDO ENDIF IF MC::PS = 'M' STORE F TO DEL::ING LOOP ELSE IF MC::PS = 'P' LOOP ENDIF ENDIF STORE T TO CYC::ING DO WHILE CYC::ING ERASE STORE ' ' TO MC::PS @ 0,0 SAY TRANS:CD + ' ' + BLD:DATE @ 0,40 SAY VER: @ 01,5 SAY TRIM(HEADER) + ' - DELETE' ************ ************************** DO &SYS::SH ************ ************************** STORE ' ' TO MC::PS DO WHILE MC::PS <> 'M' .AND. MC::PS <> 'C' .AND. MC::PS <> 'P' .AND. MC::PS ; <> 'R' @ 23,0 SAY 'ROLL = R, MAIN MENU = M, CANCEL = C, PROCESS = P' GET MC::PS READ STORE !(MC::PS) TO MC::PS ENDDO IF MC::PS = 'P' STORE T TO PCK::ING DELETE ENDIF IF MC::PS = 'P' .OR. MC::PS = 'R' CONTINUE DO WHILE * .AND. MF::INT <> 6 CONTINUE IF EOF STORE 6 TO MF::INT ENDIF ENDDO ENDIF IF EOF STORE ' ' TO MC::PS @ 22,0 @ 23,0 SAY ' ' DO WHILE MC::PS <> 'M' .AND. MC::PS <> 'P' @ 22,15 SAY 'FUNCTION COMPLETE' @ 23,5 SAY 'MAIN MENU = M, PROCESS = P ' GET MC::PS READ STORE !(MC::PS) TO MC::PS ENDDO IF MC::PS = 'P' STORE F TO CYC::ING ENDIF ENDIF DO CASE CASE MC::PS = 'M' STORE F TO DEL::ING , CYC::ING CASE MC::PS = 'C' STORE F TO CYC::ING ENDCASE ENDDO ENDDO IF PCK::ING STORE ' ' TO MC::PS DO WHILE MC::PS <> 'Y' .AND. MC::PS <> 'N' @ 22,0 @ 23,5 SAY 'IS FILE PACKING DESIRED (Y/N) ? ' GET MC::PS READ STORE !(MC::PS) TO MC::PS IF MC::PS = 'Y' @ 22,20 SAY 'PACKING FILE NOW ' PACK ENDIF ENDDO ENDIF RETURN