* SCSUMAIN.PRG V1.03 BY DEREK FOUNTAIN * Maintenance of suppliers file - Called by SCSTART.PRG CLS USE SCSUPP INDEX SCSUPP.NDX * Set up screen AT 0,25 SAY "SUPPLIERS DATA FILE MAINTENANCE" AT 2,2 SAY "SUPPLIER:" AT 3,2 SAY "CODE :" AT 4,2 SAY "CONTACT :" AT 5,2 SAY "PHONE :" AT 2,40 SAY "ADDRESS:" * Infinite loop, keep getting choices LET calling$="SCSU" DO WHILE 1=1 * Print up the current record AT 2,11 SAY " " AT 3,11 SAY " " AT 4,11 SAY " " AT 5,11 SAY " " AT 2,48 SAY " " AT 3,48 SAY " " AT 4,48 SAY " " AT 5,48 SAY " " AT 2,12 SAY 1:NAME$ AT 3,12 SAY 1:SUPP$ AT 4,12 SAY 1:CONTACT$ AT 5,12 SAY 1:PHONE$ AT 2,48 SAY 1:ADD1$ AT 3,48 SAY 1:ADD2$ AT 4,48 SAY 1:ADD3$ AT 5,48 SAY 1:ADD4$ IF DELETED()=1 AT 0,0 SAY "DELETED RECORD" AT 7,10 SAY "(N)ext,(B)ack,(F)ind,(R)ecall,(I)nput,(A)mend or (Q)uit >>>" ELSE AT 0,0 SAY " " AT 7,10 SAY "(N)ext,(B)ack,(F)ind,(D)elete,(I)nput,(A)mend or (Q)uit >>>" ENDIF * Get a valid choice LET choice$=" " DO WHILE choice$=" " AT 7,70 GET choice$ IF WHERE(UPPER(choice$),"NBFDRIAQ")=0 LET choice$=" " ENDIF ENDDO * Clear prompt form bottom line AT 7,10 SAY " " IF UPPER(choice$)="Q" * Option was to quit RELEASE calling$ RETURN ENDIF IF UPPER(choice$)="N" * Option was Next record DO SCSINEXT.PRG * This is the same routine as in ENDIF * the stock file maintenance IF UPPER(choice$)="B" * Choice was to move Back a record DO SCSIBACK.PRG * Ditto ENDIF IF UPPER(choice$)="I" * Choice was to input a new record DO SCSUINP.PRG ENDIF IF UPPER(choice$)="A" * Choice was to amend current record DO SCSUAM.PRG ENDIF IF UPPER(choice$)="F" * Choice was Find DO SCSUFIND.PRG ENDIF IF UPPER(choice$)="D" * Choice was delete DO SCSIDELE.PRG * Same routine as used in the stock ENDIF * item maintenance IF UPPER(choice$)="R" * Choice was recall DO SCSIRECA.PRG * Ditto ENDIF ENDDO