home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / QRDB39H.ZIP / QRDB.DOC < prev    next >
Encoding:
Text File  |  1994-01-16  |  45.4 KB  |  928 lines

  1.  
  2.  
  3.  
  4.                            QRDB  Vers 3.9h              16 Jan 94
  5.                       Mountain Retreat Software
  6.  
  7.                                 QRDB
  8.                 (c) Copyright 1992 by John Jamieson
  9.                          All Rights Reserved
  10.  
  11.  
  12. Intro:
  13.  
  14.   QRDB/QRDBMgr is a Data Base system for BBS's that use Door.Sys or
  15.   DorInfo1.Def. QRDB is a multi-node compatable BBS Data Base door and
  16.   QRDBMGR is the Data Base Manager. Although QRDB was designed to be
  17.   used as a BBS door it can be used by users without a BBS if needed. A
  18.   BBS is not required in order to run the program, it will run in local
  19.   mode. QRDB requires 400k of memory.
  20.  
  21.  
  22. QRDB/QRDBMgr offers three types of Data Base.
  23.  
  24.   Type 1 will import any text file in which the data is layed out in
  25.   columns. The imported Data Base can then be made available to BBS
  26.   users for searches or sorted list displays. Up to five keys can be
  27.   designated making five sorted lists available to the user.  This Type
  28.   1 Data Base is not editable and a Data Record is limited to 80
  29.   characters. An example of a file suitable for import is the Darwin BBS
  30.   listing.
  31.  
  32.   Type 2 is a build from scratch Data Base. The user can Add, Edit and
  33.   Delete records in the Type 2 Data Base. Read, Write and Edit/Del
  34.   levels are established by the Sysop. A log is maintained of all
  35.   Additions, Edits and Deletes made by users. This type 2 Data Base can
  36.   contain up to 25 fields per Record with a maximum of 5 Key fields. 5
  37.   display lines with 5 fields per line max.  Fields can be designated as
  38.   input optional or input required. QRDB can import comma delimited
  39.   files into the type 2 Data Base.
  40.  
  41.   Type 3 will display data in dBase .DBF data files and .DBT memo files.
  42.   The dBase Data can then be made available to BBS users for searches or
  43.   sorted list displays. Up to five keys can be designated making five
  44.   sorted lists available to the user. The user can Add, Edit and Delete
  45.   records in the Type 3 Data Base. Read, Write and Edit/Del levels are
  46.   established by the Sysop. A log is maintained of all Additions, Edits
  47.   and Deletes made by users. All fields except the Memo's are searched
  48.   when using the Search function.
  49.   QRDB does not use dBase Index files, it uses it's own indexing system.
  50.   QRDB LIMITS on dBase files are as follows. QRDB will only handle dBase
  51.   records with 20 or less fields. The number of memo's is limited to 3
  52.   per record. QRDB will display memo's of any length but when editing or
  53.   creating, the number of lines in a memo are limited to 20 with a
  54.   maximum line length of 76 characters.
  55.  
  56.  
  57. User Access to data
  58.  
  59.   Access to files is controlled by Levels established for each DataBase.
  60.   Read, Write and Edit/Delete levels are seperatly controlled.
  61.   In addition to access provided under level control, a user is given
  62.   access to any record that he/she creates. This Record access is
  63.   controled by the index files identified *O.IDX. This feature can be
  64.   disabled by deleting the *O.IDX file after the user exits QRDB. QRDB
  65.   will build a new empty *O.IDX if it dosen't find one.
  66.   An example of the posibilities:
  67.   A user can be given Add, Edit/Delete access and No Read access. In
  68.   this situation a user database, that only the Sysop or CoSysops with
  69.   read access would have access to all the records, could be built and
  70.   maintained by users.
  71.  
  72. When run in local mode or stand-alone full access to all features is
  73. given and levels do not apply.
  74.  
  75. The advantages/disadvantages of each type are as follows:
  76.     Type 1: Imports text layed out in columns.
  77.             Only displays, no edits.
  78.             User Read Access controlled by security level
  79.  
  80.     Type 2: Data base can be built on line.
  81.             Imports comma delimited files
  82.             Exports to comma delimited files
  83.             User access to Read, Add, Edit and/or Delete controlled
  84.             by user Level
  85.  
  86.  
  87.     Type 3: Data base uses dBase .DBF and .DBT files
  88.             Checks date entries for validity
  89.             Checks numeric entries
  90.             dBase Memo capability, a great feature
  91.             Requires dBase Compatable files
  92.             User access to Read, Add, Edit and/or Delete controlled
  93.                 by user Level
  94.  
  95.             dBase Compatable files can be created with the Shareware
  96.             utility dBuddy. Additional dBuddy info is below.
  97.  
  98.  
  99. Example QRDB main Menu and Status Bar:
  100.  
  101. ╔════════════════════════════════════════════════════════════════════════╗
  102. ║            ░░▒▒▓▓██  Q R D B    M A I N    M E N U  ██▓▓▒▒░░           ║
  103. ║                                                                        ║
  104. ║  ░▒              Mountain Retreat DataBase Selection               ▒░  ║
  105. ╠════════════════════════════════════════════════════════════════════════╣
  106. ║  A    Fido Net BBS's in North America                                  ║
  107. ║  B    Fido Net BBS's Outside N. America                                ║
  108. ║  C    Darwin National BBS List                                         ║
  109. ║  D    System User's                                                    ║
  110. ║  E    WildCat BBS's in the North America                               ║
  111. ║  F    User Generated List of Area Code 408 BBS's                       ║
  112. ║  G    Hardware/Software Industry Support BBS's                         ║
  113. ║  H    User Generated List of Out of Area Boards                        ║
  114. ║  I    Computer Hwd/SW Suppliers support (Not BBS's)                    ║
  115. ║                                                                        ║
  116. ║  ?    Help                                                             ║
  117. ║  X    Exit QRDB                                                        ║
  118. ╠════════════════════════════════════════════════════════════════════════╣
  119. ║      QRDB Door - Mt. Retreat Software - Support BBS (408)335-4595      ║
  120. ╚════════════════════════════════════════════════════════════════════════╝
  121.  Selection:
  122.  
  123. ┌───────────────────────────────────────────────────────────────────────────┐
  124. │John Jamieson                 Level=100     Baud=2400        Graphics=On   │
  125. │Felton, Ca                    Min's Left=67                  Alt-H= Hangup │
  126. └───────────────────────────────────────────────────────────────────────────┘
  127.  
  128.  
  129.  
  130. Quick Start:
  131.  
  132.     a. To Run QRDB add the Environment Variable SET QRDB=C:\QRDB, set it
  133.        to whatever directory QRDB is located in. If the Environment
  134.        Variable is not set you must run QRDB from the QRDB directory.
  135.        QRDB uses the Environment Variable to locate the the QRDB data
  136.        files, if they are not found you will get the error message
  137.        "QRDB.Dat not found or Corrupt.
  138.     b. QRDB requires 400k of memory to run. If your BBS is capable of
  139.        swaping to EMS or disk when running a door use that option.
  140.        Most likely you won't have enough memory to keep the BBS in
  141.        memory and still have 400k for QRDB. Most Systems have a batch
  142.        file/errorlevel system that will free enough memory for QRDB.
  143.     c. If Running MultiNode, run QRDB from a different directory for
  144.        each node. Example C:\BBS\Node0, C:BBS\Node1, etc. QRDB needs
  145.        to find either Door.Sys or DorInfo1.Def in the node directory.
  146.        DorInfo2.Def won't do if your system uses a DorInfo other than
  147.        1, rename it. QRDB expects to find either Door.Sys or DorInfo1.Def
  148.        in the directory it is run from.
  149.     d. QRDB defaults to Local mode, without a status line, if it can't
  150.        find DorInfo1.Def or Door.Sys. It will also run in Local mode,
  151.        but with a status line if the baud rate it finds in DorInfo1.Def
  152.        or Door.Sys is 0.
  153.     e. The Main menu can be bypassed. A couple of reasons for bypassing
  154.        are; if only one data base is to be included or the sysop would
  155.        rather use the BBS menus to access the data bases. Bypassing is
  156.        accomplished by executing QRDB with the name of the CL file as a
  157.        command line parameter. Example C:\QRDB\QRDB.EXE CHAPLIN.3CL
  158.        or if running stand-alone local mode  QRDB.EXE CHAPLIN.3CL. To
  159.        run in stand-alone local mode, but monochrome use  QRDB.EXE /M
  160.        CHAPLIN.3CL.
  161.     f. A few sample Data Bases are included in the package. Just place
  162.        the QRDB package of files in their own directory and run QRDB or
  163.        QRDB /M for Local in monochrome, and follow the Prompts. The
  164.        Darwin Data Base related files included with the package contains
  165.        a setup only, no data, it's use will be discussed later. Feel
  166.        free to use any of the examples on your BBS or delete them using
  167.        the QRDBMgr or DOS. It is suggested that you review the Example
  168.        setups prior to deleting them. Run the QRDBMgr and press F2 to
  169.        call up the control file editor. The editor can be used to review
  170.        the setups.
  171.     g. If you are running QuickBBS or RA
  172.        After seting the Environment variable,  create a QuickBBS/RA type
  173.        7 menu type and in the Optional data field just place the command
  174.        C:\QRDB\QRDB.EXE *M  that's all their is to it. To bypass the
  175.        QRDB main menu use  C:\QRDB\QRDB.EXE CHAPLIN.3CL *M
  176.        (*M is a QuickBBS/RA option telling the BBS to swap to EMS or Disk)
  177.     h. Maximus or Virtual BBS check the files Maximus.BBS or Virtual.BBS
  178.        for additional info.
  179.     I. Other systems,  jot down your installation procedure and send it
  180.        to me. I'll include it in the next release of QRDB. It could save
  181.        another sysop a lot of headaches.
  182.  
  183.  
  184.  
  185. Files:
  186.  
  187.   A set of files will be created for each Data Base
  188.    .1CL,.2CL or .3CL  Control file; a Type 1,2 or 3
  189.    .Dat     Data file;  for type 1 & 2 only, type 3 uses your.DBF file
  190.    .IDX     Index file; 1 to 5 as specified during setup
  191.  
  192.   A QRDB general help file will be displayed from the main menu, if you
  193.   name it QRDB.HLP. You can also create a .HLP file for each Data Base by
  194.   using the same name as your Data Base. If a help file is found it will
  195.   be offered to the user in the QRDB menus. .HLP files are just text
  196.   files.
  197.  
  198.   When assigning file names you will be allowed 7 characters instead of
  199.   the usual 8. QRDB needs that 8th character.
  200.  
  201.   A Data Base consisting of a set of the above files is a stand alone
  202.   package. It can be copied/moved to another BBS that uses QRDB or it
  203.   can be deleted from your QRDB directory. QRDBMgr has a delete function,
  204.   it's there only for convenience DOS is all that is needed.
  205.  
  206.   The files provided with the package are the following :
  207.  
  208. QRDBMGR.EXE     The QRDB Manager used to set up data bases for QRDB
  209. QRDB.EXE        The QRDB BBS Door
  210. QRDB_FOS.EXE    The QRDB BBS Door Fossil Version
  211. QRDB.TTL        A file that stores the title you give to the QRDB Main Menu
  212. QRDB.DOC        This File
  213. QRDB.DAT        Data required by QRDB
  214. QRDB.HLP        A Sample general help file
  215.  
  216.      ** The following files are example files and can
  217.          be deleted when you are finished with them.
  218.  
  219. SUPPORT.1CL     Type 1 Sample Control File  (List of Support BBS's)
  220. SUPPORT.DAT     Type 1 Sample Data File
  221. SUPPORT.HLP     Support Data Base Help File (Text)
  222. SUPPORT1.IDX    Type 1 Sample Index file #1
  223. SUPPORT2.IDX    Type 1 Sample Index file #2
  224. SUPPORT.TXT     Text file used in the creation of the Type 1 Sample
  225.  
  226. BBSLIST.2CL     Type 2 Sample Control File (User generated BBS List)
  227. BBSLIST.DAT     Type 2 Sample Data File
  228. BBSLIST.HLP     BBSList Data Base Help File (Text)
  229. BBSLIST1.IDX    Type 2 Sample Index file #1
  230. BBS.LST         A sample comma delimited file for import into
  231.                  the BBSLIST data base
  232.  
  233. WGUIDE.2CL      Type 2 Sample Control File (Wine Guide)
  234. WGUIDE.DAT      Type 2 Sample Data File
  235. WGUIDE.HLP      WGuide Data Base Help File (Text)
  236. WGUIDE1.IDX     Type 2 Sample Index file
  237. WGX.CTL         Control file for Export of WGuide to Comma Delimited file
  238. WGX.TXT         Comma Delimited Exported database
  239.  
  240. USERDAT.2CL     Type 2 Sample Control File (User DataBase)
  241. USERDAT.DAT     Type 2 Sample Data File
  242. USERDAT1.IDX    Type 2 Sample Index
  243.  
  244. USERINF  3CL    Type 3 Sample Control File (User DataBase as above but dB3)
  245. USERINF  DBF    dBase .DBF file used by QRDB
  246. USERINF  DBT    dBase .DBT Memo file used by QRDB
  247. USERINF1 IDX    Type 3 Sample Index
  248.  
  249. CHAPLIN.3CL     Type 3 Sample Control File  (Chaplin dBase Data Base)
  250. CHAPLIN.DBF     dBase .DBF file used by QRDB
  251. CHAPLIN.DBT     dBase .DBT Memo file used by QRDB
  252. CHAPLIN.HLP     Chaplin Data Base Help File (Text)
  253. CHAPLIN1.IDX    Type 3 Sample Index file
  254.  
  255. USBBS.1CL       Type 1 Sample Control File (Setup for Darwin USBBS list)
  256. USBBS.DAT       Empty Type1 Sample Data File
  257. USBBS.HLP       USBBS Data Base Help File (Text)
  258. USBBS1.IDX      Type 1 Sample Index file #1
  259. USBBS2.IDX      Type 1 Sample Index file #2
  260. USBBS3.IDX      Type 1 Sample Index file #3
  261.  
  262. MAXIMUS.BBS     Info on setting up under Maximus.BBS
  263. VIRTUAL.BBS     Info on setting up under Virtual.BBS
  264.  
  265. The complete chaplin dBase package can be download from Mountain Retreat
  266. only the .DBF & .DBT file are included here. The Complete package
  267. includes Chaplin.FMT. Since QRDB only reads .DBF and .DBT files I didn't
  268. include the conplete package.
  269.  
  270. The files provided will appear in the QRDB main menu as follows:
  271.  
  272. ╔════════════════════════════════════════════════════════════════════════╗
  273. ║            ░░▒▒▓▓██  Q R D B    M A I N    M E N U  ██▓▓▒▒░░           ║
  274. ║                                                                        ║
  275. ║  ░▒                  Your BBS DataBase Selection                   ▒░  ║
  276. ╠════════════════════════════════════════════════════════════════════════╣
  277. ║  A    Computer Hardware/Software Support                               ║
  278. ║  B    Darwin National BBS List                                         ║
  279. ║  C    User List of Favorite BBS's                                      ║
  280. ║  D    User Data Base                                                   ║
  281. ║  E    Central California Winery Guide                                  ║
  282. ║  F    A Data Base of Chaplin Movies                                    ║
  283. ║  G    DataBase of BBS user info                                        ║
  284. ║                                                                        ║
  285. ║  ?    Help                                                             ║
  286. ║  X    Exit QRDB                                                        ║
  287. ╠════════════════════════════════════════════════════════════════════════╣
  288. ║      QRDB Door - Mt. Retreat Software - Support BBS (408)335-4595      ║
  289. ╚════════════════════════════════════════════════════════════════════════╝
  290.  Selection:
  291.  
  292.   In the menu above the "User Data Base" is a type 2 data base and
  293.   "DataBase of BBS user info" is a similar data base useing a type
  294.   3 data base with memo's
  295.  
  296.  
  297. Trouble shooting the QRDB door installation:
  298.  
  299.   The Status bar can be an aid in trouble shooting the door installation.
  300.   a.  QRDB looks in the directory it is run from for Door.Sys and if it
  301.       is not found it looks for DorInfo1.Def. It then uses the environment
  302.       variable QRDB to locate the QRDB data files.
  303.   b.  If you get the Error message QRDB.Dat not found or Corrupt, make
  304.       sure you have the environment variable set, before looking for
  305.       other problems. Example QRDB=C:\QRDBDIR set it to the directory
  306.       that QRDB is located in.
  307.   c.  No status bar indicates that the Door.Sys or DorInfo1.Def file was
  308.       not found and QRDB is running in local mode.
  309.   d.  A status bar with a Baud rate other than 0 indicates the Door.Sys
  310.       or DorInfo1.Def file has been read, QRDB has Config and user info
  311.       and is running as a door.
  312.   e.  If the status bar shows a baud rate of 0 then Door.sys or
  313.       DorInfo1.Def has been Read and QRDB is running in local mode.
  314.   f.  If double spaceing or blank lines in a occure in records when
  315.       displaying it's probably due to, too much data being placed on a
  316.       line. Go back to the QRDBMgr and do some rearranging.
  317.  
  318.  
  319. QRDBMgr:
  320.  
  321.   QRDBMgr.EXE is used to setup a data base, create/edit control files,
  322.   import data and generate index files.
  323.  
  324.   QRDBMgr can be used with or without a mouse. If running without a
  325.   mouse use the arrows keys to select menu items and the Tab key to
  326.   Select Entry fields or Buttons. Main menu items are selected by
  327.   pressing the Alt key plus the HighLighted letter in the menu item
  328.   description.
  329.  
  330.   The diagram below shows the menu selections that are available in
  331.   QRDBMgr.
  332.  
  333.   Remember the Data_Base_Setup functions only put together a control
  334.   file. If you are creating a type 1 data base you will still need to
  335.   import the data using the Import_Type_1_DB_Data function.  In the case
  336.   of a type 3 data base the Build_Type_3_DB_Index function will create
  337.   the necessary indexes to the .DBF file. QRDB does NOT use dBase index
  338.   files.
  339.  
  340.   Qnce a Data Base contains Data/Indexes, changes to certain fields will
  341.   no longer be allowed. You will receive a message telling you which
  342.   fields can't be edited when you attempt to edit a Data Base containing
  343.   data. If you need to edit one of those fields the only way is to Erase
  344.   the data using the Manager's "Erase QRDB Index/Data" function, make
  345.   the necessary changes and then Import, Build or Re-enter the data.
  346.  
  347.   The Erase QRDB Index/Data function works differently on each dB type.
  348.  
  349.     a. The Erase QRDB Index/Data function does not erase dBase .DBF or
  350.        .DBT files, use dBase to erase those. The Erase QRDB Index/Data
  351.        function does erase Type 3 indexes.
  352.  
  353.     b. In the case of the type 2 database Data and Indexes are Erased by
  354.        the Erase QRDB Index/Data function.
  355.  
  356.     c.  When used on a type 1 database the Erase QRDB Index/Data
  357.         function will omly delete Indexes.
  358.  
  359.  
  360.  
  361.  
  362.  
  363.   The delete function will in addition to accomplishing the erase function
  364.   above will also delete the associated QRDB setup.
  365.  
  366.  
  367.  
  368. ┌──────────────────────────────────────────────────────────────────────────┐
  369. │ Exit  Data_Base_Setup           Operations        Shell_to_QRDB          │
  370. └──────────────┬───────────────────────┬─────────────────┬─────────────────┘
  371.                │                       │                 │
  372.                │                       │                 │
  373.                │                       │                 │
  374.   ┌────────────┴─────────────┐         │                 │
  375.   │ Edit a DB Setup       F2 │         │                 │
  376.   │ Make a New Type 1 DB  F4 │         │                 │
  377.   │ Make a New Type 2 DB  F5 │         │                 │
  378.   │ Make a New Type 3 DB  F6 │         │                 │
  379.   └──────────────────────────┘         │                 │
  380.                                        │                 │
  381.                             ┌──────────┴───────────────┐ │
  382.                             │ Main Menu Title Edit     │ │
  383.                             │ Import Type 1 DB Data    │ │
  384.                             │ Read in Type 2 DB Data   │ │
  385.                             │ eXport Type 2 DB Data    │ │
  386.                             │ Build Type 3 DB Index    │ │
  387.                             │ Copy a QRDB Setup        │ │
  388.                             │ Delete a DataBase        │ │
  389.                             │ Erase QRDB Index/Data    │ │
  390.                             └──────────────────────────┘ │
  391.                                                          │
  392.                                                     ┌────┴───────┐
  393.                                                     │ Color   F8 │
  394.                                                     │ Monochrome │
  395.                                                     └────────────┘
  396.  
  397.  
  398. Creating a Type 1 Data Base  ********
  399.  
  400.   To create a Type 1 Data Base you will need a text file to import. The
  401.   USBBS list by Darwin Systems is a good file to start with. Any list
  402.   you chose to create a Type 1 Data Base from must be one in which the
  403.   data is arranged in columns. QRDB will extract it's keys from those
  404.   columns during conversion. Remove any material that isn't a part of
  405.   the structured data, such as column descriptions or List name. Column
  406.   descriptions are entered during setup, using QRDBMgr. Other info
  407.   removed from the list can be placed in the USBBS.HLP help file if
  408.   desired. A Data Base has already been setup for the USBBS list, select
  409.   the menu item Edit_a_DB_Setup or press F2 to review the setup. If you
  410.   are not going to use the Darwin USBBS list in your Data Base you can
  411.   delete it with the Delete a Data Base Function. If you are going to
  412.   use the USBBS you will need to obtain and edit a copy. Remove all text
  413.   at the begining and end of the list that isn't in structured in
  414.   columns. When you are ready to import your USBBS list select menu item
  415.   Import_Type_1_DB_Data from the Operations menu. A Dialog box will be
  416.   presented listing available control files, select USBBS.1CL, next
  417.   enter the name of the USBBS list that you want to import. After you
  418.   have imported the list you can select menu item Shell_to_QRDB and
  419.   review the new data base.
  420.  
  421.   To create a Data Base other than the USBBS that was provided. Start by
  422.   determining what fields that you want to be key fields, you can have up
  423.   to 5. Now Press F4 to bring up the Make Type 1 DB Dialog Box. You will
  424.   enter Database Name, Data Base Title, Display Header and Read Level.
  425.   The Data Base title is the title that will be displayed in the QRDB
  426.   main menu. The header will be displayed with each page of data. Read
  427.   level is the minimum user level required for access to the data. Use
  428.   the Tab or Mouse to select fields.
  429.  
  430.   Example:
  431.  
  432.      Database Name      SUPPORT
  433.  
  434.      Data Base Title    Computer Hardware/Software Support
  435.  
  436.      Display Header       Company Name            Phone Number     Remarks
  437.  
  438.      Read Level         1
  439.  
  440.  
  441.   Press OK when done or press enter. Next a Dialog Box will be presented
  442.   for the defining of keys.
  443.                                          Key
  444.     Key                      Key         Position
  445.     Search Prompt            Length      in Line
  446.  
  447.     Phone Number             12          31
  448.     Company Name             5           25
  449.  
  450.   At least one Key must be defined. Key Search Prompt is the Prompt QRDB
  451.   will use to describe the key to the user. Key Length is the length of
  452.   the key and Key Position in Line is the starting column that QRDBMgr
  453.   will use when extracting keys during import. 
  454.  
  455.   After the setup has been completed the function Import_Type_1_Db_Data
  456.   will import your textfile into the data base, the function builds
  457.   indexes and a .DAT file. QRDB limits the width of text imported into
  458.   this type 1 data base to 79 characters. More than one text file of
  459.   identical structure can be imported if necessary.
  460.  
  461.   The import feature can be used to add a chunk to an existing data
  462.   base, it is suggested you backup any existing work before importing
  463.   additional data. QRDBMgr does not check the data you are importing and
  464.   improperly structured input could corrupt the data base.
  465.  
  466. Creating a Type 2 Data Base  ********
  467.  
  468.   A couple of sample Type 2 Data Base files have been provided. To
  469.   review their control files, run QRDBMgr press F2 and select
  470.   either of the .2CL files.
  471.  
  472.   Prior to creating a Type 2 Data Base you should first decide on the
  473.   layout of the data that will be presented to the user. The number of
  474.   lines it will take to display a record and the layout of each line. A
  475.   maximum of 5 lines and a maximum of 5 fields per line are allowed.
  476.   Decide witch fields will be (K)ey fields, input (R)equired Fields or
  477.   Input (O)ptional fields. All Key fields are also input required
  478.   fields. The space used to display fields on a line can't add up to
  479.   more than 80 characters. Space required to display a field is the
  480.   length of the data field + the length of the Data Label + a colon and
  481.   a space between label and data. If not enough space is available
  482.   for the full field of the last record on a line the field will be
  483.   truncated.
  484.  
  485.   Note that the QRDB (L) and (B) functions will use the first key
  486.   assigned for their sort order. Another thing to consider is that the
  487.   QRDB (B)rowse function first displays that first key, then starting at
  488.   the first field in the record it displays fields until 80 characters
  489.   are displayed then goes to the next record. If the Key field displayed
  490.   at the beginning of the line is incountered it is skiped. Spacing used
  491.   by (B)rowse is Field Length plus 2 spaces unless the length or the
  492.   display label is greater than the field length, in which case (B)rowse
  493.   will use the display label length.
  494.  
  495.   When the layout has been planed, press F5 or select Add_a_type_2_DB
  496.   from the menu to bring up the Make Type 2 Dialog Box. Fill in the
  497.   Database Name, Read Write and Edit/Del Security Levels and the Data Base
  498.   Title. Use the Tab or Mouse to select fields.
  499.  
  500.   Example:
  501.  
  502.      Database Name:   AREA408
  503.  
  504.      Security Levels  Read      Write     Edit/Del
  505.                        5         5         100
  506.  
  507.      Data Base Title:  User Generated List of Area Code 408 BBS's
  508.  
  509.  
  510.   Press OK when done or press enter. Next a Dialog Box will be presented
  511.   for the defining the first line of the Data Base. You can have up to 5
  512.   lines. The inputs required to define a line are as follows.
  513.  
  514.  
  515.   Example:
  516.  
  517.  ┌─────  Input  ────────────────────────┐ ┌──────────  Display  ──────────┐
  518.  │(K)ey                                 │ │                         Label │
  519.  │(R)eq                           Field │ │                         Start │
  520.  │(O)pt Prompt                    Length│ │Label                    Column│
  521.    K    Phone Number [XXX-XXXX     8       Phone                     1
  522.    K    City                       25      City                      21
  523.    O    Max Baud                   5       Max Baud                  56
  524.                                    0                                                                       0
  525.  
  526.  
  527.   Up to 5 fields per line can be defined, but only a total of 5 keys in
  528.   the 5 lines are all that is allowed. Remember that the total of fields
  529.   and field labels can't add up to more than 80. Oh also allow for
  530.   spaces between fields and Colons after labels.
  531.  
  532.   Maximum key length is 15 characters if a field longer than 15
  533.   characters is designated as a key only the 1st 15 characters in the
  534.   field will be used in the index.
  535.  
  536.   When you have defined the first line press Alt N or use the mouse to
  537.   select the next line button or you can press enter. When you have
  538.   defined the last line that you want to use Select the Done button.
  539.  
  540.  
  541.   Input Info .......
  542.  
  543.   (K)ey-(R)eq-(O)pt    decide if the field will be a (K)ey field, an input
  544.                        (R)equired Field or an Input (O)ptional field. All
  545.                        Key fields are also input required fields.
  546.  
  547.   Prompt               This is the Prompt QRDB will use when asking for Input
  548.                        or describing the sorted lists that are possible.
  549.  
  550.   Field Length         This is the Maximum length of an entry in this field.
  551.                        If it is a Key field it is also the length of the Key
  552.                        unless the field is longer than 15 characters in
  553.                        which case the Key length is set to 15 characters.
  554.  
  555.   Display Info .....
  556.  
  557.   Label                This is the label placed ahead of the data when the
  558.                        line is displayed, when displayed a colon will be added
  559.                        to the label.
  560.  
  561.   Label Start Column   This is column that the first character in the label
  562.                        will be placed in. When a field is displayed the
  563.                        label is followed by a colon and a space and then
  564.                        the data. Labels are not displayed if the field
  565.                        is empty.
  566.  
  567.  
  568.   The data base can be left empty for user input or a comma delimited
  569.   file of data can be imported into the data base using the Operations
  570.   PullDown Menu item (Read in Type 2 DB Data). Data for import must be
  571.   set up as follows. Each record to be created must contain the same
  572.   number of lines that you have established for display by QRDB. Use a
  573.   comma to identify the end of a field's input. A comma is required for
  574.   every field in the record, including blank fields. Remember not to use
  575.   comma's in your data as they would throw things off. See the following
  576.   example.
  577.  
  578. A record from the Example Data Base "User List of Favorite BBS's"
  579.  
  580. │Phone: 408-335-4595   St: Ca    City: Felton
  581. │BBS Name: Mountain Retreat
  582. │MaxBaud: 14400   Size: 660Meg
  583. │Comment: Specializing in Pascal Programming
  584.  
  585. A comma delimited text file for import would look as follows
  586.  
  587. 408-371-7654,Ca,Campbell,
  588. Brown Bag Software,
  589. 2400,,
  590. Brown Bag software support board,
  591. 201-471-6391,Nj,Passaic,
  592. The Passaic/NJPCUG BBS,
  593. 9600,,
  594. Fido Net Node 1:107/559,
  595. 714-824-4328,Ca,Loma Linda,
  596. LLUMC Online Medical Library,
  597. 2400,120Meg,
  598. ,
  599.  
  600.   In summary:
  601.   No blank lines, one line for each line in the record, Comma at the end
  602.   of each field including blank fields. No testing of your input is done
  603.   by QRDBMgr so make sure your input is correct and if you are adding to
  604.   an existing data base you should probably back up the data base before
  605.   starting.
  606.  
  607.   If you are going to import a comma delimited list; select menu item
  608.   Read_In_Type_2_DB_Data from the Operations menu. A Dialog box will be
  609.   presented listing available control files, select the .2CL control
  610.   file for the data base you want to add to, next enter the name of the
  611.   list that you want to import. After you have imported the list you can
  612.   select menu item Shell_to_QRDB and review the new data base.
  613.  
  614.   The import feature can be used to add a chunk to an existing data
  615.   base, it is suggested you backup any existing work before importing
  616.   additional data. QRDBMgr does not check the data you are importing and
  617.   improperly structured input could corrupt the data base.
  618.  
  619. Exporting Type 2 Data
  620.  
  621.   QRDB will Export Type 2 DB Data to a Comma delimited file. Output will
  622.   be based on the record structure and will be in the format required
  623.   for import. Or you can format the data thru the use of a control file.
  624.   Control File structure is as follows, You will need a line in the
  625.   control file for each line of record output required. Identify the
  626.   line with the line number preceded by "L" as L1. Then on that line
  627.   identify the fields that are to be placed on the line using a
  628.   combination of Line that the record is found on a Dos Pipe character
  629.   and the position of the field on the line.
  630.  
  631.   Control files must have the Extension .CTL and the same name as the
  632.   Comma delimited Text file being created. Example if WGX1.TXT is the
  633.   name of the text file being created then WGX1.CTL would be the name to
  634.   use for the control file
  635.  
  636.   The following is an example control file. It consists of the one line:
  637.  
  638. L1  2|1 1|1
  639.  
  640.   The above will export the BBS name and Phone number from the example
  641.   "User List of Favorite BBS's" to a comma delimited file. The name and
  642.   phone number will appear on one line in the output. In order to place
  643.   the data on two lines the control file would look as follows
  644.  
  645. L1  2|1
  646. L2  1|1
  647.  
  648.   To export to a comma delimited file, in which records are written one
  649.   to a line, you would use something like the following. The fields can
  650.   be placed in any order required.
  651.  
  652. L1 1|1 1|2 1|3 2|1 3|1 3|2 4|1
  653.  
  654.  
  655. Creating a Type 3 Data Base ********
  656.  
  657.   A sample Type 3 Data Base has been provided. To review it's
  658.   control files, run QRDBMgr and press F2 and select the .3CL file.
  659.  
  660.   As with the type 2 data base you should have a plan as to how you want
  661.   the data to be displayed. Note that the QRDB (L), (M) and (B) functions
  662.   will use the first key assigned for their sort order. Another thing to
  663.   consider is that the QRDB (B)rowse function first displays that first
  664.   key, then starting at the first field in the record it displays fields
  665.   until 80 characters are displayed then goes to the next record. If the
  666.   Key field displayed at the beginning of the line is incountered it is
  667.   skiped. Spacing used by (B)rowse is Field Length plus 2 spaces unless
  668.   the length or the display label is greater than the field length, in
  669.   which case (B)rowse will use the display label length.
  670.  
  671.   The dBase date field is converted to MM/DD/YYYY when displayed. When
  672.   listing by date field order when the date field is a Key field, QRDB
  673.   converts user input from ,MM/DD/YYYY, MM-DD-YYYY, or MM/DD/YY to the
  674.   dBase format YYYYMMDD. If users will be wanting to search for dates
  675.   that are in dBase date fields, it would be a good idea to make the
  676.   date field a Key field as the search function does not do any
  677.   converting.  Look at the chaplin dbase file and help screen for an
  678.   example.
  679.  
  680.   When you have a plan press F6 or select Add_a_type_3_DB from the menu
  681.   to bring up the Make Type 3 Dialog Box. Fill in the Name of the .DBF
  682.   file you are going to use. If the dBase file is not in the QRDB
  683.   directory you will need the Full Path Name. A minor problem created by
  684.   the Full Path Name is if the database is passed to another system the
  685.   dBase file must be placed in a directory with the identical name, not
  686.   a problem if the database is used on one machine.  Next input Security
  687.   Levels and the Data Base Title. Use the Tab or Mouse to select fields.
  688.  
  689.   Example:
  690.  
  691.     .DBF file Name:    CHAPLIN.DBF  (or C:\dBase\Chaplin.Dbf)
  692.  
  693.     Read Security Level:   1
  694.  
  695.     Data Base Title:     A data base of Chaplin movies
  696.  
  697.   Press OK when done or press enter. Next a Dialog Box will be presented
  698.   for the defining the layout of the dBase data on the screen.
  699.  
  700.   Example:
  701.  
  702. ╔═[■]═══════════════════════ Type 3 Db  Fields  ════════════════════════
  703. ║ ┌─ dBase Field ───┐ ┌────────── QRDB Handling Instructions ──────────┐
  704. ║ │                 │ │(N)/A                                           │    ║
  705. ║ │                 │ │(O)pt                                           │    ║
  706. ║ │                 │ │(R)eq                                           │    ║
  707. ║ │Name      Typ Len│ │(K)ey  Display Label                   Line Col │    ║
  708. ║  TITLE      C  30      O     Title                           1    1
  709. ║  COMPANY    C  15      O     Company                         1    38
  710. ║  RELEASE_D  D  10      K     Released                        4    1
  711. ║  DIRECTOR   C  30      O     Director                        3    1
  712. ║  WRITER     C  30      O     Writer                          3    38
  713. ║  FEETLENGT  N  5       N                                     0    0
  714. ║  FEET_SHOT  N  6       N                                     0    0
  715. ║  REELS      N  4       N                                     0    0
  716. ║  MINUTELEN  N  3       N                                     0    0
  717. ║  START_DAT  D  10      N                                     0    0
  718. ║  END_DATE   D  10      N                                     0    0
  719. ║  ACTOR      C  30      O     Actor                           2    1
  720. ║  ACTRESS    C  30      K     Actress                         2    38
  721. ║  SUPPORT    M  10      O     Support Memo                    5    1
  722. ║  MUSIC      M  10      O     Music Memo                      5    26
  723. ║  CREDITS    M  10      O     Credits Memo                    5    52
  724.  
  725.  
  726.  
  727.   dBase Field Info .......
  728.  
  729.                        The dBase field Name, Type and Length are
  730.                        displayed as an aid in working out the Handling
  731.                        info required by QRDB.
  732.  
  733.   QRDB Handling Info .......
  734. ║ │                 │ │(N)/A                                           │    ║
  735. ║ │                 │ │(O)pt                                           │    ║
  736. ║ │                 │ │(R)eq                                           │    ║
  737. ║ │Name      Typ Len│ │(K)ey  Display Label                   Line Col │    ║
  738.  
  739.  
  740.  (N)/A-(O)pt-(R)eq-    Decide if the field will be a (K)ey field, a (D)isplay
  741.               (K)ey    Field or a (N)ot Required Field. Fields coded (N)
  742.                        are not used by QRDB. Memo fields must be coded (O)
  743.                        or (N), they can NOT be a key field. In the example
  744.                        the fields SUPPORT, MUSIC and CREDITS are memo
  745.                        fields.
  746.                        A numeric field as a key can have problems
  747.                        indexing. Depending on how the key field was
  748.                        input. dBase, dBuddy or QRDB. Don't use a numeric
  749.                        field as a key unless all input is via one
  750.                        system.
  751.  
  752.   Display Label        This is the Label QRDB will use when displaying the
  753.                        associated field data.
  754.  
  755.   Line                 This is the line that the Label and the Field data
  756.                        data will be placed on when QRDB is displaying the
  757.                        data.
  758.  
  759.   Col                  This is column that the first character in the label
  760.                        will be placed in. When a field is displayed the
  761.                        label is followed by a colon and a space and then
  762.                        the data. Labels are not displayed if the field
  763.                        is empty.
  764.  
  765.   After the above Setup is complete go to the operations menu and Build
  766.   the Type 3 DB Index. You must Build indexes even if you are starting
  767.   with a empty database. If ever changes are made to the .Dbf database
  768.   files outside of QRDB you will have to repeat this Build function.
  769.   This function can be time consuming, I just indexed a 39,945 record
  770.   dBase file. The .dbf file size is 5073k and the setup uses 3 key
  771.   fields. Indexing on a 386sx 20Mz machine took 15 Hours. As a
  772.   comparison, indexing a file of 2,348 records that had 2 key fields and
  773.   a dBase .dbf file size of 761k took less than 2 minutes. The increase
  774.   in time required for the Build process is not linear as you can see.
  775.  
  776.   If you would like to use the type 3 data base, let's say for it's Memo
  777.   display capability and don't use a dBase compatable Data Base program.
  778.   You can use the Shareware program dBuddy to create the required files.
  779.   dBuddy (Data Base Buddy) is a dBase tool, it will build dBase III or
  780.   IV compatable Dbf and .Dbt files, either empty dBase files or it can
  781.   extract data from text files. dBuddy will Export to character
  782.   delimited files or text files, memo's are also exported. dBuddy is
  783.   available on Mountain Retreat 1:216/506, 408-335-4595. It can be
  784.   Freq'd under the magic name dBuddy.
  785.  
  786.   When used to create a new type 3 setup the copy function will copy and
  787.   create a empty .dbf file. QRDBmgr does not create associated memo
  788.   files and complains that they are missing, not a problem, as QRDB will
  789.   create the memo files the first time a memo is added.  The empty file
  790.   can be replaced with a file containing data as long as the fields are
  791.   an exact match.
  792.  
  793.   In order to relocate a .DBF file that has been identified with a full
  794.   pathname you will have to use the (E)rase QRDB Index/Data function. It
  795.   wipes out everything but the .3CL and .DBF/DBT files. Then use edit a
  796.   DB setup to show the new pathname and then Build the type 3 DB Index.
  797.   The .3CL file contains your setup so nothing is lost except the indexes
  798.   and a pointer to the directory that contains the .DBF/DBT files. The
  799.   same process can be used to change any .3CL field to which changes arn't
  800.   allowed. You can also use the (E)rase QRDB Index/Data function to erase
  801.   references to indexes that don't exist. Such as when you are given a
  802.   .DDF and .3CL file without indexes.
  803.  
  804.   Disclaimer agreement
  805.  
  806.     Users of QRDB and QRDBMGR must except the following disclaimer
  807.     agreement:
  808.  
  809.     QRDB and it's utilities are provided AS IS. The Author makes no
  810.     Warranty of any kind, expressed or implied. In addition THE AUTHOR
  811.     ASSUMES NO LIABILITY FOR DAMAGES WHICH MAY RESULT WHICH MAY RESULT
  812.     FROM THE USE OF QRDB, QRDBMGR or associated utilities.
  813.  
  814.    History
  815.  
  816.     Version 1.00    Initial Release
  817.     Version 1.01    Added a Main Menu help function
  818.     Version 1.02    Added a type 2 data import function and fixed
  819.                     a bug in the type 3 data dase setup functions
  820.     Version 1.03    Changed screens and added local mode default.
  821.     Version 1.04    MultiNode support added
  822.     Version 1.05    Beta Release switched to use of DorInfo1.Def
  823.                     in order to make the door useable on more systems.
  824.     Version 1.06    Release of DorInfo1.Def version
  825.     Version 1.07    Added support for dBase III and dBase IV memos
  826.                     Added support for dual word searches
  827.     Version 1.08    Improved dBase searches added dual word searches
  828.                     and speed.
  829.     Version 1.09    Miner changes mainly in docs to aid in setup
  830.     Version 2.0     Changed QRDBMgr to allow the rebuilding of Index
  831.                     files if changes have been made to the dBase
  832.                     .DBF files. Changed QRDB to allow smoother exit
  833.                     from Search functions.
  834.     Version 2.1     Added Browse function to type 2 and 3 database
  835.                     menus. Added a Pause Page Toggle to all types.
  836.                     Stoped scrolling the screen when displaying
  837.                     the number of records searched. QRDB now overwrites
  838.                     the message for a cleaner display.
  839.     Version 2.2     In type 2 database if Read access was not given then
  840.                     then Write access was locked out. QRDB will now
  841.                     allow you to give a user Write access without giving
  842.                     read access.
  843.     Version 2.3     Improved Browse feature. Added capability to a Type 2
  844.                     database to a comma delimited file.
  845.     Version 2.3a    Main menu can be bypass, command line option, fix.
  846.     Version 2.3b    Program now gives full pathname in .Dat not found
  847.                     Error message. Moved the Browse function to the
  848.                     top position in the menu. Changed the timer routine
  849.                     I was using, it could possibly lock a system.
  850.     Version 2.4     Added additional drop carrier protection, added
  851.                     escape from data entry feature.
  852.     Version 3.0     Beta version, Major upgrade, adds edit to type 2
  853.                     database and adds Add, Edit and Delete to type 3.
  854.                     User has edit/delete access to any record he creates.
  855.             3.0B    Fixed level problem, a level equal to or greater than
  856.                     the level set in QRDB now has access. Prior to fix
  857.                     user level had to be greater for access.
  858.             3.1     Beta status Removed, Main Menu Help problem fixed and
  859.                     Memo Display bug fixed.
  860.             3.2     Type 3 Browse Bug fix.
  861.             3.3     Cosmetic Bug fix, the word changed is no longer
  862.                     displayed when entering a dBase record.
  863.             3.4     dBase file handler Bug Fix.
  864.             3.5     Fixed disappearing cursor problem,
  865.                     Improved "Build Type 3 DB Index" routines.
  866.                     Added type 3 db to QRDBMgr copy function
  867.                     Fixed problem QRDB had in using a empty type 3 .dbf
  868.             3.6     Beta Version Will now use Door.Sys or DorInfo1.Def
  869.             3.7     Door.Sys version as yet not reported OK
  870.                     Dos 6 NO GO fixed.
  871.             3.7a    Beta Status removed, Documentation change only.
  872.             3.8     Type 3 Bug Fix
  873.             3.9a    Fixed linecount problem and problem of two keys
  874.                     being left at times, when a keyfield was edited.
  875.                     The new key and the old key both pointing to the
  876.                     same record.
  877.             3.9b    The routine I was using to check for adequate memory
  878.                     did not work properly on all systems. I have removed
  879.                     it from the program.
  880.             3.9c    Fixed Memo delete function
  881.             3.9d    Improved exit from last page during Browse
  882.             3.9f    Fixes problem where no more than two pages of recs
  883.                     with duplicate keys would be displayed when browseing.
  884.                     Also fixed hang while searching problem.
  885.             3.9g    Changed QRDBMgr to allow changes to .3CL files
  886.                     after Index files have been erased. Changed this doc.
  887.                     file to reflect that change.
  888.             3.9h    Corrected a problem with Userinf.3cl, it called for a
  889.                     .dbf file in a d:\QRDBTEST directory. Discontinued the
  890.                     use of a QRDB.Key file. The file was not a true key,
  891.                     QRDB has never been crippled in any way. That key file
  892.                     gave the impression that the program was crippled.
  893.  
  894.  
  895.     QRDB is ShareWare, a $25 registration fee is required. When you
  896.     register send me a 65 character message of your choice. You will be
  897.     sent a new QRDB.Dat file. Your 65 character message will replace the
  898.     following line in the QRDB menu.
  899.  
  900.   ╠════════════════════════════════════════════════════════════════════════╣
  901.   ║      QRDB Door - Mt. Retreat Software - Support BBS (408)335-4595      ║
  902.   ╚════════════════════════════════════════════════════════════════════════╝
  903.  
  904.  
  905.     If you decide to continue useing QRDB after a 90 day trial period
  906.     you are expected to register. This is a one time registration the
  907.     message created for your system will work with all future revisions.
  908.  
  909.     Please send your registration fee to:
  910.  
  911.              John Jamieson
  912.              Mountain Retreat Software
  913.              555 Buckeye St.
  914.              Felton Ca, 95018
  915.  
  916.     For support contact:
  917.  
  918.              Fidonet 1:216/506
  919.              Internet John.Jamieson@f506.n216.z1.FIDONET.ORG
  920.              BBS phone (408)335-4595
  921.              Voice (408)335-4672
  922.  
  923.  
  924.  
  925.  
  926.