@database "intuidex.guide"
@$VER intuidex.guide 2.1 5/95
@(c) "Copyright ®1995, Jeffery C. May'
@author "Jeffery C. May"

@wordwrap

@NODE MAIN "IntuiDex On Line Help              Copyright 1995 Jeffery C. May"
                         @{fg SHINE}IntuiDex Version 2.0
                             On-Line Help@{fg TEXT}
@{"Legal Junk..    " link LEGAL} Let's get it out of the way...
@{"Introduction    " link INTRO} What the *HECK* is IntuiDex?
@{"Requirements    " link REQUIREMENTS} What you need to run IntuiDex
@{"What's New      " link NEW} Revision History and notes
@{"Installation    " link INSTALL} How to install IntuiDex
@{"About the Author" link AUTHOR} Who is this guy?


                    @{fg SHINE}FUNCTIONS OF INTUIDEX@{fg TEXT}
@{"ARexx Interfacing  " link AREXX} Getting IntuiDex to talk to other programs
@{"ASCII Import/Export" link ASCII} Getting existing data into and out of IntuiDex
@{"Deleting Entries   " link DELETE} Housekeeping stuff...
@{"Dialing            " link DIAL} Let Intuidex dial the phone...
@{"Disk Data Files    " link DISK} Load and Save that data now!!
@{"Editing Data       " link EDIT} When you need to change stuff
@{"Entering Data      " link ENTER} How data gets into IntuiDex
@{"Finding Entries    " link FIND} Quick!  Find that member!
@{"Printing           " link PRINT} Printing reports and mailing labels
@{"Mail Merge         " link MERGE} Form Letters and more!
@{"Sorting Data       " link SORT} Arrange that data!
@{"Updating Data      " link UPDATE} Marking expired people...
@{"What is 'Next'     " link NEXT} Moving through the list

@{"Configuring IntuiDex" link CONFIGURE} Customizing IntuiDex for different clubs


                        @{fg SHINE}OTHER TOPICS@{fg TEXT}
@{"Things Left To Do  " link TODO} The Future of IntuiDex
@{"Known IntuiDex Bugs" link BUGS} Problems to be fixed in IntuiDex
@{"IntuiDex Glossary  " link LEX} What these wierd words mean...
@ENDNODE

@NODE LEGAL "Legal stuff about copyrights and whatnot..."
    @{fg SHINE}THANKS FOR USING INTUIDEX!@{fg TEXT}

    IntuiDex and its accompanying files are copyright 1995, Jeffery C. May,
all rights reserved.  Demonstration versions of IntuiDex may be freely
distributed, but must not have any fees associated with this distribution
other than the cost of media.


    IntuiDex is @{"shareware" link LEX}, and registered versions are available for $25.
Registered versions of IntuiDex do not have the annoying @{"requester" link LEX} at start-
up and shutdown.  Registered users of IntuiDex also are also elegible for
updates as they are available, and will be given priority as to help with
problems and feature requests.


                @{"CLICK HERE FOR INFORMATION ON HOW TO REGISTER" link REGISTER}



==========================================================================
=   COPYRIGHT NOTICES AND DISCLAIMERS FOR PRODUCTS MENTIONED IN THIS     =
=   DOCUMENT                                                             =
==========================================================================
    Commodore, Amiga, and AmigaGuide are trademarks of Commodore-Amiga, Inc.

    Enforcer is Copyright 1992-1993 Commodore-Amiga, Inc.

    Oxxi and SuperBase are trademarks of Oxxi, Inc.

    Avery, Avery Dennision, and 8160 are trademarks of Avery Dennision
Corporation.

    Hayes is a trademark of Hayes Microcomputer Products, Inc.
@ENDNODE


@NODE REGISTER "Registering IntuiDex 2.1"
    @{fg SHINE}REGISTERING INTUIDEX 2.1@{fg TEXT}

    First of all, let me say that I am extremely honored that you like
IntuiDex to even consider registering it.  IntuiDex was originally written
for me, as the newsletter editor of the local user group.  If you find this
program helpful and useful, that's wonderful.

    Registering IntuiDex is easy- print the form by pressing the button
below, fill it out and mail it to me at the address below.  Registered users
will get a printed manual (still under revision) and automatic update to the
latest version.  Also, registered users will take precidence when technical
support is required.  Make sure you have paper in your printer, and that
your printer is turned on and is ready to print.

    I have reduced the registration fee from previous releases for a limited
time.  Older, less reliable, versions were $35.  The new upgraded and
enhanced version is $25.  Checks are OK from within the US, drawn on a US
bank.  Postal and other money orders are also acceptable.  This special
reduced registration fee is only good until December 31, 1995.

    Registration fees should be sent to

    Jeff May
    4323 Pinewood Dr NE
    Palm Bay, FL 32905
    USA

                    @{"PRINT REGISTRATION FORM TO PRINTER" SYSTEM "c:copy help/registration.form prt:"}


@{fg SHINE}SPECIAL INCENTIVE:@{fg TEXT}
    If the word processor that you use is NOT currently supported by
the IntuiDex mail merge features, you have the opportunity to get a special
registration (and mention in this file) by sending me enough information to
construct the filters for your word processor.

    This information should include (if legally possible) copies of the
pertinent information from the word processor manual, and a disk that
includes both an example letter ("Primary", "Main" or "Form") file, and an
example address ("Secondary" or "Merge") file.

@{B}    For each word processor that is included, the first person to send me
this information will get a free registration!  NOTE: only currently
unsupported word processors are eligible, and only the first person to send
the data gets the registration.@{UB}

    So far, I have information for the following word processors:

    Amiga WordPerfect       (What I use)
    Final Writer            (From AAi Member Bob Castro)
    Excellence!             (From AAi Member Bob Castro)
    ProWrite                (Thanks Pat Larkin!)

@ENDNODE

@NODE NEW "What's new with this release of Intuidex"
    @{fg SHINE}REVISION HISTORY OF INTUIDEX@{fg TEXT}

