home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
database
/
lisst20.zip
/
LISST.DOC
next >
Wrap
Text File
|
1989-02-10
|
24KB
|
453 lines
LiSST
---------
version 2.0 (c) 1989 by Sam Bellotto Jr.
"LiSST" IS A MENU-DRIVEN utility that adeptly compiles,
maintains and organizes a variety of everyday listings. In
addition, 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 and undeleting.
* multiple and individual search capability
* compatibility with most word processors
Only 33k, "LiSST" 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 "LiSST:" You run it like any EXE file, with the
added advantage of being able to call up any listing directly
from the command line. The syntax d:LiSST d:filename is
optional. If employed, "LiSST" 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 or, enter the name of a file you wish to create. Use the
standard DOS convention d:filename. "LiSST" doesn't
require a file extension. All of its lists are given an
extension of LST, and those are the only files that "LiSST"
recognizes. In fact, if you inadvertently enter, for example,
MYFILE.TXT or B:MEMBERS.DBF at "LiSST'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 "LiSST" is unable to locate a list, a new one is created.
"LiSST" 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 operational prompts.
This is what the screen looks like at the Main Menu:
LiSST Relational Listmaker [B:MYFILMS.LST] #0000 vers 2.0
Get List F1-Delete F6-Copy List
Input F2-Undelete F7-Rename List
Edit F3-Change F8-Erase List
Sort F4-Labels F9-List Lists
Output F5-ASCII F10-Quit
Select?
Menu selections on the left are considered ordinary functions.
Choose them by entering the initial letter (upper or lower
case). Menu selections in the center are special features and
can be called by striking the function key shown. (In
other words, entering F4 runs the "Labels" option. Menu
selections on the right are DOS functions, also initiated with
function keys.
The question mark is "LiSST's" prompt. Enter an initial
letter or function key 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 F10.
CREATE: To create a new listing, simply enter a name for the
new 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.
"LiSST" displays "New list ...." to inform you that it is
creating a list and displays the new filename in 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. "LiSST'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.
"LiSST" 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, otherwise "LiSST" truncates
any field heading to fit the established size for its field.)
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.
When the character total reaches 78 or 79 "LiSST" signals
this with "max len!" in the Status Line and halts CREATE.
Otherwise, when all field headings and sizes have been entered,
you can halt CREATE simply by hitting <enter> at the next
"field heading" prompt. ("LiSST" halts 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,
<enter> at the VERY FIRST Field heading? prompt will return you to
"Name of list?" without opening a new listing. A second
<enter> will boot out of "LiSST" altogether.
After establishing the field heads and sizes for a new listing,
and hitting <enter> to quit (or reaching the maximum character
length), "LiSST" inquires "Input data now?" Answer 'Y' and
"LiSST" switches to INPUT mode. Typing <enter> or any other key
signifies "no" and the program returns to the Main Menu. (Your
newly created file remains quite safe on disk, only empty.)
"LiSST" 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:LiSST command line.
INPUT: Entering data is simple with "LiSST." Select "I" or
"i" from the Main Menu. 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. After data has been entered for each field in a single
record, the program prompts "OK?" in the Status Line. A
response of any key other than "N" or "n" writes the completed
record to the file, updates the record count, and proceeds to
the next record. A response of "N" or "n" clears the data from
the screen, does not write the record to the file, and permits
you to re-enter data for that record. [This procedure can be
undertaken ad infinitum until you are satisfied with the
particular record.]
To exit INPUT, hit <enter> at any field
heading prompt. The incompleted record won't be included in the
listing.
Note that while inputting data, "LiSST" keeps updating the
number of records in the list. The count appears in the upper
right side of the Status Line. "LiSST" first tallies the
number of records already in the list (whether or not they have
been deleted) to the Status Line before it accepts additional
entries.
MAKING EMPTY FIELDS: Oftentimes is is desirable to
intentionally leave a field or a field heading blank. You may
want to do this in CREATE mode, or in INPUT mode when you don't
have any information available for a specific field. But
entering <enter> in CREATE mode forces termination of the setup
process. Similarly, an <enter> response in INPUT halts data entry.
To get around this, many "LiSST" owners have been using
symbols such as "--" or "n/a" as place holders. But this is not
necessary! Merely enter one or two spaces with the space bar,
followed by <enter>, to produce completely empty fields.
NOTE: If this technique is used in CREATE mode to make a blank
field heading, during INPUT mode the field will be prompted as
" : ". Also be aware that the standard ASCII sort order places
the "space" (20 hex) first.
EDIT: Complete editing of records either singly or throughout
an entire list is possible with "LiSST." 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,
<enter> is interpreted as no change; "LiSST" 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 <enter> (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 <enter>.
The EDIT feature also makes it a snap to do multiple record
corrections. At the "Search for?" prompt, enter a character
string common to all the records you wish to change and
"LiSST" will present each record right down the line. In
fact, to edit every record in the list, enter <space><enter> at the
"Search for?" prompt. (This latter technique could take a very
long time with a large listing, however.)
If no records contain the search string entered, "LiSST"
responds with "No records contain [search string]" and pauses
briefly before returning to the Main Menu.
SORT: "LiSST'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
first prompted for "Sorted file name? " Input d:filename. The
LST extension is unnecessary. 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.)
Your original list remains on disk; it is never sorted. This
allows the user to create a variety of sorts from the "master"
list. Please note that each time a list is sorted, however, a
new LST file is created.
When sorting on the first field, "LiSST" employs an
algorithm which is "blind" to initial "The," "An" or "A"
articles. This makes "LiSST" 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." "LiSST" sorts all titles beginning
with "The," "An" and "A" at optimum speed and accuracy,
provided the first field is the title field. (Most listings of
this kind place the title in the first field, anyway.)
"LiSST" incorporates a sort method based upon the well-known
Shell Sort, proven to be the fastest routine for lists that are
already largely in alphabetical order. Most listings, after
all, require significant sorting only once, as re-sorts involve
less than 25 percent new entries.
"LiSST" will not initiate a sort if it cannot locate the
"Sort on?" input string within any field heading. "LiSST"
sorts entirely in RAM memory. This makes the routine extremely
fast. However, a listing that is larger than the TPA (transient
program area), aborts. But it is anticipated that most lists
won't overflow the 640k DOS limitation (and LiSSt itself
occupies less than 35k of RAM). In the event a list does
exceed RAM, "LiSST" exits from the sort routine and
indicates that the list is "too large for available memory,"
displaying the record count of the list. [Any listing that is
too large for "LiSST" to sort should probably be handled
with a more powerful DBMS, like dBase, anyway.]
PLEASE NOTE THAT THIS CONSTRAINT APPLIES ONLY TO "LiSST's"
RAM-RESIDENT SORT ROUTINE. Files can be as large as available
disk space allows, and be edited, searched and output with no
difficulty whatsoever.
OUTPUT: "LiSST" 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, "LiSST"
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, type <enter>
(default for "all.")
"LiSST" next asks "To printer/disk/console?" Reply "P" or
"p" if you want a printed listing, "D" or "d" to output to a
disk file, or "C," "c" or <enter> for output to screen.
Before printing, you are asked to supply a "Heading of list?"
Lists are printed approximately 51 lines per page, with page
numbers, margins, and a heading (if given). Field headings for
each column are automatically printed; the heading option
allows a more general title such as "My Videotape Collection"
or "Current Club Members." If no general heading is desired,
<enter> defaults to no heading. Finally, "LiSST" asks "Pause
between pages?" This facilitates printing to single sheets or
printing on both sides of the paper. Answer "Y" to pause, <enter>
or any other key to print normally on fanfold paper.
If you selected to output to disk, "LiSST" asks "Disk file
name?" Enter d:filename.ext. Output is directed to that disk
file. Simultaneously, output is echoed to the screen, allowing
the user to see exactly what is being ported to the disk file.
There are a lot of advantages to disk output. For one, the
resulting disk file can be incorporated into any word
processing document. The following, sorted by year:
FILM TITLE DIRECTOR YEAR
The Man Who Knew Too Much Hitchcock 1934
The Secret Agent Hitchcock 1936
Rebecca Hitchcock 1940
Suspicion Hitchcock 1941
Lifeboat Hitchcock 1944
Spellbound Hitchcock 1945
Rope Hitchcock 1948
Stage Fright Hitchcock 1950
Strangers on a Train Hitchcock 1951
Psycho Hitchcock 1960
was output from a much larger listing, to disk, and pulled into
this document with WordStar's ^KR command. (Output to disk in
conjunction with "LiSST's" ^ASCII menu option is one way to
produce sub-listings sorted on multiple fields.)
If you replied with "C," "c" or <enter> (indicating output to
screen) "LiSST" defaults to console output.
During output to both disk and console, "LiSST" sends about
21 lines to the screen, pauses and prompts "More?" Striking any
key except <end> scrolls another 21 lines, and so on,
until "[end of list]" is displayed. At any time, output may be
aborted by striking thσ <end> key at the "More?" prompt. Further
records will not be output to either screen or disk file and
the program will return to the Main Menu.
Incidentally, should you enter an output scope character string
that "LiSST" is unable to locate, or if the particular list
is empty (which can happen), you will be notified!
LIMITATIONS AND CONSTRAINTS
number of fields per record .......................... 9
number of characters per record ..................... 79
number of records per list ................... unlimited
number of records sorted ................. RAM dependent
COMMAND SUMMARY FOR ORDINARY OPTIONS
Startup: d:LiSST
"Name of list?" d:LISTNAME
or
d:LiSST d:LISTNAME
Create: "Field [1-8] heading?" string
"Field [1-8] length?" integer
<enter> at any "Field heading?" prompt to quit or
until max char length equals 78 or 79.
Input: "[Field head]:" string
repeats for each field head in record, for each new
record.
"OK?" Y/N
<enter> at any prompt to quit. Incompleted
record is not written to disk.
Edit: "Search for?" search string
<enter> to quit
"[Field head: Entry]"
"Change?" new entry, or <enter>
repeats for each field in record, for each record
matching search string.
"Delete?" Y or <enter>
repeats until end of list
Sort: "Sorted file name?" d:filename
"Sort on?" field head start string
aborts sort routine if list too large for RAM
Output: "Listing of?" search string, <enter> for all
"To printer/disk/console?"
if P or p
"Heading of list?" optional title or <enter>
"Pause between pages?" Y or <enter>
if D or d
"Disk file name?" d:filename.ext
creates ascii file
"More?" Y or <end>
if C, c or <enter>
defaults to console, screen-by-screen output
"More?" Y or <end>
Quit: F10
USING KWIKLISTS WITH TEXT EDITORS Lists produced with
"LiSST" are binary; however, output to disk from the Main
Menu creates ASCII text files which can be accessed with
virtually any word processor in non-document mode. Because of
this, it is often easier to undertake heavy LST file editing
tasks with WordStar or Word Perfect than with "LiSST's"
EDIT option. Most word processors' find & replace, tab and
macro features make editing very long lists quite uncomplicated
and fast. To edit a "LiSST" file with a word processor, keep
in mind the following:
(1) Work with the ASCII disk file output via "LiSST's"
OUTPUT mode "D" selection only.
(2) Use only non-document mode.
(3) Do not add to or subtract from the total length of any
field in any record.
If you've used the "Change" option to add new field(s): enter
data in the new field(s) for two or three records with
"LiSST" first. This way, you will have a "guide" in place if
you then wish to use a word processor as described in the above
method to complete entering data into the new field(s) for the
rest of the list.
MULTIPLE LINE LISTINGS It is possible to get multiple line
listings per record with "LiSST." Simply establish one field
(on which the full list will be sorted) for a common "key."
Then, for however many lines you'd like a record to occupy,
give them the same "key" in that field. There are obvious
limitations to this technique, but it does work. For example:
Bailey, George 320 Sycamore Bedford Falls 17
" " Epson Equity bank officer 17
Smith, Winston London England 18
" " Kaypro 286i historian 18
and so forth. Get the idea?
SORTING ON MORE THAN ONE FIELD This is possible; there is some
doubt as to whether it is practical. Let's assume you have a
large listing of movies that you would like sorted
alphabetically, but also by category (e.g., comedy, drama,
adventure, sci-fi, documentary). First run a general sort by
title for alphabetical order. With "LiSST" outputting To
disk, create a text file for each category. Join all the text
files together with a text editor, eliminating extra spaces and
the column headings. Use the "ASCII" option to convert the
combined text files into a new LST file. And there you have it.
The list is now sorted by category and in alphabetical order.
AND THERE'S MORE: This should be enough explanation to get
you going with the ordinary functions of 'LiSST.' I have
deliberately left out any reference to the Special Functions
or the DOS functions. You may well be able to figure those
out with no documentation at all. Good for you! But whether
or not you want additional documentation, if 'LiSST' appeals
to you, a suggested registration fee of a mere $25 will
bring you your own pristine copy of LiSST, and a real nice
instruction manual covering ALL of 'LiSST's' features and
uses. PLUS, if you act now, you will be entitled to one free
upgrade!
The 'LiSST' Relational Listmaker System is shareware, and is
copyright (c) 1989 by Sam Bellotto Jr. If you like it, send
$25 to
Sam Bellotto Jr.
45 Rowley Street
Rochester, NY 14607
(716) 461-1008
***********************************************