SolutionsIQ CONNX 8 Release Notes 533575523 -1- 03/07/16 SolutionsIQ Table of Contents Table of Contents ........................................................................................................................................... 2 CONNX 8 Release Notes ............................................................................................................................... 3 Components .................................................................................................................................................... 3 CONNX Client ........................................................................................................................................... 3 CONNX Data Dictionary ........................................................................................................................... 3 CONNX Data Server .................................................................................................................................. 3 CONNX Client PC ..................................................................................................................................... 3 CONNX Data Server .................................................................................................................................. 3 New Server Requirements For Oracle and Oracle Rdb .................................................................................. 4 PC REQUIREMENTS .................................................................................................................................. 4 Compatible Front Ends ................................................................................................................................... 5 CONNX 8.0 Additional Core Features ........................................................................................................... 6 Supported ODBC SQL Grammar ................................................................................................................... 8 Primary SQL Commands............................................................................................................................ 8 SQL Time & Date Literals ........................................................................................................................11 SQL String Functions ................................................................................................................................12 SQL Date Functions ..................................................................................................................................13 SQL Conversion Functions .......................................................................................................................14 SQL Aggregate functions ..........................................................................................................................15 SQL Join Syntax ........................................................................................................................................16 CONNX SQL extended functions .............................................................................................................17 Resolved Issues .............................................................................................................................................18 533575523 -2- 03/07/16 SolutionsIQ CONNX 8 Release Notes CONNX for 8 has been developed as a response to the overwhelming demand we have had for expanding the CONNX at the Core functionality to Oracle Databases and in response to Customer Requests for Change. By providing access to Oracle data through CONNX, customers will be able to access their Oracle Data and their RMS, RDB, DBMS data through a SINGLE driver – and/or to quickly transfer data from RMS, RDB, DBMS, etc. to Oracle or vice versa. Here are just some of the implementations in which CONNX 8 can be utilized. Data Migration Y2k Compliance Application/ Data Integration Application Development Ad Hoc Reporting Data Warehousing CONNX for Oracle will initially be 32 bit only. Components CONNX Client The CONNX Client is based on an ODBC driver, which is a dynamic link library that applications call to access data located in remote systems. The CONNX ODBC driver processes the ODBC function calls, submits requests to the appropriate data source, and then returns the results. CONNX Data Dictionary The CONNX Data Dictionary (CDD) is a repository of information about the database tables and fields accessed through CONNX including structure and security. It contains the metadata about the source data and provides a GUI screen for easy and intuitive metadata maintenance. CONNX Data Server The CONNX servers for Oracle DBMS, Oracle Rdb, Digital RMS Files, DataFlex, and Oracle are fullfeatured data servers that translate SQL requests into the native database requests. The CONNX ODBC Driver makes the server transparent to the end user. In the case of DataFlex, and Oracle the server functions are resident on the client PC. CONNX Client PC The functions for the client PC in the CONNX distributed architecture includes the following: Data Conversion Sorting Meta-data Retrieval (CONNX CDD) Grouping First Pass SQL Optimization Extended SQL Functions Partial Joins CONNX Security CONNX Data Server The functions for the data server in the CONNX distributed architecture include the following*: Indexed Retrieval Data Compression (on Request) Non-Index Retrieval Remote Procedure Calls (RPCs) Partial Joins Database Security Client *In the case of DataFlex, and Oracle the server functions are resident on the client PC. 533575523 -3- 03/07/16 SolutionsIQ New Server Requirements For Oracle and Oracle Rdb Database Hardware Network Operating System Memory/ HD requirements Oracle RDBMS Compaq/DEC VAXServer (version 7.3 Compaq/DEC AlphaServer and above) Personal Computer (Intel) Sun Workstation IBM RS/6000 (Any Oracle Supported Platform) SQLNet 2.x And TCP/IP Or IPX/SPX OpenVMS/VAX OpenVMS/Alpha VMS 5.3- VMS 7.1 [APX] Microsoft Windows NT UNIX (AIX) 12mb VAX 32 mb Alpha Working Memory. 20k Blocks HD avail Oracle Rdb Compaq/DEC VAXServer (version 4.2) Compaq/DEC AlphaServer (version 6.0 and above) UCX 3.0 or OpenVMS/VAX above OpenVMS/Alpha [APX] Compatible VMS 5.3- VMS 7.1 TCP/IP Software or DECnet Phase IV or above 12mb VAX 32 mb Alpha Working Memory. 20k Blocks HD avail PC REQUIREMENTS Minimum Recommended Processor Memory: Available space on Hard drive: OS: Software (3 Tier): 486 8MB memory 25Mb Windows 9X Any Browser which supports tables and forms Network Connectivity TCP/IP Network Connection (Winsock 1.1 compliant) OR DECNET Pathworks 4.x or above And SQL Net 2.x Network Protocol (for Oracle) Pentium 90+ 32 MB 50 MB Windows 9X or NT 4.0 with SP 3 Internet Explorer 3.02 or above Or Netscape Navigator 3.0 or above Microsoft TCP/IP OR DECNET Pathworks 7.0 + And SQL Net 2.x Network Protocol (for Oracle) A CD ROM Drive A CONNX Login Access or Permission on the appropriate databases 533575523 -4- 03/07/16 SolutionsIQ Compatible Front Ends OLE ODBC Application 533575523 Microsoft Visual Basic Microsoft Visual C++, Microsoft Visual Studio PowerBuilder Microsoft Access Microsoft Excel (MSQuery) and Excel Cognos Impromptu Crystal Reports Borland C++ Microsoft Visual Basic for Applications (VBA) Paradox for Windows Dharma ODBC Integrator Visual FoxPro for Windows JetForms Sagent Any ODBC or OLE-DB compliant application -5- 03/07/16 SolutionsIQ CONNX 8.0 Additional Core Features Feature Definition Oracle Support CONNX supports Oracle RDBMS 7.3 and above on all platforms. According to our benchmarks Against a table containing over 270000 records CONNX performs as follows: Using Pure ODBC CONNX is 20 to 800% faster than other drivers. Using ADO CONNX is 215% faster than other drivers. Using DAO CONNX is 30% faster than other drivers. A UNION is a SQL command that allows the results of two or more SQL Statements to be combined into one statement. In database management systems (DBMSs), an operation that is stored with the database server. Typically, stored procedures are written in SQL. They're especially important for client-server database systems because storing the procedure on the server side means that it is available to all clients. And when the procedure is modified, all clients automatically get the new version. CONNX supports SQL Passthrough. This involves analysis of a SQL statement and rather than processing the statement within the CONNX core. CONNX will determine if it is allowed under the target database and pass it through directly. This can help improve performance. CONNX supports 144 bit precision on all math function. Advantage – This can be very imported for the financial services industry. Since the release of CONNX for RDB, several customers who would like to use this product have not been able to do so because they have old versions of RDB. Currently, when a user makes a new connection to a CONNX for RMS, RDB or DBMS, we need to start a new process on the VMS system. It can take anywhere from 1 – 8 seconds to start this new process depending on the speed of their system, and the current load on the system. Hot Connections reduces the time it takes to make a new connection. Many RDB customers have text data stored in List Cursors. List cursors are a feature in RDB that allow the storage of up to 2 gigabytes of data in a single field. Most customers who have a need for list cursors store comments or descriptions in these fields, where the length of the field is unknown, and too big or other RDB data types. CONNX now supports list cursors CONNX now supports the following additional SQL Functions: String Functions ASCII, BIT_LENGTH, CHR, CHAR_LENGTH, CHARACTER_LENGTH, CONCAT, DIFFERENCE, INSERT, LCASE, LEFT, LENGTH, LOCATE, LTRIM, OCTET_LENGTH, POSITION, REPEAT, REPLACE, RIGHT, RTRIM, SOUNDEX, SPACE, SUBSTRING, UCASE, HEX UNION Support Stored Procedures SQL Passthrough 144 bit precision Older versions of RDB Hot Connections RDB List Cursor Support Additional SQL functions Date functions CURRENT_DATE, CURRENT_TIME, CURRENT_TIME STAMP, CURDATE, CURTIME, DAYNAME, DAYOFMONTH, DAYOFWEEK, DAY OF YEAR, EXTRACT, HOUR, MINUTE, MONTH, MONTHNAME, NOW(), QUARTER, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, WEEK, YEAR Scalar Functions DATABASE, IFNULL,USER(_) Conversion Functions CONVERT, CAST SQL Numeric Functions ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, DEGREES, EXP, FLOOR, LOG, LOG10, MOD, PI(), POWER, RADIANS, RAND, 533575523 -6- 03/07/16 SolutionsIQ Feature BLOB Support Quoted Table Names 533575523 Definition ROUND, SIGN, SIN, SQRT, TAN, TRUNCATE SQL Decision Tree Functions IF-THEN SWITCH Support for BLOB (Binary Large Object) data types. These data types are heavily used for storing resource-intensive data such as image, video, audio, and executable code. CONNX will support Long VARCHAR and VARCHAR. CONNX allows the use of Quoted Identifiers to allow the use of table and field names that conflict with SQL Reserved Words. -7- 03/07/16 SolutionsIQ Supported ODBC SQL Grammar Primary SQL Commands SELECT [ALL | DISTINCT] select-list, MIN, MAX, AVG, SUM, COUNT FROM table-reference-list [WHERE search-condition] [Outer Joins] [Inner Joins] [GROUP BY column-name [, column-name]...] [HAVING search-condition] [order-by-clause] Examples: Simple Select: Select customername, customerid from customers Where customerid = “ALCAO” Inner Join Example: Select customername, orderid From customers_rms c, orders_ms o Where c.customerid = o.customerid Outer Join Example: Select customername, orderid From customers_ms c, orders_ms o Where c.customerid *=o.customerid Group by Example: Select customername, sum(o.productquantity * p.productprice) From customers_ms c, orders_ms o, products_ms p Where c.customerid = o.customerid And o.productid = p.productid Group by c.customername 533575523 -8- 03/07/16 SolutionsIQ DELETE [*] FROM table-name [WHERE search-condition] Example: delete from customers_rms where customerid = “ALCAO” INSERT INTO table-name [( column-identifier [, column-identifier]...)] VALUES (insert-value[, insert-value]... ) Example: insert into customers_rms (customername, customerid) values (“New Customer”, “NEWID”) UPDATE table-name SET column-identifier = {expression | NULL } [, column-identifier = {expression | NULL}]... [WHERE search-condition] Example: update customers_rms set customername = “After Merger” Where customerid = “ALCAO” CREATE TABLE table-name (column1 datatype[,column2 datatype]…) not currently supported by RDB & DBMS Example: create table test_rms(companyname char(20), Companyid integer, companybudget double) DROP TABLE table-name not currently supported by RDB & DBMS Example: drop table test_rms Note: Drop table does not physically delete the RMS or DataFlex file. Only the CONNX CDD entry is deleted. 533575523 -9- 03/07/16 SolutionsIQ CREATE [UNIQUE] INDEX index-name on table-name (column1 [ASC][DESC][, column2[ASC][DESC]] …) not supported by RDB & DBMS Example: create index test_index on test_rms(Companyname DESC, companyid ASC) DROP INDEX [CONNX table-name]_INDEX_[CONNX index-number] not supported by RDB & DBMS Example: drop index customers_rms_INDEX_1 533575523 - 10 - 03/07/16 SolutionsIQ SQL Time & Date Literals {t “HH:MM:SS”} This is the proper format to specify a literal time value. Example: Select {t “21:02:33”} from testtable {ts “YYYY-MM-DD HH:MM:SS.FF”} This is the proper format to specify a literal timestamp value. Example: Select {ts “1999-02-03 21:02:33.98”} from testtable {d “YYYY-MM-DD”} This is the proper format to specify a literal date value. Example: Select {d “1999-02-03”} from testtable 533575523 - 11 - 03/07/16 SolutionsIQ SQL String Functions CONCAT(string_exp1, string_exp2) Returns a character string that is the result of concatenating string_exp2 to string_exp1. SUBSTRING(string_exp, start, length) Returns a character string that is derived from string_exp beginning at the character position specified by start for length characters. Example: Select Substring(“ABCDE”, 2, 1) Results:“B” Example:Select Substring(“ABCDE”, 4, 2) Results:“DE” 533575523 - 12 - 03/07/16 SolutionsIQ SQL Date Functions CURDATE( ) Returns the current date. CURTIME( ) Returns the current local time. NOW( ) Returns current date and time as a timestamp value. 533575523 - 13 - 03/07/16 SolutionsIQ SQL Conversion Functions CONVERT(<value>, <new data type>) Converts the specified value to the specified data type. Valid data types are as follows: Integer Smallint Tinyint Char Varchar Binary Varbinary Date Time Timestamp Double Float Bit 4 byte integer 2 byte integer 1 byte integer fixed length character string variable length character string fixed length binary string variable length binary string ODBC date ODBC Time ODBC Date & Time 8 byte double 4 byte real bit Example: Convert(“123”, integer)returns123 Convert(123, char)return“123” 533575523 - 14 - 03/07/16 SolutionsIQ SQL Aggregate functions MIN(<expression>) Returns the minimum value for the specified expression from the table. MAX(<expression>) Returns the maximum value for the specified expression from the table. AVG(<expression>) Returns the average value for the specified expression from the table. COUNT(<expression>) Returns the count of the number of records from the table. SUM(<expression>) Returns the total summed value of the specified expression from the table. 533575523 - 15 - 03/07/16 SolutionsIQ SQL Join Syntax Inner Join <table_1.column1> = <table_2.column2> Example: Select * from table_1, table_2 where Table_1.key = table_2.key Outer Join CONNX Supports two types of left outer join syntax. Syntax 1. {oj <table_1> LEFT OUTER JOIN <table_2> ON <table_1.column1> = <table_2.column2> [ AND <table_1.column2 = table_2.column3> …] } Example: Select * {oj Table_1 LEFT OUTER JOIN Table_2 ON Table_1.key = Table2.key} Syntax 2. <table_1.column1> *= <table_2.column2> Example: Select * from table_1, table_2 where Table_1.key *= table_2.key 533575523 - 16 - 03/07/16 SolutionsIQ CONNX SQL extended functions {statistics} By adding the above expression to the end of a SQL Statement, CONNX will return the query execution plan instead of the requested data. Example: Select * from customers, orders where customers.name = “Meyer” and customers {statistics} Step 533575523 1 Table Customers 2 Orders Action CONNX will perform a keyed lookup using index #2 CONNX will perform a cross table lookup using data retrieved from table “customers” and using index #0 - 17 - 03/07/16 SolutionsIQ Resolved Issues ID: 119 Title: UI - Misspelled word in Welcome screen in Administrator setup ID:122 Title: UI - Pressing back button in Software license screen does not return to Welcome ID:127 Title: UI - Bad Caption for dialog in Admin Setup ID:128 Title: UI - Admin setup goes to wrong dialog when Back button is pressed in the Network ID:129 Title: UI - Bad Caption in dialog for license diskette entry ID:130 Title: UI - Admin Setup goes to wrong dialog in the License Diskette dialog ID:133 Title: UI - No hot keys for Network selection in Admin setup ID:134 Title: UI - Uncapitalized word in static text in Select Program Folder dialog in Admin ID:135 Title: UI - Program Folder label in Select Program Folder dialog wrong in Admin setup ID:155 Title: UI - Word misspelled in error message for Server setup ID:178 Title: CONNX for RMS - Joins with partial unique keys do not work properly ID:187 Title: Intermittent with CONNX 7 and VB 4 ID:194 Title: UI - No short cut keys for radio buttons in the CONNX server setup dialog ID:196 Title: Setup - OpenVMS Server Ind. Acct. Install fails if login.com does not exist ID:197 Title: UI - Admin setup asks for License Disk even though you have inserted it ID:203 Title: UI - selections made in ADMIN setup should be Reflected in OpenVMS server setup ID:208 Title: UI - No shortcut key for Rename Table button in CONNX Data Dictionary app ID:211 Title: UI - No shortcut or hot key for RMS Filename: edit box CONNX CDD Windows App ID:212 Title: UI - No hot or shortcut keys for Comments edit box in CONNX CDD Windows app ID:213 Title: UI - No short cut or hot keys for Show CNXROWNUMBER check box in CDD Win App ID:214 Title: UI - No short cut or hot keys for Show CNXROWID check box in CONNX CDD Win App ID:217 Title: UI - Rotated Array check box in CONNX CDD App has no hot or short-cut key ID:218 Title: UI - No hot or shortcut key for Actual Size edit box in CONNX CDD Win App ID:219 Title: UI - No hot or short-cut key for Maximum Size: edit box in CONNX CDD Win App ID:221 Title: UI - Duplicate hot and short cut key in CONNX CDD Windows Application ID:222 Title: UI - No hot or shortcut keys for SQL Object Name in dialog for entering table o ID:223 Title: UI - No hot or short cut keys for Object Type in dialog for entering table or vi ID:224 Title: UI - No hot or short cut keys for Database in dialog entering table or view ID:241 Title: UI - "Connx Data Dictionary" edit box in CDD wizard not tab order ID:242 Title: UI - Back Button in the screen where you enter CDD name not in tab order ID:243 Title: UI - Browse Button in the screen where you enter CDD name not in tab order ID:250 Title: UI - No error message if Server Type and VMS Server do not match ID:265 Title: UI - CONNX CDD misspelling ID:316 Title: UI - VB VMS OLE example does not delete characters when it appears to ID:322 Title: Using KeySet cursor with ADO caused problems ID:361 Title: RMS - Connx Admin tool does not allow the addition of table ID:393 Title: ADMIN - Cannot change datatype in RMS after importing DBMS ID:394 Title: ADMIN - Entry in Database Account Management dialog does not go away ID:399 Title: Table Scan produces Order by on bad key choice ID:558 Title: Connx75 prompts for RMS login for DataFlex database ID:562 Title: DBMS - Cannot do a delete on MANMAN table PrhRec ID:566 Title: SQL trying to do multiple results causes Assert ID:567 Title: Import problem for Rdb with large tables and Rdb 6.0 ID:578 Title: DBMS - Too many Indexes for ACCESS ID:583 Title: VMS Setup - Word misspelled in error message for VMS setup ID:584 Title: Setup - No descriptions for installation options in "Setup Type" screen 533575523 - 18 - 03/07/16 SolutionsIQ ID:586 ID:591 ID:592 ID:593 ID:594 ID:597 ID:598 ID:604 ID:608 ID:610 ID:614 ID:616 ID:618 ID:619 ID:624 ID:625 ID:626 ID:629 ID:634 ID:656 ID:659 ID:660 ID:661 ID:662 ID:663 ID:664 ID:665 ID:667 ID:669 ID:674 ID:677 ID:679 ID:680 ID:685 ID:696 ID:700 ID:703 ID:704 ID:705 ID:706 ID:707 ID:709 ID:712 ID:713 ID:717 ID:718 ID:719 ID:720 ID:721 ID:724 ID:726 ID:727 ID:729 533575523 Title: CDD Tool - Sample CDD gives message about being in format Title: UI - database management under "host password" the word password is missing Title: UI - SAMPLE.CDD Pre existing users Title: UI - Database account management column names missing Title: UI - CDD Tool What is "7" Title: Admin - CDD tool crashes when .CDD file is opened Title: SUB QUERY get a gpf when running a sub query Title: Import of SCT file RCRTRC.LIB not correct Title: Admin - Cannot import DataFlex files Title: Connx MS Access sample is pointing to the wrong place Title: Admin - CDD tool does not let you change Native Data type when entering RMS table Title: DBMS - Precision for Signed Overpunch Double does not work Title: Admin - "Group Options" button does not do anything in the Security!Groups dialog Title: ACCESS When ID field selected in security you are unable open data Title: DBMS - Sub-query crashes DBMS server Title: RDB - Using ADO Server Keyset cursor causes errors Title: RDB - ADO Server Dynamic cursors return an error message Title: RDB - Server crashes when a timestamp is inserted into a VMS Time column Title: ADMIN - No way to enter Host Server information for ORACLE Title: UI - Faulty hourglass indication after CDD import Title: Admin - Row and Column headings are black Title: Setup - Cannot copy MSRDO32.DLL on clean Win 95 system Title: VMS - VMS server process do not start with default names Title: Setup - Splash screens are too big for 640 x 480 Title: Setup - Tab32x20.ocx cannot be copied Title: Admin - No row or column headings for Table Security tab Title: Admin - No labels for check-boxes in Table Security tab Title: DBMS - DAOJet/Access displays the last record for all of the records Title: DBMS - Error on join query with samples Title: DataFlex - Error message when exporting ACCESS table to DataFlex. Title: Connx Wizard - On the Connx Globe in the cdd wizard the hot box is not invisible Title: CDD Wizard - Enter any info and get a runtime error Title: Admin - Old cdd files that are RDB only do not open in 8 Title: DBMS - Running a query selecting only the DBMS table you get a GPF Title: Admin - when you select array and after it completes the tab dial not repainted Title: UI - CDD Wizard busy cursor goes away even though still busy Title: UI - NO Hot keys on RMS logon screen Title: UI - No tool tips on the tool bar on the CDD tool Title: UI - NO Hotkeys for CDD windows Application Title: UI - Help content and search should be grayed out since they don't exist Title: UI - RMS Logon screen order is wrong for logging in Title: UI - CONNX users screen the tab order is not correct Title: UI - No hot keys on table properties Title: UI - No hotkeys on table columns screen Title: UI - No hot keys for the import screen Title: UI - Add object screen none of the buttons have hot keys Title: UI - CONNX Groups tab ordering is screwed up Title: UI - No hot keys for Users screen Title: UI - No hot keys for groups screen Title: UI - Titles can not be read on the database acct mgmt screen Title: UI - CDD wizard tab order is wrong when naming your cdd Title: UI - CDD wizard when first opening the page to enter the server the cursor is wrong Title: UI - CDD wizard is picking up window text color - 19 - 03/07/16 SolutionsIQ ID:731 Title: UI - CDD Wizard Once you select the database using can't go back and change ID:732 Title: UI - Cdd wizard once you select the database type you oracle is then working ID:733 Title: UI - CDD tool the Cdd tool is to big for its frame ID:734 Title: UI - Cdd wizard tabbing order is not correct for server page ID:741 Title: UI - Cdd tool after you import database the logon info does not clear ID:758 Title: UI - Cdd wizard it asks you to select a directory but it also shows the files ID:761 Title: UI - Tab order is messed up with the login screen of Cdd tool ID:769 Title: RDB - Rdb falsely reports "Record modified by another user" ID:772 Title: SETUP - cnxoraclesetup.exe not installed during admin only setup ID:779 Title: VMS - Bad queries do not return error. ID:787 Title: DATAFLEX - Returns null for date from a sub-query ID:792 Title: Custom Connect Options confused about RDB and DBMS ID:793 Title: DBMS - Unable to delete records in Products table using QueryRunner ID:795 Title: Function - Abs Hard coded not returning correct results ID:796 Title: Function - Running a char string in math functions you get incorrect results ID:797 Title: Function - ABS Invalid subquery is returning incorrect results ID:801 Title: DATAFLEX - Cannot get date in orders table with where clause ID:822 Title: UI - CONNX CDD Wizard, "CONNX AT THE CORE" ID:827 Title: UI - OpenVMS Server Setup ID:842 Title: VMS - OR in where clause does not work correctly ID:845 Title: Oracle - SUBSTRING gives error ORA-00904 when arguments come from query ID:846 Title: RMS - Updates into table with null terminated string causes GPF ID:874 Title: ACCESS crashes in KERNEL32.DLL on shut down when using CONNX ID:879 Title: UI - Duplicate short cut keys in Admin tool Bug in Cobol FD Import of the LEFT SEPARATE data type 533575523 - 20 - 03/07/16