@{B}Version       Date      Changes@{UB}
  2.2        JUL-95     @{I}IntuiDex 2.2 was compiled with SAS C version 6.0@{UI}

                        @{B}IntuiDex now includes a fully-functional @{"ARexx" link AREXX} port!@{ub}

                        Also fixed bug in the delimited ASCII @{"import" link ASCII-IMPORT} and
                        @{"export" link ASCII-EXPORT} features that was introduced in the last
                        release.

                        Fixed a bug that has been present since version 2.0,
                        where one of the functions locks the Workbench
                        screen, but fails to unlock it.  This caused the
                        Amiga to refuse to allow the change of screen mode
                        after running IntuiDex.

                        Hyphens ("-") are now changed automatically into
                        slashes ("/") in entered dates.  This ensures that
                        all dates are consistant, and precludes the problems
                        associated with possible mixing of date seperators.

                        The "Disk" field is now one of 32 flags that are
                        associated with each entry.  The other 31 flags will
                        be user assignable.


  2.1        JUN-95     Incorporated changes proposed by users in the
                        Amiga Atlanta, Inc. User Group, including:

                        * Database files are automatically @{"updated" link UPDATE} as
                          they are loaded from disk.  This can be turned off
                          via commenting the @{"AUTO_UPDATE" link CONFIGURE} @{"tooltype" link LEX}.

                        * The "Expired" @{"status" link STATUS} is now a flag that is
                          applied to the current status.  This way, IntuiDex
                          can remember what the previous value was.

                        * When an entry is @{"edited" link EDIT}, the database is again
                          @{"updated" link UPDATE} so that if the change is a renewal,
                          the "expired" status automatically reverts to
                          the previous value.

                        * The exit button from the @{"Print" link PRINT} window is no longer
                          called "Cancel," but now rather reads "Exit Print"
                          which makes more sense:  if you are done printing,
                          you don't want to cancel, you just want to exit.

                        * A new @{"tooltype" link LEX} has been added, @{"MEMBERSHIP_LENGTH" link CONFIGURE},
                          that allows the adjustment of the automatically
                          calculated expiration date in one month
                          increments.  It comes pre-set for a one year
                          membership, so MEMBERSHIP_LENGTH has the value of
                          12.

                        Also, several "broken" features were fixed:


                        * In previous versions, only the @{"DATE_USA_LONG" link CONFIGURE}
                          version worked.  Now your setting of the
                          @{"DATE_FORMAT" link CONFIGURE} @{"tooltype" link LEX} actually does something.

                          Unfortunately, this change brought about a change
                          in the disk file format, rendering the new
                          version's data files incompatible with older
                          versions.  This new version will READ the old
                          versions, but can not  write them.  This will
                          allow the seamless transition between versions for
                          upgrading users.

                        * The @{"MAKEICONS" link CONFIGURE} tooltype now works.  In older
                          versions, it had no effect.

  2.0                   The 2.0BETA release is considered the 2.0 release
                        version.  This was the version placed on Aminet,
                        and no other versions were released between 2.0BETA
                        and 2.1.


  2.0BETA    FEB-95     @{I}IntuiDex 2.0 is now written in GNU C.@{UI}
                        Complete re-write. Not just of one section or two,
                        but of the entire program.

                        Included font and screen sensitivity.

                        Database is now held in memory as a doubly-linked
                        list, which makes sorting MUCH faster, and also
                        removes a limit on the number of records that can
                        be held in a database.  (NOTE: the database must
                        still be able to fit into memory!)

                        Printing to disk now an option.

                        Find now works right- criteria are logically AND'd,
                        not OR'd.  (Now you can search for people in Tacoma
                        that own 2000's, etc...)

                        No longer requires the presence of the MultiView
                        or AmigaGuide programs to be present in the
                        SYS:Utilities drawer.  Uses the amigaguide.library
                        properly.

                        Added seperate Save and Save As functions.

                        IntuiDex now remembers the field that the database
                        is sorted on.  NOTE: data from older versions may
                        be loaded, but since they don't have the sort info,
                        you'll have to resort and resave the data to make
                        it work.

                        Data files are backward compatible with older
                        versions of IntuiDex.

                        Supports the export and import of ASCII delimited
                        files to ease migration to/from other software
                        packages.

                        Supports the export and import of mail merge files
                        for several popular word processors.  These are
                        implemented as seperate programs, so that they are
                        easily extensible.  New filters can be added at any
                        time.

                        Preferences are now held as @{"Tooltypes" link LEX} in the .info
                        file, and can be modified by the "Information..."
                        item in the Icons @{"menu" link LEX}.


  1.1a   (NOT RELEASED) Rewrote a couple of printer routines to include
                        printing 3-across laser labels and cleaned up code
                        for maintenance reasons.


  1.1       8-SEP-94    Fixed @{"Enforcer" link LEX} Hits, added real Amiga-key keyboard
                        @{"shortcuts" link LEX}, and changed imaging for proportional
                        @{"gadget" link LEX}.


  1.0       AUG-1994    First Release, pure junk.
@ENDNODE


@NODE INTRO "Introduction to IntuiDex"
    @{fg SHINE}WELCOME TO INTUIDEX!@{fg TEXT}

    @{fg SHINE}@{I}Why IntuiDex?@{UI}@{fg TEXT}
    IntuiDex represents my efforts to streamline the way Amiga Atlanta
handles its membership list.  By providing an interface that could be
learned without effort, I hope to provide a system that will allow more
people to feel that they can participate in Amiga Atlanta as an officer.

    As Newsletter editor for Amiga Atlanta in 1993, I had an extremely
difficult time tracking down the Secretary/Treasurer to get mailing labels
for newsletters.  It occured to me that there needed to be a better way for
the different officers to share the data in the club @{"database" link LEX}: I needed it
for mailing labels, the BBS @{"Sysop" link LEX} needed it to verify members, the Secretary
needed it to keep tabs on membership, and the President needed it in case
he needed to make special announcements via phone or mail.

    Amiga Atlanta was/is using @{"Oxxi's SuperBase 3" link LEGAL}, which although is an
extremely capable product, is overkill in the extreme for what we needed.
Also, it was/is expensive, and the club only had/has one copy.  This means
that everyone in the club that needed access to the club @{"database" link LEX} was
required to depend on ONE person to supply that need.

    So I wrote my own.  It worked, but I wasn't quite happy with it: it
wasn't font sensitive, it was inflexible, and it was slow.

    So here we are today, with IntuiDex 2.0, a completely re-written
@{"database" link LEX} that was specifically designed with club membership rosters in
mind.  No difficult to use (and extremely UNintuitive, for that matter) GUI
metaphor. Just a simple to use program that does the job with no hassles.

    @{fg SHINE}@{I}So what does IntuiDex do?@{UI}@{fg TEXT}
    IntuiDex is hopefully just that- an INTUitive InDex for club rosters.
I have been using computers in one form or another since 1982, and with the
advent of GUIs there is no excuse for applications to not be instantly
learned by users.  It is my opinion that users should be able to walk up
to a piece of software and be able to use it immediately.  Now that does
not mean that they can do @{I}everything@{UI} instantly, but they should be able to
do SOMETHING useful with absolutely NO help, no manual reading, and with
little thought.

    @{fg SHINE}@{I}Features of IntuiDex 2.0@{UI}@{fg TEXT}

    *   Number of @{"records" link LEX} in @{"database" link LEX}s is now limited only by available
        memory

    *   @{B}Fast@{UB} @{"sorting" link SORT} speed

    *   Nine different @{"status" link STATUS} levels, including four membership levels

    *   Font and screen sensitive

    *   @{"Prints" link PRINT} mailing labels, phone lists, and configurable @{"database" link LEX} lists

    *   Export @{"mail merge" link MERGE} files for many popular word processors

    *   Import and Export @{"ASCII" link ASCII-IMPORT} delimited files

    *   @{"Configurable" link CONFIGURE} field names

    *   @{"Sort" link SORT} on six different fields



@ENDNODE


@NODE REQUIREMENTS "IntuiDex Requirements"
    @{fg SHINE}WHAT DO I NEED TO RUN INTUIDEX?@{fg TEXT}

    IntuiDex reuires at least @{B}version 2.04@{UB} of the Amiga operating system
(Version 37).

    Other than that, it should work on just about any configuration.

    IntuiDex has been tested on an Amiga 2000/040 with 12 megabytes of RAM,
and an Amiga 500 with two megabytes of RAM.



                @{fg SHINE}"IF IT'S AN AMIGA, IT WILL RUN INTUIDEX"@{fg TEXT}

@ENDNODE

@NODE INSTALL "Installing IntuiDex 2.0"
    @{fg SHINE}INSTALLING INTUIDEX@{fg TEXT}

    The included installer script makes use of the Commodore Installer.
Just run the script to install IntuiDex.  All the files and drawers
associated with IntuiDex will be copied.

    Since this version of IntuiDex does NOT require an ASSIGN or other
tricky bits, you may alternatively just copy the drawer from where you
unarchived it to where you want it to go.  The archive that you downloaded,
or the disk that you received when you registered, has the IntuiDex files
where they need to go in thier own drawers.  Copying the IntuiDex drawer
to where you want it is equivalent to using the installer script, and
faster.

@ENDNODE


@NODE AUTHOR "About the Author"
    @{fg SHINE}WHO IS THIS GUY, ANYWAY?@{fg TEXT}

Jeff May is a RF circuit engineer at Harris Electronics in Palm Bay, Florida.
He recieved his B EE from the Georgia Institute of Technology on March 18,
1995 with a 3.1 overall GPA.

Starting in December of 1990, Jeff participated in the Cooperative Education
program for six quarters, working for Kimberly-Clark Corporation.  Three
quarters were spent in the LaGrange, Georgia, Mill, and the balance of his
tenure was spent working out of the Roswell, Georgia, engineering offices.

Since ending his Co-Op career in September, 1993, Jeff has had five
consecutive quarters on the Dean's List, for a total of seven, and will
graduate on March 18, 1995 with a 3.02 GPA.

Jeff's lone programming class was taken in during Winter Quarter, 1990,
where he was in the last section of EE 1400 (Computer Programming in C) ever
taught at Georgia Tech.  He has, since 1982, taught himself BASIC, 6502
assembler, a smidgen of Pascal, and Amiga E.

