home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / QRDB43F.ZIP / QRDB.DOC < prev    next >
Encoding:
Text File  |  1996-02-24  |  67.0 KB  |  1,356 lines

  1.  
  2.  
  3.                            QRDB  Vers 4.3 f                   24 Feb 96
  4.                       Mountain Retreat Software
  5.  
  6.                                 QRDB
  7.                 (c) Copyright 1992 by John Jamieson
  8.                          All Rights Reserved
  9.  
  10.  
  11. Intro:
  12.  
  13.   QRDB/QRDBMgr is a Data Base system for BBS's that use Door.Sys or
  14.   DorInfo*.Def. QRDB is a multi-node compatable BBS Data Base door and
  15.   QRDBMGR is the Data Base Manager. Although QRDB was designed to be
  16.   used as a BBS door it can be used by users without a BBS if needed. A
  17.   BBS is not required in order to run the program, it will run in local
  18.   mode. The QRDB door requires 414k of memory.
  19.  
  20. Features:
  21.  
  22.   . QRDB will display Flat Files, its own native Database, and dBase
  23.     compatable files. Includeing dBase III, dBase III plus or dBase
  24.     IV files along with associated Memos.
  25.   . User access can be seperatly controlled for each file that QRDB
  26.     displays. Read, Write and Edit access levels can be established.
  27.   . Users are given Edit access to records they generate, even if they
  28.     don't have overall Edit access.
  29.   . Users can be given access to only those dBase records created for
  30.     his or or her eyes only.
  31.   . A language file allows you to translate menus and prompts to
  32.     languages other than English.
  33.   . Fossil is not required, but a fossil version is included for those
  34.     that need it.
  35.  
  36. QRDB/QRDBMgr offers three types of Data Base.
  37.  
  38.   Each of the three types is limited to 9 seperate Data Base's. The
  39.   main menu will handle a total of 12 combined Data Base's, if more
  40.   are needed you will have to bypass the main menu. Bypassing the main
  41.   menu is explained in Quickstart item (e.) below.
  42.  
  43.  
  44.   Type 1 will import any text file in which the data is layed out in
  45.   columns. The imported Data Base can then be made available to BBS
  46.   users for searches or sorted list displays. Up to five keys can be
  47.   designated making five sorted lists available to the user.  This Type
  48.   1 Data Base is not editable and a Data Record is limited to 80
  49.   characters. An example of a file suitable for import is the Darwin BBS
  50.   listing.
  51.  
  52.   Type 2 is a build from scratch Data Base. The user can Add, Edit and
  53.   Delete records in the Type 2 Data Base. Read, Write and Edit/Del
  54.   levels are established by the Sysop. A log is maintained of all
  55.   Additions, Edits and Deletes made by users. This type 2 Data Base can
  56.   contain up to 25 fields per Record with a maximum of 5 Key fields. 5
  57.   display lines with 5 fields per line max.  Fields can be designated as
  58.   input optional or input required. QRDB can import comma delimited
  59.   files into the type 2 Data Base.
  60.  
  61.   Type 3 will display data in dBase .DBF data files and .DBT memo files.
  62.   The program will use dBase III, III plus or IV files. FoxPro .DBF
  63.   files that don't have have associated memo files are handled as dBase
  64.   III plus. If the FoxPro files have associated Memo's, QRDB will not
  65.   use them. The dBase Data can then be made available to BBS users for
  66.   searches or sorted list displays. Up to five keys can be designated
  67.   making five sorted lists available to the user. The user can Add, Edit
  68.   and Delete records in the Type 3 Data Base. Read, Write and Edit/Del
  69.   levels are established by the Sysop. A log is maintained of all
  70.   Additions, Edits and Deletes made by users.
  71.   All fields except the Memo's are searched when using the Search
  72.   function. QRDB does not use dBase Index files, it uses it's own
  73.   indexing system.
  74.   QRDB LIMITS on dBase files are as follows. QRDB uses a maximum of 5
  75.   lines when displaying a record, the QRDBMgr won't allow you to use
  76.   more. QRDB will only handle dBase records with 20 or less fields. The
  77.   number of memo's is limited to 3 per record. QRDB will display memo's
  78.   of any length but when editing or creating, the number of lines in a
  79.   memo are limited to 20 with a maximum line length of 76 characters.
  80.   The QRDB main menu will only handle 12 different databases, if you
  81.   bypass the main menu it will handle 19 different databases. To handle
  82.   more you will need to set up different QRDB directories, then when you
  83.   shell to QRDB set the QRDB environment variable to the directory you
  84.   want to use before you execute QRDB.
  85.   If data is added to a .DBF file outside of QRDB you will have to
  86.   rebuild the index files. Either the QRDBMGR.EXE or QRBLDIDX.EXE will
  87.   rebuild indexes. If data is added using QRDB the index's are updated
  88.   as data is added.
  89.  
  90. :User Access to data
  91.  
  92.   Access to files is controlled by Levels established for each DataBase.
  93.   Read, Write and Edit/Delete levels are seperatly controlled.
  94.   In addition to access provided under level control, a user is given
  95.   access to any record that he/she creates. This Record access is
  96.   controlled by the index files identified *O.IDX. The first 15 characters
  97.   of the user name is placed in the index pointing to records that the
  98.   user has created.
  99.   This feature can be disabled by deleting the *O.IDX file after the
  100.   user exits QRDB. QRDB will build a new empty *O.IDX if it dosen't find
  101.   one.
  102.  
  103.   In Multinode systems where edit access is given. If a user with Edit
  104.   access is using the file, the file cannot be accessed by others. If
  105.   a user with Read access is accessing a file editing is not allowed.
  106.   Access is controlled by files temporary files with the extension .$*
  107.  
  108.   In the case of a Type 3 database where rebuilding indexes is common.
  109.   QRDB will maintain a .Dbf field named REC_OWNER. It will place the
  110.   name of the originator of a record in the REC_OWNER field. QRDBMgr
  111.   will then use that name when rebuilding indexes. The REC_OWNER field
  112.   must be one of the first 20 fields in a .DBF file. The REC_OWNER field
  113.   should be at least 15 characters long field and be marked (N) in the
  114.   QRDB Field Handling Instructions.
  115.  
  116.   │(N)/A  <<<<     REC_OWNER Field Handling Instructions
  117.   │(O)pt
  118.   │(R)eq
  119.   │(K)ey
  120.  
  121.   If you want to Retain Record Ownership Data, if and when you ever need
  122.   to rebuild the *O.IDX, then your .DBF file must include a REC_OWNER
  123.   field.
  124.  
  125.   An example of the User Access posibilities:
  126.   A user can be given Add access and No Read or Edit/Delete access. In
  127.   this situation a user database, that only the Sysop or CoSysops with
  128.   read access would have access to all the records, could be built and
  129.   maintained by users. The user would see and be able to edit only the
  130.   records that he entered. *O.IDX would control Edit access.
  131.  
  132.   When running standalone or under the BBS in local mode, QRDB dosen't
  133.   normally implement security levels, as it is assumed the user is the
  134.   sysop. The /L command line parameter will implement security level in
  135.   the parameter no matter how QRDB is being used. To force QRDB to use a
  136.   particular user security level use the command line parameter /L
  137.   followed by a security level.
  138.   Example: "QRDB /L1000" will force a user security level of 1000. This
  139.   command line parameter can be used with QRDB when running as a door or
  140.   when running standalone offline.
  141.  
  142.   The type 3 database REC_OWNER field can also be used to limit access
  143.   to just records created for a particular user. The REC_OWNER must be
  144.   one of the first 20 fields in a .DBF file and field should be at least
  145.   15 characters long. Keys used in searching are a maximum of 15
  146.   characters, so anything over 15 characters is cut off when making
  147.   keys. The REC_OWNER field is a special keyfield that is used by QRDB.
  148.   It shouldn't be marked as a key field. The REC_OWNER field is used by
  149.   QRDB but not displayed, it should be marked (N) in the QRDB Field
  150.   Handling Instructions.
  151.  
  152. │(N)/A  <<<<     REC_OWNER Field Handling Instructions
  153. │(O)pt
  154. │(R)eq
  155. │(K)ey
  156.  
  157.   A command line parameter of /O tells QRDB to only give access to user
  158.   identified records. If this feature isn't used in all database's
  159.   presented by the mainmenu, you will probably want to bypass the main
  160.   menu and just display the database of interest. A CL file name on the
  161.   command line bypasses the main menu and goes directly to the database
  162.   that is specified.
  163.  
  164.   Example; "C:\QRDB\QRDB.EXE /O  Stat.3CL" would go directly to the Stat
  165.   database bypassing the main menu.
  166.  
  167.   Remember to rebuild indexes after adding to dBase files.
  168.  
  169. The advantages/disadvantages of each type are as follows:
  170.     Type 1: Imports text layed out in columns.
  171.             Only displays, no edits.
  172.             User Read Access controlled by security level
  173.  
  174.     Type 2: Data base can be built on line.
  175.             Imports comma delimited files
  176.             Exports to comma delimited files
  177.             User access to Read, Add, Edit and/or Delete controlled
  178.             by user Level
  179.  
  180.  
  181.     Type 3: Data base uses dBase .DBF and .DBT files
  182.             Checks date entries for validity
  183.             Checks numeric entries
  184.             dBase Memo capability, a great feature
  185.             Requires dBase Compatable files
  186.             User access to Read, Add, Edit and/or Delete controlled
  187.                 by user Level
  188.  
  189.             dBase Compatable files can be created with the Shareware
  190.             utility dBuddy. Additional dBuddy info is below in the
  191.             paragraph on files.
  192.  
  193.  
  194. Example QRDB Status Bar:
  195.  
  196. ┌───────────────────────────────────────────────────────────────────────────┐
  197. │John Jamieson                 Level=100  Port=1   Baud=2400  Graphics=On   │
  198. │Felton, Ca                    Min's Left=67                  Alt-H= Hangup │
  199. └───────────────────────────────────────────────────────────────────────────┘
  200.  
  201. Command Line Options:
  202.  
  203.        /R           use an RBBS type Dorinfo*.Def
  204.        /N#          use Dorinfo#.Def instead of the default Dorinfo1.Def
  205.        /M           Local Monitor is Monochrome
  206.        /K           include the special Key field Search
  207.        /L#          Where # is a security level. To force QRDB to use a
  208.                     particular user security level.
  209.        /O           Allows a user to be given access to just records
  210.                     created for him/her.
  211.        /P[Port Address,Irq]  To use other than standard Irq's with a
  212.                     Port Address, use the /P command line parameter.
  213.                     Example "/P3E8,5" will use Irq 5 and Address 3E8.
  214.                     Characters in Address must be in uppercase. This
  215.                     parameter does not apply to, and is not needed with
  216.                     the fossil version, the Fossil version. The fossil
  217.                     driver handles nonstandard Irq's.
  218.        ???????.?CL  A CL file name on the command line bypasses the
  219.                     main menu and goes directly to the database that
  220.                     is specified.
  221.  
  222.        C:\QRDB\QRDB.EXE /M /R Chaplin.3CL would go directly to the
  223.        Chaplin database bypassing the main menu. QRDB would be displayed
  224.        in Monochrome on the Local Monitor. And QRDB would use an RBBS
  225.        type Dorinfo1.Def.
  226.  
  227.        C:\QRDB\QRDB /L1000 will force a user security level of 1000.
  228.        This new command line parameter can be used with QRDB when
  229.        running as a door or when running standalone offline. When
  230.        running standalone or under the BBS in local mode, QRDB dosen't
  231.        normally implement security levels, as it is assumed the user is
  232.        the sysop. The /L parameter will implement security level in the
  233.        parameter no matter how QRDB is being used.
  234.  
  235. Quick Start:
  236.  
  237.     a. To Run QRDB add the Environment Variable SET QRDB=C:\QRDB, set it
  238.        to whatever directory QRDB is located in. If the Environment
  239.        Variable is not set you must run QRDB from the QRDB directory.
  240.        QRDB uses the Environment Variable to locate the the QRDB data
  241.        files, if they are not found you will get the error message
  242.        "QRDBLang.DBF not found" .
  243.     b. QRDB requires 414k of memory to run. If your BBS is capable of
  244.        swaping to EMS or disk when running a door use that option.
  245.        Most likely you won't have enough memory to keep the BBS in
  246.        memory and still have 414k for QRDB. Most Systems have a batch
  247.        file/errorlevel system that will free enough memory for QRDB.
  248.     c. If Running MultiNode and using Door.Sys or DorInfo1.Def, run QRDB
  249.        from a different directory for each node. Example C:\BBS\Node0,
  250.        C:BBS\Node1, etc. If using DorInfo1.Def, DorInfo2.Def,
  251.        DorInfo3.Def, etc then each node can be run from the same
  252.        directory. But REMEMBER QRDB.Exe expects to find either Door.Sys
  253.        or DorInfo*.Def in the directory it is run from. And to use
  254.        other than the default DorInfo1.Def you need to use the command
  255.        line /N#, replace # with the Node number you want QRDB to use
  256.        in DorInfo*.Def.
  257.     d. QRDB defaults to StandAlone mode, without a status line, if it
  258.        can't find DorInfo*.Def or Door.Sys. It will also run in Local
  259.        mode, but with a status line if the baud rate it finds in
  260.        DorInfo*.Def or Door.Sys is 0.
  261.     e. The Main menu can be bypassed. A couple of reasons for bypassing
  262.        are; if only one data base is to be included or the sysop would
  263.        rather use the BBS menus to access the data bases. Bypassing is
  264.        accomplished by executing QRDB with the name of the CL file as a
  265.        command line parameter. Example C:\QRDB\QRDB.EXE CHAPLIN.3CL or
  266.        if running stand-alone mode QRDB.EXE CHAPLIN.3CL. To run in
  267.        stand-alone mode, but monochrome use  QRDB.EXE /M CHAPLIN.3CL.
  268.     f. A few sample Data Bases are included in the package. Just place
  269.        the QRDB package of files in their own directory and run QRDB or
  270.        QRDB /M for StandAlone in monochrome, and follow the Prompts. The
  271.        Darwin Data Base related files included with the package contains
  272.        a setup only, no data, it's use will be discussed later. Feel
  273.        free to use any of the examples on your BBS or delete them using
  274.        the QRDBMgr or DOS. It is suggested that you review the Example
  275.        setups prior to deleting them. Run the QRDBMgr and press F2 to
  276.        call up the control file editor. The editor can be used to review
  277.        the setups.
  278.     g. If you are running QuickBBS or RA
  279.        After seting the Environment variable,  create a QuickBBS/RA type
  280.        7 menu type and in the Optional data field just place the command
  281.        C:\QRDB\QRDB.EXE *M  that's all their is to it. To bypass the
  282.        QRDB main menu use  C:\QRDB\QRDB.EXE CHAPLIN.3CL *M
  283.        (*M is a QuickBBS/RA option telling the BBS to swap to EMS or Disk)
  284.     h. Maximus, Virtual, Gap, EZCom, RA, Wildcat or PCBoard BBS check
  285.        the .BBS files for additional info.
  286.     I. If you run RBBS or other BBS that uses the RBBS type of
  287.        dorinfo*.def in which line 10 the ansi/color indicator 2=Ansi and
  288.        1=NoAnsi. Add a /R to the QRDB command line it will tell QRDB to
  289.        Use a RBBS type Dorinfo*.Def.
  290.     J. To run it from a BBS running under OS/2,
  291.        get a copy of Ray Gwinn's SIO Fossil. (BBS: 1-703-494-0098)
  292.        Replace the line in the default OS/2 Config.sys that is the
  293.        default Com Driver, "c:\os2\boot\com.sys", with c:\os2\boot\SIO.SYS.
  294.        And it's best to read the SIOUSER.TXT and add your Com port
  295.        info (as per the Sio Doc), but BE SURE and include the DASH (-).
  296.        The Dash tells Sio to tell OS/2 to NOT worry about the Com Handle!
  297.        Example:    DEVICE=C:\OS2\BOOT\SIO.SYS (1:57600,3F8,4,-)
  298.        And,
  299.        See Your OS/2 BBS Docs under "Doors" or "Dropfile".
  300.     K. Other systems,  jot down your installation procedure and send it
  301.        to me. I'll include it in the next release of QRDB. It could save
  302.        another sysop a lot of headaches.
  303.  
  304.  
  305. Trouble shooting the QRDB door installation:
  306.  
  307.   The Status bar can be an aid in trouble shooting the door installation.
  308.   a.  ***IMPORTANT*** QRDB looks in the directory it is run from for
  309.       Door.Sys and if it is not found it looks for DorInfo*.Def. It then
  310.       uses the environment variable QRDB to locate the QRDB data files.
  311.       If you run a multinode system QRDB can't be run from the same
  312.       directory for each node if you use Door.Sys or DorInfo1.Def. A
  313.       different copy of Door.Sys or DorInfo1.Def is needed for each Node.
  314.   b.  If you get the Error message QRDBLang.DBF not found, make
  315.       sure you have the environment variable set, before looking for
  316.       other problems. Example QRDB=C:\QRDBDIR set it to the directory
  317.       that QRDB is located in.
  318.   c.  No status bar indicates that the Door.Sys or DorInfo*.Def file was
  319.       not found and QRDB is running in StandAlone mode.
  320.   d.  A status bar with a Baud rate other than 0 indicates the Door.Sys
  321.       or DorInfo*.Def file has been read, QRDB has Config and user info
  322.       and is running as a door.
  323.   e.  If the status bar shows a baud rate of 0 then Door.sys or
  324.       DorInfo*.Def has been Read and QRDB is running in local mode.
  325.   f.  If double spaceing or blank lines in a occure in records when
  326.       displaying it's probably due to, too much data being placed on a
  327.       line. Go back to the QRDBMgr and do some rearranging.
  328.  
  329.  
  330. Language:
  331.  
  332.   The file QRDBLang.Dbf contains one record, that record contains the
  333.   text used by QRDB in menu's and prompts. QRDBLang.Dbf can be edited
  334.   with any program that can edit dBase compatable .Dbf files. If you
  335.   need one try the shareware program dBuddy. A dBase compatable utility
  336.   dBuddy, mentioned above and in paragraphs below, is available on
  337.   Mountain Retreat 1:216/506, 408-335-4595. It can be Freq'd under the
  338.   magic name dBuddy.
  339.  
  340.  
  341. Files:
  342.  
  343.   A set of files will be created for each Data Base
  344.    .1CL,.2CL or .3CL  Control file; a Type 1,2 or 3
  345.    .Dat     Data file;  for type 1 & 2 only, type 3 uses your.DBF file
  346.    .IDX     Index file; 1 to 5 as specified during setup
  347.  
  348.   A QRDB general help file will be displayed from the main menu, if you
  349.   name it QRDB.HLP. You can also create a .HLP file for each Data Base by
  350.   using the same name as your Data Base. If a help file is found it will
  351.   be offered to the user in the QRDB menus. .HLP files are just text
  352.   files.
  353.  
  354.   When assigning file names you will be allowed 7 characters instead of
  355.   the usual 8. QRDB needs that 8th character.
  356.  
  357.   A Data Base consisting of a set of the above files is a stand alone
  358.   package. It can be copied/moved to another BBS that uses QRDB or it
  359.   can be deleted from your QRDB directory. QRDBMgr has a delete function,
  360.   it's there only for convenience DOS is all that is needed.
  361.  
  362.   The files provided with the package are the following :
  363.  
  364. QRDBMGR  EXE    The QRDB Manager used to set up data bases for QRDB
  365. QRDB     EXE    The QRDB BBS Door
  366. QRDB_FOS EXE    The QRDB BBS Door Fossil Version
  367. LISTKEYS EXE    A utility to List the keys in a .IDX file.
  368. QRBldIdx EXE    Builds type 3 Indexes from a batch file
  369. QRDB     TTL    A file that stores the title you give to the QRDB Main Menu
  370. QRDB     DOC    This File
  371. QRDB     DAT    Data required by QRDB
  372. QRDB     HLP    A Sample general help file
  373. QRDBLANG DBF    Text used by QRDB in menus/prompts in a dBase file
  374.  
  375.      ** QRDB uses temporary files with the an extension starting with
  376.          "$" to keep track of database usage in multinode systems. They
  377.          have the same name as the database in use the size is zero and
  378.          are removed when the database is closed. CHAPLIN.$RB is an
  379.          example temporary file name.
  380.  
  381.      ** The following files are example files and can
  382.          be deleted when you are finished with them.
  383.  
  384. (A) on the main menu shown below
  385. SUPPORT  1CL    Type 1 Sample Control File  (List of Support BBS's)
  386. SUPPORT  DAT    Type 1 Sample Data File
  387. SUPPORT  HLP    Support Data Base Help File (Text)
  388. SUPPORT1 IDX    Type 1 Sample Index file #1
  389. SUPPORT2 IDX    Type 1 Sample Index file #2
  390. SUPPORT  TXT    Text file used in the creation of the Type 1 Sample
  391.  
  392. (B) on the main menu
  393. USBBS    1CL    Type 1 Sample Control File (Setup for Darwin USBBS list)
  394. USBBS    DAT    Empty Type1 Sample Data File
  395. USBBS    HLP    USBBS Data Base Help File (Text)
  396. USBBS1   IDX    Type 1 Sample Index file #1
  397. USBBS2   IDX    Type 1 Sample Index file #2
  398. USBBS3   IDX    Type 1 Sample Index file #3
  399.  
  400. (C) on the main menu
  401. BBSLIST  2CL    Type 2 Sample Control File (User generated BBS List)
  402. BBSLIST  DAT    Type 2 Sample Data File
  403. BBSLIST  HLP    BBSList Data Base Help File (Text)
  404. BBSLIST1 IDX    Type 2 Sample Index file #1
  405. BBS      LST    A sample comma delimited file for import into
  406.                  the BBSLIST data base
  407.  
  408. (D) on the main menu
  409. USERDAT  2CL    Type 2 Sample Control File (User DataBase)
  410. USERDAT  DAT    Type 2 Sample Data File
  411. USERDAT1 IDX    Type 2 Sample Index
  412. USERDATO IDX    Type 2 Sample Index containing User ownership data
  413.  
  414.  
  415. (E) on the main menu
  416. WGUIDE   2CL    Type 2 Sample Control File (Wine Guide)
  417. WGUIDE   DAT    Type 2 Sample Data File
  418. WGUIDE   HLP    WGuide Data Base Help File (Text)
  419. WGUIDE1  IDX    Type 2 Sample Index file
  420. WGX      CTL    Control file for Export of WGuide to Comma Delimited file
  421. WGX      TXT    Comma Delimited Exported database
  422.  
  423. (F) on the main menu
  424. CHAPLIN  3CL    Type 3 Sample Control File  (Chaplin dBase Data Base)
  425. CHAPLIN  DBF    dBase .DBF file used by QRDB
  426. CHAPLIN  DBT    dBase .DBT Memo file used by QRDB
  427. CHAPLIN  HLP    Chaplin Data Base Help File (Text)
  428. CHAPLIN1 IDX    Type 3 Sample Index file
  429.  
  430. (G) on the main menu
  431. EVENT    3CL    Type 3 Sample Control File (This User Info database uses Memo's)
  432. EVENT    DBF    dBase .DBF file used by QRDB
  433. EVENT    DBT    dBase .DBT Memo file used by QRDB
  434. EVENT1   IDX    Type 3 Sample Index
  435. EVENTO   IDX    Type 3 Sample Index containing User ownership data
  436.  
  437. (H) on the main menu
  438. USERINF  3CL    Type 3 Sample Control File (This User Info database uses Memo's)
  439. USERINF  DBF    dBase .DBF file used by QRDB
  440. USERINF  DBT    dBase .DBT Memo file used by QRDB
  441. USERINF1 IDX    Type 3 Sample Index
  442. USERINFO IDX    Type 3 Sample Index containing User ownership data
  443.  
  444.  
  445. (I) on the main menu
  446. USERBBS  3CL    Type 3 Sample Control File (User generated BBS list w/Memos)
  447. USERBBS  DBF    dBase .DBF file used by QRDB
  448. USERBBS  DBT    dBase .DBT Memo file used by QRDB
  449. USERBBS  HLP    UserBBS Data Base Help File (Text)
  450. USERBBS1 IDX    Type 3 Sample Index
  451. USERBBS2 IDX    Type 3 Sample Index
  452. USERBBS3 IDX    Type 3 Sample Index
  453. USERBBSO IDX    Type 3 Sample Index containing User ownership data
  454.  
  455.  
  456. Info on seting up under various BBS programs
  457.  
  458. MAXIMUS.BBS
  459. MAXIMUS2.BBS
  460. MAXIMUS3.BBS
  461. VIRTUAL.BBS
  462. PCBOARD.BBS
  463. EZYCOM.BBS
  464. GAP.BBS
  465. PCBOARD.BBS
  466. RA.BBS
  467. VIRTUAL.BBS
  468. WILDCAT.BBS
  469. MAX_OS2.BBS
  470. LORA_OS2.BBS
  471.  
  472. QRDB's Menus:
  473.  
  474.   The Main menu can be bypassed by executing QRDB with the name of the
  475.   CL file as a command line parameter. Example C:\QRDB\QRDB.EXE
  476.   CHAPLIN.3CL
  477.  
  478.   If it isn't bypassed the *.*CL files provided will appear in the QRDB
  479.   main menu as follows:
  480. ╔════════════════════════════════════════════════════════════════════════╗
  481. ║ ░░▒▒▓▓██            Q R D B    M A I N    M E N U             ██▓▓▒▒░░ ║
  482. ║                                                                        ║
  483. ║                      Your BBS DataBase Selection                       ║
  484. ╠════════════════════════════════════════════════════════════════════════╣
  485. ║  A    Computer Hardware/Software Support                               ║
  486. ║  B    Darwin National BBS List                                         ║
  487. ║  C    User List of Favorite BBS's                                      ║
  488. ║  D    User Data Base                                                   ║
  489. ║  E    Central California Winery Guide                                  ║
  490. ║  F    A Data Base of Chaplin Movies                                    ║
  491. ║  G    Community Event Database                                         ║
  492. ║  H    User Information DataBase                                        ║
  493. ║  I    User Generated BBS List                                          ║
  494. ║                                                                        ║
  495. ║  ?    Help                                                             ║
  496. ║  X    Exit QRDB                                                        ║
  497. ╠════════════════════════════════════════════════════════════════════════╣
  498. ║      QRDB Door - Mt. Retreat Software - Support BBS (408)335-4595      ║
  499. ╚════════════════════════════════════════════════════════════════════════╝
  500. Selection :
  501.  
  502.  
  503.   In the menu above the "User Data Base" is a type 2 data base and
  504.   "DataBase of BBS user info" is a similar data base useing a type
  505.   3 data base with memo's and a REC_OWNER field.
  506.  
  507.   If a user has a level high enough for Write and/or Edit/Del access
  508.   then an options menu will be displayed. If not the Options Menu will
  509.   be skiped and QRDB will go directly to the Display Selection Menu.
  510.  
  511. ╔════════════════════════════════════════════════════════════════════════╗
  512. ║  ░░▒▒               A Data Base of Chaplin Movies                ▒▒░░  ║
  513. ║                              Options Menu                              ║
  514. ╠════════════════════════════════════════════════════════════════════════╣
  515. ║  D    Display Data                                                     ║
  516. ║  A    Add to DataBase                                                  ║
  517. ║  E    Edit a Record                                                    ║
  518. ║  K    Kill a Record                                                    ║
  519. ║  H    Help                                                             ║
  520. ║  Q    Quit to QRDB Main Menu                                           ║
  521. ║  X    Exit QRDB and return to the BBS                                  ║
  522. ╚════════════════════════════════════════════════════════════════════════╝
  523. Selection :
  524.  
  525.  
  526.  
  527. D) Brings up the display menu if the users level gives Read Access. If
  528.    the description is short enough and leaves enough room on the first
  529.    line of the Display Menu the number of Records will be displayed.
  530.  
  531. A) Users with Write access will be given this option and be allowed to
  532.    the database will be allowed to add records to the database.
  533.  
  534. E) Users with Edit/Del and users that own a record that is found in the
  535.    *O.IDX file will be given this option. If access is based on the
  536.    record(s) a user owns, then only those records the user owns will be
  537.    presented for change. If this ownership is important to you be sure
  538.    to read the section on "User Access to data" and the importance of
  539.    the "REC_OWNER" .Dbf field.
  540.  
  541. K) Deletes a record, the same rules as in (E) above apply
  542.  
  543. H) Displays a help file, a text file that has the same name as your .*CL
  544.    file but with the extension .Hlp. You should probably write one for
  545.    all your databases
  546.  
  547.  
  548. ╔════════════════════════════════════════════════════════════════════════╗
  549. ║  ░░▒▒           A Data Base of Chaplin Movies (120 Recs)         ▒▒░░  ║
  550. ║                         Display Selection Menu                         ║
  551. ╠════════════════════════════════════════════════════════════════════════╣
  552. ║  B    Browse List In Released Order                                    ║
  553. ║  1    List In Released Order                                           ║
  554. ║  2    List In Actress Order                                            ║
  555. ║  L    List In Released Order/w Memos                                   ║
  556. ║  M    Display a Memo                                                   ║
  557. ║  S    Search for String,Word or Words                                  ║
  558. ║  K    Key Search for String,Word or Words                              ║
  559. ║  P    Pause Page Toggle   [ON]                                         ║
  560. ║  H    Help                                                             ║
  561. ║  Q    Quit to Options Menu                                             ║
  562. ║  X    Exit QRDB                                                        ║
  563. ╚════════════════════════════════════════════════════════════════════════╝
  564. Selection :
  565.  
  566. Display Selection Menu item descriptions
  567.  
  568. B) Provides a one line listing for Browsing. The first field will be the
  569.    first Key field in the *.*CL file, then as many fields as will fit on
  570.    the line are included.  Example
  571.  
  572. Ln#  City                       State  Zip_Code    Area_Code  Population
  573. 1    ABERDEEN                   SD     57401       605        25851
  574. 2    ADDISON                    IL     60101       708        29826
  575. 3    ADRIAN                     MI     49221       517        21276
  576. 4    AFFTON                     MO     63123       314        23181
  577.  
  578.   The user dosen't have to start listing from the begining of the file.
  579.   As an example to start Browsing the listing begining with LODI, just give QRDB
  580.   "LODI" as a starting place. The browsing would then start with
  581.  
  582.  
  583. Ln#  City                       State  Zip_Code    Area_Code  Population
  584. 1    LODI                       CA     95240       209        35221
  585.  
  586.   At the bottom of a page of data the following prompt is presented
  587.  
  588.  Enter Ln# to View,  Press Enter to Continue or Press (Esc) :
  589.  
  590.   Entering an item line number will cause QRDB to display the complete
  591.   record of interest. Including any memo's
  592.  
  593. 1) Numeric selections list the data in Key Field order. As with browse a
  594.    starting place can be entered. When you enter a starting place QRDB
  595.    will skip records prior to that starting place. This feature provides
  596.    a fast means of searching a key field.
  597.  
  598. L) Lists Records and associated Memos in the first keyfield order.
  599.  
  600. M) Displays a Memo, you provide the Record number in the format
  601.    number/Memo, example 33/1.
  602.  
  603. S) Searches the database. The user is prompted for a Search String or a
  604.    pair of words. The dual word search works like this, input a pair of
  605.    words seperated by a + sign such as, "Norman+Sennett". QRDB will
  606.    search each record in the Data Base for your search string or a match
  607.    for your pair of words. Memo fields are not searched. Search does not
  608.    handle dBase Date fields. If there will be a need to search for dates
  609.    either place the date in a field of characters or make the date a key
  610.    field. The key field can be searched using a starting place feature
  611.    in the keyfields list function.
  612.  
  613. K) Similar to (S) above the difference is that this function searches
  614.    key fields only for it's string match. In the case of a dual word
  615.    search it looks for the first word in the key fields. If it finds a
  616.    match, then it searches the complete record for the second word. As
  617.    mentioned above a Command Line Options  /K is required if QRDB is to
  618.    include the special Key field Search. This feature is of little value
  619.    except for very large databases. It was inspired by a user with a 1.5
  620.    million record database.
  621.  
  622. P) Pause Page Toggle if toggled off will cause the data to display to
  623.    the end of file or until the user presses (Esc)
  624.  
  625. H) Same as in the options menu, it displays your help file.
  626.  
  627. QRDBMgr:
  628.  
  629.   QRDBMgr.EXE is used to setup a data base, create/edit control files,
  630.   import data and generate index files.
  631.  
  632.   QRDBMgr can be used with or without a mouse. If running without a
  633.   mouse use the arrows keys to select menu items and the Tab key to
  634.   Select Entry fields or Buttons. Main menu items are selected by
  635.   pressing the Alt key plus the HighLighted letter in the menu item
  636.   description.
  637.  
  638.   The diagram below shows the menu selections that are available in
  639.   QRDBMgr.
  640.  
  641.   Remember the Data_Base_Setup functions only put together a control
  642.   file. If you are creating a type 1 data base you will still need to
  643.   import the data using the Import_Type_1_DB_Data function.  In the case
  644.   of a type 3 data base the Build_Type_3_DB_Index function will create
  645.   the necessary indexes to the .DBF file. QRDB does NOT use dBase index
  646.   files.
  647.  
  648.   Qnce a Data Base contains Data/Indexes, changes to certain fields will
  649.   no longer be allowed. You will receive a message telling you which
  650.   fields can't be edited when you attempt to edit a Data Base containing
  651.   data. If you need to edit one of those fields the only way is to Erase
  652.   the data using the Manager's "Erase QRDB Index/Data" function, make
  653.   the necessary changes and then Import, Build or Re-enter the data.
  654.  
  655.   The Erase QRDB Index/Data function works differently on each dB type.
  656.  
  657.     a. The Erase QRDB Index/Data function does not erase dBase .DBF or
  658.        .DBT files, use dBase to erase those. The Erase QRDB Index/Data
  659.        function does erase Type 3 indexes.
  660.  
  661.     b. In the case of the type 2 database Data and Indexes are Erased by
  662.        the Erase QRDB Index/Data function.
  663.  
  664.     c.  When used on a type 1 database the Erase QRDB Index/Data
  665.         function will omly delete Indexes.
  666.  
  667.  
  668.  
  669.  
  670.  
  671.   The delete function will in addition to accomplishing the erase function
  672.   above will also delete the associated QRDB setup.
  673.  
  674.  
  675.  
  676. ┌──────────────────────────────────────────────────────────────────────────┐
  677. │ Exit  Data_Base_Setup           Operations        Shell_to_QRDB          │
  678. └──────────────┬───────────────────────┬─────────────────┬─────────────────┘
  679.                │                       │                 │
  680.                │                       │                 │
  681.                │                       │                 │
  682.   ┌────────────┴─────────────┐         │                 │
  683.   │ Edit a DB Setup       F2 │         │                 │
  684.   │ Make a New Type 1 DB  F4 │         │                 │
  685.   │ Make a New Type 2 DB  F5 │         │                 │
  686.   │ Make a New Type 3 DB  F6 │         │                 │
  687.   └──────────────────────────┘         │                 │
  688.                                        │                 │
  689.                             ┌──────────┴───────────────┐ │
  690.                             │ Main Menu Title Edit     │ │
  691.                             │ Import Type 1 DB Data    │ │
  692.                             │ Read in Type 2 DB Data   │ │
  693.                             │ eXport Type 2 DB Data    │ │
  694.                             │ Build Type 3 DB Index    │ │
  695.                             │ Copy a QRDB Setup        │ │
  696.                             │ Delete a DataBase        │ │
  697.                             │ Erase QRDB Index/Data    │ │
  698.                             └──────────────────────────┘ │
  699.                                                          │
  700.                                                     ┌────┴───────┐
  701.                                                     │ Color   F8 │
  702.                                                     │ Monochrome │
  703.                                                     └────────────┘
  704.  
  705.  
  706. Creating a Type 1 Data Base  ********
  707.  
  708.   To create a Type 1 Data Base you will need a text file to import. The
  709.   USBBS list by Darwin Systems is a good file to start with. Any list
  710.   you chose to create a Type 1 Data Base from must be one in which the
  711.   data is arranged in columns. QRDB will extract it's keys from those
  712.   columns during conversion. Remove any material that isn't a part of
  713.   the structured data, such as column descriptions or List name. Column
  714.   descriptions are entered during setup, using QRDBMgr. Other info
  715.   removed from the list can be placed in the USBBS.HLP help file if
  716.   desired. A Data Base has already been setup for the USBBS list, select
  717.   the menu item Edit_a_DB_Setup or press F2 to review the setup. If you
  718.   are not going to use the Darwin USBBS list in your Data Base you can
  719.   delete it with the Delete a Data Base Function. If you are going to
  720.   use the USBBS you will need to obtain and edit a copy. Remove all text
  721.   at the begining and end of the list that isn't in structured in
  722.   columns. When you are ready to import your USBBS list select menu item
  723.   Import_Type_1_DB_Data from the Operations menu. A Dialog box will be
  724.   presented listing available control files, select USBBS.1CL, next
  725.   enter the name of the USBBS list that you want to import. After you
  726.   have imported the list you can select menu item Shell_to_QRDB and
  727.   review the new data base.
  728.  
  729.   To create a Data Base other than the USBBS that was provided. Start by
  730.   determining what fields that you want to be key fields, you can have up
  731.   to 5. Now Press F4 to bring up the Make Type 1 DB Dialog Box. You will
  732.   enter Database Name, Data Base Title, Display Header and Read Level.
  733.   The Data Base title is the title that will be displayed in the QRDB
  734.   main menu. The header will be displayed with each page of data. Read
  735.   level is the minimum user level required for access to the data. Use
  736.   the Tab or Mouse to select fields.
  737.  
  738.   Example:
  739.  
  740.      Database Name      SUPPORT
  741.  
  742.      Data Base Title    Computer Hardware/Software Support
  743.  
  744.      Display Header       Company Name            Phone Number     Remarks
  745.  
  746.      Read Level         1
  747.  
  748.  
  749.   Press OK when done or press enter. Next a Dialog Box will be presented
  750.   for the defining of keys.
  751.                                          Key
  752.     Key                      Key         Position
  753.     Search Prompt            Length      in Line
  754.  
  755.     Phone Number             12          31
  756.     Company Name             5           25
  757.  
  758.   At least one Key must be defined. Key Search Prompt is the Prompt QRDB
  759.   will use to describe the key to the user. Key Length is the length of
  760.   the key and Key Position in Line is the starting column that QRDBMgr
  761.   will use when extracting keys during import. 
  762.  
  763.   After the setup has been completed the function Import_Type_1_Db_Data
  764.   will import your textfile into the data base, the function builds
  765.   indexes and a .DAT file. QRDB limits the width of text imported into
  766.   this type 1 data base to 79 characters. More than one text file of
  767.   identical structure can be imported if necessary.
  768.  
  769.   The import feature can be used to add a chunk to an existing data
  770.   base, it is suggested you backup any existing work before importing
  771.   additional data. QRDBMgr does not check the data you are importing and
  772.   improperly structured input could corrupt the data base.
  773.  
  774. Creating a Type 2 Data Base  ********
  775.  
  776.   A couple of sample Type 2 Data Base files have been provided. To
  777.   review their control files, run QRDBMgr press F2 and select
  778.   either of the .2CL files.
  779.  
  780.   Prior to creating a Type 2 Data Base you should first decide on the
  781.   layout of the data that will be presented to the user. The number of
  782.   lines it will take to display a record and the layout of each line. A
  783.   maximum of 5 lines and a maximum of 5 fields per line are allowed.
  784.   Decide witch fields will be (K)ey fields, input (R)equired Fields or
  785.   Input (O)ptional fields. All Key fields are also input required
  786.   fields. The space used to display fields on a line can't add up to
  787.   more than 80 characters. Space required to display a field is the
  788.   length of the data field + the length of the Data Label + a colon and
  789.   a space between label and data. If not enough space is available
  790.   for the full field of the last record on a line the field will be
  791.   truncated.
  792.  
  793.   Note that the QRDB (L) and (B) functions will use the first key
  794.   assigned for their sort order. Another thing to consider is that the
  795.   QRDB (B)rowse function first displays that first key, then starting at
  796.   the first field in the record it displays fields until 80 characters
  797.   are displayed then goes to the next record. If the Key field displayed
  798.   at the beginning of the line is incountered it is skiped. Spacing used
  799.   by (B)rowse is Field Length plus 2 spaces unless the length or the
  800.   display label is greater than the field length, in which case (B)rowse
  801.   will use the display label length.
  802.  
  803.   When the layout has been planed, press F5 or select Add_a_type_2_DB
  804.   from the menu to bring up the Make Type 2 Dialog Box. Fill in the
  805.   Database Name, Read Write and Edit/Del Security Levels and the Data Base
  806.   Title. Use the Tab or Mouse to select fields.
  807.  
  808.   Example:
  809.  
  810.      Database Name:   AREA408
  811.  
  812.      Security Levels  Read      Write     Edit/Del
  813.                        5         5         100
  814.  
  815.      Data Base Title:  User Generated List of Area Code 408 BBS's
  816.  
  817.  
  818.   Press OK when done or press enter. Next a Dialog Box will be presented
  819.   for the defining the first line of the Data Base. You can have up to 5
  820.   lines. The inputs required to define a line are as follows.
  821.  
  822.  
  823.   Example:
  824.  
  825.  ┌─────  Input  ────────────────────────┐ ┌──────────  Display  ──────────┐
  826.  │(K)ey                                 │ │                         Label │
  827.  │(R)eq                           Field │ │                         Start │
  828.  │(O)pt Prompt                    Length│ │Label                    Column│
  829.    K    Phone Number [XXX-XXXX     8       Phone                     1
  830.    K    City                       25      City                      21
  831.    O    Max Baud                   5       Max Baud                  56
  832.                                    0                                                                       0
  833.  
  834.  
  835.   Up to 5 fields per line can be defined, but only a total of 5 keys in
  836.   the 5 lines are all that is allowed. Remember that the total of fields
  837.   and field labels can't add up to more than 80. Oh also allow for
  838.   spaces between fields and Colons after labels.
  839.  
  840.   Maximum key length is 15 characters if a field longer than 15
  841.   characters is designated as a key only the 1st 15 characters in the
  842.   field will be used in the index.
  843.  
  844.   When you have defined the first line press Alt N or use the mouse to
  845.   select the next line button or you can press enter. When you have
  846.   defined the last line that you want to use Select the Done button.
  847.  
  848.  
  849.   Input Info .......
  850.  
  851.   (K)ey-(R)eq-(O)pt    decide if the field will be a (K)ey field, an input
  852.                        (R)equired Field or an Input (O)ptional field. All
  853.                        Key fields are also input required fields.
  854.  
  855.   Prompt               This is the Prompt QRDB will use when asking for Input
  856.                        or describing the sorted lists that are possible.
  857.  
  858.   Field Length         This is the Maximum length of an entry in this field.
  859.                        If it is a Key field it is also the length of the Key
  860.                        unless the field is longer than 15 characters in
  861.                        which case the Key length is set to 15 characters.
  862.  
  863.   Display Info .....
  864.  
  865.   Label                This is the label placed ahead of the data when the
  866.                        line is displayed, when displayed a colon will be added
  867.                        to the label.
  868.  
  869.   Label Start Column   This is column that the first character in the label
  870.                        will be placed in. When a field is displayed the
  871.                        label is followed by a colon and a space and then
  872.                        the data. Labels are not displayed if the field
  873.                        is empty.
  874.  
  875.  
  876.   The data base can be left empty for user input or a comma delimited
  877.   file of data can be imported into the data base using the Operations
  878.   PullDown Menu item (Read in Type 2 DB Data). Data for import must be
  879.   set up as follows. Each record to be created must contain the same
  880.   number of lines that you have established for display by QRDB. Use a
  881.   comma to identify the end of a field's input. A comma is required for
  882.   every field in the record, including blank fields. Remember not to use
  883.   comma's in your data as they would throw things off. See the following
  884.   example.
  885.  
  886. A record from the Example Data Base "User List of Favorite BBS's"
  887.  
  888. │Phone: 408-335-4595   St: Ca    City: Felton
  889. │BBS Name: Mountain Retreat
  890. │MaxBaud: 14400   Size: 660Meg
  891. │Comment: Specializing in Pascal Programming
  892.  
  893. A comma delimited text file for import would look as follows
  894.  
  895. 408-371-7654,Ca,Campbell,
  896. Brown Bag Software,
  897. 2400,,
  898. Brown Bag software support board,
  899. 201-471-6391,Nj,Passaic,
  900. The Passaic/NJPCUG BBS,
  901. 9600,,
  902. Fido Net Node 1:107/559,
  903. 714-824-4328,Ca,Loma Linda,
  904. LLUMC Online Medical Library,
  905. 2400,120Meg,
  906. ,
  907.  
  908.   In summary:
  909.   No blank lines, one line for each line in the record, Comma at the end
  910.   of each field including blank fields. No testing of your input is done
  911.   by QRDBMgr so make sure your input is correct and if you are adding to
  912.   an existing data base you should probably back up the data base before
  913.   starting.
  914.  
  915.   If you are going to import a comma delimited list; select menu item
  916.   Read_In_Type_2_DB_Data from the Operations menu. A Dialog box will be
  917.   presented listing available control files, select the .2CL control
  918.   file for the data base you want to add to, next enter the name of the
  919.   list that you want to import. After you have imported the list you can
  920.   select menu item Shell_to_QRDB and review the new data base.
  921.  
  922.   The import feature can be used to add a chunk to an existing data
  923.   base, it is suggested you backup any existing work before importing
  924.   additional data. QRDBMgr does not check the data you are importing and
  925.   improperly structured input could corrupt the data base.
  926.  
  927. Exporting Type 2 Data
  928.  
  929.   QRDB will Export Type 2 DB Data to a Comma delimited file. Output will
  930.   be based on the record structure and will be in the format required
  931.   for import. Or you can format the data thru the use of a control file.
  932.   Control File structure is as follows, You will need a line in the
  933.   control file for each line of record output required. Identify the
  934.   line with the line number preceded by "L" as L1. Then on that line
  935.   identify the fields that are to be placed on the line using a
  936.   combination of Line that the record is found on a Dos Pipe character
  937.   and the position of the field on the line.
  938.  
  939.   Control files must have the Extension .CTL and the same name as the
  940.   Comma delimited Text file being created. Example if WGX1.TXT is the
  941.   name of the text file being created then WGX1.CTL would be the name to
  942.   use for the control file
  943.  
  944.   The following is an example control file. It consists of the one line:
  945.  
  946. L1  2|1 1|1
  947.  
  948.   The above will export the BBS name and Phone number from the example
  949.   "User List of Favorite BBS's" to a comma delimited file. The name and
  950.   phone number will appear on one line in the output. In order to place
  951.   the data on two lines the control file would look as follows
  952.  
  953. L1  2|1
  954. L2  1|1
  955.  
  956.   To export to a comma delimited file, in which records are written one
  957.   to a line, you would use something like the following. The fields can
  958.   be placed in any order required.
  959.  
  960. L1 1|1 1|2 1|3 2|1 3|1 3|2 4|1
  961.  
  962.  
  963. Creating a Type 3 Data Base ********
  964.  
  965.   A sample Type 3 Data Base has been provided. To review it's
  966.   control files, run QRDBMgr and press F2 and select the .3CL file.
  967.  
  968.   As with the type 2 data base you should have a plan as to how you want
  969.   the data to be displayed. Note that the QRDB (L), (M) and (B) functions
  970.   will use the first key assigned for their sort order. Another thing to
  971.   consider is that the QRDB (B)rowse function first displays that first
  972.   key, then starting at the first field in the record it displays fields
  973.   until 80 characters are displayed then goes to the next record. If the
  974.   Key field displayed at the beginning of the line is incountered it is
  975.   skiped. Spacing used by (B)rowse is Field Length plus 2 spaces unless
  976.   the length or the display label is greater than the field length, in
  977.   which case (B)rowse will use the display label length.
  978.  
  979.   The dBase date field is converted to MM/DD/YYYY when displayed. When
  980.   listing by date field order when the date field is a Key field, QRDB
  981.   converts user input from ,MM/DD/YYYY, MM-DD-YYYY, or MM/DD/YY to the
  982.   dBase format. If users will be wanting to search for dates that are in
  983.   dBase date fields, it would be a good idea to make the date field a
  984.   Key field as the search function does not do any converting.  Look at
  985.   the chaplin dbase file and help screen for an example.
  986.  
  987.   When you have a plan press F6 or select Add_a_type_3_DB from the menu
  988.   to bring up the Make Type 3 Dialog Box. Fill in the Name of the .DBF
  989.   file you are going to use. If the dBase file is not in the QRDB
  990.   directory you will need the Full Path Name, INCLUDING the DRIVE . A
  991.   minor problem created by the Full Path Name is if the database is
  992.   passed to another system the dBase file must be placed in a directory
  993.   with the identical name, not a problem if the database is used on one
  994.   machine.  Next input Security Levels and the Data Base Title. Use the
  995.   Tab or Mouse to select fields.
  996.  
  997.   Example:
  998.  
  999.     .DBF file Name:    CHAPLIN.DBF  (or C:\dBase\Chaplin.Dbf)
  1000.  
  1001.     Read Security Level:   1
  1002.  
  1003.     Data Base Title:     A data base of Chaplin movies
  1004.  
  1005.   Press OK when done or press enter. Next a Dialog Box will be presented
  1006.   for the defining the layout of the dBase data on the screen.
  1007.  
  1008.   Example:
  1009.  
  1010. ╔═[■]═══════════════════════ Type 3 Db  Fields  ════════════════════════
  1011. ║ ┌─ dBase Field ───┐ ┌────────── QRDB Handling Instructions ──────────┐
  1012. ║ │                 │ │(N)/A                                           │    ║
  1013. ║ │                 │ │(O)pt                                           │    ║
  1014. ║ │                 │ │(R)eq                                           │    ║
  1015. ║ │Name      Typ Len│ │(K)ey  Display Label                   Line Col │    ║
  1016. ║  TITLE      C  30      O     Title                           1    1
  1017. ║  COMPANY    C  15      O     Company                         1    38
  1018. ║  RELEASE_D  D  10      K     Released                        4    1
  1019. ║  DIRECTOR   C  30      O     Director                        3    1
  1020. ║  WRITER     C  30      O     Writer                          3    38
  1021. ║  FEETLENGT  N  5       N                                     0    0
  1022. ║  FEET_SHOT  N  6       N                                     0    0
  1023. ║  REELS      N  4       N                                     0    0
  1024. ║  MINUTELEN  N  3       N                                     0    0
  1025. ║  START_DAT  D  10      N                                     0    0
  1026. ║  END_DATE   D  10      N                                     0    0
  1027. ║  ACTOR      C  30      O     Actor                           2    1
  1028. ║  ACTRESS    C  30      K     Actress                         2    38
  1029. ║  SUPPORT    M  10      O     Support Memo                    5    1
  1030. ║  MUSIC      M  10      O     Music Memo                      5    26
  1031. ║  CREDITS    M  10      O     Credits Memo                    5    52
  1032.  
  1033.  
  1034.  
  1035.   dBase Field Info .......
  1036.  
  1037.                        The dBase field Name, Type and Length are
  1038.                        displayed as an aid in working out the Handling
  1039.                        info required by QRDB.
  1040.  
  1041.   QRDB Handling Info .......
  1042. ║ │                 │ │(N)/A                                           │    ║
  1043. ║ │                 │ │(O)pt                                           │    ║
  1044. ║ │                 │ │(R)eq                                           │    ║
  1045. ║ │Name      Typ Len│ │(K)ey  Display Label                   Line Col │    ║
  1046.  
  1047.  
  1048.  (N)/A-(O)pt-(R)eq-    Decide if the field will be a (K)ey field, a (D)isplay
  1049.               (K)ey    Field or a (N)ot Required Field. Fields coded (N)
  1050.                        are not used by QRDB. Memo fields must be coded (O)
  1051.                        or (N), they can NOT be a key field. In the example
  1052.                        the fields SUPPORT, MUSIC and CREDITS are memo
  1053.                        fields.
  1054.                        A numeric field as a key can have problems
  1055.                        indexing. Depending on how the key field was
  1056.                        input. dBase, dBuddy or QRDB. Don't use a numeric
  1057.                        field as a key unless all input is via one
  1058.                        system.
  1059.  
  1060.   Display Label        This is the Label QRDB will use when displaying the
  1061.                        associated field data.
  1062.  
  1063.   Line                 This is the line that the Label and the Field data
  1064.                        data will be placed on when QRDB is displaying the
  1065.                        data. Use 0 only in (N/R) not required fields.
  1066.  
  1067.   Col                  This is column that the first character in the label
  1068.                        will be placed in. When a field is displayed the
  1069.                        label is followed by a colon and a space and then
  1070.                        the data. Labels are not displayed if the field
  1071.                        is empty. Use 0 only in (N/R) not required fields.
  1072.  
  1073.   After the above Setup is complete go to the operations menu and Build
  1074.   the Type 3 DB Index. You must Build indexes even if you are starting
  1075.   with a empty database. If ever changes are made to the .Dbf database
  1076.   files outside of QRDB you will have to repeat this Build function.
  1077.   This function can be time consuming, I just indexed a 39,945 record
  1078.   dBase file. The .dbf file size is 5073k and the setup uses 3 key
  1079.   fields. Indexing on a 386sx 20Mz machine took 15 Hours. As a
  1080.   comparison, indexing a file of 2,348 records that had 2 key fields and
  1081.   a dBase .dbf file size of 761k took less than 2 minutes. The increase
  1082.   in time required for the Build process is not linear as you can see.
  1083.  
  1084.   If you would like to use the type 3 data base, let's say for it's Memo
  1085.   display capability and don't use a dBase compatable Data Base program.
  1086.   You can use the Shareware program dBuddy to create the required files.
  1087.   dBuddy (Data Base Buddy) is a dBase tool, it will build dBase III or
  1088.   IV compatable Dbf and .Dbt files, either empty dBase files or it can
  1089.   extract data from text files. dBuddy will Export to character
  1090.   delimited files or text files, memo's are also exported.
  1091.  
  1092.  
  1093.   When used to create a new type 3 setup the copy function will copy and
  1094.   create a empty .dbf file and associated memo files. The empty file can
  1095.   be replaced with a file containing data as long as the fields are an
  1096.   exact match.
  1097.  
  1098.   In order to relocate a .DBF file that has been identified with a full
  1099.   pathname you will have to use the (E)rase QRDB Index/Data function. It
  1100.   wipes out everything but the .3CL and .DBF/DBT files. Then use edit a
  1101.   DB setup to show the new pathname and then Build the type 3 DB Index.
  1102.   The .3CL file contains your setup so nothing is lost except the indexes
  1103.   and a pointer to the directory that contains the .DBF/DBT files. The
  1104.   same process can be used to change any .3CL field to which changes arn't
  1105.   allowed. You can also use the (E)rase QRDB Index/Data function to erase
  1106.   references to indexes that don't exist. Such as when you are given a
  1107.   .DDF and .3CL file without indexes.
  1108.  
  1109.   (N)/A-(O)pt-(R)eq-(K)ey can not be changed without first using the (E)rase
  1110.   function.
  1111.  
  1112.  
  1113. ListKeys:
  1114.  
  1115.   LISTKEYS.EXE is a utility that has been added to serve as an aid to those
  1116.   adding a REC_OWNER field to an existing database. It will list the Owners
  1117.   of records shown in the *O.IDX file.
  1118.   It may have other uses. The utility will list the keys in any .IDX
  1119.   file that indexes a key field that is at least 15 characters long.
  1120.   Usage : ListKeys <Index File Name>  Example : ListKeys USERBBSO.IDX
  1121.  
  1122.  
  1123. QRBldIdx:
  1124.  
  1125.   QRBldIdx.Exe is a QRDB utility that will build type 3 Indexes.
  1126.   It was intended for use in rebuilding indexes from a Batch
  1127.   file after a .dbf file has been updated.
  1128.   Usage is "qrbldidx [FileName.3cl]"
  1129.  
  1130.  
  1131. Disclaimer agreement:
  1132.  
  1133.     Users of QRDB and QRDBMGR must except the following disclaimer
  1134.     agreement:
  1135.  
  1136.     QRDB and it's utilities are provided AS IS. The Author makes no
  1137.     Warranty of any kind, expressed or implied. In addition THE AUTHOR
  1138.     ASSUMES NO LIABILITY FOR DAMAGES WHICH MAY RESULT WHICH MAY RESULT
  1139.     FROM THE USE OF QRDB, QRDBMGR or associated utilities.
  1140.  
  1141. History:
  1142.  
  1143.     Version 1.00    Initial Release
  1144.     Version 1.01    Added a Main Menu help function
  1145.     Version 1.02    Added a type 2 data import function and fixed
  1146.                     a bug in the type 3 data dase setup functions
  1147.     Version 1.03    Changed screens and added local mode default.
  1148.     Version 1.04    MultiNode support added
  1149.     Version 1.05    Beta Release switched to use of DorInfo1.Def
  1150.                     in order to make the door useable on more systems.
  1151.     Version 1.06    Release of DorInfo1.Def version
  1152.     Version 1.07    Added support for dBase III and dBase IV memos
  1153.                     Added support for dual word searches
  1154.     Version 1.08    Improved dBase searches added dual word searches
  1155.                     and speed.
  1156.     Version 1.09    Miner changes mainly in docs to aid in setup
  1157.     Version 2.0     Changed QRDBMgr to allow the rebuilding of Index
  1158.                     files if changes have been made to the dBase
  1159.                     .DBF files. Changed QRDB to allow smoother exit
  1160.                     from Search functions.
  1161.     Version 2.1     Added Browse function to type 2 and 3 database
  1162.                     menus. Added a Pause Page Toggle to all types.
  1163.                     Stoped scrolling the screen when displaying
  1164.                     the number of records searched. QRDB now overwrites
  1165.                     the message for a cleaner display.
  1166.     Version 2.2     In type 2 database if Read access was not given then
  1167.                     then Write access was locked out. QRDB will now
  1168.                     allow you to give a user Write access without giving
  1169.                     read access.
  1170.     Version 2.3     Improved Browse feature. Added capability to a Type 2
  1171.                     database to a comma delimited file.
  1172.     Version 2.3a    Main menu can be bypass, command line option, fix.
  1173.     Version 2.3b    Program now gives full pathname in .Dat not found
  1174.                     Error message. Moved the Browse function to the
  1175.                     top position in the menu. Changed the timer routine
  1176.                     I was using, it could possibly lock a system.
  1177.     Version 2.4     Added additional drop carrier protection, added
  1178.                     escape from data entry feature.
  1179.     Version 3.0     Beta version, Major upgrade, adds edit to type 2
  1180.                     database and adds Add, Edit and Delete to type 3.
  1181.                     User has edit/delete access to any record he creates.
  1182.             3.0B    Fixed level problem, a level equal to or greater than
  1183.                     the level set in QRDB now has access. Prior to fix
  1184.                     user level had to be greater for access.
  1185.             3.1     Beta status Removed, Main Menu Help problem fixed and
  1186.                     Memo Display bug fixed.
  1187.             3.2     Type 3 Browse Bug fix.
  1188.             3.3     Cosmetic Bug fix, the word changed is no longer
  1189.                     displayed when entering a dBase record.
  1190.             3.4     dBase file handler Bug Fix.
  1191.             3.5     Fixed disappearing cursor problem,
  1192.                     Improved "Build Type 3 DB Index" routines.
  1193.                     Added type 3 db to QRDBMgr copy function
  1194.                     Fixed problem QRDB had in using a empty type 3 .dbf
  1195.             3.6     Beta Version Will now use Door.Sys or DorInfo1.Def
  1196.             3.7     Door.Sys version as yet not reported OK
  1197.                     Dos 6 NO GO fixed.
  1198.             3.7a    Beta Status removed, Documentation change only.
  1199.             3.8     Type 3 Bug Fix
  1200.             3.9a    Fixed linecount problem and problem of two keys
  1201.                     being left at times, when a keyfield was edited.
  1202.                     The new key and the old key both pointing to the
  1203.                     same record.
  1204.             3.9b    The routine I was using to check for adequate memory
  1205.                     did not work properly on all systems. I have removed
  1206.                     it from the program.
  1207.             3.9c    Fixed Memo delete function
  1208.             3.9d    Improved exit from last page during Browse
  1209.             3.9f    Fixes problem where no more than two pages of recs
  1210.                     with duplicate keys would be displayed when browseing.
  1211.                     Also fixed hang while searching problem.
  1212.             3.9g    Changed QRDBMgr to allow changes to .3CL files
  1213.                     after Index files have been erased. Changed this doc.
  1214.                     file to reflect that change.
  1215.             3.9h    Corrected a problem with Userinf.3cl, it called for a
  1216.                     .dbf file in a d:\QRDBTEST directory. Discontinued the
  1217.                     use of a QRDB.Key file. The file was not a true key,
  1218.                     QRDB has never been crippled in any way. That key file
  1219.                     gave the impression that the program was crippled.
  1220.             4.0     Added QRDBLang.Dbf, it contains the text used by QRDB
  1221.                     in menu's and prompts and can be edited.
  1222.             4.0a    Fixed bug associated with the use of empty .dbf files
  1223.                     that use a memo field. Also fixed a bug that prevented
  1224.                     the entering of a start place in the DataBase edit
  1225.                     picklist.
  1226.             4.0b    Fixed problem where-in Qrdb would not use dbase files
  1227.                     located in directories other than the QRDB directory.
  1228.                     Fixed Problem with dBase Memo Editor routines.
  1229.             4.0c    Bug introduced in 4.0b fixed
  1230.             4.0d    A couple more bugs fixed, Type 3 Kill function and
  1231.                     Help missing from Options menu.
  1232.             4.0e    Added code that should make QRDB OS2 aware (not tested).
  1233.                     QRDB will now read DorInfo*.Def, previous versions only
  1234.                     wanted Dorinfo1.Def. A seperate version is no longer needed
  1235.                     for RBBS, a RBBS command line option was added. Increased
  1236.                     maximum length of search string from 20 to 60 characters.
  1237.             4.0f    Problems with user generated record security corrected.
  1238.             4.1     Local use no longer bypasses security levels. This should
  1239.                     help when debuging. QRDBMGR was having problems with
  1240.                     .DBF files located in directories other than the QRDB dir.
  1241.             4.1a    More problems with QRDBMGR and .DBF files located in
  1242.                     directories other than the QRDB dir.
  1243.             4.2     Added expanded User Record Ownership support. Added a new
  1244.                     search feature, primarly for use with very large databases.
  1245.                     Added ListKeys.Exe utility. Added a couple of additional
  1246.                     sample database's. Expanded the Docs a little.
  1247.             4.2a    A type 1 database with the main menu bypassed would hang
  1248.                     if a (Q) was pressed when on the options menu.
  1249.             4.2b    Manager had a problem with type 1 database. Another (Q)
  1250.                     hang problem.
  1251.             4.2c    Fixed Rec_Owner field update bug and added command line
  1252.                     option /N to specify a DorInfo number other than
  1253.                     DorInfo1.Def. My approach to the use of DorInfo*.Def was
  1254.                     flawed, and could cause a lockup if the door was used by
  1255.                     two nodes.
  1256.             4.2d    Bug Fix
  1257.             4.2e    Fixed a QRDBMgr Bug that prevented work on type one
  1258.                     database's
  1259.             4.2f    Fixed minor bug, QRDB wouldn't run without environment
  1260.                     variable being set.
  1261.             4.2g    Fixed a bug that was minor in most setups, the QRDBLANG
  1262.                     file was not being closed.
  1263.             4.2h    Fixed potential problem with Fossil version
  1264.             4.2j    Centered Menu's and removed filter that prevented the
  1265.                     use of characters above #126.
  1266.             4.2k    Fixed bug in type 2 database that occured when five
  1267.                     fields on a line were used.
  1268.             4.2m    Reduced door memory requirements to 414k. Added a couple
  1269.                     more example BBS setups including a Maximus Multinode
  1270.                     setup.
  1271.             4.2n    Stoped QRDB.EXE from doing direct screen writes, it was
  1272.                     causin lockups under Desqview that were hard to trouble-
  1273.                     shoot.
  1274.             4.2p    Fixed problem where if the number indicating graphics
  1275.                     in DorInfo*.Def was not in column 1 then the program
  1276.                     defaulted to Mono.
  1277.             4.2r    Deleting an entry in a type 3 database field was not
  1278.                     working. Unless something was placed in the field the
  1279.                     change wasn't saved.
  1280.             4.2s    Added protection for files used in multinode systems
  1281.                     where edit access is given. QRDB.EXE and QRDBLANG.DBF
  1282.                     are changed.
  1283.             4.2t    BugFix, problem was with multinode protection logic
  1284.                     Added info on dBAse and Foxpro compatability
  1285.             4.2u    Improved the speed of the fossil version.
  1286.                     Added the utility QRBldIdx to the package.
  1287.             4.2v    Changed Local Colors to lite instead of the dark.
  1288.                     They now match what the user sees. Fixed a bug
  1289.                     where the memo wasen't displayed if the first line
  1290.                     was blank.
  1291.             4.3     If enough room is available on the second line of the
  1292.                     Display Menu the number of Records will be added.
  1293.                     Added a Command line parameter /L To force QRDB to
  1294.                     use a particular user security level. Fixed a problem
  1295.                     with qrbldidx.exe, it was creating duplicate keys.
  1296.                     Fixed a problem with QRDB.EXE, lines in memo's that
  1297.                     were too long for the screen were being double
  1298.                     spaced. Added /O Command line parameter, in a type 3
  1299.                     database, the /O allows a user to be given access to
  1300.                     just records created for him/her. Fixed a problem in
  1301.                     QRDB Manager that allowed line numbers greater than
  1302.                     5 to be called out in QRDB Handling Instructions.
  1303.                     Added routine, QRDBMGR will now create a empty memo
  1304.                     file when copying a QRDB setup.
  1305.             4.3a    Didn't put the latest version of QRBldIdx.exe in the
  1306.                     4.3 package.
  1307.             4.3b    The /K command line option was flawed,it's improved in
  1308.                     this update.
  1309.             4.3c    Added /P command, adds ability to specify non-standard
  1310.                     Irq's
  1311.             4.3d    Changed my Internet Address
  1312.             4.3e    Added OS2 installation info,
  1313.                     Thanks to:
  1314.                     Drew Roberts, FarPoint Station BBS, 408-336-5325
  1315.             4.3f    Bug that prevented the display of Memos in some
  1316.                     instances has been corrected.
  1317.  
  1318.     ShareWare, a $25 registration fee is required. When you register
  1319.     send me a 65 character message of your choice. You will be sent a
  1320.     new QRDB.Dat file. Your 65 character message will replace the
  1321.     following line in the QRDB menu.
  1322.  
  1323.   ╠════════════════════════════════════════════════════════════════════════╣
  1324.   ║      QRDB Door - Mt. Retreat Software - Support BBS (408)335-4595      ║
  1325.   ╚════════════════════════════════════════════════════════════════════════╝
  1326.  
  1327.  
  1328.     If you decide to continue useing QRDB after a 90 day trial period
  1329.     you are expected to register. This is a one time registration the
  1330.     message created for your system will work with all future revisions.
  1331.  
  1332.     Please send your registration fee to:
  1333.  
  1334.              John Jamieson
  1335.              Mountain Retreat Software
  1336.              555 Buckeye St.
  1337.              Felton Ca, 95018
  1338.  
  1339.     For support contact:
  1340.  
  1341.              Fidonet 1:216/506
  1342.              Internet jamie@scruznet.com
  1343.              BBS phone (408)335-4595
  1344.              Voice (408)335-4672
  1345.              Fax (408)335-4982
  1346.  
  1347.     For the latest version:
  1348.  
  1349.              Freq magic name QRDB from 1:216/506
  1350.              ftp://ftp.scruz.net/users/jamie/public/
  1351.              http://www.scruz.net/~jamie/
  1352.              or Call the BBS at (408)335-4595
  1353.  
  1354.