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.