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