Jeff has been involved with the Georgia Tech Christain Campus Fellowship,
WREK (the Georgia Tech student-run radio station), and has also participated
in the Woodbury Research Project, which is refurbishing a 1970s- vintage
30-meter (!) satellite antenna to be a radio telescope.  You can see its
web page at http://www.gatech.edu/jmay/woodbury/woodbury.html

In 1993 Jeff served as the Newsletter Editor for Amiga Atlanta.  A couple
of his works are available on Aminet in the text/mags directory.  In 1994,
he was elected as President of Amiga Atlanta, and in 1995 was elected for a
second term.  Recently, Jeff has worked up an AAi @{"WWW" link LEX} page,
which can be found at

http://www.gatech.edu/jmay/aai/aai.html



    If you have any questions, comments, or job offers, please contact
Jeff at:

    4323 Pinewood Dr NE             jeffm@zeus.surf.tach.net
    Palm Bay, FL 32905              Jeff_May@aaivtex.atl.ga.us
    USA
@ENDNODE

@NODE AREXX "Getting IntuiDex to talk to other programs"
    @{fg SHINE}THE INTUIDEX AREXX INTERFACE@{fg TEXT}

    All IntuiDex functions (except Dial) are availabe through its ARexx
interface.  Currently, IntuiDex recognizes 15 commands, listed below:

  @{"ADD      " link REXXADD}   Inserts a new (empty) entry at the end of the list
  @{"CLEAR    " link REXXCLEAR}   Erases the entire database from memory
  @{"DELETE   " link REXXDELETE}   Removes the "current" entry from the database
  @{"EXPORT   " link REXXEXPORT}   Exports the database in the specified name and format
  @{"FIND     " link REXXFIND}   Finds a specified entry on specified criteria
  @{"GET      " link REXXGET}   Return the specified field value
  @{"IMPORT   " link REXXIMPORT}   Imports a database from the specified name and format
  @{"INSERT   " link REXXINSERT}   Places the given value into the specd field of current
  @{"NEXT     " link REXXNEXT}   Makes the next result of a FIND the current entry
  @{"OPEN     " link REXXOPEN}   Loads the specified database
  @{"PRINT    " link REXXPRINT}   Prints the database in the specified format to the specified
                device
  @{"QUIT     " link REXXQUIT}   Exits IntuiDex (immediate!  no save!)
  @{"SAVE     " link REXXSAVE}   Saves the database using the name it was loaded from
  @{"SAVEAS   " link REXXSAVEAS}   Saves the database as the specified name
  @{"SORT     " link REXXSORT}   Reorders the current database by the specified keyword
  @{"UPDATE   " link REXXUPDATE}   Updates list based on current system date
@ENDNODE

@NODE REXXADD "Add a new entry from ARexx"
ADD -   This function creates a new entry in the current database.  It
        automatically assigns the next member number, and calculates the
        expiration date based on the current system date and the setting of
        the @{"MEMBERSHIP_LENGTH" link CONFIGURE} tooltype.  All other fields are empty.

        ADD takes no arguments.  Data is entered into the newly created
        entry via the INSERT ARexx command.

        A successful operation will return the new member number as a
        result code.  Failure will cause an error of level 10 to be g
        enerated.
@ENDNODE

@NODE REXXCLEAR "Clear the database from ARexx"
CLEAR - Erases the entire data from memory.  If data was not saved, it is
        lost.  CLEAR takes no arguments, and returns no result code.
@ENDNODE

@NODE REXXDELETE "Delete the current entry from ARexx"
DELETE- @{"Removes" link DELETE} the current entry from the database.  If data was not saved,
        it is lost.  DELETE takes no arguments, and returns no result code.

        Selection of data to delete is done via the @{"FIND" link REXXFIND} ARexx command.
@ENDNODE

@NODE REXXEXPORT "Export the database from ARexx"
EXPORT- @{"Exports" link ASCII} data in the specified format to the speicifed filename.
        Currently, only delimited ASCII files are supported.

        USAGE:

        EXPORT {filename} {ASCII/MAILMERGE}

    @{B}SEE ALSO@{UB}
    @{"IMPORT              " link REXXIMPORT}
@ENDNODE

