** * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * ** TIP/ix support ends Dec 31, 2022 ** * * * * * * * * * * * * * * * * * * * * * * * ** TIP/ix continues to require a license to use ** * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * ** Read the notes under build 0386. You need this from the website ** before 'tipctl download' will work again. You need to have TIP/ix 2.5 build 0227 or later installed before deploying any TIP/ws or TIP/fe version 2.7 or 2.8. The 2.7 & 2.8 versions of TIP/ws & TIP/fe will not work with older versions of TIP/ix. If using the old version of TIP/dbi, it is recommended that you remake your TIP/dbi I/O module when installing new versions of TIP/ix. For users of TIP/dbi, the newer version called TIP/dbi II has many more options and performs better than the original. The old TIP/dbi will only receive critical fixes and no more enhancements. All new Database Interface enhancements will be done with TIP/dbi II. *************************************************************** * TIP/dbi II supports Oracle via Oracle Call Interface. * * TIP/dbi II supports an ODBC interface ONLY ON LINUX and * * has been verified with MySQL/MariaDB and MS SQL Server. * *************************************************************** Micro Focus COBOL Server Express is supported provided you run the TIP/ix utility 'genapi' after installing TIP/ix. This requires that the C compiler and MF COBOL Compiler are installed and ready to use and in your path, etc. Micro Focus Visual COBOL is supported provided you run the TIP/ix utility 'genapi' after installing TIP/ix. This requires that the C compiler and MF COBOL Compiler are installed and ready to use and in your path, etc. If you upgrade or change the MF COBOL compiler, then you will need to rerun 'genapi'. See notes under "2003/09/26 2.4 R0 - 0068" about maketipcobol which must be run for HPUX ***The version of TIP/ix for REDHAT Linux is now built using GnuCOBOL so there is no need to run the 'maketipcobol' script. ***The newest version of TIP/fe (built on Windows 7) does work correctly for Daylight savings time. ***TIP/fe time of day and the new Daylight Savings time rules*** Please note that during the time between the new Daylight savings time dates and the old Daylight savings time dates, TIP/fe will display a time of day which is off by one hour. TIP/dbi update - Notice ======================= Sometimes it is required to make a change to the TIP/dbi dictionary file and/or control structures. When this happens you will need to rerun dbischema and dbisubschema on your schema & subschema definitions and recompile your batch programs. If this is not done you will get a run-time error stating that the dictionary version does not match. Also if you have a test and production system and install the new TIP software on your test system. The binaries compiled on test will not run on production until that system is also updated. You would be able to recompile your source code using the production system. If you have a version of TIP that is older and you update to a new system and there was a TIP/dbi dictionary structure change in the middle then you need to be aware of this issue and deal with it. Versions where the TIP/dbi dictionary has changed are as follows: 2019/03/02 2.5 R0 - 0367 2015/11/18 2.5 R0 - 0316 2011/12/12 2.5 R0 - 0209 2008/01/17 2.5 R0 - 0126 2006/08/28 2.5 R0 - 0093 All versions of TIP/dbi (64 & 32 bit) can be configured to use a field of 4 to 8 bytes for the DATABASE-KEY. This is defined by a new schema clause: DATABASE-KEY IS n Where n is a number from 4 thru 8. The default is 4. ************************************** ********** ISAM file issues ********** ************************************** Since build 2012/09/19 2.5 R0 - 0228, TIP/ix is using D-ISAM version 7. If you are using a recent Micro Focus COBOL compiler some customers have found that MF COBOL ISAM and D-ISAM 7 do not work well together and sometimes result in ISAM data file corruption. We recommend that you compile your batch programs and include the D-ISAM library instead of using the MF COBOL default ISAM file handler. To use the D-ISAM binary library released with TIP/ix for your batch MicroFocus COBOL programs use the following compile options: -L $TIPROOT/lib -m ixfile=cixfile +l disam If you use these parameters in a 'makefile' then it is coded as: -L $(TIPROOT)/lib -m ixfile=cixfile +l disam The D-ISAM software comes with two utilities: dcheck & dpack dcheck can be used to verify an ISAM file dpack can be used to rebuild an ISAM file Do not use the Micro Focus 'rebuild' utility on ISAM files which will be accessed by TIP/ix. Use the 'dpack' utility to verify and rebuild the ISAM file when needed. ************************************** ************************************** TQL changes for 64-bit platforms: ************************************** If you had been running a build of TIP/ix on 64 bit system that was older than July 2020, then after installing a newer build you need to recompile all of your TQL records and programs. There is a script called 'recomptql' which can be used to recompile all of your TQL programs ************************************** TIP/ix release level comments ======================================================================= 2023/01/01 2.5 R0 - 0440 * Adjustment to system startup procedure 2022/09/21 2.5 R0 - 0438 * Fix for TIP/dbi when using MS SQL Server with INDEXED file simulation 2022/09/15 2.5 R0 - 0437 * Enhancement to detect if the shared memory file (tipmmap) was deleted by mistake and attempt to recreate it when the system is started 2022/09/07 2.5 R0 - 0436 * Fixes for TIP/dbi when using MS SQL Server 2022/08/30 2.5 R0 - 0435 * Fix problem in D-ISAM 7.2 code that was causing a problem when linked with Microfocus COBOL application. The following should now work: -L $TIPROOT/lib -m ixfile=cixfile +l disam72 2022/07/27 2.5 R0 - 0434 * Fix for fopen for what may be a C compiler issue on Linux 7 & 8 * tipix.conf option for stating all applications are IMS/1100 PARAM ALLIMS1100=YES 2022/07/26 2.5 R0 - 0433 * For IMS/1100 transactions there will be no changing of the CDA/WORK sizes on the fly. * For IMS/1100 transactions the MCS data is saved on External succesion and restored on the next input message. * genapi utility updated to set object module file permissions rw-rw-r- 2022/04/20 2.5 R0 - 0432 * Fixed minor C compiler warnings during system build 2022/04/06 2.5 R0 - 0431 * Fix problem with internal adjustment of license key 2022/01/26 2.5 R0 - 0430 * Rebuild with Copyright up to 2022 2021/10/22 2.5 R0 - 0429 * Fix 'tipix -s file' (reading a script file of commands) to always pass line from script file thru the CDA to next program 2021/10/16 2.5 R0 - 0428 * Fix error in the MCS format cache process * Fix for 'armrpg' to handle edit mask like ------0 2021/10/02 2.5 R0 - 0427 * Fix for 'armrpg' not suppress leading ZERO in Date edit for North America 2021/09/16 2.5 R0 - 0426 * Fix for 'armrpg' for include UPSI COPY books for -u option 2021/09/09 2.5 R0 - 0425 * Adjustments internal to TIP/ix for use of 'poll' vs 'select' * Fix for 'armrpg' for keep or skip input records 2021/08/31 2.5 R0 - 0424 * Fix for 'armrpg' when MOVE numeric literal to Numeric Calc field 2021/06/18 2.5 R0 - 0423 * Always ignore SIGCONT by telling Linux to not even send the signal 2021/06/11 2.5 R0 - 0422 * Fix problem with using a LIBrary defined via smfile 2021/06/10 2.5 R0 - 0421 * Changed to better handle a file path that is defined using an environment variable and the result is longer than 63 bytes * Ignore SIGCONT if received by 'tipmon' process 2021/06/07 2.5 R0 - 0420 * Fix D-ISAM 7.2 setting of EENDFILE status * Fixes for 'armsort' in skipping deleted ISAM record * Fixes for 'armrpg' for tables and ISAM ACCESS MODE 2021/06/02 2.5 R0 - 0419 * Fix for 'armsort' in handling of record sequential files 2021/05/31 2.5 R0 - 0418 * Changes to TIPFCS server logging to record module and line 2021/05/29 2.5 R0 - 0417 * Enhancement to 'armrpg' for additional "indicators" 2021/05/26 2.5 R0 - 0416 * Fix performance issue on Centos/Redhat 8 [sleep(0); caused a significant delay] 2021/05/20 2.5 R0 - 0415 * Fix for TIP/dbi ODBC when index allows duplicates 2021/05/19 2.5 R0 - 0414 * Fix for TIP/dbi ODBC when index allows duplicates * Fix for 'armrpg' for UPSI and GnuCOBOL 3 or later * Fix for 'armsort' to continue past ENOREC when reading input 2021/05/16 2.5 R0 - 0413 * Correction for BATFCS when no FCS-OPEN was done 2021/05/10 2.5 R0 - 0412 * When using D-ISAM 7.2 there is no limit on record locks 2021/04/07 2.5 R0 - 0411 * Improvment to TIP/dbi ODBC interface in handling AUTO COMMIT logic 2021/03/26 2.5 R0 - 0410 * General fix for TIP/dbi II to resolve the old style FCS server name sooner. Old TIP/dbi used 'schemaname'io but TIP/dbi II uses 'schemaname' TIP/dbi II has no 'io' on the end * TIP/dbi fix for processing tipdbi.map related to environment variable replacement under [*options] * tipix.conf option for control of TIP/dbi server processes: PARAM DMSMAX=nnn where nnn is the max number of processes, default 64 PARAM DMSIDLE=nnn where nnn is seconds of idle time before stopping 2021/03/18 2.5 R0 - 0409 * To adjust for changes made in buid 0384 when using an older COBOL the length of variable length parameters such as FCC-MODS will be set to 1500. 2021/03/12 2.5 R0 - 0408 * Fixed TIP/dbi for the DBIXFH module when DELETE during sequential read 2021/03/11 2.5 R0 - 0407 * Fixed TIP/dbi to use LIMIT (set via schema_TOP value) for INDEX that allows DUPLICATES 2021/03/03 2.5 R0 - 0406 * New tipix.conf option for PARAM MCSSYNC; PARAM MCSSYNC=YES Only add this if you are using the winTFD utility that comes with TIP/ws 2021/02/26 2.5 R0 - 0405 * Fixed 'install' problem that was causing old screen formats used in error 2021/02/12 2.5 R0 - 0404 * Fixed problem with tippack and tipupack 2021/01/14 2.5 R0 - 0403 * Updated to use D-ISAM 7.2 2021/01/01 2.5 R0 - 0402 * Updates to 'install' procedure for setting shared library links 2020/12/07 2.5 R0 - 0401 * TIP/dbi new schema clause to let you define a specific name for the column used to hold the unique identifying number. Normally each table has a column called "row_recname" where 'recname' is the record/table name. For Non-Oracle databases such as MySQL, MS SQL, PostgreSQL you could add to your TIP/dbi schema definition a schema level clause such as: ROWID IS "rowid" This would then replace "row_recname" with "rowid" 2020/11/21 2.5 R0 - 0400 * Tested using VB-ISAM 2.2 in C-ISAM mode instead of D-ISAM * Fixed TIP/dbi problem with ODBC interface. It was not detecting end of file correctly and looping. * Fixed TIP/dbi problem with ODBC interface reading by 'record number' 2020/10/14 2.5 R0 - 0399 * TIP/dbi II has preliminary update to support PostgreSQL 2020/09/24 2.5 R0 - 0398 * TIP/dbi II (dbischema) will warn if you use ODBC on a system that does not support that. ODBC is only supported on LINUX systems. 2020/09/07 2.5 R0 - 0397 * Improve cleanup of TIP/dbi applications when database goes down 2020/08/31 2.5 R0 - 0396 * Fix abort of dbigen when MIRAM record has no unique primary index 2020/08/17 2.5 R0 - 0395 * Work around a problem with the TIP/dbi schema name in Fct.FcsProg getting clobbered. 2020/07/22 2.5 R0 - 0394 * Fix to emit ON DELETE CASCADE for CONSTRAINTS when using SQL Server 2020/07/02 2.5 R0 - 0393 * Due to changes to TQL for 64 bit platforms, you need to recompile all TQL programs after installing this upgrade if you are using a 64 bit version of TIP/ix. The script recomptql can be used to do the recompiles 2020/05/20 2.5 R0 - 0392 * Released 'tipctl getsource' if license is good thru December 2021 2020/05/01 2.5 R0 - 0391 * Fixed bug in TQL related to TIPSYSU * Now using GnuCOBOL 4.0 compiler 2020/04/16 2.5 R0 - 0390 * Add a new user using DEFAULT use data as starting point: smuser NU name * Reduce time waiting for intial SOAP message 2020/04/09 2.5 R0 - 0389 * Added TIP/ix build for REDHAT/CENTOS 8.1 64 bit mode only * Added extra logging for SOAP interface 2020/04/06 2.5 R0 - 0388 * tipctl updated to search $TIPROOT/bin for system components first * Fixed problem related to DDU and TIPMSGI changes from build 384 2020/04/01 2.5 R0 - 0387 * TQL has a bug compiling TIPSYS and TIPSYSU on 64 bit systems. Removing some of the REPORT options from these avoided the problem. 2020/03/27 2.5 R0 - 0386 * This version of TIP/ix must be downloaded manually from www.inglenet.ca and then later you can do (if needed): tipctl download * So until you get past build 386 'tipctl download' will not work 2020/02/03 2.5 R0 - 0384 * Changes to TIPMSGO,TIPMSGOV,TIPMSGE to check the length of the FCC and CURSOR mods parameters (if used) and limit the usage of the values to the actual length of the parameter passed on the CALL. * You must have a COBOL compiler that supports PIC X ANY LENGTH for TIPMSGO,TIPMSGOV,TIPMSGE to work. Use either GnuCOBOL 3.x or later or Micro focus Server Express 5 or MF Visual COBOL 2020/01/14 2.5 R0 - 0383 * Fresh build for the new year: 2020 2019/12/10 2.5 R0 - 0382 * TIP/dbi 'dbischema' fix to handle multiple 01s with no REDEFINES 2019/12/06 2.5 R0 - 0381 * Removed: TIP/dbi, ODBC combining multi-part WHERE clauses into one complex WHERE clause 2019/12/05 2.5 R0 - 0380 * TIP/dbi, adjusted ODBC interface to avoid what looks like a C compiler bug on Linux 7 * TIP/dbi, ODBC interface combines multi-part WHERE clauses into one complex WHERE clause to improve performance 2019/11/21 2.5 R0 - 0379 * Fixed incorrect error from 'fopen' for TIP/dbi managed files/tables 2019/11/14 2.5 R0 - 0378 * TIP/dbi schema compiler(s) will handle COBOL variable names up to 50 characters long. Previous limit was 30 2019/09/28 2.5 R0 - 0377 * Rebuilt with latest GnuCOBOL compiler 2019/08/27 2.5 R0 - 0376 * TIP/dbi dbiexpimp, will now load Numeric Edited data fields 2019/08/07 2.5 R0 - 0375 * TIP/dbi new schema clause to let you define a prefix for reserved words used as column names. For example RENAME PREFIX 'x_' The default is that a sequential numeric value is appended to the name 2019/07/21 2.5 R0 - 0374 * TIP/dbi, ODBC interface no longer uses 'bulk load' operations as this was not working with MySQL 2019/07/12 2.5 R0 - 0373 * TIP/dbi: dbischema will now report an ERROR if a REDEFINES IF USE is missing one of the REDEFINES groups. 2019/06/26 2.5 R0 - 0372 * Change 'dbisql' to not show SQL version for batch mode operation 2019/06/18 2.5 R0 - 0371 * Fix TIP/dbi DBIXFH to correctly handle READ NEXT following OPEN of ACCESS DYNAMIC file with no START defined. Default to BOF. 2019/05/15 2.5 R0 - 0370 * Fix for TIP/dbi ODBC interface to work better with DBIXFH * TIP/dbi does better job of detecting fields in an index that can be folded into a single column for performance reasons. 2019/03/27 2.5 R0 - 0369 * TIP/dbi new schema clause to let you rename columns. For example RENAME 'id' TO 'x_id' 2019/03/20 2.5 R0 - 0368 * TIP/dbi fix for REDEFINES x IF expr USE y * TIP/dbi dbiexpimp cross checks ISAM file with table definition and report differences. 2019/03/02 2.5 R0 - 0367 * TIP/dbi updates for DMS/2200 conversion of DML into EXEC SQL 2019/01/18 2.5 R0 - 0366 * TIP/dbi ODBC problem corrected related to MS SQL 'SELECT TOP n' 2019/01/14 2.5 R0 - 0365 * Update copyright to 2019 * TIP/dbi dbiexpimp updated to process /etc/default/tipdbi.map [*options] to set environment variables before connecting to database 2018/12/20 2.5 R0 - 0364 * TIP/dbi has a new option for the DMS schema header. ALL RECORDS USE AREA CODE This option directs TIP/dbi II that for all records which are in multiple areas all records should be stored in the same SQL table. An extra column 'area_code_key' is used with the 'row_recordname' to created the PRIMARY index for the records. * dbiunload also generates DMS unload programs taking the above option into consideration * TIPFCS will retry isrewrite to ISAM file if it gets ENOCURR 2018/11/14 2.5 R0 - 0363 * tipinstall does a better job of guessing shared memory size for -L 0 * tipmon logs more details of shared memory usage at startup 2018/09/26 2.5 R0 - 0362 * Force table names to lowercase with ODBC as MySQL may not have that set Add to /etc/my.cnf.d/server.cnf after [mysqld] lower_case_table_names = 1 sudo /etc/init.d/mysql restart 2018/09/13 2.5 R0 - 0361 * Fix problem in 'dbischema' related to MySQL/MariaDB 2018/08/08 2.5 R0 - 0360 * Handle startup date until 2100. After that things fall apart! * *** Removed delay imposed when license key has expired *** * Fixes for TIP/dbi II ODBC interface for MySQL (MariaDB) For MariaDB, it has its own ODBC connector so the odbcinst.ini might look like the following: [MySQL] Description=ODBC for MySQL Driver64=/usr/lib64/libmaodbc.so Setup64=/usr/lib64/libodbcmyS.so FileUsage=1 2018/06/30 2.5 R0 - 0359 * Fix problem in 'dbischema' when processing multiple USE - IF conditions 2018/05/31 2.5 R0 - 0358 * For SOAP interface, ignore all FCC & Cursor Mod fields if application does not pass them. There remains a maximum of 700 fields per screen. 2018/04/30 2.5 R0 - 0357 * Improved 'dbiexpimp' for logging and expression evaluate with strings and numerics * TIP/ix is now built for IBM AIX using AIX 7 and only in 64 bit mode TIP/ix for AIX is also now built using the GnuCOBOL compiler 2018/01/24 2.5 R0 - 0356 * Rebuild for 2018 * Rebuilt with latest GnuCOBOL compiler 2017/05/02 2.5 R0 - 0355 * Rebuilt with latest GnuCOBOL compiler 2017/03/15 2.5 R0 - 0354 * Fixed problem with assigning the TIP/ix license key * Changed tipdtp to retain better affinity between TIP/ix session and TIP/ic socket. This will improve on the TIP/ic interface stability * On HPUX, you will need to add -lunwind to your compiles to include a special HPUX library for decoding the execution stack during a core dump. * Reduce TIPFCS & DTP log file flushing to disk, to improve performance. * New tipix.conf option for PARAM WEBUNSOLOUT; PARAM WEBUNSOLOUT=YES This indicates that unsolicited output messages should be passed on to TIP/ic. Web browsers (and therefore TIP/ic) process one input message and then one output message is accepted. Sending a second output message is and indication of a logic error in the application. When a second output message is sent a message is now written to the HISTORY file. Default: 'NO'; secondary output messages to TIP/ic will be discarded. But if you really do want them sent add WEBUNSOLOUT=YES. *** Keep in mind that this option may not be a good thing to do. *** 2017/03/03 2.5 R0 - 0353 * Fixed bug related to cleaning orphaned message from the message queue This bug was introduced in November of 2000 2017/02/18 2.5 R0 - 0352 * New code added for tipdtp to do an internal trace back if aborts on HP Itanium and Linux platforms. This will aid in finding problems. 2017/02/17 2.5 R0 - 0351 * Some self-checking code added to tipdtp to check on TIP/ic sessions * Enhanced tipix.conf option for PARAM WEBTIMEOUT; PARAM WEBTIMEOUT=min,LOGOFF,LOG For WEB, TIP/ic sessions if LOGOFF is defined, then after 'min' minutes of a program waiting for the next input, the program will be aborted and the session forced to log off TIP/ix If LOG is specified then a line is written to HISTORY file (Both of LOGOFF and LOG are optional) * Enhanced tipix.conf option for PARAM TIMEOUT; PARAM TIMEOUT=min,LOGOFF,LOG If the LOGOFF is defined, then after 'min' minutes of a program waiting for user input, the program will be aborted and the user forced to log off TIP/ix If LOG is specified then a line is written to HISTORY file (Both of LOGOFF and LOG are optional) * The TIP/ic Client IP address will now get stored in TIP/ix which can be displayed using the 'whoson -I' command. This featured also needs the latest version of TIP/ic 2017/01/17 2.5 R0 - 0350 * Build with updated version of GnuCOBOL 2016/12/16 2.5 R0 - 0349 * Fix issue with tipdtp aborting when TIP/ic socket is closed 2016/12/13 2.5 R0 - 0348 * csmon fixed problem in scanning for Content-Length: value * Updated sample (makefile) make.cit for COBOL-IT With COBOL-IT, use -std=fixmf and copy the fixmf.conf to CIT config subdirectory 2016/11/29 2.5 R0 - 0347 * Add some more safety checking code to tipmon 2016/11/02 2.5 R0 - 0346 * Fix 'isreorg' to correctly set file ownership/permissions when converting D-ISAM to VB-ISAM and vice versa * Fix for 'genmain' related to using COBOL-IT 2016/10/31 2.5 R0 - 0345 * Fix issue with tipdtp aborting under heavy use of TIP/ic 2016/10/22 2.5 R0 - 0344 * Any unknown files lying in the $TIPROOT/log directory will be moved to $TIPROOT/savelog on system startup. 2016/10/14 2.5 R0 - 0343 * New additional tipix.conf option to define the largest I/O buffer allowed PARAM MAXIOBUF=maxval The default is 550K * New additional tipix.conf option to define the largest CDA size PARAM MAXCDA=maxval The default is 350K * Added some defensive error checking code to TIPFCS * Added some extra logging to tipdtp 2016/09/30 2.5 R0 - 0342 * Changes made to SOAP message processing 2016/09/13 2.5 R0 - 0341 * Updated sample make.cit for COBOL-IT * Change made to SOAP/URL GET input processing 2016/08/20 2.5 R0 - 0340 * Fixes for UniAccess interface 2016/08/04 2.5 R0 - 0339 * Change made to SOAP/JSON output processing to process partial fields supplied by application. Previously the MCS-COUNT had to account for a complete data field. 2016/07/30 2.5 R0 - 0338 * csmon will now scan for Session-Id value in URL for POST message types The Session Id is always scanned for as a cookie (i.e. Set-Cookie: ) * csmon will now check for a compromised control file (/tmp/connserv.pid) 2016/06/24 2.5 R0 - 0337 * Build for LINUX 6 32 & 64 bit the VB-ISAM support modules for use with COBOL-IT 2016/06/11 2.5 R0 - 0336 * The change made in build '2009/02/23 2.5 R0 - 0151' is disabled if the terminal Erase character is a Ctrl-H. This now forces Ctrl-H (ie. Backspace) to always be handled as a Backspace and not a Delete key. This is for ASYNC terminals only. 2016/05/25 2.5 R0 - 0335 * For batch programs using STTFH, the default is now such that STTFH will read LINE SEQUENTIAL files by itself. If you want the COBOL I/O module to do the reading put STTFHLS=N into the environment. For example setenv STTFHLS N export STTFHLS=N * Improve handling of @ASG,X (lock file) in ECL processor Now all @ASG will check if the file was locked by ASG,X in some other job If the file is locked, the name of the job having it locked is displayed * Fixed TIP/dbi issue emulating ISAM files via TIPFCS to restore sequential position after a TIPSUB * Changes to csmon to increase buffer size Content-Length has not been read yet 2016/05/04 2.5 R0 - 0334 * Fixed some TIP/dbi issues with combining PIC X OCCURS fields into a single column and some DML preprocessing issue with DATABASE-KEY * TIP/ix now defaults to reading session.conf when a new session starts up If you do NOT want this done, then add PARAM SESSIONCONF=NO to tipix.conf 2016/04/25 2.5 R0 - 0333 * If tipmon finds an invalid I/O buffer size request it aborts the transaction as this is likely something gone astray * TIP/dbi fix to better handle SUPPRESS SET (and SUPPRESS ALL) 2016/04/15 2.5 R0 - 0332 * TIP/dbi fix to handle reconnect when Oracle instance does a fail-over * TIP/dbi validate and correct bad Dates before they go to Oracle * 'status' numbers displayed will handle more digits (larger values) 2016/04/12 2.5 R0 - 0331 * Sub-System: 'ssctl ping ' will check that routines are alive and well * Fixed error in TIPFCS handling of FCSS files related to NFS file locks 2016/04/07 2.5 R0 - 0330 * TIP/dbi will confirm Oracle is alive and connected on each IMPART if env var _FOCHK = Y 2016/04/05 2.5 R0 - 0329 * TIP/dbi fix for DBIXFH for indexes that allow duplicates * TIP/dbi will reset SESSION parameters on Oracle status 1843 * Improvements to record locking for shared FCSS files * Implement feature for caching defined number of FCSS records in memory for defined maximum number of seconds * PIB-HOST-ID value is set via tipix.conf PARAM HOSTID= * PIB-HOST-TYPE value is set via tipix.conf PARAM HOSTTYPE= 2016/03/23 2.5 R0 - 0328 * Fix problem that was resulting in CDA not getting set with correct data. It was keeping data from last program used. This is now fixed. 2016/03/18 2.5 R0 - 0327 * TIPFCS will wait up to 2 seconds for lock on FCSS record * Tidy up logging for when the log file reaches the MAX size * An environment variable MAX_LOG_SIZE may be set to a number which is the maximum number of K that the log file may grow to Default is 100 * Add some checks for loop condition with CITA interface * TIP/dbi II for TIPFCS will now return PIB-NOT-FOUND for an FCS-SETL when the key is higher than last record in file 2016/03/09 2.5 R0 - 0326 * For DMS2200 schema TIP/dbi will now default NLS_DATE_FORMAT to YYYY-MM-DD If you want it to revert back to YYYYMMDDHHMISS add the following schema clause: DATE IS "NO-RDMSDATE" * Fix to JSON/XML processing module for end of data check and also computing location of fields under nested OCCURS * Fix MCS problem selecting correct 'help text' for a field when the MCS format was defined to start at other than row 1 on the screen A fix for TIP/fe for this problem will be coming in some time 2016/03/04 2.5 R0 - 0325 * Check for addtional Oracle status that means Oracle is no longer connected * Add some checks for race condition with CITA interface * TIP/dbi for DMS, if env var _RDLCK = Y then promote OPEN area UPDATE to be PROTECTED UPDATE This means all FETCH impose lock at FETCH time rather than MODIFY time 2016/03/02 2.5 R0 - 0324 * Fixed MCB read issue with wrong status being set * Fixed possible CPU loop in tipixcita 2016/02/15 2.5 R0 - 0323 * Fix dbischema to create INDEX for all parts of a FOREIGN KEY * Changed UCSSNAP to write to both application log file and defined PRINTER file * Check for large enough I/O buffer for very large TIPLIST usage 2016/02/03 2.5 R0 - 0322 * Fixes to support COBOL-IT. genapi -O : will now create a directory $TIPROOT/libcit and that needs : to be used for linking your applications when using COBOL-IT 2016/01/21 2.5 R0 - 0321 * Implement feature to ECHO heartbeat message back for CITA interface 2016/01/12 2.5 R0 - 0320 * TIP/dbi II updated to handle UNLOAD TO 'file' SELECT .... * If TIP/ix system does not startup and is complaining about shared memory Run: tipinstall -L 0 This will reset the shared memory backing file. Then do 'tipctl boot' 2016/01/06 2.5 R0 - 0319 * Fixed problem with SOAP interface on HPUX platform 2016/01/01 2.5 R0 - 0318 * Changes to csmon to set KEEPALIVE on socket 2015/12/03 2.5 R0 - 0317 * Fixes for 'dbipre' for some EXEC SQL processing 2015/11/20 2.5 R0 - 0316 * Fix problem with dbireload when DBKEY value was more than 32 bits would hold. This required some data structure changes so if you are using TIP/dbi you will need to recompile all of your batch COBOL programs with this update. * Changes made to support COBOL-IT version 3.9.x 'maketipcit' script to recompile the TIP/ix COBOL modules using the COBOL-IT compiler 2015/11/11 2.5 R0 - 0315 * Fix problem with tipinstall during initial install of TIP/ix 2015/11/01 2.5 R0 - 0314 * Fix coding error related to SOAP JSON output messages * Changes to MCBDEF-UCOB for 64 bit systems 2015/10/08 2.5 R0 - 0313 * Fix coding error related to SOAP XML output messages Some messages would get truncated when there was a Group item in the data description 2015/09/19 2.5 R0 - 0312 * Fix coding error related to use of TIPMSGXO 2015/09/16 2.5 R0 - 0311 * Fix for the TIP/dbi II EXTFH module called DBIXFH to return status 23 on START GREATER THAN OR EQUAL if there is no record to read 2015/09/09 2.5 R0 - 0310 * TIP/dbi II, dbischema accepts the clause in the schema header: DATABASE-KEY IS n Where n is a number from 4 thru 8. The default is 4. This defines that the DATABASE-KEY should be larger than 4 bytes. *** If you are using TIP/dbi (DMS or RDMS) it would be a good idea *** *** to do some testing before placing this release into production *** * TIP/dbi enhanced to handle dates in the format used by ER TDATE$ The Date format for this is MMDDYYZZZZZ where ZZZZZ is the number of seconds past midnight * armsort/os3sort fixed a problem with parsing the control statements 2015/07/19 2.5 R0 - 0309 * Make parsing of SOAP/XML more flexible by allowing or or etc... to begin the XML data The matching is required to close it where 'whatever' was the name used to open it. Also ignore all attributes in 2015/07/08 2.5 R0 - 0308 * New TIP/dbi II schema clause: SIGN IS ASCII and is appropriate for former OS3 customers The TIP/dbi II schema clause: SIGN IS EBCDIC may also be used and is appropriate for former OS2200 customers The COBOL compiler needs to use a matching compile setting 2015/07/01 2.5 R0 - 0307 * Fix for SOAP/XML processor to handle nested OCCURS * TIP/dbi II, dbischema accepts the clause in the schema header: KEEP VARCHAR ALL This uses VARCHAR2 for all PIC X fields and also removes trailing spaces from the field for storage and WHERE clause usage; * Improve handling of @ASG,X (lock file) in ECL processor 2015/06/23 2.5 R0 - 0305 * See TIP/ix Installation manual for description of PARAM QBLCHECK (tipix.conf). The default for QBLCHECK used to be 0, meaning NEVER but that was changed to check and do compression of the QBL files whenever they reached the max size defined by PARAM QBLMAXSIZE. This update puts the default for QBLCHECK back to NEVER. Also, the default QBLMAXSIZE is now 5MB. * More fixes for TIPMSGXO, TIPMSGXI * readjrn -c will attempt to detect and repair large chunk of garbage in middle of the journal file 2015/06/09 2.5 R0 - 0304 * Fixed problem with 'dbiexpimp' that was duplicating data during unload * New TIP/dbi II schema clause: KEEP VARCHAR ALL which will retain VARCHAR column type even for columns which are part of an index. The default is any column that is part of an index should be defined as CHAR type. * Fixes for TIPMSGXO, TIPMSGXI * Improvements to generating DMS unload programs using dbibldul 2015/05/29 2.5 R0 - 0303 * All Linux, MAC OS, Sun Solaris versions of TIP/ix are now built with GnuCOBOL 2015/05/28 2.5 R0 - 0302 * Initial release of TIPMSGXO, TIPMSGXI for very large data over SOAP interface for customer testing 2015/05/13 2.5 R0 - 0301 * Added ENCRYPT support to TIP/dbi II. In Oracle the column is given the ENCRYPT defintion. In the RECORD definition add. Example: ENCRYPT (CM-DATE, CM-PK-DATE) ENCRYPT CM-DAY-OF-YEAR * If a column is being used by the application to hold a DATABASE-KEY, it needs to be defined so that the database reload procedure knows to update the value. Such DBKEY fields should be PIC 9(18). In the RECORD definition add. Example: DATABASE-KEY (MY-DBKEY, THE-DBK) 2015/05/04 2.5 R0 - 0300 * Fixed TIPFCS problem with doing a sequential FCS-GET on a duplicate key when a record with the key value was marked as 'logically deleted' and there was another record with that same key value in the file. * Correction to TIP/dbi II 'dbischema' to handle field name of 'spool' 2015/04/28 2.5 R0 - 0299 * Change SOAP interface to send out ampersand (&) as & * Change to eclexec and the filename.stt files to include information about INDEXED file that have multi-part keys 2015/03/24 2.5 R0 - 0298 * Additional fixes in TIPFCS for when reading file sequentially and deleting records. (Follow on to builds 293& 283) 2015/03/02 2.5 R0 - 0297 * Add some additional safety checks to TIPFCS. If TIPFCS aborts, avoid changes to shared memory while dump is happening 2015/02/25 2.5 R0 - 0296 * When a SOAP reply message has 'Connection: close' the actual sending of the message will be deferred until the transaction(s) terminate. Also, in this condition if the transaction program does a TIPMSGI following TIPMSGO (with 'Connection: close') then the transaction will be aborted. 2015/02/24 2.5 R0 - 0295 * Additional work on solving the 'SOAP race condition'. If the reply message has 'Connection: close' then TIP/ix will wait for all of the running transactions to terminate before closing the session. 2015/02/16 2.5 R0 - 0294 * Reduce race condition for SOAP Transactional interface for when the client side may reuse a socket connection when SOAPLINGER=NO If the client side is going to reuse the open socket and you have LINGER=NO there is a race condition. This update reduces but does not remove the 'race'. Either change the client side to never reuse the socket or set SOAPLINGER=n where n is number of seconds that TIP/ix SOAP should wait for the next message 2015/02/05 2.5 R0 - 0293 * Additional fixes in TIPFCS for when reading file sequentially and deleting & re-adding records. (Follow on to build 283) 2015/02/02 2.5 R0 - 0292 * Fixed problem with common routines used for parsing COBOL syntax to resolve problems with tipcblxml, dbipre & cobcnv 2015/01/28 2.5 R0 - 0291 * All Linux & MAC OS versions of TIP/ix are now built with GnuCOBOL If you are using OpenCOBOL, you should upgrade to GnuCOBOL You may download a pre-built version of GnuCOBOL from the www.inglenet.ca website or after installing TIP/ix use the command: tipctl downloadgc If you do not want to upgrade to GnuCOBOL then you will need to run the 'maketipoc' script to recompile the TIP/ix COBOL modules using your OpenCOBOL compiler If you are using the Micro Focus COBOL compiler there is no need to run 'maketipoc' but you do need to run 'maketipcobol' 2015/01/21 2.5 R0 - 0290 * See the notes under build: 2013/02/17 2.5 R0 - 0237 for details on tipctl commands to download/install software * To download a copy of GnuCOBOL 2.1 for your system: tipctl downloadgc * To download&install a copy of GnuCOBOL 2.1 for your system: tipctl updategc * If already downloaded, then to install GnuCOBOL tipctl installgc gnuCobolxxxxxx.tar.Z * As of this release TIP/ix on Linux 7 (Redhat/Centos) is using GnuCOBOL * isreorg utility has new option '-c' which checks if ISAM file has any problems and then uses 'dpack' to rebuild the file if there is any problem If the file has no problems then the file is not re-built. 2015/01/12 2.5 R0 - 0289 * Fix coding error in build 288 * TIPFCS now uses two different semaphores when there are more than 1 Quick Before Look files being used. * Slight improvement in performance when more than 1 QBL file is being used * Corrected a race condition with the QBL file(s) 2015/01/08 2.5 R0 - 0288 * Semaphores are used to control access to critical operations such as writing data to the QBL file. Parameters to control waiting for a semaphore via tipix.conf PARAM SEMRETRY=n Defines retry acquire of semaphore at 'n' second intervals. Default is 1. A value of 0 indicates to wait forever until acquired. PARAM SEMMAXWAIT=m Defines max seconds to wait at 'n' second intervals. After 'm' seconds, if the second parameter is 'GIVEUP' then TIP/ix aborts the attempt to lock the semaphore. This will likely cause TIP/ix to shutdown. However, waiting forever could also cause a system stall that goes undetected for a longer period of time. Example: PARAM SEMMAXWAIT=120,GIVEUP Will retry locking the semaphore for up to 120 seconds then give up which will likely cause the system to shutdown. Example: PARAM SEMRETRY=1 PARAM SEMMAXWAIT=90 Will retry locking the semaphore for up to 90 seconds then go into a hard wait. * Improvements for Conversational SOAP interface for TIPMSGO the FCC & CURSOR mods are now processed 2014/12/10 2.5 R0 - 0287 * Due to changes to TQL for 64 bit platforms, you need to recompile all TQL programs after installing this upgrade if you are using a 64 bit version of TIP/ix. The script recomptql can be used to do the recompiles * New options for whoson: -i shows I/Os, -v shows average I/Os, -r shows average response time Each of -i, -v, -r may be following by a number and only those users that exceed that value will be shown. Eg. whoson -r0.50 shows only users whose response time exceeds 1/2 second * New option for status: status r - list programs and show average response time status ra - list programs and show average I/O per transaction * Fixed problem with 'tipix' hanging if TIPXCTL done immediately after TIPLIST * Added SSL support to connection server for Conversational SOAP interface using OpenSSL. Only available on LINUX version at present. 2014/12/01 2.5 R0 - 0286 * Improvements for Conversational SOAP interface 2014/11/22 2.5 R0 - 0285 * Working on the new SOAP interface (csmon is still in testing mode) * whoson no longer displays the message queue id (Qid) whoson -q - Will display the message queue id (Qid) 2014/11/19 2.5 R0 - 0284 * whoson -I - Will display the IP address of the client 2014/11/17 2.5 R0 - 0283 * New additional tipix.conf option for PARAM WEBTIMEOUT; PARAM WEBTIMEOUT=min,LOGOFF If LOGOFF is defined, then after 'min' minutes of a program waiting for the next input, the program will be aborted and the user forced to log off TIP/ix * Fixed problem in TIPFCS, when reading file sequentially and deleting records. It was skipping every other record & this has been corrected. * In session.conf you can now add ALLOW & DENY keywords within any section. ALLOW=ipaddress or DENY=ipaddress These can be used to ALLOW or DENY specific IP address from connecting to the given port. An asterisk (*) is a wild card. Example: ALLOW=192.168.*.* DENY=172.43.10.88 You may have multiple ALLOW & DENY statements. 2014/11/11 2.5 R0 - 0282 * eclexec: @JOBS improved to show if job is waiting for a file lock and which other job has the file locked 2014/11/07 2.5 R0 - 0281 * Fixed problems with SOAP Transactional interface * Build TIP/ix for Linux 5 with more support for large files (over 2GB) 2014/11/05 2.5 R0 - 0280 * When armsort is sorting an ISAM file and creating a Line Sequential output file, and if the records have binary data, then the Micro Focus style of NUL insertion is done to the data records written out 2014/11/01 2.5 R0 - 0279 * Fixed problem with new SOAP interface (csmon) (csmon is still in testing mode) 2014/10/22 2.5 R0 - 0278 * New features for support of SOAP Web Services. If you are interested in this or if you currently use the old feature request the latest documentation and review it. TIP/ix will DEFAULT to supporting SOAP in transactional mode unless SOAPLOGIN is declared. If you want it to use 'conversational mode' of operation add the following to the tipix.conf file PARAM SOAPCONVersational=YES Or add CONVERSATION=YES to the session.conf file for the TCP/IP port that is to be used for conversational SOAP interface. * A new module called csmon is now used to manage conversational SOAP sessions. The program csctl can be used to manage this program. 2014/10/08 2.5 R0 - 0277 * Fixed problem with BATFCS interface. (It was clearing PIB-DETAIL-STATUS by mistake) 2014/09/29 2.5 R0 - 0276 * Fixes for problems that happen with TIP/dbi FCS access when an Oracle tablespace data file exceeds 1 million blocks in size. For an 8K block size that means a limit of 8GB in the datafile is all that is handled. There is a new schema directive: DATABASE BLOCK nnnn RECORDS Where 'nnnn' is 4096, 2048 or 1024. The smaller the number the larger the data file can be. For 8K blocksize and 2048 the file could grow to 16GB, For 8K blocksize and 1024 the file could grow to 32GB. For 8K blocksize in the Oracle database and 4096 the largest file is 8GB. This change has been made to both the old TIP/dbi and TIP/dbi II. The default value is now 2048. The old value used was 4096. * isreorg will now use new key/index information defined via the -k parameter even when reoganizing an existing ISAM file. Previously you would have had to export and import the data to a new file to change the index definitions * New feature for 'Sub-Systems'. A Sub-System is a COBOL subroutine that runs as a separate process and retains all of its state information from CALL to CALL. See the TIP/ix Installation manual for details on setting this up. 2014/09/18 2.5 R0 - 0275 * Fixed problem with PARAM TIMEOUT=mn,LOGOFF and using TIPTIMER call 2014/09/11 2.5 R0 - 0274 * New additional tipix.conf option for PARAM TIMEOUT; PARAM TIMEOUT=min,LOGOFF If the LOGOFF is defined, then after 'min' minutes of a program waiting for user input, the program will be aborted and the user forced to log off TIP/ix * A correction was made to the response time computation. It had been overstated and is now correct to measure time between arrival of the input message and the first output message for each transaction. 2014/08/17 2.5 R0 - 0273 * TIP/dbi II 64-bit mode now uses an 8 byte binary field (PIC S9(18) COMP-4) to store the DATABASE-KEY for DMS/2200 programs. * If you are currently running a 64-bit version of TIP/ix, then after installing this build you need to recompile all of your TQL records and programs. There is a script called 'recomptql' which can be used to recompile 2014/08/07 2.5 R0 - 0272 * Additional corrections for new conversational SOAP interface * Fixes to armrpg to handle over printing 2014/07/16 2.5 R0 - 0271 * Corrections to scansrc for OS2200 migration issues * Correction to socket interface for HPUX * Fixed default setting for TIPDMS for dbischema to be consistent * Fixed formatting of JSON messages for SOAP interface 2014/06/16 2.5 R0 - 0270 * Fix problem with clearing MCS-DATA during MCB batch connected session * New option to display time of last input message via: whoson -b 2014/05/23 2.5 R0 - 0269 * New options for tipix.conf to control usage of 'tipix -u user' PARAM CHANGEUSER=NO - indicates that no one except 'root' may assume the identity of another user PARAM CHANGEUSER=MASTER - indicates that only a TIP/ix user who has master level security may assume the identity of another user If CHANGEUSER is not defined, then you may use 'tipix -u userid' provided you know the password for 'userid' 2014/05/15 2.5 R0 - 0268 * TIPFCS has been enhanced to support ISAM files with SPLIT KEYS. ***** This was previously not supported. ***** TIPFCS will now handle such files but 'smfile' still has no way to define them so TIPFCS can only work if the ISAM file was created by a batch COBOL program. A 'Split Key' may be defined in COBOL like the following: ALTERNATE RECORD KEY IS SPLIT-KEY2 SOURCE IS CM-TELEPHONE,CM-MACHINE WITH DUPLICATES For TIPFCS, whenever there is a 'key' field parameter which is for an index of a 'Split Key' make sure the 'key' field is a concatenation of all parts of the key/index TIPFCS can handle split secondary keys with up to 5 parts. * ddu and status will also now handle 'Split Keys' in ISAM files 2014/04/28 2.5 R0 - 0267 * Fixed a problem with TQL related to programs having PASSWORD PROTECT * Fixed armrpg to better handle RPG code that is not 100% correct 2014/04/15 2.5 R0 - 0266 * New armrpg options (-a -mis -pa -P). See armrpg usage information for more details. * Some cleanup of compiler warnings on MAC OS 2014/03/21 2.5 R0 - 0265 * Fixed problem with 64 bit operation on Linux and MAC OS 2014/02/23 2.5 R0 - 0264 * Change to D-ISAM 7 code for use with Micro Focus batch cobol programs to cause a READ NEXT from an empty input ISAM file to return EOF (status 10) instead of status 46 * Many new features for support of SOAP Web Services. If you are interested in this or if you currently use the old feature request the latest documentation and review it. TIP/ix NOW DEFAULTS to supporting SOAP in conversational mode. If you want it to revert back to the old original 'transactional mode' of operation add the following to the tipix.conf file PARAM SOAPCONVersational=No PARAM SOAPLINGER=NO 2014/01/23 2.5 R0 - 0263 * eclexec @SYM with no ,U used interactively will ask user if they want all cycles removed or just the cycle printed * eclexec @SYM with no ,U will only remove the cycle printed * eclexec @SYM with ,X will remove all cycles of the file after printing 2014/01/22 2.5 R0 - 0262 * For AIX & LINUX, LDAP is now completely optional * Add 'tipinstall -h' option to display usage information 2014/01/04 2.5 R0 - 0261 * Added retry/abort logic to ERACSF/ERXCSF functions This is to avoid a complete hang if something goes off the rails 2013/11/22 2.5 R0 - 0260 * eclexec option to delete files based on @VIEW selection @VIEW,X qual*file,daysold Example: @VIEW,X co-posts,240 Will ask to delete all files in the co-posts qualifier that are older than 240 days @VIEW,XY qual*file,240 Will automatically delete all files in the co-posts qualifier that are older than 240 days without asking permission to proceed So the ,X option means to delete and ,Y option means to assume Yes answer * eclexec Fixed problem with @start xyz when there is a file called xyz as well as xyz.ecl * New commands portup/portdown to close (or open) TCP/IP ports that TIP/ix may be listening on. portdown 256 would close down port 256. You may also use generic port names: UTS or INT1 refers to UTS over INT1 ports SOAP refers to the port defined for SOAP/XML CITA or AION refers to the port defined for CITA interface UA or UNIACCESS refers to the port defined for the UniAccess ODBC interface To close down access to the Infoconnect UTS port(s) and wait for current users to terminate on their own: portdown UTS To close down access to the Infoconnect UTS port(s) and force termination of any active users: portdown UTS FORCE To get a list of current status of the ports: portup -l 2013/10/26 2.5 R0 - 0259 * New options for eclrc (control file) JOBEMAIL=NO For jobs with a delayed start time, the Linux/Unix 'at' utility is used. This parameter indicates that an email should not be sent when the background job terminates 2013/10/13 2.5 R0 - 0258 * tipix.conf PARAM TIPLISTSIZE=nnn lets you define how large a buffer should be used to transmit TIPLIST data from TIP/ix to TIP/ws. The default is 2560 bytes. Can not be larger than PARAM MCSBUFSIZE 2013/10/02 2.5 R0 - 0257 * New armrpg option -C to indicate use of DECIMAL IS COMMA armrpg support for RRDS, KSDS & READ01 file device types 2013/09/18 2.5 R0 - 0256 * Added eclrc BLOCKJOB parameter BACKGROUND=NO which will prevent the named job from being run in background. Example: BLOCKJOB=TSTPR BACKGROUND=NO * For Linux, if eclexec has started an application program which then goes into some kind of CPU and/or I/O loop the following option may help to figure out what is happening. To collect a trace log file using 'strace' and 'gdb' do: @jobs jobname -T Or from in eclexec: @jobs,t jobname * Fix TIP/dbi II dbipre to check for FETCH|STORE generic-record-name and then also insert code to copy LOCATION MODE DIRECT records with an AREA-KEY to DIRECT-DBK OF DMCA so TIP/dbi knows what record should be accessed 2013/08/28 2.5 R0 - 0255 * New options for eclrc (control file) LOGEXPIRE=nD indicates to remove daily log files older than 'n' days CATREMOVE=YES indicates to remove an old data file with current cycle value if it exists @CAT,I will also remove any old data file of the same cycle as just advanced to * Fixed TIPFCS problem with doing an FCS-GET on a duplicate key when a record with the key value was marked as 'logically deleted' and there was another record with that same key value in the file. 2013/08/21 2.5 R0 - 0254 * TIP/dbi II: fixed problem with SORTED SET DESCENDING DUPLICATES FIRST Problem introduced in build 2012/04/22 2.5 R0 - 0217 Data was being loaded correctly by dbireload but if a DUP was later stored it was put in the wrong order (like DUPS LAST) * On Linux eclexec sometimes hangs on a 'futex' system call. To free a stuck job do one of the following: @jobs -h Or from in eclexec: @jobs,h If you add to eclrc: FREEFUTEX=YES then any job detected to be hung will be freed immediately 2013/08/11 2.5 R0 - 0253 * Add code to 'tipdtp' to verify pointer during session abort * New TIP/dbi II schema clause: CONCATENATE TRANSACTION END which indicates that for programs using more than one schema such as a DMS and an RDMS schema, if one does Commit/Rollback then the other is also automatically Commit/Rollback processed 2013/08/08 2.5 R0 - 0252 * New eclexec option for PRINTCOMMAND and SYMBQUEUE is KEEPOVER which will retain data lines doing over printing. * Fixed eclexec problem with option to start job in background @start myjob -b * If any log file reaches 50MB in size it will now be assumed have some runaway condition and turn logging off. * TIP/dbi one more change of memcpy to memmove * All TIP/ix code for Linux now uses memmove instead of memcpy * Fixed error in calculating DATETIME for UniAccess RPC API 2013/07/26 2.5 R0 - 0251 * Changed a subroutine used by TIP/dbi and TIP/dbi II to use 'memmove' instead of 'memcpy'. A recent change in the Linux glibc for 'memcpy' results in severe data mangling if the 'from' and 'to' fields overlap in memory, and the copy 'from' field falls on a 256 byte address boundary in the machine and it has a newer CPU like an i7 then using memcpy for an overlapping shift results in data mangling. 'memcpy' was being used to shift a numeric value to insert a decimal point when converting from COMP to display for storing by Oracle. Now 'memmove' is used by TIP/dbi which is documented to work with overlapping memory moves. On all other platforms and even older versions of Linux the 'memcpy' works as historically expected. <******************************************************************> 2013/07/24 2.5 R0 - 0250 * for UTS (Int1) session, 'fin' will send 'Terminal logged off' message * for UTS (Int1) session, do not roll screen on Invalid transaction message * Implemented @jobs -L to display ECL jobs in 'at' queue * Fixed problem in eclexec, parsing comment lines with a label 2013/07/10 2.5 R0 - 0249 * Fixed armsort to correctly handle environment variable TIPTYPEIN set to the value ASCII to indicate a normal text file as input. * TIP/dbi II schema now accepts CHAR 9 (field1, field2, ...) in record The CHAR clause tells TIP/dbi to treat the field as a CHAR column in the database. The CHAR 9 clause tells TIP/dbi to treat the field as a CHAR column in the database, but translate any SPACEs into ZERO in the field. * TIP/dbi II now accepts the following clause in the schema header: CHECK CHAR FOR NUMERIC This tells 'dbischema' to check for any field declared as CHAR, if the the field and/or all sub-fields are PIC 9 DISPLAY, then translate any SPACEs in the data field to ZEROs * TIP/dbi II fixed to handle SIGN SEPARATE fields for EXEC SQL 2013/06/11 2.5 R0 - 0248 * TIP/dbi fixed for FETCH NEXT DUPLICATE WITHIN 'set' USING field when 'set' is SORTED and DESCENDING order * Fixed EXEC SQL preprocessing of GETERROR statement to not require colon before each host variable * ERTERM now checks if application was connected to TIP or not 2013/06/01 2.5 R0 - 0247 * Fixed problem in CITA (aka AION) interface * Fixed problem in os3sort with reading an empty ISAM file * Fixed eclexec for rare abort issue * Fixed ssg to correctly handle empty string * Added BLOCKJOB directive for 'eclrc' for eclexec to prevent certain jobs from running at certain times of the day and/or days of the week * Implemented 'start-time' for the @RUN statement in eclexec 2013/05/15 2.5 R0 - 0246 * Enhanced trim, isreog & seqreorg to accept file names that represent files using the 2200 style of file names. If the file name starts with and @ then it is parsed as if it was an @ASG,CP filename and the resulting Unix path & filename is used. The environment variable TIPECLQUAL defines the default 'qualifier'. The environment variable TIPHOMEDATA defines the base directory. For example: trim -f -O @fileout filein will copy filein to the 2200 file defined by 'fileout' & change NUL to spaces during the copy trim -f -O '@qual1*myfile(+1)' mynewdata will copy 'mynewdata' to the next cycle of QUAL1*MYFILE & change NUL to spaces during the copy isreorg looks for -i filename & -i '@filename', -o filename & -o '@filename' seqreorg looks for -i filename & -i '@filename', -o filename & -o '@filename' * trim -B bgn:end will clear those column positions to SPACES if there is any byte between 0x00 and 0x20 2013/05/07 2.5 R0 - 0245 * Fixed error in os3sort utility * Fixed error in eclexec related to using @SSG * Fixed eclexec to set read/write permission on /tmp/ecl.nn/tipconswfle 2013/04/19 2.5 R0 - 0244 * Changes to support MF Visual COBOL 2.1 * eclexec has a simple pattern matching feature to select print disposition command. An interactive @SYM without the ,U will now ask if you want the file removed after printing. Before it would just remove it. * Fix TIP/dbi II dbipre to check for FETCH record RECORD dbkey when the schema clause DATABASE-KEY WITH RECORD is used that dbkey has the same record name as 'record'. If not then status 0008 Fixed dbipre to better handle variable qualification and subscripting. 2013/04/09 2.5 R0 - 0243 * Fix MCS handling for numeric fields for DPS & Zero suppression via InfoConnect session * eclexec updated to pass accunt/userid during @START processing * Fix os3sort (aka armsort) to correctly set record size for record sequential input files. * For armsort (@SORT) implement ACCEPT= ... OCT to test for octal value The octal value is picked up but then truncated to 8-bits for comparing It will also accept the data type of HEX followed by hexidecimal pairs and also the type SPC to indicate a value of all spaces. The following 3 examples are equivalent: ACCEPT=33,9,HEX,NE,202020202020202020,AND ACCEPT=33,9,SPC,NE,,AND ACCEPT=33,9,OCT,NE,040040040040040040040040040,AND * for armsort, fixed bug with SELECT= * TIP/dbi EXEC SQL, fixed problem with allocation of storage for numeric work fields 2013/03/22 2.5 R0 - 0242 * Added UCSINFO$ subroutine * New utility called 'dbiunl' to handle RDMS UNLOAD TO FILE The program looks for a 'columns.tbl' in $TIPROOT/conf which should have been created bu 'tiprdms' when loading the RDMS tables * Fix to cobcnv for PIC H9 conversion to PIC 9 COMP * Fix dbipre to insert 'INTO' for EXEC SQL INSERT tablename statement * Fix dbipre to handle :varname (pos:len) - Reference modification * Improve error messages from armsort/os3sort 2013/03/12 2.5 R0 - 0241 * Back out change to TIP/dbi to return 'first of set' following the end of set status. This effectively treats an instance of a SET as if it was a ring. If the schema has the clause: ALLOW FETCH AFTER END then TIP/dbi will return 'first of set' following 'end of set' status. The default behaviour is that TIP/dbi returns 'end of set' until something causes the set currency to change such as a FETCH OWNER or FETCH FIRST. 2013/03/08 2.5 R0 - 0240 * Fixed problem with new TIP/dbi II schema clause DELETE RECORDS which allows you to logically remove records from the DMS schema & database * Enhanced 'cobcnv' to look for IF PIC-X-field >= number and translate that into IF PIC-X-field >= 'number' It converts the numeric literal into a string so correct field comparison happens. Eg. IF MYPICX > 0 and MYPICX has all ZEROS, it tests TRUE. IF MYPICX > '0000' and MYPICX has all ZEROS, it tests FALSE. On OS2200 the test would have been FALSE. * Another fix for armsort to read sequential files using Micro Focus method of handling embedded binary data. A NUL (0x00) precedes each non-printable character. Also, fix to handle "large files" over 2GB in size on platforms that support it. 2013/03/05 2.5 R0 - 0239 * Fixed problem with TIP/dbi II USE AREA CODE option * Added support for ECL @TEST TEP & TOP operators * Fixed problem with run-time handling of EXEC SQL statements with passing parameters to Oracle * Fix armsort to read sequential files using Micro Focus method of handling embedded binary data. A NUL (0x00) precedes each non-printable character. * Fixed problem with UniAccess ODBC interface with a NULL CHAR field * eclexec now supports "date=ccyymmdd" on the command line to declare and alternate date to be picked up by Micro Focus runtime. Example: @start myjob date=130227 Runs the job, but sets up an MF COBOL (COBCONFIG) file with the date 2013/02/27. A notifying message is also written to the joblog file If you enter: @start myjob date=0227 it assumes the current year. You may also enter: @start myjob date=20130430 2013/02/23 2.5 R0 - 0238 * Fix eclexec to handle multiple @ADDs following an @XQT * Fix TIP/dbi to return 'first of set' following the end of set status This effectively treats an instance of a SET as if it was a ring * Enhanced STTFH to do its own reading of LINE SEQUENTIAL files OPEN INPUT And handle lines that are too long or too short plus CR LF as well a LF. Fixed to set cobol status 00 on good read. * Change to dbiunload for DMS schema with use of 'USE AREA CODE' clause * New TIP/dbi II schema clause ALLOW NO FOLD which declares that dbischema should never try to combine fields of an OCCURS into a single SQL column. The default is to combine the fields if they are all display data and the total length is less than 20 bytes. * New TIP/dbi II schema clause FOLD NUMERIC SIGN which declares that dbischema should try to combine fields of an OCCURS into a single SQL column even if the sub-fields are PIC S9. This used to be the default action. Now if the sub-fields are PIC S9 there will be no combining of fields into a single column to improve performance. This option is to allow the behaviour to revert back to the way it used to work. This option is not likely needed but was added just in case it was. 2013/02/17 2.5 R0 - 0237 * New armrpg option -vse to indicate conversion of IBM VSE RPG II programs * After installing this update you will have the following features: * New function for tipctl to download the next update for your TIP/ix system. Your current system that is running TIP/ix needs internet access for this. tipctl download tipctl will connect to ftp.inglenet.ca and check the version of the build available that matches the current Unix/Linux system and it will download XXXX.tar if the build is newer. Where XXXX is your platform type. If there is not a newer build a message is returned. If you want to force the download regardless then run: tipctl download force * New function to download/install the next update for your TIP/ix system. Your current system that is running TIP/ix needs internet access for this. tipctl update tipctl will connect to ftp.inglenet.ca and check the version of the build available that matches the current Unix/Linux system and it will download XXXX.tar if the build is newer. Where XXXX is your platform type. If there is not a newer build a message is returned. Following the download, tipctl then runs the 'install'. If you want to force the download regardless then run: tipctl update force * New function for tipctl to reinstall TIP/ix place the platform.tar file (eg. REDHAT5.tar) in a working directory and cd to that directory then run: tipctl install platform.tar You may also run: tipctl install platform.tar /my/local/tiproot Where 'platform.tar' is the TIP/ix release tar file you downloaded and /my/local/tiproot is an alternate location to install the software. If /my/local/tiproot is not defined then the current $TIPROOT value is used * To download the TIP/ic software run: tipctl downloadic 2013/02/08 2.5 R0 - 0236 * If TIP/ix FCS runs out of free memory it returns PIB-FULL status and the transaction had to decide what to do. Now if a PIB-FULL status is returned, the transaction will be rolled back and aborted. This is much like a DEADLOCK status. * If TIP/ix runs out of shared memory for key holding entries it was not freeing up the memory after the transaction aborted. It will now free up the memory. 2013/02/07 2.5 R0 - 0235 * Enhanced STTFH to do its own reading of LINE SEQUENTIAL files OPEN INPUT And handle lines that are too long or too short plus CR LF as well a LF * Fixes for cobcnv * Fixes to armrpg to handle /INCLUDE and correct edit mask issue 2013/02/03 2.5 R0 - 0234 * armsort updated to retain ISAM file naming convention for output file to be the same style as the input ISAM file * armsort/os3sort will also retain file permissions & ownership when copying from ISAM to sequentail and sequential to ISAM * For SOAP/XML, check for NUL in middle of data field and skip over that 2013/01/15 2.5 R0 - 0233 * Change to D-ISAM build so that 'fnctl' is used for file locking instead of lockf 2013/01/01 2.5 R0 - 0232 * Fresh build of TIP/ix for the New Year * Initial port of TIP/ix to Apple MAC OS X (Darwin/Intel) 2012/12/19 2.5 R0 - 0231 * New TIP/dbi II schema clause REMOVE RECORDS (name, name2) which declares the named records to be 'obsolete'. They are left in the schema but any reference to them results in a warning message at compile time and an error status at run-time. The $TIPROOT/log/HISTORY will also get the offending program recorded. * tipix.conf PARAM FCSVERIFY=NO if you do not want ISAM file updates to be verified at time the file was updated. This applies to new records and record with an index key change only. * eclexec will remove COBASLMF form environment if started in background And @START from a transaction may have this environment variable carried forward and that then confuses the batch COBOL program * Fixed problem for FCS sending Alert emails on HPUX Itanium * Fixed problem with UniAccess ODBC driver doing the 'Test driver' function * New feature: tipctl alert "Your message" will send the short message as an email to the address defined in tipix.conf with PARAM ALERT= Keep the message less than 80 characters 2012/11/16 2.5 R0 - 0230 * Improve support for UniAccess ODBC use of SELECT as well as RPC calls * Handle DECIMAL fields for UniAccess ODBC correctly * Preliminary support for UniAccess ODBC UPDATE/INSERT/DELETE statements * New 'chgcode' utility for making TIP/dbi DMS database changes and update all programs referencing changed fields * 'cobcnv' has new option to force COBOL verbs and/or variables to upper or lower case. See cobcnv usage information 2012/10/18 2.5 R0 - 0229 * Improvements to 'eclexec' @VIEW command to just display small files and @VIEW,E for a 1 line file will let you edit the line inline * eclexec: @VIEW,R will invoke 'tipview -x' to display the file one record at a time. In Hex & Character if the record has binary data This command only works with files that have LF as a record separator * Fixed problem with support of UTS INT1 over TCP/IP and DPS Some data fields near end of screen were getting cleared to spaces * eclexec will log via a 'fifo' to a logging server process. This allows more flexible control of the ECL log file * armsort (aka @SORT) now reads $TIPROOT/conf/sortchar.conf which allows you to change the sort order of the characters * TIP/dbi II dbipre changed to check for reserverd words used as column names and then enclose them in double quotes for Oracle. * Fix for armrpg for MOVE of numeric fields of different sizes * Fix for UniAccess RPC transactions to handle 'multi record sets' sent back for a single RPC 2012/09/19 2.5 R0 - 0228 * New tipix.conf option PARAM FCSREBUILDINDEX=YES This will cause TIPFCS to have D-ISAM check&rebuild the index if an ENOCURR status is reported on the read&lock which is done after a new record is added to the ISAM file. The ENOCURR status is likely an indication that the index has been corrupted. * Change to D-ISAM 7 code to detect DUPS AHEAD to verify it has a record number that is within the file range to avoid getting ENOCURR on isread * Improve 'usage report' for fopen * fopen may now be run to change the acces mode from shared to exclusive or exclusive to shared without requiring the file be fclosed first. This provides more flexible use of the ISAM file sharing features. 2012/09/14 2.5 R0 - 0227 * TIP/ix supports the InfoConnect UTS terminal emulator that uses INT1 protocol This update provides support for UTS60 style terminal emulation and DPS using COLOR options * TIP/ix also supports DPS COLOR processing options for Async Color terminal emulators such as putty in xterm mode. * TIP/ix has been provisioned for a future release of TIP/fe and TIP/ws that will also support the DPS COLOR processing * Change to InfoConnect interface to better handle grabbing all data off the screen * Enhancement to TIP/dbi SQL preprocessor to handle missing colon before a host variable * Change to SOAP interface to avoid early termination of the transaction 2012/08/28 2.5 R0 - 0226 * If a transaction is being rolled back and there is an I/O error on an ISAM file then TIPFCS must take some action as the rollback has not completed. If the ISAM file is NOT being journalled then force journal on If the ISAM file is being journalled then the file is closed and the rollback images are written to the journal file. A message is written to HISTORY and sent as email to 'PARAM ALERT=' email address. Someone then needs to check/repair the file and then do a 'rollfwd -y filename'. The rollfwd will effectively back out the transaction which was being rolled back when the problem happened. The do an 'fopen filename' and TIP can then continue using the data file since it has now been repaired. * isreorg utility has new option to skip records; option -e 2012/08/23 2.5 R0 - 0225 * More improvements for some rare rollback problems 2012/08/12 2.5 R0 - 0224 * Fixed bug introduced in change to ISAM code in build 223 * New file type for seqreorg -I linec & vlinec are LINE SEQUENTIAL with COMP data handled via Micro Focus trick for data <= 0x1f * TIP/dbi II, Fixed EXEC SQL to remove all trailing spaces from PIC X parameters to be more compatible with RDMS/2200 * If doing a 'rollback' then verify ISAM file index * tipctl boot, will check if system was not fully shutdown and do a shutdown * If rollback fails on start up, then on the next startup the QBL files will get repaired, if need be * Changed armrpg to set filename-LEVEL-INIT to TRUE instead of OFF during INITIALIZATION 2012/07/26 2.5 R0 - 0223 * Changed D-ISAM 7 code to detect DUPS AHEAD differently to resolve the issue found in build 222 * Another fix for armjclsr to work with OpenCOBOL and not require MF Cobol 2012/07/17 2.5 R0 - 0222 * Fixed problem with TIP/dbi handling of EXEC SQL statements when COBOL is using SIGN is EBCDIC style for PIC S9 DISPLAY fields. * Fixed armrpg for missing WHEN OTHER introduced in previous change * Fixed armjclsr to work with OpenCOBOL and not require MF Cobol * CAUTION: There is an issue with return of the PIB-DUPS-AHEAD status for TIPFCS and also the handling of the DUP-COUNT parameter on calls to TIPFCS. This is being worked on. * If you want to use the D-ISAM binary library released with TIP/ix for your batch MicroFocus COBOL programs use the following compile options: -L $TIPROOT/lib -m ixfile=cixfile +l disam If you use these parameters in a 'makefile' then it is coded as: -L $(TIPROOT)/lib -m ixfile=cixfile +l disam 2012/07/11 2.5 R0 - 0221 * New tipix.conf option PARAM FCSCHECKINDEX=YES This will cause TIPFCS to have D-ISAM verify the index whenever a record is updated and a key field was changed, or a record was added or deleted. If the index is corrupt then the index will be rebuilt. The rebuild is only done if TIP/ix has the file open for Exclusive use. Message will be written to the HISTORY file if anything was done. PARAM FCSCHECKINDEX=YES,n The 'n' is the interval to check index. Every 'n' record updates it will check the index. The default interval is 50. PARAM FCSCHECKINDEX=YES,n,REOPEN The 'REOPEN' parameter tells TIPFCS to close the ISAM file not defined to have exclusive use to TIP/ix and then reopen them as exclusive in order to rebuild the corrupted index. If the re-open fails a message is written to the HISTORY file and the file is unavailable until a person solves the problem. If you also had PARAM ALERT=email defined then a message is sent to that email address. * Fixed armrpg for misplaced WHEN OTHER and misplaced END-IF in DETAIL-OVERFLOW 2012/06/28 2.5 R0 - 0220 * Fixed armsort. It was looping with the new D-ISAM 7 2012/05/11 2.5 R0 - 0219 * In build 210 TIP/ix was updated to use D-ISAM version 7 from Byte Designs for handling ISAM files. It had been using D-ISAM version 3.2.1 This seems to resolve some compatibility issues between Micro Focus rebuild and D-ISAM dcheck utilities. However, there seem to be some issues if the old ISAM files had keys with HIGH-VALUES in them. TIP/ix is including a D-ISAM utility called 'dpack'. It is strongly recommended that you run 'dpack' on all of your ISAM files at least once to rebuild them and correct any potential problems. dpack isamfilename Example: dpack tspfile * dpack changed to retain original ISAM file permissions and naming conventions * eclexec now does more searching for file used via @START and @ADD inside an ECL job * eclexec @XQT,X prog will run the program and not intercept stdin/stdout * eclexec @ADD,I file will add the file on initial load of the job * eclexec @ADD,X file will add the file during execution of the job * isreorg changed to retain original ISAM file permissions and naming 2012/04/26 2.5 R0 - 0218 * Fixed problem with 'eclexec' when doing @DELETE of ISAM file created by COBOL-IT 2012/04/22 2.5 R0 - 0217 * eclexec now defaults to DEFERADD=YES. If you really want @ADD processed as the ECL is read by eclexec, then add DEFERADD=NO to your eclrc file * Fixed eclexec bug for temp file (@ASG,T) and later used with @ADD * Fixed several problems with support of UTS INT1 over TCP/IP and DPS * Improvements to the SSG processor * TIP/dbi II: fixed problem with SORTED SET DESCENDING DUPLICATES FIRST|LAST The duplicates where being placed in the wrong order * Improved queuing of output messages to match names better * Fixed CITA (AION) interface 2012/04/08 2.5 R0 - 0216 * Fixed problem with BATFCS that was causing an abort * Log some details to HISTORY file when TIPUSRST fails * TIP/ix use of D-ISAM version 7 changed to have files be more C-ISAM compatible so they work better with Micro Focus COBOL * Fixed eclexec problem when @START had more than 2 parameters 2012/02/29 2.5 R0 - 0215 * More Corrections to ECL & SSG processors (more work needed for SSG) * Corrected problem related to DPS when using INT1 or TCP/IP (InfoConnect) 2012/02/20 2.5 R0 - 0214 * Corrections to ECL & SSG processors * Report error if ECL label is too long and increase to max 15 chars 2012/02/07 2.5 R0 - 0213 * For SOAP/XML set TIP userid to defined by PARAM WEBTIPUSER in tipix.conf 2012/01/24 2.5 R0 - 0212 * TIP/dbi II schema record clause REDEFINES xxx IF expression USE yyy has been enhanced so that for LOCATION DIRECT records the database key value for PAGE-NUM and RECORD-NUM may be tested 2012/01/14 2.5 R0 - 0211 * For SOAP/XML messages in XML format: If XML tag is missing then leave COBOL field as LOW-VALUES If XML tag is present but no data, then leave COBOL field as SPACES If XML tag is present but no data and PIC 9 then leave as ZERO Before if there was no data then the COBOL field was left as LOW-VALUES so it was not possible to tell between 'not present' and 'no data' * D-ISAM 7 and 'tipfcs' are built to support 'large ISAM files' (> 2GB) on Linux, HPUX(IA64) & AIX (even in 32bit mode) 2012/01/06 2.5 R0 - 0210 * TIP/ix build for REDHAT 6.2 (CENTOS 6.2) in both 32 & 64 bit versions is now available * TIP/dbi II has been updated to recognize Oracle 11g * TIP/ix updated to use D-ISAM version 7 from Byte Designs for handling ISAM files. It had been using D-ISAM version 3.2.1 from 1992 * Preliminary release of support for UniAccess RPC transactions. RPC requests may be sent from Windows to TIP/ix via either the UniAccess ODBC driver or via MS SQL Server ODBC driver. 2011/12/12 2.5 R0 - 0209 * TIP/dbi II schema clause DATABASE-KEY WITH RECORD which causes an extra field to be generated inline to hold the RECORD name as well as the DBKEY value * TIP/dbi II implemented FETCH dbkey provided schema has DATABASE-KEY INCLUDES RECORD -- or -- DATABASE-KEY WITH RECORD * Users of TIP/dbi II will need to rerun dbischema & dbisubschema on your schema & subschemas and then recompile all batch programs which are using TIP/dbi II such as DMS programs. This is due to changes in the format of the data dictionary. * Fixed error in armrpg related to record which is all key 2011/10/27 2.5 R0 - 0208 * Fixed coding error in armrpg and added new option for OpenCOBOL support 2011/10/04 2.5 R0 - 0207 * New tipix.conf option PARAM TRANSUSPENDCDA=YES Will save the CDA on TIPSUSPEND PUT and restore the CDA on TIPSUSPEND GET This makes it easier for transactions using this feature to save and restore currency information in the CDA 2011/09/21 2.5 R0 - 0206 * Initial support for Micro Focus Visual COBOL compiler 2011/09/20 2.5 R0 - 0205 * Fixed problem related to TIP/ix running on HPUX 11.31 64 bit * Fixed problem with using %20 inside parameter value of SOAP GET message (A workaround is to enclose the value in quotes ") 2011/07/11 2.5 R0 - 0204 * Implement CGI_GETCONTENT to return data passed via CGI_PASSOFF 2011/06/17 2.5 R0 - 0203 * Fixed coding error introduced in Build 199 2011/06/03 2.5 R0 - 0202 * msgar DElete will do better checking and report if there was any problem removing the MCS format * Fixed problem with 'tipfcs' if it was sent a bad parameter value 2011/05/27 2.5 R0 - 0201 * TQL will do a TIPTIMER for 1 second every 20 times the 'Max Reads' value defined via 'tqlmon UC' Every 'Max Reads' records read TQL check for an input message from terminal and also displays the 'Working please wait' message * Code added to check for something smashing a value in shared memory 2011/05/12 2.5 R0 - 0200 * In session.conf specifying LOGSAVE=Y will cause previous version of log.tipixTERM file to be saved in the $TIPROOT/log directory * Fixed coding error related to support of COBOL-IT * Fixed problem with automatic detection of VB-ISAM files for COBOL-IT on SUN, HPUX Itanium & AIX systems 2011/05/02 2.5 R0 - 0199 * Fixed bug that was resulting in a COMMIT instead of a ROLLBACK when a SOAP/XML connection was broken * New option to have TIP/ix set the COBANIMSRV variable to a predefined value just before executing a transaction program. The value can be defined via smprog when setting the 'debugger option'. Then a programmer can set COBANIMSRV with the matching value and run 'cobanimsrv'. This will allow you to use the Micro Focus animator for transactions which are started on behalf of SOAP/XML, TIP/ic (WebTS), background or LEMS. This works with Micro Focus Server Express 5.0 and later. * If tipix.conf has PARAM PREVENTDEBUG=YES then any transaction defined with the debug options will have the debug option completely ignored. This might be something to use on a production system. 2011/04/22 2.5 R0 - 0198 * Fix bug introduced in build 196 when using TIP/dbi as an FCS Server for a file * If tipix.conf has PARAM SESSIONCONF=YES then $TIPROOT/conf/session.conf is checked for all users. This would allow you to turn logging on/off for specific end users via this control file. 2011/04/18 2.5 R0 - 0197 * Fix problem introduced in build 196 when using -x as FCS Server name for a file * Unixware 7.1.3 is now being used to build TIP/ix for Unixware 2011/03/03 2.5 R0 - 0196 * Preliminary support for COBOL-IT Cobol compiler Added for RedHat LINUX x86 32-bit, AIX 32-bit, HPUX Itanium 64-bit & SUN Solaris SPARC 32-bit versions of TIP/ix 2011/02/17 2.5 R0 - 0195 * Enhanced CALL ERACSF to allow invoking of Unix programs in addition to the normal ECL statements 2011/01/21 2.5 R0 - 0194 * If 'tipctl stop' is used log 'forced shutdown' to HISTORY file * Fixed 'dbiexpimp' to ignore trailing data on input records when loading to a table * eclexec should now display file sizes greater than 2GB. * Marker is placed at end of PIB to detect memory overwrite * Fix bug that was introduced in build 179 that was causing files to be left in the AFT until the user logged off 2010/12/08 2.5 R0 - 0193 * Using an ISAM file which is on an NFS file system with HPUX causes some problems related to file locking. As a work around a new 'File Access' option of "A" as been added which you can define via SMFILE. This sets the ISAM handler into 'single user' mode and does no file locking at all. If you use this option you might also want to isolate the file to a separate 'TIPFCS' process by defining an 'FCS Server' tag of something like -Z or -X etc. * Fixed eclexec problem when @FREE ABC was followed by @USE ABC This was resulting in the environment variable for ABC getting removed * Fixed @SORT (armsort) to provide better error messages if file was not defined Fixed @SORT (armsort) to allow length of key to be longer than 'guessed' record size 2010/11/23 2.5 R0 - 0192 * Fixed coding error in general semaphore management routine * Fixed problem in tipdtp when TIP/ic asks for an MCS format 2010/11/03 2.5 R0 - 0191 * eclexec changed to defer processing @ADD,E following @XQT until just before executing the @XQT to avoid timing issues related to data file * TIP/ix on RedHat Linux 5.x is now released built using OpenCOBOL 1.1 You may still use Micro Focus but it is not a requirement for Linux * New function for tipctl to install TIP/ic (Internet Connector) place the platform.tar file (eg. tipicREDHAT5.tar) in a working directory and cd to that directory then run: tipctl installic platform.tar * New function for tipctl to install OpenCOBOL as released from Inglenet place the platform.tar file (eg. openCobolREDHAT5.tar.Z) in a working directory and cd to that directory then run: tipctl installoc platform.tar.Z 2010/10/22 2.5 R0 - 0190 * Fixed problem with DD transaction aborted while DDU worked * Further improve 'tipctl stop' to avoid stalling during shutdown (Only implemented for 'tipctl stop' not 'tipctl s') * added code to avoid internal deadlock between use of semaphores and zombie processes 2010/10/01 2.5 R0 - 0189 * Fixed problem to correct parsing of the session.conf control file * Added option LOGMSG = Y|N to session.conf If defined for DMPP-2020 then the session input/output messages will get recorded in $TIPROOT/log/dmpp.log If defined for SOAP then the session input/output messages will get recorded in $TIPROOT/log/xml.log Where is the terminal name. * For SOAP/XML sessions with application debug logging turned on (LOGAPP=Y in session.conf) the XML input text is logged after the TIPMSGI and the XML output text is logged after the TIPMSGO * sections of the session/conf or tipix.conf config files may now be optional based on presence of a file or directory or on the host name 2010/09/30 2.5 R0 - 0188 * In session.conf when using LOGAPP=Y, the application debug log file will be appended to for SOAP & TIP/ic sessions unless APPPENDLOG=N is also specified. * Fixed problem with TIPMCS file for msgar & tfd on AIX platform 2010/09/14 2.5 R0 - 0187 * New function for tipctl to reinstall TIP/ix place the platform.tar file (eg. REDHAT5.tar) in a working directory and cd to that directory then run: tipctl install platform.tar You may also run: tipctl install platform.tar /my/local/tiproot Where 'platform.tar' is the TIP/ix release tar file you downloaded and /my/local/tiproot is an alternate location to install the software. If /my/local/tiproot is not defined then the current $TIPROOT value is used Of course, this feature only works for versions of TIP/ix after this one. * tipctl ping Tells most of TIP/ix to reread the tipix.conf parameters and reset them in the running system. This command will now also scan the $TIPROOT/patch directory and update the binaries to the $TIPROOT/bin directory setting correct permissions 2010/09/13 2.5 R0 - 0186 * Improved 'tipctl stop' to avoid getting stalled during shutdown * Enhanced semaphore routines to retry at 1 second intervals instead of waiting forever for a semaphore. This should avoid some potential stalls. In tipix.conf you may add PARAM SEMRETRY=n where n is the number of seconds Default is 1 seconds. If you set SEMRETRY=0 then it waits forever until the semaphore is acquired. 2010/09/10 2.5 R0 - 0185 * Check for bad pointer when allocating Active File Table entry and correct * New option for seqreorg -T rcsz to truncate records if need be * Fixed problem checking permissions in eclexec * armsort now checks for environment variable SORTWORK to point to directory for the 'sort' program temp files * armsort now checks for environment variable SORTTEMP to point to directory for 'armsort' temp files 2010/08/03 2.5 R0 - 0184 * Additional tipix.conf parameter for DMPP-2020 protocol PARAM DMPPACKOUT=n Defines how many output messages could be sent before the last input message must be acknowledged Default is 1. (ACK is sent just before the nth output) * Corrected problem with passing MCB (PASSOFF) messages larger than 5120 bytes 2010/08/02 2.5 R0 - 0183 * eclexec $F parameter for PRINTER definition command will get full file name if eclrc option SYMLINK = NO if eclrc option SYMLINK = YES, then $F is the file name without the .nnn cycle number * eclexec will enclose report file name in quotes following the -t parameter for the $B parameter replacement when building the Unix print command for @SYM The 1st parameter of @SYM is used if there is no 'banner' given on the @SYM 2010/07/24 2.5 R0 - 0182 * New option for seqreorg -F to get file information from TIP/ix (changed seqreorg to no longer be setuid root) * eclexec @STOP jobname can be used to kill another running job * eclexec fixed to recognize that file cycle was previously assigned for the @COPY command * tipmon enhanced to do some better clean up of orphaned session tables * Additional tipix.conf parameters for DMPP-2020 protocol PARAM DMPPACKTIME=seconds Defines how many seconds before the last input message must be acknowledged Default is 3. An ACK is also sent as soon as the transaction completes. (The old default was hard coded at 10 seconds) * If a DMPP2020 transaction aborts then the input message is written to $TIPROOT/log/dmppTERM.log where TERM is the terminal name. The text will appear before the message being logged Where 'Tranid' is the program running at the time and 'comment' is a terse description 2010/07/12 2.5 R0 - 0181 * Fixed TIP/dbi II problem with FETCH NEXT DUPLICATE if the application did anything to clobber the key fields in the record area. The correction will use data from the previous read of the record. * Enhance eclexec to better handle @mailx when invoking the Unix 'mailx' program @unixprg,P - 'P' indicates to send data via Unix pipe to 'unixprg' @unixprg,D - 'D' indicates to end each line with CR LF instead of just LF when sending via Unix pipe * Fixed 'cpygen' to translate variables names that are COBOL reserverd words to something else (as per cobcnv.conf) * New utility called 'tipview' for viewing report files on Unix TTY terminal * TIP/dbi no longer requires Oracle SID value be defined when using 'dbipwd' ORACLE_SID may be used from the environment and only UID/PWD defined via dbipwd * Fix bug in handling of DMPP2020 heartbeat loop * If TIP$KONS is defined COMSTORE = Write thru then do not init the data on tipctl start 2010/06/08 2.5 R0 - 0180 * Fixed to removed queued up PASSOFF transactions when CALL 'ABORT' is done. This applies to OS2200 applications using MCB * Fixed error in eclexec handling DELETE/ASG +1/FREE/ASG,A * Increased max FCS I/O processes from 80 to 128 * Additional tipix.conf parameter to define additional Unix groups for TIP/ix PARAM UNIXGROUPS=name,name2 For example, you may need to make TIP/ix a member of the Oracle DBA group or some local application group To define the max file size (default is unlimited) PARAM MAXFILESIZE=unlimited or nnnM * Correction for TIPSUSPEND to suspend and resume a transaction 2010/05/07 2.5 R0 - 0179 * Fixed problem so that WebTS 2200 PID value is retained from user session cookie called PIDPOOL_ID, otherwise differnt sessions could end up with same 2200 PID value * TIPPRINT on FCS-OPEN and the file is already open will now return PIB-DUP-AFT-NAME instead of PIB-FUNCTION * Fixed a race condition related to CALL 'DISCON' used by batch 2200 programs to dis-connect from TIP/ix * Additional tipix.conf parameters for SOAP/XML session PARAM XMLPREFIX=x 1 or 2 letters used to prefix a unique terminal name default is 'X' * tipmon validates user shared memory on logout. It will now catch itself aborting during this memory validation and assume the shared memory has been clobbered and then just dump it out for inspection 2010/05/03 2.5 R0 - 0178 * Add @JOBS command to eclexec to display list of currently active ECL jobs * Fix problem with 'input overrun' on DMPP-2020 protocol * Fixed problem in eclexec resolving @ADD QUAL*FILE/VER names * Fixed problem in eclexec with interactive @ADD * Fixed problem on cobcnv related to EXEC SQL conversion * Fixed problem with TIPGRPST * Fix to better handle a transaction doing CALL ABORT 2010/03/31 2.5 R0 - 0177 * New eclexec options -b to run job in background. So at Unix prompt: @start myjob -b Will cause eclexec to move into background and then run myjob * Fix problem with FCS-SELECT when an ORDER clause is passed 2010/03/22 2.5 R0 - 0176 * Correct TIP/ix to solve a problem introduced in build 2009/10/14 2.5 R0 - 0163 that would cause you to sometimes get the following message: "Error9, User record was Zero!" * Preliminary implementation of TIPSUSPEND to suspend and resume a transaction * New TIP/dbi schema clause: SIGN IS EBCDIC to tell TIP/dbi to use the EBCDIC style of signing PIC S9 DISPLAY fields. If Using Micro Focus COBOL you will also need SIGN=EBCDIC compile option * New tipix.conf option PARAM SIGNEBCDIC=YES to tell TIP/ix that The applications are using SIGN=EBCDIC compile option If using OpenCOBOL the option for this is -fsign-ebcdic for that compiler. * Corrected eclexec @CYCLE command to perperly rename files 2010/03/10 2.5 R0 - 0175 * eclexec will start execution of @START as it occurs in the ECL. If you would like @START to be deferred until the job reaches normal completion add DEFERSTART=YES to the eclrc control file. Then if the current fails, the @START is not done. @START,F overrides this and runs the job in foreground 2010/03/04 2.5 R0 - 0174 * Changes to TIP/ic & TIP/ix for WEBTS applications * cobcnv will insert reference modification if MOVE literal to PIC 9 field so the MOVE is treated like a PIC X move * Corrected to allow TIPXCTL during SOAP/XML processing 2010/02/15 2.5 R0 - 0173 * eclexec supports multiple labels with the same name by doing a forward circular search for the label from the current position in the ECL job * Additional tipix.conf parameters for DMPP-2020 protocol PARAM DMPPHEARTBEAT=minutes Defines how many minutes of inactivity before sending a Heart Beat message The method is often needed to keep the TCP/IP socket alive * Additional tipix.conf parameters for DMPP-2020 protocol PARAM DMPPOFF=minutes Defines how many minutes to wait for the next transaction. If nothing arrives within that time, then the socket is closed and waits for the message switch to connect back for more work * Additional tipix.conf parameters for Web Service support PARAM SOAPERROR=myext Where 'myext' is the name of the template file extention to use for sending back error messages on the SOAP/XML interface. The actual file name will be in $TIPROOT/tipsoa and called default.myext You can pick any name you like for 'myext' and make the file have what you want. * Attempt to better detect when DMPP-2020 socket has gone away on AIX * whoson -w Will report the time of the last transaction processed by the session * whoson -b Will report the time of the last heart beat message (DMPP-2020) * Also log any DISPLAY UPON PRINTER to any active application log file * smterm can use IP Address 'PORT#nnnnn' for defining TCP/IP port # session 2010/01/25 2.5 R0 - 0172 * New option for tipxblxml to define length of text for TIPMSGE tipcblxml -m 'TF$TSP1_' -e 34 XM-TSP1X Compiles the XML/COBOL data descriptions and assigns the TIPMSGE length to be 34 2010/01/24 2.5 R0 - 0171 * Improving support for WebTS * TIP/dbi II will not correct bad data in key field on a read so the read will fail * TIPMSGOV/TIPMSGRS are not supported by TIP/ic so these functions are not being passed to TIP/ic from TIP/ix. TIPMSGOV gets cahnged to TIPMSGO and TIPMSGRS is ignored. 2010/01/14 2.5 R0 - 0170 * Correct problem parsing SOAP 'POST' message header 2010/01/13 2.5 R0 - 0169 * Start of a New Year * Added extra checks for 'tipmon' to avoid abort during forced removal of user session 2009/12/18 2.5 R0 - 0168 * If write to JRN/QBL file is incomplete on first attempt then retry 2 more times before forcing the system to shutdown * Updates for improved 2200 migration * In TIP/dbi II a PIC 9 field may have BLANK WHEN ZERO to indicate if the value is ZERO, return BLANKs to the application * Add support for @XQT to eclexec as a link. With this you can run a single (former 2200) batch program * Added initial support for executing transaction programs as shared object modules instead of separate executables * Improved eclexec to handle @anyprog -opts as valid ECL statements * Improved dbiexpimp to better read/write flat files 2009/11/25 2.5 R0 - 0167 * If you installed build 164, 165, or 166 install this build to fix a problem which would have forced you to recompile all of your applications. This build (167) puts TIP/ix back to be compatible for previous versions It is critical that you install this build to replace build 164, 165 or 166. 2009/11/02 2.5 R0 - 0166 * Format of tipapi.conf file used by genapi and genmain has changed 2009/10/31 2.5 R0 - 0165 * Add AIX 64 bit build * Improved support for OpenCOBOL 1.1 A second directory called 'liboc' can be created with the API hooks for OpenCOBOL 1.1 (or later) using the following command: genapi -O Then when linking use -L$(TIPROOT)/liboc instead of -L$(TIPROOT)/lib 2009/10/22 2.5 R0 - 0164 * smsec updated to define execute option flags for 2200 transactions (XOPTS) * tipctl will read kons.conf to populate the KONS area with initial values when the system is started up * More checking of possibly clobbered shared memory table 2009/10/14 2.5 R0 - 0163 * TIP/dbi II (dbireload & tiprdms) are now compiled with _LARGE_FILES on AIX * Add new file type to 'smfile' of TIPFL which is for an OS/2200 TIP/HVTIP file All TIPFLs should be named as just a number. Eg. 00000299 2009/08/25 2.5 R0 - 0162 * Corrections to scansrc and TIP/dbi II for OS2200 migration issues 2009/08/18 2.5 R0 - 0161 * See 2008/09/25 2.5 R0 - 0144 for description of 'tipix -E' & 'tipix -e' If the end user terminal is a TTY and -E is used then stderr will be captured and written to $TIPROOT/log/PRINTER Normally for TTY sessions, stdout and stderr are not captured. tipix -o enables capture of stdout; tipix -O disables capture of stdout 2009/07/20 2.5 R0 - 0160 * TIP/dbi II has workaround to problem caused when using MS SQL Server and MS SQL Server encounters a deadlock situation. * Corrected TIP/dbi II DBIXFH module for coding error 2009/07/08 2.5 R0 - 0159 * Additional tipix.conf parameter for handling of DEADLOCK. PARAM DEADLOCK=DUMP this tells TIP/ix that on any deadlock status it should send a message to the user's terminal (if present) and then do a TIPDUMP and abort the program. The default behaviour is to return the PIB-DEADLOCK-DETECTED status and let the program decide what to do about it. When a deadlock has been detected the transaction has already been aborted and rolled back. * For TIP/dbi II you are now able to define the type of transaction concurrency you want to use for Oracle and SQL Server database. Following the SCHEMA NAME you may add one of the following clauses: TRANSACTION READ WRITE - This clause establishes statement-level read consistency. - For SQL Server this implies ISOLATION LEVEL READ UNCOMMITTED TRANSACTION READ COMMITTED - This clause establishes transaction-level read consistency. - If the transaction requires row locks held by another transaction, then it waits until the row locks are released. TRANSACTION SERIALIZABLE - This clause establishes transaction-level read consistency. - If a serializable transaction attempts to update any resource that may have been updated in a transaction uncommitted at the start of the serializable transaction, then the transaction fails. If the TRANSACTION clause is defined then it is used for both batch and online. If the TRANSACTION clause is not defined the default: - for online transaction programs is TRANSACTION READ WRITE for Oracle and READ UNCOMMITTED for SQL Server. - for batch is TRANSACTION READ COMMITTED. 2009/06/29 2.5 R0 - 0158 * In TIP/dbi II, correct the handling of DEADLOCK status Return PIB-LOCKED in PIB-STATUS and PIB-DEADLOCK-DETECTED in detailed status A transaction ROLLBACK would have already been completed on return to the application code. This matches the behavior using ISAM files. * Optional new feature to journal reads from an ISAM or DAM file. In smfile in the field for 'Journal :' you may also enter one of: R - To journal all random reads plus before & after images S - To journal all sequential reads plus before & after images A - To journal all random & sequential reads plus before & after images Y - To journal before & after images B - To journal before images only N - No journal at all 2009/06/17 2.5 R0 - 0157 * Change TIP/dbi II DBIXFH module to check for OPEN I-O and ACCESS DYNAMIC and then a random READ will change the sequential file position If the file is not ACCESS DYNAMIC, then a random READ does not affect the sequential file position 2009/06/10 2.5 R0 - 0156 * Fixed problem with 'Welcome' message appearing in IMA for User 'Start up' program. * New option for 'armsort' to tell it to treat MODE=SDF files like ACOB format armsort -a or set an environment variable ARMSORTSDF=ACOB; export ARMSORTSDF ACOB format is fixed size records with no record separator. This is like the Micro focus compile option SEQUENTIAL=RECORD MODE=UNIX or SDF is like the Micro focus compile option SEQUENTIAL=LINE Also, for input files defined as UNIX or SDF, armsort will verify that the first record does end with a CR or LF. But if no CR or LF is found it will assume the input file is MODE=ACOB and read/write fixed size records. 2009/05/12 2.5 R0 - 0155 * Fixed problems in 'tipdtp' related to using 'tipic' (Web Interface) * TIP/dbi II add support for NLSLANG schema clause NLSLANG IS "code" To define a value to override/define NLS_LANG env variable For performance it is important that the database and Oracle client applications like TIP/dbi use the same national language set. For example: NLSLANG IS "AMERICAN_AMERICA.WE8ISO8859P1". 2009/04/23 2.5 R0 - 0154 * Improving stability of 'tipdtp' to recover from badly formed messages * tipctl will check for 'patch' directory and install binary module on startup 2009/03/27 2.5 R0 - 0153 * Corrected TIP/dbi II problem in 'dbischema' for records which had FILLER fields as sub-fields of a REDEFINES. * Fix dbiexpimp to use password file created by dbipwd 2009/03/03 2.5 R0 - 0152 * New utility for TIP/dbi II called 'dbipwd' for creating .pwd control files to hold encrypted User/Password information for connect to database. Supported for both Oracle and ODBC database 2009/02/23 2.5 R0 - 0151 * For ASYNC terminals the 'Delete' key was being handling like 'Backspace' This has been corrected so the 'Delete' key does delete the character under the cursor 2009/01/08 2.5 R0 - 0150 * New option for 'armsort' to tell it to treat MODE=SDF files like UNIX format armsort -u or set an environment variable ARMSORTSDF=UNIX; export ARMSORTSDF * Improvements to support for MCB, CMCB & MCB$ENT. Check out transactions using any of these APIs, they may need to be recompiled after installing this release of TIP/ix. * Added BLOB support to TIP/dbi II. (This is much like the RAW clause.) In Oracle RAW has a max size of 2000 while BLOB is much larger. TIP/dbi II has imposed a max size of 65530. On individual records and fields you can do things like the following: BLOB (CM-DATE, CM-PK-DATE) BLOB CM-DAY-OF-YEAR 2008/12/08 2.5 R0 - 0149 * Change TIP/dbi DBIXFH module to only do bulk data load for an OPEN file OUTPUT if there is an environment variable of schemaname_BULK defining how many records to load at once. For example if your schema name is 'SURV' then if you set: SURV_BULK = 5 Then on an OPEN OUTPUT, DBIXFH will table 5 records at a time before sending to the database. Note that if your program could get duplicate keys or other data errors during the WRITE then do not use this option. Also for it to be effective you would also want to define TIPDMSCOMMIT to a number equal to or larger than the BULK add array size. 2008/11/28 2.5 R0 - 0148 * Fix coding error in TIP/dbi II ODBC driver module 2008/11/18 2.5 R0 - 0147 * Fix TIP/dbi II file handler for Micro Focus to check correct duplicate status value during WRITE operation * TIP/dbi II dbischema compiler will check for a file $TIPROOT/conf/tipdbi.conf and if present copy/process the file just after collecting the SCHEMA NAME This allows you to have global options for TIP/dbi which would be used for all DMS schemas processed by TIP/dbi II. * TIP/dbi (II) has a new option for the DMS schema header. USE AREA CODE This option directs TIP/dbi II that for records which are in multiple areas all records should be stored in the same SQL table. NO USE AREA CODE A separate table is created for each Record/Area combination. (** This is the default) * TIP/dbi (II) added an option for the DMS schema header. TRIM NAME FOR INDEX The COBOL field name gets subscripts appended to create a unique SQL column name. If the total lenght would be too long then the COBOL name is chopped before appending the subscript value. (** This is the default for TIP/dbi II) NO TRIM NAME FOR INDEX The COBOL field name gets subscripts appended to create a unique SQL column name. The subscript is appended and then the result is validated and forced to be unique if needed. 2008/11/12 2.5 R0 - 0146 * TIP/dbi (II) added an option for the DMS schema header. LOW-VALUES ARE NULL When a COBOL field is all LOW-VALUES then the corresponding SQL column is set to NULL. On reading a NULL column LOW-VALUES would be returned to the application (** This is the default for TIP/dbi II) NO LOW-VALUES ARE NULL On reading a NULL column SPACES would be returned to the application (** This is the default for the old version of TIP/dbi) * Enhanced TIP/dbi II to better enable transition from the old TIP/dbi 2008/11/08 2.5 R0 - 0145 * Fixed problem with WEBSERVICE (SOAP/XML) if transaction does TIPMSGI/O and there is an XML rules file but no MCS format * TIP/dbi II (dbischema) changes made to avoid chopping the table name when the DMS record name is longer than 25 bytes. * fclose/fopen using a 'wildcard' will now be logged to HISTORY file * TIP/dbi II default in the schema header is REMOVE FILLER which means that if the last field of the record is FILLER that is not added to the SQL table as a column. If you want FILLER to become a column then add RETAIN FILLER. If you want all FILLER to be removed than add REMOVE ALL FILLER. * When TIP/dbi II has to split a large field into 2 or more parts so that each column is within the size limits of the SQL database, TIP/dbi II will append a sequential number to the field name to make it unique. Normally you would want this number to be reset to 1 for each record but for backward compatibility there is an option for the DMS schema header. NO SEQUENTIAL FIELDS BY RECORD continues the sequential number from one record to the next (This is the default for SUN platform) SEQUENTIAL FIELDS BY RECORD resets the sequential number to 1 for each record definition (This is the default for all other platforms) 2008/09/25 2.5 R0 - 0144 * Improve DPS mix of GETFL & READ calls so data area is not clobbered * Fix TIP/dbi II to better handle long data/record names * Fix TIP/dbi II to correctly compute size of PIC S999 SIGN TRAILING SEPARATE. * Fix TIP/dbi II to use Old TIP/dbi options if ORACLE7 SIZES defined * New option for 'tipix': tipix -E will capture output sent by transaction programs to 'stdout' and 'stderr' and log it to $TIPROOT/log/PRINTER but not display it on the terminal. The default is that any output from a transaction program to stdout or stderr is captured, logged and displayed on the terminal. Also, if 'stderr' is already being redirected to a file, then 'tipix' will not attempt to capture that at all and just leave it redirected. 2008/07/23 2.5 R0 - 0143 * Fix TIP/dbi II to correctly return fields of format PIC SV999 2008/07/07 2.5 R0 - 0142 * New feature to have TIP/ix limit to single sessions per terminal name. If a terminal defined via 'smterm' has a value of "S" in the 'Unattended' field, then when a user logs on with that terminal name all previous sessions using the same terminal name will be purged. For example: "Unattended operation (Y/N/B) ..... S" 2008/06/10 2.5 R0 - 0141 * Enchanced DATE support to TIP/dbi II Translate date of all ZEROS to minimum allowed date Translate date of all NINES to maximum allowed date For most database the maximum date is 9999-12-31 For MS SQL Server the minimum date is 1753-01-01 For MySQL the minimum date is 1000-01-01 For Oracle the minimum date used is 0001-01-01 On reading a date field with the 'maximum date' TIP/dbi returns all 9s On reading a date field with the 'minumum date' TIP/dbi returns all 0s * If you want a COBOL date field with a value of ZERO to have the SQL column set to NULL instead of the minumum date add the following clause to the TIP/dbi schema definition IDENTIFICATION DIVISION: DATE ZERO IS NULL This will cause any 'date' column that is NULL to be returned to the COBOL field as a value of ZERO. * Normally TIP/dbi II will fold an array with PIC X members where the total length is less than 20 bytes into just one SQL column. This is being done to improve performance by reducing the number of columns. 'dbischema' will emit a message the following to indicate it is doing the fold Note: Treating xxxx size nn as one column If you do not want this to happen you may add to the RECORD definition a clause NO FOLD name NO FOLD (name1, name2, ..., namex) You may also code NO FOLD ALL to prevent all such folding of data fields into single columns. 2008/05/26 2.5 R0 - 0140 * Fixed problem in old TIP/dbi that would result in a core dump of the TIP/dbi server I/O process. Recompile your old TIP/dbi schema and remake the I/O module after installing this update. * Fixed problem with aborting a distributed transaction that would cause TIPFCS to abort and take TIP/ix down. The problem was a race condition which may or may not happen depending on timing. * Fixed problems in TIP/dbi II ODBC interface for FCS-NEXT/FCS-PREV usage. 2008/05/19 2.5 R0 - 0139 * New TIPFCS function for files handled by TIP/dbi II MIRAM emulation FCS-COLUMNS allows you to supply a list of columns to be read 05 INVEN-SEL. 10 SEL-LEN PICTURE 9(4) BINARY. 10 SEL-LIST PICTURE X(64). MOVE 12 TO SEL-LEN ADD 2 TO SEL-LEN MOVE "PART_NUM,QTY" TO SEL-TEXT CALL "TIPFCS" USING FCS-COLUMNS INVEN-PACKET INVEN-SEL CALL "TIPFCS" USING FCS-GET INVEN-PACKET INVEN-RECORD Only the names columns plus any index columns will be read. This can be used in combination with FCS-SELECT. On the next transaction end point, the list of columns reverts back to all columns in the table. You can manually revert back to all columns by setting the column name list to an asterisk "*". The length of the text areas may from 4 to 1024. The FCS-GETUP, FCS-PUT, FCS-ADD functions will use all columns in the table regardless of FCS-COLUMNS. If the table has a lot of columns and you want to read only a few columns but from many records, then limiting the columns to be processed may speed things up. 2008/05/06 2.5 R0 - 0138 * Improvements to closing a remote (DTP) file to avoid race condition 2008/05/01 2.5 R0 - 0137 * If TIP/dbi II sees HIGH-VALUES in a key then all 9s will be given to SQL. * Preliminary release of TIP/dbi II support for EXEC SQL statements This allows the TIP/dbi user to mix SQL statements with DMLP and/or ISAM Read/Write via DBIXFH. TIP/dbi II provides the preprocessor for the EXEC SQL statements as well as the run-time support. This provides co-ordinated recovery for all database I/O. Please contact helpdesk@inglenet.com for more details. 2008/04/13 2.5 R0 - 0136 * TIP/dbi II now checks for too many fields in an index * TIP/ix startup now gives instructions to repair a damaged Quick Before Look file if the QBL file is damaged and the system can not start 2008/03/30 2.5 R0 - 0135 * For TIP/dbi & TIP/dbi II you are now able to define the type of transaction concurrency you want to use for Oracle database. Following the SCHEMA NAME you may add one of the following clauses: TRANSACTION READ WRITE - This clause establishes statement-level read consistency. TRANSACTION READ COMMITTED - This clause establishes transaction-level read consistency. - If the transaction requires row locks held by another transaction, then it waits until the row locks are released. TRANSACTION SERIALIZABLE - This clause establishes transaction-level read consistency. - If a serializable transaction attempts to update any resource that may have been updated in a transaction uncommitted at the start of the serializable transaction, then the transaction fails. If the TRANSACTION clause is defined then it is used for both batch and online. If the TRANSACTION clause is not defined the default: - for online transaction programs is TRANSACTION READ WRITE. - for batch is TRANSACTION READ COMMITTED. 2008/03/27 2.5 R0 - 0134 * Implement support for FETCH-WITH-LOCK flag for DMS/2200 programs in TIP/dbi II 2008/03/14 2.5 R0 - 0133 * Fixed problem in 'rollfwd' that was causing it to abort * Fix bug that was causing count of web users to increase even if there was insufficient memory to log them on. * Enchanced DATE support to TIP/dbi II You are now able to define a global default date format for the "schema" following the SCHEMA NAME and before DATA DIVISION. Example: DATE "YYYYMMDDHHMISS" Then on individual records and field you can do things like the following: DATE (CM-DATE, CM-PK-DATE) DATE "YYYYMMDD" (CM-SHORT-DATE, CM-SALE-DATE) DATE "YY%60MMDD" CM-PIVOT-DATE DATE "YYY+1800MMDD" CM-BASE-DATE DATE "YYYYDDD" CM-DAY-OF-YEAR If the date format is omitted then it defaults to the global date format. The Y is a place holder for a YEAR, MM for month, DD for day, HH hour, MI minutes, SS seconds If the Ys are followed by '%' then the digits after the '%' define a pivot year used to convert to a 4 digit year. In the above example if the YY value is below 60 then the year is 20YY else 19YY If the Ys are followed by '+' then the digits after the '+' are added to the Y value. In above example, the year is 1800 + YYY value. DD means day of month, DDD means day of year. 2008/03/08 2.5 R0 - 0132 * Fixed problem in TQL (OPEN) that was causing it to randomly abort * Fixes for TIP/dbi II ODBC interface for MySQL (InnoDB) & MS SQL Server 2008/02/21 2.5 R0 - 0131 * New utility to copy/convert sequential/relative files run seqreorg -h to get usage information * The ISAM utility has new options as well. see: isreorg -h 2008/02/14 2.5 R0 - 0130 * Fixed bug in eclexec related to @USE name,/Unix/Path/to/file * eclexec new keywords for 'eclrc' control file (/etc/default/eclrc) TPFTOTEMP=YES Indicates that TPF$ files should be placed in the job temporay file created by eclexec. NO means that TPF$ files will go to $TIPHOMEDATA directory YES is the default. APPEND_D=YES Any file referenced with an element will have .d appended to the directory name in the Unix file system. NO There will be no .d appended to file/directory that has elements. NO is the default. 2008/02/10 2.5 R0 - 0129 * TIP/dbi II with ODBC interface verified using MySQL (InnoDB) on Linux 2008/02/08 2.5 R0 - 0128 * Add checks for precompiling DMS programs if the DMS dictionary is out of date with the TIP/dbi II software 2008/02/05 2.5 R0 - 0127 * Fix bug in TIP/dbi II for online TIP/ix transactions that was causing folded columns to be processing in the wrong sequence resulting in some data getting destroyed. * Enhancements to scansrc/cobcnv for future migration project * TIP/dbi II performance improvment for ODBC interface For TIP/dbi ODBC to MS SQL Server, make sure you have Easysoft version: odbc-sqlserver-1.0.49-linux or later. 2008/01/17 2.5 R0 - 0126 * Code added to try and solve a race condition between tipfcs and TIP/dbi during a transaction commit/rollback. You will need to recompile I/O module if using old TIP/dbi. 2008/01/11 2.5 R0 - 0125 * New feature for 'tippcstm' (Transaction and Database interface thread manager) to search its environment by prefixing the user's group name(s) to the schema name and if present, then set the environment of the TIP/dbi II server process to _xxx from __xxx where 'xxx' is any of CON, DSN, SID, UID, PWD. This feature will allow you to have different users be connected to different instances of the database based on the user's TIP/ix group membership. By default this feature is disabled. To enable it add the following to tipix.conf: PARAM PCSGROUPSEARCH=YES * New feature to have 'tippcstm' completely reload its environment from the tipix.conf whenever a 'tipctl ping' is issued. Normally only the PARAM statements get processed but with the following option added to tipix.conf, tippcstm will now also reestablish its environment. PARAM PCSRELOADENV=YES This feature will be helpful if adding/changing TIP/dbi II environment variables while the system is running. 2008/01/05 2.5 R0 - 0124 * Enhanced smterm to accept a Unix Userid which will be used to auto logon a terminal connected to TIP/ix using TIP/ws Direct connect. In the smterm, terminal update screen new fields are: Logon user: - Unix userid to be used by default for this terminal when using TIP/ws Direct connect to TIP/ix Domain: - Windows domain name sent by TIP/ws during login If this is defined then it must match. If it is not defined then whatever the user enters will be accepted. App log: - 'Y' to turn on logging for all applications executed by the terminal Remember to turn this off later and delete the log files. UI log: - 'Y' to turn on TIP User Interface log Remember to turn this off later. Any log files will be created in the Unix user's $HOME/.logs 2007/12/18 2.5 R0 - 0123 * Fixed bug in tippcstm (DBI Thread manager) that would cause it to stop processing requests and the whole TIP system would stall This was a timing problem related to expiry of server processes If you see any of the following messages in the tippcstm log file then you have this problem and need to upgrade: PROBLEM! Seg ### already waiting Could not find waiting app P### * Retested TIP/dbi II with ODBC interface to MS SQL Server 2005 using Easysoft ODBC driver in Linux version 1.0.39 * New TIP/dbi II utility called 'dbiexpimp' to Export/Import flat data/ISAM file to database 2007/12/08 2.5 R0 - 0122 * Fixed call "tipupsi" to be CALL "TIPUPSI" in TC-SWGET, TC-SWPUT * TQL COUNT command will also report how many records read to produce the count. * Initial implementation of Web Service support for TIP/ix This allows transactions to be processed using SOAP/XML messages New APIs: GETWEBSERVICE, TIPXML, FIRSTXMLTAG For details please contact helpdesk@inglenet.com * Additional tipix.conf parameters for Web Service support PARAM WEBSERVICE=n n is TCP/IP port that TIP/ix is to listen on for SOAP/XML connections and messages PARAM WEBMCSBUFSIZE=n is the size to be reserved for receiving SOAP/XML messages. This defaults to 32K. Keep it under 64K. 2007/11/15 2.5 R0 - 0121 * Various code changes to ensure that LD_LIBARAY_PATH remains defined RedHat LINUX 5 was removing this for some security reasons however TIP/ix requires it to be set correctly or MF COBOL transactions will not find the shared code they need. 2007/10/01 2.5 R0 - 0120 * New for tipix.conf to define how long to keep log archives created with the SAVELOGS parameter. PARAM SAVELOGEXPIRE=n[H|D] For example, SAVELOGEXPIRE=30D keeps for 30 days, 36H keeps for 36 hours The default is 90 days. If you want to keep the log archives forever then you must specify PARAM SAVELOGEXPIRE=0 2007/09/17 2.5 R0 - 0119 * Retry connect sequence for TERM=tipfe to work around network timing issues 2007/08/23 2.5 R0 - 0118 * Error message added to 'smfile' to warn if a key length is greater than the internal limit of 100 2007/08/02 2.5 R0 - 0117 * 'tipmcsio' is the MCS format cache manager and it also attempts to synchronize the contents of the 'tipmcs' file which holds the screen formats for run-time use with '.t3z' files used by the Windows verison of TFD via Samba. For DPS screen formats there is also a '.t3b' file which holds extra information for DPS and Windows version of TFD would be used to edit the '.t3b' file. If using DPS then the Windows TFD should be used for screen maintenace and not the Unix version of TFD. TO avoid overwriting the file by mistake add the following parameter to tipix.conf: PARAM MCSDPS=YES 2007/07/04 2.5 R0 - 0116 * Enhancements to scansrc and API routines for future 2200 migration project 2007/06/27 2.5 R0 - 0115 * tippcstm changed to set real & effective Unix uid the same when loading TIP/dbi I/O modules to avoid possible shared code library problem * Enhancements to scansrc and TIP/dbi II for future 2200 migration project 2007/06/26 2.5 R0 - 0114 * Enhancements to scansrc and TIP/dbi II for future 2200 migration project 2007/06/19 2.5 R0 - 0113 * Enhancement to genapi for created lower case APi routine names to keep Micro Focus COBOL happy. genapi -l 2007/04/27 2.5 R0 - 0112 * Fix old TIP/dbi to also check for Oracle status of 3135, 3113 & 3114 to detect if the Oracle connection has been lost by Oracle 2007/03/26 2.5 R0 - 0110 * Fix TIP/dbi problem with doing a DELETE record. which has an OPTIONAL MANUAL index. (This issue had already been solved in TIP/dbi II). * Changed TIPH2P to recognize that TIP/ws is being used and send 'directory' to the correct location for TIP/ws (which is different from TIP/fe) * Fixed problem with 'tipmon' which could cause the system to crash when purging a user session from the system. 2007/03/15 2.5 R0 - 0109 * Improve error reporting when an smfile definition for RDBMS file results in an error finding/loading the TIP/dbi I/O module for that file An error message is now written to $TIPROOT/log/HISTORY and also to the application debug log file if one is open. 2007/03/05 2.5 R0 - 0108 * Fixed problem with 'tipmcsio' when MCS formats had a period ('.') in their name. The period caused repeated attempts to save the format. * Change to create application log files with read+write permission 2007/02/19 2.5 R0 - 0107 * Code changes to attempt to handle the value from 'times' overflowing. According to the man page, 'times' could overflow and that can cause TIP/ix to stop reporting response time. The solution is to reboot Unix/Linux before 248 days have gone by. 2007/02/13 2.5 R0 - 0106 * Correction to armjcl.rc for use on Linux to prevent armjcl scripts from stalling after a program executes. This change elminates logging of keyboard input to batch programs * Improve reporting of TIP/ix internal aborts on LINUX 2007/02/01 2.5 R0 - 0105 * Corrections to dbisubschema (TIP/dbi II) to better handle level 88 items 2007/01/25 2.5 R0 - 0104 * Improved dbipre support for SELECTION OWNER IDENTIFIED BY LOCATION MODE Note: If using FETCH RECORD-NAME RECORD where RECORD-NAME is a generic 'data name' instead of a 'record name' then the Owner record is not specifically read first 2007/01/22 2.5 R0 - 0103 * Fix dbipre problem with FETCH FIRST/LAST of set when set is defined: SELECTION OWNER IDENTIFIED BY LOCATION MODE * Fix dbidiff to emit missing INDEX and SEQUENCEs * Improved error reporting for TIP/ix internal core dump for AIX 5 platform 2007/01/04 2.5 R0 - 0102 * Improved CLOSE processing of DYNAMIC files in TIPFCS to avoid crash 2006/12/21 2.5 R0 - 0101 * Fix for dbipre to compute correct size of COMP fields in subschema REDEFINES 2006/12/14 2.5 R0 - 0100 * Changes to genapi to make it more immune from local compile options defined in $COBDIR/cobopt * Fix TIP/dbi II dbischema & dbireload utility for DMS2200 issues * Fixed currency problem in TIP/dbi II in the following case: DELETE ABCREC followed by FETCH NEXT ABCREC WITHIN XYZ AREA when ABCREC is the owner of a SET with members which are also in the XYZ area 2006/11/27 2.5 R0 - 0099 * Changed fse MC (move column) command to adjust target column postion by 1. * Fixed bug with tipix not resolving the IP address for the smterm definition 2006/11/10 2.5 R0 - 0098 * Fixed problems with TIP/dbi II unload/reload tools * Reduce time delay on FCS-CLOSE from 1/10th to 1/100th second * purge -y user will proceed with purge even if more than 1 present 2006/10/24 2.5 R0 - 0097 * Fixed problem with TQLMON PP command 2006/10/13 2.5 R0 - 0096 * smterm will translate embedded spaces in the 'Host name' field to an underscore. This will allow you to enter PC Computer names that contain and underscore character. The underscore will redisplay as a space unless you use tipixtty. With tipix and TIP/fe or TIP/ws the underscore is always removed. 2006/09/28 2.5 R0 - 0095 * Additional DMS2200 syntax support in dbischema * Fixed bug in dbiunload that was causing duplicates * New environment variable TIPPRINTAUXTR may be defined as a list of hex values to be used for translating characters for printing to AUX1. For example: csh: setenv TIPPRINTAUXTR "7B=E9,7E=E0" ksh: export TIPPRINTAUXTR="7B=E9,7E=E0" sh: TIPPRINTAUXTR="7B=E9,7E=E0"; export TIPPRINTAUXTR Will cause a hex 7B in the print line to be changed to hex E9 before sending to the printer. Also, hex 7E is translated to hex E0. 2006/09/06 2.5 R0 - 0094 * Fixed problem with monitoring of a directory for input data that was causing some messages to be lost. 2006/08/28 2.5 R0 - 0093 * Enhancements to TIP/dbi II for DMS/2200 to support RESULT computations, ORDER BY RECORD-NAME, ORDER BY DATABASE-KEY, KEY name EQUAL TO name ALIAS, SET SELECTION LOCATION MODE OF OWNER As a result all pre-existing TIP/dbi II data dictionarys need to be recompiled. You need to re-run dbischema & dbisubschema and then recompile all of your DMS batch programs which use TIP/dbi II. If you get a message which reads as follows: ERROR TIP/dbi dictionary version does not match! Then you need to recompile your application program. * Fixed problem with using 'fclose' when also using in tipix.conf PARAM MFEXEC=YES 2006/07/17 2.5 R0 - 0092 * Before starting a transaction program, tipix will now redirect 'stdout' to /dev/null. If the transaction generates any output to stdout, it will now be thrown away. Previously, TIP/fe would have tried to merge it into the screen format causing strange displays. TIP/ws ignores stdout data. 2006/06/16 2.5 R0 - 0091 * Fix problems with @USE and @CPFTP in eclexec * Clean environment for programs started via smprint/TIPPRINT 2006/06/13 2.5 R0 - 0090 * Fix TIP/dbi II problem with DELETE followed by FETCH NEXT OF AREA 2006/05/23 2.5 R0 - 0089 * Preliminary release of API to send/retreive from a Web Service using SOAP protocol. Contact Inglenet if you are interested in using this. 2006/05/15 2.5 R0 - 0088 * Fixed problem with race condition for inbound DTP transaction which had closed the session while processing an input message 2006/05/05 2.5 R0 - 0087 * Fixed problem with race condition for inbound DTP transaction which does a TIPMSGO and than an immediate TIPRTN 2006/04/28 2.5 R0 - 0086 * New feature to have TIP/ix start pseudo terminal sessions. (tipix.conf) PARAM STARTTERMINAL=T103,RJNBCK The above command would start teriminal sessions for T103 and RJNBCK as they are defined using 'smterm'. This would normally be used for pseudo terminals used for monitoring directories. The 'smterm' definition would likely include: "Unattended operation (Y/N/B) ..... B" * New feature to have a terminal session (real or pseudo) to monitor a directory for text files and process the files as messages. Another option is to have any messages sent to the terminal be written to a directory as a text file. This facility can be handy for interfacing with systems outside of TIP/ix such as Mapper C. Each terminal session started for look in the $TIPROOT/conf directory for a file called .conf where is the terminal name. In this terminal config file you may define any of several keywords: MSGDIR=dir Defines the directory that is to be monitored MSGCHECK=min Defines the interval in 'minutes' between checking the directory for text files. You can also define a value in seconds by appending 'S'. eg. 10S for 10 seconds MSGSAVE=dir Defines an optional directory to copy the text files to after being processed. This is for archival purposes. MSGEXECALL=YES Declares that each text file will start with a transaction code and is to be processed like an input message. The default is that each text file is read and transmitted to the terminal connected for this session. MSGEXECEXT=ext Defines that if the text file ends with the extension '.ext' then that file is to be processed as an input message with a transaction at the start of the file. MSGXMITEXT=ext Defines that if the text file ends with the extension '.ext' then that file is to be processed as an output message and transmitted to the terminal connected for this session. MSGOUTDIR=dir Optionally defines a directory where each message sent to this terminal is to be written as a text file instead of really being sent to the terminal. Other transactions could send an unsolicited message to this terminal and the data would then be written out as a text file with a unique name. MSGOUTEXEC=script When MSGOUTDIR is defined and when a file has been created then the 'script' is executed and the name of the text file is passed as parameter one. (i.e. reference a $1 in the script) MSGOUTPREFIX=(starter text) The text enclosed in brackets is written out as the start of the text file created for output messages. This is optional but if used, should be used with MSGOUTDIR. Examples: If there is a file called CPI.conf with the following contents: # # Terminal Session Rules # MSGDIR=/tmp/vcin MSGCHECK=5S Then the session for the terminal called CPI will check the /tmp/vcin directory every 5 seconds for text files and if found, transmit them to the CPI terminal. If there is a file called RJNXX.conf with the following contents: MSGDIR=/tmp/rjnxx MSGCHECK=8S MSGXMITEXT=xmt MSGEXECEXT=trn Then the terminal session RJNXX will check /tmp/rjnxx every 8 seconds for text files. If the text file ends with '.xmt' then it is transmitted to the RJNXX terminal. If the text file ends with '.trn' then it is processed as an input transaction msg. Otherwise the text file is just transmitted to the terminal. If in addition, tipix.conf has PARAM STARTTERMINAL=RJNXX then RJNXX is really a pseudo terminal so it is best just used for processing transactions. 2006/04/25 2.5 R0 - 0085 * Corrected error in DTP when using Remote File Access 2006/04/20 2.5 R0 - 0084 * Added new tipix.conf parameter PARAM JRNCHECK=minutes Defines how many 'minutes' to go without swapping the journal file. The journal file would be swapped when it reaches its max size defined by JRNSIZE or if it has not been swapped for the defined number of 'minutes'. To swap every 30 minutes: PARAM JRNCHECK=30 * rollfwd has a new command line option of -r The -r option indicates that rollfwd should be quiet and it should open the ISAM files in shared access mode so that the files may be updated while TIP/ix is running. The ISAM files should also be defined to TIP/ix for shared access. The intent of this is for use by a semi-hot backup TIP/ix system to which you want to replicate the data from an active production system. 2006/04/19 2.5 R0 - 0083 * Add code to detect & recover from cycle in list of active transactions * Added new option to prevent more than one of a given terminal session to be started via DTP by adding the following parameter to tipix.conf PARAM DTPONLYONE=TRM1,TRM9 In the above example, TIP/ix would only allow one of each TRM1 and TRM9 to be active at once. If a new session request arrives with the name as an already existing session, then TIP/ix will purge the existing session and then open the new session. 2006/04/11 2.5 R0 - 0082 * Correct problem related to race condition of input message and unsolicited output messages on an inbound DTP session 2006/04/07 2.5 R0 - 0081 * In conf/tipix.conf you may now place BACKSECUR=Y to have background processes take security from the USER-ID names of BACK$001, BACK$002, etc (This would also required BACKNNN=YES) PARAM BACKSECUR=YES The default is that the background process inherits security settings from the user whos transaction did the TIPFORK. 2006/04/05 2.5 R0 - 0080 * Fix armdata problem when converting data which is already on disk If the data was being loaded/converted from EBCDIC tape it would work 2006/04/04 2.5 R0 - 0079 * Fix problem with system hang after swaping journal files 2006/03/23 2.5 R0 - 0078 * Fixed erroneous detection of looping transaction 2006/03/20 2.5 R0 - 0077 * Internal change on Linux to use 'select' instead of 'poll' to try and avoid missing SIGHUP on sockets 2006/03/16 2.5 R0 - 0076 * Improved handling of an invalid local LOCAP name in tipix.conf * Fixed problem for background transactions where the Active File table was not being cleaned up when the transaction completes * New for tipix.conf to define how long to keep inactive TIP/dbi log files PARAM LOGEXPIRE=n[H|D] For example, LOGEXPIRE=36H keeps for 36 hours, 3D keeps for 3 days The default is 2 days. 2006/02/17 2.5 R0 - 0075 * Improvements to the conversion tools and TIP/dbi II parsing of DMS 2200 2006/02/06 2.5 R0 - 0074 * Fixed problem with TQL reference modification 2006/01/30 2.5 R0 - 0073 * Fixed problem with eclexec and @START 2006/01/25 2.5 R0 - 0072 * Clear Full Screen Transmit option on SENDERR and is user does Ctrl-A to abort the transaction * The MCS screen cache manager will now allow read-write permission by others to better enable use of the Windows version of TFD 2006/01/18 2.5 R0 - 0071 * Fixed problem related to incorrect detection of a CPU loop when in an outbound DTP session 2006/01/01 2.5 R0 - 0070 * Added simple line editing for tipinstall -n command 2005/12/21 2.5 R0 - 0069 * Enhancements to 'setlog' command and API code so that logging for an application can be turned on while the transaction is running 2005/12/18 2.5 R0 - 0068 * New TIP/dbi II utility 'dbiupgrade' to help with moving from old TIP/dbi * Fixed problem in TIP/dbi II which would randomly result in core dump 2005/12/09 2.5 R0 - 0067 * Fixed problem with IMS output for input message queuing when the message had leading spaces before the transaction code * If a dynamic file is open and locked, now status will report 'Lck' under Sts * fclose -f 'dynfile' Will now properly force a close and unlock a dynamic file 2005/12/06 2.5 R0 - 0066 * Fixed problem with rollfwd on Linux * dpscnv -d format This will read the format.t3b file and recreate the MCS screen format and DPS Copy book from that. If you update a DPS format on one system using the Windows version of TFD, the format.t3b file is re-written by TFD. Copy that to another system and run dpscnv -d format and it imports the changes into the new system. For example: dpscnv -d INSPCDUP.t3b cp STKISSU.t3b $TIPROOT/tipfiles/sfg/tip\$y\$ dpscnv -d STKISSU cp DPS00512.t3b $TIPROOT/tipfiles/sfg/tip\$y\$ dpscnv -d 512 If you specify any other options with -d to dpscnv then the appropriate flags in the format will get set accordingly. * Fixed problem with IMS/90 CALL SEND when doing output for input queuing and the terminal being queued to was defined as unattended. The 1st message would return an error status to the CALL SEND even when there was no error. This has been fixed. Recompile IMS/90 programs to get fix. 2005/12/01 2.5 R0 - 0065 * TIPFCS will log details of a deadlock to the HISTORY file * New command to mark a DMS database down and up using tippcstm tippcstm down myschema - Would shutdown all current usage of 'myschema' and record it as down tippcstm up myschema - Would mark 'myschema' as available If a transaction tries to access a downed database the IMPART will fail The down/up status is persistent across TIP/ix system start/stop status x will report of the database has been marked down The list of all DMS schemas which are marked down is kept in a file called $TIPROOT/conf/dbidown.lst 2005/11/30 2.5 R0 - 0064 * Implemented a workaround to problem with semaphores on LINUX If you are using TIP/ix on LINUX, you need to recompile your application programs to have this correction fully implemented * Corrections to avoid race condition with DPS call D$RETRANSMIT * Improve FCS closing of files to avoid possible race condition 2005/11/18 2.5 R0 - 0063 * Fixed coding error with the IMS/90 UNLOCK function. The error was introduced in 2004/10/06 2.5 R0 - 0001 2005/11/11 2.5 R0 - 0062 * eclexec new keyword for 'eclrc' control file FILEUID=num Defines the numeric Unix user id value to be assigned to files created by eclexec FILEGID=num Defines the numeric Unix group id value to be assigned to files created by eclexec If FILEUID is not defined, the default now is to place the user-id of the user which is running the ECL job on any files created by eclexec. Previously, the 'root' user id was being placed on files created by eclexec. 2005/11/07 2.5 R0 - 0061 * Fixed TIP/dbi II problem with FETCH DBKEY followed by FETCH NEXT WITHIN SET 2005/11/03 2.5 R0 - 0060 * Fixed compilation error with TIP/dbi shared code module 2005/11/02 2.5 R0 - 0059 * Change D$READ to set status '0' for value of ZERO and '4' for blanks on input * Fixed Unix TFD to display fields correctly for DPS formats * Add more support for DPS to the INT1/UTS terminal interface 2005/10/28 2.5 R0 - 0058 * Fix problem with generating FCCs for UTS terminal emulator 2005/10/27 2.5 R0 - 0057 * eclexec when used interactively now keeps a command history which can be recalled using the Up/Down Arrow keys. The Insert key also toggles between insert and overtype mode. This works when using TIP/ws (or TIP/fe) * eclexec will issue warning when an application issues a ACSF for @START,F and then start the job in background as forground is not allowed in this case. 2005/10/23 2.5 R0 - 0056 * trandown -l Will list all transactions marked down * trandown/tranup will list the SMPROG name referenced * whoson -c Will list users computer name instead of terminal * whoson -a Will only list users with transactions active * status t Will now report transactions per second * Fixed problem that was taking all TIP/ws Direct connect sessions down when tipdtp aborted and was restarted * DMS/2200 applications running under eclexec will now report serious Oracle errors into the joblog and PRINT$ * Online DMS (TIP/dbi II) transactions will now check MAXCALLS to detect looping * New parameter for tipix.conf PARAM DBILOG= may be used to set the TIP/dbi log options On tipctl ping the value of DBILOG is reset in the environment as TIPDMSLOG * New logging option Z to indicate that the log file should be compressed when closed * Added some loop detection code to TIP/dbi II for FETCH NEXT of SET * TIP/dbi II now more accurately counts I/O for online transactions * Fixed problem with TIP/dbi II INSERT to a MANUAL Set * TIP/dbi now supports the options for controlling how long to wait for a record lock The options are placed in the SCHEMA NAME section. For example: IDENTIFICATION DIVISION SCHEMA NAME IS XXX-SCHEMA IN TIP FILE 50 WAIT GETUP 3.5 RETRY GETUP 0.1 This example would attempt to lock a record for update at 0.1 second intervals for a maximum of 3.5 seconds and then return an error status to the application Also, DBI-SQL-STATUS of the DMCA will have a value of 54 which is the Oracle status This only applies to online transactions. Batch program will continue to wait for the record to become available. * New parameter for tipix.conf. The tipdtp process manages TIP/ws Direct connect by listening on the TCP/IP port. If for any reason tipdtp aborts it will also kill off all direct connect sessions. This is required to free up the TCP/IP port. If you want to leave those session running specify the following parameter PARAM DTPCLEANDIRECT=NO However if you do this, no more TIP/ws sessions will be allowed to connect because the TCP/IP port is not available until all running processes which use it terminate. 2005/10/19 2.5 R0 - 0055 * Fixed problem with SDMPS4, & TIP/dbi for Oracle 10 * Fixed problem with TIP/dbi II related to folded PIC 9 fields 2005/10/12 2.5 R0 - 0054 * eclexec changed to retain embedded spaces in SETENV command 2005/10/08 2.5 R0 - 0053 * Fix TIP/dbi II problem with IF affecting record currency * Now records statistics in HISTORY file when tipix.conf has PARAM RESPONSELOG= defined. For example: 2005/10/08 09:08 tipstats: 0 2 0 0 0 0 0.000 2005/10/09 13:36 tipstats: 2 1708 16 41 937 260 0.066 The numeric values following 'tipstats:' are as follows: Number of user sessions Number of minutes elapsed during interval Number of input messages during interval Number of output messages during interval Total number of data input/output operations during interval Total number of data update operations during interval Average transaction response time during interval 2005/09/30 2.5 R0 - 0052 * Enhance armsort (@SORT) to recognize MODE=LS for Line Sequential & MODE=DA for Direct Acccess file formats 2005/09/28 2.5 R0 - 0051 * Correct TIP/dbi II problem with MODIFY following a FIND instead of FETCH * Correct TIP/dbi II coding error related to recent changes 2005/09/16 2.5 R0 - 0049 * Corrected TIP/dbi II problem with FETCH rec VIA set USING field when the owner of the set was in multiple areas 2005/09/12 2.5 R0 - 0048 * Corrected TIP/dbi II problem related to FIND CURRENT SUPPRESS ALL|SET * Fixed TIP/dbi performance problem with SORTed set with multiple members and allows dups * New TIP/dbi II clause for schema section CONCATENATE WHERE which will result in using the Oracle concatenation operator where possible 2005/09/06 2.5 R0 - 0047 * New TIP/dbi II option to optimize cases where the owner of a set and member of the set are in the same multiple areas. Add the following clause to the DMS schema header portion to get this FIND IN VIA AREA * Fix problem in TIP/dbi with DELETE while reading thru INDEX that allows duplicates * eclexec will check for XQT,N 1st if the default is to send data for stdin thru pipe to the application Optionally you can add the option XQTDATAON=x to .eclrc or /etc/default/eclrc Where x is the option characters to enable sending data thru the pipe for stdin Default value is C Optionally you can add the option XQTDATAOFF=x to .eclrc or /etc/default/eclrc Where x is the option characters to enable sending data thru the pipe for stdin Default value is N 2005/08/29 2.5 R0 - 0046 * Fixed problem in eclexec related to @SYM,F where a printout was being lost * Changed eclexec so that @ASG,UP updates the file.stt immediately 2005/08/23 2.5 R0 - 0045 * Fixed problem with TIP/dbi II dbireload utility related to SORTED SET DUPS LAST * Fixed problem with dpscnv related to heading fields separated by a single space that holds a one byte field * Fix TIP/dbi II problem related to FETCH by DBKEY when previously locked for update * Fix problem with tipixtty not correctly restored TTY terminal settings 2005/08/05 2.5 R0 - 0044 * Partially back out code change made for WGKK related to DPS 'image' intensity as this caused problems for another customer (VSP). 2005/08/01 2.5 R0 - 0043 * Changed eclexec so that @CAT from an application (via ERCSF) is better handled by eclexec and not the application process * Changed eclexec (& ERCSF) so that @ASG,A ... @FREE does not update catalog * Setting the environment variable ANIMTERM to a Unix psuedo terminal name will result in the Micro Focus Animator session being redirected to that terminal For example: setenv ANIMTERM /dev/pts/3 This may even be done with the TIP/ix User Interface SETENV command after entering tipix 2005/07/20 2.5 R0 - 0042 * The LOGOFF transaction is different for former OS/3 and OS/2200 customers The 'install' script will now ask you is you are a former OS/2200 customer and set LOGOFF as needed. Reply 'Y' is you were an OS/2200 customer. 2005/07/13 2.5 R0 - 0041 * Change name of 'open' and 'close' variables used in various data structures to avoid future problems if LARGE_FILE support is ever implemented * Fixed TIP/dbi II problem with FETCH NEXT DUPLICATE of a CALC set 2005/07/12 2.5 R0 - 0040 * Fixed problem related to forced fclose of an indexed file. (Do full install of this build) * Fixed problem with cobcnv and EXEC SQL programs 2005/07/05 2.5 R0 - 0039 * The text in the message of the day file (see patch level 0037 below) is now scanned for escape sequences that get replaced by UTS codes. \\ - just becomes a backslash \ \E - ESC \F - FCC \H - The host computer name \I - SI \L - The long terminal name \O - SO \R - The TIP/ix Locap name \S - The short terminal name \T - TAB \U - The User Id \< - FS \> - GS \(row,col) - position cursor to row,col. Eg. \(10,2) \[row,col] - position cursor & erase screen. Eg. \[1,1] * Also, for the INT1 protocol TIP will send $TIPROOT/conf/prelogonint1.txt before sending the logon screen to the end user. After logon, the file $TIPROOT/conf/motdint1.txt would then be sent, if present An example of the terminal setup file follows: \Eo\(2,66)UC\(12,7)C:\\TEMP \(12,7)\Eo 2005/07/04 2.5 R0 - 0038 * Fix problem with TIPUSR when passed 2 parameters * Correct TIP/dbi II to handle large binary values for FETCH VIA USING. * eclexec: fixed problem with @USE when file was temporary 2005/06/22 2.5 R0 - 0037 * When a user first logs onto TIP/ix the user interface process will check for the presence of a 'Message Of The Day' file and display it. This file is called motd.txt and is located in the $TIPROOT/conf directory. For User terminals using the INT1 (UTS) protocol, it looks for a motdint1.txt For User terminals using the TIP/ws direct connect feature, it looks for motddirect.txt 2005/06/20 2.5 R0 - 0036 * Fix problem with function keys and INT1 protocol * eclexec cleans up better after @DELETE file(-1) * eclexec: @ADD,X file Will defer including the contents of the file until the @ADD statement is reached. The default action is to include the file as the job statements are being read into memory before any statement gets executed. Optionally you can add the option DEFERADD=YES to .eclrc or /etc/default/eclrc to force all @ADD processing to be deferred as long as possible. An @ADD following @XQT is always processed immediately as the file being added may contain data for the program executed by @XQT 2005/06/13 2.5 R0 - 0035 * TIP/dbi II corrections for DMS/80 test suite * Fix problems with tranup/trandown New option to up/down transaction in all groups tranup -t tranname New option to up/down all transactions in a group tranup -g groupname 2005/06/02 2.5 R0 - 0034 * TIP/dbi II now keeps a small cache of pre-parsed SELECT statements to improve performance * TIP/dbi II: fixed problem with requencing an ordered set * TIP/dbi II: fixed problem related to not having correct position within set * eclexec: fixed problem with @USE when file name was the same but qualifier was different * Added some more defensive code to tipfcs for bad pointers 2005/05/25 2.5 R0 - 0033 * TIP/dbi II will check for additional environment variables: schemaname_CON If set is used for the Oracle data source name schemaname_TWO_TASK If set, is used to set the value for TWO_TASK environment variable, used by Oracle If set to the word NULL, then TWO_TASK is removed from the local environment before connecting to Oracle ORACLE_CON Would set the data source name for all DBI schemas ORACLE_TWO_TASK Would define the value for TWO_TASK for all DBI schemas i.e. setenv ORACLE_TWO_TASK NULL Would cause DBI to remove TWO_TASK from the local environment * Fix problem for field intensity/coloring on Linux for ASYNC terminals * D$READ when program has Upper Case: Yes (via smprog) defined and the data field is an Output only field is now not translated to Upper Case 2005/05/13 2.5 R0 - 0032 * TIP/dbi II: fix dbireload problem with sorted sets which allow dups * eclexec: add support for @FREE,I 2005/05/09 2.5 R0 - 0031 * TIP/dbi II: Fix problem for BINARY fields If the value of the field was numerically less than the previous record read it could happen that extra digits get returned resulting in bad data given to the application * TIP/dbi II: Added support of multi-member sorted sets which also allow duplicates. * eclexec: fixed problem with @SYM and $F in printer command 2005/05/02 2.5 R0 - 0030 * Corrected problem with eclexec TCOPY command 2005/04/25 2.5 R0 - 0029 * Correct TIP/dbi II run-time problem with BINARY field in folded column * Correct TIP/dbi II problem with ID IS (i.e. REDEFINES) when the ID column follows the redefined data * eclexec: @SYM PRINT$ will now print the job log file on job termination * eclexec @CPFTP will translate 2nd parameter of GET/PUT to Unix path name * eclexec: @ASG,Q will test for file presence and set Condition word (S6). A value of 1 means file does exist A value of 0 means file does not exist 2005/04/08 2.5 R0 - 0028 * Changes to LDAP authentication for K&P and WGKK * Correct TIP/dbi II run-time for BINARY field with large values * Correct TIP/dbi II run-time for PIC S9 BINARY field with negative values 2005/04/04 2.5 R0 - 0026 * Correct TIP/dbi II run-time so that DELETE verb would remove members of MANUAL sets that the deleted records owns * Changed eclexec so that @USE names are not replaced when an '*' is used Also, if *FILE, then the @QUAL names is used, otherwise the qualifier on the @RUN card is used * Backed out changes to dpscnv. Field MUST be 80 bytes or less 2005/03/24 2.5 R0 - 0024 * Fixed TIP/dbi II dbipre for problem related to STORE ... SUPPRESS ALL * eclexec, initial release of @TCOPY for testing. Copy Data To/From tape @TCOPY,options INPUT,OUTPUT,rcsz,bksz,vsn,lbl Options: A - Convert data from Ascii to Ebcdic E - Convert data from Ebcdic to Ascii F - Tape is fixed length blocked format Default is Variable length L - Log the records in ecl.log I - Input is disk image of tape O - Output is to be disk image of tape R - Disk file is Record Sequential D - Disk file is Relative S - Disk file is Line Sequential If copy to tape, then: @TCOPY,E MYQL*MYFILE,/dev/rmt/ctape1,512,12280 If copy from tape, then: @TCOPY,A /dev/rmt/ctape1,MYQL*MYFILE,512,12280 2005/03/22 2.5 R0 - 0023 * Fixed eclexec problem with @USE and later @ASG * Partial support for HLC version in the INT1 protocol 2005/03/16 2.5 R0 - 0022 * Fixed STTFH to reset file naem for Micro Focus in case an inline ECL statement had been issued * eclexec new keyword for 'eclrc' control file MAXCARDSIZE=num Defines the maximum length of data lines following @XQT The default is 2048 * Enhanced to support UTS INT1 DCP style over TCP/IP protocol. This is enabled by adding the following parameter to tipix.conf PARAM TIPINT1=YES If you want INT1 users to have to logon with a format, then use: PARAM TIPINT1=LOGIN TIP/ix will listen on the TCP/IP port 256 for connections using this protocol If you want INT1 users to logon with a command line style, then use: PARAM TIPINT1=DEMAND TIP/ix will listen on the TCP/IP port 256 for connections using this protocol You can also specify an alternate port number as follows: PARAM TIPINT1=259,DEMAND 2005/03/11 2.5 R0 - 0021 * Enhanced to support TIP/ws connecting directly to TIP/ix by adding the following parameter to tipix.conf PARAM TIPWS=32777 In the above example, TIP/ix would listen for connections on port 32777. You may choose any port which is not already used as long as TIP/ws is defined to use the same port. * For INT1 and TIP/ws Direct connect, the user must be authenticated If you want user authentication to be done using the Unix passwords then add the following to the tipix.conf file: PARAM LOGIN=UNIX If you want user authentication to be done using LDAP passwords then add the following to the tipix.conf file: PARAM LOGIN=LDAP 2005/02/28 2.5 R0 - 0020 * Fixed TIP/dbi II problem with folded columns * Fix problem with ASG,CP vs ASG,UP 2005/02/24 2.5 R0 - 0019 * Fixed problem introduced to BATACTIV * Fixed TIP/dbi II problem with FOLD INDEXES option 2005/02/21 2.5 R0 - 0018 * Fixed build problem with original TIP/dbi 2005/02/18 2.5 R0 - 0017 * TIP/dbi correct for reading by key a sorted set with binary key fields * eclexec new keyword for 'eclrc' control file ECLTOBRKPT=YES Will log ECL statements executed to the BRKPT file if other than PRINT$ 2005/02/14 2.5 R0 - 0016 * eclexec new keyword for 'eclrc' control file KEEPCYCLE=YES Will retain filename.stt even if there is no data file EMPTYFILE=YES Will create a zero length file on @ASG,P and @CAT,P DISPLAYBRKPT=NO Will NOT display contents of the BRKPT file. Default is YES * eclexec: @CAT when the file already exists results on abnormal job termination * eclexec: @DELETE fixed to remove the correct file cycle and also check for prior mising cycles and roll back the current cycle number to the 1st existing file * eclexec: filename.000 will never be created. Cycles will be from 001 thru 032 If a filename.000 already exists, then the cycle will be renumbered so as to fall within the 001 thru 032 range 2005/02/06 2.5 R0 - 0015 * Fixed TIP/dbi II problem with SORTED SETS that have multiple members and the key fields are BINARY * Fix TIP/dbi II problems with dbireload for 'folded' records 2005/02/01 2.5 R0 - 0014 * Rename the DPS text files from .xml to .t3b 2005/01/25 2.5 R0 - 0013 * Added some support for DPS Printing 2005/01/14 2.5 R0 - 0012 * dpscnv corrections for K&P * TIP/dbi II: dbireload correction related to group item keys with sub-items PIC 1 * TIP/dbi II: dbischema correction related to group item keys with sub-items PIC 1 Online API module will clear ERROR-STATUS on DEPART 2004/12/31 2.5 R0 - 0011 * TIP/dbi II: Fixed problem in computing/adjusting for largest of REDEFINES * TIP/dbi II: dbiunload generates code conditional on DEPENDING ON value * TIP/dbi II: dbireload correct related to FILLER fields * TIP/dbi: changes to support Oracle 10 2004/12/18 2.5 R0 - 0010 * D_READ will set some of the field-STAT values * Fixed problem in TIP/dbi related to sets where the own is in multiple areas * eclexec will capture & log output from Unix scripts initiated with @START,F * Fixed problem with getvaltab for AIX 2004/12/07 2.5 R0 - 0009 * Fix problem with LOCATION MODE INDEX RANGE KEY * Corrections to TIP/dbi II for REDEFINES and LOCATION MODE INDEX * Corrections to D_READ for function key input 2004/12/01 2.5 R0 - 0008 * TIP/dbi II support for PIC 1 IS BINARY option (default) * TIP/dbi II support for PIC 1 IS DISPLAY option * DPS Paging CURRENT-PAGE is only adjusted for RETR/REPLACE not STORE * @SYM & @SORT now check for records size and file type in 'file.stt' 2004/11/18 2.5 R0 - 0007 * Corrections to dbiunload for K&P * Corrections to D_GETFL for when input message has FCC separting fields 2004/11/14 2.5 R0 - 0006 * 'eclexec'; Changes to @USE implementation so that @USE name can be used in @ASG. i.e. @USE names becomes more like a short form or define of a value * Corrections to dbiunload for K&P 2004/11/04 2.5 R0 - 0005 * Changes to TIP/dbi II for DMS/2200 to default to operating in "implicit thread" mode rather than the more secure "explict thread" mode as described by UDS 2004/11/01 2.5 R0 - 0004 * Corrections to conversion tools cobcnv and scansrc for K&P * Corrected D$GETFL/GETLI/GTSCN to return function key as 2 digits of text and set the correct Function Key status for the application * Fix TIP/dbi II to handle binary field as Set SORTED BY for Quick Search 2004/10/26 2.5 R0 - 0003 * Corrections to TIP/dbi II for REDEFINES * Corrections to conversion tools cobcnv and scansrc for K&P 2004/10/25 2.5 R0 - 0002 * Enhancements to MCS, (tfd, TIP/fe & TIP/ws) to support right justified alphanumeric fields. If you use a right justified MCS XXXX field, you will also need the latest TIP/ws or TIP/fe to handle this. * Corrections to TIP/dbi II for REDEFINES 2004/10/06 2.5 R0 - 0001 * Many changes to all API modules to support Micro Focus Server Express 4 * New utility 'genapi' created to generate the COBOL API stub modules If you are using the lower case API names ('tipfcs' instead of 'TIPFCS') then you need a special option. (Best is to only use the documented names) genapi -l * Corrections to conversion tools cobcnv and scansrc for K&P 2004/09/27 2.4 R0 - 0123 * Corrected problem in TIP/dbi II which was causing a loop * Corrections to conversion tools cobcnv and scansrc for K&P 2004/09/14 2.4 R0 - 0122 * Fix bug in TIP/dbi II with OPEN area INITIAL LOAD when the area contained multi-member sets * Corrections to conversion tools cobcnv and scansrc for K&P 2004/08/30 2.4 R0 - 0121 * Implementing support for REDEFINES in dbiunload & dbireload * Correction for DDN Api 2004/08/25 2.4 R0 - 0120 * Corrections to conversion tools cobcnv and scansrc for K&P * Implement support for REDEFINES in dbiunload & dbireload 2004/08/18 2.4 R0 - 0118 * Added new feature for a TIP/ix user interface process to monitor a directory and send any files in that directory as output messages * Fix problem with D_USERMSG not honouring D_CHGPID * Fix problem with D_CLOSE that had prevented DMS I/O to be done after a D_CLOSE * Add new DMCA field for TIP/dbi II called DBI-SQL-STATUS which will be set to the exact Oracle status code on an error. * Partial implementation of REDEFINES for TIP/dbi II. Still testing. 2004/08/11 2.4 R0 - 0117 * Fix problem with doing early database commit for CRTRNU and TIPCDSEND * Fix problems with interface to CPI message switch 2004/08/03 2.4 R0 - 0116 * Fix for the DDN API module * Fix to eclexec for @COPY to a temp file 2004/08/02 2.4 R0 - 0115 * Fix coding error; tipctl ping would abort the MCS format server 2004/08/01 2.4 R0 - 0114 * Fix probem with TIPFORK to another terminal * Fix problem with internal commit to TIP/dbi II * For TIP/dbi II, AREA-KEY then PAGE-NUM & RECORD-NUM will now be PIC XX COMP-X instead of PIC 9(4) COMP-4 2004/07/20 2.4 R0 - 0113 * Corrections to 'output for input queuing' due to an error introduced in the last few months 2004/07/18 2.4 R0 - 0112 * Corrections to cobcnv for DECIMAL IS COMMA 2004/07/14 2.4 R0 - 0111 * Fix error introduced in build 0089 which was keeping CDA size at largest used in a group. The CDA should reduce if the transaction is defined so. * For non-reusable transactions the MaxThreads value as defined in smprog will now be honoured to limit the number of copies of the same program that are running * The ECL processor now scans statements for parameter replacement ${1} would be replaced by 1st parameter following job name 2004/07/12 2.4 R0 - 0110 * Corrections to handling of CRTRNU/O functions for 2200 apps * Corrections to SEND/RECEIVE replacement API code 2004/07/08 2.4 R0 - 0109 * Add the following parameter to tipix.conf to limit time that a transaction may run. After the defined number of seconds the transaction would be aborted. PARAM MAXTIME=n Where 'n' is the number of seconds. (eg. PARAM MAXTIME=20) 2004/07/05 2.4 R0 - 0108 * Corrections to handling of CRTRNU/O functions for 2200 apps 2004/07/02 2.4 R0 - 0107 * Corrections to SEND/RECEIVE replacement API code 2004/06/25 2.4 R0 - 0106 * Change in method of handling CRTRNU/O functions for 2200 apps 2004/06/21 2.4 R0 - 0105 * whoson -p will show the 2200 PID value instead of the terminal name If the PID value is preceded by 'DB' then the programmer is testing using a test PID value * Initial release of the DDN routines for testing 2004/06/17 2.4 R0 - 0104 * When running tipix if the evironment variable TIPPID2200 is defined, then its value will be presented to applications as the 2200/1100 PID value For example: setenv TIPPID2200 50 tipix 2004/06/16 2.4 R0 - 0103 * Additional Corrections for batch connecting to TIP/ix 2004/06/10 2.4 R0 - 0102 * Additional Corrections for SEND to PROG trancode 2004/06/08 2.4 R0 - 0101 * Corrections for SEND to PROG trancode 2004/06/04 2.4 R0 - 0100 * Correct D$READ/D$OPEN to reset field attributes * Changes to better interface with CPI message switch * Changed DPS pager (dpager) to provide hints on function key usage 2004/05/31 2.4 R0 - 0099 * Improved FETCH rec VIA set USING performance for TIP/dbi * Fixed D_READ to avoid an erroneous COMMIT * Initial build for AIX 5 available for beta testing 2004/05/26 2.4 R0 - 0098 * Fix CRTRNO to pass data correctly * DPS Paging utility fixed to display data correctly * Fixed coding error in D_GETLI & D_GETFL routines 2004/05/25 2.4 R0 - 0097 * CRTRNU was setting the terminal in test Mode incorrectly * eclexec was not parsing @START correctly to get the 'setc' value 2004/05/19 2.4 R0 - 0096 * Various corrections for DPS functions 2004/05/17 2.4 R0 - 0095 * Fix TIP/dbi II to corectly compute size of PIC 9(n) BINARY where n is > 10 * Fix TIP/dbi dbipre to emit code to set values fo Database Data Names when defined as STORAGE COMMON 2004/05/16 2.4 R0 - 0094 * Fix TIP/dbi II for DMS2200 FETCH record VIA set * Some corrections to better handle PIC 1 in TIP/dbi 2004/05/13 2.4 R0 - 0093 * Fix TIP/dbi II for reading via INDEX/CALC indexes * Fixes for D_GETLI and D_GETFL * Add the following parameter to tipix.conf to have DPS programs that STOP RUN retain the DPS screen information & also no give the TIP/ix user prompt PARAM DPSPROMPT=NO 2004/05/05 2.4 R0 - 0092 * Fix TIP/dbi II for multi-member sets * eclexec will better check file names correctness 2004/04/30 2.4 R0 - 0091 * Fix for TIP/dbi II to FETCH VIA USING * eclexec will now report back to terminal when background job completes 2004/04/25 2.4 R0 - 0090 * Interim build for K&P (HPUX) 2004/03/19 2.4 R0 - 0089 * New TIP/dbi II utilities dbiunload & dbireload 2004/03/10 2.4 R0 - 0088 * Changes to TIP/dbi II for multi-area records and DMS/2200 * Corrections to 'armsort' for 2200 sorting 2004/03/03 2.4 R0 - 0087 * Correction for TIP/dbi & MIRAM emulation for FCS-GETUP with RECORD WAIT defined * Changes to TIP/dbi II for multi-area records to improve performance 2004/02/24 2.4 R0 - 0086 * Corrections to eclexec for @BRKPT, @ADD * Corrections to TIP/dbi II for sets where the Owner is in multiple areas * Correction to TIP/dbi for LOCATION MODE MIRAM 2004/02/12 2.4 R0 - 0085 * Corrections to eclexec for @COPY, @ED,IQ, @CYCLE...,0 2004/02/09 2.4 R0 - 0084 * Correction to DPS screen handling to remember field attributes * Various corrections to eclexec for handling @START * Internal corrections for TIP/dbi II 2004/02/05 2.4 R0 - 0083 * Correction for XR3IMS/XR7DMS and MF Server Express Cobol * Release of tranup/trandown utilities to make a transaction UP or DOWN * Correction to DPS screen handling for ending cursor postion 2004/01/30 2.4 R0 - 0082 * Change to TIP/dbi II to return status codes matching DMS2200 2004/01/28 2.4 R0 - 0081 * Additional corrections for DPS dynamic field control * Corrected ECL interpreter to pass Qualifer for dynamic ECL execution 2004/01/22 2.4 R0 - 0080 * Corrections for multiple concurrent accesses to TIP/dbi II schemas 2004/01/14 2.4 R0 - 0079 * Fixed problem with DPS dynamic field protection near end of screen * Fixed problem with DPS cursor positioning when using dynamic control * Corrections for the TIP/dbi II code related to Multi-Area records * tipdtp will not stop if it gets a bad Unix message queue id 2004/01/12 2.4 R0 - 0078 * Fix tipque schedule problem for queues defined for no messages 2003/12/23 2.4 R0 - 0075 * Release of make.ora9.HPUX for Oracle 9 under HPUX 11 for TIP/dbi Get this in the full download. 2003/12/19 2.4 R0 - 0074 * Fixed problem with delay in TIPQUEUE Open/Close * Additional tipix.conf parameters for DPS/2200 programs PARAM DPSPROMPT=NO This will result in no TIP prompt after a DPS program terminates 2003/12/02 2.4 R0 - 0073 * Add code to TIPQUEUE to retry locking the control block an extra time * Add support for @START to eclexec 2003/11/28 2.4 R0 - 0072 * Fixed some problems in the 2200 API code 2003/11/24 2.4 R0 - 0071 * Developed eclexec to interpret ECL * Developed dbidmu to handle 2200 DMU commands 2003/10/15 2.4 R0 - 0070 * Recompiled TIP/ix API libraries for LINUX with an option needed by Micro Focus Server Express. 2003/10/15 2.4 R0 - 0069 * Improvement on tipdtp fix added in build 0057 2003/09/26 2.4 R0 - 0068 * Due to some incompatibily between the different versions of Micro Focus COBOL, the source code for the TIP/ix utilities which are written in COBOL will now be released in source code format and must be compiled by the customer using your own locally installed version of Micro Focus COBOL. Whenever you get a new version of Micro Focus COBOL, you should also recompile the TIP/ix (COBOL) utilities. The source code for these utilities is only released for some platforms. Also, the source code is only part of the full TIP/ix release file and is not in the update. At the moment this is required for the following platforms: LINUX HPUX After getting the full TIP/ix install file and installing it. Then run a script called 'maketipcobol' to recompile the utilities. You may have to make local changes to this script so that it compiles with your specific version of the Micro Focus compiler. 2003/09/11 2.4 R0 - 0067 * Fix problem introduced in build 0065 related to MCS formats and use on ASYNC terminals. Part of the MCS-DATA was being cleared to spaces in error. 2003/09/08 2.4 R0 - 0066 * Corrected problems related to using Micro Focus Server Express with animation. 2003/07/21 2.4 R0 - 0065 * Fixed problem in tipmon that was causing it to loop * New tipix.conf parameter MCSLONGTIME=YES will cause MCS to display embedded the time field $HHMM as HH:MM:SS providing there is space on the screen. This requires TIP/fe 2.4 build 3 or later to work. Older version of TIP/fe will function, but not handle the long TIME display. 2003/07/12 2.4 R0 - 0064 * Fixed problem in tipdtp that was causing it to core dump 2003/07/02 2.4 R0 - 0063 * Fixed bug in rollfwd for DAM files. If 2 or more DAM files where rolled forward then the data was being written for all files for the length of the longest file. This problem has been corrected. 2003/06/23 2.4 R0 - 0062 * Changed rollfwd to always read tipix.conf. If -j had been given it was not. 2003/06/12 2.4 R0 - 0061 * Changed TIP/ix build of OpenUNIX8 to Unixware 7.1.3 2003/04/25 2.4 R0 - 0060 * Added code to tipix -m so that it will pass to tipback if there is no UNIX TTY assigned 2003/04/03 2.4 R0 - 0059 * Fixed problem in tipdtp if it is given a bad session id from TIP/30 2003/03/25 2.4 R0 - 0058 * Added code to clean up lost tipback processes started for TIPPEER 2003/03/17 2.4 R0 - 0057 * Fixed problem in tipdtp 2003/03/11 2.4 R0 - 0056 * Fixed problem in tipmon & tipback 2003/02/24 2.4 R0 - 0055 * Fixed problem in tipdtp * Improved error reported for application abort on Unixware platform * status r will now list the file I/Os per transaction 2003/02/17 2.4 R0 - 0054 * Fixed problem with TIP/dbi to improve error handling 2003/01/20 2.4 R0 - 0053 * Removed activation key check for TIP/ic as this is part of the TIP/Studio packaging. 2003/01/01 2.4 R0 - 0052 * Fixed a TIP/dbi problem with IF MEMBER of an Optional Manual Index if that index was also the primary index * Fixed TQL problem related to subscripted variables * TIPPRINT clears PIB-LAST-MCS-NAME when the print destination is AUX0, AUX1, or ROLL because the screen is most likely altered. However, if TIP/fe or TIP/ws is being used and operating in front end mode, the screen is not altered for AUX1, so in this case PIB-LAST-MCS-NAME will not be cleared. 2002/12/05 2.4 R0 - 0051 * Periodically remove unprocessed unsolicited message for save area * More checking on MCS messages that could be too large to handle * Fixed problem in TQL with SUM command when variable is subscripted 2002/11/15 2.4 R0 - 0050 * Fix problem with setting Unix Group-id for in-bound DTP sessions 2002/11/12 2.4 R0 - 0049 * Added code to User interface to try and detect missing child process * Fixed problem with tipdtp and TIP/ix introduced in build 0048 * The MFEXEC parameter has an additional option PARAM MFEXEC=YES,HOLD will keep the parent process active. This verifies there is an MF License seat available and is a bit faster. But, the Micro Focus license manager may end up holding seats longer than you want. PARAM MFEXEC=YES,RELEASE will stop the parent process is no transaction is active. This will free up the MF License seat. RELEASE is the default if only YES is given. Note: Using MFEXEC is only helpful for applications that use the TIP/ix TIPSUB 2002/11/07 2.4 R0 - 0048 * Corrected problem with BATFCS on LINUX * Improved performance of tipdtp on LINUX * TLIB/COPY will now set the output file ownership to match the TIP/ix system admin user/group 2002/10/25 2.4 R0 - 0047 * Fixed bugs in SMS/90 support 2002/10/15 2.4 R0 - 0046 * Added code to IMS API module to try and catch unprocessed input message IMS progams would need to be recompiled to get this change. 2002/09/19 2.4 R0 - 0045 * Fix problem with tipbatsv, used with BATFCS. It was leaving an empty transaction which should have been cleaned up. 2002/09/18 2.4 R0 - 0044 * Fix problem with TIP/dbi unique to Henrico County POLDMS routine. * Fixed problems in tipmon and tipdtp that caused occasional abort of TIP. 2002/09/16 2.4 R0 - 0043 * Fixed xfer. It was not computing MCS format length correctly when the MCS format included help text. 2002/09/09 2.4 R0 - 0042 * Solve a problem with using the latest version of Micro Focus Cobol The latest version of Micro Focus cobol checks each program execution against the allowable run-time license. The problem is that in TIP if you do a TIPSUB call, that eats another license key. For example, if you have a program that does a TIPSUB to another and then that program does another TIPSUB, then there have been 3 licenses used for just one user. On Micro Focus's advice, Inglenet has developed a special method that will allow any given user to run up to 4 TIPSUB nested programs and only consume one license key. This is allowed by the Micro Focus license manager. To activate this feature add the following to your tipix.conf file. PARAM MFEXEC=YES 2002/08/27 2.4 R0 - 0041 * Implement feature for TIP/ws to auto assign session and hence terminal name 2002/08/23 2.4 R0 - 0040 * Fixed problem that was causing crash on very busy systems * Fix problem with connecting to user computers that have digits in their computer name 2002/08/22 2.4 R0 - 0039 * fix coding error in build 37 & 38 2002/08/20 2.4 R0 - 0038 * Improve handling of key holding table 2002/08/16 2.4 R0 - 0036 * Improve handling of unsolicited messages 2002/08/12 2.4 R0 - 0035 * The thread manager (tippcstm) will log an error if LD_LIBRARY_PATH is not set * Fix problem with MCS on UTS style terminal, with field ZZZZ.ZZ when user enters -.nn The '.' was getting overlaid in error by the '-' on output. Now fixed. 2002/07/19 2.4 R0 - 0034 * Fixed problem with TQL adding files with more than 8 keys 2002/07/11 2.4 R0 - 0033 * Add missing modules to the update download file for 0032 2002/07/06 2.4 R0 - 0032 * Add some additional self-checking code to tipfcs 2002/06/27 2.4 R0 - 0030 * Fixed problem with FCS-SCRATCH. Any program using this must be recompiled to get new API module otherwise it may abort. 2002/06/24 2.4 R0 - 0029 * Fix error introduced in 0028 related to FCS-ADD to a DAM file 2002/06/17 2.4 R0 - 0028 * Add some additional self-checking code to tipfcs 2002/06/10 2.4 R0 - 0027 * Add some additional self-checking code to tipdtp * Fix problem with schedule of delivery of unsolicited messages to a terminal 2002/05/31 2.4 R0 - 0026 * Add some additional self-checking code to memory manager 2002/05/28 2.4 R0 - 0025 * Additional tipix.conf parameters for TIP/ws and TIP/fe PARAM QUEUEUNSOLTO=(*prefix,*prefix2,...,*prefix8) A list of up to 8 prefixes of terminal names that would would have unsolicited messages queued for. If an unsol msg is sent to a terminal name not matching this list, then it is NOT queued on disk for later processing. Example: PARAM QUEUEUNSOLTO=(*WM,*WN,*WQ,SPH1,*T91) PARAM QUEUEUNSOLKEEP=n n is minutes to retain unsolicited messages If a message is older then it is discarded Default is to keep as long as possible 2002/05/23 2.4 R0 - 0024 * TIP/dbi will now record I/O counts for DMS usage and status will report it 2002/05/16 2.4 R0 - 0023 * Fix problem with schedule of delivery of unsolicited messages to a terminal 2002/05/07 2.4 R0 - 0022 * tipdtp will no longer restart system when tipmon has aborted unless PARAM RESTART=YES was defined in the tipix.conf file. 2002/04/29 2.4 R0 - 0021 * Fix error in tipmon that could cause core dump when doing Output for Input queuing and MONLOG is set to 't' level 2002/04/27 2.4 R0 - 0020 * Active users was computed incorrectly when using Unattended terminal sessions 2002/04/24 2.4 R0 - 0019 * TIPPRINT now supports replacing ${envname} in Pipe command. The name inside the braces is used as the name of an enivonment variable and then the value of the variable is used to replace the ${name} For example: Method: P (P - Pipe, F - Create File, Z - Create File & Fork Cmd) Print Cmd: (lp -s -d ${PRINTER} $F________________________________________) (Also see new features described under 2001/07/05 2.3 R0 - 0097) 2002/04/23 2.4 R0 - 0018 * Fix coding error that causes users at TIP prompt to timeout and log off too quickly for DTP sessions 2002/04/19 2.4 R0 - 0017 * Change tipmon to validate destination terminal name for send unsol msgs to 2002/04/18 2.4 R0 - 0016 * Changes to tipmon to better validate terminal defintions 2002/04/17 2.4 R0 - 0015 * Additional tipix.conf parameter to send email of serious problems PARAM ALERT=me@mydomain.com If there is a serious problem, like TIPFCS aborts or DTP aborts, or the system is getting low on memory, then an email would be sent to the address defined. Of course your Unix system must be able to send email. * Additional tipix.conf parameter to attempt restart of system if it fails PARAM RESTART=YES 2002/04/16 2.4 R0 - 0014 * Changes for tipmon to better handle incorrectly defined terminal defintions 2002/04/14 2.4 R0 - 0013 * Fix some problems with handling of unsolicited output messages * Fix problem that could sometime cause a hang/stall of DTP session 2002/04/10 2.4 R0 - 0010 * Fix some problems with handling of Output For Input message queueing when a transaction was already running 2002/04/09 2.4 R0 - 0009 * Additional subtle corrections for MOVE CURRENCY dbkey * Extra logging for tipmon of Output For Input message queueing 2002/03/27 2.4 R0 - 0008 * Add support for new terminal types of MDT and OtherHost 2002/03/26 2.4 R0 - 0007 * Additional corrections for MOVE CURRENCY dbkey 2002/03/25 2.4 R0 - 0006 * Enhancements to better handle VCIN interace at Henrico County 2002/03/23 2.4 R0 - 0005 * Fix coding error in tipmon related to IMS API CALL SEND using OMA, "N". 2002/03/21 2.4 R0 - 0004 * Fix TIP/dbi to retain DMCA DBKEY in tact during MOVE xxx STATUS of SET. * Add some safety checking code to tipmon when handling unsolicited messages 2002/03/14 2.4 R0 - 0003 * The 'install' procedure will not overwrite an transaction code definition unless it is a member of the set TIP$Y$ 2002/03/11 2.4 R0 - 0002 * Fix problem with using UTS escape codes instead of DICE when transaction is defined on a different locap. 2002/03/05 2.4 R0 - 0001 * If running the Linux version, then Micro Focus COBOL version 4.1.40 is required. Older versions will not work. * The area used for staging terminal messages will be the larger of what is defined by MCSBUFSIZE (default 5120) and (#rows * #cols * 15/6) 2002/02/22 2.4 R0 - 0000 * Change from version 2.3 to 2.4 and reset update files back to near empty * This version is paired with TIP/fe and TIP/ws versions 2.4 You would need to have TIP/ix 2.4 installed before deploying any TIP/ws or TIP/fe version 2.4 The 2.4 versions of TIP/ws & TIP/fe will not work with 2.3 version of TIP/ix * If running the Linux version, then Micro Focus COBOL version 4.1.40 is required. Older versions will not work. 2002/02/20 2.3 R0 - 0130 * Fixed problem with FCS when TIP/ix was installed on an automount directory on Solaris * Fixed problem with handling of unsolicited input messages via DTP 2002/02/12 2.3 R0 - 0129 * When interfacing between TIP/ix and TIP/ws directly (i.e. TIP/cs is NOT used) TIP/ix will lookup the computer name sent by the new version of TIP/ws. Then via SMTERM, you can define the Computer name to Terminal name mapping. If the computer name is supplied by TIP/ws but not defined via smterm then TIP/ix will look up the terminal name using the IP address. Using the computer name works better when DHCP is being used since the IP address is not always the same value. * You must install this version of TIP/ix (or later) before installing the new TIP/ws (or new TIP/fe, build 11 or later). 2002/02/07 2.3 R0 - 0128 * TIP/dbi DBIFH routines had a problem when a DELETE was done during an index scan of the same record and the index allowed duplicates. Fixed. * Fixed problem with tipmcsio which prevented system from starting * Fixed problem introduced in build 0124 2002/02/05 2.3 R0 - 0126 * Fix problem with SDMPS and negative numeric values * Fix problem with support for "virtual terminal" type 2002/01/31 2.3 R0 - 0125 * Fixed problem with install/update procedure 2002/01/30 2.3 R0 - 0124 * Additional tipix.conf parameters for TIP/ws and TIP/fe PARAM MCSBUFSIZE=n n is the size of the MCS staging buffer this defines the maximum MCS Area. Default is 5120 PARAM QUEUEUNSOL=NO Declares that message being sent unsolicited to a terminal which is not connected should be discarded. This is the default behavior. PARAM QUEUEUNSOL=YES Declares that message being sent unsolicited to a terminal which is not connected should be queued on disk until the terminal connects. When TIP/ix starts all previously queued message will be discarded. PARAM QUEUEUNSOL=/directory/tosave Declares that message being sent unsolicited to a terminal which is not connected should be queued on disk in the named directory until the terminal connects. When TIP/ix starts all previously queued message found in this directory will be retained as queued. * Fixed problem with TIP/dbi & MIRAM emulation reading through an index with many key field parts 2002/01/21 2.3 R0 - 0123 * smprint now allows a printer directory to start with $envname/ where The envname will be replaced by the value of the environment variable For printers, the user's local environment is searched. * Fix problem with TIP/dbi and SETL-GE (or SETL). This backs out some code added in 1999 which looks to be incorrect. 2002/01/14 2.3 R0 - 0122 * Improve processing of unsolicited input message to a DTP session * Implement T-FREE/T-CONTROL functions for TIPTERM * Fix TQL problem with DECIMAL-POINT IS COMMA 2002/01/02 2.3 R0 - 0121 * New option in SMTERM to suppress displaying the welcome message Welcome message (Y/N) ..... _ N indicates to not display a welcome message at login V indicates this is a 'Virtual terminal' (i.e. another computer) 2001/12/14 2.3 R0 - 0120 * Fix problem with erroneous setting of output message due in tipixtcp/tipixcs 2001/11/30 2.3 R0 - 0119 * Fix possible system hang related to DTP sessions aborting 2001/11/29 2.3 R0 - 0118 * Fix TIP/dbi error in handling double word binary data. (This error was introduced in Dec 1999.) * tipctl kill -y Will kill all active users without asking for confirmation. 2001/11/28 2.3 R0 - 0117 * New utility 'tiptrmix' which can be used to export/import a text file of terminal names. A matching utility (term2ix) is available for running on Windows to extract the terminal name & computer name data that TIP/cs uses. * When interfacing between TIP/ix and TIP/ws directly (i.e. TIP/cs is NOT used) TIP/ix will lookup the computer name sent by the new version of TIP/ws. Then via SMTERM, you can define the Computer name to Terminal name mapping. If the computer name is supplied by TIP/ws but not defined via smterm then TIP/ix will look up the terminal name using the IP address. Using the computer name works better when DHCP is being used since the IP address is not always the same value. * You must install this version of TIP/ix (or later) before installing the new TIP/ws (or new TIP/fe). You would then install a version of TIP/ws dated newer than Nov 28, 2001. * Additional tipix.conf parameters for TIP/ws and TIP/fe PARAM TIMEIDLE=n n is minutes of idle time before sending a ping message to TIP/ws or TIP/fe. default is never send a ping TIMEIDLE may be helpful if you have users to dial in and may be idle for sometime and you want to make sure the dial-up connection is kept alive. 2001/11/21 2.3 R0 - 0116 * Fixed problem with SDMPS interface * Fixed problem with TIP/dbi, schema, generating code & compile on Solaris 2.8 2001/11/16 2.3 R0 - 0115 * Fix problem with TFD editing SDMPS screen * Fixed coding error in tipixtcp that could have caused a hang 2001/11/14 2.3 R0 - 0114 * status and whoson will now check that TIP/ix processes are active If Unix had been rebooted without shuting TIP down, then status & whoson acted like the system was still running * Fix problem with DBIFH and OPEN INPUT/ READ NEXT sequence. 2001/10/30 2.3 R0 - 0113 * Fixed error in logic added to tipmon to scan message queues for orphans. 2001/10/25 2.3 R0 - 0112 * Fixed error in logic added to tipmon to scan message queues for orphans. 2001/10/23 2.3 R0 - 0111 * Fixed error with TIP/dbi and the TIP/ix thread manager when server processes have been idle for some time. The problem is more likely to happen with a low value for MAXIMUM IDLE (or using the default). 2001/10/18 2.3 R0 - 0110 * Improve recovery from an aborted TIP/dbi server process * Additional tipix.conf parameters for TIP/Internet Connector PARAM JRNSYS=YES Causes updates to the TIP$SYS control file to be journaled. Normally they are not. * New options for the readjrn utility to list just a certain File or User. -F name : List only for this TIP file -U name : List only for this TIP user 2001/10/15 2.3 R0 - 0109 * Fix problem with DBIFH and REWRITE verb. * Enhance tipmon to check for lost inbound DTP sessions 2001/10/12 2.3 R0 - 0108 * Fixed problem with armdata related to REDEFINES and Packed fields * Added code to better handle a missing user record for BACK$001 * TIP/dbi new options in the Schema after the SCHEMA NAME clause to get column names shorter. TRIM NAMES- This will remove common prefixes and suffixes from the COBOL field names and translate embedded dashes to underscores. TRIM NAMES This will remove common prefixes and suffixes from the COBOL field names as well as remove embedded dashes. NLSLANG "code" To define a value to override/define NLS_LANG env variable For performance it is important that the database and Oracle client applications like TIP/dbi use the same national language set. For example: NLSLANG "AMERICAN_AMERICA.WE8ISO8859P1". 2001/10/05 2.3 R0 - 0107 * New logic added to tipmon to scan messages queues for orphaned messages and remove them. This could happen if some user applications abort or are killed. * Fix problem with TIP/dbi related to TQL usage. When pressing F2/F3 to page through records it could get the wrong record on F3. 2001/10/03 2.3 R0 - 0106 * If smuser is invoked via command line to delete a user and you are a Master level user and the command was DEL then you are not prompted to confirm the removal of the user-id. For example: smuser del foobar * Fixed problem in tipdtp that could crash the system if a user interface process could not be started. Ensure that you Unix kernal has enough space for message queues, semaphores, etc. to avoid this problem. 2001/09/24 2.3 R0 - 0105 * Fixed bug in DBIFH module related to DBIFH-SELECT function 2001/09/21 2.3 R0 - 0104 * Enhancements to TIP/dbi file handler for Micro Focus Cobol (DBIFH) This provides for much easier implementation of TIP/dbi emulating ISAM files. Please contact Inglenet for detailed documentation. Now in addition to doing your own record selection, you can COPY one table into another for backup purposes during batch processing. * TIP/dbi new options in the Schema after the SCHEMA NAME clause NULL DATE ZERO Indicates that NULL DATE columns should be returned to the application as a value of ZERO. (The default would be LOW-VALUES) PARALLEL Causes TIP/dbi to do ALTER SESSION PARALLEL You would need to be running Oracle Parallel Server. 2001/09/12 2.3 R0 - 0103 * Fixed problem with SDMPS interface * Release of fix for TIP/dbi and indexed records with multi-part keys to improve performance by keeping SELECT WHERE very simple for Oracle. 2001/09/10 2.3 R0 - 0102 * Release of TIP/dbi file handler for Micro Focus Cobol (DBIFH) This provides for much easier implementation of TIP/dbi emulating ISAM files. Please contact Inglenet for detailed documentation. 2001/08/30 2.3 R0 - 0101 * TIP/dbi new options in the Schema after the SCHEMA NAME clause DATE "format" To define the Oracle style date format. For example: DATE "YYYYMMDD". GUESS DATE "format" To define the Oracle style date format. and also attempt to guess what are date fields. Following the "format" you may list some strings that are patterns used in date field names. NOT DATE "pattern" You may list patterns which are NOT date fields. For example: GUESS DATE "YYYYMMDD" "-DT-", "-DATE-". NOT DATE "-DT-DEB-FACT-INV", "-DT-PRELEV-INV", "-DT-LANCE". ALLOW CRLF Tells TIP/dbi to retain in PIC X fields the ASCII print/carriage control codes TAB, BS, CR, LF, FF. Normally these would be translated to a space and an error message logged. SPACEOUT CRLF Tells TIP/dbi to change to a SPACE in PIC X fields the ASCII print/carriage control codes TAB, BS, CR, LF, FF. (Nothing is logged) * A new TIP API function to allow an application to change to a new user. When the call is done and verified, the user name, groups and all security is reset to that of the new user name. A COPY book called TC-USRST is provided for the new CALL "TIPUSRST" function. * * Format: CALL 'TIPUSRST' USING USRST-PKT. * 05 USRST-PKT. 10 USR-NAME PICTURE X(8). 10 USR-PASSWORD PICTURE X(8). 2001/08/17 2.3 R0 - 0100 * TIP/ix version for Caldera Open UNIX 8 is built OpenUNIX 8 is the follow on release from UnixWare 7.1 OpenUNIX 8 seems to run UnixWare 7 binaries with no problem. However, Micro Focus COBOL is not yet officially supported on UNIX 8. * Changed build of TIP/ix for Linux from Caldera to Red Hat This was tested with Merant Cobol v4.1.30 This seems to run fine on RedHat Linux 7.0. This seems to run fine on Suse Linux 7.1. This seems to run fine on Caldera OpenLinux eServer Version 2.3 2001/08/14 2.3 R0 - 0099 * Improve handling of TIP/dbi when Oracle was not started 2001/07/25 2.3 R0 - 0098 * Changes to TIP/dbi to work with Oracle 8 on LINUX * Log more information in $TIPROOT/log/tipdtp when an unknown computer attempts to connect to TIP/ix. 2001/07/05 2.3 R0 - 0097 * TIPPRINT now supports Unix mail as a destination TC-PRINT copy book has a new field PRINT-FULL-DESTINATION. If PRINT-FULL-FILE-INFO has a value of "T", then PRINT-FULL-DESTINATION is present. When composing the 'Print Cmd' in SMPRINT there are 2 new parameters: $S is replaced by PRINT-SUBJECT $T is replaced by PRINT-FULL-DESTINATION To define a printer which is really going to send email, fill in PRINT-FULL-DESTINATION with the email address and define the printer like. Method: P (P - Pipe, F - Create File, Z - Create File & Fork Cmd) Print Cmd: (mailx -s "$S" $T________________________________________________) Then in your application program do something like the following: MOVE "T" TO PRINT-FULL-FILE-INFO MOVE "N" TO PRINT-TITLE MOVE SPACES TO PRINT-SUBJECT STRING "Hello " DELIMITED BY SIZE PIB-UID DELIMITED BY SPACE INTO PRINT-SUBJECT MOVE SPACES TO PRINT-FULL-DESTINATION STRING PIB-UID DELIMITED BY SPACE "@inglenet.com" DELIMITED BY SIZE INTO PRINT-FULL-DESTINATION 2001/07/03 2.3 R0 - 0096 * Add code to TIPQUEUE to better handle large messages 2001/06/20 2.3 R0 - 0095 * Removed incorrect error message from tipfcs server 2001/05/25 2.3 R0 - 0094 * TIP/dbi new option in the Schema after the SCHEMA NAME clause DATE "format" To define the Oracle style date format. For example: DATE "YYYYMMDD". GUESS DATE "format" To define the Oracle style date format. and also attempt to guess what are date fields. 2001/05/09 2.3 R0 - 0093 * whoson -i will now list the file I/Os per terminal * The Journal LGOF record will now hold the file I/Os for the terminal 2001/04/18 2.3 R0 - 0092 * New TIPFCS function for files handled by TIP/dbi MIRAM emulation FCS-SELECT allows you to supply your own WHERE and ORDER BY clauses. 05 INVEN-SEL. 10 SEL-LEN PICTURE 9(4) BINARY. 10 FILLER PICTURE XX. 10 SEL-TEXT PICTURE X(64). 05 INVEN-ORD. 10 ORD-LEN PICTURE 9(4) BINARY. 10 FILLER PICTURE XX. 10 ORD-TEXT PICTURE X(64). ... MOVE "QTY > 20" TO SEL-TEXT MOVE 13 TO SEL-LEN MOVE "PART_NUM,QTY" TO ORD-TEXT MOVE 16 TO ORD-LEN CALL "TIPFCS" USING FCS-SELECT INVEN-PACKET INVEN-SEL INVEN-ORD CALL "TIPFCS" USING FCS-GET INVEN-PACKET INVEN-RECORD The file access is treated like an FCS-SETL, except that the positioning is lost on any transaction end point, so you cannot keep it active across terminal I/O. You may optionally omit the 4th parameter of FCS-SELECT. The length of the text areas may from 4 to 1024. 2001/04/05 2.3 R0 - 0091 * Performance improvements to TIPFCS I/O making it 25% to 50% faster 2001/03/28 2.3 R0 - 0090 * Fixed coding error related to TIP/dbi MIRAM emulation and FCS-ESETL * Fix coding error in armecl that was causing it to core dump 2001/03/23 2.3 R0 - 0089 * Ported TIP/ix to Caldera OpenLinux eServer Version 2.3 This was tested with Merant Cobol v4.1.30 This seems to also run on RedHat Linux 7.0. This seems to also run on Suse Linux 7.1. 2001/03/06 2.3 R0 - 0088 * Fix problem with TIP/dbi MIRAM emulation and FCS-SEQ-PREV * Fixed problem in creating default WEBTIPUSER record for smuser. 2001/02/05 2.3 R0 - 0087 * Fix problem in tipdtp related to missing input notification on Unisys Unix * TIPFCS will log to the history file whenever a UserId record is added or deleted 2001/01/22 2.3 R0 - 0086 * If using TIP/dbi for MIRAM emulation and you define BAD-DATA, for example BAD-DATA IS "0099" and at run-time your application presents a record with invalid data, then the status code will be set to PIB-IO-ERROR. * Fix coding error in tipdtp related to session connects being rejected 2001/01/03 2.3 R0 - 0085 * Fixed TQL compile problem when using DMS * Fixed problem in TFD with field combination of Z/2222 2000/12/15 2.3 R0 - 0084 * Enhancements to tipdtp to avoid problems with the PepGate machine * Change to DDU to better handle characters between 0x80 and 0xFF. 2000/12/04 2.3 R0 - 0083 * Fixed error in tipmon that could result in tipmon aborting. The problem is related to users closing their terminal session while still in an active TIP/ix transaction. 2000/11/29 2.3 R0 - 0082 * Fix problem with BATFCS, when the application stops immediately after a BATCOMMIT. This could crash the system. This problem is now fixed. * Fixed cpu loop in TIP/ix user interface when user closed terminal while still in TIP/ix. 2000/11/28 2.3 R0 - 0081 * Fix some coding errors in patch 0080 * Improved recognition of killed user interface for TTY ASYNC and TIP/fe 2000/11/23 2.3 R0 - 0080 * Improved recognition of killed user interface for TTY ASYNC and TIP/fe 2000/11/21 2.3 R0 - 0079 * Fix possible tipmon hang situation * TIP/dbi new option in the Schema after the SCHEMA NAME clause TRIM NAMES to get column names shorter. This will remove common prefixes and suffixes from the COBOL field names. * new option for the 'fopen' utility to change file definition from unix shell: fopen -d filename schema : Sets file to be RDBMS : fopen -x filename : Sets file to be ISAM from tip shell: fopen,dbi filename schema : Sets file to be RDBMS : fopen,isam filename : Sets file to be ISAM * Fixed an error in the TIP/dbi schema compiler for handling data fields like A REDEFINES B PIC X OCCURS n. If you want it to work the old way add IGNORE-0079 after schema name clause. 2000/11/15 2.3 R0 - 0078 * Fixed memory leak problem in tipdtp when locaps are incorrectly defined 2000/11/09 2.3 R0 - 0077 * Fixed coding error. If DTPHEARTBEAT was not defined tipdtp may go into a loop * Fixed TQL compile problem when using DMS 2000/11/07 2.3 R0 - 0076 * If tipdtp detects that tipmon is not present, then it will shutdown and restart the entire TIP/ix system 2000/11/01 2.3 R0 - 0075 * Additional tipix.conf parameters for TIP/Internet Connector PARAM WEBSESSIONS=n n is maximum web sessions allowed to be active Is limited by the maximum users in the TIP/ix license PARAM WEBALTER=(bgn,end,num,bgn,end,num) where bgn & end specify time of day in hh:mm format. If only two digits are given, they are assumed to specify the hh value and the mm value will be zero. For example 08 is 8:00AM, 17 is 5:00PM, etc.. If the current time of day is between bgn & end, then WEBSESSIONS is altered to be n. You may supply 1 or 2 sets of alternate values. PARAM WEBTIMEOUT=n n is minutes of idle time before timeout default is 120 minutes PARAM WEBUNIXUSER=usr Unix User-id to be assigned to web users default is 'nobody' PARAM WEBTIPUSER=usr TIP/ix User-id to be assigned to web users default is 'WEBDFLT' PARAM WEBPREFIX=x 1 or 2 letters used to prefix a unique terminal name default is 'W' * fixed problem with FSE and line number registers 2000/10/17 2.3 R0 - 0074 * Changes to support the Merant Server Express COBOL compiler * Fix problems with tipdtp connecting to TIP/30 locaps 2000/10/15 2.3 R0 - 0073 * In conf/tipix.conf you may now place PARAM DTP30HEARTBEAT=YES. This is used in combination with DTPHEARTBEAT and sends a period message to TIP/30 locaps to verify they are still active. (If unspecified the default is DTP30HEARTBEAT=NO) 2000/10/11 2.3 R0 - 0072 * Fix several problems with tipdtp connecting to TIP/30 locaps when the TIP/30 system is taken down and back up. 2000/09/30 2.3 R0 - 0071 * Fix problem related to TIPPEER not being given the same TIP user-id as the remote system opening the TIPPEER session * Fix problem with tipmon, leaving transaction programs as orphan processes. 2000/09/28 2.3 R0 - 0070 * TLIB changed to not pass back any of the CDA when it is called by a user transaction. 2000/09/20 2.3 R0 - 0069 * TIP/dbi additional correction for handling of OPTIONAL MANUAL INDEXES which are ASCENDING DUPS FIRST or DESCENDING DUPS LAST. 2000/09/18 2.3 R0 - 0068 * Additional tipix.conf parameters for TIP/Internet Connector PARAM WEBTIMEOUT=n n is minutes of idle time before killing session default is 120 minutes PARAM WEBUNIXUSER=usr Unix User-id to be assigned to web users default is 'nobody' PARAM WEBTIPUSER=usr TIP/ix User-id to be assigned to web users default is 'WEBDFLT' PARAM WEBPERFIX=x 1 or 2 letters used to prefix a unique terminal name default is 'W' * Whoson will note a web user as term@locap in the display 2000/09/12 2.3 R0 - 0067 * Additional changes for TIP/ix to TIP/30 DTP 2000/09/06 2.3 R0 - 0066 * A change has been made to the TIP/ix <--> TIP/30 DTP protocol to avoid a problem with large messages being sent through PepGate. tipix.conf has a new parameter. PARAM DTP30MAX=3584 to define the largest message to pass in one step. If a message is larger than this it will be sent in segments. The default is 3584 which should be adequate in most cases. For this to work, you also need TIP/30 version 6.2 patch 0043. * Corrections to TQL when a Display holds the same number of records as are in the data file. Also, a fix for TQL/DMS & FIND NEXT DUPLICATE. * A new tipix.conf parameter to save the logs files. PARAM SAVELOGS=directory Defines where the log files will get saved into a compressed tar file. (Do NOT make a save directory which is a sub-directory of $TIPROOT/log.) The log files get saved each time TIP/ix starts up. 2000/08/28 2.3 R0 - 0065 * Improved error reporting for TIP/ix DTP PEER sessions in log/tipdtp file * tipctl ping : Will cause the tipix.conf file to be reprocessed while the : the system is still running. This allows you to change many : options in the running TIP/ix system. 2000/08/25 2.3 R0 - 0064 * Fix potential problem with TIPDTP and socket I/O. * Display greeting to TIP/cs users including if New Mail is available * The DG version of TIP/ix for Intel has been upgraded to DGUX R4.20MU06 and also to use Merant COBOL version 4.1. If you install this version of TIP/ix or later on DG Intel, you must do the same upgrade as well. 2000/08/18 2.3 R0 - 0063 * Fix a problem with TQL (tqlrun) related to NEXT RECORD when the end user also does "report FROM key". Then TQL could stop reading records too soon. 2000/08/14 2.3 R0 - 0062 * Fix problem setting bad status in TIPPEER when connection broke 2000/08/10 2.3 R0 - 0061 * Fix problems with TIP/dbi MIRAM emulation and FCS-SEQ-NEXT/FCS-SEQ-PREV * Fix Y2K issue with SM utilities reporting and limited by date changed * Change company name from Allinson-Ross to Inglenet Business Solutions. 2000/07/28 2.3 R0 - 0060 * SMLOCAP may now declare locaps of type TIP/ic for TIP/Internet Connector 2000/07/14 2.3 R0 - 0058 * TIP/dbi new Options in the Schema to define time to wait for locking a record. WAIT GETUP 1.5 To wait a maximum of 1.5 seconds (default 1.5) (A value of 0 indicates to wait forever using Oracle SELECT FOR UPDATE.) RETRY GETUP 0.25 Retry the record lock at 0.25 second intervals (dflt 0.1) * The whoson utility will now display a '?' in front of the terminal name if that terminal has had no activity during the past fifteen minutes. 2000/07/07 2.3 R0 - 0057 * Attempt to fix a problem with TIP/dbi MIRAM emulation and FCS-SEQ-NEXT when a key is changed during the middle of sequential reading. 2000/06/19 2.3 R0 - 0056 * Fix a problem with FCS-PREV with a key greater than all keys in the file and when also changing indexes. This would result in a PIB-NOT-FOUND status by mistake. 2000/06/15 2.3 R0 - 0055 * TIP/dbi new Options in the Schema. ALLOW ANYCHARDATA To accept any hex value for PIC X fields. Normally DBI validates the data based on the local language setting. (see LANG env var) * The TIP/ix PIB has new field PIB-IN-LOCAP to hold the inbound TIP locap name that the user connected in from. If this is SPACES then the session originated locally. 2000/06/13 2.3 R0 - 0054 * Enhanced the DBI feature that emulates MIRAM/ISAM for batch COBOL to support READ PREVIOUS and also a small performance improvement. 2000/06/05 2.3 R0 - 0053 * Enhanced DBI to use DMCA RECORD WAIT time to wait a shorter time when locking records 2000/06/01 2.3 R0 - 0052 * Fix problem with concurrent update of same record by TQL using DMS * Fix problem with TIPPRINT handling of characters with a value > 128 2000/05/26 2.3 R0 - 0051 * Fix problem with tippcstm (used for DBI and serial transactions) that could result on applications getting a PIB-GOOD status when in fact there was an error condition. 2000/05/25 2.3 R0 - 0050 * Fixed scheduling error with TIP/dbi and the TIP/ix thread manager * Fix a problem caused by two TIPMSGO with function of 'M' in a row 2000/05/15 2.3 R0 - 0049 * When DBI set ROLLBACK Code, also force rollback of FCS 2000/04/24 2.3 R0 - 0048 * Fix small problems in status, emptyq, tipdtp & tippcstm 2000/04/26 2.3 R0 - 0047 * Compile TIP/ix for Unixware 7.1 * TIP/dbi, when OPEN AREA UPDATE issue LOCK TABLE for _NEXT_UNQ as well 2000/04/17 2.3 R0 - 0046 * Inbound TIPDTP sessions did not retrieve help text correctly. * MENU and MENUDEF now support a program type of U to force the CDA-TEXT area to uppercase. 2000/04/17 2.3 R0 - 0045 * When a second DTP hope was involved sessions would hang after the first input message. This was caused by the session hang fix in builds 0043 and 0044. Input message relaying is now fixed. 2000/04/13 2.3 R0 - 0044 * TIP/ix DTP and MCS now handle unsolicited input received when processing TIPLIST requests. This was causing sessions to hang (and eat the CPU). * TIP/ix DTP will now handle older TIP/cs versions too. This allows us to upgrade TIP/ix first, then each TIP/cs in turn. 2000/04/07 2.3 R0 - 0043 * A fix was made to TIP/ix DTP so that DTP & TIP/cs connected sessions do not hang occasionally due to a race condition. * TIPH2P trailing space suppression fixed. * Ctrl-\ (the "menu" key) now works for DTP and TIP/cs connected sessions. 2000/03/30 2.3 R0 - 0042 * TIPPRINT FLUSH fixed for AUX0 so that text is immediately flushed to the terminal. * PURGE & DIE (WHOSON) fixed to flush AUX0 when prompting for user input. * TIPDTP fixed so that MCS format request processing occurs on a private shared memory segment preventing message corruption. * COPY (TIPLIB) CDA processing fixed for DOS filenames. 2000/03/17 2.3 R0 - 0041 * ROLL fixed to allow embedded SOE, ESC and TAB characters in text * TIPPRINT fixed so that AUX1 does not inherit printer type from previous call to TIPPRINT. 2000/03/13 2.3 R0 - 0040 * New tipix.conf parameter MCSNEGZERO=YES will cause MCS to display the negative edit sign for numeric edited field that hold a value of negative ZERO. In March 1998, MCS was changed to not display negative zero, this option allows you to revert back to the old style handling of this condition. This option also needs a new version of TIP/fe (2.3.5). 2000/03/09 2.3 R0 - 0039 * Fix UTS input message editing for inbound DTP and TIP/cs sessions. * Fix input message processing for inbound DTP and TIP/cs sessions when any combination of TIPMENU, TIPTITLE and TIPMSGOV are used. * User Startup Program (TCP) support has been added for TIP/cs sessions * .tipixrc files are now processed for TIP/cs sessions. 2000/02/28 2.3 R0 - 0038 * Attempt to fix problem with being unable to Break a TQL printout * Record locks where dropped when doing Auto XMIT over DTP connection, fixed 2000/02/22 2.3 R0 - 0037 * Attempt to fix unwanted "Transaction completed" msg from DTP relay * Improve FCS trace logging * small FCS performance improvement 2000/02/10 2.3 R0 - 0036 * fix problem in TFD with field combination of Z/2222 * TIPFORK will now issue Transaction End Point processing * Fix problem in TIPFCS with the FCS-NOUP function that could take TIP/ix down 2000/01/26 2.3 R0 - 0035 * Fix error in computing response time * Fix TIP/dbi problem with MIRAM emulation and sequence of SETL/GET/GETUP/DELETE/GET 2000/01/02 2.3 R0 - 0034 * Fresh build for the new century 1999/12/09 2.3 R0 - 0033 * Fixed problem related to IMS output for input queueing and IMSFORKW=YES 1999/11/16 2.3 R0 - 0032 * TIP/dbi IGNORE DUPS-BUG is no longer supported! (Actally this option has not worked well for some time now.) If you are upgrading from a release prior to 2.2 - 0110 you should follow the upgrade instructions and not avoid them. Or if you had been using IGNORE DUPS-BUG, please follow the instructions now and upgrade your data base. 1999/11/11 2.3 R0 - 0031 * In conf/tipix.conf you may now place DTPHEARTBEAT=n where n is the number of minutes to go without hearing from another TIP/ix locap before sending a message to check if it is still there. The default is to never check. The value is given as a number of minutes. PARAM DTPHEARTBEAT=30 Note: All other TIP/ix system must be upgraded to this patch level before using this feature. * More TQL/DMS fixes for DBI and TQL 1999/11/08 2.3 R0 - 0030 * More TQL/DMS fixes for DBI and TQL * Small enhancements to WMI and WHOSON * 'precob' will now add the size of the records in the sub-schema into the calculation of the correct LINKAGE SECTION item for the -u and -U commands. 1999/11/05 2.3 R0 - 0029 * TIP/dbi correction for FETCH VIA SET USING. * FCLOSE will now double check the user count * TIPPRINT to AUX1 will now clear PIB-LAST-MCS-NAME 1999/11/01 2.3 R0 - 0028 * In conf/tipix.conf you may now place BACKNNN=Y to have background processes given the USER-ID names of BACK$001, BACK$002, etc PARAM BACKNNN=YES The default is that the background process gets the same User-id as the process which did the TIPFORK. 1999/10/28 2.3 R0 - 0027 * Fix TIP/dbi problem with IGNORE DUPS-BUG option 1999/10/25 2.3 R0 - 0026 * TIP/dbi correction for FETCH VIA INDEX LAST EQ 1999/10/21 2.3 R0 - 0025 * Fix armsort when input file is empty * Fix for interface with TIP/cs 1999/10/19 2.3 R0 - 0024 * DBI/DMS fix to simulate re-open of areas after a BIND. 1999/10/05 2.3 R0 - 0023 * More TQL/DMS fixes for DBI and TQL 1999/09/28 2.3 R0 - 0022 * More TQL fixes 1999/09/14 2.3 R0 - 0021 * More TQL/DMS fixes for DBI and TQL * fix problem with TIPFCS debug logging 1999/09/02 2.3 R0 - 0020 * Fix minor Y2K issue with unsolciited TIPMSGO function. * More TQL/DMS fixes for DBI and TQL * Fix problem with TIP/cs interface to TIP/ix * Fix problem with BATQUEUE 1999/08/28 2.3 R0 - 0019 * Fix TIP DTP to close down inbound session quicker. 1999/08/23 2.3 R0 - 0018 * FCS now defaults to lock edit buffers unless FDES-LOCK is "N" * FSE ,,,Group,Buffer will startup with the named edit buffer (contents). * Correction for MAIL and sending mail from a transaction when invalid User-id names are given. * fix problem with TIPFCS debug logging of Library I/O 1999/08/17 2.3 R0 - 0017 * fix for TFD to change field Z.Z2 into Z.22 * fix problem with TIPFCS debug logging of Edit buffer I/O * DBI was not handling PIC S9 fields correctly and reported it as bad data. * Corrections for TQL run-time related to TQL and DMS. * change TIPPRINT to allow Title page to be printed on AUX1 1999/08/04 2.3 R0 - 0016 * Correction for unattended terminals 1999/07/23 2.3 R0 - 0015 * Correction for TQL run-time related to TQL and DMS. * Fixed problem with 'sorter' mixing up HELP with a group starting with H. * Enhancements to armjcl.rc 1999/07/15 2.3 R0 - 0014 * TIP/dbi additional correction for handling of FETCH CURRENT OF SET USING. * Correction to better detect broken TCP/IP connections 1999/06/29 2.3 R0 - 0013 * TIP/dbi additional correction for handling of OPTIONAL MANUAL INDEXES. * Correction for TQL run-time related to TQL and DMS. 1999/06/24 2.3 R0 - 0012 * FSE,R starts up in Read Only mode 1999/06/15 2.3 R0 - 0011 * FSE will now avoid passing back junk in the CDA to an application that called it. * FSE,K wil not scratch or close the edit buffer when it exits. * Problem with ARMSORT related to NT fixed. * TIP/dbi additional correction for handling of OPTIONAL MANUAL INDEXES. 1999/06/01 2.3 R0 - 0010 * Fixed armsort problems when sorting in memory * TIP/dbi additional correction for handling of OPTIONAL MANUAL INDEXES. * When starting TIP/ix: tipctl boot TIPDATE=CCYYMMDDJJJ can be used to set a different value in the PIB date. eg. tipctl boot TIPDATE=20000112012 1999/05/27 2.3 R0 - 0009 * Fixed data alignment problem on ALPHA DEC-UNIX. * IMS programs in external succession are cancelled after the TIMEOUT value. TIP/ix had been waiting for the TIMEOFF value. * ARMDATA problem related to OCCURS within OCCURS is fixed. * TIP/dbi additional correction for handling of OPTIONAL MANUAL INDEXES. 1999/05/18 2.3 R0 - 0008 * TIP/ix For 2000, PIB-DATE had the year portion being set to 100 instead of 00 for the COMP-3 field, if PIB-DATE which is PIC 9(6) COMP-3 was moved to a PIC 9(7) COMP-3 you would get the incorrect value. This has been fixed. * MENU was not displaying the menu item help information and this is fixed. * Corrected some problems with ARMCOB 1999/05/14 2.3 R0 - 0007 * TIP/dbi speed up processing of FIND CURRENT OF SET USING field 1999/05/13 2.3 R0 - 0006 * TIP/dbi additional correction for handling of OPTIONAL MANUAL INDEXES. 1999/05/06 2.3 R0 - 0005 * TIP/dbi, corrected an error related to changing the value of the key field of an OPTIONAL MANUAL index that the record was NOT a member of. * TIP/dbi change in the way it handles OPTIONAL MANUAL INDEXES The original code constructed a SELECT using a "nested loops join" technique however this resulted in Oracle making very bad decisions about how to process the SELECT and the end result was very bad performance. The new method issues a SELECT to the table for the optional manual index and then for each row returned it issues a second SELECT to the primary table. Essentially TIP/dbi does the "join" operation by itself. The issuing of multiple, simpler SELECTs results in much better overall performance. If you really want it to work the old way you add a directive as follows in the Schema immediately after the SCHEMA NAME clause. USE JOIN To use the original JOIN method which is slower. The default is to use the new faster method. 1999/04/26 2.3 R0 - 0004 * TIP/dbi, corrected an error related to OPTIONAL MANUAL IS NULL. * TIP/dbi, corrected schema setting a field to RAW by mistake. * Fixed a problem with IMS programs doing CALL SEND to PRINT on another terminal 1999/04/23 2.3 R0 - 0003 * TIP/dbi emulating MIRAM/ISAM files in batch had some problems which have been fixed. * Fixed TIP/dbi problem with a key change in an optional manual index * Fixed problem with "curses" interface for Async terminals on AIX * Corrections to ARMSORT and ARMRPG 1999/04/08 2.3 R0 - 0002 * TIP/dbi emulating MIRAM/ISAM files with Oracle 8 had a problem interpreting the Oracle 8 ROWID. This has been corrected. * TIPMSGO with Data Only and the Count less that MCSSIZE was not clearing the fields to the filler character. This has been corrected. You will also need TIP/fe build 301 or better. 1999/04/06 2.3 R0 - 0001 * Corrections to ARMMNU, ARMSORT and ARMCAT for both UNIX and NT 1999/03/31 2.3 R0 - 0000 * TIP/ix version advanced to 2.3. This will be the new base for doing updates. 1999/03/22 2.2 R0 - 0144 * Fixed a problem with TIP/dbi doing MIRAM emulation on HPUX * Fixed a nasty race condition between the TIP/ix user interface, thread manager and TIP/dbi when using reusable transaction programs. 1999/03/15 2.2 R0 - 0143 * UnixWare 2.1.x platform being built again. * Fixed Y2K issues in armcat utility. * Fixed armsort problems when sorting in memory and output record size is larger than input record size. 1999/03/09 2.2 R0 - 0142 * TIPPRINT was corrected to better handle alternate character sets * New tipix.conf parameter MCSDATE=YES will cause MCS to display embedded date fields $YYMMDD$ as YYYYMMDD, $MMDDYY$ as MMDDYYYY and $DDMMMYY$ as DDMMMYYYY. Display 4-digit year including century. MCSDATE=NO will cause the MCS heading dates to not be displayed at all. This requires TIP/fe build 300 or later. 1999/03/01 2.2 R0 - 0141 * Fixed problem with SETK, SETL in IMS application program interface. * ARMSORT in memory sort which is invoked via the environment variable TIPHEAPS has been made significantly faster. This is suitable for small data files (a few hundred thousand records). If the storage required to sort in memory is less than 10MB then the default is to do an 'in memory' sort. * ARMSORT now has an option to sort on a two digit year field, adjusting for the century. armsort accepts SORT3, SORT and DATA type commands. Whereever you could specify a Numeric Unpacked data for sorting, you can now also add a test for YY. For SORT, in addition to ZD, you can declare YY. Example: armsort -f -t'~' << '/*' SORT FIELDS=(3,2,YY,,6,15,CH,,1,4,ZD,D),WORK=3 RECORD RCSZ=80,DEBLANK=(C,6) INPFIL BLKSIZE=1024,DATA=A OUTFIL BLKSIZE=2048,RCSZ=100 OPTION CSPRAM=YES,DUMP,PRINT=ALL END For SORT3, in addition to U, you can delcare Y. Example: armsort -f -t':' -3 << '/*' * 1 2 3 4 *7890123456789012345678901234567890 HSORTR 7A 0X 80 O C 8 9EQC1A OOC 1 9EQC5 * U 7GEF 8 FNY 3 4 FOC 6 25 FNU 1 4 FDC 3 4 FDC 5 5 FDC 6 64 FDC 1 4 /* For SORT1100, in addition to Q, you can declare Y. It will also check for an env variable TIPCENTURY and if defined and numeric, then the value is used for the century break year. The default value for the century break year is 50. 1999/02/23 2.2 R0 - 0140 * TIP/ix to TIP/ix DTP has been improved. Previously when you did a "connect locap" the terminal support dropped down to UTS-style support only. Now all MCS functions, TIPMSGOV, TIPMENU, TIPTITLE, TIPASK, TIPASKYN are all supported in full TIP/ix-style MCS operation. * SMLOCAP may now declare locaps of type TIP/cs for TIP/Connection Server TIP/as for TIP/Application server * TIP/dbi dbiload utility was generating code to unload records which are members of a set in the wrong order. This has been fixed. * TIP/dbi: corrected an error related to OPTIONAL MANUAL IS NULL. * TIPH2P was not handling 8-bit characters correctly. This is fixed. * TIPPRINT to AUX0 was forcing the Page Length to 23. It will not set it the actual terminal size or that supplied by the application program. 1999/02/11 2.2 R0 - 0138 * If tipix.conf has PARAM FCSMATCH=YES, then TIP/ix will insist that DAM and SAM files exist before opening them. Previously FCSMATCH just checked for ISAM files existing and having matching attributes as defined. * Fixed up make.ora8.UW7 for use with Oracle8 on UnixWare 7.0.1 1999/02/05 2.2 R0 - 0137 * Fixed a bug with using TIPMSGO with MCS-FUNCTION "D" for data only and when a field as set to LOW-VALUES. The field was being erased when the original data should have been left on the display. This is fixed. This will require a new version of TIP/fe as well. * TIP/dbi new Options in the Schema immediatly after the SCHEMA NAME clause. OPTIONAL MANUAL IS NULL This tells TIP/dbi to set the columns used for set membership to NULL when the record is NOT a member of the set. Normally TIP/dbi just sets the columns to a value of ZERO. Setting to NULL results in no zero entry being added to the index. Using this option would require changes to existing databases to remove the NOT NULL constraint. If you are reloading the database anyway, you may want to use this option. 1999/01/19 2.2 R0 - 0136 * New option for the fcsdbug command to just turn debugging on for an FCS server which handles a specific file. fcsdbug on filename Where filename is the logical name of the data file. * If TQL was started by TIPFORK on another terminal it was not getting all of the command from the CDA. This is now fixed. 1999/01/05 2.2 R0 - 0135 * Fixed a bug in TIPFCS that was causing DYNAMIC file to not be created if the UNIX directory did not already exist. This has been fixed. * FSE command MC was truncating the string by one byte. This is fixed. * Updating the security information of a Printer made it inaccessible. Fixed. 1998/12/18 2.2 R0 - 0134 * Fixed TIP/dbi to handle SORTED set with multiple members and when the sort field has multiple parts. * <<< Changes made to HSP utilities >>> (armdata) 1998/12/15 2.2 R0 - 0133 * New status command option. status IC or status FC will display only files which are closed. * tipinstall now displays the size of the GDA * TIP/dbi now implements SEPARATE SELECT for MIRAM emulation as well. 1998/12/11 2.2 R0 - 0132 * TIP/dbi was relying on the underlying relational database being able to order columns of an index in either ASCending or DESCending order. (For example, Informix does support this) Oracle accepts this syntax but it DOES NOT implement it. Oracle ONLY orders indexes in ascending sequence for all columns. This discovery has revealed some nasty performance problems and in a few cases data may be returned in the incorrect sequence (within duplicates). This problem happens with any INDEX, CALC, or SORTED set which has the data field ASCENDING and DUPLICATES FIRST or the data field DESCENDING and DUPLICATES LAST. In order to fix this problem a new column may need to be added to tables (for CALC) which have this situation. In addition some of the columns used for positioning within duplicates may need to be updated and changed to negative values. Several steps need to be done: 0. It would be a good idea to take a backup. 1. You will need to re-compile the oradiff utility. cd $TIPROOT/src/dbi make -f Make.pc oradiff 2. Then run the 'schema' utility on your DMS schema and re-make the I/O modules. 3. also in your .dd directory do make load This will create a load binary. (ie. if your schema name is foobar then it creates foobarload) 4. Then run oradiff on your generated schema.ddl file to create a schema.alter SQL script. You may see things like UPDATE table SET pos_xxx = row_xxx; in the schema.alter script. You may also see there is nothing to do. 5. Run this .alter script through sqlplus to add the additional columns and update the table data. (There could be no need to add columns so if .alter does not exist then you do not need to run it.) This may update a lot of records in the database. Make sure that your Oracle ROLLBACK segment is large enough for updating the complete largest table in your database. 6. Run the load program with an option -D. ie. foobarload -D This may update a lot of records in the database. If there is nothing that needs fixing then you may see a message like: "Analysing database structure to determine what needs fixing" "No possible issues to deal with " Make sure that your Oracle ROLLBACK segment is large enough for updating a complete table in your database. (This generates a script in the current directory called fix.sql ) ((ie. fixfoobar.sql). If you need to reverse the effect just edit this ) (script and remove the minus signs and re-run it. ) (Normally you should not need to do this. ) 7. Run some tests to confirm that this problem has been fixed and everything else works as before. 1998/12/03 2.2 R0 - 0131 * TIP/dbi now supports Oracle8 on HPUX. Oracle 8 has larger limits on the number of columns in a table and this could affect the "folding" of fields into columns. If you are creating a new database with Oracle8 then this is ok. If you have an existing database created before Oracle8 then you may need to tell TIP/dbi. There is a new option that can be placed in the Schema immediatly after the SCHEMA NAME clause to tell TIP/dbi to use the old limits. ORACLE7 SIZES * Enhancement to TIP/dbi to use pre-compiled SQL for FETCH via ROWID FOR UPDATE. This is used for the DMS MODIFY verb. * <<< Changes made to HSP utilities >>> (armxxx, etc) * TIP/dbi had an error in its handling of FETCH FORMAT 7B DML verbs. This is also known as FETCH-27. If you have a FETCH-26 GREATER THAN OR EQUAL followed by FETCH-27 NEXT and the index used is DESCENDING. Then the FETCH-27 would have returned the record which is the next one GE. However, according to the DMS manual, I it should return the next record with a key LT, since the index is DESCENDING. (If the index was ASCENDING, then the correct result was returned.) This problem has been corrected. * TIP/dbi new options in the Schema immediatly after the SCHEMA NAME clause. NO ROWNUM To stop using ROWNUM=1 to limit the work Oracle does. USE ROWNUM Tell TIP/dbi to use ROWNUM=1 to limit the data read. LIMIT ROWNUM n Where n is a number. TIP/dbi will then limit all SELECT WHERE by including ROWNUM < n. If you do use this option you must pick a number which is greater than the most number of duplicates you may have for any key value in any index. >> ROWNUM is not safe to use if Oracle does not do INDEX SCANS as it should! << >> TIP/dbi default at present is to not use ROWNUM at all unless told to << 1998/11/24 2.2 R0 - 0129 * TIP/dbi I/O routine will now set the local language code. This is important when determining if data about to be stored is valid or not. 1998/11/19 2.2 R0 - 0128 * <<< Changes made to HSP utilities >>> (armxxx, etc) * HPUX 10.01 is no longer supported. You must be running HPUX 10.20 or later. 1998/11/10 2.2 R0 - 0127 * TIP/dbi uses a double float number to sequence members of ORDER NEXT & PRIOR sets. When many inserts are done into the set, it may happen that the numbers need to be resequenced. Previously DBI would generate new values using an increment of 1. Now it uses an increment of 2 to reduce the number of times this event may happen. Also you may place an environment variable TIPDMSRESEQ with a numeric value between 2 and 16 to be used. You may want to set this if you know your program will be doing a lot of inserts. For example: setenv TIPDMSRESEQ 6 or in tipix.conf (this is not a PARAM) just place TIPDMSRESEQ=6 * TIP/dbi schema was not using exactly the correct ORDER BY for some SET processing. It did not appear to affect anything, but it could for some versions of Oracle. This has now been fixed. 1998/11/06 2.2 R0 - 0126 * TQL will now process ERROR "msg" inside of ON DELETE. * TIPFCS would loose its sequential position within a file if a SETL had been done then during GET processing a DELETE and ADD was done to the same file. This problem has now been fixed. * TIP/dbi new Options in the Schema immediatly after the SCHEMA NAME clause. NO SEPARATE SELECT to issue complex selects as a single SELECT with a complex WHERE clause. After much experimentation it was found that when a WHERE clause has an " OR " condition that Oracle often makes bad decisions and may not access the data using the index provided and named in the INDEX Hint. To solve this problem, TIP/dbi will now issue 2 or more SELECT statments with just one part of the WHERE ... OR ... at a time until it completes all parts of it retrieves some data. Through testing it has been found that issuing multiple simple SELECTs runs about twice as fast as issuing one complex SELECT. The NO SEPARATE SELECT will make the system run the old way. The default is to run using this new method. For example: IDENTIFICATION DIVISION. SCHEMA NAME IS DMSSCH. ORACLE7 SIZES NO SEPARATE SELECT 1998/10/30 2.2 R0 - 0125 * New SMTERM feature. In the field for declaring an "unattended terminal" You may now place a value of "Y" for Unattened as before or a new value of "B" for Background Terminal. A background terminal will be started and stay active. This is for handling IMS output for input queueing to non-real terminals. IMS supported terminals names BTH1, BTH2, BTH3, BTH4. With this feature you can define any terminal name you want. For the device name key in something batch or batch1, etc. * TIP/dbi new Options in the Schema immediatly after the SCHEMA NAME clause. NO ROWNUM To stop using ROWNUM=1 to limit the work Oracle does. USE ROWNUM Tell TIP/dbi to use ROWNUM=1 to limit the records read by Oracle >>> ROWNUM is not safe to use if Oracle does not do INDEX RANGE SCANS as it should. <<< NO INDEX-NAME Tells TIP/dbi to not give Oracle the index name in a hint with this option TIP/dbi will only tell Oracle the table name. Some versions of Oracle work better with the index name and some versions work better without. * In conf/tipix.conf you may now place IMSO4IQUE=N to prevent output for input messages from being queued. If this is specified, then if the terminal is already busy then a status of 6,2 will be returned. The default is that output for input messages are queued until the terminal reaches an idle state and then they are processed PARAM IMSO4IQUE=NO 1998/10/16 2.2 R0 - 0122 * precob, schema and TQL all ignored SYNC and did not align data items to the SYNC boundary. In MBP COBOL the option is sync+ In MF COBOL the option is IBMCOMP New options have been added to TIP/ix to turn this option on. If you are using these options then you should also now use. precob -s will align SYNC data items schema will now look for the following after the SCHEMA NAME clause. ACCEPT SYNC : to process SYNC and do the data item alignment TQL will check for an environment variable called TQLSYNC and if its value is the word "on" then SYNC will be processed * SMS/90 interface bugs corrected * TIP/dbi may have missed some indexes when REPLICATE INDEX was declared. It would miss them if there was an index with fewer than 3 parts followed by an index with more than 3 parts. 1998/09/25 2.2 R0 - 0121 * TIP/dbi bugs fixed related to INDEX with DUPS FIRST/LAST The TIP/dbi runtime code may loop or core dump on HPUX. 1998/09/21 2.2 R0 - 0120 * TIPFCS was not correctly handling rollback when a user killed their terminal session with TIP/ix. Entries where left in the key holding table. This problem has now been corrected. * TIP/dbi schema was not detecting some cases where the CALC and INDEX keys were identical. This could result in an index hint with the wrong index name which then causes Oracle to do a table scan. This has been fixed. * TIP/dbi schema was generating the index for a SORTED SET that allowed DUPS incorrectly. This has now been fixed. * TIP/dbi oradiff was not handling VARCHAR correctly. This has been fixed. 1998/09/14 2.2 R0 - 0119 * TQL Saved command file TQLSVE2 will now have the command usage updated * Support added for SMS/90 Interface. IMS transactions which use SMS/90 calls should be defined as type SMS in SMPROG. Numerous changes to MCS code that builds UTS data to support SMS/90. Also add PARAM SMSEMULATOR=YES to your tipix.conf to enable this. With SMSEMULATOR=YES, CALL BLD constructs a UTS message for the terminal. With SMSEMULATOR=NO, CALL BLD sends the MCS format for TIP/fe smart operation. 1998/09/09 2.2 R0 - 0118 * The TIP/dbi oradiff utility will now detect most of the index changes and emit code to DROP and reCREATE the updated indexes. You must re-make this utility locally to match your own version of Oracle. make -f Make.pc oradiff 1998/09/02 2.2 R0 - 0117 * TIP/dbi schema was generating wrong code to SORTED SET that allowed DUPS, but no indication of DUPS FIRST or LAST. This is now fixed. * TIP/dbi had an error handling the BIND record verb which could core dump on some UNIX platforms. 1998/09/01 2.2 R0 - 0116 * TIP/dbi had a problem with a record that is LOCATION MODE INDEX with one fo the indexes with DUPS FIRST or LAST and if the record was also the member of an AUTOMATIC SORTED SET which did not allow DUPS, then the record was not being placed into the SORTED SET when it was STOREd. * TIP/dbi also had a problem when a FETCH ... EQUAL TO key was followed by FETCH NEXT ... VIA INDEX... It was stopping when there were no more records with the equal key. This has been fixed. 1998/08/20 2.2 R0 - 0115 * TQL now accepts PROGRAM-ID. ... MAXREAD n as well as PROGRAM-ID. ... MAXREAD=n * TQL now accepts MOVE ZERO TO xxx * TQL will now time out each screen input request. It will wait a maximum time equal to that specified by the tipix.conf TIMEOUT value. * Fixed several (very minor) Year 2000 reporting issues. 1998/08/11 2.2 R0 - 0114 * Fix a problem with TIP/dbi chosing the wrong INDEX HINT when a CALC and INDEX had identical fields in the same record. 1998/08/10 2.2 R0 - 0113 * TIPFCS may return records out of sequence when program A is doing SETL, GET, GET, GET and program B does an ADD which results in a duplicate status. Then Program A may get the wrong record on its next GET. This problem has been corrected. * TIP/dbi had additional corrections for the bug in handling INDEX and SORTED sets which ALLOWED DUPLICATES FIRST or LAST. 1998/08/07 2.2 R0 - 0112 * <<< Changes made to HSP utilities >>> * TIP/dbi had additional corrections for the bug in handling INDEX and SORTED sets which ALLOWED DUPLICATES FIRST or LAST. * New option for TQL EXPORT command. EXPORT TRIM (....) TRIM indicates that trailing spaces are to be removed from PIC X fields. Your can also do EXPORT ASIS TRIM or EXPORT ',' TRIM etc.. 1998/07/30 2.2 R0 - 0111 * TIP/dbi did not correctly handle an OPTIONAL MANUAL INDEX which had more than one field used to make up the index. This is now fixed. The generated SQL for an OPTIONAL MANUAL INDEX now uses a "join" where as the " IN " operator had been used before. * TIP/dbi was not returning the BAD DATA status code if non-numeric data was used in a numeric data fields. This error status will now be returned. 1998/07/21 2.2 R0 - 0110 * TIP/dbi had a bug handling INDEX and SORTED sets which ALLOWED DUPLICATES FIRST or LAST. The bug happened when a MODIFY was done in which the key field of the INDEX or SORTED SET was changed. If the key was changed then the record should be re-positioned FIRST or LAST within the duplicates. >>>This re-positioning was not happening.<<< In order to fix this problem a new column needs to be added to tables which have this situation. Several steps need to be done: 0. It would be a good idea to take a backup. 1. You will need to re-compile the oradiff utility. cd $TIPROOT/src/dbi make -f Make.pc oradiff 2. Then run the 'schema' utility on your DMS schema and re-make the I/O modules. 3. Then run oradiff on your generated schema.ddl file to create a schema.alter SQL script. You should see things like UPDATE table SET pos_xxx = row_xxx; in the schema.alter script. 4. Run this schema.alter script through sqlplus to add the additional columns and update the table data. This may update a lot of records in the database. Make sure that your Oracle ROLLBACK segment is large enough. The schema.alter script avoids the need to reload the entire database. 5. For indexes which now reference a column like POS_INDEX_nn_xxxx you will need to DROP the index and re-CREATE the INDEX. This could be done by make a copy of your schema.ddl file and editing it so that you just have the DROP INDEX ... CREATE INDEX command as needed. If this step is not done TIP/dbi will still work, but the performance will be bd because Oracle does not have the correct INDEX definition. 6. Run some tests to confirm that this problem has been fixed and everything else works as before. * TIP/dbi gives warnings to check for database structure problems if the database was loaded prior to TIP/ix 2.2-0075. To suppress this warning message add the following at the start of the schema source. SUPPRESS-0075 * TIP/dbi gives warnings about the above error. If you want to surpress these warning after having fixed the database then add the following at the start of the schema source. SUPPRESS-0110 * If you do not care about the above bug and just want to ignore it then add the following at the start of the schema source. IGNORE DUPS-BUG With this option TIP/dbi will not warn you and it will generate the database stucture and code as it did before. 1998/06/25 2.2 R0 - 0109 * TIP/dbi schema now accepts a specific index name to be used for the Oracle index. This is defined as a string enclosed in quotes as part of the INDEX definition. For example: LOCATION MODE INDEX SEQUENTIAL USING CM-NUMBER AS KEY 1 "K1_TXPFILE" DUPLICATES NOT ALLOWED USING CM-TELEPHONE CM-COMPANY AS KEY 2 "TXPFILEIDX3" DUPLICATES ALLOWED * Due to the above change oratosch.pc has been updated to emit the real Oracle index names. Your should re-compile this program on your own UNIX platform and version of Oracle. NOTE: oratosch is intended for use with Oracle tables which pre-date the use of TIP/dbi or which are generated by some other software application and you want to access these tables via TIP/ix and TIP/dbi. * MENUAR had a problem deleting menu help when the menu had a full 24 items. This has now been corrected. * MAIL will now remember the Read letter numbers following a sub-command on a given mail message. 1998/06/05 2.2 R0 - 0108 * Some minor corrections to dbiload * Fixed TIP/dbi I/O problem which resulted in core dump on HPUX. * IMS PIB-LONG-DATE is now set on initial entry. It was previously only set when an input message was read. You need to re-compile application to get this correction. 1998/05/15 2.2 R0 - 0107 * For MBP ISAM files, ISAM record locking is now inhibited. Although doing ISAM record locking would help to allow concurrent updating from batch COBOL programs, it does cause serious problems with MBP ISAM. The ISAM library will often return an EFLOCKED status. * A new environment variable has been added. If TIPISAMDAT is present and has a value N (ie. csh: setenv TIPISAMDAT "N" or sh: TIPISAMDAT=N; export TIPISAMDAT) then ISAM files created by TIP/ix will not have the '.dat' extention appended to the data file. Although using '.dat' is C-ISAM compatible, Micro Focus COBOL does not append the '.dat'. In conf/tipix.conf you should place TIPISAMDAT=N in as an environment variable and NOT as a PARAM statement. * TIP/dbi will now set current of set to the OWNER record when it encounters an end of set (0307) with a FETCH NEXT OF SET. 1998/05/08 2.2 R0 - 0106 * For FCS using MBP ISAM files, it now checks for and logs the values given to ISAMBUFF and ISAMFCB. See MBP manual chapter 1 for details. Incorrect setting of ISAMFCB could cause file locking problems. * TIP/dbi new Options in the Schema immediatly after the DATA DIVISION line. NO HINTS To stop the use of Oracle Hints. * TIP/dbi FREE ALL was clearing all set currency. It should not clear set currency for which the CURRENT OF RUN-UNIT is a participant. Fixed. * TIP/dbi I/O routine will not update its internal version of a record for FIND USING dbkey. If a later MODIFY is done and the I/O routine detects that some other process changed the record an error status is set. * Fixed some problems in TIP/dbi I/O related to FETCH fomat 7A and 7B verbs. One problem happened for INDEXES which allowed duplicates. The other problem was related to FETCH ... EQUAL TO KEY followed by FETCH NEXT when the index allow duplicates. * IMS EDIT=xxx was removing all DICE codes. According to the manual it should leave a space whereever there was a DICE for a new line. This is now fixed. * If using MBP ISAM, it could happen that a status of 113 (meaning file locked) is returned. This could happen if batch programs are reading the file. If this happens during a ROLL BACK, TIP/ix will retry X times at 1 second intervals and then if the file is still locked it will shut TIP/ix down. It does a shutdown since the rollback can not be completed and the file is not in a consistent state. In tipix.conf you may add the parameter to define the max times to retry. PARAM MAXFILELOCK=1000 This will retry 1000 times to complete rollback before a system shutdown. * During system startup, it will now report the names of files that need some rollback recovery. * If any file is not able to be recovered at startup, its name will be reported. * The SMS/SFS routines EDT/EDIT will translate underscores into spaces regardless of what was defined for SMSFILL or SFSFILL. * Fixed bug in TIP/ix DTP code. It was lossing track of a DTP session and the local TIP/ix session. 1998/04/21 2.2 R0 - 0105 * die & purge will now log the event to the log/HISTORY file. * scratch,a will now scratch all dynamic and edit buffers in the current AFT * TIP/dbi I/O routines had a problwm when a DELETE was done during an index scan of the same record and the index allowed duplicates. Fixed. * TIP/dbi precob was not correctly processing the DMCA and record layouts according to the INVOKE SCHEMA clause. This is now fixed. * dbiload was changed to process a command file holding detailed instructions. The command file created is called cmd.txt If need be you may edit this as required and then rerun it with dbiload -c mycmdfilename * menu now processes command line starting with a period and does a TIPFORK. * menu now processes command line starting with a greater-than (>) and will start the rest of the command as a UNIX command in UNIX background. * On very fast Solaris systems the program tipixtcp which interfaces with TIP/fe was aborting with the message "pollable event". This problem has been fixed. 1998/04/08 2.2 R0 - 0104 * A bug in the TIP/dbi DELETE ALL code that would result in not all of the member records being deleted. Some records would be left as orphans. If Record A was an owner of sets S1 with member record M1 and also Set S2 with member record M2. Plus the member records also owned sets. If M1 was owner of set S11 with member M11. Then the bug resulted on only one set of the M11 records being deleted. It would delete all of the M1 and M2 records and of course delete record A. A DELETE ALL is supposed to remove everything from the starting record down through all sets. This bug was introduced in version 1997/11/18 2.2 R0 - 0091. * Some improvements were made to TIP/dbi to use SQL host variables for composite indexes that are also the "primary" index or CALC key. This should cause a reduction in the number of times a dynamic SQL statment needs to be parsed by Oracle. * TIP/dbi schema program has a new option -Z to cause it to generate .constraints which holds some referential integrity constraints for Oracle. If you run the SQL file after running the .ddl file through sqlplus, it will provide Oracle with information to check the SET relationships itself. This will not affect TIP/dbi, but may be helpful if you are manipulating the database directly with sqlplus. 1998/04/06 2.2 R0 - 0103 * Fix error in TIP/dbi schema progam. It was generating the host variable for sorted sets with numeric keys one byte too small. This has been fixed. * Improve on TIP/dbi schema checking for improper REDEFINES To disable the extra checking use schema -R 1998/03/24 2.2 R0 - 0102 * New parameters for tipix.conf file to define where application log files go. PARAM LOGDIRECTORY=/location/to/put/logs PARAM COMBINDLOGS=Y|N Default is Y. If N, then each log file gets a unique name based on date and time. Also, setting an environment variable TIPLOGDIR for a given user overrides the system default LOGDIRECTORY. If no log directory is defined, it defaults to the users home directory. * New parameter for tipix.conf file to request that OPEN=YES files be opened. PARAM OPENFILES=YES * User statistics for input & output messages and accumulated time logged on are now being kept. See "open tipsysu stats" for a report. * Fixed problem with TREN when both ISAM and TIP/dbi are involved together which was causing the terminal to just hang. 1998/03/17 2.2 R0 - 0101 * Fixed coding error in TIP/dbi schema & solve problem with REPLICATE INDEX. NOTE: an index can only be replicated if it contains all character data. If any of the fields are Signed Numeric or COMP then it this technique would fail so TIP/dbi will not try to replicate indexes like this. 1998/03/04 2.2 R0 - 0100 * In order to do testing for Year 2000. TIP/ix will ignore the activation key if the systems current date is in January 2000. * TIP/ix user interface would abort with "Alarm Clock" message after trying to execute an invalid transaction. * TIP/dbi schema compiler now accepts the directive REPLICATE INDEX at the start of the schema source. When declared, indexes with more than 3 columns will have the data replicated into a single column which is then used as the index. This is to avoid poor performance of Oracle in handling composite indexes. * TIP/dbi schema compiler now accepts the directive CLUSTER ALL at the start of the schema source. When declared, set owners and member which are LOCATION MODE VIA SET and are in the same area will be defined to be stored in an SQL CLUSTER. * TIP/dbi schema compiler now accepts the directive CLUSTER in a record definition which owns a SET. When declared, the set owner and member(s) which are LOCATION MODE VIA SET and are in the same area will be defined to be stored in an SQL CLUSTER. * 'precob' will now add the size of the records in the sub-schema into the calculation of WORKSIZE for the -u and -U commands. Improved detection of whether DELETE is COBOL or DML verb. * 'msgar idps' did not handle fields of the format V999 correctly. Fixed. * new option for 'ebcasc' program to generate EBCDIC-to-ASCII translation tables based on various National Replacement Character mappings. This option alters the translation tables so that EBCDIC+NRC is translated into ISO-88591. ebcasc -N BRI - For British or United Kingdom ebcasc -N NOR - For Norwegian and Danish ebcasc -N FRE - For French ebcasc -N GER - For German ebcasc -N ITA - For Italy ebcasc -N SPA - For Spain ebcasc -N SWE - For Sweden ebcasc -N CFR - For Canadian French ebcasc -N SWI - For Swiss French & German * New parameters for tipix.conf file to define the MCS FILLER value for SFS and SMS progams. PARAM SFSFILL="x" and PARAM SMSFILL="x" where "x" may be "*", or "_" or " ". Default is "_". * FSE was writting out bad file names if the SE command was used. * fopen will exit with a UNIX status of 4 if the user does not have security to run the fopen program. 1998/02/03 2.2 R0 - 0099 * Enhancement to TIP/dbi to use pre-compile SQL for FETCH via DBKEY FOR UPDATE * New 'update' script for merging just the new modules into a base release of TIP/ix. This will work for updates following this one. 1998/01/23 2.2 R0 - 0098 * Fix bug with TQL using ranges in a subscript. This will now work correctly for use in two dimensions. But, it is still buggy for more than 2. IE. FLD(1..12,1..7) will work, but FLD(I,1..12,K) will not work. * TQL now has new internal fields. DMCY$ 9(8) Current date in DDMMCCYY format. CJUL$ 9(7) Current date in CCYYDDD (Julian or day-of-year) format. CYMD$ 9(8) Current date in CCYYMMDD format. CCYY$ X(4) Current year in long format. CC$ X(2) Current century. (The following are returned via TIPDATE which is localized to the system language.) MONTH$ X(20) Current Month as a text name (ie. January) DAY$ X(20) Current day of the week as a text field (ie. Friday) 1998/01/21 2.2 R0 - 0097 * Merged in source corrections to the HSP utilities * TIP/dbi schema has option -s (or add RESET SEQUENCE to schema) to reset the sequence number used when splitting large fields for each record. 1998/01/19 2.2 R0 - 0096 * Several problems with the TIP/ix MAIL program have been fixed. * Fix bug that caused large IMS messages to be sent as partly unsolicited. * TIP/dbi was giving Oracle wrong INDEX hint if a CALC key was indentical to the index key. This was fixed. 1997/12/04 2.2 R0 - 0094 * Add long date to IMS PIB (8-digit date) includes Century. This will require all IMS applications to be recompiled. * Add PARAM DMSMULTIAFT=Y|N; Default N, which is as TIP/30 DMS worked. Y means each TIP Stack level will gets is own AFT to the DMS subschema. N means only one AFT is created per schema per terminal. * Fixed TIP/dbi problem when CALC and INDEX on the same data field. * Fixed TIP/dbi problem with FETCH NEXT VIA INDEX following FETCH xxx VIA INDEX EQUAL TO. * Fixed problem with missing FCCs for IMS/SFS Input only fields in UTS msg * Fixed problem with TIPPRINT to MSDOS file and TC-DI-SPACEx. 1997/11/27 2.2 R0 - 0093 * TIP/dbi problem with commit points for online TIP transactions fixed * TIP/dbi problem with UNBIND closing areas for online transaction fixed. 1997/11/20 2.2 R0 - 0092 * TIP/dbi problem with FETCH of Sorted Set with more than 2 members and the sort field has identical data has been fixed. 1997/11/18 2.2 R0 - 0091 * Fixed probem with TQL, EXPORT MAPPER command. This requires TIP/fe build 283 or later. * Fixed problem with IMS Output for Input to transaction with missing Binary when done twice in a row. * TIP/dbi problem with FETCH FIRST of Sorted Set with multiple members fixed. * TIP/dbi new Options in the Schema. BAD-DATA IS "xxxx" To compile in the bad data status code. LOW-VALUES REJECT To cause even low-values to be treated as bad data ALLOW ANYKEYDATA To accept arbitrary values for keys to select on. * New tipix.conf parameter IMSMAXRETRY=n where n is the number of attempts to try and lock a record before giving up. If this is defined then a message "Input in process" will be sent the the terminal during the retry. * New tipix.conf parameter FCSWAIT=n where n is the number of seconds to wait before returning PIB-HELD. The default is 1. 1997/11/06 2.2 R0 - 0090 * TIP/dbi now generates Index HINTS for ISAM files and other DMS indexes - this change results in a performance improvement * TIP/dbi fixed a problem with reading through sets caused by Oracle not doing precise storage of 'double' variables. * TIP/dbi does a better job of selecting a floating point value for SET postioning which Oracle will store correctly in its internal format. * TIP/dbi precob now translates OPEN ALL into an OPEN for each area in the sub-schema. Before it would open all areas in the schema. * TIP/dbi following an INSERT or STORE the wrong member of the set was sometimes being left as current by mistake. This is fixed. * TIP/dbi fixed some problems related to MOVE CURRENT and FETCH OWNER immediately followed DELETE of member record. * The TIP/ix build done on 10.01 did not run on 10.20. This problem is fixed. * New tipix.conf parameter MCSLONGDATE=YES will cause MCS to display embedded date fields $YYMMDD$ as YYYYMMDD, $MMDDYY$ as MMDDYYY and $DDMMMYY$ as DDMMMYYYY. Display 4-digit year including century. This requires TIP/fe build 283 or later. * The TIP/ix PIB has new field PIB-LONG-DATE to hold 8-digit date plus sub-fields for more date information. * Fix bug with IMS continuous output printing introduced in 0086 * New tipix.conf parameter IMSKEEPMCS=YES will IMS programs to remain in MCS mode (i.e. not read by UTS input) if SFS-TYPE is set to 'R' and SFS-LOCATION was cleared. Normally SFS-LOCATION should not be cleared. This may be required by IMS/1100 programs using DPS. 1997/10/23 2.2 R0 - 0088 * TIP/dbi fixed some bugs related to currency following DELETE/REMOVE * TIP/dbi now implements OPEN AREA USAGE-MODE ... using LOCK TABLE command - this change results in a small performance improvement - this change may require you to increase dml_locks in the init.ora (Oracle error -55 indicates the value for dml_locks is too low) * Fixed bug with MAIL auto reply text overlaying mail message * The TIPQUEUE scheduler will recover from servers which abort without closing the QUEUE. Before it may just stall the queue service. * Fixed bugs in handing UTS messages for DPS/1100 1997/10/17 2.2 R0 - 0087 * TIP/dbi was not correctly handling DML verbs that resulted in more than eight parameters being passed. This was a very rare case. * TIP/dbi should now avoid re-connecting to Oracle if it is already connected * MENU will now display the number of new mail messages on initial entry * Fixed bug with MAIL auto reply text which was not being sent * Fixed bugs in MAIL related to the year 2000 1997/10/14 2.2 R0 - 0086 * New rollfwd options -y will auto answer Yes to prompts -i file will read file where each line holds one TIP/ix file name to be rolled forward * Fix MAIL to accept Send options on command line * Implement file locking for SAM/DAM files * Clear sequential mode when hitting EOF in an indexed file * When changing the default key of reference with SMSEC, the in memory tables will now be updated. * pingtip reports the date/time * Port to AIX 4.2 on PowerPC completed * TIP/dbi correction for OPEN Retrieval/UNBIND/TIPSUB/BIND/OPEN Update * Support TIPTERM T-PUT to another terminal. This used to always send as un-solicited (T-UN). Now it will force the message on the terminal. 1997/10/02 2.2 R0 - 0085 * Improved the logging information for application programs to include the version of the API module. * Fix problems with Remote File Access record translation with TIP/30 * TIP/dbi schema will now emit ZERO instead of "0" for 88 level items * TIP/dbi schema now accepts TABLESPACE & INDEXSPACE as part of the RECORD 1997/09/23 2.2 R0 - 0084 * TIP/dbi SET processing was re-written to improve system performance * The improvements to TIP/dbi (using Oracle Hints) work much better if the tables & indexes have been analyzed by the Oracle ANALYZE command. TIP/dbi generates a .analyze script which may be used for this. * TIPFCS had a memory leak when updating DAM files. This would result in the TIP/ix system and possible UNIX crashing.