home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Beijing Paradise BBS Backup
/
PARADISE.ISO
/
software
/
BBSDOORW
/
RACE200.ARJ
/
ERACEM.DOC
< prev
next >
Wrap
Text File
|
1993-02-27
|
20KB
|
550 lines
eRACEm Version 1.00
A RemoteAccess User/Answer File Pack/Sort Utility
Copyright 1991, 1993 Michael F. Janke. All Rights Reserved.
Introduction . . . . . . . . . . . . . . . . . . . . . . . . 1
Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . 1
Features . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Licensing . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Using eRACEm . . . . . . . . . . . . . . . . . . . . . . . . 3
Configuration . . . . . . . . . . . . . . . . . . . . . . . . 3
Packing the user base . . . . . . . . . . . . . . . . . . . . 3
PACK Switches . . . . . . . . . . . . . . . . . . . . . 3
-P . . . . . . . . . . . . . . . . . . . . . . . . 3
-D . . . . . . . . . . . . . . . . . . . . . . . . 4
-M . . . . . . . . . . . . . . . . . . . . . . . . 4
-G . . . . . . . . . . . . . . . . . . . . . . . . 4
-K . . . . . . . . . . . . . . . . . . . . . . . . 4
-L . . . . . . . . . . . . . . . . . . . . . . . . 4
-O . . . . . . . . . . . . . . . . . . . . . . . . 4
-C . . . . . . . . . . . . . . . . . . . . . . . . 5
Packing the answer file . . . . . . . . . . . . . . . . . . . 5
Answer file pack switches . . . . . . . . . . . . . . . 5
-A . . . . . . . . . . . . . . . . . . . . . . . . 5
-R . . . . . . . . . . . . . . . . . . . . . . . . 5
-Z . . . . . . . . . . . . . . . . . . . . . . . . 5
eRACEm PACK examples . . . . . . . . . . . . . . . . . . . . 5
Sorting the user file . . . . . . . . . . . . . . . . . . . . 6
Sorting on Primary and Secondary keys . . . . . . . . . 6
Allowable sort fields . . . . . . . . . . . . . . . . . 7
Ascending and Descending sort . . . . . . . . . . . . . 7
Using eRACEm's sort . . . . . . . . . . . . . . . . . . . . . 7
Sort command line switch . . . . . . . . . . . . . . . . 7
Sort parameters . . . . . . . . . . . . . . . . . . . . 7
eRACEm version 1.00 User Documentation
CHAPTER 1 - Introduction
eRACEm is a companion program to the popular RACE, RemoteAccess
Caller Editor. eRACEm has replaced the built-in user base
packing and sorting previously contained in RACE and has had
numerous improvements and additions.
eRACEm is designed for, and must only be used with, the new RA
2.0 user files. eRACEm will NOT work with, and could damage,
user files created by RemoteAccess v1.11 and below. eRACEm
attempts to verify that the user files are RA 2.0 user files, but
this test is not guaranteed.
1. Disclaimer
eRACEm is supplied as is. If you use eRACEm, you accept any
damage or loss that may occur with your user files. If you
cannot accept this condition, DO NOT use this program.
I made every effort to insure eRACEm is safe to use. It has been
used on numerous systems for extended periods of time, but things
can and do go wrong. The best insurance is a current backup.
eRACEm makes no attempt to share the user files with any other
task. If you attempt to pack or sort the user files while RA is
active, you are asking for trouble.
2. Features
* Purge users based on number of calls, user age, security
level, group and days since last call.
* Sort users in ascending or descending order on any one or
combination of 16 different fields.
* Pack an answer file of answer sets marked deleted within
the RACE validation routines, answers from users that no
longer exist in the user base and duplicate answers.
(Answer file maintenance is a registered only feature)
1
eRACEm version 1.00 User Documentation
CHAPTER 2 - Licensing
eRACEm is considered part of the RACE package and as such, falls
under the guidelines of the licensing agreement contained within
RACE.DOC.
RACE and eRACEm are shareware and require a $15 (U.S. funds)
registration fee. This fee applies whether you just want to use
eRACEm, RACE or both. A registration form has been provided in
the RACE distribution package.
2
eRACEm version 1.00 User Documentation
CHAPTER 3 - Using eRACEm
3. Configuration
eRACEm is entirely command line driven and requires almost no
configuring. eRACEm does get path information from RACE.CFG so
you will need to run RACECFG.EXE and edit the file path
information to coincide with your particular setup.
If you haven't done so already, run RACECFG.EXE and move the
highlight to the main menu FILES option. Hit <ENTER> to pull
down this menu, move the highlight bar down to SYSTEM FILENAMES
and hit <ENTER> again.
Once in the SYSTEM FILENAMES menu, you can enter the information
necessary to fit your system. "System path" is the drive and
directory containing RA. "Users.bbs" is the full path AND
filename of the user file. It is not necessary to define
"Answerfile" if you are only using eRACEm with this RACE.CFG.
4. Packing the user base
Packing the user base only requires supplying a few command line
switches to eRACEm. Any number of pack switches may be used in
combination. All switches must be preceded by a hyphen or slash
character and each switch must be separated by at least one space
from other switches. In other words, "eRACEm -d60 -m10" is the
same as "eRACEm /d60 /m10" and either method or combination of
both may be used. Stacking of switches, i.e. "eRACEm -d60m10" is
NOT permitted.
a. PACK Switches
Switches are listed below in no particular order.
Also, each switch is surrounded by the "<>" characters
for clarity only. DO NOT use these characters on the
command line.
<-P> The <P> switch is used only when you wish to
purge the user file of users that have the deleted flag
set. There is no need to use this if you are using
other switches because RACE will always purge users
that are marked deleted in that case.
3
eRACEm version 1.00 User Documentation
<-Dn> The <D> switch requires a second parameter (n)
that defines the number of days between the current
date and the last date the user called before the user
will be checked further to see if any other command
line parameters have been met.
The <D> switch is a required switch and all other
switches, with the exception of the <P> switch, will do
nothing if a days parameter is not provided. One
drawback to this requirement is that eRACEm will not
delete users with a last call date less than one day
ago unless the user is marked deleted.
<-Mn> This switch defines the <M>aximum security level
that will be affected by the current pack. This is
slightly different than RA's RAUSER utility which will
only purge users BELOW the <M> parameter.
In other words, using -M10 would allow eRACEm to purge
users with a security of 10 or below while RAUSER would
only purge users with a security of 9 or below.
<-Gn> Purge users in <G>roup n.
<-K> If this switch is supplied on the command line,
the user NO-KILL flag is ignored and it will not
protect the user if all other parameters are met.
<-L{filename}> The <L> switch writes a log file
containing information on which users were deleted. If
a plain <L> is used, the log file is RACEPACK.LOG You
may supply a filename so that eRACEm will write to a
file of your choosing. For example, "-Lmylog.dat" will
create a file called MYLOG.DAT in the current
directory. NO check is made and if a file by that name
already exists, eRACEm will append the log information
to that file.
<-O> This switch tells eRACEm to write/append to two
files in the user directory. These files are called
USERS.OLD and USERSXI.OLD. These files will contain
the full user record of each deleted user. With this
feature, you can go into RACE and use the Whoops!
feature to restore a user that was purged from your
user base. Be advised that each user consumes just
over 1K of disk space. If you use this command line
switch every day and delete a lot of users, these .OLD
files could grow quite large. Neither eRACEm or RACE
maintain these files in any other way that just
described.
4
eRACEm version 1.00 User Documentation
<-Bn> purge users below n years old.
<-Cn> Purge users that have called n times or less.
This could be used to purge users that call one time
and never come back.
5. Packing the answer file
eRACEm has the capability of packing a RA generated questionnaire
answer file if two criteria are met. First, you must be a
registered user of RACE/eRACEm. Second, you must be using the
validation feature of RACE v2.00. Validation creates an index
into the answer file that eRACEm needs.
a. Answer file pack switches
<-Afile> The <A> switch must have the BASE (no
extension) filename of the answer file appended to the
switch. In other words, "eRACEm -Anewuser" will pack
the Newuser.Asw file. You may pack any answer file as
long as an index file has been created by RACE.
The <A> switch removes answer sets that you have marked
deleted within the validation feature of RACE. The <A>
switch =MUST= be used if you wish to use either or both
of the following switches.
<-R> The <R> switch allows eRACEm to go through the
answer file and remove answer sets from users that no
longer exist in USERS.BBS. The <R> switch takes no
parameters.
<-Z> This switch <Z>aps duplicate answers. The logic
used here is quite simple. eRACEm looks through the
answer file finding all answer sets from a user. It
then deletes all but the last answer set. eRACEm has
no idea whether or not the other answer sets are
actually exact duplicates. The <Z> switch takes no
parameters.
6. eRACEm PACK examples
a. To purge users that have not called in 60 days and have
a security level of 20 or below:
eRACEm -d60 -m20
5
eRACEm version 1.00 User Documentation
b. Purge users that have not called in 45 days and have a
security level of 20 or below and who are less than 18
years of age and purge even if the user meeting the
above criteria has the NO-KILL flag set:
eRACEm -d45 -m20 -b18 -K
c. Purge users that have not called in 45 days and have a
security level below 20. Also purge answer file records
in NEWUSER.ASW for users that no longer exist in users
bbs and remove answer file records that were marked
deleted in RACE:
eRACEm -d45 -m20 -Anewuser -R
7. Sorting the user file
The sort provided by eRACEm works a bit differently than both the
sort provided in RACE v1.52 and that provided by RA's RAUSER
program. The end result is certainly the same, but the options
and usage of eRACEm is quite different.
One feature worthy of mention is that eRACEm never, ever sorts
the first record (record 0, usually the Sysop's record) out of
position no matter what sort criteria you use.
eRACEm will make use of EMS (if available) or the hard drive for
temporary storage if the user file is so large that it cannot be
sorted entirely in memory. With the new, expanded RA 2.0 user
fields, it is not likely that any but the smallest user base will
be sorted in RAM.
Like RACE v1.52, eRACEm will allow you to sort on a number of
fields. The main difference is that eRACEm will allow you to
sort on multiple fields and each individual field may be sorted
in either ascending or descending order.
8. Sorting on Primary and Secondary keys (fields)
If you've never used a database or other program that allowed
sorting on multiple fields, it's important that you understand
how the sort provided by eRACEm works so that you don't think
something is wrong when the end result is not what you expected.
A sort is first performed on the primary sort key. Only if two
(or more) primary sort fields are EXACTLY identical will eRACEm
6
eRACEm version 1.00 User Documentation
sort those fields on the secondary key.
In other words, if you select the user name as the primary key,
it is unlikely eRACEm will sort any users by the secondary key
because it is doubtful that you have two users with identical
names.
On the other hand, if you select the security field as the
primary sort key, you will no doubt have many users with
identical security levels and the sort will then sort the
secondary key within each security level.
9. Allowable sort fields
eRACEm can sort on any one (or combination) of the following user
fields. Fields are listed in no particular order.
Name, City, Credit, Posts, Security, Calls, Ups, Downs, UpK,
DownK, Group, Pending, LastCall, FirstCall, SubDate,
BirthDate.
These are the EXACT identifiers you must use for the sort
parameters. I won't bore you with a description of each field as
their names are fairly self-explanatory.
10. Ascending and Descending sort
eRACEm requires you to select whether you would like an ascending
or descending sort. This is selectable by field so that you may
select an ascending sort on one key and a descending sort on
another key.
An ascending sort on a text field (name, city, etc.) means the
records will be sorted from lowest (the letter "a") to the
highest (the letter "z"). On a numeric field such as the
security field, this would start at 0 and go up to your highest
level. A descending sort is naturally just the opposite.
11. Using eRACEm's sort
a. Sort command line switch
eRACEm has one simple switch that signals sort
parameters to follow. This is the -S switch. As with
packing, you may use /S or -S.
b. Sort parameters
7
eRACEm version 1.00 User Documentation
The -S switch must be followed by one or more sort key
names mentioned in paragraph 9, Allowable sort fields.
It is important to note that IF and only IF you use
more than one sort key, the sort key names MUST be
enclosed by double or single quotes or square brackets.
Also, each sort key name MUST be terminated with a plus
or minus character ("+", "-") to signify whether it is
to be sorted in ascending or descending order. The
first sort key name provided in the parameter list is
considered the primary key.
An example will clarify the above requirements. If you
just want to sort on the users last name in ascending
alphabetical (a - z) order you would use:
eRACEm -Sname+
Or to sort on security level only, with the highest
levels first and lowest last you would use:
eRACEm -Ssecurity-
If you wanted a sort like the one provided by RAUSER,
i.e. highest to lowest security level with each
individual security level sorted by name in ascending
order you would use:
eRACEm -S"security- name+"
or
eRACEm -S[security- name+]
or
eRACEm -S'security- name+'
Note that: eRACEm -S[name+ security-] would not produce
the results you might expect since, as mentioned
earlier, it is not likely you would have two users with
the exact same name and therefore, the sort on security
would never occur.
<EOF>
8