@NODE REXXFIND "Find entries using ARexx"
FIND -  Uses specified criteria to search the current list for matching
        entries.

        The first matching entry is automatically made the current entry,
        and using the Arexx @{"NEXT" link REXXNEXT} function will allow step through the
        matches if there are more than one.

        USAGE:

        FIND {field# [value]} {field# [value]} ...


        This function takes as its arguments a list of field numbers and
        specified values.  Please note that the specified values must only
        contain one word.  An example is given
        below:

        FIND 2 Jeff 3 May 8 FL

        This will find all the people whose first name is "Jeff," last
        name is "May," and whose addresses are in Florida.

        Here are the field codes:

        0           Member Number
        1           Expiration Date
        2           First Name
        3           Last Name
        4           Business Name (Right below the Person's name)
        5           First Address Line
        6           Second Address Line
        7           City
        8           State
        9           Zip
        10          Daytime Phone
        11          Evening Phone
        12          First field right below the phone numbers
        13          Second field below phone numbers
        14          Third field below phone numbers
        15          Fourth field below phone numbers
        16          Flags (up to 32 user-definable boolean flags available)


        The results of the FIND command is the number of matches, or zero
        if no matches were found.
@ENDNODE

@NODE REXXGET "Get field values from ARexx"
GET -   Returns the specified field value from the current entry.  This
        function is used to pass field values from IntuiDex to the calling
        application.

        USAGE:

        GET {field#}

        Get takes as its argument the number specifying the desired field,
        as shown below:

        0           Member Number
        1           Expiration Date
        2           First Name
        3           Last Name
        4           Business Name (Right below the Person's name)
        5           First Address Line
        6           Second Address Line
        7           City
        8           State
        9           Zip
        10          Daytime Phone
        11          Evening Phone
        12          First field right below the phone numbers
        13          Second field below phone numbers
        14          Third field below phone numbers
        15          Fourth field below phone numbers
        16          Flags (up to 32 user-definable boolean flags available)
        17          Status code

        GET returns only the value of the field as a result.  If the field
        is blank, then the result code will also be blank.

        An error of level 10 is returned if there is no database currently
        opened.

@ENDNODE

@NODE REXXIMPORT "Import a database from ARexx"
IMPORT- @{"Imports" link ASCII} data in the specified format from the speicifed filename.
        Currently, only delimited ASCII files are supported.

        USAGE:

        EXPORT {filename} {ASCII/MAILMERGE}


    @{B}SEE ALSO@{UB}
    @{"EXPORT              " link REXXEXPORT}
@ENDNODE

@NODE REXXINSERT "Insert new field data from ARexx"
INSERT- Places information into the specified field of the current entry.
        This function is often used in conjunction with the ADD ARexx
        command to fill out the newly created entry.

        USAGE:

        INSERT {field# [value]}

        INSERT takes two arguments- a number between 0 and 17 specifying
        the field desired, and the value to be placed in this field.
        Numbers are used to specify fields because many fields have user
        definable names.  The numbers are shown below:

        0           Member Number
        1           Expiration Date
        2           First Name
        3           Last Name
        4           Business Name (Right below the Person's name)
        5           First Address Line
        6           Second Address Line
        7           City
        8           State
        9           Zip
        10          Daytime Phone
        11          Evening Phone
        12          First field right below the phone numbers
        13          Second field below phone numbers
        14          Third field below phone numbers
        15          Fourth field below phone numbers
        16          Flags (up to 32 user-definable boolean flags available)
        17          Status code

        The status codes are as shown below.

        PENDING         (Possible Membership Contact)
        MEMBER
        DEALER          (Merchant...)
        EXCHANGE        (Newsletter...?)
        MANUFACTURER
        OFFICER         (Special case of Member)
        FAMILY          (Special case of Member)
        BUSINESS        (Special case of Member)

        Insert returns no result code.
@ENDNODE

@NODE REXXNEXT "Make the next in the found list current from ARexx"
NEXT -  Performs the same function as the @{"Next" link NEXT} function from the window
        gadget.

        If a search has been performed, NEXT will cycle through the found
        matches.

        Otherwise, NEXT displays the "next" entry in the database.

        If the last entry is the current one, NEXT will wrap around and
        cause the first entry in the database to become the current one.

@ENDNODE

@NODE REXXOPEN "Open a database from ARexx"
OPEN -  @{"Opens" link DISK} a database from the specified filename.  The newly opened file
        replaces any database in memory, so if the old file (if any) was
        not saved, it was lost.

        USAGE:

        OPEN {filename}

        OPEN takes as its argment the filename with complete path of the
        database desired.

        A successful operation will return no result code.  A failure will
        return an error of level 10.
@ENDNODE

@NODE REXXPRINT "Printing from ARexx"
PRINT - @{"Prints" link PRINT} the specified entries in the specified format to the
        specified destination.

        USAGE:

        PRINT {DEST} {LABELS} {ENTIRE/CURRENT/RESULTS/STATUS [CODE]} {WIDTH}
        PRINT {DEST} {PHONE}  {ENTIRE/CURRENT/RESULTS/STATUS [CODE]}


        Print allows IntuiDex to provide the user with preformatted mailing
        labels or a list of phone numbers and names.

        If mailing labels (LABELS) are printed, the user must select how
        many labels are to be printed across the page.  Laser labels usually
        have three labels across the sheet; dot-matrix labels usually only
        have one.  Please note that the status of the @{"AVERY tooltype" link CONFIGURE}
        is respected.
@ENDNODE

@NODE REXXQUIT "Exiting IntuiDex via ARexx"
QUIT -  Exits IntuiDex.  Any data that was not saved is lost.  QUIT takes
        no arguments, and returns no result codes.
@ENDNODE

@NODE REXXSAVE "Saving the database via ARexx"
SAVE -  @{"Saves" link DISK} the currently loaded data to the name used when it was opened.
        SAVE takes no arguments.

        A successful operation will return no result code.  A failure will
        return an error of level 10.

    @{B}SEE ALSO@{UB}
    @{"SAVEAS              " link REXXSAVEAS}
@ENDNODE

@NODE REXXSAVEAS "Saving the database via ARexx"
SAVEAS- @{"Saves" link DISK} the currently loaded data to the specifed path and name.

        USAGE:

        SAVEAS {filename}

        SAVEAS takes as its argument the filename with complete path that
        the data is to be saved to.

        A successful operation will return no result code.  A failure will
        return an error of level 10.

    @{B}SEE ALSO@{UB}
    @{"SAVE                " link REXXSAVE}
@ENDNODE

@NODE REXXSORT "Sort the database from ARexx"
SORT -  @{"Sorts" link SORT} the currently loaded database by the specified field.

        USAGE:

        SORT {FIRSTNAME/LASTNAME/ZIP/MEMBERNUMBER/CITY/EXPIRATION}


        SORT takes as its argument one of the following field specifiers:

            FIRSTNAME

            LASTNAME

            ZIP

            MEMBERNUMBER

            CITY

            EXPIRATION

        Note that these are the same options that are available from the
        menu or window gadget.

@ENDNODE

@NODE REXXUPDATE "Updating status codes from ARexx"
UPDATE- @{"Updates" link UPDATE} the status fields of all the entries in the currently opened
        database.  People with expiration dates earlier than the current
        system date are marked as expired.  All others have their expired
        flag removed.

        UPDATE takes no arguments, and returns no result codes.
@ENDNODE

@NODE ENTER "Entering New Data Into IntuiDex"
    @{fg SHINE}ADDING (ENTERING) NEW DATA INTO INTUIDEX@{fg TEXT}

    It's really pretty simple.  Like most all functions of IntuiDex, there
is three ways to get at the @{"data entry requester" link REQUESTER}:

    1) Press the 'ADD' @{"gadget" link LEX} at the bottom of the window
    2) Hold down the right Amiga key and press the 'a' key on the keyboard
    3) Select the 'Add New Entry' item in the Actions Menu.

Once you have done one of these three things, you will be confronted with
a large window with a lot of string @{"gadget" link LEX}s. You will also notice that
IntuiDex automatically finds the highest member number currently in use,
makes the new entry the next one, and also calculates the expiration date of
the newly entered member based on the value of the @{"MEMBERSHIP_LENGTH" link CONFIGURE} @{"tooltype" link LEX}.

    Enter the data, makeing as many changes as you wish.  When you're
satisfied that the entry is correct, click on the 'OK!' @{"gadget" link LEX}.

    That's it.  You've just entered a new member into the @{"database" link LEX}!

    @{B}ALSO SEE@{UB}
    @{"Editing Data        " link EDIT}
    @{"Finding Records     " link FIND}
    @{"Data Entry Requester" link REQUESTER}

@ENDNODE

@NODE EDIT "Editing Data Already In IntuiDex"
    @{fg SHINE}EDITING EXISTING DATA IN INTUIDEX@{fg TEXT}

    It's really very similar to entering new data.  Using the proportional
@{"gadget" link LEX} on the right side of the window, or the up and down arrow keys on
the keyboard, find the entry that you would like to edit (NOTE: you may
also use the @{"'Find'" link FIND} feature to make this job easier).

    Once you have found the entry to edit, do one of three things:

    1) Click on the 'Edit' @{"gadget" link LEX} at the bottom of the window
    2) Hold down the right Amiga key and press the 'e' key on the keyboard
    3) Select the 'Edit Entry' item in the Actions Menu.

    When you do one of these three things, the large @{"data requester" link REQUESTER} window
will open.  Unlike when you entered the data, however, it's not empty.  The
current data is displayed in the @{"gadget" link LEX}s.  Make changes to your heart's
content, and then either Click the 'OK!' @{"gadget" link LEX}, or press the 'O' key on
the keyboard.  'C' will cancel the action, as will clicking the 'Cancel'
@{"gadget" link LEX}.

 NOTE:  the @{"keyboard shortcut" link SHORTCUTS} only works if NO STRING GADGET IS ACTIVE.

    That's it.  you've just edited an existing member in the @{"database" link LEX}!

    @{B}ALSO SEE@{UB}
    @{"Adding Data         " link ENTER}
    @{"Finding Records     " link FIND}
    @{"Data Entry Requester" link REQUESTER}

@ENDNODE

@NODE SHORTCUTS "IntuiDex Keyboard Shortcuts"
    @{fg SHINE}INTUIDEX KEYBOARD SHORTCUTS@{fg TEXT}

    IntuiDex has @{"keyboard shortcuts" link LEX} for most functions that are available
via the pull-down @{"menu" link LEX}s.  These shortcuts are activated by holding down the
right Amiga key (that's the key directly to the right of the SPACE bar) and
pressing the indicated key.

@ENDNODE

@NODE DISK "Saving And Loading Files in IntuiDex"
    @{fg SHINE}OPENING FILES IN INTUIDEX@{fg TEXT}

    IF you want to load an index file from disk, you start at the main
window by doing one of three things:

    1) Click on the "Open" @{"gadget" link LEX} at the bottom of the window
    2) Hold down the right Amiga key and press the "o"
    3) Select the "Open..." item under the Project @{"menu" link LEX}

    When you do one of these three things, a @{"requester" link LEX} will open up, and
from there you can select the file you want to load.



    @{fg SHINE}SAVING FILES IN INTUIDEX@{fg TEXT}

    IntuiDex supports two ways to save files to disk.  The "Save As..." item
under the Project @{"menu" link LEX} allows you to specify a new name to save the data
under.  The "Save" @{"gadget" link LEX} in the window, and the "Save" function under the
Project @{"menu" link LEX} saves the data back using the filename that was used to load
the @{"database" link LEX}.

    To use the "Save" function, you can do one of three things:

    1) Press the "Save" @{"gadget" link LEX} at the bottom right of the IntuiDex window
    2) Hold down the right Amiga key and press the "S" key
    3) Select the "Save" item under the Project Menu

    When you do one of these three things, the @{"database" link LEX} will be saved using
