"KwikList" Relational Listmaking System is copyright (c) 1988 by Sam Bellotto Jr. However, this Demonstration Version may be duplicated, or distributed at will. It is my belief that, after trying the limited features available with this DEMO COPY, you will enjoy the program enough to want the full-fledged version, which is ONLY $12.00. Please read the following abbreviated instructions first. This, plus a little trial-and- error with the "Demo," should give you enough of a taste to want to buy the real thing. Thanks for downloading "KwikList" and I certainly hope it suits your needs. KWIKLIST -------- version 1.6 (c) 1988 by Sam Bellotto Jr. "KWIKLIST" IS A MENU-DRIVEN utility that adeptly compiles, maintains and organizes a variety of everyday listings. In addition to producing high-quality, professional printouts, the program offers: * a choice of output to either console, printer or disk * sorting that is "The,"An" and "A" exclusive * sorting on any field * comprehensive record editing, deleting & undeleting * multiple and individual search capability * compatibility with most word processors Only 23k, "KwikList" is the solution to a wide range of record- keeping problems for which more powerful database management systems would be overkill. It can be placed on a single disk, along with dozens of separate listings, and randomly access any or all of them. INVOKING "KWIKLIST." You run it like any COM file, with the added advantage of being able to call up any listing directly from the command line. The syntax [d:kwiklist d:filename] is optional. If employed, "KwikList" displays the MAIN MENU with the named listing loaded. Otherwise, you will initially be prompted for "Name of list?" Enter the name of any existing list that you have created with "KwikList." If this is your first use of the program, enter the name of a file you wish to create. Use the standard CP/M convention [d:filename]. "KwikList" doesn't require a file extension. All of its lists are given an extension of LST, and those are the only files that "KwikList" recognizes. In fact, if you inadvertently enter, for example, MYFILE.TXT or B:MEMBERS.DBF at "KwikList's" prompt (or in the command line), the program disregards the incorrect extension and either opens or creates MYFILE.LST or B:MEMBERS.LST. Note: if "KwikList" is unable to locate a list, a new one is created. "KwikList" utilizes the top line of the computer screen as its Status Line. Information always available on this line includes the particular menu selection in current use, the name of the list being accessed and, depending upon which program mode is functioning, record count, printer/console/disk output assignment, or help prompts. This is what the screen looks like in the Main Menu: Get List ^Delete Input ^Undelete Edit ^Change Sort ^Labels Output ^ASCII Quit ? The question mark is "KwikList's" prompt. Enter an initial letter to select an option. To Get a List (either another existing list or create a new one), enter "G" or "L" at the prompt. Similarly, to Quit, enter a "Q" or a carriage return. Incidentally, throughout "KwikList," a (carriage return) reply always signifies the default answer. CREATE To create a new listing, simply enter a name for the file in the command line or in response to the "Name of List?" startup prompt. Again, no extension is required. But if you provide one that is not LST, the program will change it. "KwikList" displays "New list ...." to inform you that it is creating a list and displays the filename on the Status Line along with an indication that you are in CREATE mode. Now select the parameters for the list, the structure of which will be written to a disk file. Enter "Field 1 heading?", "Field 1 length?","Field 2 heading?" ... and so on, until you have established all the fields for a typical record, or a maximum 79 character line, whichever comes first. "KwikList's" largest record length is 79 bytes, which should be more than adequate for ordinary listings. Individual fields within a record can vary, so long as the aggregate length of all fields does not exceed 79. "KwikList" helps keep track of the number of characters used by echoing the tally, field after field, to the Status Line. The program "builds-in" one character of space to separate each field column: you needn't do this. Furthermore, the program won't accept a field length if it brings the total above the 79 character limit. (Note: field headings should be no longer than their respective field lengths. "KwikList" truncates any field heading which exceeds the established size for its field.) NOTE: The maximum number of fields per record has been fixed at 9. It is not recommended that this limitation be exceeded. Creating lists with more than 9 fields will likely cause the program to crash. Considering that dBaseII only allows 32 fields per record, 9 fields ought to be more than adequate for ordinary "KwikList" purposes! When the character total reaches 78 or 79 "KwikList" signals this with "max len!" in the Status Line and exits CREATE. Otherwise, quit CREATE by entering a at any "field heading" prompt. ("KwikList" auto exits from CREATE at 78 as well as 79 chars because of the extra space byte the program appends to each field. This makes the minimum field size, in actuality, two characters long.) HOW TO ABORT FROM CREATE: Should an unintentional "Name of list?" response take you into CREATE mode, or you decide after the fact that you really don't want to create a new list, a at the VERY FIRST "Field heading?" prompt will return you to "Name of list?" without opening a new listing. A second carriage return will Warm Boot out of "KwikList" altogether. After establishing the field heads and sizes for a new listing, and hitting to quit (or reaching the maximum character length), "KwikList" inquires "Input data now?" Answer 'Y' and "KwikList" switches to INPUT mode. A or any other key signifies "no" and the program defaults to the Main Menu. (Your newly created file remains quite safe on disk, only empty.) "KwikList" does not provide a CREATE mode option in the Main Menu per se. The function is accomplished as previously explained: (1) selecting Get List from the menu and, at the "Name of list?" prompt, entering the name of the list to be created; or (2) placing the name of the list to be created in the d:KWIKLIST command line. INPUT. Entering data is simple with "KwikList." For each new record, all of the field headings are individually prompted on- screen. Again, the program rejects any input larger than the established field length. To exit INPUT, hit a carriage return at any field heading prompt. The incompleted record won't be included in the listing. Note that while inputting data, "KwikList" keeps updating the number of records in the list. The count appears in the upper right side of the Status Line. Before writing any new record to the file, "KwikList" asks OK? in the Status Line. ANY KEY except 'N' or 'n' writes the record to the file and the count is incremented by one. A response of 'N' or 'n' clears the entered record and you can start all over again. EDIT Complete editing of records either singly or throughout an entire list is possible with "KwikList." In EDIT mode, the program asks "Search for?" Enter a unique character string. The program responds "Searching ... " while it looks for a match to the string. Systematically, you will be prompted with each field by heading and current entry in the located record and asked "Change?" To change, type in a new entry. Otherwise, a is interpreted as no change; "KwikList" verifies this by echoing the unchanged entry. Following display of the last field in each record located, you will be asked to "Delete?" If you want the entire record removed from the list, a "Y" answer (plus a carriage return to make accidental erasures more difficult) deletes that record. Hitting a carriage return (or any key other than "Y") only implies "no" and the record, with any alterations, if made, is returned to the list. The program displays "Still searching ..." while it looks for other occurrences of the search string. If no other matches are found, the program informs you and loops to "Search for?" Continue editing or exit EDIT mode with a . If no records contain the search string entered, "KwikList" responds with "No records contain [search string]" and pauses briefly before returning to the Main Menu. SORT. "KwikList's" sort routine is one of the most powerful implementations of the program. A listing may be sorted on any field. Upon invoking the SORT mode from the Main Menu, you are prompted "Sorted file name?" Enter [d:filename] which will become the sorted file. The original file is never altered. You are then asked "Sort on?" Reply with the appropriate field heading. You do not have to enter the entire field heading -- enough of the first few letters to make a unique character string will suffice. However, they must be the first few letters or the sort may have unexpected results! (E.g., to sort on the field COMPANY NAME, the string COMPANY, COMP or even CO may do the trick.) Furthermore, be certain there is enough space on disk for both the original list and the sorted file. When sorting on the first field, "KwikList" employs an algorithm which is "blind" to initial "The," "An" or "A" articles. This makes "KwikList" ideal for cataloging books, films, records, etc. For example, one can enter "The Maltese Falcon," verbatim, without having to corrupt the title to "Maltese Falcon, The." NOTE: This Demonstration Version of "KwikList" has been purposely limited to sort a maximum of 75 records! The Official version of "KwikList" can sort up to 323 records within 15 seconds. (And the 323 record limitation is ONLY because of CP/M's 64k memory capacity. For speed, "KwikList" sorts entirely in RAM.) OUTPUT "KwikList" provides three channels to which listings, either totally or selectively, can be output: to the printer, to the console, or to a disk file. In OUTPUT mode, "KwikList" initially prompts "Listing of?" for a particular scope. As in EDIT mode, enter an unambiguous search string common only to the records you want. This string can be in any field or fields. For a complete listing of all records, enter a (default for "all.") "KwikList" next asks "To printer/console/disk?" Reply 'P' or 'p' to printout, 'D' or 'd' to print to disk, or 'C','c' or the default for on screen display. SOME OTHER FUNCTIONS. The complete "KwikList" program offers other menu selections. ^Delete allows multiple deletion of records based upon a common character string. ^Undelete can "undelete" all previously deleted records, or selected records based upon a common character string. ^Change lets you alter listings: that is, reposition various fields, shorten fields, lengthen fields, delete fields, add fields, etc. ^ASCII is an extremely useful feature: with it, "foreign" listings can be quickly converted into LST files which the "KwikList" program can utilize. THESE FEATURES ARE PURPOSELY INACCESSIBLE VIA THIS DEMONSTRATION VERSION OF "KWIKLIST." Please try "KwikList." If you like it, you can do two things: (1) send me a self-addressed, stamped envelope and I will send you exhaustive information about "KwikList"; or, (2) send me $12.00 and I will send you a registered copy of the complete "KwikList" program, the FULL 20-page, single-spaced documentation booklet, and other goodies. Sam Bellotto Jr. 45 Rowley Street Rochester, NY 14607 (716) 461-1008