DOCUMENT #696
=======================================================================
March/April, 1993 PROBLEMS & WORKAROUNDS
=======================================================================
PRODUCT: R:BASE VERSION : 4.0 or Higher
=======================================================================
AREA : General CATEGORY: Other
=======================================================================
Here are workarounds for verified problems. The version number listed
is the version in which the problem was found. It may also occur in other
versions. A Microrim reference number is included at the end of each
description. Those marked Fixed have been corrected in a recent release
of Upgrade Express which you can purchase by calling 800-628-6990.
R:BASE 4.0A
===========
Multi-Column Sorts
------------------
A multi-column ORDER BY clause where the first column is a TEXT
datatype may not sort the second level correctly. If the TEXT column
has a defined length that is not divisible by 4, it does not sort
correctly. For example, ordering by a TEXT 12 and a DATE will sort
correctly; ordering by a TEXT 10 and DATE will not sort the DATE
correctly. The TEXT 10 column is not evenly divisible by 4.
#3844, Fixed 4.0A build 54E
Workaround: Download the file RB40AUPD.EXE from the Microrim Bulletin
Board, 206-649-9836, to patch your existing R:BASE 4.0A build 53X files.
If you do not have access to a modem, contact Microrim Technical Support
for the patch.
Delete Rules
------------
A delete rule is not checked if you delete all the rows from a table,
i.e. DEL ROW FROM tblname with no where clause.
#3837
Workaround: Put a WHERE clause on the command that will find every row,
for example, DEL ROW FROM tblname WHERE col1 IS NULL OR col1 IS NOT NULL.
Note that this command will be considerably slower than DEL ROW FROM
tblname.
Multi-user Refresh
------------------
When editing data with a form and using the Add row option to add a
new row if REFRESH is set greater than 0 (the default), you'll get the
error "Disk problems. Check disk and files" when the refresh time
expires, R:BASE tries to compare the row you have on the screen with
the corresponding row in the table to refresh any changed data. There
is no row in the table, thus generating the error "Disk problems. Check
disk and files".
#3834
Workaround: The REFRESH is working correctly. If you routinely add new
rows when editing data, SET REFRESH 0, before using the form.
Form Expressions
----------------
Some expressions in multi-table forms may process differently in 4.0
than they did in previous versions. Expressions on a second table that
rely on expressions evaluated for the first table are not processed
upon entering the form. For example, table 1 has the expression
VEMPID=102, table 2 has the expression VBONUSPCT=BONUSPCT IN SALESBONUS
WHERE EMPID=.VEMPID. In previous versions, the lookup expression on
table 2 evaluated and displayed as soon as you entered the form. In 4.0,
it doesn't evaluate and display until you move to table 2. A slightly
different situation has the same lookup expression on table 2, but
table1 has the expression VEMPID=EMPID (the value of vempid changes as
you move from row to row in table 1). The lookup is not evaluated in
table 2 for the first row, but evaluates correctly for every row after
that.
#3767
Workaround: In situation 1, where the expression is a constant, set the
variable outside of the form, SET VAR vempid=102. Expressions in both
tables evaluate correctly. In situation 2, initialize the variable to
the first data value outside the form, SET VAR vempid = empid IN
tblname WHERE transdate=.vdate.
Using the Mouse in QBE
----------------------
When using QBE and selecting the far right hand column (the one that
isn't fully displayed and the column name appears blank) with the mouse,
R:BASE may unexpectedly exit to the operating system prompt.
#3817
Workaround: Use the TAB key instead of the mouse to move to that column.
Column Limit with ALTER TABLE
-----------------------------
The ALTER TABLE command allows you to exceed the 400 column per table
limit. No error messages are given when the ALTER TABLE command is
executed and it increases the number of columns in a table to more than
400. You may get unexpected results when using a table with more than
400 columns. Both RBCHECK and RSCOPE report errors in the database
structure when a table exceeds 400 columns.
#3842
Workaround: Make sure you do not exceed the limit of 400 columns per
table.
Losing Create/Modify Menu Option
--------------------------------
If you delete a table through the Info Create/modify menu, and then
create a new table with the same name but different columns, instead
of creating that table, R:BASE may create a blank table. If you execute
the LIST command from the R> prompt, you will see a table listed where
the name is blank and there are 0 rows and 0 columns. With this blank
table in the database, R:BASE is unable to correctly display the INFO
menu with its list of table names, the Create/modify option is missing.
#3848
Workaround: From the R> prompt, do DROP TABLE ' '. This will remove the
blank table from your database and the menus will display correctly.
Lookups in Reports
------------------
A lookup expression in a report that looks up to a view with a GROUP BY
in the view definition, will only work once in the report. As soon as
the lookup is reevaluated with a different value, it no longer finds
data. If the view does not contain a GROUP BY clause then the data is
looked up correctly for every value.
#3869
Workaround: Project a table from the view and base the lookup on the
table.
Multi-User Locking
------------------
In a multi-user environment, when using a form to enter data, one user
can lock everyone else out of the system. This can happen if a user
gets a rule violation message when choosing to add data, and the user
leaves the redbar error message on the screen; they don't press a key
to continue. While the error message remains on the screen, R:BASE has
a table lock on the table. Other users will get a "Waiting in lock
queue" message when trying to add data.
#3863
Workaround: Instruct users to not leave error messages on the screen
but to press a key immediately in response to messages when adding data
using a form.
QBE and Memory
--------------
It is possible to run out of memory and get the message "Insufficient
memory to continue this function" when moving back and forth between
Browse/edit and QBE repeatedly during one R:BASE session. QBE is not
correctly clearing some items from memory when returning to Browse/edit.
#3838
Workaround: Exit R:BASE to clear the memory.
Delete Rows in Browse/Edit
--------------------------
When choosing Delete all rows from the Edit menu in Browse/edit, the
screen does not refresh and remove the data when there is a rule on a
table and less than 20 rows displayed on the screen. The data has been
deleted, but the screen display was not been updated correctly.
#3889
Workaround: Press the Esc key to exit Browse/edit.