the filename that was used to load the file.  If this is a new file, and
a name has not been specified, then a @{"requester" link LEX} will ask you for one.

    To "Save As..." function to specify a new file name to use, you start
from the main window by selecting the 'Save As' item under the Project @{"menu" link LEX}.
A @{"requester" link LEX} will open up, and from there you can select, or type in, the
file you want to save.

    @{B}All IntuiDex data files should end in ".dex" so that they can be found
easily.@{UB}
@ENDNODE

@NODE REQUESTER "About The IntuiDex Data Entry Requester"
    @{fg SHINE}THE INTUIDEX DATA ENTRY REQUESTER@{fg TEXT}

    The IntuiDex Data Entry Requester has been designed for ease of use
and makes the entry or change of data simple and quick:

    1) Automatic @{"gadget" link LEX} activation on all string @{"gadget" link LEX}s:  As you fill in
       each field and press [RETURN], the next field is activated.  This
       means that your hands never have to leave the keyboard when entering
       data

    2) The data entry fields are arranged in a logical manner that
       resembles filling out an application.  This means that purpose of
       each field is very intuitive.

    3) When adding a @{"record" link LEX} to the @{"database" link LEX}, IntuiDex was designed to
       automatically find the highest membership number currently in use,
       and make the new number one higher.  IntuiDex also automatically sets
       the expiration data of new members to be one year from the date of
       entry.  Of course, both of these fields can be easily changed if
       desired.


    @{fg SHINE}DATA REQUESTER FIELDS@{fg TEXT}

    The data entry @{"requester" link LEX} is made up of sixteen string fields, a cycle
field (entry status), and a checkbox field ('Check here for...').  The
string fields should be self explanitory.  The other two may need a little
discussion.

    The 'Check here for...' field exists because Amiga Atlanta offers Disk
'o The Month subscriptions to its members that do not often attend club
meetings.  This field is checked if that member paid for a disk subscription
otherwise it is not used.  The name of the field can be changed by changing
the @{"SUBSCRIPTION" link CONFIGURE} @{"Tooltype" link LEX}.

    The @{"status field" link STATUS} is used to differentiate between
different types of entries in the same list.  The two most commonly used
status types, 'Member' and 'Expired' are used to differentiate among current
and expired members.

    @{B}ALSO SEE@{UB}
    @{"Adding Data         " link ENTER}
    @{"Editing Data        " link EDIT}
    @{"Finding Records     " link FIND}
    @{"Configuration       " link CONFIGURE}

@ENDNODE

@NODE STATUS "About The Status Field"
    @{fg SHINE}THE STATUS FIELD@{fg TEXT}

    Several different types of entries can be used in the same @{"database" link LEX}
file.  These types are differentiated by their status.  There are seven
different types of status, and these are listed below:


 TYPE           DISCRIPTION
==========================================================================
 Pending        Used to mark people who are interested in membership, but
                have not joined the club.  These contacts are retained so
                that they can be informed of upcoming events.  People who
                are Pending are hoped to (soon) become Members.

 Member         The standard code for any paid member of the club.

 Expired        The code used to mark members who have let their member-
                ships lapse.  This code is generated by use of the @{"Update" link UPDATE}
                function.

 Dealer         This code is used to specify local retailers that the
                club is affiliated with or has special relationships with.

 Exchange       Used to mark entries that are other clubs.  Amiga Atlanta
                has newsletter exchange programs with several other clubs.

 Manuf'er       Is any entry for a company that produces Amiga products.

 Officer        Is a subset of Member; Officer status indicates that this
                entry is a current club office holder.

 Family         This is for a special kind of membership for families
                living at the same address.

 Business       This is for a corporate sponsorship, where several people
                working for the same company are members on the company's
                behalf.

    @{B}ALSO SEE@{UB}
    @{"Printing     " link PRINT}
    @{"Sorting      " link SORT}
    @{"Updating Data" link UPDATE}
@ENDNODE

@NODE DELETE "Deleting Data From IntuiDex Databases"
    @{fg SHINE}DELETING EXISTING MEMBERS FROM THE DATABASE@{fg TEXT}

    If you would like to remove a member from the @{"database" link LEX}, it's very easy:
Using the proportional @{"gadget" link LEX} on the right side of the window, or the up
and down arrow keys on the keyboard, find the entry that you would like to
edit (NOTE: you can also use the @{"'Find'" link FIND} feature to make this job easier).

    When you have found the entry that is to be deleted, you can do one of
three things:

    1) Click the 'Delete' @{"gadget" link LEX} at the bottom of the window
    2) Hold down the right Amiga key and press the 'd' key on the keyboard
    3) Select the 'Delete Entry' item from the Actions Menu.

    When you have done one of these three things, you will be confronted
with a small @{"requester" link LEX} window, asking if you're sure you want to delete
the entry, having the choices of 'Cancel,' which obviously cancels the
action, and 'Yes, Delete Entry!' which REALLY DOES erase the data.

     @{fg SHINE}CAUTION: ONCE DATA IS DELETED, IT CAN'T BE RECOVERED! BEWARE!@{fg TEXT}
@ENDNODE

@NODE FIND "Finding Data in IntuiDex"
    @{fg SHINE}FINDING AN ENTRY IN INTUIDEX@{fg TEXT}

    Finding data in an IntuiDex @{"database" link LEX} is accomplished through the
@{"data entry requester" link REQUESTER}.  Start by doing one of three things from the main
window:

    1) Click the 'Find' @{"gadget" link LEX} at the bottom of the window
    2) Hold down the right Amiga key and press the 'f' key on the keyboard
    3) Select the 'Find Entry' item in the Actions @{"menu" link LEX}

    When one of these actions are taken, the IntuiDex data @{"requester" link LEX}
window opens.  Search criteria is then entered.  When the criteria for the
search is entered, press the 'OK!' @{"gadget" link LEX} at the bottom of the window.

    The only field that can't be used as a search criteria is the @{"status" link STATUS}
@{"gadget" link LEX}.

    If any entries that match the search criteria, the first one that does
is displayed in the main window.  If more than one entry matches, they can
be cycled through by using the @{"Next" link NEXT} function.

    If no matches were found, a small @{"requester" link LEX} opens telling you that no
entries match the criteria.

    @{B}ALSO SEE@{UB}
    @{"Adding Data          " link ENTER}
    @{"Data Entry Requester " link REQUESTER}
    @{"Dialing              " link DIAL}
    @{"Editing Records      " link EDIT}
    @{"Next                 " link NEXT}

@ENDNODE

@NODE SORT "Sorting Data in IntuiDex"
    @{fg SHINE}SORTING INTUIDEX DATABASES@{fg TEXT}

    IntuiDex provides several different ways that the membership @{"database" link LEX}
can be sorted.  These options allow for @{"printed" link PRINT} reports to be made
for many different uses.

Sorting Options         Description
==========================================================================
First Name              Sort by the First Name field

Last Name               Sort by the Last Name field.  Useful when printing
                        reports where people can verify their membership
                        information.

ZIP code                Sorts by ZIP.  Useful for mailing purposes.  If
                        ZIP+4 codes are used, they are handled
                        automatically.

Member #                Sorts the list by the Memeber number field in the
                        @{"database" link LEX}.

City                    Sorts by City.  Useful demographic data?

Expiration              Sorts the list by the Expiration field.  This is
                        Useful for creating lists of people who have
                        expired, or will expire soon.

    Note that IntuiDex defaults to sorting by ZIP code.  It has been found
that the United States Postal Service delivers mail faster if it is sorted
by ZIP code.  This is also a requirement if you are planning to mail using
bulk rates.

    Also, note that it has been found that mail delivery is also speeded by
making use of the ZIP+4 code.  If you don't know what the "+4" code is for,
or how to use it, please see your local Postmaster.

    @{B}SEE ALSO@{UB}
    @{"Find         " link FIND}
    @{"Print        " link PRINT}
@ENDNODE

