Thu Oct 25 09:05:48 PDT 2001 IQ for UNIX version 4.2 All Rights Reserved. Copyright (c) 1990 - 2001 by: Dynamic Concepts, Inc. Aliso Viejo, CA 92656 USA Email address: support@dynamic.com Information: www.dynamic.com Downloads: ftp.dynamic.com IMPORTANT REMINDERS: ==================== IQ4 requires Passport 3.1 or later. Please install Passport 3.1 or later prior to running IQ4. The IQ4 installation version script does NOT install Passport. The revision number of Passport can be found in /etc/DCI/passport.log or its equivalent error log file. If you attempt to run IQ with a Passport older than 3.1, you will see messages such as: Waiting for response from security daemon ... and eventually an exit. IQ4 will not run with an SSN issued for IQ2 or IQ3. Please acquire and install IQ4 SSNs prior to installing IQ4. IQ2 and IQ3 will run with IQ4 SSNs. DDMAINT and IQACCESS require IQ4 SSNs. IQ4 uses the IQDATA environment variable instead of LUST or LUMAP. Installation instructions ========================= 1. Ensure that you have Passport version 3.1 or greater installed on your system. For common platforms, the latest Passport software can be obtained from www.unibasic.com or ftp.dynamic.com. 2. Login as 'root'. 3. Copy the distribution files to any temporary directory on your system, e.g., "/tmp/iq". Please note that upon successful installation, all files from the current working directory and the current directory will be removed. 4. Type "./iqinstall". Important Files =============== iqinstall Installation script iqinstal Installation script README This file license.txt license terms and conditions ddrefmt.doc detail description for ddrefmt New in Release 4.2 ================================================================================ Thu Oct 25 o This version supports UniBasic and dL4 huge files, i.e. files larger than 2 GB on SCO UnixWare and IBM AIX. The underlying OS and file system must be configured for files greater than 2 GB. IQ temporary sort files are limited to 2 GB. IQ builds temporary files in /usr/tmp directory. It is possible to create temporary files in a different directory by setting an environment variable TMPDIR to the desired directory. o Huge files are defined for IQ as dL4 portable files, i.e file type 262. o IQ Access files do not support files larger than 2 GB. o This version of IQ requires IBM AIX version 4.3 or greater for platforms 29 (Power AIX) and 07 (PowerPC AIX). o Platform 29 (Power AIX) now uses the same binaries as Platform 07 (PowerPC AIX). New in Release 4.1.4 ================================================================================ Fri May 4 o This version of IQ requires IBM AIX version 4.3 or greater for platforms 29 (Power AIX) and 07 (PowerPC AIX). o Platform 29 (Power AIX) now uses the same binaries as Platform 07 (PowerPC AIX). o Corrected problem with UniBasic/dL4 Indexed filesnames with wildcards. New in Release 4.1.3 ================================================================================ Fri Feb 12 o Corrected a problem with dL4 portable formatted files on IBM Power PC New in Release 4.1.2 ================================================================================ Fri Jan 29 o IQ now displays a date field to be all 9s (invalid date), if the day does not fall between 1 and 31, inclusive. New in Release 4.1.1 ================================================================================ Thur Aug 13 o Bug fix: allows selection of alternate printers on PowerPC 603 AIX and Power AIX, platform numbers 07 and 29, respectively. New in Release 4.1 ================================================================================ Mon May 18 o Year 2000 compliant for IQ file types 261, 262 and 263. These are UniBasic and dL4 files, including dL4 FoxPro Full-ISAM files. o Correct Year 2000 ascending and descending sort of 2 digit year date fields for UniBasic and dL4 files, including dL4 FoxPro Full-ISAM files. The sort will work correctly, even if a 2 digit year is stored as part of key data. For example, "010100" will appear before "010199" in a descending sort. Likewise, "010100" will appear after "010199" in an ascending sort. o Correct time calculation of 2, 3, and 4 digit year data fields for UniBasic and dL4 files, including dL4 FoxPro Full-ISAM files. o Correct leap year calculation for 2, 3 and 4 digit years for UniBasic and dL4 files, including dL4 FoxPro Full-ISAM files. o IQ interprets dates as specified in the data dictionary date layout as follows: a) 4 digit years (Y4) are taken "as is". b) 3 digit years (Y3) are added to the DEFAULT century as configured in IQCONFIG.DAT item CD. c) For UniBasic and dL4 files, 2 digit years (Y2) are converted to be in the nearest century based on a plus/minus 50 years rule. A two digit year is thus assumed to be within 50 years, plus or minus, of the current year as returned by the system. For example, if the system returns 1998 as the current year, then the year 47 will be interpreted as year 2047, and year 49 will be interpreted as year 1949. o The new IQCONFIG.DAT item CD allows the user to override the default century (1900) for a three digit year. o Supports Index files with wildcards. o Supports using indices to read dL4 FoxPro Full-ISAM files. o Supports string, numeric, date and logical fields in dL4 FoxPro Full-ISAM files. o Supports automatic detection of UniBasic and dL4 flat files. o Supports UniBasic Universal Data files. o Supports dL4 Dates. o ddrefmt can now convert data dictionaries with filenames that use wildcards. o ddrefmt has a new non-abortive command line option o Supports links between a dL4 FoxPro Full-ISAM file and a flat file. o Supports links between a flat file and a dL4 FoxPro Full-ISAM file. o A new CONVERT command was added to the product to allow conversion from numeric and date fields to alpha fields. o The PROMPT command statement was enhanced to allow validation of the user input and to allow for a default prompt value to be specified. o Enhanced to improve the output to file with data dictionary. Users are now allowed to update rather than replace the resulting output data dictionary. Also, the current data dictionary can be updated with the transferred output information. o The other major enhancement related to dictionary output is the new default location for the transfer dictionary to be written or updated. The output dictionary was written to IQOUTPUT (same location as the output file). As of this release, the transfer dictionary will be written to the dictionary location specified by IQDD if it is set. This is a major change in the way that IQ/IQ Access functions. o New popup boxes were created for the user interface to support the enhanced output to file with data dictionary. o The improved output to ASCII_CSV and ASCII_FIXED files still queries the user if a data dictionary should be generated. If you do not type in a name after choosing to output a data dictionary, then the current data dictionary is the one updated. The Update option is automatically turned on when the current data dictionary is selected for output. Next, the user is queried for a category name to be used for output. The default category name is the same as the name of the transferred output file or the previously entered value. The user is also queried for whether the resulting output category name should be unique or not. If the user chooses to make the category name unique, then a number will be appended to the name to ensure its uniqueness. Otherwise, an existing category with the same name will be overwritten with the transferred dictionary information. If the category is overwritten, all previous VIEW and LINK records associated with the category will be deleted from the data dictionary. Procedures associated with the category will not be deleted, but may no longer be valid if the names of fields or files have changed. Previous FILE and DATA FIELD records will not be deleted from the dictionary and could be "orphaned" if none of the remaining categories references them. Lastly, you are prompted whether to Overwrite or Update if the output dictionary already exists (and it is not the current dictionary). Safeguards are in place to prevent users from overwriting the current data dictionary or the current category. Attempts to do so will result in an error message. o IQ no longer prepends the value of IQDATA to the name of a data file to be opened if the name already contains an absolute path. In previous versions, IQ would prepend the value of IQDATA to the complete pathname, and thereby create an invalid data file name which could never be opened. o Enhanced to display the name of the current procedure on the top line of the main Command menu box. If no procedure exists or has yet been saved, the default procedure name displayed is "Untitled". Also, when the user restarts the procedure using the Clear command from the Utility menu, the procedure name will reset to "Untitled". o Stored procedure processing was enhanced in release 4.1 to allow the user to start IQ with a list of procedures. A new configuration entry, G9, is used to toggle between methods of starting IQ. When G9 is set to 'C' (for Categories) then IQ comes up as in previous releases with a logo screen and then a list of categories. Once a category is selected, the user is given the main menu. When G9 is set to 'P' (for Procedures), a list of procedures (from all categories) is displayed after the logo screen. Once a procedure is selected, the user is given the enhanced Stored Procedure menu. A new option "Load" was added in release 4.1 to the Stored Procedures menu. The "Load" option loads the procedure and its associated category and brings up the main menu. o Another enhancement to the Stored Procedures menu is to allow the user to select from either a list of procedures in the current category or a list of procedures from all categories. If the user chooses to see the list of all procedures in the dictionary, any selection will cause the category associated with the selected procedure to be loaded and thus become the current category. o The MOVE command was enhanced in release 4.1 to allow moving a date literal to a temporary date field. o Enhanced to allow nesting of IF statements within an IQ procedure. This enhancement was done in lieu of creating a new statement syntax to support a SWITCH or CASE statement like those found in UNIX shell and high level programming languages. o Adds quotes around numeric fields as well as alpha and date fields in ASCII_CSV formatted output files. o Handles data in scientific notation for type 1 fields. o A new configuration item has been added to IQ to support rounding of ASCII numeric values. o The new IQCONFIG.DAT item CC does not affect UniBasic and dL4 files. IQ3 and IQ5 Dictionaries: ========================= IQ4 is fully compatible with versions 3 and 5 data dictionaries. However, a dictionary must be ddunloaded on the native system before moving to a different type of system. ddload must then be run on the target system. User Documentation: =================== The latest documentation, "IQ for UNIX and Windows Installation and Reference Guide", dated 11/17/97, may be obtained from www.dynamic.com. dL4 date field definitions are documented in this manual. Briefly, dL4 date fields are field type 176. It is strongly recommended that all two and three digit years be converted to a four digit year to avoid any possible misinterpretation. dL4 FoxPro Full-ISAM files are defined as file types 263. Enter the actual filename, including the .dbf extension for, "File Name:". Enter "Y", "1" and "1" when prompted for the "Is this file Indexed", "Primary Read Sequence" and "Record Length" prompts, respectively. While defining "Key Information", enter the actual field names that constitute the keys' fields as "Index File Name:". Alternatively, you can enter the field number in response to the "Location of Key Part:" prompt. Enter the name of each field for each key part if multiple fields make up a key. For example, if an index consists of first name and last name, then define first name as key part one, and last name as key part two. Enter a one in response to "Key Number" prompt. Enter a zero for a string field, a one for a numeric field, or a 16 for a date field, in response to "Type of Key Part" prompt. All fields in a dL4 FoxPro Full-ISAM file are entered either by its field name in the file, or by its field number in the field location. During runtime, IQ will attempt to locate a field by its field number if the field number (a positive integer value) was entered for its location. IQ will attempt to locate a field by its field name if a zero was specified for its location. Upon detecting the field, IQ runtime adjusts the field type, length and location from the file as set in the file. If it detects a date field, then it correctly sets the date format and date layout. In summary, if you want to find a field by its field number, specify a positive value for its location. Specify a zero for location if you want to find a field by its name. This rule applies to defining fields, keys, and links. IQ4 does not support memo fields in a dL4 FoxPro Full-ISAM file. ISAM links are the only supported links when a link is made to a dL4 FoxPro Full-ISAM file. Multiple Directories: ===================== IQ4, like all previous versions of IQ, does not support multiple directories in a single file definition. A separate IQ file definition must exist for each directory to be accessed. Supported File Types: ===================== IQ release 4 supports files types 0, 1, 3, 44, 261, 262, 263, and 999. All other file types are NOT supported. In dL4 Portable files, IQ supports the ANSI, IRIS, UniBasic and UTF-8 character sets as long as the string data contain all printable ASCII. Networking: =========== Although this product was not specifically tested in a network environment, it should work in a properly configured NFS system which can properly handle record locking. The product itself does not use any system calls specific to networking. Please verify that your system is configured correctly if you are having problems using this product in a network environment. For your convenience, UniBasic release 6 and higher includes a standalone utility, ubtestlock, to assist you in testing your configuration. You may request a copy of this utility by contacting support@dynamic.com. File List ========= Your source media should contain the following files: README* sql.mnu* yconvert ynfo2cap yqrespns danish/ yAB_MAST.DAT ydindex yortiq.dat yqscrn.dat ddrefmt.doc* yAB_MAST.IDX ydload yortiq.idx yqscrn.idx dutch/ yECT_DET.DAT ydmaint yqcfgtrn.dat yqtext.dat english/ yECT_DET.IDX ydmaster.dat yqcfgtrn.idx yqtran.dat french/ yL_CURR.DAT ydmaster.idx yqconfig yqtran.idx german/ yL_CURR.IDX ydrefmt yqconfig.dat yqxlat.437 iqchksum yL_HIST.DAT ydschool.dat yqconfig.sql yrrors.doc iqexpand* yL_HIST.IDX ydschool.idx yqexcs.def ysgindex iqinstal* yT_FIN.DAT ydtran.dat yqhelp.fld yxportiq iqinstall* yT_FIN.IDX ydtran.idx yqkey.def yycrc lib.mnu* yT_MAST.DAT ydunload yqkwd.dat yyiq license.txt* yT_MAST.IDX ydupdate yqlicens yyiqcap manchgs.doc y_INFO.DAT yecureiq yqlicens.dat yyiqtee prodlist y_INFO.IDX yecureiq.dat yqlicens.idx scrnecho* yaketerm yecureiq.idx yqmkhelp spanish/ yblkwd.dat ymportiq yqprtcfg.dat ./danish: iqchksum yqtext.dat yqtran.dat yqtran.idx yqtran.pc ./dutch: iqchksum yecureiq.dat yortiq.pc yqkwd.dat yqtran.dat ydmaster.dat yecureiq.idx yqcfgtrn.dat yqscrn.dat yqtran.idx ydmaster.idx yecureiq.pc yqcfgtrn.idx yqscrn.idx yqtran.pc ydschool.dat yortiq.dat yqcfgtrn.pc yqscrn.pc ydschool.idx yortiq.idx yqhelp.fld yqtext.dat ./english: iqchksum ydtran.idx yortiq.idx yqkwd.dat yqscrn.pc ydmaster.dat ydtran.pc yortiq.pc yqlicens.dat yqtext.dat ydmaster.idx yecureiq.dat yqcfgtrn.dat yqlicens.idx yqtran.dat ydschool.dat yecureiq.idx yqcfgtrn.idx yqlicens.pc yqtran.idx ydschool.idx yecureiq.pc yqcfgtrn.pc yqscrn.dat yqtran.pc ydtran.dat yortiq.dat yqhelp.fld yqscrn.idx ./french: iqchksum yqscrn.dat yqscrn.pc yqtran.dat yqtran.pc yqkwd.dat yqscrn.idx yqtext.dat yqtran.idx ./german: iqchksum yecureiq.idx yqcfgtrn.idx yqlicens.pc yqtran.dat ydmaster.dat yecureiq.pc yqcfgtrn.pc yqprtcfg.dat yqtran.idx ydmaster.idx yortiq.dat yqconfig.dat yqscrn.dat yqtran.pc ydschool.dat yortiq.idx yqkwd.dat yqscrn.idx ydschool.idx yortiq.pc yqlicens.dat yqscrn.pc yecureiq.dat yqcfgtrn.dat yqlicens.idx yqtext.dat ./spanish: iqchksum yqkwd.dat yqscrn.pc yqtran.idx ydmaster.dat yqscrn.dat yqtext.dat yqtran.pc ydmaster.idx yqscrn.idx yqtran.dat setupiq ======= setupiq is not distributed since it is used to define Informix and other Data Bases not supported by Dynamic Concepts, Inc. UniBasic-IQ release 2 Data Dictionary Upgrade: ============================================== UniBasic-IQ release 2 data dictionaries are NOT compatible with IQ for UNIX versions 3 and greater. Run ddrefmt to upgrade UniBasic-IQ release 2 data dictionaries to versions 3 or greater. IQ release 4 files: =================== All IQ files, including demo and support files, are stored in the /usr/lib/iq4 directory. All executable programs are created as shell scripts by the same name in /usr/bin. All other references to iq3 in the current "IQ for UNIX and Windows Installation and Reference Guide" are applicable to IQ release 4. UniBasic-IQ release 3 files: ============================ After upgrading to release 4, UniBasic-IQ release 3 executable programs remain in /usr/lib/iq3 directory. The release 3 shell scripts in /usr/bin are replaced with release 4 scripts. These scripts are basically the same, except they run /usr/lib/iq4 executables instead of /usr/lib/iq3 executables. UniBasic-IQ release 2 files: ============================ UniBasic-IQ release 2 executable programs are moved to the /usr/lib/iq2 directory if they exist. exportiq ======== Please note that exportiq does not take any command line arguments. The -l and the -s options as stated in the "System Manager's Guide" are not available. In addition, exportiq does not reject invalid command line arguments. Copyright Notices: ================== CodeBase is a registered trademark of Sequiter Software, Inc. c-tree is a regsitered trademark of FairCom. FoxPro is a registered trademark of Microsoft Corporation. Platforms ========= Operating system information for IQ for UNIX 4.2 production: ID Platform "uname -a" -------------------------------------------------------------------- 07 PowerPC 603 AIX AIX sysname 3 4 0000185B4C00 55 UnixWare UnixWare sysname 5 7.1.0 i386 x86at SCO UNIX_SVR5