home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
database
/
dbs113.zip
/
DBS.DOC
next >
Wrap
Text File
|
1988-11-01
|
12KB
|
223 lines
The dBStructure Utility
A dBase Directory/Structure Utility
Copyright (c) David Jaquay 1988
911 Deedra Avenue
Pensacola, FL 32514-1519
(904) 477-1317
The dBStructure Utility was written by David Jaquay for the
IBM PC using DOS 2.x or later. It has been made available
for personal, private use. You may freely distribute this
software with the following restrictions:
a) The program shall be distributed ONLY in the
ORIGINAL unmodified form, including this
documentation.
b) NO FEE may be charged.
c) FOR-PROFIT use without a License is PROHIBITED.
d) The program may NOT be INCLUDED or BUNDLED or
otherwise sold with with other goods or services.
Exceptions may be granted ONLY upon written request.
e) Commercial users MUST register. Site License is
available, call.
This is USER SUPPORTED SOFTWARE. If you use it, and find it
of value, please register your copy by sending $20.00
($35.00 Commercial) along with the filled out registration
form, to the author at the above address. Make checks
payable to David Jaquay. Registration applies to all future
versions.
I would like to thank Mark Starkweather and Gregory Besch
their suggestions, and their assistance in beta testing.
DBS - Page 2
DBS with no arguments will show a directory of the database
files in the current directory with a DBF extension. This
directory closely resembles the directory you receive when
you execute a DIR or LIST FILES command in dBASE III or
dBASE III+. This listing includes the name of the file, the
number of records in the file, the date of last update and
the size of the file. When you provide a filename as an
argument, the structure of that file will be displayed as if
you executed a DISPLAY STRUCTURE or LIST STRUCTURE in dBASE
III/III+. If the file extension is omitted, it will default
to ".DBF".
Arguments may also be used on the command line. These may
be preceded with a "/" or a "-". If filenames are given,
and a "-D" is included, the filenames will be displayed in
directory form, rather than structure form.
The "-F" parameter, when followed by either "C", "N", "D",
"L", or "M", only those fields with data types represented
by these characters will be displayed in the structure
listing. (If the "-D" option is provided, the "-F" option
will be ignored.)
The "-H" parameter will display a help screen, listing the
following text:
Syntax:
DBS [-D][-F[CNDLM]][-H] [filespec1 [filespec2 [...]]]
-D : prints directory using filespec, rather than structure.
-F{[CNDLM]} : specifies which field types to include when printing
structures. Valid types are [C]haracter, [N]umeric,
[D]ate, [L]ogical and [M]emo, and may be given in any
order or combination.
-H : displays syntax (this display).
If no extension is given, it defaults to .DBF
Version Date Changes
------- ---- -------
1.00 08/21/87 Initial Release. Prints structure of specified
dBASE III/III+ file to stdout. If filename is not
specified, the program name, author and version
number are displayed, syntax is given, and control
is returned to the calling program, (usually
COMMAND.COM).
1.01 08/27/87 Bug Fix. Added Unsigned Char type cast to the
calculations for reccount in read_struct() to
access the byte value.
Enhancement. If .DBF extension is not included,
program adds it automatically.
1.02 09/08/87 Bug Fix. DOS redirection caused parts of the
output to be placed in odd parts of the file. The
cause of this was using putch(), (which outputs to
the console), rather than putchar(), (which outputs
to stdout).
Bug Fix. Now handles record counts in excess of 32k.
1.03 09/14/87 Enhancement. When user omits filename on command
line, dBS prints dBASEIII-like directory instead
of error message. User must still enter correct
filename if any parameter is given on the command
line.
1.04 09/23/87 Enhancement. Accepts more than one filename as a
parameter from the command line. Each parameter is
treated as a separate execution of the program.
Enhancement. Accepts wildcards, as long as they
are not in the path, ie. \DBASE\*.DBF is accepted,
but \DBASE\*\*.DBF is not. (This is mentioned in
hopes that it will be a future enhancement. Not
Real Soon Now, but long term.)
1.05 10/16/87 Bug Fix. Corrected problems concerning searching
for and opening files along a user-specified
path. Problem was related to the fact that the
path supplied to findfirst() was not returned
in the structure and therefore must be added to
the name in c_file.name before calling open().
10/24/87 Bug Fix. Corrected problem printing filelengths
in excess of 64k. Involved using %ld format in
printf(), rather than %d.
Enhancement. Expands all wildcards and sorts
by filename first, then prints the structures
specified. "File Not Found" messages are thus
printed at program startup, and not mixed in
with the structures as they are being printed.
1.06 11/22/87 Enhancement. Added -D option to allow user to
supply filespecs on the command line, but list
files in directory format rather than structure
format. Files will also be listed in alphabetical
order, whether a filespec is specified or DBS
is called without options.
11/24/87 Enhancement. Added -F option to allow user to
view only those data types desired. Option is
entered as -F{types} where {types} specifies
in any order and either case the data types
desired, from the allowable "CNDLM". If no
fields of the specified types are found, just
the header will be displayed.
12/11/87 Enhancement. Checked first byte of file for
validity of dBASE III file. First byte must be
0x03 or 0x83, (for w/o & with memo file, resp.)
1.07 01/30/88 Bug Fix. Now opens files as binary under
read_dir(). Problems were being caused while
computing the record count with certain files.
1.08 02/05/88 Bug Fix. Now can be used to access the current
directory on other drives without entering full
path to that dir, just by entering [d:]fname[.dbf]
on command line.
1.09 02/09/88 Enhancement. Program flow changed drastically to
allow all structures to be read into memory before
printing commences. This will allow it to be drawn
into a window and scrolled, (V2.00).
1.10 02/21/88 Bug Fix. Corrected error involving executing DBS on
a .DBF in the root directory with the root as a
default. DBS was attempting to open a file called
d:\\filename.DBF, which was in error.
1.11 04/12/88 Bug Fix. Corrected error caused by program change
1.91. DBS was attempting to open an invalid file:
d:pathnamefilename.ext. This was a reversal of the
problem fixed in 1.91. Program now works in both
the root and subdirectories (we hope).
Enhancement, (Kinda.) Changed to Large model.
1.12 04/19/88 Enhancement. Split DBS.C into DBS.C, DBSTREE.C and
DBSPRINT.C, and trimmed inclusions accordingly.
Enhancement. Added more error checking to
get_struct(). Out of memory errors are curently
resulting in an error message and program ending.
Future versions, presumably 2.00 and higher, will
result in the structure not being read in but the
program will be allowed to continue.
05/01/88 Enhancement. Included '/' as allowable option
character, i.e., '-D' and '/D' function the same.
Enhancement. Added -H option to display syntax
assistance.
1.13 10/14/88 Enhancement. Conversion to MicroSoft C 5.1.
REGISTRATION FORM
The dBStructure Utility
A dBase Directory/Structure Utility
Copyright (c) David Jaquay 1988
911 Deedra Avenue
Pensacola, FL 32514-1519
(904) 477-1317
Version 1.13
November 1, 1988
USER NAME: ________________________________ DATE: ________
ADDRESS: ________________________________
CITY, ST: __________________________ ___ ZIP: _________
Check One: [ ] For Personal Non-Profit Use Only ($20.00)
[ ] For Commercial USE License Only ($35.00).
Signature: ____________________________
I ([ ] DO) / ([ ] DO NOT) wish to receive notices concerning
enhancements and bug fixes or announcements of other similar
programs. Please include name and number of most currently
visited Bulletin Board if you do wish to receive notices.
COMMENTS/SUGGESTIONS: ______________________________________
_____________________________________________________________
_____________________________________________________________