home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 9
/
MEDIASHARE_09.ISO
/
pcboard
/
udbsv530.zip
/
UDBS.DOC
< prev
next >
Wrap
Text File
|
1990-08-29
|
118KB
|
2,751 lines
The User Database System
Version 5.3
August 1990
For PCBoard 14.5 and Prior
Operators Guide
Copyright (C) Jeff Sumberg, 1987 - 1990
Table Of Contents
The User Database System . . . . . . . . . . . . . . . . . . . . 5
User Supported Software License . . . . . . . . . . . . . . . . . 5
Copying and Distribution . . . . . . . . . . . . . . . . . . . . 6
Distribution Contents . . . . . . . . . . . . . . . . . . . . . . 6
System Requirements . . . . . . . . . . . . . . . . . . . . . . . 7
Operational Restrictions . . . . . . . . . . . . . . . . . . . . 8
Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . 9
INPUT= . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
OUTPUT= . . . . . . . . . . . . . . . . . . . . . . . . . . 9
UPDATE=YES . . . . . . . . . . . . . . . . . . . . . . . . . 9
USEACTBACKUP=NO . . . . . . . . . . . . . . . . . . . . . . 11
PURIFYBACKUP=NO . . . . . . . . . . . . . . . . . . . . . . 11
FILES= . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
NEW=YES . . . . . . . . . . . . . . . . . . . . . . . . . . 11
USERS= . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
PCBNDX= . . . . . . . . . . . . . . . . . . . . . . . . . . 12
NEWADDITIONS=NO . . . . . . . . . . . . . . . . . . . . . . 12
BULLETINx= . . . . . . . . . . . . . . . . . . . . . . . . . 13
VERSION= . . . . . . . . . . . . . . . . . . . . . . . . . . 13
SINGLENODE . . . . . . . . . . . . . . . . . . . . . . . . . 14
OVERLAPCHECK=NO . . . . . . . . . . . . . . . . . . . . . . 15
LOG= . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
EVENT . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
REPORT= . . . . . . . . . . . . . . . . . . . . . . . . . . 16
COLOR=NO . . . . . . . . . . . . . . . . . . . . . . . . . . 16
DOS PATH . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Text and Language Configuration . . . . . . . . . . . . . . . . . 17
Languages= . . . . . . . . . . . . . . . . . . . . . . . . . 17
LanguageX= . . . . . . . . . . . . . . . . . . . . . . . . . 17
Language File Format . . . . . . . . . . . . . . . . . . . . 18
Text Matching Rules . . . . . . . . . . . . . . . . . . . . 19
Program Operation - Useact . . . . . . . . . . . . . . . . . . . 21
Storage Available . . . . . . . . . . . . . . . . . . . . . 21
Running Useact In Event.Sys . . . . . . . . . . . . . . . . 21
Error Handling In Useact . . . . . . . . . . . . . . . . . . 21
Useact's Command line mode . . . . . . . . . . . . . . . . . 21
Program Operation - Query . . . . . . . . . . . . . . . . . . . . 23
User Statistics . . . . . . . . . . . . . . . . . . . . . . 23
Users Who Never Download . . . . . . . . . . . . . . . . . . 23
Users Who Never Upload . . . . . . . . . . . . . . . . . . . 23
File Transfers During a Specific Period . . . . . . . . . . 24
UDBS Version 5.3 Page 2
Users With Keyboard Timeout Disconnects . . . . . . . . . . 24
Users Disconnected For Daily Time Limit . . . . . . . . . . 24
Users That Downloaded A Specific File . . . . . . . . . . . 24
Who Uploaded A Specific File . . . . . . . . . . . . . . . . 24
All Files Downloaded By A Specific User . . . . . . . . . . 24
All Files Uploaded By A Specific User . . . . . . . . . . . 25
Display Period Totals . . . . . . . . . . . . . . . . . . . 25
Users Exceeding DL/UL Ratio . . . . . . . . . . . . . . . . 25
Users That Never Left A Message . . . . . . . . . . . . . . 25
Doors and Node Chat . . . . . . . . . . . . . . . . . . . . 25
Users With Security Violations . . . . . . . . . . . . . . . 26
Baud Rates and Protocols . . . . . . . . . . . . . . . . . . 27
Users That Page Sysop . . . . . . . . . . . . . . . . . . . 27
Show New Users On Specified Date . . . . . . . . . . . . . . 27
Scan For User Name . . . . . . . . . . . . . . . . . . . . . 27
Generate Reports . . . . . . . . . . . . . . . . . . . . . . 27
File Maintenance Functions . . . . . . . . . . . . . . . . . . . 28
Delete User . . . . . . . . . . . . . . . . . . . . . . . . 28
Delete If Not In User File . . . . . . . . . . . . . . . . . 28
Purify Files . . . . . . . . . . . . . . . . . . . . . . . . 28
Undelete User . . . . . . . . . . . . . . . . . . . . . . . 29
Add Download Credit . . . . . . . . . . . . . . . . . . . . 30
Add Upload Credit . . . . . . . . . . . . . . . . . . . . . 30
Delete Download Credit . . . . . . . . . . . . . . . . . . . 30
Delete Upload Credit . . . . . . . . . . . . . . . . . . . . 30
Database Size Information . . . . . . . . . . . . . . . . . 30
Change User Name . . . . . . . . . . . . . . . . . . . . . . 30
Subscriptions . . . . . . . . . . . . . . . . . . . . . . . 31
Comments . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Rebuild Index Files . . . . . . . . . . . . . . . . . . . . 32
Reset Bulletin Flag . . . . . . . . . . . . . . . . . . . . 32
Merge Two Data Records . . . . . . . . . . . . . . . . . . . 33
Problems & Support . . . . . . . . . . . . . . . . . . . . . . . 34
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 34
Disclaimer/Warranty . . . . . . . . . . . . . . . . . . . . . . . 35
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Appendix A - Getting Your Database Started . . . . . . . . . . . 36
Appendix B - Common Problems . . . . . . . . . . . . . . . . . . 37
Appendix C - The Sync Utility . . . . . . . . . . . . . . . . . . 39
Appendix D - The NewCalls Utility Program . . . . . . . . . . . . 40
Appendix E - Conversion From Version 4 to Version 5 . . . . . . . 43
UDBS Version 5.3 Page 3
Appendix F - What Registered Users Get . . . . . . . . . . . . . 44
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
UDBS Version 5.3 Page 4
The User Database System
This collection of programs will enable you, the Sysop, to better
manage and monitor the activity of your users. The User Database
System brings together a call analyzer, a database, and a menu driven
query system that puts important user information at your disposal.
Immediately. All information on users is obtained from the CALLER file
generated by PCBoard. The major difference between the User Database
System and a standard call analyzer is that the User Database System
generates statistics on an individual user basis.
Some of the operations and features of the User Database System in-
clude:
* View a users statistics
* View all files downloaded (or uploaded) by a user
* View all users that downloaded a specific file
* Find users exceeding UL/DL ratios
* Generate reports for posting in bulletins
* Fully text configurable and language independent
* Door programs and utilities for registered users
* Product support on the INTERLINK Mail Network
* And much more
User Supported Software License
The User Database System is not public domain, and it is not free
software, it is user supported. Non-registered users are given a
reasonable period of time to try the programs out and determine if
they meets their needs, after this period you must register your copy
or discontinue its use. If these programs are used in a commercial en-
vironment, then you must register it. Registration of the User
Database System is $25.00. User registrations are what keeps this
program going, and this is the third major release of this program.
This program was developed because of a "need to know" situation. It
represents many months of work, and thousands of lines of code. I hope
that you will find this program useful in the management of your
bulletin board system. Remember, only you, the end user, can make the
Shareware concept work. Please register your copy!
Please send payments and/or comments to:
Jeff Sumberg
box 212
Ringwood, N.J. 07456
After you have registered, I will send you two Door programs and a
variety of utility programs that enhance the use of this database
system. Please see Appendix F for a description of these programs.
UDBS Version 5.3 Page 5
Registered users get support via the SailBoard BBS and on the
INTERLINK Mail Network (more on this later). When you register with me
be sure to include the name of your system EXACTLY (upper/lower case)
as you would like it to appear in the door programs, this name is hard
coded and cannot be changed at your end. Also I will automatically
register you as a visiting Sysop and UDBS user on the SailBoard BBS,
so please send me the password that you would like to use.
Copying and Distribution
The User Database System is a copyrighted program that is being dis-
tributed as user supported software. It may be copied and distributed
freely as long as all terms of the license are followed. All files (as
mentioned here in the manual) must be included as a set. No fee other
than a disk and handling charge (of up to $5.00) may be charged.
Distribution Contents
USEACT.EXE The call analyzer
ENGLISH.UDB Standard english language text scan list
QUERY.EXE The database query program
MODIFY.EXE The file maintenance functions for Query
SYNC.EXE Utility to Synchronize database to Users file
NEWCALLS.EXE Utility to facilitate daily database updates
UDBS.CFG Sample configuration file
UDBS50.EXE A custom Basic Compiler run-time library
UDBS.DOC This file
READ.ME If included, contains important information about this
release. It should be read FIRST before doing anything
else. Any additional files in the distribution will be
expained here.
USEACT.EXE This is the analyzer program. This program reads the
caller log and separates all the activities of each
user. The results of which are optionally written to a
report file and/or optionally written to the database.
In this way, reports can be generated at any time
without affecting the database (or Visa-Versa).
ENGLISH.UDB This file contains all the items that are scanned for
by the Useact program. These are the standard entries
from the stock PCBTEXT file. If you customize PCBTEXT,
then you change the respective lines in this file. See
section on Text/Language configuration.
QUERY.EXE This program is used to examine the information stored
in the database.
MODIFY.EXE This program contains all the file maintenance func-
tions of Query. (This program is chained to by Que-
ry.Exe and is not intended to be run from the command
line).
UDBS Version 5.3 Page 6
SYNC.EXE This utility is used to synchronize the Upload, Downlo-
ad, and Times On System values to correspond with the
values already in you system Users file. This program
can be run interactively or in a batch mode
(Event.Sys). For more information see Appendix C.
NEWCALLS.EXE This utility is used to facilitate daily database
updates during your event. This programs 'remembers'
where the last place in the callers log was when the
previous event ran and extracts all call records from
that point on. Appendix D has more information.
UDBS.CFG This is a sample configuration file containing paramet-
ers used to control all of the programs. The contents
of this file are explained in detail in the chapter on
configuration. You will probably have to customize this
file to your system.
UDBS50.EXE This is custom Basic run-time library. It is required
by ALL programs. This is NOT an executable program even
though it bears the an EXE extension. Running it will
only produce its version number. This file can be kept
anywhere on your system on any drive, as long as it is
within your current PATH specification at run-time. If
this file cannot be found, you will receive a prompt
asking for its location. Probably the best place to put
it is in the same subdirectory as the programs.
System Requirements
These programs require a minimum 250k of memory to operate. The
programs all operate in text mode with or without color (color is
selected automatically if a color card is sensed and may be disabled
if desired). Therefore any type of monitor/display card combination is
acceptable. At one time or another, some of these programs will have
as many as 13 files open. Given the fact that Dos always has the first
five files open for the standard input and output devices, you will
need a Files= statement in your Config.Sys file (Of at least
Files=20). Dos version 3.x is also required for the file sharing
support. These programs have been tested on, and are being used with
DoubleDos, Taskview, Alloy's PC/slave card with NTNX, DESQview, and
Microsoft Windows on True PC's, XT's, AT's, PS/2's, 386 systems, and
various clones. I do not however guarantee that these program will
work under every conceivable hardware and software configuration, but
they seem to work fine under many different configurations on MANY
different systems.
UDBS Version 5.3 Page 7
Operational Restrictions
!!!PLEASE READ THIS SECTION!!!
THE PROGRAMS IN THIS RELEASE WERE DESIGNED TO OPERATE WITH PCBOARD
VERSION 14 AND PREVIOUS RELEASES (TO VERSION 10). USE OF THESE
PROGRAMS ON ANY FUTURE RELEASES MAY PRODUCE UNDESIRABLE OR UNPREDIC-
TABLE RESULTS, INCLUDING BUT NOT LIMITED TO, IRREVERSIBLE DATA FILE
DAMAGE. IF YOU PLAN TO USE THIS VERSION OF THE USER DATABASE SYSTEM ON
ANY FUTURE RELEASES OF PCBOARD, YOU SHOULD TAKE ADEQUATE STEPS TO
PROTECT YOUR DATA BEFORE YOU DO SO. A BACKUP OF ALL THE DATA FILES
SHOULD BE MADE BEFORE RUNNING ANY QUESTIONABLE CALLERS LOGS THROUGH
THESE PROGRAMS, THIS WAY YOU ARE PROTECTED AGAINST ANY UNFORESEEN
CHANGES IN PCBOARD NOT EXPECTED BY THESE PROGRAMS. THINGS YOU SHOULD
BE MOST AWARE OF AT EACH NEW RELEASE ARE CHANGES TO THE CALLERS LOG,
SINCE THIS IS WHERE ALL INFORMATION IS EXTRACTED FROM. IT TAKES SOME
TIME IN ORDER TO ANALYZE WHAT EFFECT ANY TYPE OF CHANGE WILL CREATE,
AND YOU SHOULD BE PREPARED IN THE EVENT THESE PROGRAMS FUNCTION
ABNORMALLY.
THESE PROGRAMS DO NOT, AND WILL NOT, SUPPORT ANY BETA RELEASES OF
PCBOARD THAT MAY BE AVAILABLE NOW, OR IN THE FUTURE. IF YOU PLAN TO
RUN THESE PROGRAMS WITH PCBOARD BETA SOFTWARE THAT MIGHT BE RELEASED,
YOU DO SO ENTIRELY AT YOUR OWN RISK.
THE USE OF INDEXED FILES REQUIRES MORE CARE ON YOUR PART THAN WITH
PREVIOUS VERSIONS. DUE TO THE NATURE OF THESE FILES, THEY ARE MORE
SUBJECT TO DAMAGE THAN FILE STRUCTURES USED IN PREVIOUS VERSIONS.
UNDER NO CIRCUMSTANCES SHOULD THESE PROGRAMS BE TERMINATED IN A METHOD
OTHER THAN THAT PROVIDED FOR EXITING.
The new XRF files used a linked chain scheme similar to the FAT used
on disks. This is where the increased speed is realized by not reading
any records not associated by the user being queried. However, like
the FAT on a disk, once damaged, is impossible to repair. If for some
reason your computer should lock up, reboot, or loose power while
USEACT, MODIFY, or DOWNCRED/UPCRED is running and in the process of
MODIFYING files, there is a very good possibility that either your
data files or the index files will be damaged. Therefor you should
ALWAYS keep a current backup. Follow this rule of thumb: if the above
does happen (lockup/boot/power loss), ASSUME THE FILES TO BE DAMAGED,
and use your latest backup copy, bringing it up to date. Signs of
damaged chains are "Bad Record Number" or "Error 64", index file
damage may cause all sorts of odd operation. Under normal operating
conditions you should never see this, but it is your responsibility to
be prepared for it.
UDBS Version 5.3 Page 8
Configuration
All of these programs use a configuration file to set options and
locate files. This file, UDBS.CFG must be present in the current
directory(1) whenever one of the programs is run, or an error message
will be issued. Refer to the sample configuration file that came with
the distribution.
IMPORTANT: In the following examples, please notice that there is
no space on either side of the equal (=) sign.
Improper operation will result if spaces are used.
INPUT=fname
OUTPUT=fname
These two lines are used by Useact.Exe to specify the names of
the input and output files, The INPUT= parameter is REQUIRED and
the OUTPUT= parameter is optional. Typical entries might be:
INPUT=CALLER
INPUT=CALLER1
INPUT=C:\PCB\MAIN\CALLERS
* INPUT=C:\PCB\MAIN\DAYCALn
* See 'Running Useact in Event.Sys'
OUTPUT=OCT86.DAT
OUTPUT=CALLS
OUTPUT=D:\LOG\JAN1-86
If an OUTPUT= statement is not placed into UDBS.CFG then NO
output log file will be generated.
UPDATE=YES
You can run USEACT.EXE with or without the database update
active. The only way to process a log into the database is by
setting this parameter to "YES". If any other value is used or
the line is not present in the configuration file, no update will
occur. This is useful for when you want to regenerate a log
report that has already been processed into the database.
When update is set to "YES", thirteen (13) other files are used.
These are the actual database files. They are automatically
created the first time that update is used. These files are:
DATABASE.DAT This file contains individual user records.
____________________
1 There is an exception to this rule. See "DOS PATH" at
the end of this section.
UDBS Version 5.3 Page 9
MASTER.DAT This file contains period totals. A period
total is the cumulative amounts of each system
function for a given update run. This is the
same as the cumulative total screen shown at
the end of a Useact run.
DOWNLOAD.NAM This file contains all the names of downloaded
files
DOWNLOAD.XRF This file contains the cross reference links
to tie a file name to a user.
UPLOAD.NAM Same as DOWNLOAD.NAM
UPLOAD.XRF Same as DOWNLOAD.XRF
COMMENTS.DAT This file contains the comments you add.
filename.HDR
filename.IDX These are index files. There will be three
different "filenames" corresponding to the
files that are indexed.
In addition, when you run an update, if the above files already
exist they are copied to backup files before processing starts
(See xBACKUP= parameters below). If an error occurs after one of
the primary files has been modified, Useact attempts to restore
the original files from the backup files. In any case, the backup
files are not deleted, and remain intact until Useact is
restarted with update set to yes, or a Purify operation is done
in Query. The backup filenames that are used are: DATABASE.BAK,
DOWNLOAD.BAK, UPLOAD.BAK, MASTER.BAK, DOWNLOAD.XBK, UPLOAD.XBK,
COMMENTS.BAK, *.HBK, & *.IBX. These files may be deleted at any
time if you need the space, if not I would leave them alone, as
they offer some sort of insurance should a problem occur. In any
event, make sure you keep you data files BACKED UP AT ALL TIMES!
These files are opened as "Access Read Write Lock Read Write". In
a network environment this prevents the doors from accessing the
files while Useact or Modify are using them.
If you have update set to "yes" and you run a call log that has
already been processed into the database, you will receive a
warning message and prompt informing you of the consequences.
Follow on screen prompting if you receive this condition. Users
of Multi-Node systems will not be able to use this built in
protection if they plan to process the logs from other nodes into
UDBS Version 5.3 Page 10
one database. This is because the same period exists in two or
more logs. Please see the description of the 'Overlapcheck=NO'
parameter, explained below.
USEACTBACKUP=NO
PURIFYBACKUP=NO
At the request of several users, who have extremely large
databases, I have included a way to inhibit the automatic copy of
the database files. The USEACTBACKUP=NO parameter inhibits backup
before Useact starts, and the PURIFYBACKUP=NO parameter inhibits
backup before Purify begins. Unless you keep a very concise
backup schedule and have the ability to go back to an earlier
copy if any problems are found (which these users do), I don't
recommend using either of these two parameters.
FILES=pathname
This parameter allows you to specify a path to the database
files. This allows you to keep the programs in one directory and
your database files in a completely separate directory. If this
line is not in the file then the database files will be looked
for in the current directory. Be sure to end your path specifi-
cation with a '\' (as in "Files=\DATA\") or an error will result.
NEW=YES
This parameter causes the report file generated by Useact to
contain an activity listing for new users ONLY. A new user is
determined from the log by the following two log entries:
Refused to register
Registration information saved
These log entries are determined by how a first time caller
responds to the question "Do you want to register?" after his/her
name was not found in the USERS file. A count is kept of registe-
red and unregistered users, and the users report entry shows
which state he/she is in. This parameter ONLY controls what is
written to the report file. If "new" is used in conjunction with
"update", ALL user activity is written to the database, but only
new users are written to the report. This was primarily intended
to be used without update to isolate all new users within a log
period.
USERS=\Path\usersfilename
This parameter is used to point to the subdirectory where your
PCBoard USERS file resides, and allows you to specify its name.
Supply the full path to your users file, and INCLUDE the name of
your users file. In QUERY.EXE this is used for the "Delete if not
UDBS Version 5.3 Page 11
in users file" function. In USEACT.EXE this is used to screen new
users from being added to the database (see NEWADDITIONS=).
Example: Users=\PCB\MAIN\USERS
It is important to note that Clark Development may change the
format of this file at any time when they release a new version.
If this file changes, it will render the functions requiring the
users file inoperative. You should make it a point when you
receive a new version of PCBoard to check the chapter of the
documentation where the formats of PCBoard files are shown. If
the length given for the Users file has changed, then don't use
any functions requiring the Users file until you can obtain a
update of this system. I will try to stay on top of this situa-
tion and have any necessary corrections ready at the time of a
PCBoard update. The reason I mention this is so that you are
aware this condition. It would probably be a true statement to
say that as long as any PCBoard update does not require you to
run any type of 'conversion' program on your current Users file
that its format has not changed. To allow network operation, the
users file is opened as "Access Read Shared".
If the current version setting is 12 or greater, then the PCBNDX
index files are used to locate user names (See PCBNDX=). Indexing
is cancelled automatically if a corrupted index file is detected.
If this occurs the program stops using the index files and scans
the users file only in the same manner as the previous versions.
PCBNDX=\path\to\pcbndx\files\
This parameter is used to point the code to the location of your
PCBNDX.x user file index files. Starting with version 14 of
PCBoard, the location of these files is setable by the Sysop, and
do not necessarily need to reside in the same subdirectory as
your USERS file. This parameter allows you to exercise that
ability. Please note that this parameter MUST be set if you have
the USERS= parameter pointing to your users file otherwise your
index files can not be located. An error will be issued if not
properly set.
NEWADDITIONS=NO
As new users call your system, they are automatically added to
the database. For an open board there is no problem with this.
However, take the situation where a Sysop runs a 'closed' board.
In this situation new users cannot gain access to the system in
any meaningful way until the Sysop adds a record to the Users
file containing their information. What happens now is that
whenever a new users calls, even though he or she cannot gain
access to the system, the callers log still shows their call.
They get added to the database, and after a while the database
becomes full of names of people who aren't really users. To
UDBS Version 5.3 Page 12
prevent this from happening, include the line 'NEWADDITIONS=NO'
in the configuration file. When Useact processes user names, it
will first verify that they exist in your Users file. If they do
not, no database action will occur for that name. There is no
problem in having this set to 'no' at all times with any board.
This is because with an 'open' board all new users will be added
except those who don't register. You cannot use this option if
you are running version 10 of PCBoard, see the note under the
Version=10 parameter.
BULLETINx=y
If you have bulletins which you require new users to read, this
is a way to monitor that. You can selectively monitor up to five
(5) of the bulletins on your system. In the parameter line you
will notice an 'x' and a 'y'. The 'x' is a number from 1 to 5
(for the five different bulletins to monitor), the 'y' is the
actual bulletin number on your system you wish to monitor. This
value can be from 1 to 99. Lets say you want to monitor bulletins
1, 3, & 4. You UDBS.CFG file would contain the following 3 lines:
Bulletin1=1
Bulletin2=3
Bulletin3=4
In DATABASE.DAT there are 5 different locations in the file, this
is what the value of 'x' refers to. Each location is stored as a
0 or 1 (NO or YES). Once a users bulletin location is set to a 1
(Yes), it stays that way. What this means is that once you commit
a bulletin location to a specific bulletin number (Lets say you
have Bulletin1=5), you can not change it to monitor a different
bulletin (say 6). No harm will occur, but incorrect information
will be in file. All of the locations that were set to 'yes' when
you were monitoring bulletin 5 are still set. Running a report at
this time would show someone had read bulletin 6 when in fact
they really didn't. The only way to switch to another bulletin
number is to first reset the bulletin flag you wish to reuse to a
'No' state. See the file maintenance function "Reset Bulletin
Flag" for more information.
VERSION=
This parameter tells the UDBS programs which version of PCBoard
files you are currently working with. It adjusts the programs to
use the proper USERS file record length and to use correct
callers log format. Setting this parameter incorrectly will cause
all sorts of failures. This is probably the most confusing of the
configuration settings since support for all PCBoard versions
from 10+ has been included. The proper settings are:
VERSION=10
UDBS Version 5.3 Page 13
This sets the analyzer to expect callers logs in the format that
was used with version 10. You cannot perform any user file func-
tions while Version=10. Support was not included in UDBS for
version 10 users files.
For Version 11
If you are running with version 11 (or processing old version 11
log files) you MUST remove this line from the configuration file.
As with version 10, NO Users file support is available for
version 11.
VERSION=12
This sets all programs to use the new USERS file record length of
256 bytes per record. It also adjusts Useact.Exe to read the
version 12 callers log format.
VERSION=14
This sets all programs to expect version 14 files formats.
Important: You can NOT mix version 10, 11, 12, or 14 callers log
files into a single file. If for example you are
running version 12 and wish to process a version 11
log, you MUST NOT reference the USERS file. With the
VERSION= line removed, the program attempts to access
the USERS file with a record length on 152 bytes
(which would cause odd results since the v12 Users
file record length is 256 bytes). In other words, when
processing logs from a different version than the one
you currently use, remove the USERS= configuration
line to stop users file access.
SINGLENODE
Used in conjunction with VERSION=12 and VERSION=14. This signals
Useact.Exe that the log it is reading was generated by a single
node system. By single node I mean the /S and /D versions of
PCBoard. You will know if you have left this option out of your
config file if the first three letters of every users name are
missing.
It has recently come to my attention that the /En versions of
PCBoard can also generate a "Singlenode" type of log if they are
told that they are not running on a network. So the above
statement may not be true in all cases. If in doubt check your
log to see if the node number is included on the first line of
each callers record (Refer to the examples below). If the node
number is missing, this is a "Singlenode" type of log and you
will need this parameter.
UDBS Version 5.3 Page 14
Examples:
Node Number
Multi-node Log
03-04-89 (14:30) (1) JEFF SUMBERG (2400) (N) RINGWOOD, NJ
Single node Log
04-04-89 (10:52) JEFF SUMBERG (2400) (N) MOONACHIE, NJ
OVERLAPCHECK=NO
This parameter is to be used where callers logs from Multi-Node
systems are to be processed into a single database. The overlap
checking in Useact was originally added to prevent a Sysop from
accidentally updating a database with a callers log that was
ALREADY processed. Doing so would cause incorrect information to
be placed into the database. You MUST however disable this check-
ing if you plan to keep a single database for all the nodes since
each of the logs cover the same physical time and date. BE
CAREFUL not to duplicate data as mentioned above.
LOG=\Path\Filename
This parameter enables Useact's logging capability. When
specified, Useact will add lines to the end of the file you
specify. This file can be the callers log (the recommended output
file), or a file devoted specifically to watching Useact's
operation. The entries written to this log are 64 characters in
length, as is required if the callers log is the specified output
file. A sample of my callers log showing the log entries is
included below:
Minutes Used: 5
11-27-88 (11:17) ANY CALLER Off Abnormally
**************************************************************
Scheduled Event ran at 15:47
**************************************************************
USEACT: Started at 15:47:22 on 11-27-1988
Processing log file: MAIN\EXTRACT
Processed 15 calls from 8 users.
Processing completed normally at 15:48:15
**************************************************************
11-27-88 (16:12) NEXT CALLER (2400) (N) MOONACHIE, NJ
If Useact encounters any errors that cause it to end abnormally,
they will be reported in the log.
EVENT
This parameter tells Useact that you are running it in unattended
batch mode (such as Event.Sys). If an 'illegal function' error
UDBS Version 5.3 Page 15
should occur from a bad or unrecognized line, Useact will
automatically skip the line (writing it to the log if specified)
and continue, rather than displaying the prompt to continue or
terminate. This way if an error does occur, your system will not
be 'hung up' waiting for you to answer the prompt at 3am!. (see
Running Useact as an event).
REPORT=
This parameter instructs Useact to write the cumulative report
screen to a file. This file can be used as a bulletin if you
wish. If you have ever seen the cumulative report screen at the
end of Useact, this is a duplicate of that screen in a file.
COLOR=NO
If you are using a color system, and you prefer the Black & White
appearance of previous versions, this will force the programs to
stay in B/W mode.
DOS PATH
As stated earlier, the configuration file UDBS.CFG is expected to
be in the current directory when the programs are run. The only
exception to this rule is with the Query program (Query.Exe and
indirectly Modify.Exe). Query may be run from any directory on
your system as long as the configuration file can be found in
your Path statement. When query is first run, it first checks the
current directory to see if the configuration file is there. If
not, it then checks every directory in your path in an attempt to
locate it. If it is found, program operation continues as ex-
pected. If it cannot be located an error message is issued. As an
example, say you keep all UDBS related programs in a subdirectory
called UDBS. Your Path statement might look like this:
PATH=C:\;D:\EDIT;C:\UDBS;C:\PCB;D:\UTILITY ....
If you were to shell out from PCBoard to check on a user, you
would be in the \PCB directory. It would no longer be necessary
to switch to the \UDBS directory to run the Query program. First
the path would direct DOS to the executable files. Then the Query
program would locate the configuration file when it searched the
path.
UDBS Version 5.3 Page 16
Text and Language Configuration
Beginning with release 14 of PCBoard, the sysop has been given the
ability to customize their system PCBTEXT file with a program called
MKPCBTXT. In the process of making a system more friendly it also
called a problem because the standard text entries written to the
callers log changed as well, causing loss of text matches and improper
counts. Another problem was mixed language systems. Every time a
language is changed, that section of the callers log is written in
another language. Since this program was written for english callers
logs, it was as if these sections didn't even exist.
Useact has the ability to be configured by the sysop to recognize
custom changes to the callers log AND callers logs in multiple mixed
languages. When Useact begins it reads in one or more text files
containing the match strings for the particular language(s) you are
using. Then when a line of text is analyzed, it is checked for a match
in each respective language. Each language file contains 31 lines of
standard unformatted ASCII text, and is created with a text editor. A
standard English file is included containing all the standard PCBTEXT
entries Useact searches for.
The following parameters control language configuration:
Languages=n
This parameter tells Useact the number of languages that will be
used. It controls the number of language files to read, and the
number of comparisons to check each line against. This parameter
must be specified, and must be at least one (1).
LanguageX=\path\Language_Filename
Depending on the number of languages you specified in the
previous parameter, you will have one or more of these
parameters. The 'X' specifies the number of the language file.
The parameter specified is the name of the file containing the
language text. The text most often used in the log should be the
first file specified (Language1=). The second most used would be
number two (Language2=), and so on. If this format is not
followed, the program will work correctly, but text scanning will
take longer than necessary. A typical 3 language configuration
might look like this:
Languages=3
Language1=English.Udb
Language2=French.Udb
Language3=Spanish.Udb
UDBS Version 5.3 Page 17
Language File Format
References will be made to the text file ENGLISH.UDB. Please refer to
that file during this section.
This language text file(s) contain 31 lines. The order of the lines is
fixed, by this I mean that "Operator Paged" (or its equivalent) MUST
be the sixth line in every file. The character (~) is used as a
comment marker. This character is used as a substitution character by
PCBoard to tack additional text onto the line. When (~) is read by
Useact all text from that point to the end of the line is stripped
off. Any spaces preceding the (~) are also stripped off. Most of the
lines in this file will work with all versions of PCBoard callers
logs, except where indicated. Some text scans from early versions of
PCBoard (10 & 11) are still hard coded into Useact. You may have to
change some lines in this file to process version 12 logs properly.
The numbers indicated inside the parenthesis is the record number from
PCBTEXT that this line corresponds to (The numbers are from version
14.x PCBTEXT).
Several lines must be modified by you in order to be properly matched,
or follow a specified format to work correctly. These lines have
already been modified in the supplied english text file, but you
should make special note of them:
Message Left: Main Board
This line exists in PCBTEXT as "Message Left:~". If you wish to
count ALL messages left to ANY conference, you can leave the line
like this. If you wish to count Main Board messages only (which
is what this program only did in prior versions), you must add
"Main Board" to the line (as shown). You can add whatever
conference you wish. Just follow the format as written to the
log.
Comment Left: Main Board
Same as above
Bulletin Left: Main Board
Same as above. Decide which bulletins read are the ones you want
checked. You MUST include the conference name up until (but not
including) the # sign or this scan will fail. "Main Board" has
already been added since this is what has always been scanned for
in prior versions.
Main Board Questionnaire (n) Info. Saved
PCBTEXT contains the line "Questionnaire ( ) Info. Saved".
PCBoard then adds the number, and the conference where the
questionnaire was answered. You must supply the finished line in
UDBS Version 5.3 Page 18
the text file. You can scan for any number, and any conference,
since you're supplying the line to scan for. This shows up as the
MBQ date on the Query screen.
Minutes Used:
The colon (:) is required on the text line. It is used for
positioning to find the actual time. If you change the line, it
must end in a colon. "You have been on for:" is legal since it
ends in a colon.
ZIP view executed on file
Notice I have left the "ZIP" (or "ARC", "PAK") off this line in
the supplied file. This makes it catch all compressed view
commands regardless of the method you use.
Most lines (except the ones noted above) can be used as they exist in
PCBTEXT. Be sure if you make any changes to PCBTEXT that you copy all
your custom changes to the UDBS language file(s).
Text Matching Rules
Each line in the language text file is associated with one of the
count fields you see in the Query program. Placing the wrong text on
the wrong line will cause the wrong field to increment. You must
follow the order shown in the English.Udb file. Every line in the
callers log file is checked for a match against every entry the
language file(s).
You can use as little, or as much text in the scan lines as you wish,
as long as what you use is unique from some other log entry. For
example:
In the language file, the line "Access Denied - Real Names Only
Allowed!" will cause a match and increment the trashcan field.
However placing "Real Names Only" in the language file will cause
the same to occur since it matches part of the log entry.
But, if you used "DOOR" instead of "OPENED DOOR" in the language
file, you would match on other log entries besides "opened door"
(all lines containing the word "DOOR"). This is incorrect and not
what you want to do.
This method gives the Sysop full flexibility for text matching. With a
little caution in setup, anything should be detectable.
UDBS Version 5.3 Page 19
The list that follows shows which configuration parameters are used by
each program:
Useact:
Input= Output= Files= New=
Update= Overlapcheck= BulletinX= Report=
Newadditions= Users= Version= Event
UseactBackup= PCBndx= Languages= LanguageX=
Query/Modify:
Files= Users= BulletinX= Version=
PCBndx= PurifyBackup= Color=
Sync:
Files= Users= Version= PCBndx=
UDBS Version 5.3 Page 20
Program Operation - Useact
Useact essentially runs without operator intervention. Once started,
it runs until completion (or an error is detected). During operation
several information displays are constantly updated. These are all
self explanatory, with perhaps the exception of "Storage Available".
This is the amount of free string space that Useact places user names,
File names, message numbers, etc. into. If your callers log is larger
than Useact can process in one cycle, it will automatically go to the
database update phase (if enabled) and generate a report to the output
file named in the Output= parameter (if enabled). Useact will then
continue with the callers log at the point where it left off. This
cycle will be repeated as many times as necessary to complete the log.
When Useact processes the log in sections, subsequent reports (if
enabled) are output as CONTINUE.n, where n is the section number. As
an example, if it takes Useact three cycles to complete a large log
file and the Output= parameter specified a filename of 'log' then you
would have the following report files: Log, Continue.1, and Contin-
ue.2. If Useact finishes the log in one cycle, a cumulative total of
all monitored system activity is displayed on your screen (The period
total). This information is not displayed if multiple cycles are
required to process a log. In any event, this information is always
written at the beginning of the report(s).
Running Useact In Event.Sys
There are two methods that can be used to run Useact in the event.
Essentially only the calls from the past 24 hours can be run through
Useact otherwise a duplication of information will occur. Both methods
are explained in Appendix D (The Newcalls Utility). The first method
uses a utility program to track the last place in the callers log
where the event occurred last and extract to a separate file all calls
since then. this method uses the Newcalls.Exe program. The second
method uses DOS commands and funny Callers log names to copy,
concatenate, and then delete the Callers log every 24 hours. Please
refer to Appendix D.
Error Handling In Useact
If an error is encountered during processing in Useact, a diagnostic
message will appear at the bottom of the screen. This message will
inform you of the actual error and any remedial steps you can take to
correct it. One error in particular is 'Illegal Function Call'. This
can occur from several types of errors within the callers log that can
be caused by PCBoard itself (Such as the system freezing and not
correcting the log). If this occurs, the line containing the error
will be displayed and you will be given the option of ignoring it and
continuing or terminating processing so that you can edit this in the
log. The choice is yours. (This is disabled if EVENT is active).
Useact's Command line mode
UDBS Version 5.3 Page 21
When I was writing Useact.Exe I added the ability to enter configura-
tion parameters on the command line when the program was started. This
way I didn't have to change the UDBS.CFG file each time to test some-
thing. I have left this in the final program since it does offer some
flexibility in operation. Useact will accept any of the configuration
parameters it normally uses, with the following rules:
1) The UDBS.CFG file still must exist
2) The Config file is read first, then the command line
parameters.
3) The command line parameters then supersede any parameters
found in the Config file.
4) If the parameter doesn't exist in the Config file then
it is set from the command line
As a quick example, assume your UDBS.CFG file had the following lines:
Input=\Main\Caller
Output=\Reports\Log
Update=Yes
Assume you wish to generate a report from an older callers log that is
on a floppy disk. Normally you would have to edit UDBS.CFG to use the
floppy drive, and turn off the updates. All you do is this from the
command line:
C>USEACT Input=A:filename Update=No
As you can see, update, which is first read as 'Yes' will be changed
to 'No'. Input, which was '\Main\Caller' will become 'A:Filename'.
Parameters must be specified exactly the same way they are in the
Config, I.E. no space before or after the equal sign. You must however
separate each parameter with at least one space.
UDBS Version 5.3 Page 22
Program Operation - Query
The Query program allows you view the information stored in the
database in a variety of ways. This program is totally menu driven
with pop-up windows to guide you through the different search modes.
A selection may be activated in one of two ways. Note the key letter
at the beginning of each line and simply press that letter on your
keyboard, the selection will execute immediately, or you can select
using the cursor keys, and press Return when the selection bar is over
the item you want.
With selections that require you to enter a user or file name, it is
not necessary to type the entire name, you can just type the first few
characters of the name. Names are stored in the index file and if an
exact match is not found, a list of close matches (up to twenty) will
be presented in a window. You can then choose the one you want from
this list. If what you want is not displayed in the list you can hit
the ESC key to abort the search. This is very helpful if you are
unsure of the complete name or the spelling. You will find this
feature extremely useful, convenient, and timesaving.
Names are sorted into alphabetical order in the index files from left
to right. Therefor, partial searches always start at character
position one. You can't for example enter a partial last name and get
a close match on that. Partial searches always go from left to right.
User Statistics
This brings up a users activity record. When you select this, a
window appears asking for the users name. If you decide at this
point that you do not want to view a record, press Return and you
will be returned to the main menu screen.
If the name you entered was found, the users record appears on
the screen with all system activity shown. If the users name was
not found or you entered a partial name, a list of close matches
will be presented in a window. Also shown is the date when this
record was last updated by Useact, the date of this users first
call to the system (if known), and the date the user answered the
main board questionnaire (MBQ). Press F1 to view files downloaded
by this user, F2 to see uploaded files, or hit Return for the
main menu screen.
Users Who Never Download
Users Who Never Upload
Use this function to isolate users with no file activity. When
selected you will first be prompted to enter a "times on the
system" value. This is used to isolate even further the inactiv-
ity of users. Example, perhaps 100 people never upload after
UDBS Version 5.3 Page 23
1 time on the system, but if you entered 75, then only users who
didn't upload after being on for 75 calls would be shown.
In addition, when selecting users who never upload, you will also
be asked if you want to see the ones who download, but never
upload (There is a difference). The list will show the download
count along side the user name.
File Transfers During a Specific Period
Use this function to find the names of files transferred between
a starting and ending date. When you choose this function, a
window will appear asking you if you would like to see downloads
or uploads. Another window will then appear asking you to choose
a date period. You may enter specific start and end dates or
choose a date period from the period totals list. The prompts
after this choice are self explanatory. Depending on the date,
range, and size of your files, this function might take a minute
or two so don't get impatient.
Users With Keyboard Timeout Disconnects
They sign in, and walk away. they start a download, and don't
come back. You know the type. They show up here.
Users Disconnected For Daily Time Limit
These are people who use every second you give them. You can use
this to find the time hogs, or perhaps a good user who needs more
time.
Users That Downloaded A Specific File
Who Uploaded A Specific File
A window will appear asking for a filename. You may enter a
partial filename (in which case the close match window will
appear) or the entire filename if known. The User(s) that
downloaded or uploaded this file and the date of the transfer are
shown.
Press F1 to view a user record, a Window will appear asking for a
name. Enter a user name (or hit Return to go back to the main
menu). The users record will be displayed, and the function keys
associated with that selection become active.
All Files Downloaded By A Specific User
All Files Uploaded By A Specific User
A Window will appear asking for a user name. You may enter a
partial name (in which case the close match window will appear)
or the entire name if known. All files associated to this user
are listed, along with the transfer date.
UDBS Version 5.3 Page 24
Press F1 to open this users record.
Press F2 to view the opposite transfer direction.
Display Period Totals
Use this function to display the total amount of system usage
from each update period. The display will show you the periods on
file. The periods show in reverse order starting from the latest,
and decreasing to the earliest.
Press F1 to view a specific period, a window appears asking for a
period number. Enter desired value. The display now shows the
totals for that period.
Press F2 to totalize a group of periods. A window appears asking
for starting and ending periods. The display shows the total
amount of activity during this group of periods. To display total
system usage stored, enter "one" (1) for the starting period, and
"zero" (0) for the ending period. All period totals will be
summed and displayed.
Users Exceeding DL/UL Ratio
When selected, you will be asked for a ratio (xx:1). Enter the
ratio you desire, or press Return to abort search. All users
whose ratios are equal or greater will be displayed. The amount
of downloads and uploads are shown, as well as the actual ratio
(Rounded to the nearest count).
Users That Never Left A Message
These are users that never left a main board message. I suppose
you could assume that these users have never read one also, but
the log doesn't show this. A count of the times on the system is
also shown to give you some idea of how active this user is on
your system.
Press F1 to open a user record. As before, enter a name, or just
press enter.
F2 and Return have different meanings depending on the size of
the listing. Follow on screen prompts.
Doors and Node Chat
This function is used to help give you some idea of the activity
for these two commands. A window will appear asking for the Doors
mode or the Node Chat mode, after you make your selection,
another window appears with a sub menu asking for your choice
(Has used/Has not used). Users falling under the category are
UDBS Version 5.3 Page 25
shown, along with their number of times on the system. Follow on
screen prompts for the proper use of the function keys
Users With Security Violations
Since there is more than one type of security violation, a window
will appear with a sub menu when this function is selected. On
each security display a count of the number of times the
violation occurred is displayed next to the name.
Selection Not Available
List all users that have selected a command that is
not allowed under their security level.
Not Registered In Conference
Attempts to Join a conference that is private.
Download Violation
Attempts to download password protected files, or
files with minimum security level higher than this
user.
Access Denied - Password Fail
Disconnects for failed password during sign on
Access Denied - Trashcan
Trashcan name disconnects
Access Denied - Locked Out
Locked out users, who tried anyway to get back on.
Access Denied - Refused to Register
Callers denied access to the system after answering
'no' to the question "Do you wish to register?" (If
the Sysop has PCBsetup configured to give a level of
zero to these users). This does not apply if you set
NEWADDITIONS=NO since callers who refuse to register
are never added to the database.
UDBS Version 5.3 Page 26
All Of The Above
Displays users that have any of the above conditions,
the quantity of the violation(s) are displayed next to
the name as:
C: n P: n R: n T: n L: n S: n D: n
C = Conference, P = Password, R = Refuse to Reg.
T = Trashcan, L = Locked out, S = Selection N/A
D = Download Violation
Baud Rates and Protocols
A window appears with a sub menu when you select either of these
functions. Select the item you wish from the sub menu. The users
name, and a count of how many times the selection was used is
displayed. Follow on screen prompts for the use of the function
keys.
Users That Page Sysop
The users name, and the number of times they paged you are shown.
The screen shows the meaning of the function keys.
Show New Users On Specified Date
Use this selection to scan the database and show all new callers
for either a whole month or a specific day. A window will appear
with a menu asking you which function you wish to use. Use
leading zeros on the date if necessary as each digit must occupy
two places. (EX: 01/08/87 or 05/12/87)
Scan For User Name
A window appears. Enter the part of the name you are looking for.
This function is identical in operation to the name scan function
of Sysop board command #7. Any name containing this part is
displayed. As little as one character may be entered. Follow on
screen prompts for the use of the function keys. This scan does
not use the index file, it scans for text, not for index key
order, and you can enter any part of the name.
Generate Reports
This mode allows you create reports using most of the functions
discussed above. When entering this mode, a new menu will appear
containing report functions. When a function is selected a window
appears asking for the name of the output file. This is where the
report will be written to, and can be any valid Dos filenames (or
device). If it is desired to direct output to the printer, simply
press Enter. Its is assumed that the printer is device LPT1.
UDBS Version 5.3 Page 27
File Maintenance Functions
When you select the file maintenance functions, a second module will
be loaded from disk (Modify.Exe). At this time, all the database files
are locked (not PCBoard specific files, these are always shared). This
is done to prevent other UDBS programs accessing them while you
perform any maintenance function. If a UDBS door happens to be running
at this time, you will not be granted access to the files and will be
returned to the Query module. Since the door has a four minute limit,
you can try again in a few moments. After this module is loaded and
the files successfully locked, a window will appear with the following
functions:
Delete User
A window will appear asking for a user name (Partial names are
accepted and close matches will be shown). The users record will
then be displayed, press Return to delete the record, or Escape
to abort the delete operation. Once deleted, the record will no
longer appear in any query operation (except undelete), and the
name will be considered new if found in the callers log during a
database update. A deleted record may be restored unless the
files have been purified, or the name has been added again by
another update.
Delete If Not In User File
This function allows you to remove users from the database if
they don't exist in your PCBoard users file. This selection can
be run two ways, and a window will appear with your choices. 1)
It will stop and show you each users record before actually
deleting it (Giving you the opportunity to skip deletions), or 2)
Delete immediately without acknowledgement. All deleted records
can be undeleted before the files are purified. You cannot use
this function if you are running version 10 of PCBoard, see the
note under the VERSION=10 parameter.
Purify Files
When a user record is deleted, it is really only marked as
deleted thereby allowing it to be restored. Purify reads all the
data files and physically removes deleted records. Before purify
starts, it creates backup copies of the database files in the
unlikely event a system failure occurs.
Unlike the previous versions, a Purify now takes much less time
to perform. This is due to the fact that the data files no longer
need to be packed (a method in which a record is removed by
shifting all records above it down by one and renumbering all
references that were shifted). A record is now removed by marking
it as free, in effect creating a 'hole' in the file. When a new
record is added these holes are used first before any records are
UDBS Version 5.3 Page 28
physically added to the file. Therefore certain files will never
get smaller after a Purify is finished but will remain the same
size until all the empty records (holes) are filled. The only
data files that are still packed are the files with the .XRF
extension. This is so all file transfers stay in the proper date
order. The amount of time required to pack both of these file has
always been minimal, perhaps several minutes each.
You can stop purify and start it again at a more convenient time
if desired. If you wish to stop processing after purify has
started, press the Space Bar. When the code gets to a point where
it can break, you will be returned to the File Maintenance menu.
PLEASE be patient as it may take a minute or so reach the end of
a pass, so DON'T keep hitting the Space Bar. This is the only way
to stop a purify in progress, otherwise PERMANENT file damage may
result (If you reboot for instance).
Before purifying the database, it is a good idea to check the
undelete function to make sure that there aren't any users marked
for deletion that you might want to keep. Once purified, deleted
records are gone for good!
** IMPORTANT **
Just a note to users running single node systems under a multi-
tasking system. I have placed file locking code into the program,
to prevent other programs (such as the doors) from accessing the
files during purify, but this will not be active unless the SHARE
program is loaded before your multi-tasking system is started. In
general, if you don't use SHARE, then I strongly recommend that
you run purify OFF-LINE (or disable the doors if you have them).
Undelete User
When a user record is deleted, a flag within that record is set
to mark a deleted status. This function is used to clear this
flag and restore a record to a normal condition. When you select
this option, a list appears showing all deleted user names. Press
F1 to select a name for undeletion (This name you must enter in
its entirety, partial names are not accepted here). After you
enter the user name, the database is checked to make sure that a
current user by that name doesn't already exist (say you deleted
UDBS Version 5.3 Page 29
a user, and he called back). If it does exist, the undelete
request is aborted to prevent duplicate records from being
created, otherwise the username is restored.
Add Download Credit
Add Upload Credit
Use this function to add file credits to a users record. Up to
ten credits can be added at one time. Enter the filenames if
known. If the filename is not known, press F1 and the name
'Credit' will be used. The transfer date on reports will be shown
as 'Credit' if a filename was used, and as a transfer with
filename unknown if F1 (Credit) was used. Press Enter if no more
names are to added. The users Up/Download counts are also
adjusted.
Delete Download Credit
Delete Upload Credit
Use this function to delete file credits from a users record.
After the users name is entered, the screen will display the
names of the files that the user has transferred. (The word
'Credit' appears when the name of the transfer is not known). The
file in the upper left corner will be highlighted. Use the cursor
arrows keys to move the highlight. Select files for deletion by
depressing F1. After a file has been selected, it blinks. A
selected file may be un-selected by depressing F1 again. When all
files you wish to delete have been selected, press F10, and those
files will be deleted. The users Up/Download count will be
adjusted. The transfer protocol counts will also be adjusted.
Deleted credits cannot be undeleted, they must be reentered with
the Add Credit function (above).
Database Size Information
This selection brings up a window showing you the number of used
records (items stored) and the number of empty records (holes) in
each file. Press any key to return to the main menu.
Change User Name
Use this function to change the name of a user record (for in-
stance a handle being changed to a real name). Enter the name
that you wish to change (partial names are accepted). The name
will be displayed along with a prompt asking for the new name.
The new name must be no longer than 25 characters, a gauge bar is
UDBS Version 5.3 Page 30
provided to help you judge the length. The database is then
checked to see that the new name you have entered doesn't already
exist. If it does, the change request aborts, otherwise the
change is made and you are returned to the menu.
Subscriptions
Use this function to enter, change or check for subscription
expirations. When selected, a window appears asking if you would
like to check an expiration or enter/change a date.
If you choose "check" (A), you will be asked if you would like to
use today's date as the basis for expiration. If you choose
"yes", then all subscriptions that have or are expired are shown.
If you answer "no" to this question, you will be asked to supply
the number of days until expiration. Enter any value (from 1 to
32000). All subscriptions having this many days or less are
shown. You can use this to determine which subscriptions are
about to expire.
If you choose "Enter/Change" (B), a window will appear asking for
a users name. After you enter the name (partial names accepted),
the users subscription date will be shown (if one exists) and the
number of days remaining until expiration. To enter a
subscription date, supply the month at the prompt "Month? [C/R =
no change or reset]" followed by the day and year. To leave the
existing date or reset an existing subscription to "Non sub-
scriber" status, press return at this point (you will then be
asked if you wish to clear the date).
Comments
Use this function to add comments to a users record. You will be
able to enter two comment lines to each users record if desired.
The first comment line is visible to the user when they use the
Query door. The second line is ONLY visible to you. When you
select this function a window appears asking you if you would
like to (A) enter/change/delete user comments, (B) scan for text
in the comments file, or (C) delete all comments.
If you choose (A), a window will appear asking for the users name
(partial names are accepted). After the name is entered, one of
two comment screen will appear. 1) If no comments have been
entered for this user, you will get the "enter comments" screen.
You may enter one or both comment lines at this time (you can
enter line one, and leave line two blank, or visa-versa). If you
do not wish to enter a comment to this user at this point, leave
BOTH lines blank, and no comment will be added. 2) if comments
already exist for this user you will get the "edit comments"
screen. The current comment lines will be shown at the top of the
screen, and the first comment line will be placed on the edit
line. The available editing functions are listed at this time on
UDBS Version 5.3 Page 31
the screen so I won't explain them here. After you finish editing
the first line and press enter then second comment will be placed
on the edit line. Press enter when finished. If you wish to
delete the comments for this user, press ESC to delete each
comment line. If BOTH comment lines are NULL when you finish
editing, the comment record will be deleted.
If you choose (B) "Scan Comment File For Text", you will asked to
supply the text to scan for. This is similar to the "scan for
user name" function. The comment records containing any portion
of the text you enter will be shown along with the user name they
are associated with. You could for example find all your
registered users, if for example you placed in one of the comment
lines "registered" and then scanned for that word.
If you choose (c) "Delete All Comments", you will be prompted to
make sure this is what you really wish to do. If you answer yes,
all comments for every user will be deleted. You cannot undo this
operation once selected.
Rebuild Index Files
Over time, especially after periods of heavy additions and dele-
tions to the index files, the keys may become "unbalanced". This
results in a decline in access speed. There is no recommended
interval I can offer to you for performing this function. If you
begin to notice search times slowing down, this might help. This
function deletes the existing index files and rebuilds the keys
from scratch. What you may gain is a smaller index file since all
of the deleted keys are gone. Three index files are rebuilt, One
for the main database file, one for the download name file, and
the last for the upload name file. As each file is being rebuilt,
an on screen percentage indicator is constantly updated informing
you of its progress. You cannot stop this operation once you
start it. The time it takes to rebuild depends on the size of
your files.
Reset Bulletin Flag
As explained earlier, once you set a bulletin parameter (1-5) to
monitor a particular bulletin (1-99), you can't use that
parameter to monitor a new bulletin since many flags could
already be set to a 'Yes' state. If you decide to change a
bulletin slot (1-5) to monitor a different system bulletin you
can use this function to reset each of the bulletin flags for all
users back to a 'No' state. You can also use this function to
reset a bulletin flag on a single user, allowing you to monitor
if that user has re-read a particular system bulletin.
When you select this function you will be presented with a menu
asking you which bulletin flag you wish to reset. After you
UDBS Version 5.3 Page 32
select the flag, another menu will appear asking if you wish to
delete all flags (Global), or a single user's flag. If you choose
the Global option, all of the flags for this bulletin will be
reset to 'no' state. If you choose single user, you will be
prompted for a name. Enter the name, if the name if found, the
bulletin flag will be reset. If the name is not found, a menu of
close matches will be presented to you. Picking a name from this
list resets the bulletin flag for that name.
Merge Two Data Records
This selection give you the ability to merge an older data record
into a newer one. The typical use would be when a user name has
changed and two data records for the same physical person exist.
When you select this function, you will first be asked for the
primary data record. This is the record you will be keeping. The
data from the second record will be merged into this record. You
may enter a full or partial name as with other functions. If a
partial name is entered, you will be presented with a list of
close matches. After you enter the primary record name, you will
be asked to enter the merge record. Again you may enter a full or
partial name. After both records have been selected, you will be
asked to confirm the merge. The default answer to this question
is No. After the merge take place, the second record is deleted.
All numerical information is summed into the respective fields of
the first record and the file transfers from the second record
are added to the end of the list of the primary record.
UDBS Version 5.3 Page 33
Problems & Support
This program was written in my spare time as a hobby, this is not a
full time business for me. I do take my programs seriously, so I will
of course try my best to fix any problems you may turn up. However, I
cannot fix what I cannot duplicate. If I cannot duplicate your
situation, please be prepared to submit to me copies of your database
files, callers log, or whatever else might be required (Once I needed
someone's USERS file). I am not interested in the content of these
files, only the condition causing the problem. If you cannot agree to
this then the condition may have to go unsolved until either I come
across it by chance, or another user finds it and cooperates.
I can be reached in a number of ways:
Nationally via INTERLINK in the UDBS support conference.
On the SailBoard BBS (Wayne, NJ). The number is 1-201-831-8152.
This is my home board, and the origin point for the UDBS
INTERLINK conference (#4). Registered users also receive support
via the system's USR Courier HST.
At the address in the beginning of this manual.
The UDBS conference (#4) on the SailBoard is set up as the dis-
tribution area for all registered software. If you call with a problem
report or leave it on the network, please leave the exact version
number and name of the program in your message. It would also be
helpful to provide the file size and time/date stamp. Try to be
specific with your description of the problem. All programs are
subject to change without notice. You should REGULARLY check the UDBS
support conference (either on the Sailboard or on INTERLINK) for news
of periodic updates and fixes.
Acknowledgements
I would like to thank the following people for their help:
Richard Jerothe, Sysop of the SailBoard (1-201-831-8152) for
letting me help Sysop his board. Without this I never would of
had access to the files necessary for the development of this
program.
To the BETA testers. These Sysops have been the utmost help in
furthering the usefulness of these programs, as well as their
comments, criticism, suggestions, and good ideas. They have all
at one time or another provided help in testing this program.
Their cooperation has been extraordinary. They run excellent
systems, and you should give them a call.
Gerhard Barth, of the Tamiami BBS (813-793-2392)
Phil Gordemer, of Compu-Data (609-232-1245)
UDBS Version 5.3 Page 34
Jim Oxford, of Torii Station (405-733-7083)
Andy Keeves, of The Executive Network (914-667-4567)
Scott Pazur, of the Flea Market (201-446-1665)
Mark Rapp, of the MicroSellar (201-239-1346)
Gary Thurlow, of Genesis First State PCBoard (302-475-7598)
...and others.
To ALL the registered users, Thanks for your support, and most of
all your confidence.
Disclaimer/Warranty
Jeff Sumberg makes no warranty of any kind, express or implied,
including without limitation, any warranties of merchantability and/or
fitness for a particular purpose. Jeff Sumberg shall not be liable for
any damages, whether direct, indirect, special or consequential
arising from a failure of these programs to operate in the manner
desired by the user. Jeff Sumberg shall not be liable for any damage
to data or property which may be caused directly or indirectly by use
of this program.
IN NO EVENT WILL I, Jeff Sumberg, BE LIABLE TO YOU FOR ANY DAMAGES,
INCLUDING, BUT NOT LIMITED TO, ANY LOST PROFITS, LOST SAVINGS OR OTHER
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF YOUR USE OR IN-
ABILITY TO USE THE PROGRAM, OR FOR ANY CLAIM BY ANOTHER PARTY.
I MAKE NO WARRANTY OR CLAIM THAT THESE PROGRAMS WILL FUNCTION ON EVERY
CONCEIVABLE COMBINATION OF HARDWARE AND/OR SOFTWARE.
Trademarks
DoubleDos is a registered trademark of SoftLogic Solutions Inc.
Microsoft is a registered trademark of Microsoft Corporation.
DESQview is a registered trademark of Quarterdeck Office Systems.
PCBoard is a product of Clark Development Corporation.
Taskview is a trademark of Sunny Hill Software.
UDBS Version 5.3 Page 35
Appendix A - Getting Your Database Started
Getting started is relatively simple, if you keep your old callers
logs archived then that is even better. The first thing you want to do
is properly set up your configuration file. Take a look at the sample
that came with the programs. Most sites can use the setting of the
INPUT= and OUTPUT= parameters as is. If not, simply change the names.
You can also add the MBQ=, BULLETINX=, USERS=, and NEWADDITIONS=
parameters at this time if you wish. The next step is to run Useact.
At the command prompt type:
C>USEACT
If Everything is set up properly, you will be asked if you wish to
create the database files. Answer 'Yes'. You should now see the
analyzer stepping through each call. When the end of the log is
reached (or space runs low, whichever comes first), control will pass
to the database functions. Here you will see names being added to the
database along with the file transfers. When this section completes,
Useact will either end, or continue with the next section of the log.
When Useact finishes, you will then be able to try out Query.
If you have kept all or some of your back callers logs, the easiest
way to get going is to join them all together into one file. Make sure
that the logs are joined in the proper order and that no overlap of
dates exist. Be sure that at the point where one log ends and the next
one starts there is a line of asterisks. Useact uses this line to
separate calls. If you join logs together into one huge caller log be
prepared for Useact to take a while (not as long as previous
versions). After Useact is finished, you can use the SYNC utility if
you desire to set the downloads, uploads, times on, and subscription
dates to correspond with your users file.
Please note that if you plan to splice callers logs together into a
huge file for processing, that you cannot mix logs from versions 10,
11, 12, or 14. You must process them separately according to the
instructions in the configuration section (see VERSION=).
UDBS Version 5.3 Page 36
Appendix B - Common Problems
Here is a list of common problems people have encountered, and their
typical solutions.
Problem: The first 3 characters of every user name are missing.
Solution: You are using a single node version of PCBoard (ie: /S, /D,
or /En version with no network) and you forgot to add the
line "SINGLENODE" to your UDBS.CFG configuration file.
Problem: Useact stops during the event, hangs my system up all night
waiting to tell me about possible record duplication.
Solution: Something is wrong with the way you split the daily log
file(s) up so that an overlap of time/dates is occurring. Or
you are running a Multi-Node system and have copied two (or
more) logs together from the same period and didn't use the
"OVERLAPCHECK=NO" parameter in the UDBS.CFG file.
Problem: Useact Stops during the event, hangs the system up again
with the error message "Illegal Function Call".
Solution: Add the line "EVENT" to the UDBS.CFG file to inform Useact
to ignore the error and continue.
Problem: You want to delete all user comments.
Solution: DO NOT delete the comments file (Comments.Dat). Use the
"Delete All Comments" function located in the comments
selection of the file maintenance menu.
Problem: Useact doest count certain items correctly, or at all.
Solution: If you changed certain text lines that are written to the
callers log with the MKPCBTXT program, Useact does not
recognize then new line. Therefore its as if it never
occurred in the log. My feeling is you shouldn't change
standard responses. A file containing all scanned text is
available on request.
Problem: I get a "Bad Record Number" error or an "Error #63" message.
Solution: Your data files have become corrupted because they were not
closed properly after being updated. There is NO cure for
this condition except a BACKUP copy. If Useact, Modify, or
Up/Downcred are interrupted/booted/power loss/crash/etc
while updating files ASSUME the files are bad and use your
current backup.
Problem: "I know somebody downloaded a certain file, I see it in the
callers log. But when I go to function G in Query [Who
UDBS Version 5.3 Page 37
Downloaded...] I see user names, but not the one I saw do
the download. Why?"
Solution: Because of a bug caused by a caller log format change around
May/June 1990, Useact 5.25 parsed 12 character file names
with an extra space (13 character). This awakened a dormant
bug in the index library which caused Useact to create a new
transfer record. However this new transfer record was not
connected to the existing transfer records for that
filename, so you dont see them. This can be fixed with the
REPAIRDL utility. NOTE: If the REPAIRDL utility is not
within this ZIP file, please contact me for it.
UDBS Version 5.3 Page 38
Appendix C - The Sync Utility
This utility is used to set the upload, download, registration date,
and times on system counts for a user to be the same as the values
stored in the Users file. When a user is first added to the database,
all counts start at zero. But this user may have been on your system
numerous times in the past, and might have many file transfers. If you
save your past callers logs you could initialize your database this
way (This would be the best way). Otherwise you would then run this
program to set this users record 'up to date' with his past activity.
Of course the names of the past file transfers will be unknown, and
the total time value off, but at least the transfer counts are
accurate. The registration date found in the PCBoard users file will
be copied into the UDBS files if it is set to something other than
zero (if the UDBS file contains a date, and the USERS file date is
zero, the UDBS file will also be reset to zero). This way you only
need to enter registration or subscription dates in one place, and can
still utilize the subscription functions of UDBS.
This program can be run in three ways. The first two are interactive
and is done from the command line. When you run the program in this
way you will be given the choice to modify one user, or do the entire
database.
The third way is out of EVENT.SYS (batch mode), and this is probably
the best way as it does the entire database daily (or whenever), and
it does it without your intervention. To use the batch mode add the
following line to EVENT.SYS (if you use automatic daily update as
explained earlier, place this line after the update):
SYNC /F
Note: You cannot use the SYNC program in you are running version
10 of PCBoard because of the differences in the USERS file.
See the note under the Version=10 parameter.
UDBS Version 5.3 Page 39
Appendix D - The NewCalls Utility Program
As explained earlier, two methods can be used to obtain the Callers
logs records for the past 24 hours. The first method, using Newcalls,
is explained below. The second method is explained at the end of this
section.
NewCalls.Exe is a utility program designed to make daily database
updates simpler than they have been in the past. This program copies
the newest section of the callers log to a separate 'extraction' file.
This extracted section of the callers log is what is then run through
the UDBS database update program 'Useact'. After NewCalls has ex-
tracted the section from the callers log, it records the last record
extracted from the log (in a control file). When NewCalls is run
again, it knows immediately from this recorded record number where to
start the new extraction. All new calls (NewCalls) are then extracted
from this point till the end of the log file, then the new 'end point'
is recorded. This process continues daily in your event, and your
original callers log is not touched. The extracted file is
overwritten at the next run of NewCalls, and will never be larger than
one days worth of calls (except for perhaps the first run of Newcalls,
when the first end point is established). NewCalls contains logic to
sense the fact that a new callers log has been created by testing to
see if the point of extraction is greater than the number of records
in the callers log. If the callers log is deleted, NewCalls resets
automatically to record one, and starts over. If NewCalls senses that
the log is the same size as the last run, no records are extracted,
and NewCalls ends.
This program uses the premise that the callers log is a fixed record
length random access file. These records are 64 characters in length
containing 62 significant characters (the logged data) followed by a
Carriage Return and Line Feed (62 + CR/LF = 64). Therefore anything
that writes to the log (including ALL third party programs) MUST
maintain this system. All programs that I know of do, otherwise you
would see problems when you do the Sysops command "1 V" to view the
log in reverse order. If records were less or greater in length, lines
would appear out of sync (split in the middle). The same goes for this
program. If any records are more or less than 64 characters, then ALL
lines after that point will be improperly extracted.
It should be noted that if you create a callers log that is only 1 day
in length (deleted at each event), then this program should not be
used. This program is for Sysops that keep an ongoing daily log, and
delete it at some random time (weekly, monthly, etc.).
NewCalls is driven off the command line, it does not read or use the
UDBS configuration file. NewCalls has the following format:
NEWCALLS controlfile callerslog extractfile
UDBS Version 5.3 Page 40
Before you can use NewCalls in your event, you must first initialize
the control file. If you fail to do this step first, then NewCalls
will 'hang' your event waiting for a response from you. Initialize
your control file as follows:
NEWCALLS Node.Rec x x
Notice that THREE parameters are supplied here also. In this case two
'x' characters are used to fill the input and output file spaces, in
actual use these would be valid file names. the control file
'Node.Rec' is arbitrary, and you can select ANY valid filename,
however multi-node systems will generate one control file for each
node (to record the last position of each callers log). This file is
written in the current directory, which in most cases is \PCB (but
does not need to be). When NewCalls detects that no control file
exists, it will prompt you to be sure that you want to initialize a
new file of the name you specified. Answering 'Yes' to the prompt
creates and initializes the control file, and NewCalls ends. You are
now ready to place NewCalls in your event.
Add the call(s) to NewCalls to your event before you call Useact. For
this example I'm assuming a standard single node PCBoard setup using
the standard directories. The syntax would be:
NEWCALLS Node.Rec \PCB\MAIN\CALLER EXTRACT
In this example NewCalls will read the control file 'Node.Rec' and
create an output file called EXTRACT. The output filename may be any
name you choose, and can even be directed to another drive or direc-
tory.
So, as an example, your Event.Sys might look like this:
.
.
.
Newcalls Node.Rec \PCB\MAIN\CALLER EXTRACT
Useact
Sync /F (Optional step, see Appendix C)
.
.
Now if you run two or more nodes, you would create multiple control
files. You could for example name the control files 'Node1.Rec',
'Node2.Rec', etc. In this case your event file would look like this:
Newcalls Node1.Rec \PCB\MAIN\CALLER1 EXTRACT
Useact
NewCalls Node2.Rec \PCB\MAIN\CALLER2 EXTRACT
Useact
Sync /F (Optional step, see Appendix C)
UDBS Version 5.3 Page 41
Remember to set the INPUT= statement in your UDBS.CFG file to reflect
the name of the file you are using as the extract file, which in this
example is EXTRACT.
The second method of updating in your event is explained below, and
was created by Mark Rapp, Sysop of the MicroSellar BBS. This method
was used before the creation of the Newcalls utility, and requires a
few extra steps. These are his instructions that follow.
1) In your PCBsetup program, change the name of the callers file to
something like "DAYCALn" ("n" being a node number if used with
Multi-Node systems, in which case you would probably copy the two
files into one).
2) In your EVENT.SYS file place the following lines:
CD \your database directory
USEACT EVENT (EVENT to indicate batch mode)
SYNC /F (This is optional, see Appendix C)
COPY CALLER+DAYCALn
DEL DAYCALn
CD \your board (or other) directory
.
. (Other programs that use the callers log)
.
Processing will occur at your prescribed time. Note that DAYCALn is
concatenated to a 'final' CALLER file during the event. (If you are
running any other utility that needs to read the 'final' CALLER file,
make sure that it is run after running Useact.) You still end up with
a callers file that you can keep for your records at regular inter-
vals, and a database that is up to date.
UDBS Version 5.3 Page 42
Appendix E - Conversion From Version 4 to Version 5
With the initial release of UDBS Version 5, two conversion programs
were provided in the release package (CONVDL & CONVUL) to convert your
V4 database to V5 format. Since it has been almost six months since
version 5 was released it is assumed that by this time (May '89)
everyone has converted from version 4 to version 5 that needs to do
so. Therefore the two conversion programs are no longer distributed
with this package.
The conversion programs are still available from me if you need them.
They will be posted on the Sailboard BBS (201-831-8152) in conference
#4. The original content of this chapter (the instructions for conver-
sion) will also be included with them.
UDBS Version 5.3 Page 43
Appendix F - What Registered Users Get
Aside from getting full support, you also have the ability to suggest
new additions to be implemented into UDBS. When you register your copy
of the User Database System you will receive the following additional
programs:
QRYDOOR This is the user inquiry door. This door allows the user to
view their own personal system statistics. They may also
view their download and upload transfer list. This is
similar to function A in the Query program.
UPLDOOR This is the upload inquiry door. Users will be allowed to
ask "who uploaded this file" to your system. They will be
shown the name of the uploader, the date of the upload, and
if any downloads (how many) have been made on the file. This
program is similar to several competitors programs that use
Download.Txt, except the Upldoor finds the information
immediately from the database, it doesn't have to scan for
it.
DOWNCRED Do you run a system that has download ratios? If so then
this program is for you. Using this program you can offer
ratio-free programs to your users. It could perhaps be your
master file list, or some special file you want to offer to
your users. This program runs in the event and credits the
download automatically in both the UDBS and USERS files. The
program can also be used to help keep your database free of
junk such as Qwikmail downloads (*.QWK files). In this case
Downcred will remove the file from UDBS but not credit the
USERS file.
UPCRED Similar to Downcred. Primarily used to remove repetitive
uploads of the same file from your database (Such as Qwik-
mail *.REP files).
CMTUTIL This program copies the comment fields in your USERS file to
the UDBS comment fields. This way any comments that your
users enter (such as addresses, machine/modem type, etc) are
viewable when a users record is viewed. The user can also
see the public comment field when the Query door is run.
This program runs during your event.
Several other minor utilities are available to all users. These are
posted on the Sailboard BBS. Other utilities are planned for the
future.
UDBS Version 5.3 Page 44
Index
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 34
Add Download Credit . . . . . . . . . . . . . . . . . . . . . . . . 30
Add Upload Credit . . . . . . . . . . . . . . . . . . . . . . . . . 30
All Files Downloaded By A Specific User . . . . . . . . . . . . . . 24
All Files Uploaded By A Specific User . . . . . . . . . . . . . . . 24
Alloy's PC/slave card . . . . . . . . . . . . . . . . . . . . . . . 7
Backups
Automatic . . . . . . . . . . . . . . . . . . . . . . . . 10, 28
Filenames Of . . . . . . . . . . . . . . . . . . . . . . . . . 10
Importance of . . . . . . . . . . . . . . . . . . . . . . . . 8
Inhibiting . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Baud Rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
BULLETINx= . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Change User Name . . . . . . . . . . . . . . . . . . . . . . . . . 30
Command Line Mode . . . . . . . . . . . . . . . . . . . . . . . . . 21
Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Delete All Comments . . . . . . . . . . . . . . . . . . . . . 32
Enter/Change/Delete . . . . . . . . . . . . . . . . . . . . . 31
Scan For Text . . . . . . . . . . . . . . . . . . . . . . . . 32
COMMENTS.DAT . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Common Problems . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Config.Sys . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Configuration Parameters, Where Used . . . . . . . . . . . . . . . 20
Conversion From Version 4 to Version 5 . . . . . . . . . . . . . . 43
Copying and Distribution . . . . . . . . . . . . . . . . . . . . . 6
Database Files, Location of . . . . . . . . . . . . . . . . . . . . 11
Database Size Information . . . . . . . . . . . . . . . . . . . . . 30
DATABASE.DAT . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Delete Download Credit . . . . . . . . . . . . . . . . . . . . . . 30
Delete If Not In User File . . . . . . . . . . . . . . . . . . . . 28
Delete Upload Credit . . . . . . . . . . . . . . . . . . . . . . . 30
Delete User . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
DesqView . . . . . . . . . . . . . . . . . . . . . . . . . . . 7, 35
Display New Users Only . . . . . . . . . . . . . . . . . . . . . . 11
Distribution Contents . . . . . . . . . . . . . . . . . . . . . . . 6
Doors and Node Chat . . . . . . . . . . . . . . . . . . . . . . . . 25
DoubleDos . . . . . . . . . . . . . . . . . . . . . . . . . . . 7, 35
DOWNLOAD.NAM . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
DOWNLOAD.XRF . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Error Handling in Useact . . . . . . . . . . . . . . . . . . . . . 21
File Maintenance Functions . . . . . . . . . . . . . . . . . . . . 28
File Transfers During a Specific Period . . . . . . . . . . . . . . 24
Filename.HDR . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Filename.IDX . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
FILES= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Index File Names . . . . . . . . . . . . . . . . . . . . . . . . . 10
Index File Structure . . . . . . . . . . . . . . . . . . . . . . . 8
INPUT= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
INTERLINK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
UDBS Version 5.3 Page 45
Language File Format . . . . . . . . . . . . . . . . . . . . . . . 18
Languages= . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
LanguageX= . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
LOG= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
MASTER.DAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Merge Two Data Records . . . . . . . . . . . . . . . . . . . . . . 33
Microsoft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Microsoft Windows . . . . . . . . . . . . . . . . . . . . . . . . . 7
MKPCBTXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
MODIFY.EXE . . . . . . . . . . . . . . . . . . . . . . . . . . 6, 28
Monitoring Bulletins Read . . . . . . . . . . . . . . . . . . . . . 13
Multi-Node Systems . . . . . . . . . . . . . . . . . . . . . . . . 10
Network File Access . . . . . . . . . . . . . . . . . . . . . . 10, 12
NEW=YES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
NEWADDITIONS=NO . . . . . . . . . . . . . . . . . . . . . . . . 12, 26
NewCalls Utility Program . . . . . . . . . . . . . . . . . . . . . 40
OUTPUT= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
OVERLAPCHECK= . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
PATH Statement (DOS) . . . . . . . . . . . . . . . . . . . . . 7, 16
PCBNDX= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
PCBoard
Beta Releases . . . . . . . . . . . . . . . . . . . . . . . . 8
Bulletins . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Changes, To Callers Log . . . . . . . . . . . . . . . . . . . 8
Changes, To USERS File . . . . . . . . . . . . . . . . . . . . 12
Event.Sys . . . . . . . . . . . . . . . . . . . . . . . . 15, 21
Multi-Node systems . . . . . . . . . . . . . . 10, 15, 37, 41, 42
Single Node Systems . . . . . . . . . . . . . . . . . . . . . 14
Trademark . . . . . . . . . . . . . . . . . . . . . . . . . . 35
USERS File, Record Length . . . . . . . . . . . . . . . . . . 13
USERS file, Where Its Used . . . . . . . . . . . . . . 11, 13, 28
PCBTEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Period Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Preventing Database Additions . . . . . . . . . . . . . . . . . . . 12
Problem Reports . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Purify . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10, 28
Stopping . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
What It Does . . . . . . . . . . . . . . . . . . . . . . . . . 28
PURIFYBACKUP=NO . . . . . . . . . . . . . . . . . . . . . . . . . . 11
QUERY.EXE . . . . . . . . . . . . . . . . . . . . . . . . . . . 6, 23
QuickBasic run-time library . . . . . . . . . . . . . . . . . . . . 7
Rebuild Index Files . . . . . . . . . . . . . . . . . . . . . . . . 32
Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
REPORT= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Reset Bulletin Flag . . . . . . . . . . . . . . . . . . . . . . . . 32
RESETBUL.EXE . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
SailBoard BBS . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Scan For User Name . . . . . . . . . . . . . . . . . . . . . . . . 27
UDBS Version 5.3 Page 46
Show New Users On Specified Date . . . . . . . . . . . . . . . . . 27
SINGLENODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Sync Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
SYNC.EXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
System Requirements . . . . . . . . . . . . . . . . . . . . . . . . 7
Taskview . . . . . . . . . . . . . . . . . . . . . . . . . . . 7, 35
Text Matching Rules . . . . . . . . . . . . . . . . . . . . . . . . 19
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
UDBS.CFG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
UDBS50.EXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Undelete User . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
UPDATE=YES . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
UPLOAD.NAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
UPLOAD.XRF . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
USEACT.EXE . . . . . . . . . . . . . . . . . . . . . . . . . . 6, 21
USEACTBACKUP=NO . . . . . . . . . . . . . . . . . . . . . . . . . . 11
User Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Users Disconnected For Daily Time Limit . . . . . . . . . . . . . . 24
Users Exceeding DL/UL Ratio . . . . . . . . . . . . . . . . . . . . 25
Users That Downloaded A Specific File . . . . . . . . . . . . . . . 24
Users That Never Left A Message . . . . . . . . . . . . . . . . . . 25
Users That Page Sysop . . . . . . . . . . . . . . . . . . . . . . . 27
Users Who Never Download . . . . . . . . . . . . . . . . . . . . . 23
Users Who Never Upload . . . . . . . . . . . . . . . . . . . . . . 23
Users With Keyboard Timeout Disconnects . . . . . . . . . . . . . . 24
Users With Security Violations . . . . . . . . . . . . . . . . . . 26
USERS= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
VERSION= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
What Isn't Supported . . . . . . . . . . . . . . . . . . . . . . . 8
What Registered Users Get . . . . . . . . . . . . . . . . . . . . . 44
Who Uploaded A Specific File . . . . . . . . . . . . . . . . . . . 24
UDBS Version 5.3 Page 47