* BYMAIL.GET - GET PROGRAM STORE ' T ' TO MQ:SLCT STORE T TO MQ:GMORE STORE 'N' TO MQ:GDEL DO WHILE MQ:GMORE ERASE STORE ' GET ' TO MQ:MODE * DISPLAY CURRENT RECORD IF &MQ:SLCT DO BYMAIL.OUT ENDIF STORE ' ' TO MQ:CMD @ 21,10 SAY ' ENTER N FOR NEXT, P FOR PREVIOUS ' @ 22,10 SAY ' S FOR SEARCH, M FOR MORE COMMANDS ' IF MQ:SLCT <> ' T ' @ 23,4 SAY '**' ENDIF @ 23,10 SAY ' PRESS RETURN WHEN DONE ' GET MQ:CMD READ IF !(MQ:CMD)= 'S' STORE T TO MQ:SMORE DO WHILE MQ:SMORE ERASE STORE ' SEARCH ' TO MQ:MODE * GET FIELDS TO SEARCH FOR @ 02,007 SAY 'First Name:' @ 02,039 SAY 'Last Name:' STORE ' ' TO Mlast @ 02,051 GET Mlast @ 03,013 SAY 'Company Name:' STORE ' ' TO Mcompany @ 03,029 GET Mcompany @ 04,000 SAY '--------------------' @ 04,020 SAY '--------------------' @ 04,040 SAY '--------------------' @ 04,060 SAY '--------------------' @ 05,007 SAY 'Address:' @ 06,000 SAY '--------------------' @ 06,020 SAY '--------------------' @ 06,040 SAY '--------------------' @ 06,060 SAY '--------------------' @ 07,000 SAY 'City:' @ 07,044 SAY 'State:' @ 07,060 SAY 'Zip:' @ 08,000 SAY '--------------------' @ 08,020 SAY '--------------------' @ 08,040 SAY '--------------------' @ 08,060 SAY '--------------------' @ 09,011 SAY 'Home Phone:' @ 09,043 SAY 'Work Phone:' @ 10,000 SAY '--------------------' @ 10,020 SAY '--------------------' @ 10,040 SAY '--------------------' @ 10,060 SAY '--------------------' @ 11,000 SAY 'Comments:' @ 12,000 SAY '--------------------' @ 12,020 SAY '--------------------' @ 12,040 SAY '--------------------' @ 12,060 SAY '--------------------' @ 13,025 SAY '*** Please use all C' @ 13,045 SAY 'aps!!! ***' @ 21,10 SAY ' PLEASE ENTER VALUES TO SEARCH FOR ' IF MQ:SLCT <> ' T ' @ 23,4 SAY '**' ENDIF READ * EXIT FROM LOOP IF FOUND GOTO TOP STORE TRIM(Mlast+Mcompany) TO MQ:KEY IF MQ:SLCT= ' T ' FIND &MQ:KEY IF # <> 0 STORE F TO MQ:SMORE ELSE @ 22,10 SAY ' NOT FOUND ' @ 23,10 SAY ' TRY AGAIN(Y/N)? ' SET CONSOLE OFF WAIT TO MQ:DUMMY SET CONSOLE ON IF !(MQ:DUMMY) <> 'Y' STORE F TO MQ:SMORE ENDIF Y RELEASE MQ:DUMMY ENDIF # <> 0 ELSE LOCATE FOR last+Mcompany = Mlast+Mcompany .AND. &MQ:SLCT IF .NOT. EOF STORE F TO MQ:SMORE ELSE @ 22,10 SAY ' NOT FOUND ' @ 23,10 SAY ' TRY AGAIN(Y/N)? ' SET CONSOLE OFF WAIT TO MQ:DUMMY SET CONSOLE ON IF !(MQ:DUMMY) <> 'Y' STORE F TO MQ:SMORE ENDIF Y RELEASE MQ:DUMMY ENDIF EOF ENDIF MQ:SLCT=T ENDDO MQ:SMORE RELEASE MQ:SMORE RELEASE MQ:KEY ELSE IF !(MQ:CMD) = 'N' STORE T TO MQ:N DO WHILE MQ:N SKIP IF &MQ:SLCT STORE F TO MQ:N ENDIF IF EOF STORE F TO MQ:N STORE ' T ' TO MQ:SLCT @ 23,4 SAY ' ' ENDIF ENDDO RELEASE MQ:N ELSE IF !(MQ:CMD)= 'P' STORE ' T ' TO MQ:SLCT @ 23,4 SAY ' ' SKIP -1 ELSE IF !(MQ:CMD)= 'M' STORE T TO MQ:MMORE DO WHILE MQ:MMORE STORE ' MORE ' TO MQ:MODE STORE ' ' TO MQ:MMD @ 21,10 SAY ' ENTER E TO EDIT, D TO DELETE, ' @ 22,10 SAY ' P TO PRINT, C TO dSCAN ' IF MQ:SLCT <> ' T ' @ 23,4 SAY '**' ENDIF @ 23,10 SAY ' PRESS RETURN WHEN DONE ' GET MQ:MMD READ IF !(MQ:MMD) = 'E' ERASE IF MQ:SLCT <> ' T ' @ 23,4 SAY '**' ENDIF * EDIT RECORD DO BYMAIL.ED ELSE IF !(MQ:MMD)= 'D' STORE 'N' TO MQ:ANS IF MQ:SLCT <> ' T ' @ 23,4 SAY '**' ENDIF @ 23,10 SAY ' ARE YOU SURE(Y/N)? ' @ 23,28 GET MQ:ANS READ IF !(MQ:ANS)= 'Y' DELETE STORE 'Y' TO MQ:GDEL ENDIF RELEASE MQ:ANS ELSE IF !(MQ:MMD)= 'P' @ 23,10 SAY ' PLEASE SET UP PRINTER ' STORE ' ' TO MQ:MODE SET CONSOLE OFF WAIT SET CONSOLE ON SET FORMAT TO PRINT DO BYMAIL.OUT SET FORMAT TO SCREEN ELSE IF !(MQ:MMD)='C' GOTO TOP STORE ' ' TO MQ:SLCT @ 21,10 SAY 'PLEASE ENTER SELECTION CRITERIA ' @ 22,10 SAY ' DO NOT PRESS RETURN!!! ' @ 23,4 SAY '**' @ 23,10 GET MQ:SLCT READ LOCATE FOR &MQ:SLCT IF EOF @ 21,10 SAY 'NO MORE RECORDS CAN BE FOUND ' @ 22,10 SAY 'PLEASE PRESS RETURN TO CONTINUE ' @ 23,4 SAY ' ' STORE ' T ' TO MQ:SLCT SET CONSOLE OFF WAIT SET CONSOLE ON ELSE DO BYMAIL.OUT ENDIF ELSE STORE F TO MQ:MMORE ENDIF F ENDIF P ENDIF D ENDIF E ENDDO MQ:MMORE RELEASE MQ:MMORE,MQ:MMD ELSE STORE F TO MQ:GMORE ENDIF M ENDIF P ENDIF N ENDIF S ENDDO MQ:GMORE IF MQ:GDEL = 'Y' STORE 'N' TO MQ:ANS @ 23,10 SAY 'WANT TO PERMANENTLY DELETE RECORDS(Y/N)' @ 23,49 GET MQ:ANS READ IF MQ:ANS = 'Y' PACK ELSE RECALL ALL ENDIF RELEASE MQ:ANS ENDIF MQ:GDEL RELEASE MQ:CMD,MQ:GMORE,MQ:GDEL,MQ:SLCT RELEASE MQ:MODE