* DATE 03/10/85 15:02 * search.bk STOR t TO first STOR t TO more DO WHIL more STOR CHR(PEEK (063)) TO dr REST from bdata additive IF first ERAS STOR 'Search by itle, athor, ny part of data base or uit searching' TO prompt1 STOR 'ackward, orward, elete/Recall, dit, or

rint' TO prompt2 STOR 'Record Search Module' TO mode @ 0,26 SAY mode @ 1, 0 SAY " -------------------------------------------------" @ 1,50 SAY "----------------------------" @ 2, 4 SAY "Title:" @ 4, 1 SAY "Subtitle:" @ 6, 0 SAY "Authors 1:" @ 6,44 SAY "2:" @ 7, 8 SAY "3:" @ 7,41 SAY "Year:" @ 7,62 SAY "Price:" @ 9, 0 SAY "Publisher:" @ 10, 3 SAY "Street:" @ 11, 5 SAY "City:" @ 11,40 SAY "State:" @ 11,64 SAY "Zip:" @ 13, 0 SAY "Subject 1:" @ 13,44 SAY "2:" @ 14, 8 SAY "3:" @ 14,44 SAY "4:" @ 15, 8 SAY "5:" @ 16, 1 SAY "Comments:" @ 19,60 SAY "Updated:" @ 20, 0 SAY " -------------------------------------------------" @ 20,50 SAY "-----------------------------" ENDI STOR f TO first STOR '?' TO command STOR ' ' to name IF * STOR 'Deleted' TO deleted ELSE STOR ' ' TO deleted ENDI STOR # TO rec:number @ 0, 0 SAY deleted @ 2,11 SAY $(title,1,60) @ 3,11 SAY $(title,61,19) @ 4,11 SAY $(subtit,1,60) @ 5,11 SAY $(subtit,61,18) @ 6,11 SAY auth1 @ 6,47 SAY auth2 @ 7,11 SAY auth3 @ 7,47 SAY year @ 7,69 SAY price @ 9,11 SAY publish @ 10,11 SAY street @ 11,11 SAY city @ 11,47 SAY state @ 11,69 SAY zip @ 13,11 SAY subj1 @ 13,47 SAY subj2 @ 14,11 SAY subj3 @ 14,47 SAY subj4 @ 15,11 SAY subj5 @ 16,11 SAY $(comment,1,60) @ 17,11 SAY $(comment,61,60) @ 18,11 SAY $(comment,121,60) @ 19,11 SAY $(comment,181,47) @ 19,69 SAY dayu @ 21,00 @ 22,00 @ 21, 2 SAY prompt1 @ 22, 2 SAY prompt2 @ 22,64 SAY 'WHAT NEXT ?' @ 22,77 GET command picture '!' READ DO CASE CASE command = 'A' DO search1.bk CASE (command = 'B' .OR. command = ',') SKIP -1 CASE command = 'D' IF * RECA ELSE DELE ENDI CASE (command = 'F' .OR. command = '.') SKIP CASE command = 'E' DO edit.bk CASE command = 'P' DO print.bk CASE command = 'T' STOR # TO rec:number SET INDEX TO &dr.:&tindex @ 21,00 @ 22,00 @ 22,12 SAY 'Please enter title ' GET name READ STOR TRIM(name) TO name STOR !(name) TO name FIND &name IF # = 0 @ 21,00 @ 22,00 @ 21,12 SAY name+' is not in the file' @ 22,12 SAY 'Press RETURN to Continue' SET CONSOLE OFF WAIT SET CONSOLE ON GO rec:number @ 21,00 @ 22,00 ENDI CASE command = 'U' STOR # TO rec:number SET INDEX TO &dr.:&aindex @ 21,00 @ 22,00 @ 22,12 SAY 'Please enter author ' GET name READ STOR TRIM(name) TO name STOR !(name) TO name FIND &name IF # = 0 @ 21,00 @ 22,00 @ 21,12 SAY name+' is not in the file' @ 22,12 SAY 'Press RETURN to Continue' SET CONSOLE OFF WAIT SET CONSOLE ON GO rec:number @ 21,00 @ 22,00 ENDI CASE command = '?' ERAS STOR t TO first TEXT S E A R C H M E N U H E L P S C R E E N You can find information in a variety of ways using the various search functions. If you know the name of the first author - the author index will turn up the first instance of that name. If you know the start of the title, the title index will turn that up. Please remember, however, dBASE index files will find the first instance of the stated combination (in upper or lower case). Always enter as little as you can. Thus 'smi' will turn up 'SMITH' or 'SMITHERS' etc. (which ever comes first); 'smithe' will turn up 'SMITHERS.' If you put a title in as 'The Story of ' 'story' will turn up nothing. You would have to put in 'the sto.' You can use upper or lower case. All is not lost, however. If you are looking for a book by an author whose name begins with 'Smi' - use the ny part of data base option. It will turn up any string in any field - and then let you look at all files that contain the string - and select any one of those files. Please hit any key to return to the program ENDT SET CONSOLE OFF WAIT SET CONSOLE ON CASE command = 'Q' STOR f TO more ENDC ENDD SET INDEX TO &dr.:&tindex RELE ALL STOR t TO first