@NODE PRINT "IntuiDex Printer Support"
    @{fg SHINE}USING INTUIDEX TO PRINT REPORTS AND MAILING LABELS@{fg TEXT}

    IntuiDex currently supports three types of printed output:

    1) Mailing labels
    2) Phone Lists
    3) Database lists (not currently available)

    @{fg SHINE}MAILING LABELS@{fg TEXT}
    Mailing labels are used for just that- mailing.  (Actually, they can
be used for anything that requires a name and an address to be printed on
an item.)

    When you click on the "Mailing Labels..." @{"gadget" link LEX} from the IntuiDex Print
window, another window pops up, allowing you to customize the way that the
labels are printed.  Along the left side of the window are four "radio
buttons" that select which @{"record" link LEX}s in the @{"database" link LEX} to print.  These options
are

"Entire List"           Print every @{"record" link LEX} in the @{"database" link LEX}.

"Current Records Only"  Prints all the @{"record" link LEX}s that do not have the
                        "Pending" or "Expired" status.  This is useful for
                        most mailing activities, such as a monthly
                        newsletter.

"Results of Find"       Uses the most recent @{"Find" link FIND} to select which @{"record" link LEX}s to
                        print labels for.  This is useful if you want to
                        mail to a specific group of people in the @{"database" link LEX}
                        that have common attributes.

"Specify Status Code"   Activates the "Status Code" cycle @{"gadget" link LEX} directly to
                        right of this choice.  All @{"record" link LEX}s in the @{"database" link LEX}
                        that have this status are printed.

    @{I}@{fg SHINE}NOTE:@{fg TEXT} If you are using Avery 8160 Ink Jet mailing labels, be sure to set the @{"AVERY" link CONFIGURE} @{"Tooltype" link LEX}.@{UI}


    @{fg SHINE}PHONE LISTS@{fg TEXT}

    Phone lists are useful when you are trying to do "phone blitzing,"
calling a large percentage of the the @{"record" link LEX}s in the @{"database" link LEX} for some
purpose.  Clicking on "Phone List" from the IntuiDex Print window brings
up a window similar to the one used for mailing labels.  The same criteria
can be used for selecting which @{"record" link LEX}s to print in the phone list as for
mailing labels.



    @{fg SHINE}PRINTING TO PLACES OTHER THAN @{"PRT:" link LEX}@{fg TEXT}

    On some occasions, it may be useful to print somewhere other than @{"PRT:" link LEX},
the Amiga printer device.  The IntuiDex Print window has a cycle gadget that
gives users the choice of printing to @{"PRT:" link LEX}, @{"PAR:" link LEX}, @{"SER:" link LEX}, and to a disk file.
Note that printing to @{"PRT:" link LEX} is preferred for hardcopy (to a printer) output,
as @{"PRT:" link LEX} makes use of the currently selected printer driver, and is more
likely to work properly.


    @{B}SEE ALSO@{UB}
    @{"Configuration    " link CONFIGURE}
    @{"Find             " link FIND}
    @{"Sort             " link SORT}
    @{"Status Codes     " link STATUS}
    @{"Updating Data    " link UPDATE}
@ENDNODE


@NODE UPDATE "Updating Entries Based On Expiration Dates"
    @{fg SHINE}UPDATING THE DATABASE: MARKING EXPIRED MEMBERS@{fg TEXT}

    It is often necessary to find who in the club has expired memberships,
and the Update function was designed to make that job easy.  By

    1) Clicking on the 'Update' @{"gadget" link LEX} at the bottom of the window,
    2) Hold down the right Amiga key and pressing the 'u' key on the keyboard,
    or
    3) Selecting 'Update List' from the Actions @{"menu" link LEX}

all entries in the current @{"database" link LEX} that have expiration dates in the past
are automatically marked with the 'Expired' @{"status" link STATUS}.  When marked
as 'Expired,' special reports can be @{"printed" link PRINT}.


    @{B}ALSO SEE@{UB}
    @{"Printing    " link PRINT}
    @{"Status Codes" link STATUS}
@ENDNODE

@NODE NEXT "What The 'Next' Button Does"
    @{fg SHINE}THE NEXT FOUND FUNCTION:  EASY ACCESS@{fg TEXT}

    The Next function is normally used in conjunction with the @{"Find" link FIND}
function.  After using Find to select entries based on some search
criteria, Next is used to display them in the order that they were found.

    If Find was not used, Next simply displays the subsequent entry
in the @{"database" link LEX}.

    An important feature of Next is that it wraps around to the first
item in the list after it reaches the bottom.


    NOTE
    If you simply want to step up and down through the @{"database" link LEX}, you may
either use the mouse and adjust the proportional @{"gadget" link LEX} along the right
side of the window, or use the up and down arrow keys on the keyboard to
step through the @{"database" link LEX} one entry at a time.

    @{B}ALSO SEE@{UB}
    @{"Dial     " link DIAL}
    @{"Find     " link FIND}

@ENDNODE

@NODE DIAL "Let Intuidex Dial the Phone"
    @{fg SHINE}DIALING USING INTUIDEX@{fg TEXT}

    Intuidex supports the use of a Hayes compatible @{"modem" link LEX} to dial the phone
for you.  Only the currently shown entry may be dialed.  To dial a group of
people, you may use the @{"find function" link FIND} to select the ones you want to dial,
and then use the Dial and @{"Next" link NEXT} functions dial each entry in the list.

    To use the Dial function, first find in the list the person whom you
wish to call.  Then select the "Dial Phone" button.  A @{"requester" link LEX} will pop
up, asking if you want to dial the evening or daytime phone number.  After
you select which number you want, Intuidex will dial the @{"modem" link LEX}, and present
another requeseter asking you to pick up your phone.  Once you have picked
up your phone, click the button in the @{"requester" link LEX}.

    Note that the @{"modem" link LEX} will not hang up until you cancel the
@{"requester" link LEX}. If someone picks up the phone at the other end before you cancel
the @{"requester" link LEX}, they will not be able to hear you.

    IntuiDex comes preconfigured to use tone dialing on a modem attached to
the Amiga's internal serial port.  If your phone line is tied into a PBX
(need to dial "9" to get an outside line) or need other dialing
customizations, or if your modem is attached to a different serial port, you
can change the @{"tooltypes" link CONFIGURE} in the IntuiDex icon to specify your needs.


    @{B}ALSO SEE@{UB}
    @{"Configuring IntuiDex" link CONFIGURE}
    @{"Find                " link FIND}
    @{"Next                " link NEXT}

@ENDNODE

@NODE CONFIGURE "Configuring IntuiDex"
    @{fg SHINE}CONFIGURING AND CUSTOMIZING INTUIDEX@{fg TEXT}

    IntuiDex 2.0 uses the @{"Tooltypes" link LEX} stored in the program's @{"icon" link LEX} for its
configuration information.

NOTE: Configuration change only effect when IntuiDex is started AFTER the
changes are made.  You can change the @{"icon" link LEX}'s @{"Tooltypes" link LEX} any time you wish,
but the effects do NOT take effect until the next time you launch IntuiDex.

    Most of the tooltypes listed below take string arguments, which must be
