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.