home *** CD-ROM | disk | FTP | other *** search
-
- ONBASE (V1.43 10/22/87)
- Onbase is a memory resident program which allows a user
- to rapidly access, create, modify and delete data from custom
- single screen databases. Onbase is meant to allow a user to have
- on line any information which may be needed in a quick and easy
- retrieval fashion. Examples of an Onbase application might be: a
- phone number program which allows Hot Key access to your phone
- directory, or a product price sheet which could be called up in
- response to a phone query.
-
- Features:
- 1.) Three user definable on-line databases at a time.
- 2.) User definable hot keys.
- 3.) Very simple creation of new databases.
- 4.) Program functions in both single and multi-user environments.
- 5.) Easy export and import of data to and from other programs.
- 6.) Quick and responsive on a PC, really snappy on an AT.
- 7.) Sophisticated Technology overcomes most Popup problems.
- 8.) Handcrafted in Assembly language to consume a minimum amount
- of the machine's resources for the functions achieved.
- 9.) Size of databases limited only by size of disks.
- 10.) Password protection of files available.
- 11.) Very low cost.
- 12.) Allows up to 12 keys per record, 130 fields per record
-
- System requirements: IBM PC,XT,AT,PS2 or compatible computer
- (either standalone or networked using Novell Netware) running DOS
- 3.1 or greater. Supports monochrome (Hercules or MDA) ,CGA,
- enhanced CGA, (PS2 model 30),EGA,and VGA adapters.
-
- Onbase is distributed under the Shareware concept. For those
- not familiar with the idea: Shareware is an attempt to hold down
- the cost of software by minimizing the costs of publishing and
- distribution. Shareware is similar in concept to the "Honor
- System" method of candy sales; both are based on the fact that
- most people are honest enough to pay for what they get. Shareware
- offers the advantage of allowing a customer to try out and test a
- program before buying it. It is a simple fact of life that
- computer users pass software around. Shareware legitimizes this
- fact: feel free to pass this package to your friends and
- associates. No matter how you came to possess this software - you
- may become a registered owner of it by sending fifteen dollars by
- check or money order to:
-
- Robert Canup
- PBTV
- P.O. Box 31075
- Houston, TX 77231
-
-
- Protect the concept and advantages of Shareware: become a
- registered owner today.
-
- Commercial site licensing is available upon request.
-
-
-
-
-
- An additional inducement to registering ownership of Onbase is
- this program:
-
- Each 100th person purchasing Onbase receives a check for
- $100.00
- Each 1,000th person purchasing Onbase receives a check for
- $1,000.00.
- Each 10,000th person purchasing Onbase receives a check for
- $10,000.00.
- Each 100,000th person purchasing Onbase receives a check for
- $100,000.00.
- Each 1,000,000th person purchasing Onbase receives a check for
- $1,000,000.00.
-
-
-
- "If you are lucky the things you forgot are the things which
- didn't matter."
- M. Robert Showalter
-
- Great care and effort has been expended in the coding and
- testing of these programs to insure their correct functionality.
- Unfortunately testing can only show a program to be faulty, no
- amount of testing can show a program to be error free. If, in
- using these programs you do uncover a boundary condition which
- causes the code to malfunction please feel free to send the
- specifics of the circumstances which caused the failure to the
- above address. Every effort will be expended in order to attempt
- to correct bugs which are uncovered in this fashion.
- Due to the unfortunate times in which we live I am forced
- to include the following notice:
-
- ***** LIMITATION OF LIABILITY *****
-
- UNDER NO CIRCUMSTANCES SHALL THE AUTHOR OF THESE PROGRAMS BE
- LIABLE FOR DAMAGES EITHER DIRECT OR CONSEQUENTIAL, RESULTING FROM
- THE USE OF THESE PROGRAMS.
-
-
- The philosophy of Onbase is "Lean and Mean". Onbase lacks
- windows, colors, sound effects, and fancy opening displays. While
- they make programs appear to be more "Professional"; such things
- serve only to annoy someone whose goal is to accomplish as much
- as is possible in a given period of time.
- To produce an output BASIC requires source code which gives
- it a list of instructions to perform. Onbase is similar in that
- respect.
- Let us take a phone look up database as an example of an
- Onbase application. If one wanted an Onbase screen which looked
- like this:
-
-
-
-
-
- P H O N E D A T A B A S E
-
- Name:
- Title:
- Phone number:
- Address 1:
- Address 2:
- City:
- State:
- Zip:
- Notes:
- Date entered: Time entered:
- Document serial number:
-
- Where entering someone's name would bring up the rest of the
- information on the screen, it would be necessary to supply
- Onbase with a source screen which looked like the following.
-
- P H O N E D A T A B A S E
-
- Name:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- Title:..........................
- Phone number:@@@@@@@@@@@@@@
- Address 1:.................................
- Address 2:.................................
- City:#########################
- State:..
- Zip:.....
- Notes:..........................................................
- Date entered: \%%%% Time entered: |^^^^
- Document serial number:~$$$$$$$$$
-
- Several things stand out about the source screen for the
- Onbase application. Ten different symbols appear on the source
- screen which do not appear on the data inquiry screen. These
- symbols are the key to generating an Onbase application.
- The first different symbol which appears on the source
- screen and not on the application screen is '!'. '!' Is the
- symbol for a primary key; that is '!' marks the location by which
- information is normally found. It is usual in looking for some
- one's phone number to know their name. The number of non
- displayable symbols which appear grouped together indicate how
- long a field is. In the above example the 33 '!' symbols in a row
- next to the 'Name:' means that Onbase will accept up to 33
- characters for a persons name. You determine the length of the
- fields that you wish to use when you lay out your Onbase source
- screens.
- The next symbol on the screen is: '.' This symbol is used to
- denote a field which Onbase will fill in with information.
- Also appearing on the screen are the symbols '@'and '#'
- these represent secondary keys which may be selected by the user
- to find information: In the above example you might need to know
-
- who a phone number belongs to; in which case you would select the
- use of the '@' key for use. (It will be explained later how to do
- this.) In a similar fashion '#' represents a tertiary key for
- data lookup.
- The available symbols for keys are:
-
- !@#$%^&*()_+
-
- The above makes sense if you look at the row of symbols
- above the number keys on a standard PC keyboard: these are simply
- the top row of keys shifted to uppercase. The primary key is the
- most important key you expect to be using; normally when Onbase
- is invoked it is the key which is in effect. The other keys have
- no precedence over each other. No key has to be assigned in
- physical order on the screen: the Primary key might be the last
- physical line on the screen, and follow all of the other keys on
- the screen. At least one key is required for each Onbase
- application; otherwise Onbase would have no idea what information
- to supply to the user.
- The difference between a field with '.....' and one of the
- key fields such as '!!!!!!' or '&&&&&&&' is that Onbase can be
- asked to find data in a key field, but not in a simple data field
- denoted by periods. The reason that one does not make every field
- a key field is that key fields require more space on the disk
- than non key fields. In addition, because of this, a database
- which has many key fields will take longer to enter data onto the
- disk than a database with fewer key fields.
- Also appearing on the source screen are the symbols "\ | ~ "
- these symbols differ from the field symbols in that they cause
- the computer to supply information to a given screen at the time
- that the data screen is recorded onto a disk. These fields may
- also be made into search key fields by entering a legal,
- available key field identifier immediately after the "\ | ~"
- appears. The example screen shows the proper way to make key
- fields for the time,date and serial number fields. Note that nine
- key symbols follow the serial number field, while four key
- symbols follow both the date('\') symbol and the time('|') char.
- These values are the only proper sizes to use when making these
- fields key fields. Be sure to leave enough space on the screen
- for the date, time, and serial number fields to display. All
- three fields require nine character spaces after the identifier
- character. Example:
-
- NOT ENOUGH ROOM FOR DISPLAY IN THIS EXAMPLE
-
- Date:\&&&& Time:|@@@@ Document number:~+++++++++
-
- THIS DISPLAY HAS ENOUGH ROOM FOR PROPER DISPLAY
-
- Date:\&&&& Time:|@@@@ Document number:~+++++++++
-
-
- In order to supply Onbase with a source screen it is
- necessary to use an editor such as Edlin or Wordstar in the non-
- document mode, to create the source screen. The name of the
-
- source screen is any legal DOS file name from one to eight
- characters, followed by .QWB for a file extent. The name of our
- sample program is 'PHONE.QWB'.
-
- As was pointed out earlier in this text Onbase is a memory
- resident program, meaning that it can be brought up at any time
- by activating ALT 1, ALT 2, or by ALT 3 key sequences. The reason
- that three key sequences can bring Onbase up is that Onbase
- allows three separate Databases to be active at a time. When
- Onbase is loaded into memory it is done by typing :
-
- Onbase filename1 filename2 filename3
-
- where filename1 , filename2 and filename3 are the names of 3
- Onbase source files. As was stated earlier; Onbase assumes an
- extent of QWB for its files, so it is not necessary to include
- .QWB on the end of these names. Onbase will search both the
- current directory and the directory \QWIK\ for the named files.
- Onbase creates the directory \QWIK\ if it does not exist, so it
- is not necessary for the user to worry about this. Filename1 is
- brought up as a data base by means of the ALT 1 key sequence,
- filename2 is activated by ALT 2, and filename3 by ALT 3 .
-
- In some cases the ALT 1,2,3 sequence may conflict with other
- programs, and it may be desirable to change the active hot keys
- to some other combination. Onbase allows this with the following
- command line:
-
- ON_BASE /H 6 8 J FILENAME1 FILENAME2 FILENAME3
-
- The /h or /H option makes the three active hot keys ALT 6, ALT 8,
- and ALT J. (Or ALT j, as the computer is not case sensitive for
- ALT key combination.) The legal ALT keys are 0 - 9 and A - Z,
- giving a total of 36 available keys.
-
- Onbase also allows databases to be password protected. There
- are two methods of causing this password protection to occur. The
- first way is to enclose the filenames to be protected in brackets
- the first time that a new database is created. Example::
-
- Onbase /h 5 a 9 filename1 [filename2 filename3]
-
- In the above example filename2 and filename3 would both ask for
- passwords provided that the above command line represented the
- first time that either of these files had been used. The second
- way to password protect a file will be explained later when the
- menu line options are described.
-
- When Onbase is resident in memory activating it by pressing
- one of the active hot keys will bring up the appropriate database
- in the search mode with the cursor pointing to the currently
- active key position. If searching for data is not the operation
- that you wish to perform simply press the Enter key without
- typing anything else. Onbase will then display the following line
- at the bottom of the screen:
-
-
- record: Enter,Modify,Delete,Search | change:Keys,Applications,Passwords
-
- This the main menu line for Onbase and represents the options
- which are available to a user. The first half of the line
- represents operations which may be performed on individual
- screens of data, which Onbase refers to as records. If you wished
- to enter new data into a database you would select the Enter
- option from the menu line by typing an 'E' or an 'e'. Onbase will
- then position the cursor on the first physical field on the
- screen and accept data. After you have finished entering data
- into each field on the screen press the ENTER key. When you have
- completed the last field on the screen Onbase will automatically
- save the information on your disk drive. In some cases, where a
- screen might have several potential empty fields, it would be
- annoying to enter several keystrokes to finish the screen. Onbase
- allows you avoid this by allowing you to press the PgDn key as a
- key meaning: Accept the rest of the screen as blanks. In effect
- PgDn is an accept screen key where Enter is an accept field key.
- Printed on the bottom line of the screen when in the Enter mode
- is the line:
-
- Press Enter key with no data in the first line to return to menu
-
- The Search option is identical to the mode in which Onbase
- functions when it is first activated. When the search mode is
- active the following line will be displayed at the bottom of the
- screen:
-
- What record do you wish to find?
-
- When data has been entered in the search key field, Onbase will
- attempt to find the asked for record. If it can't find a record
- which exactly matches the information asked for Onbase will
- display the next record in the database. Onbase will then display
- an option line at the bottom of the screen which reads as
- follows:
-
- fetch: next(PgDn),previous(PgUp),first(Home),last(End). New key(Enter)
-
- The keys in parentheses are the keys which would be pressed to
- cause Onbase to perform the function to the left of the
- parentheses. For example if the PgUp key was pressed Onbase would
- find the record which proceeded the current record in the key
- sorted order. This line allows the user to scan through the
- database. (For example: if you were looking for records in which
- the the key field was duplicated and other data was different,
- the PgDn and PgUp keys would be of great use.) The Home and End
- keys allow you to find the first and last records in the
- database. Pressing the Enter key will allow you to search by key
- for new data.
- The Modify and Delete options both work in similar fashion.
- Let us explore the Modify option first. When modify is selected
- the cursor is immediately placed at the location of the currently
- active key field. The following line is displayed on the last
- line on the screen:
-
-
- What record do you wish to find?
-
- When data has been entered in the search key field, Onbase will
- attempt to find the asked for record. If it can't find a record
- which exactly matches the information asked for Onbase will
- display the next record in the database. Onbase will then display
- an option line at the bottom of the screen which reads as
- follows:
-
- Is this the correct record? Y/N:
-
- Answering 'N' or 'n' will bring up the option line shown next:
-
- fetch: next(PgDn),previous(PgUp),first(Home),last(End). New key(Enter)
-
- Which performs in the same fashion as the same line in the Search
- mode. When the Enter key is pressed at this prompt, Onbase will
- again ask:
-
- Is this the correct record? Y/N:
-
- Answering this question with a 'Y' or 'y' will cause Onbase to
- number the fields on the screen and ask:
-
- Which number field to be active?
-
- Answering this question with a number will allow you to modify
- that numbered field. When you wish to Exit the modify mode Onbase
- will then modify that data on the disk.
-
- The Delete mode works in the same fashion except that answering
- the question:
-
- Is this the correct record? Y/N:
-
- with a yes will cause the record shown to be deleted from the
- current database. In both the Delete and Modify mode pressing
- return in answer to this question will cause Onbase to return to
- the main menu line.
-
- The change: options part of the main menu allow you to
- change the active key for searching, the currently active
- database and the Password. If no Password is active then one will
- be created for the current file. Once a password is installed on
- a program it may not be removed, only changed.
- One valuable addition to the Onbase package is the Basepath
- program. Basepath allows data to be transferred between an Onbase
- database and other programs. Basepath produces standard comma
- delimited sequential files when in the export mode, and imports
- standard comma delimited files. These files are compatible with
- the Mail merge section of Wordstar etc. Most Database programs
- are capable of working with comma delimited sequential files.
- This allows one to enter, and have on-line, data by using Onbase;
- and then use the report writing capability of a program such as
-
- Borland's Reflex to analyze the data that had been entered.
- Example of a standard comma delimited file for the Phone database
- illustrated above:
-
-
- Aaron A. Aardvark,,,555-5555,123 Phone Knee Rd.,,Houston,Tx,77000,"This
- field has both an internal comma, and""quotes""",10/3/87,14:23:02,000000363
-
- While the above looks confusing visually to a human, studying it
- will reveal it's basic simplicity to a machine. The first line of
- the sequential file would be displayed in our example Onbase
- screen as follows:
-
-
- P H O N E D A T A B A S E
-
- Name:Aaron A. Aardvark
- Title:
- Phone number:555-5555
- Address 1:123 Phone Knee Rd.
- Address 2:
- City:Houston
- State:Tx
- Zip:77000
- Notes:This field has both an internal comma, and "quotes"
- Date entered:10/3/87 Time entered:14:23:02
- Document serial number:000000363
-
-
- We note that fields that are skipped in the display screen
- are shown as ,, in the comma delimited file. Also note the
- differences between the note field in the two. Any field which
- contains a comma in it is surrounded by quotes; and any quotation
- marks appearing in a field are expanded to double quotes.
- Basepath automatically handles these cases for you.
- To cause Basepath to export data from an Onbase database to
- a comma delimited file you would use the following command line.
-
- BASEPATH /Knn FILENAME {\PATH\COMMANAME.EXT}
-
- The /Knn, \PATH\, and .EXT sections of the line are optional.
- Examples:
-
- BASEPATH /k01 phone {phoney}
-
- BASEPATH PHONE {\TEST\PHONEY.SEQ}
-
- basepath /k00 phone {\test\phoney}
-
- The first example would produce a file sorted by key number 1,
- (the field identified by the '@@@@@' character) from the database
- \qwik\phone.dta ,would name it phoney.seq, and would place it in
- the current directory. The last two examples do the same thing as
- each other: Both sort the file by key 0 ( the '!!!!!' key) and
- place the file in the directory \test\.
-
- To cause Basepath to enter data into an Onbase database one
- would reverse the the order of the filenames on the command line
- Example:
-
- BASEPATH {PHONEY} PHONE
-
-
- The /Knn option is meaningless going in this direction as Onbase
- creates all keys for the data when it is entered. The /Knn option
- is not allowed on the command line when importing data.
-
- Onbase is a multi-user program designed for use on a LAN machine,
- as well as on a single user machine. Onbase uses Softcraft's well
- known file access method Btrieve. In order for Onbase to run it
- is necessary to install Btrieve in the computer's memory. Simply
- adding the line:
-
- Btrieve /p:2048
-
- to the autoexec.bat file in the root directory is the easiest way
- to insure that this condition is met. Btrieve/N , the Novell
- network version of Btrieve is distributed with Onbase.
- If you have an expanded memory board in your system which
- conforms to the Lotus - Intel - Microsoft EMS standard, Btrieve
- will use this board for its buffers and caches. This will speed
- up file access, but it may cause conflicts with other programs
- wishing to use the EMS board. The solution for this problem is to
- change the Btrieve command line to read as follows:
-
- Btrieve /E/P:2048
-
- Since Onbase is designed to work in a multi-user
- environment, as well as the more familiar single user field,
- certain aspects of the program become important to users in a LAN
- situation. Two areas of concern to people using a database in a
- multi-user environment are 1). Data integrity, 2). Data security.
- Onbase allows handling of both of these concerns. Record
- modification is handled with transparent locks: users accessing
- data being modified at a different work station will not be
- locked out from reading the old unmodified data from their
- screen. Only in the case that a second user attempts to modify
- data already being modified by someone else will the second user
- be notified of the data locked situation. Data security is aided
- by the ability of Onbase to require a password from a user before
- allowing access to the data in the file.
- Pressing ESC at any time will cause the work that you were
- doing before Onbase was invoked to be restored.
-
- Gotchas, hints and tips.
-
- No program is perfect, each has its own set of quirks which
- are caused by the specific technology used to implement the
- program. Onbase allows you to pop up a productivity program like
- Sidekick while Onbase is active. (The opposite is not true; if
- Sidekick is activated first Onbase cannot be popped up.) Onbase
-
- uses a much more sophisticated method of handling DOS re-entrancy
- problems than the typical Pop up. A side effect of this
- technology is that immediately after exiting from Onbase it may
- happen the hot keys which activate Onbase become inactive until
- one or more characters; possibly a string of characters up to and
- including a carriage return, are entered.
- Onbase requires that all 3 filenames available for databases
- be provided to it. If the names are not supplied then Onbase will
- ask for them.
- It is not permissable to skip a key when laying out an
- Onbase screen. If the '$' key was the last one used then the next
- key used is required to be '%'.
- Since Onbase uses the last line on the screen for displaying
- prompts, No Onbase application may use more 24 lines in its
- source screen.
- Onbase will pop up only if the currently active screen is in
- one of the 80 column text modes; color or black and white.
- Many people find a program, which beeps at the operator in
- the event of an errant key stroke, annoying. Entering the Onbase
- command line with the /b or /B option will cause Onbase to
- suppress this beeping. Example:
-
- ONBASE /B/H 7 Y M PHONE MSG [PRICE]
-
- The driver for the Proteon network board conflicts with the
- Btrieve use of Interrupt 7bh. Novell's fix for this conflict is
- contained in Novell Technical Bulletin number 141. If your Novell
- network locks up a work station when Btrieve is loaded and you
- are using Proteon boards, the fix in this bulletin will remedy
- the problem. Why Novell does not implement this fix in all of the
- drivers which are distributed for Proteon network boards is an
- interesting question. Directing this question to the nearest
- Novell representative is recommended. Attempting to emphasize
- this question by striking said representative about the head and
- shoulders with a blunt object is probably counter productive, and
- in most locations, is prohibited by law under the "cruelty to
- dumb animals" statutes.
- Bob Canup
- 10/9/87
- Revisions:
- 1.40 Production release 10/12/87
- 1.41 Intensity revision 10/14/87
- 1.42 Screen trash cleanup after app change 10/14/87
- 1.43 Allows date,time,doc numbers before keys 10/22/87
-