                  WELCOME TO ABASE !

    ------------------ NOTE ----------------------

            SORRY FOR GRAMMAR ERRORS !!!
       
    ------------------ DOC -----------------------


  1.Starting Out
  --------------
  
  Start the program via CLI/Shell typing abase <ENTER> or from WorkBench.After
  this, if tittle appears press any key/mouse button to enter the main screen.
  If something went wrong (out of memory seems to be the only problem) program
  will exit without leaving a message.
   
  2.Main Screen
  -------------

  Gadgets on the left side are divided on three sections:
  
  File Gadgets - New,Open,Close,Exit
  Main Functions - Insert,Update,Select,Delete
  Prefs - QUERY ON/OFF/LOAD,MEM ON/OFF,PRT ON/OFF,LINE ON/OFF

  Bottom of the screen is reserved for messages.
  Prefs values can be changed simply by clicking on them.
  Right now,you have only two options:define a new database with New,or
  opening (loading) from disk by Open.You can choose if your database is
  going to be held in memory on disc:MEM ON stands for MEMory ON and therefore
  tells program to keep all records in memory and save on exit. MEMory OFF 
  constantly saves changes to disk.If you want security and perhaps have 512K
  you may want to keep data on disc,but I strongly suggest to use (default)
  memory mode to vastly improve speed.
  If you defined/opened database use main functions to DO WHATEVER YOU WANT !
  Names and the whole processes are pretty self-explanating but here are details
  about every function :
  
  **************************************************************************
  1.New

  This function lets you to define new database.Every database consists of 
  number of fields.Maximum this program allows is ten.
  In the new window there are number of gadgets:
  Name - every database should have a proper name like 'Record Collection'
         or 'Phone Book'
  Add  - adds field to list
  Edit - changes selected field.Ffields are selected(highlighted on screen) by
         clicking on field list
  Delete - removes field from list
  Ok,Cancel - guess...

  After Selecting Add or Edit brand new window appears where you have to give
  full field description.

  Name - field name
  Field type can be:
  NUMERIC - integer between +2000000000 and -20000000000 (approximately !?)
  STRING - line of text.Len determines the maximum length
  FLOAT - floating point number
  BOOLEAN - yes/no
  DATE - date (really ??!!??)
  Field can have some flags like:
  NOT NULL - when inserting data you MUST enter some value for this field.
  UNIQUE - also,when inserting data you CAN'T specify value which already 
           exists in database (every value must be unique)
  Ok confirms Cancel returns without changing

  Although in maybe looks confusing after little practise you will surely
  master the whole process.It's important to design field carefully:after
  defining database you can't change this values.Also,when defining STRING
  field try not to waste memory and disk space.
  **************************************************************************
  2.Open
  
  This opens a database from disk.File name is choosed from File Requester,
  and if you have some problems with it,try looking down...
  **************************************************************************
  3.Close
  
  With this option,you can save data to disk (if data is held in memory),
  an enable opening/defining a new database.
  **************************************************************************
  4.Exit

  If you have any data in memory program will warn you.Ok mean exit and 
  Cancel mean exit.Otherwise exits.
  **************************************************************************
  5.Insert
  
  Finally.With this option you can insert new record(s) to database.List of
  fields will appear you can just enter some values.Click Ok to save (or the
  program will warn you that something went wrong) and Cancel means 'enough,
  return to main screen'.
  Things to point:proper values for BOOLEAN fields are be 'yes' or 'no' 
  (NO capitals) and date format is 'dd/mm/yy' (30/12/1973 no 30.12.1973 
  no 30-Dec-1973).This of course stands for DATE fields   
  **************************************************************************
  6.Update

  This option allows you to edit contents of the database.Actually,before
  editing you may determine which records you want to edit and if you are
  not familiar with this procedure see 9.QUERY at once !
  Similar to Insert (and if you want to edit data you have surely inserted
  some !) list of fields appears now with values.Commands available:
  Prev - previous record
  Next - next record
  Save - save changes
  Cancel - return to main menu
  **************************************************************************
  7.Select
  
  Again SQL term (more about SQL later).Select displays records found with
  query.There are two ways of displaying (see 12.LINE and 11.PRT).Commands
  in the bottom:
  Prev - backward
  Next - forward
  Cancel - return  
  **************************************************************************
  8.Delete 

  With Delete you can remove (get rid of) unwanted records,again found from
  query.DANGER!If your data is entirely in memory you can't restore this !
  This is the reason why program force you to confirm
  ATTENTION:if QUERY ON is choosed,this means you want to delete ALL RECORDS !
  **************************************************************************
  9.QUERY ON/OFF/LOAD

  Three possible values are:
 
  QUERY ON - default,ask user every time to enter query 
  QUERY OFF - no entering,use ALL records
  QUERY LOAD - load a saved query

  Query is powerful method of selecting data from database.You may know it
  as 'filter'.It can be used for Update/Select/Delete to mark the records
  you want to edit/display/delete.
  In the query window beside list of fields you'll see four columns.They are
  (from left to right)
  
  Display : (Has a 'D' at the top).This determines the fields you want to
            see/edit in Select/Update
  Sort    : (Has a 'S' at the top).This may mark the field you want to use
            for sorting
  Operators:Clicking on gadget from this column shows you the operator which
            will be used in conjunction with data on the right.
            For NUMERIC,STRING,FLOAT there are following operators available:
            =,<,>,<=,>=,<> 
            For BOOLEAN: Is,Is Not
            For DATE: Equal,Before,After,Differ
            Condition is :
            <data in database> <operator> <data on the right>
            Record which 'passes the filter' is record which has all 
            conditions (ie. in all rows) true.
            If operator field is empty no condition will be made.
  Data    : Actual data (mentioned above),inserted in just like in the
            Insert option.  

  Example 1:Suppose you have two fields 'NAME' and 'SALARY'.If you want to 
            see all workers which have salary bigger than 5000 click on 
            operators column until you see '>' and than enter 5000 on the
            right (All this of course in SALARY row !)

  Beside this there are Ok,Save (saves query to disk),Cancel.
  This topics is surely hard to explain on this way,but experiment and you'll 
  find yourself using it with ease just after few minutes.
  **************************************************************************
  10.MEM ON/OFF

  I think you know this already.Before defining/opening database you can 
  decide if database is going to be held in memory (MEM ON) or frequently  
  accessed from disc (MEM OFF).Use:
  MEM ON:Always.Speeedy.
  MEM OFF:If you have 512K and database bigger than 300K (I'd really like
          to see this !!!).
  **************************************************************************
  11.PRT ON/OFF

  When PRT is turned ON all data displayed with Select,will be printed too.
  Be sure you have set up your printer in preferences
  **************************************************************************
  12.LINE ON/OFF
 
  This determines the way Select displays records:
  LINE ON:All data in one record will be put in one line.You'll get three
          lines displayed ie. 3 records at once.
  LINE OFF:Only one record will be displayed at the time.
  **************************************************************************
  FILE REQUESTER
  
  You already know how to handle such things - get the right dir and enter
  the filename.If you press ENTER on the start it will display current 
  directory
  **************************************************************************
  CREDITS

  Program,Utilities,Documentation by Vulovic Djordje
  Design,Helping by Slijepcevic Igor

  New version is on the way and your comments and suggestions are highly 
  desirable.
 
  ALFA Production Team: Vulovic Djordje
                         Nova Skojevska 41/11
                          11090 Belgrade 
                           Yugoslavia
 
             