enclosed in double quotes (").  The fields that accept strings are noted
with a {S} at the beginning of their discriptions.   Those that accept
numbers are noted with {N}.  Others are either boolean (such as AVERY), or
specifically indicate what proper values can be.

Below is a list of the @{"Tooltypes" link LEX} that IntuiDex recognizes, and what they do.

ASCII_FEILD     {N} The ASCII (American Standard Code for Information
                Interchange) code that is to be used to seperate fields in
                @{"ASCII" link ASCII-IMPORT} imports and exports.

ASCII_RECORD    {N} The ASCII code that is to be used to seperate @{"record" link LEX}s in
                @{"ASCII" link ASCII-IMPORT} imports and exports.

AUTO_UPDATE     For easier operation, IntuiDex can automatically mark newly
                expired entries as expired when loading new data files.
                Leaving AUTO_UPDATE uncommented (no parentheses around it)
                leaves this function on.  This has the same effect as
                clicking on the "UPDATE" gadget immediately after loading
                the new data file.

AVERY           In order to make their labels work with Hewlett-Packard
                DeskJet printers (that can't print on the bottom 1/2" of the
                paper),  Avery 8160 ink jet labels have 1/2" margins at the
                top and bottom of each sheet.
                Uncomment (take the parentheses out from around) this
                ToolType in order to enable the skipping of this wasted
                space.

                @{I}PLEASE NOTE: Not all laser labels are set up this way.
                33-label sheets of laser labels are common.  DON'T USE THIS
                IF YOU ARE USING 33-LABEL SHEETS OF LASER PRINTER MAILING
                LABELS.@{UI}

DATE_FORMAT     Holds one of the following values, which determines the way
                dates are dispayed and stored in IntuiDex:

                DATE_USA           --   MM/DD/YY
                DATE_USA_SHORT     --   MM/YY
                DATE_AMIGA         --   DD-Mon-YY
                DATE_INTERNATIONAL --   DD-MM-YY

DEFAULT_FILE    {S} The file to be loaded when IntuiDex is started.  Comment
                this tooltype (enclose it in parentheses) to disable this
                feature.

DEFAULT_PATH    {S} The complete path to where you want to store your
                IntuiDex data files.

DIAL_PREFIX     {S} The command to be sent to the modem to make it dial
                phone numbers.  Examples:
                    "atdp"          dial modem with pulse dialing
                    "atdt"          dial modem with tone dialing
                    "atdt *70,"     dial modem, turn off call waiting
                    "atdt 9,"       dial modem, get an outside line

EMAIL           {S} The string that is to be displayed to identify the field
                normally used to hold a person's E-Mail address.

EQUIP           {S} The string that is to be displayed above the area that
                is normally used to display what computer equipment that the
                person has.

MAKEICONS       Uncomment this if you want IntuiDex to generate @{"icon" link LEX}s (save
                .info files) for its data files

MEMBERSHIP_LENGTH {N} The length of your organization's membership, in
                months.  This number is used to automatically calculate the
                exiration date of newly entered members when you use the @{"ADD" link ENTER}
                function.

NOTES           {S} The string that is to be displayed above the area that
                is normally used for miscellaneous notes.

PRINT_DEST      {S} The default destination of printed output.  By default
                this is @{"PRT:" link LEX}, the Amiga printer device.  If you wish to
                @{"print" link PRINT} to a file by default instead, the filename, with
                complete path, can be placed here.

                NOTE: The default printer destination given here can be
                overridden in the Printer window.
                @{I}See page 9-5 of the Amiga OS 3.1 Workbench manual for more
                information concerning Amiga printer drivers.@{UI}

PRINT_LINES     {N} The number of lines that are to be printed on a page by
                the phone list and other printing routines.  For most
                printers, this is 66, but for Hewlett-Packard DeskJets this
                is 63.
                {I}This number should match the number of lines that have
                been set in the Printer preferences.{UI}

SERIAL_DEVICE   {S} The name of the device used to talk to the modem.  If
                your modem is attached to the Amiga's serial port, then this
                should be "serial.device".

SERIAL_UNIT     {N} The unit number to be used to talk to the modem.  If
                your modem is attached to the Amiga's serial port, then this
                should be 0.

SUBSCRIPTION    {S} The string that is to be displayed beside the
                subsciption indicator box on the main window, and beside the
                checkbox on the data entry @{"requester" link LEX}.

USMAIL          The United States Postal Service uses automated equipment
                to sort mail and expedite delivery.  If you buy stamps in
                books, you'll notice that on the inside of the cover it says
                @{I}"Help speed mail delivery.  Please use all capital letters
                with no punctuation in addresses."@{UI}  If you wish to get your
                mail delivered faster, leave this @{"tooltype" link LEX} uncommented.
                If you wish your mailing labels to be printed in mixed-case,
                and have punctuation marks included, simply comment it out
                (enclose it in parentheses).


    @{B}SEE ALSO@{UB}
    @{"ASCII Import/Export  " link ASCII-IMPORT}
    @{"Disk Files           " link DISK}
    @{"Printing             " link PRINT}

@ENDNODE


@NODE MERGE "Mail Merge"
    @{fg SHINE}CREATING & READING MAIL MERGE FILES WITH INTUIDEX 2.0@{fg TEXT}

    Mail merge files are used by word processors to print identical letters
to numerous people by inserting each name and address into a "form" letter.
Please see your word processor manual on how to use the merge files created
with IntuiDex.


    The list below indicates the supported word processors.  If your word
processor is not listed below, note that I have a @{"special incentive" link REGISTER} for your
help in adding your word processor.

    @{fg SHINE}SUPPORTED WORD PROCESSORS@{fg TEXT}
    Amiga WordPerfect
    Final Writer
    Excellence!

@ENDNODE


@NODE ASCII "ASCII Import/Export Facilities"
    @{fg SHINE}TRANSFERRING EXISTING DATA TO AND FROM INTUIDEX@{fg TEXT}

    Often, it is necessary to move existing databases from other packages
into IntuiDex.  This is most easily accomplished by using what is known as
an ASCII delimited file.  This is a special kind of text file, where obscure
characters, such as tildes (~) or vertial bars (|) are used to seperate
the different pieces of information.  Typically two "delimiters," or data
seperators, are used- one to seperate records in the file, and another to
seperate fields in each record.

@{B}NOTE:@{UB}   The characters used as delimiters MUST NOT be used anywhere else in
        the data file, for any reason.


    IntuiDex has a flexible system that allows the specification of the two
delimiting characters, and also the order in which the data is stored in the
text file.

    By default, the ASCII character 124 (|) is used to seperate records in
the ASCII text file, and character 126 (~) is used to seperate fields.
These defaults may be changed by changing their associated @{"Tooltypes" link CONFIGURE} in the
IntuiDex icon.

    The way IntuiDex reads the data in the text file is specified by the
@{"ASCII Configuration" link ASCII-CONFIG} window, which is accessed by pressing the "Configure
Fields" button in the @{"ASCII Import" link ASCII-IMPORT} and @{"ASCII Export" link ASCII-EXPORT} windows.

    If you currently keep your mailing list in a word processor, it may be
easier to use one of the @{"mail merge import" link MERGE} filters to bring over your data.

    @{B}ALSO SEE@{UB}
    @{"ASCII Import   " link ASCII-IMPORT}
    @{"ASCII Export   " link ASCII-EXPORT}
    @{"ASCII Configure" link ASCII-CONFIG}
    @{"Mail Merge     " link MERGE}
@ENDNODE

@NODE ASCII-IMPORT "ASCII Import"
    @{fg SHINE}IMPORTING ASCII-DELIMITED FILES@{fg TEXT}

    When transferring data from other @{"database" link LEX} systems, such as SuperBase,
it is often times convienent to use an ASCII delimited file.  This means
that a text file is used to transfer the data, with one obscure character
used to seperate fields in each @{"record" link LEX}, and a second obscure character used
to seperate @{"record" link LEX}s.

    To use the IntuiDex ASCII Import feature, you must first @{"configure" link ASCII-CONFIG} the
system to understand the data files that you wish to use.

    Once the Import filter is configured, you simply specifiy the filename
that you want to use to load the data from, and the two obscure characters
to use for separating fields and records.  Either type the name (with a
complete path) into the string gadget, or press the small button next to the
string gadget.  An @{"ASL" link LEX} file @{"requester" link LEX} will pop up, allowning you to easily
select the path and name for the file to be saved.

    @{B}ALSO SEE@{UB}
    @{"ASCII Export        " link ASCII-EXPORT}
    @{"ASCII Configuration " link ASCII-CONFIG}
@ENDNODE


@NODE ASCII-EXPORT "ASCII Export"
    @{fg SHINE}EXPORTING ASCII-DELIMITED FILES@{fg TEXT}

    @{"ASCII" link LEX} Delimited exporting is saving the data in the IntuiDex database in
a form that can be handled by some other package that can import ASCII text.
For example, you may have to trade data back and forth between IntuiDex and
another database program that someone else chooses to use (GASP!).  By using
the ASCII Export feature, you can save out a file that your friend can use
by importing into his system.

    To use the IntuiDex ASCII Export feature, you must first @{"configure" link ASCII-CONFIG} the
system to understand the data files that you wish to use.

    Once the Export filter is configured, you simply specifiy the filename
that you want to use to save the data to, and the two obscure characters to
use for separating fields and records.  Either type the name (with a
complete path) into the string gadget, or press the small button next to the
string gadget.  An @{"ASL" link LEX} file @{"requester" link LEX} will pop up, allowning you to easily
select the path and name for the file to be saved.

    @{B}ALSO SEE@{UB}
    @{"ASCII Import        " link ASCII-IMPORT}
    @{"ASCII Configuration " link ASCII-CONFIG}

@ENDNODE

@NODE ASCII-CONFIG "Configuring the ASCII Import/Export System"
    @{fg SHINE}CONFIGURING FOR YOUR DATA FILE@{fg TEXT}

    Configuring Intuidex requires knowledge of the order of the fields, and
which fields, are used in the text file.  A special requester is used to
facilitate the generation of ASCII Import/Export configuration files. These
files tell IntuiDex how the data is stored in a file to be imported and how
data to be exported is to be placed into the file.

    Basically, the IntuiDex ASCII Configure window allows the user to
specify the order that the database fields are to be stored in the file.
For example, if the first field in the stored records is the first name of
the person, then the First Name box should hold a "1."  If a field is not
to be included in the exported or imported data, then that field should be
set to zero (0).  This deactivates that field in the import/export process.

    @{B}ALSO SEE@{UB}
    @{"ASCII Import        " link ASCII-IMPORT}
    @{"ASCII Export        " link ASCII-EXPORT}
@ENDNODE

@NODE TODO "Features To Be Added In Future Releases"
    @{fg SHINE}FEATURES TO BE ADDED TO INTUIDEX@{fg TEXT}


    The following features are yet to be implemented:

    * Word processor mail merge import/export (Maybe one day...:( )

    * Configurable database printed output..  I want this to be done through
      some kind of form editor, so the user has control of how the stuff
      gets put on paper.
@ENDNODE

@NODE BUGS "Things Yet To Fix"
    @{fg SHINE}PROBLEMS TO RESOLVE THAT STILL EXSIT IN THIS RELEASE OF INTUIDEX@{fg TEXT}

@ENDNODE


@NODE LEX "IntuiDex Glossary"
    @{fg SHINE}GLOSSARY@{fg TEXT}

@{B}ASCII@{UB}       American Standard Code for Information Interchage
            A 7-bit binary code for storing and transmitting alphanumeric
            (text) data in a form that is easily manipulated by computer.

@{B}ASL@{UB}         Amiga Standard Library.  The ASL library has been a part of the
            Amiga's operating system since release 2.0.  It provides the OS
            with a set of easy to use @{I}requester@{UI}s.  Until the advent of this
            library, each program had to build its own file, font, and color
            palette @{I}requester@{UI}s, which was both time consuming and made the
            programs larger.  The ASL library lives in the LIBS: drawer.

@{B}BBS@{UB}         Bulletin Board System.  A computer system that is accessed via
            telephone lines.  BBSs typically are run from a single computer
            and are much smaller in scope than commercial information
            services such as CompuServe or Delphi.

@{B}database@{UB}    1) A collection of "records" that make up the membership
                roster.
            2) A program that manipulates collections of "records."

