Notes on the RemoteAccess 2.00 File Database -------------------------------------------- RemoteAccess 2.00 introduces a completely rewritten file handling system. All file information is held in database files; the FILES.BBS system is now obsolete. RemoteAccess uses the database for all aspects of file retrieval; the actual file itself it not accessed until download time. This means that file searches are now faster by several hundred percent, especially with CD-ROM file areas. The limits on the database are as follows: Maximum number of file areas : 65535 Maximum number of files per area : 65535 This means that if a file is on disk but not in the database, RemoteAccess will be completely unaware of its existence. It is therefore important that your file database (referred to as FDB onwards) is kept up to date. There are new utilities described in this document which assist you in this. (NOTE: There are two exceptions to the above rule. The first is if there is a wildcard entry in the FDB. In this case, RemoteAccess will expand the wildcard for each matching file and display separate entries for each match found. The second is described in the section on RACONFIG under MANAGER.FILE AREAS.DirectDL.) One notable change in behaviour is that a file search by date is now based on the UPLOAD date, *not* the actual FILE date. Bear this in mind if you "touch" file dates to make them appear as new. As a side note, you will notice that during downloads, the transfer status window now displays a double progress bar. The top bar represents the progress of the current file, while the bottom bar represents the progress of the entire batch. Other enhancements to the transfer window include a progressive CPS indicator. UPGRADE NOTES ------------- Upgrading is largely automated. First run RACONFIG; it will update most of the new configuration fields for you. Go to the PATHS menu and enter a path to hold the new database files (on systems with large filebases you will require a few megabytes). Briefly run through the new fields in RACONFIG (see the section towards the end of this document for more details) and set the new options to your requirements. Exit RACONFIG and run GENFBASE to generate the database files. IMPORTANT! If you have ANY files-related menu types (except DOWNLOAD SPECIFIC FILE and DOWNLOAD ANY FILE) for which you have a fully qualified path on the optional data line, you must replace the path with either a /F or a template area number. Obviously you will need to define these areas in RACONFIG if they are not already defined. OTHER UTILITIES WHICH RELY ON FILES.BBS --------------------------------------- ..May still be used via the RAFILE IMPORT and EXPORT commands. If you use programs which add entries to FILES.BBS (TICK, for example), simply use the RAFILE IMPORT command every time the utility is run. RAFILE will import any entries which do not exist in the FDB. Similarly, RAFILE EXPORT may be used to generate FILES.BBS for programs such as master file list generators etc. GENFBASE.EXE ------------ This utility is used to generate the FDB files from one or more conventional FILES.BBS lists. It has no command-line parameters, and asks a couple of self-explanatory questions. Normally you would only ever use this utility once. It is also useful however for generating FDB files from new CDROMs. If you select the file counter import option, you will be asked for a file counter position number. This is the column number that the first digit of your file counters start at. Note - not the delimiters (such as a bracket), GENFBASE needs the start column of the actual number. GENFBASE also allows you to specify the column which the file description begins in. For the standard FILES.BBS format which contains only filename and description, select the default of zero. If you instruct GENFBASE to expand wildcards it will expand all wildcards found in FILES.BBS and create separate entries in the FDB for each matching file; otherwise, wildcard filenames will be imported "as is". Any FDB entry which contains a wildcard will be searched on disk by RA for matching files in all file search/list functions. Note that RA will never search the disk *unless* an entry does contain a wildcard. GENFBASE automatically strips leading '+' and '|' characters from multi-line file descriptions. RAMGR.EXE --------- This is the interactive FDB management utility (it now also incorporates the user editor that was previously part of RACONFIG). RAMGR is menu-driven, and most options are self-explanatory. It has five optional command-line switches: /B - Run in monochrome (black and white) mode. /N - Ignore any missing file area paths (normally RAMGR will not allow you to enter a file area which has an invalid path). /F - Edit files only (bypass main menu). /U - Edit users only (bypass main menu). /A - Auto-update mode (file editing). Forces an automatic update of all files when an area is entered. RAFILE.EXE ---------- RAFILE is the FDB batch maintenance utility. It is completely command-line driven: ADD [uploader_name] [description] INDEX [area#] CLEAN [area#] [/KM] COMPRESS [area#] EXPORT [area#] [output file] IMPORT [area#] [input file] [/ERASE] [/Uuploader_name] KILL [area#] LOCK [area#] UNLOCK [area#] FILELIST [area#] [/Ssecurity] [/Ddays old] [/Bbanner] [/Ffooter] [/NOHDR] [/7BIT] [/FORMF] SORT [area#] [DATE] [REVERSE] (Default=NAME,FORWARD) ADOPT [area#] UPDATE [area#] [TOUCH|TOUCHMOD] REARC [area#] [] Parameters are optional, <> parameters are mandatory. If an of zero is specified, RAFILE will process all areas. Wildcards are valid in all parameters. It is possible to process multiple file areas in one pass. There are two steps required to do this. First, create a textfile which contains the areas you wish to process. The area numbers may be separated by spaces or commas, and a range of areas may be specified by inserting a '-' between two numbers: Sample AREAS.LST: --snip-- 1 3 5 10 15-23 31-54 57 60 62 --snip-- NOTE: To specify a entire group of areas, prefix the area number with the character "G". Eg. the line 1 2 3 g5 9 would process file areas 1,2,3,9 and every area in group 5. This format is also valid on the command- line, but bear in mind that this method only accepts a single area or group number. The second step is to specify the name of this textfile on the RAFILE command-line in place of the area number. You must precede the filename with a '@' character, eg: RAFILE FILELIST CDONLY.LST @AREAS.LST ** RAFILE will skip (not process) any areas that are currently in use by RemoteAccess or RAMGR. NOTES: ADD Simply adds a new file to the database. This is like a local upload. INDEX Regenerate the quick index file for the specified area. Used only if the index becomes corrupted. CLEAN Kills files from the database (AND on disk) based on the kill information in RACONFIG (see later). This automatically performs a COMPRESS. The optional /KM switch will cause all file entries marked as MISSING to be removed from the FDB. NOTE that RAFILE will never remove COMMENTS from the FDB. By setting the MoveArea field for a file area (see RACONFIG) to a non-zero value, instead of killing the files, RAFILE will move them to the area number specified. COMPRESS Optimises the database files and removes deleted entries. EXPORT Generates a conventional FILES.BBS listing for the specified area in the actual file directory UNLESS an output filename is specified. IMPORT Imports files (and their descriptions) from FILES.BBS in the file directory (or another input file if specified) into the database. The /ERASE switch will kill the input file after the import. All imported files will have their UPLOAD date set to the current date, to make them appear as new. The UPLOADER field for each imported file will be set to the sysop name as defined in RACONFIG unless overridden with the optional /U parameter. KILL Kill all matching files from the database and on disk. This also performs a COMPRESS operation. LOCK Lock all matching files from deletion or moving. UNLOCK Unlock all matching files. FILELIST Generate a master file list of all areas. If the /S switch is used, only areas of list security or LOWER will be included in the list. The /D option includes only files which are days old or newer. You may also specify a /B which will be added automatically to the top of the file list. A /F will optionally be appended to then end of the file list. /NOHDR disables the header that is normally inserted at the top of each area, and /7BIT causes all hi-ASCII characters in the header to be translated to their 7-bit equivalents. The /FORMF option inserts a formfeed at the end of each area. SORT Sort a range of files by name or date, forward or reverse. Automatically sorts files in between comment lines. ADOPT Add to the database all matching files in the area which are not already in the database. UPDATE Update all matching files' database entries from actual DOS file information. The TOUCH switch will set the file UPLOAD date to the current date unconditionally. TOUCHMOD does the same as TOUCH but only if DOS reports that the file has been modified since the last UPDATE operation. This allows you to mark any changed files as new. REARC Re-archive all files in the area with the archive type specified for that area in RACONFIG.FILE AREAS.ArcType. NOTE - only archive types which have an entry in the OPTIONS.FILES.UL scan window can be converted. RACONFIG.EXE - New options -------------------------- SYSTEM.PATHS.Filebase - This is the directory in which the database files are located. SYSTEM.PATHS.CD-ROM temp - If this field is non-blank, files which reside in CD-ROM areas will be copied to this path for the download. Files are removed after the download is completed. SYSTEM.PATHS.Rearchiver - This is a temporary path used by RAFILE for the automatic archive conversion function. OPTIONS.FILES.Payback credit - If this field is set to a non-zero value, then every time a file is downloaded, the person who originally uploaded the file will have his/her credit field increased by the specified value. If this field is set to 255, the uploader's credit will be increased by the cost assigned to the file. OPTIONS.FILES.Newfiles.Tag - Allows you to enable or disable file tagging during the new files search at logon. OPTIONS.FILES.No dupe ext - If set to "Yes", RemoteAccess will ignore file extensions when checking for upload dupes. Ie. ANDREW.ZIP will considered a duplicate of ANDREW.ARJ, ANDREW.LZH, etc. NOTE - this feature is disabled during a a single batch upload, so a user can upload FILE.AR1, FILE.AR2 etc. provided the first file is not a dupe. DL description - Determines whether users are given the opportunity to download a special file which contains a FILES.BBS type listing of all files and descriptions in the download batch. OPTIONS.FILES.Upload scan - Pops up a sub-menu in which the internal upload archive/virus checking features may be configured. Additionally, you must enable "UL scan" for each area you wish this option to be active for: Scan online - Determines whether the scan is done while the user is still online (immediately after the upload, or after the user disconnects. If this option is set to "Ask", the textfile UPLDSCAN.A?? is displayed just before the prompt. NOTE: Users are not credited for uploads until *AFTER* passing the scan process. Failed scan - Determines the action to take on a file which fails the virus scan. You may either delete the file or mark it as unlisted and/or unavailable. You may additionally move the file to another area. Note that all these options may be combined in any way except delete. Scan utility - Command-line to activate virus scan utility. RA simply exexutes this command-line for each uploaded file. The full path and name of each file may be passed by putting the '@' character on the command-line. If the scan utility returns a non-zero errorlevel, the file is assumed to be corrupt in some way. NOTE: You !MUST! specify a full DRIVE and PATH in this field. OPTIONS.FILES.Archivers Arc 1 .. Arc10 - Definitions for up to ten archivers. Enter the file extension (eg. ZIP), the unpack command- line (eg. C:\UTIL\PKUNZIP.EXE @), and the pack command-line (eg. C:\UTIL\PKZIP.EXE @). Note the "@" character, which is automatically expanded to the full path and name of the file to be processed. These entries are used by RAFILE for the archive conversion function. NOTE: You !MUST! specify a full DRIVE and PATH in this field. OPTIONS.FILES.RAMGR keys - This submenu allows you to configure up to 5 external utilities which may be activated from the RAMGR file list screen. Any '@' characters on the command-line will be replaced by the full path and name of the currently highlighted file. The *M macro may be used to swap RAMGR out of memory before the shell. OPTIONS.FILES.Ext arcview - This is the full path and name of an external archive viewing utility. This command-line (if not blank) will be called in place of the built-in archive viewing menu command. OPTIONS.FILES.Missing format - This is an alternative list line for files which are marked as MISSING in the database. OPTIONS.FILES.List format - There is a new macro set which entirely replaces the old one. The new macros are: @NE - Filename, uppercase, with extension. @NN - Filename, uppercase, no extension. @SB - File size in bytes. @SK - File size in kilobytes. @UL - Name of the file uploader. @UD - Date on which file was uploaded. @FD - Actual file date. @LD - Date on which file was last downloaded. @TD - Number of times file has been downloaded. @Kn - Keyword [n] for the file (n=1-5). @CS - Cost of the file (deducted from user's credit). @DF - Description (formatted). @DU - Description (unformatted). @FR - Displays (Free) if file is free, spaces if not. @NA - Displays (NotAvail) if file is marked as not available. @NW - Displays '*' if file is new, space if not. @PW - Displays (Password) if the file is password-protected. * Substituting a % for the @ will force string type fields to lowercase. * Substituting a ^ for the @ will force string type fields to uppercase. * There is one additional special macro. '#nn' will set the width for all following fields to [nn] characters. Eg, #03 (note the leading zero) will truncate/pad all following fields to 3 characters. Use #00 to reset default field widths. * NOTE: If used, the @DF and @DU macros MUST appear at the very end of the list format entry. MANAGER.FILE AREAS: CD-ROM - Indicates whether the files in this area are located on read-only media, such as CD-ROM. Free - This overrides the individual FREE flag in each file entry and causes all files in the area to be marked as free. This is equivalent to a \PATH\*.* /FREE entry in FILES.CTL. LongDesc - Permits users to enter up to a page of text for each file description. Note that RemoteAccess does not require this flag to be set to "Yes" to actually display a sysop-entered long description. DirectDL - Normally users are only permitted to download files which are actually in the FDB; if this option is enabled, users will also be allowed to download files which do exist in the area path, but do not exist in the database. NOTE: Such files are never displayed in any area lists or file searches. PwdUL - Permits users to optionally password-protect their uploads into the area. UL scan - Enable upload scanning in this area. ArcType - Specifies the preferred archive format for this area. Used by RAFILE REARC. DL days - This field is used by RAFILE's CLEAN function to automatically kill old files. Any file which has not been downloaded for the number of days in this field will be deleted. A value of zero disables deletion by this field for the area. FD days - As above, but uses the actual file date to kill by. MoveArea - This field is used in conjunction with the DL days and FD days options on a RAFILE CLEAN function. Instead of being killed, old files will be moved to this area. Min age - This allows the sysop to define a minimum age for listing and downloading from the area. Password - This is a default password that will be automatically assigned to all files in the area. It will not override individual file passwords. Group - This is the group (category) that the file area is in. Group support is used to group your file areas into logical divisions, thus making it easier for users to find files they are interested in. Def.cost - Allows the sysop to assign a default cost (in credits) to each file in the area. This cost is automatically assigned to all files in the area which have an individual cost setting of zero. Uploads - Specifies the area in which files should be placed which are received during a bi-directional transfer or regular upload. This makes it possible to automatically "redirect" uploads that would normally be placed in the template area. The path is expanded in the external protocol download command- line from the "!" character. If set to zero, files will be uploaded to the currently selected template area. NOTE: Bi-directional support is available only from transfers initiated as downloads, NOT as uploads. AltGroup - These entries allow you to assign up to three secondary groups for the current file area. For example, it might be convenient to classify one area under two groups - "OS/2 files" and "Text files". Device - This field supports "jukebox" CD-ROM devices which hold multiple CDs. Simply assign any number between 1 and 255 to each multi-disk device. In this field, enter the number of the device which holds the CD on which the files for this area are located. RemoteAccess will use this information to avoid device sharing conflicts. AllGroup - Setting this option to "Yes" automatically forces the file area to appear in every group. MANAGER.GROUPS This window allows the sysop to categorise file areas into logical groups. Enter the minimum security level and flag settings for the user to be able to select each group. NOTE - this security setting simply limits the user's ability to select the group. File areas do NOT inherit the security settings of the group they are in. See MENU TYPES for more information on file group support. MENU TYPES - Additions and changes ---------------------------------- IMPORTANT! All files-related menu types (except for DOWNLOAD SPECIFIC FILE and DOWNLOAD ANY FILE) NO LONGER ACCEPT A PATH ON THE OPTIONAL DATA LINE. They ONLY accept a /F or a template number. See the "Upgrade notes" section at the start of this document for more. The /L switch on the optional data line for the above two menu types is no longer valid since RemoteAccess can obtain the long description information from the template area settings. FILE TAGGING SUPPORT New menu type 71 - Edit Tag List. When (A)dding to the tag list, you may specify the area number to search by putting either the area number or a /F on the optional data line. Leaving the optional data line blank enables global searching and tagging. The List Files, List New Files, Find File by Name, and Find File by Keyword menu types all now take the optional /T parameter at the end of the optional data line to enable file tagging. When tagging is enabled, each file is listed with a number, which the user may select for download at a later time, at the More prompt. Files are tagged by entering either a list of tag numbers or file names (wildcards valid). Files which are already in the tag list are marked with a '+' character immediately after the tag number. Users may additionally edit the tag list and view displayed files from the tag prompt. NEW/ENHANCED OPTIONAL DATA CAPABILITIES The Find File by Keyword menu type accepts the /Q switch on the end of the optional data field. This causes the search to use the 5 keywords in the file header record rather than the description text. This type of search is *much* faster than the description search (which is the default), but has two drawbacks; you must maintain the keywords for each file separately, and it will only find exact (not partial) keyword matches. The sysop-only MOVE FILE menu type has been enhanced. It now supports move, copy, delete and edit description operations. It also now displays a list of areas for the user to select the target, rather than asking for a path. Menu type 48 - download specific file, now accepts two optional data line types. The first is simply one or more fully qualified download filenames (old type). The second is the following: FILE1.EXT FILE2.EXT FILEn.EXE /A= This tells RA to send the named files (note, no path is necessary) from the specified . This second method must be used if you want the file download counter and last date downloaded fields to be updated. Menu types 39 and 46 - display textfile direct and display textfile direct with CR - also accept the above optional data format. NOTE: No security checking is done on the area before the files are displayed. FILE GROUP SUPPORT All of the three file search functions now accept a /FG on the optional data line. If this parameter is present, only file areas in the currently selected file group will be searched. The Select File Area menu command supports file groups through the following optional data line parameters: /FG - Displays only file areas in the user's currently selected file group. /FG=0 - Displays a list of all groups the user has access to, asks the user to select a group, and then displays all file areas within the selected group. /FG=n - (n is a specific group number). Displays only file areas in file group n. The file FGROUPS.A?? will be displayed in place of the hard-coded file area group list, if present. The file FGRnnnnn.A?? (nnnnn= group number) will be displayed to the user in place of FILEAREA.A?? if any of the above command- line parameters are used. Additionally, the /F=+ and /F=- menu template commands have been enhanced. The following new parameters are available: /F=> - Select the next available file area WITHIN THE CURRENT GROUP. /F=< - Select the next available file area WITHIN THE CURRENT GROUP. /FG=+ - Select the next available file group. /FG=- - Select the previously available group. /FG=n - Set the current file group to n. Placing the /FG switch on the optional data line of a global download command will limit file searching to areas in the currently selected file group. Placing the /FG switch on the optional data line of an upload command will limit duplicate checking to areas in the currently selected file group. The text file macro control code to display the name of the currently selected file group is ^F#. /* End of file "RA200FDB.TXT" */