818.txt
======================================================================
Problem Solving With R:BASE
======================================================================
R:BASE is a useful tool for personal and business applications,
offering many different solutions for your data processing needs.
However, running a powerful program like R:BASE may sometimes seem to
create as many problems as it solves. This article describes a basic
strategy to help you identify some of the possible problems using
R:BASE and developing applications. This strategy can also be
applied to other, non-R:BASE related problems. You'll see where to
look for problems, when to check your resources, and when to seek
advice.
Identifying the problem
Identifying the problem is the first, but not necessarily the easiest,
step in solving problems. Often a software problem starts as "The
program doesn't work," or "it worked fine the last time I did it."
Obviously, this sentiment isn't identifying the real problem. The
challenge in finding a solution, is determining the real problem. Once
the problem is identified, the solution follows.
Today's personal computer is an environment that can spawn untold
problems_a complex piece of hardware with processors, disk drives,
keyboards, monitors and other devices connected by cables and more
cables. Accompanying the hardware is a complex operating system
controlling the different devices, and above all is the application
software, for example, R:BASE with its relational tables, forms,
reports and programs. Many times a "computer problem" is not a problem
at all, but simply a person's inability to remember all the processes
and possibilities. Computers are the most obedient creatures around.
They do exactly what they're told, nothing more and nothing less.
To get at the core of a problem, you need to eliminate some of the
possible causes; fortunately, the process of elimination moves
quickly. The comparison technique of problem solving works well and
quickly with computer related problems to eliminate causes until only
the actual problem remains.
Making a comparison
Compare the situation that has the problem to a similar situation or
environment without the problem, and you should be able to find a
difference. The difference leads to the cause of the problem, or at
least to an area to be investigated. You must, however, make the
comparison before you can see the differences that form the clues to
the problem and thus the solution.
Compare the environment; the difference may be here. For example:
"It works on Joe's PC, but not on mine."
"I just upgraded to DOS 6.22."
"I bought a new 486."
"I upgraded to a newer version of R:BASE."
"I changed memory managers."
"I just installed Win95."
Compare the processes; the difference might be in the action or
activity. For example:
"My program is running slower than it used to."
"The totals in my report are much larger than they used to be."
"My program used to return to the menu, now it leaves meat an R>
prompt."
"It only happens the second time I do it."
"I modified my program, just a little bit."
Make a time comparison; the difference may be connected to the time of
day. For example:
"The network always slows down at lunch time."
"At 9:00 every morning I get kicked out of R:BASE."
"It only happens when Mary is printing the accounting report."
Compare the problem with a similar situation. For example:
"It prints to the screen, but not to the printer."
"It works from the R> prompt, but not in my application."
"It works in the sample database, but not in my database."
"It works when my database is local, not when it is on the network."
Sometimes it is hard to identify a difference. In fact there can be
many situations with no apparent difference or change at all. This may
be the time to contact someone who can offer a solution or suggest
other areas to check.
Before you call
Before you call someone, take a look at any differences you have
identified. The difference might indicate who to confer with on
possible causes. If the problem occurred when you changed hardware,
then call your hardware technician. If the problem occurred when you
switched operating systems, then contact the manufacturer of the
operating system. You should contact RBTI Technical Support when
you have made a change to your R:BASE program. An experienced support
technician has a good idea where to look for solutions based on the
description of the problem. Our technicians help you to identify
differences and make comparisons for arriving at a solution.
The list of items to compare or check is long and by no means
complete. You do not have to compare every item when problem solving.
Compare the areas involving your problem to those areas where you may
recently have made some type of change. Often finding one difference
or change will lead to the next comparison to make and help you solve
the problem.
When you have identified those things that have changed, you should
be very close to the cause of the problem. Now it is time to check
your resources for the information that might offer a solution, They
include:
Your documentation and on-line help
Technical journals; From The Edge
R:BASE User's Groups
Inside R:BASE
When these resources have been exhausted, and you have not been able
to find a solution, it is time to contact technical support. Because
you have taken the time to research the problem, a support technician
has an easier time discussing the solution, or offering alternatives
and suggestions for your problem. When you make the proper comparison,
you can find the difference that leads to a solution.
What to compare
Here is a list of some areas and specifics to compare when trying to
isolate a problem:
Hardware and Environment
Computer
Brand of the computer
Type of CPU (386, 486, Pentium)
Amount of memory (conventional, extended, expanded)
Stand-alone or on a network
Size of the hard drive(s)
Free (available) disk space
Sound Card
Video Driver (manufacturer, resolution, large/small fonts)
CD-ROM Drive (internal, external)
Modem (internal, external, FAX)
Screen saver
Operating System
DOS, OS/2, Windows 3.1, Windows NT, Win95, Warp, or other
Version
Win32S
ODBC
Printer
Type of printer (dot matrix, laser ...)
Brand of printer
Serial or parallel connection on the printer
Print spooler
Printer driver
Network System
Brand
Version
Search mappings or path
Group/permission settings
File attributes
Dedicated server
CONFIG.SYS
Files and Buffers
Memory manager (brand, extended, expanded)
Disk cache (extended or expanded)
Other device drivers
Disk doubler
RAM doubler
AUTOEXEC.BAT
Path
Network commands
TSR's (Terminate and Stay Resident programs)
Menuing system
R:BASE
Version and build number
Database
Name
Size of files
Location (local or network)
Passwords
AUTOCHK
Tables
Name
Number of Rows
Columns
Name
Autonumbered
Indexed (single column, multi-column)
Computed
Constraints
Rules
Views
Select command
Linking columns
Where clause
Correlation names
Outer Join
Union
Place holders
Command Files
Messages on
Error Messages on
Command syntax
Debugger (Trace) used
WHILEOPT on/off
Comments
Application Express or custom code
CodeLock
Variables
Name
Data type
Values
Expressions
Functions
Forms
Add data or edit data
Where clause
Order by clause
Form settings
Number of tables/Views
Table settings
Region
Tiered
Field locations
Field settings
Default values
Pop ups
Entry edit procedures (see command files)
Field level
Row/table level
Form-in-a-form
Playback files
Lookups ( same-table/other-table)
Variables
Column/variable definition
Dependent
Values
Expressions
Functions
Reports
Driving Table/View
Print command
Where clause
Order by clause
Variables
Lookups
Expressions
Functions
Data type
Order
Value
Evaluation section
Breakpoints
Columns
Reset variables
Form feeds
Page Settings
Lines per page
Form feeds
Page footer line number
Layout
Report/Page/Break headers
Detail lines
Break/Page/Report footers
Printer code locations
Lines/boxes
Column/Variable locations