@{B}drawer@{UB}      The Amiga's graphic representation of a @{I}subdirectory@{UI} on a disk.

@{B}Enforcer@{UB}    A program written by Michael Sinz of Commodore-Amiga
            used by software authors to ensure that their programs work
            properly.  Enforcer catchs and reports many bugs that could
            otherwise go unnoticed and cause your Amiga to crash.

@{B}export@{UB}      To save data out to a disk file in a format that can be read by
            another program.

@{B}gadget@{UB}      An element of the Amiga video display that allows the user to
            interact with the Amiga.  Gadgets may take on many forms,
            including buttons, data (text, numbers) entry boxes and sliders.
            @{I}For more information, see page 3-6 of the Amiga OS 3.1
            Workbench manual.@{UI}

@{B}icon@{UB}        "Gadgets" that are displayed in the Workbench window.  Icons can
            represent many things, but usually represent programs (Tools),
            data files (Projects), disks (Disk), and subdirectories
            (Drawers).

@{B}import@{UB}      To load data from a disk file that was produced by another
            program.

@{B}keyboard shortcuts@{UB}  Special keypresses that serve the same function as
            actions that are normally performed with a mouse or other input
            device.  Shortcuts allow the operation of the program without
            having to remove ones hands from the keyboard.

@{B}library@{UB}     A collection of routines that are used by programs to provide
            commonly used routines.  The use of libraries keeps programmers
            from having to "re-invent wheels" such as @{I}requesters@{UI}.

@{B}menu@{UB}        The lists of actions that are displayed when the user holds down
            the right mouse button while the pointer is int the "title bar"
            of the screen.
            @{I}For more information, see page 3-3 of the Amiga OS 3.1
            Workbench manual.@{UI}

@{B}modem@{UB}       Originally a contraction for MOdulator/DEModulator.  Most modems
            change a digital computer signal into an audiable (tones [!])
            signal that can be sent over a phone line, and vice versa.

@{B}PAR:@{UB}        The Amiga's stock parallel port.  Printing to PAR: bypasses the
            currently selected Preferences printer driver.  Although this
            may be useful for certain applications, its use with IntuiDex
            is not recommended.
            @{I}For more information, see page 3-3 of the Amiga OS 3.1
            DOS manual.@{UI}

@{B}PRT:@{UB}        The Amiga printer device.  PRT: makes use of the currently
            selected Preferences printer driver, and automatically takes
            care of the printer-specific and interface-specific work.  Users
            control how PRT: operates through the Printer preferences
            program.  For hardcopy (to paper) output, it is recommended that
            PRT: be used.
            @{I}For more information, see page 3-3 of the Amiga OS 3.1
            DOS manual, or page 5-22 of the Amiga OS 3.1 Workbench manual.@{UI}

@{B}record@{UB}      A single entry in an IntuiDex database.  Each record holds
            the member's name, address, phone number(s), and other
            information.

@{B}requester@{UB}   A special window used by Amiga programs to allow the user to
            interact with the software in a specialized and limited way.
            @{I}For more information, see page 3-18 of the Amiga OS 3.1
            Workbench manual.@{UI}

@{B}SER:@{UB}        The Amiga's stock serial port.  Printing to a printer connected
            to the serial port through SER: bypasses the currently selected
            Preferences printer driver.  Although this may be useful for
            certian applications, its use with IntuiDex is not recommended.
            @{I}For more information, see page 3-3 of the Amiga OS 3.1
            DOS manual.@{UI}

@{B}shareware@{UB}   Software that is sold on a "try before you buy" basis.  Users
            are given a free "trial" copy of the software.  If they find it
            useful, they are encouraged to "register" by sending some
            specified ammount of money to the author of the program.  When
            a user registers a program sold as shareware, it is customary
            for the author of the software to send the user a a copy of the
            latest version.  If it is available, printed documentation is
            also sent to registering users.


@{B}shortcuts@{UB}  See @{I}keyboard shortcuts@{UI}.

@{B}subdirectory@{UB}    A division of a disk that is used to keep related files
            seperated from the rest of the contents of the disk.  On the
            Amiga, subdirectories are represented graphically as @{I}drawers@{UI}
            which, by analogy with a filing cabinet, keep files of different
            matters seperated.

@{B}sysop@{UB}       Contraction for SYStem OPerator.  Someone who runs a bulletin
            board system (@{B}BBS@{UB}).

@{B}Tooltypes@{UB}   Information stored in a program's icon that controlls how the
            program operates.
            @{I}For more information, see page 3-16 of the Amiga OS 3.1
            Workbench manual.@{UI}

@{B}WWW@{UB}         World Wide Web.  A system of hypertext and multimedia
            information resources available through the Internet.
            People and organizations can put up "pages" that give
            information about what they're doing.  These pages can have
            graphics, text, and even sound.
@ENDNODE
