1. The logical operator “OR” utilized in a “WHERE” clause of a SQL instruction (SELECT, UPDATE or DELETE) didn’t return the correct derived table in certain circumstances.
2. The editing in a “multiscreen” FRAME (with several pages) produced an error, assigning unreadable values to variables and later cancelling the program.
3. In the moment of printing a manual generated with tdocu of MultiBase the page skip was not performed correctly. The problem was due to the command tprocess who is in charge of interpreting the commands generated by the user’s oder programmer’s documentation of MultiBase.
4. The ROLLFORWARD DATABASE statement didn’t work properly in a transaction which used the clause “WHERE CURRENT OF…” while reading a CURSOR declared as “FOR UPDATE”.
5. The WINDOW statement with a SELECT which didn’t return a single row produced an error when found in a loop if any of the columns of the “select_list” was of type DECIMAL of MONEY.
6. A SELECT statement not declared as a CURSOR which included a reception clause (“INTO” or “BY NAME”) resulted in a huge consum of memory of the CTL module if more than one row was returned (“ambiguous=true”) provoking thus an error if the statement was executed several times.
7. When generating a current list in a FORM and intending to perform a new query, which was aborted by the user, the row in the before created current list was always the last one, giving the message “no more rows” when intending to choose the next one. Nevertheless, if the option to update or delete was chosen, the row affected by any of these operations was always the first and not the last.
8. The massive creation of temporay tables (CREATE TEMP TABLE) produced the message “Impossible to open the database table”.
9. The function “evalfun(function, parameters)” didn’t work correctly with certain internal functions of CTL.
10. If the value assigned to a variable of TIME type was above 24 hours, the value returned was “0”. Currently, the expression “let hrs = 24:01:10” will return the value “NULL”.
11. The “DISTINCT” clause of the “select_list” of a SELECT statement with more than 8 fields returned different results depending if an “INTO TEMP” was included or not.
12. The command THELPCOMP didn’t take care on the variable MSGDIR, even though the programming environment was simulating this possibility. In the previous “release” this variable was not included in the command line of thelpcomp.
13. [Windows]. The selection of a second printer with the Windows specific function “setprtsetup(“name”, expression)” didn’t update the paper size in the moment of using the Print Manager (“DBPRINT=PRINTMAN”).
14. [Windows]. In a FORM with horizontal scroll (left-right) an error was produced when the key combination [CTRL]+[Q] was pressed. This combination is defined in MultiBase by default for this action.
15. [UNIX]. A new environment variable, WINFN, was introduced to inform the compiler to ignore or not the Windows specific functions in order not to produce typical errors that the function doesn’t exist in a module of the program during runtime. The possible values are “Y” and “N”. The value “Y” can be simulated with the parameter “-wfn” of the command ctlcomp, which means that the syntax in those cases is of the following form:
ctlcomp -wfn module
16. For databases created with collating sequence the derived table from a “WHERE” condition in a SELECT, UPDATE or DELETE on a DECIMAL type column was correct or incorrect whether it was indexed or not.
17. [UNIX]. In UNIX versions who are compatible to the standard 4.0, supplementary groups can be defined. This version of MultiBase contemplates theses groups regarding the permissions relative to UNIX concerning programs and databases.