|  | May 200 2
| More Information About The Magic Gateway for Oracle Versions 8.20 - 8.2 2 |
| Dear Developer, We are happy to introduce the Magic Gateway for Oracle Version 8.20-8.22. This version is a bug-fix and release for Magic Versions 8.20 and above. We hope you will find working with the product enjoyable and fruitful. |
| Note for Oracle 8i: When installing the Oracle 8i client on a machine with no previous Oracle clients installed, the following change should be made in order to work correctly with the Magic gateway for Oracle 8i: In the registry, under HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE, the string values ORACLE_HOME and ORACLE_HOME_NAME should be added with the same values as those defined under HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0. This gateway support working with Oracle 9i. |
| Changes in the current release: 8-22 New features in this release Fields of the type LONG are sent to the database without trailing blanks. Bug fixes 1. QCR 994285 - If the connection to Oracle ends while running a batch task, Magic hangs. 2. QCR 762082 - Oracle returns "ORA-03106 fatal two task communication protocol". This happen when executing a link outer join program having a constant in one of the locate expressions for the link and a locate on main table record. 3. QCR 992834 - Oracle returns "ORA-00932 inconsistent datatype". This happen when running a batch task with a text output form in Task Prefix. The task have an alpha field as the range (for the From and the To values). 8-20 Bug fixes 1. QCR 755888 - The Oracle error ORA-00942 appears in some scenarios. 2. QCR 751809 - The SQL Where clause (CTRL+H) is disregarded when the Locate action (CTRL+L) is invoked. 3. QCR 977203 - When the User or Password of the database is set with logical names, Magic tries to re-connect when the logical names are changed. 8-19 New features in this release CLOB Support The Oracle CLOB datatype can store up to four gigabytes of character data in the database. Magic maps this datatype to Alpha. In the SQL type property it should be specified as CLOB. BLOB Support The Oracle BLOB datatype stores unstructured binary data in the database. It can store up to four gigabytes of binary data. Magic maps the data type to Blob. In the SQL type property it should be specified as BLOB. Bug fixes QCR 451075 - When the CTL is saved as an Oracle table with one owner (ex. system) and the data tables are saved on the same server but with a different user (ex. Scott), rollback doesn't work. QCR 783583 - Retrieving data from a view defined with an aggregate function returns an error message. QCR 426329 - When a direct SQL batch program was running a package with output parameters, if Oracle returned an error as well, the error was not displayed. QCR 7762 - The error message ‘ORA-01036: illegal variable name/number’ was returned from Oracle, when using Oracle 8.1.5/6 client and Oracle 8.1.6/7 server. The error is returned when the gateway log is set to customer or support level. 8-18 1. QCR 765673 – Locate and incremental locate operations do not work properly. The characters that the user is searching for are replaced with '%%%%%%%%%%'. This causes poor performance and a failure in the locate operation. 2. QCR 990264 – When the application file and the data are stored in Oracle, there is a memory leak in batch tasks. 3. QCR 756799 – In the Magic SQL Where clause in a resident task, a variable with the @ sign (without quotes) is not recalculated. 4. QCR 984870 – In the Magic SQL Where clause, when using a variable that evaluates to blank at runtime, the error ‘ORA-00936: missing expression’ appears. 5. QCR 675970 – When using the SQL Range with a virtual field, if the field was not the first field in the table and the first field in the table had a different attribute than this field, the data view was empty, even though it was supposed to return all the records. 8-17 1. QCR 4889 – An error message appears in the log file when a direct SQL program executes a stored procedure with an input parameter that contains '(' or ')'. This does not happen if there are no output parameters. 8-16 1. QCR 747385 – A stored procedure with output parameters did not return any results. 2. QCR 773035 – When you connected to two DB entries on different databases with the same user or password, only the first connection was used and no error message appeared. This did not happen when the alias was in the connect string. If the user or passwords were different, an error message appeared. 3. MGTIME support – When you entered ‘MGTIME’ in the SQL Type property of the Column for a Magic time field, Magic mapped this field to a DATE data type column in the database. 4. Reconnect - When a disconnected session is identified, Magic automatically reconnects. 8-15 1. QCR 750748 - Magic crashed when executing a stored procedure with output parameters in a Direct SQL batch task. 2. QCR 605952 - Magic crashed when executing a direct SQL task that had an output parameter. 8-14 As of this version, there is only one gateway DLL file for connecting to both Oracle 8 and Oracle 8i servers from all the Windows platforms. There is also only one gateway DLL file for connecting to Oracle 7.3 servers from all the Windows platforms. The gateway DLL files are: Oracle 8.x: MGora8.dll Oracle 7.3: MGora73.dll QCR 755555 - When performing Page Down on a data view that contained a range on the index, Magic started a new cursor even when the CNDRANGE value was false. QCR 775008 - When running a Direct SQL task with an Order By clause, the cursors were not closed if the result database was Oracle. QCR 603091 - Magic crashed on performing a Get Definition operation on a table that had a Date attribute as a first field and a Database Default specified for that column. QCR 413963 – The Get Definition operation for at table with an Index segment in descending order was performed incorrectly when the server was 8.1.5 and the Compatibility parameter was 8.0.5. QCR 383735 - On performing a Get Definition operation for a table with a Blob field that had more than 5 records, Magic displayed the "Definition mismatch" error message. The "CALL OCIErrorGet: ORA-03130: the buffer for the next piece to be fetched is required" error message only appeared in the customer level log file. QCR 810224 – When you opened a table that had the Drop During Re-index parameter set to Yes in the Re-index mode, creating duplicate rows in the table displayed the "Duplicate rows" error message, and the index was not created. QCR 904395 - After receiving a DB error, if the Get Definition was performed for an existing table, Magic displayed the "Definition mismatch" error. QCR 924692 - Magic crashed when running a large SQL statement in a Direct SQL task. 8.13 QCR 774541 – Performing a Locate operation on long alpha fields mapped to a VARCHAR2 data type of more than 900 caused Magic to crach. This did not happen in version 8i. QCR 442604 - When selecting a numeric value larger than 32767 in a range, the Magic gateway log showed an incorrect value in the Where clause of the SQL Select statement even though the correct result was displayed. The ORDER BY was removed on batch tasks. QCR 770107 - All selected fields were added to the Get Key cursor when using Link Join. 8.12 QCR 777396 - Magic stopped responoding when running a program that called a direct SQL batch query subtask that returned a DB error. QCR 772915 - Opening a table in Re-index mode did not drop the index. 8.11 QCR 74968 4 and Q CR 756670 - Magic crashed when performing a Locate operation on an alpha field that was larger than 152 characters. Using the Automatic Program Generator (APG) in Direct SQL created VARCHAR2 fields instead of VARCHAR fields. 8.10 QCR 766464 - Conversion was not activated when changing the picture of a column in Magic. QCR 772904 - The gateway's checker limited the row length of views to 32000. 8.9 QCR 777157 – After importing from Magic 7, a direct SQL program to execute a stored procedure with a CHAR output parameter type did not display a field. QCR 972338 – When you used the Storage Unsigned Integer in Client/Server mode and inserted values into a field, the values in the log file appeared as zero (0) instead of the actual values that were entered in the field. 8.8 QCR 764129 – Numeric values were also sorted when using NLSSORT. There were random crashes in Direct SQL. 8.7 QCR 2266 – Magic crashed when using NLSSORT=Y in the database properties while running a program that opened many tables. QCR 771777 – An incorrect default value was shown in the Table properties when getting the definition of a table with default values. QCR 754856 – There was a connection failure when trying to connect using an Oracle 8 client with an Oracle 7.3 gateway on the first try, but the second try succeeded. 8.6 QCR 428387 - When using two different connections to Oracle (two database entries in the Database repository), the Commit was sent to the first connection instead of to the current connection. QCR 938132 - Magic crashed and displayed the "Internal transaction error" message when connecting to two different Oracle databases and executing a batch task that performed Rollback at the task level. NLSSORT support NLSSORT lets applications perform string matching that follows alphabetic conventions. Normally, character strings in a WHERE clause are compared using the character's binary values. Using NLSSORT in the WHERE clause lets users use a foreign-language Oracle client while sorting by the alphabetic order in their own language. To use this feature, enter NLSSORT=Y in the Database Properties\SQL\Database Information field in the Database repository: This setting adds the NLSSORT function to all the WHERE clauses that Magic sends to the DB as follows: NLSSORT (value) comparison_operator NLSSORT(column) Note: Using this flag may cause performance problems because Oracle sorts the index according to the new order. In addition, this flag causes case insensitivity of the data stored in the database. |
| Thank you, The Magic Version 8 Team |