CONTACT TRACKING SYSTEM VERSION 3.1 DOCUMENTATION The Contact Tracking System (version 3.1) is produced and copyrighted by Jamal Mazrui of Access Success. It is a shareware database management system for keeping track of contacts of people and companies, and the ongoing status of relationships with those contacts. A contact file contains address and phone number information about each contact; a status file contains dates and descriptions of events in connection with those contacts. A wide range of operations can be performed on each record including the ability to create the skeleton of a letter to a contact and load it into your word processor, address an envelope, and dial a phone number with your modem. Report options include mailing labels, a list of reminders organized chronologically, and mail merge form letters. The system is written to work well with a speech synthesizer and screen reader program. It will automatically verbalize relevant information. It is also meant to be visually friendly, however, and need not be used with speech output. The 3.1 version of CTS has many improvements over earlier versions, based to a great degree on feedback from users. Refer to the file 'UPGRADE.TXT' for a list of features and changes incorporated in this version. Feedback is appreciated from users, including information on any program bugs or typographical errors discovered, on effective uses of the system, and on ideas for future improvement. CONTENTS Introduction Installation The Menu Interface The Update Interface Adding, Editing, and Deleting records Searching for Records Tagging and Untagging Records Writing and Viewing Memo Text Counting, Listing, and Examining Records Generating an Individual Letter Transferring Records Zooming to the STATUS File Dialing with Your Modem The Report Interface Report Types Generating Form Letters Utilities Creating New Contact Files Installing Contact Files from Other Sources Registration Information Help Screens INTRODUCTION The Contact Tracking System is written and compiled in the Foxbase Plus programming language: a "dialect" of the DBASE language, widely used for database management applications on IBM- compatible personal computers. Portions of the code were generated using the Genifer development tool (copyright by Bytel Corporation). Data is stored in the standard 'DBF' file format, so conversion of data between this and other applications is not technically difficult. If you are currently storing contact data with another program and may wish to convert it to the CTS format, you can inquire about a conversion service offered to CTS customers. The Contact Tracking System (CTS) is contained in two archive files: CTS31#1.ZIP and CTS31#2.ZIP. These archives can be uncompressed with the PKUNZIP.EXE utility (copyright by Phil Katz). The first archive, CTS31#1.ZIP, contains all program and documentation files specific to this system. The second archive, CTS31#2.ZIP, contains the Foxbase Plus interpreter software (copyright by Fox Software), needed to run programs written in the Foxbase Plus language. To repeat, the Contact Tracking System is not a self executing program like programs which have a 'COM' or 'EXE' extension. Rather, it requires Foxbase software to interpret and execute code during its operation. The second archive of this package contains either the demo or runtime version of the Foxbase Plus interpreter. In accordance with the author's license agreement with Fox Software, the fully functional runtime version must be distributed directly by the author to each user. It cannot be posted on a bulletin board or distributed by one user to another. The demo version, however, can be freely distributed without these limitations. It is fully functional except for a limit of 120 records per database file. You may thus use and share the demo version of this package all you like, but you need to contact the author directly to purchase the fully functioning version, which you may not distribute to others. INSTALLATION Consult the 'INSTALL.TXT' file for instructions on performing a convenient, automatic installation of the Contact Tracking System. The file 'README.TXT' provides instructions for a manual installation. These are also summarized here as general information. CTS may be installed by uncompressing the two distribution files, 'CTS31#1.ZIP' and 'CTS31#2.ZIP' into a new directory on your hard drive, such as 'C:\CTS'. Then change to this directory and enter the name of the batch file that loads the system. The demo package incorporates the 'FOXPLUS.EXE' interpreter software and the batch file 'CTSDEMO.BAT.' The runtime package uses the 'FOXPRUN.EXE' software and the batch file 'CTS.BAT.' You will thus enter either "CTSDEMO" or "CTS" at the DOS prompt to load the Contact Tracking System. Configuration information specific to your installation is stored in a file called 'CTS.CNF', which the program reads during the loading phase. If no 'CTS.CNF' file is found, you will be presented with two configuration help screens, followed by two screens for entering configuration information. After responding to the prompts for configuration data, a configuration file will be created and you will be presented with the Main Menu of the system. The rest of this document provides operating instructions for CTS. Other, miscellaneous documentation is contained in files with a .TXT or .DOC extension. One of these, 'FILELIST.TXT', is a list of the names and purposes of all files in the CTS package. Three types of user interfaces appear consistently throughout the Contact Tracking System, corresponding to the tasks of selecting from menus, updating databases, and generating reports. After these interfaces are explained, the specific reports and utilities available will be described. Next is information on contacting the author and obtaining the full, registered package. Finally, all help screens are presented to serve as a summary and reference. THE MENU INTERFACE Menu screens are laid out as follows. On the third line from the top are two screen titles: the title of the system, "Contact Tracking System", at the left and the title of that particular menu at the right, e.g., "Main Menu." Below this, menu options are displayed, one per line. One of the menu options will be highlighted, indicating that it is the "current" option, the one that will be selected if you press the Enter key. Pressing the Up or Down arrow keys will change the current option to the one above or below accordingly. Thus a menu option can be selected by pressing the Up or Down arrow keys until it becomes the current one, and then pressing Enter. An alternative, quicker method of selecting an option is to press the first letter of that option, regardless of what is the current option at the time. For example, if "Help" is an option on the menu, pressing the letter 'H' will select the "Help" option and display a help screen giving more information about each option on the menu. "Help" is usually an option, so selecting it is a good way to explore the system. Pressing F1 is an alternative way to request help. Selecting a "Quit" option or pressing Escape will exit the menu and return you to the screen from which you entered that menu. On the bottom (25th) line of the screen a description of the currently highlighted option appears. It includes the single letter "hot key" that may be used to select that option, regardless of what option is currently highlighted on the menu. For example, the description line of the "Help" option is H = Display help screens This serves as a learning aid and reminder. Unless your screen reader is configured to read lightbars, it will read the description line (on the bottom of the screen) rather than the highlighted option (in the middle of the screen) when you read the current line or move among options with the Up and Down arrow keys. Some screen readers require tracking with the "hardware cursor" for this to work properly. When you enter a menu screen, the menu title and current option will automatically be spoken by your speech synthesizer. If your screen reader is configured to read the current line after pressing the Up and Down arrow keys, then the changing current option will be spoken to you as you use these keys to move among menu options. Depending on the speed of your computer, you may need to configure your screen reader with a "cursor delay" so that the correct option is spoken, rather than the previous one the cursor was on. THE UPDATE INTERFACE An "update" screen is a screen with options for updating the information contained in a database. The name of the database file being updated is displayed at the upper right. Below this are field names and field data, one field per line. Line 24, the second to the last line of the screen, displays the highlighted name of the current option, and a brief help message about keys that can be used. For example, the line might say Press first letter or arrow keys. Enter for Retrieve F1 for Help Thus the "Retrieve" option can be selected by pressing Enter. It is the default option on the Update Menu, since it is used most frequently (explained later). Like other menus, a description of the current option appears on the bottom line, line 25. For example, the description line for "Retrieve" says R = Retrieve a record by its key fields An update option can be selected by pressing its first letter, or by moving to it with the Up and Down arrow keys and then pressing Enter. With a screen reader, the line describing the current option, Line 25, will be read each time you move to a new option. On the update screen, field data from one record is displayed at a time, that record being the current record. For example, a CONTACT database includes fields for a contact's name and address. When an update screen for a CONTACT database is presented, lines displayed will include field names of "FIRST NAME," "LAST NAME," "CITY," etc. and their corresponding field data from the current record, e.g., "Jane," "Doe," and "Sometown," etc. Each time a new record is displayed, the record is identified verbally by summary information being spoken, rather than verbalizing the whole record. This summary information is usually the data that makes that record unique, that is, distinguishes it from others. In a CONTACT file, it is the combination of a last name, first name, and company. In the TYPES file, it is the status type, etc. After the current record has initially been displayed visually and identified verbally on the screen, it can be identified verbally again at any time by selecting the "Identify" option from the Update Menu, invoked with the single '?' (question mark) character. This provides a quick way of knowing what record is currently displayed without issuing a screen reader command to hear the whole screen. As well as the regular identifying information, this command will verbalize the date the record was last updated, as displayed visually on the top line of the screen. ADDING, MODIFYING, AND DELETING RECORDS From the Update Menu, select "Add" to add a new record, e.g., a new friend if updating a file of personal contacts. Select "Copy" to add a new record containing much of the same data as the current record. Just change the fields that are different. Select "Modify" to modify data in the current record. Select "Delete" to delete the current record. You will be prompted for confirmation. Think of the deletion as permanent. However, if you have really made a mistake, you can select the "Undelete" command, which will restore all records deleted in the current update session. Deleted records are permanently removed when you return to the Main Menu, unless there are over 500 records in the file--in which case you are prompted to do this since the processing time may be significant. When adding or modifying a record, or performing any operation which gives you field by field access to the record on the screen, pressing Enter will move you to the next field and pressing Tab will move you to the previous one. (The Down and Up Arrow keys also work, but will cause double speech with a screen reader as it tries to speak the new line in addition to the system automatically doing so.) Page-Up will jump to the first field and page-Down will jump to the last. The cursor will be placed on the first character of the field data, which is to the right of the field name. Your speech synthesizer will automatically speak the field name and current field data when you move to a new field. You can enter characters into a field or just press Enter to leave it the way it is and move on to the next field. A warning beep will sound if you fill a field that contains data of a variable length, e.g., after typing 38 characters in the COMPANY field. This alerts you to the fact that typing any additional characters will overwrite existing ones in the field. Pressing Control-Y will delete data from the cursor to the end of the field. Pressing F6 will delete all data in the field and place the cursor at the beginning of the field. You can press Escape or Control-Q to abort the editing of that screen of fields. You can press F10, Control-End, or Control-W to save the current data in all fields. This is a shortcut to pressing Enter repeatedly until you get past the last field. Pressing F1 will display a help screen giving more information about the current field, including the number of characters of data the field contains, any automatic formatting of the data, and an example of data. Pressing F4 allows you to change the automatic formatting of data in certain fields. Pressing F4 while on the zip code field, for example, allows you to alter the format from American to British or vice versa. Pressing F4 on the state field allows you to change the format from all letters being capitalized to only the initial letter being capitalized. Addresses outside the U.S. can thus include a state or province of up to 10 characters, rather than a 2 character abbreviation. SEARCHING FOR RECORDS Several options on the Update Menu help you locate a specific record. CONTACT records are indexed in alphabetical order by last name, first name, and then company. STATUS records are indexed in chronological order by the WHEN field. Select "Next" to go to the next record in the index order. Select "Previous" to go to the previous record. Select "Beginning" to go to the beginning or first record, and "End" to go to the end or last record. Select "Jump" to jump forward or backward by more than one record. You will be prompted for the number of records. Entering a positive number will jump forward or a negative number will jump backward that many records. Select "Retrieve" if you remember values in the key fields of a record you wish to locate. Since this command is the default on any Update Menu, you can simply press Enter, instead of the letter 'R' (though that will work too). In a CONTACT database, you will be prompted for the last name and then company of the contact. You need not enter all characters of the last name, only enough to make it unique. For example, you could just enter "maz" to find a last name of "Mazrui." Similarly, if you want to find the record of a particular company, you can just enter the first few characters of that company's name. Most of the time, you will only need to enter data in the LAST NAME field and can leave the COMPANY field blank, since this will usually isolate the record you want. If the contact has a company name, but no data in the LAST NAME field, however, you would leave the LAST NAME field blank and only enter data in the COMPANY field. If you select "Retrieve" when updating the STATUS file, you will be prompted for the date of the record to be found. In FILES update, you will be prompted for the file name. In TYPES update, you will be prompted for the STATUS type. In searching for data, the system treats upper and lower case characters the same. If the search is unsuccessful, the system will go to the record whose data most closely matches what you specified. If you remember values in fields other than indexed fields of a record you wish to locate, select "Filter" to limit records displayed to those containing the data in the filter. You will be prompted Scan/Fields/Memo/>Tag/" will set a filter that contains only tagged records. This allows you to tag several records and then perform operations such as transfer and delete on only those tagged records. TAGGING AND UNTAGGING RECORDS To tag the current record, press the '>' key. (The greater than sign is produced by pressing Shift in conjunction with the '.' key.) When the current record is tagged, the system will display the word "Tagged" on the top line of the screen and verbally announce this after identifying the record. Press '<' to untag the current record. To tag or untag all records, or all filtered records if one is set, press the '=' key (standing for "global") and then press either '<' or '>' accordingly. (The equals sign is produced by pressing Shift in conjunction with the '-' key, located to the right of the '0' key.) WRITING AND VIEWING MEMO TEXT Besides the set of fixed-length fields, each CONTACT record and each STATUS record also has a "memo" field, in which miscellaneous text of variable length can be written. Select "Write memo" to enter or edit up to four screens worth of text in a mode that works like a simple word processor. The up and down arrow keys will move from line to line. The Home and End keys will move between words. The delete and backspace keys erase text as expected. Press the F6 key to delete a line. Press the insert key to turn insert mode on, and insert again to restore type-over mode. When done editing, press the F10 key to save the changes you've made to the memo field, or the F7 key to exit without saving these changes. When the memo field of the current record contains text, the system will display the word "Memo" on the top line of the screen and verbally announce this after identifying the record. Select "View memo" to view the contents of the memo field without going into the mode to edit it. COUNTING, LISTING, AND EXAMINING RECORDS Selecting "Yield" will tell you the number of records in the database file, or in the filter if one is set. Thus you could count the number of computer users you know in Boston by setting a filter as previously described and then pressing 'Y' for "Yield." Selecting "List" will list records (in the filter if one is set), one per line starting with the current record. The Up and Down arrow keys allow you to move quickly through this list with each line spoken. Pressing Page Up moves to the previous screen of records; Page Down moves to the next screen. Control-Page-Up moves to the first screen; Control-Page Down moves to the last. Press Spacebar to perform an index search within list mode, just like the "Retrieve" command in update mode. When you have found the record you want, press Enter to exit this list display of many records shown in brief, and return to the full screen display of the record corresponding to the last line you were on in the list. Pressing Escape also aborts this list mode and returns you to the Update Menu. To examine each field individually in the full screen display, press 'X' for "Examine." (The letter 'E' was already being used for the "End" command!) This provides a way of placing the cursor on field data so that it can be read or spelled by your screen reader. It is an alternative to entering your screen reader's review mode. You could thus look up someone's home phone number by pressing 'X' and then pressing Enter until you get to the HOME PHONE field. At this point you can use the Left and Right arrow keys to read by character, or issue a screen reader command to spell the current word. GENERATING AN INDIVIDUAL LETTER Selecting "Generate" will automatically address either an envelope or a letter to the current contact. If you choose "Envelope," you will be asked whether you wish to print in regular or landscape (sideways) orientation. If you choose "Regular," position a business sized envelope in your printer so that the print head is at the upper left corner. Choose "Landscape" if you have an "HP-compatible" laser printer and find that the envelope fits better sideways in the paper tray. It should be positioned so that the flap side is up and the long edge is against the right side of the tray. Choosing "Letter" will create a skeleton of a letter and load this text file into the word processor you specified during configuration. The default file name of the letter is the last name of the contact, or the company if there is no last name. At the "FILE NAME" prompt you can press Enter to accept this default or edit the file name. As usual, the cursor is in overwrite mode unless you changed it to insert mode. Control-Y will delete the default value completely if you want to type a whole new file name. (F6 only deletes a field in an editing screen of multiple fields.) Remember that a file name can have up to 8 characters which are optionally followed by a period and up to a 3 character extension. If you prefer your letters to have an extension other than the default 'LTR', you can specify this. For example, some users enter a "DOC" (standing for document) extension because their word processor expects files to have this extension. If you are writing a second or third letter to, say, "John Smith," then you might name the files "SMITH2.LTR," "SMITH3.LTR," etc. What if you want to load an existing letter but don't remember its exact file name? You can enter a DOS "wild card specification" for the file name. For example, entering "*.LTR" will bring up a list of all files with an "LTR" extension. Entering "SMITH?.*" will bring up a list of all files beginning with the word "SMITH" followed by one character and any extension. This list mode responds to the same keystrokes as the one that may be entered by pressing 'L' from the Update Menu. Cursor to the file name you want and then press Enter. One more question asked before the letter is generated is whether you wish the salutation to be formal or informal. A formal salutation will use the title and last name of the contact whereas an informal one will use the contact's first name only. The system assumes your word processor will give the letter a one inch margin at the top, bottom, left, and right sides of the document. (WordPerfect does this by default.) The letter will be laid out as follows: your return address in the upper right (according to configuration data); the current date below it; the contact's inside address below this against the left margin; a salutation of the form "Dear" followed by a formal or informal reference to the contact as specified; and finally a closing of the form "Sincerely" with your full name in the lower right. Essentially, you just have to fill in the body of the letter, although you may also have to improve its formatting before printing. (In some word processors, such as WordPerfect 4.2, you will want to delete the Control-Z end-of-file character at the end of the letter.) The letter is saved in the letters directory you specified during configuration, and can be re-saved there after you add the body and any formatting changes. A utility called 'SWAPMEM.COM' (copyright by Nico Mak and Mansfield Software Group) is used to swap memory to disk to free up as much memory as possible in order to load your word processor. It is still possible to run out of memory if you were using almost all memory before loading your word processor. The SWAPMEM utility is not compatible with some memory resident software (including some keyboard macro and network shell programs). If your computer locks up before or after loading your word processor, try deleting (or renaming) the 'SWAPMEM.COM' file. The system will then try to load your word processor in the memory available during the operation of CTS. If your word processor is small or if your computer is configured with additional (extended or expanded) memory, the word processor may load successfully. TRANSFERRING RECORDS Selecting "Transfer" from the Update Menu presents you with the "Files Menu" where you can select a CONTACT file to which you would like to transfer a copy of the current CONTACT record. This allows you to create new CONTACT files out of existing ones without re-typing. If a filter is set, you will be prompted as to whether to transfer all filtered records, or the current record only. A common use of this feature is when you want to create a CONTACT file for a special mailing by transferring contacts to it from various other CONTACT files. As a source record is transferred, the target file is checked to see if it already contains a record with the same key value, that is, with the same last name, first name, and company combination. If so, you will be prompted "Update/Replace/Display/Cancel." Select "Update" to replace the target record with the source record if the source was updated more recently. (The date a record was last updated is displayed on the top line of the screen when at the Update Menu. It may be verbalized by pressing '?' to identify the current record.) Select "Replace" to replace the target record with the source record regardless of the dates they were last updated. Select "Cancel" to cancel the transfer and leave the target record as is. Selecting "Display" will display for comparison the source record on the left side of the screen and the target record on the right. You will then be able to choose whether to replace the address, the phone numbers, both address and phone numbers, the work phone only, the home phone only, or the entire record. You may also cancel the transfer at this point. If you are transferring a set of filtered records rather than a single record, you will be asked at the beginning whether to update, replace, or cancel the transfer on records with the same key value. ZOOMING TO THE STATUS FILE On the Update Menu, a "Zoom" option is available if you are in a CONTACT file. This allows you to update related records in the STATUS file. A common use of this command is after you've entered a new contact into, say, your file of business contacts. You may want to write a reminder to yourself to call or write that contact about something. Pressing 'Z' will "Zoom" you to any STATUS records that exist regarding that contact. If there are none, the "Add" update option will automatically be invoked, presenting you with the TYPE field of a new STATUS record. The 8 character TYPE field allows you to classify the kind of STATUS record you are creating. Several STATUS types have been provided by default, though you may change these as you wish from the "Types Update" module, accessed from the Main Menu. The default types indicate a written, phone, or in-person transaction in the future or past between you and the individual or business in question. As a convention, the word "should" means that you plan to take an action and the word "have" means that the action was taken by you. Correspondingly, the word "will" means that the other party plans to take an action and the word "did" means that the action was taken by the party. Thus the default STATUS types are as follows: SC = Should call SM = Should meet SW = Should write HC = Have called HM = Have met HW = Have written WC = Will call WM = Will meet WW = Will write DC = Did call DM = Did meet DW = Did write If a planned transaction occurs, you may indicate this by either entering a new STATUS record or modifying the existing STATUS record by typing a new letter over the first letter of the STATUS type. For example, to indicate that you wrote a letter that you had reminded yourself to do, you could modify the "SW" to "HW" to change the meaning from "should write" to "have written." The "when" field can contain either the date of the transaction or the date you entered the record (which is the default value). An additional STATUS type of "BD" indicates the birthday of the contact, as entered in the WHEN field. Other STATUS types may be added according to your need to track transactions with contacts. The TYPES file contains a record for the value and description of each valid status type. If you are updating a STATUS record and you enter a status type that is not found in this file, you will be prompted as to whether you want to select, edit, or create a status type. Pick the "Edit" option if you realize you made a typing error and wish to alter the spelling of the status type you had just entered. The "Select" option will take you to a menu of the existing status types and make the current option the one closest alphabetically to the one you had entered in the field. The STATUS type menu works like the Files Menu, requiring you to press Enter to confirm the option you want, since more than one STATUS type may begin with the same letter. The choice you selected will then be placed in the status type field. The "Create" option allows you to create a new status type, that is, to add another valid value to the list. If you select this option, you will be prompted for up to a 65 character description of the value. For example, you may have entered a status type of "MF" to indicate that you are using this STATUS record to indicate that someone paid a membership fee to an organization whose membership you are tracking. If "MF" was not a valid status type, then rather than the cursor moving to the next field, the system would give you a "Select/Edit/Create" prompt. If you press 'C' for "Create,", it would then prompt you for a description for this new "MF" type of STATUS record. You might enter "Membership fee received" to indicate how this type is meant to be used. Following the TYPE field is the WHEN field, which allows you to associate a date with the STATUS record. Today's date is the default, so just press Enter if that is satisfactory. Otherwise, enter 6 digits for a date, in month, date, year order for American date format or day, month, year order for British. (The date format to be used throughout the system--American or British--is an option in the configuration utility.) Slash marks will automatically be inserted, so don't add these. After the WHEN field is the WHAT field, which allows you 62 characters to write a reminder about an event, fact, or something to do in relation to that contact. It is a one line elaboration of the status type you had entered. For example, if you entered a type of "SC" (Should Call), you might enter "to schedule appointment" in the WHAT field. If you had entered "HW" (Have Written), you might now enter "about legislative issue." If you fill up the 62 character space of the WHAT field, a warning beep will sound to alert you that any more characters you type will overwrite existing characters. To continue the note, enter text in the memo field using the "Write" command from the Update Menu. If you want to create another STATUS record on a different topic, select "Add" again or "Copy" to use some of the same data as before. All update options are available here, just as with CONTACT records. Select "Quit" or press Escape to return to the CONTACT Update Menu. If you want to add or retrieve STATUS information related to different contacts, select "STATUS Update" from the Main Menu rather than "CONTACT Update." In this case, related contact information can still be examined by pressing 'X', but only status information can be changed. DIALING WITH YOUR MODEM The Contact Tracking System can dial the phone number of a contact if your computer is equipped with a modem, the connecting port to be specified during configuration. (Note that if your modem is connected to 'COM3' or 'COM4', you may need to run the included 'COMMSET.EXE' utility in your 'AUTOEXEC.BAT' file for this to work properly.) From the Update Menu, press '#' (number sign or Shift-3) to dial a local number. Press '$' (dollar sign or Shift-4) to dial a long distance number, requiring that the digit '1' and the area code be dialed before the number. Press '%' (percent sign or Shift-5) to dial a "medium distance" number, requiring a '1' before the number but no area code. This is sometimes appropriate for phone numbers within the same area code that are not nearby. Press '@' (the "at sign" or Shift-2) to dial an "internal" number, requiring only the last five digits of the number. This is sometimes appropriate within large businesses or agencies that have an internal phone system such as "Centrex." It is a shortcut for dialing someone else at the same location (hence the "at sign" as a memory association). In this situation, you would probably have to dial a '9' before dialing an outside number. If so, change the "dialing prefix" setting in the configuration utility. It should say "ATDT9," rather than "ATDT". Sometimes, a different dialing prefix is needed for a long distance call, such as the digit '8'. If so, you might enter "ATDT9" for the local dialing prefix and "ATDT8" for the long distance one. The "dialing prefix" and "dialing suffix" settings can also be used to insert access or security codes before or after the number being dialed. For example, you might have an "MCI" long distance account which requires you to dial a series of digits before the number you are calling. Just enter them in the dialing prefix after the "ATDT" and place a ',' (comma) in any place that requires a pause of a couple seconds (usually for the phone system to respond with a tone). If your phone uses "rotary" or "pulse" dialing rather than "touch tone" dialing, then use "ATDP" rather than "ATDT" in the dialing prefixes. Whether you selected the '@', '#', '$', or '%' command, the system will prompt "Workphone/Homephone." Press 'W' to dial the work number of the contact, or 'H' to dial the home number. You should hear the modem dialing the phone. You can pick up your phone's receiver before the modem has finished dialing. However, wait until it finishes dialing before responding to the prompt "Press any key to complete connection." This releases the modem's control of the phone line. (You may still be able to hear the person you've called if you haven't pressed a key, such as the Spacebar, but the line will be clearer if you do.) THE REPORT INTERFACE A report screen displays its title in the upper right. Below this are fields by which you specify how the report will be generated. Below these fields is the list of report options separated by slashes: Specify/Generate/Edit/Help/Quit Press 'S' to select "Specify". You will be prompted as to whether you want to "Set" or "Modify" the current report specification. "Set" presents the specification fields with the default field data, whereas "Modify" presents them with the data you last entered into them. The first field is "OUTPUT" into which you enter whether you want the report output to go to the screen, printer, or a file on disk. Press the first letter of the option you desire, the default being 'S' for "Screen." Next, enter the name of the file the report should be saved in if you requested file output, the default being 'TEMP' (standing for "temporary"). A file extension of 'RPT' (standing for report) will automatically be given. The file will be saved in the directory you specified for reports during configuration. In the "FORMALITY" field, enter 'F' for "Formal" or 'I' for "Informal" to specify whether names should be output with the title and last name or with the first name only. The remaining specification fields enable you to set a filter, as in the update interface, by which only records containing certain data are displayed in the report. In the Calendar report, for example, you can set a filter so that only status records between the "BEGINNING DATE" and "ENDING DATE" will be displayed. An additional specification in the Calendar report is whether records should be displayed in order by the contact's last name or the status date. Select "Generate" to generate the report according to the current report specification. If you want to see and hear a report that contains all records, you can simply select "Generate" when you first enter the report screen, since the default output is to the screen and the default filter allows all records. If you specify printer output, you will be asked for confirmation as to whether your printer is online and otherwise ready for printing. If you specify file output, you may want to select "Edit" after the report is generated. This will load the report file into your word processor to allow you to edit the content or formatting of the report before printing, similar to the way you can load a letter into your word processor in the update interface. A report may be as wide as the screen, so you may want to widen your word processor margins to 1 and 80 so that lines do not wrap. REPORT TYPES There are eight types of predefined reports. The "Calendar" report displays records from the STATUS database, two lines per record. The first line displays the related CONTACT, if any. The second line displays the STATUS TYPE at the far left, followed by the corresponding WHEN date, and the WHAT reminder at the right. The "Names and Numbers" report also prints two lines person, the first with his or her name and company, and the second with the work and home phone numbers (if available). The "1UP," "2UP," and "3UP" reports produce names and addresses formatted so that mailing labels can be produced if printing to appropriate label paper--1, 2, or 3 across, respectively. Each label is 38 characters wide and six lines high. The first line contains the contact's first and last name if informal, or title, first and last name, if formal. The second line contains the company field. The third and fourth contain the ADDRESS1 and ADDRESS2 fields. The fifth contains the city, state, and zip code. Finally, the sixth line contains the COUNTRY field. if any line is blank (e.g., no company data), it is omitted from within the address and instead added as a blank line after the address (in order to keep six lines per label). The "Return Address" report lets you produce return address labels. You will be prompted for the number of labels to produce. Thereafter, the process is the same as for generating other reports (specifying whether output should go to the printer, screen, or file, etc.). This report uses the definition contained in the file 'RETURN.LBL'. By default, this definition is the same as '1UP.LBL'. The definition may be changed, if need be, by selecting the "User Defined" option from the Reports Menu and entering "return" as the label definition to edit. The "Phone" report contains the work and home phone numbers of each contact as well as the address. Two columns of contact information appear on each screen or page. The "Status" report contains status information as well as address and phone number information for each contact. There is one column of data per screen or page. Below the address and phone number data of a contact is the NOTES field of 65 characters in length, followed by the "TEXT" memo field, 60 characters wide and any number of lines long. Below it are all STATUS records corresponding to that contact. Each of these records is displayed as in the Calendar report, with the TYPE data at the left of the line, followed by the WHEN data in the middle, and the WHAT reminder at the right. The "WPMERGE Report" allows you to create a WordPerfect "secondary merge file." This is a file containing data in WordPerfect format that can be used to "personalize" a form letter, sent in bulk to a number of contacts. A skeleton form letter is provided, similar to the kind that is generated for a single person from the CONTACT Update Menu. It is created during the configuration process using the contact information you enter for your return address, displayed in the upper right. Below this is the current date. The inside address and salutation contain WordPerfect codes that enable the appropriate data to be filled in from the "secondary merge file" when you use the merge feature in WordPerfect. A final report type is user defined. You will be prompted for the name of a file to define. As with other user-defined files in CTS, type the name without an extension, since CTS will assign the appropriate one--in this case a .LBL extension. If you type a name that already exists, you will be able to modify that definition. If it does not exist, you will be able to create a new definition with that name, starting with the settings in the 1UP.LBL label definition. You are brought to the Foxbase label designer, which allows you to specify the layout of fields to be printed in the report. (This mode does not speak automatically, but is quite manageable using the "current line" hot key of your screen reader.) If you decide to abort the report definition process, press F7. Otherwise, press F10 to save the definition. You will be brought to the standard report options prompt, allowing you to specify a filter, generate the report, or edit the output. GENERATING FORM LETTERS Form letters can be generated using a combination of CTS and the WordPerfect word processor (from WordPerfect Corporation in Orem, Utah). CTS creates a skeleton form letter when you save a CTS configuration file after entering settings in the configuration utility. This mail-merge form file is given the same name as the configuration file, but with an 'FRM' extension. You can customize a form letter using this file as a starting point ('CTS.FRM' by default). CTS also generates the name and address data that will be merged into each form letter. The merging task is accomplished with WordPerfect. The whole process involves the following steps. 1. Create the form letter. Suppose you wish to send a form letter to a selection of businesses requesting their product catalogs. The first step is to load WordPerfect--either from inside or outside CTS. Press Shift- F10 to retrieve the 'CTS.FRM' skeleton form letter, created by CTS and stored in the reports directory. Add a body of text to the letter between the salutation and closing. Add any other formatting commands you wish. Save the file under a new name that suggests the subject of the letter, e.g., 'REQUEST.FRM'. 2. Tag the contacts who will receive the letter. Select the "BUSINESS file from the CTS Files Menu. Press the '=' key followed by the '<' key to globally untag all records. Then search for each business you wish to receive the form letter and tag it using the '>' key. When done tagging records, you can check that the appropriate ones are tagged by pressing 'F' for filter followed by '>' for tagged. You might then press 'L' to go into list mode and browse through the list using the Down Arrow Key. Press Escape a couple of times to return to the Main Menu. 3. Generate the data report. Select the "WPMERGE" Report from the Reports Menu. Press 'S' and then 'S' again to specify new settings. In the "output type" field, enter 'F' for file. In the "file name" field, enter "REQUEST" to name the report 'REQUEST.RPT'. In the "tagged" field, enter 'Y' to select tagged records. Press F10 to save this specification and then press 'G' to generate the report. For ease of remembering, it is helpful to name the form letter and data files with the same name, differing only in the extension. WordPerfect refers to the form letter file as the "primary merge file" and the data file you generate as the "secondary merge file." 4. Merge the form letter and data report. Select "Edit" to load WordPerfect . The data file will be loaded into it. However, clear this file out of memory to use the merge feature. (You could alternatively go back to the Main Menu and select "Word processor," which would load WordPerfect without a document.) Press Control-F9 for merge. Enter 'REQUEST.FRM' for the primary file and 'REQUEST.RPT' for the secondary file. WordPerfect will then merge the two files, creating a "personalized" letter for each contact in the file you generated. Each letter will begin on a new page. You may then print immediately with the Shift-F7 key, or save this multi-letter document for later printing. If you save it, a name like 'REQUEST.MRG' would suggest that it is the merged file you produced from the 'REQUEST.FRM' primary file and 'REQUEST.RPT' secondary file. UTILITIES There are three utilities available from the Utilities Menu. Select "Backup" to backup all database and configuration files to the drive you specified during configuration. You should do this at least once a week if you are using the system regularly. A public domain utility called 'COPYON.COM' is used for backing up, because it checks to see whether a source file will fit on the target disk before copying, and if not, prompts you to insert another disk. Backup disks must already be formatted. Files are copied onto them in regular DOS format, so they can be re-copied into the source directory if original files are lost or corrupted. In this situation, run the Index utility to build new index files upon entering the system. Select "Configuration" to change any configuration settings. A new configuration file will be created in place of the previous one. By default, the system uses a configuration file named 'CTS.CNF'. However, another configuration file may be specified in the command that loads CTS. For example, suppose that more than one person is using a computer on which CTS is installed. For "Jane" to load CTS with the word processor, letters directory, and other settings preferred by her, she might enter the following at the DOS prompt CTS JANE This would tell CTS to use the 'JANE.CNF' configuration. If it is not found on disk, then the system will prompt Jane to create a new one, just like the original configuration of CTS. Select "Index" to create new index files for all CONTACT and STATUS databases. You can do this at any time without harming the system. It is advisable to do this if you did not exit the system normally, e.g., a keyboard lockup or power cut. Another time to build new indexes is if records do not seem to be in the appropriate order, such as alphabetical order by last name for a CONTACT database. Note that deleted records will be permanently removed during this process, if they were not removed after the update session in which you deleted them. CREATING NEW CONTACT FILES There is a single STATUS database containing dates and reminders, but there can be multiple CONTACT databases which you can define. This is one of the most powerful features of CTS. The system comes configured with six CONTACT files as follows: personal friends and relatives; business firms, government agencies, and nonprofit organizations; miscellaneous acquaintances and colleagues; job leads; a master file of all contacts; and a file for contacts to hold as a reminder for further action. The FILES database contains names and descriptions of CONTACT files. Select "Files" from the Main Menu to update this database. Update options are the same as when updating a CONTACT or STATUS database. You can thus select "Add" to add a new CONTACT database. You will be prompted for its file name. Suppose we called it "PARTY" for contacts in your political party. You will then be prompted for a description of this CONTACT file. Including the single letter hot key at the beginning of the description will serve as a useful reminder of this shortcut selection method when you are moving through the Files Menu with the Up and Down arrow keys. You might enter P = Party contacts or perhaps something longer since you have up to 65 characters. This data will then be saved in a FILES record and an empty CONTACT file with the name 'PARTY.DBF' will be created on disk in the CTS directory. You could select "Modify" to rename a database or change its description. Selecting "Delete" will delete both the FILES record and the actual CONTACT file on disk. When you are going to update or report on a CONTACT database, you will first be presented with a Files Menu for selecting which CONTACT file to use. In this case, options are CONTACT file names which can be selected with the Up and Down arrow keys or with the first letter of the name. The file names appear one per line in alphabetical order. Since you may create more than one CONTACT file that begins with the same letter, pressing a letter will highlight the first file that begins with that letter, but not actually select it. This allows you to use the Up and Down arrow keys to move to a nearby file in the list before pressing Enter to confirm the option you want. The description of the current file as entered in the FILES database appears on Line 25. (A screen reader will normally speak this line as the "current line.") Pressing Escape will return you to the menu from which you entered the Files Menu. INSTALLING CONTACT FILES FROM OTHER SOURCES You may wish to install a new CONTACT file that you obtain from another CTS user or the author of CTS. For example, someone may have entered records for all the members of a particular organization to which you both belong. Suppose he or she named this file "MEMBER" when creating it in the FILES Update module. There would be three files for you to obtain in order to have access to this membership list within your own installation of CTS. These files would be called 'MEMBER.DBF', 'MEMBER.DBT', AND 'MEMBER.IDX'. The file 'MEMBER.DBF' stores the data of all fixed-length fields; the file 'MEMBER.DBT' stores all memo text data; the file 'MEMBER.IDX' stores the index information that presents records in order by last name, first name, and company, regardless of the order in which they were entered. To install the membership list in your CTS setup, create a "MEMBER" file in your system using the Files Update module. Then go to DOS and copy the three files into your CTS directory. Now you can select the "MEMBER file from your Files Menu and search or update the records already entered by someone else--just like any other CONTACT file. Suppose you want some but not all of the records in someone else's CONTACT file. You might then copy the files into your CTS directory so that they have the base name "HOLD" rather than "MEMBER" or whatever the other person named the file. For example, you might do this with the following command: copy a:\member.* c:\cts\hold.* Since the "HOLD" file was already in your CTS installation (assuming you didn't remove it), you you did not need to tell CTS about it using the FILES Update module. You can then select the "HOLD" file from your Files Menu and transfer the records you want into the CONTACT files you choose. At the present time, a few databases have been entered or converted to the CTS format by Access Success. They are offered to CTS customers at minimal expense. Available databases include Congress, adaptive equipment vendors, mainstream computer vendors, businesses with toll free numbers, and U.S. publicly traded corporations. Contact Access Success for details. REGISTRATION INFORMATION This 3.1 version of the Contact Tracking System is being distributed as shareware. That means you can try it before you buy it. If you do not find a regular use for it, you are under no obligation to pay for it. If you find CTS valuable to you, please send the registration form and fee to the author (if you have not done so already). I have invested over 1,000 hours in its development, trusting that appreciative users will show tangible support. It is deliberately priced so that it may be purchased by most interested individuals, not just businesses or government agencies. By registering, you will receive the latest version of the program, a cassette tutorial, and free technical support. The registration form is included on the next page, as well as separately in a file called 'REGISTER.TXT'. Whether you decide to register or not, you are encouraged to give demonstration copies of the program to others. It can be used or given to anyone so long as no fee is charged and all program and documentation files are distributed together. As the author, I hope that many blind and sighted people benefit from CTS. I believe it fills a niche as a powerful, verbally and visually friendly mailing list manager. By default, it comes configured with a single record in the business database containing contact information on me, so you can readily look me up with comments, questions, or suggestions. As a consultant, let me also make you aware that I am available for development of other database applications, with or without speech output. REGISTRATION FORM FOR THE CONTACT TRACKING SYSTEM VERSION 3.1 This form may be easily printed by entering the following command at the DOS prompt: COPY REGISTER.TXT LPT1: This assumes your printer is connected to the first parallel port (which most are). Enter your name, address, and phone number in the spaces below: Name: __________________________________________________ Address: __________________________________________________ __________________________________________________ __________________________________________________ __________________________________________________ Phone: __________________________________________________ I am enclosing a check or money order for $90 (ninety dollars and no cents), made out to Access Success. This price includes first class shipping to places within the U.S., Canada, and Mexico. Orders outside North America should use U.S. currency and add $5 for shipping and handling. I look forward to receiving the following benefits of registration: * The latest, complete release of the Contact Tracking System, provided on either 5 1/4" or 3 1/2" double density DOS disks. * A cassette tutorial on using CTS, covering an assortment of beginning and advanced features. * A print copy of the documentation, as well as the one on disk. * Free technical support (provided that reasonable efforts are made to learn from the on-line help, documentation, and tutorial). If you have questions about registration, call (617) 666-9856. You may write any comments or suggestions about CTS on the back of this form. Send the form to Jamal Mazrui Access Success 745 Somerville Ave. Somerville MA 02143 (U.S.A.) HELP SCREENS The following pages contain the help screens that may be displayed with the F1 key throughout the system. They can serve as a review of the features and commands of the Contact Tracking System. CONFIGURATION HELP SCREEN This is version 3.1 of the Contact Tracking System, developed and copyrighted by Jamal Mazrui of Access Success. Since the 'CTS.CNF' configuration file is not found, you will be asked for configuration settings at this time. Default data is provided, but ensure correct answers so the system will work properly. To accept a default value, just press Enter. To enter new data, press F6 to delete the old value, and then type new data, followed by Enter. Press the F1 help key if you desire more information on the field you are editing. First, you will be asked to enter single letter codes indicating the drive for backing up data and the format to be used for phone numbers, zip codes, and dates. Next is a series of fields for entering your own contact information, so that letters you write will automatically include your return address. The default values provide examples of what kind of data to enter. When you get to the second configuration screen, enter the name of your word processor, including path and extension. Existence of this file will be verified. Next, provide the names of directories for saving letters and reports created with the system. The directories will be created if they do not exist. You will then be asked to enter the ports by which your printer and modem are connected to your computer. Enter the word "NONE" if a printer or modem is not connected. The remaining fields allow you to customize the dialing prefix and suffix to be used by a modem in making local and long distance calls. MAIN MENU HELP SCREEN Select an option by pressing its first letter, or by moving to it with the Up and Down arrow keys and then pressing Enter. CONTACT Update -- Add, modify, and retrieve records in the contact database you select, containing names, addresses, and phone numbers of contacts. Zoom to related records in the status database, containing fields for documenting when and what is the status with the contact. STATUS Update -- Add, modify, and retrieve records in the status database, containing dates and descriptions of events. FILES Update -- Update the set of CONTACT files. TYPES Update -- Update the list of valid STATUS types. Reports -- Go to the reports menu with options for producing various reports on contact and status data. Utilities -- Go to the utilities menu with options for backing up data, configuring the system, and building new indexes. Word processor -- Load your word processor in the letters directory, as specified in the configuration utility. Help -- Display these help screens. Quit -- Quit the Contact Tracking System and return to DOS. FILES MENU HELP SCREEN Pressing a letter will highlight the first CONTACT file beginning with that letter. If this is the desired file, just press Enter. Otherwise, move to it with the Up and Down arrow keys and then press Enter. Press Home to jump to the first option, or End to jump to the last. Press Escape to abort the Files Menu and return to the previous menu. UPDATE HELP SCREEN Select an option by pressing its first letter, or by moving to it with the Up and Down arrow keys and then pressing Enter. Add - Add a record to the database (with a unique key value) Beginning - Go to the beginning record (in the filter) Copy - Add a record by copying and then modifying the current record Delete - Delete the current record End - Go to the end record (in the filter) Filter - Set a filter to select records containing certain data Help - Display this help screen Jump - Jump forward/backward a +/- number of records (in the filter) List - List records (in the filter), one per line Modify - Modify the current record Next - Go to the next record (in the filter) Previous - Go to the previous record (in the filter) Quit - Quit the current update level Retrieve - Retrieve a record by its key value Undelete - Undelete all records deleted in this update session View - View memo text Write - Write memo text Xamine - Examine the current record (without risk of modifying it) Yield - Count the yield of records (in the filter) Zoom - Zoom to the STATUS update level >tag - Tag the current record