========================================================================= G C O S - 8 R U N - T I M E W O R K B E N C H v1.4.48 32bit RELEASE ========================================================================= UPDATE NOTES ============ TABLE OF CONTENTS ================= INTRODUCTION MIGRATION ERRORS FIXED IN THIS UPDATE IMPROVEMENTS IN THIS UPDATE DOCUMENTATION CHANGES TIPS & HINTS KNOWN ERRORS KNOWN LIMITATIONS PROBLEM REPORTING INTRODUCTION ============ This update diskette contains fixes to all problems and all new features since release v1.4.38. Previously provided update diskettes are obsolete and no longer required. MIGRATION ========= ===> V1.4.48 n/a ===> V1.4.45 n/a ===> V1.4.43 n/a ===> V1.4.38 o New base release for 32-bit environment. ============== UPDATE V1.4.48 ============== Errors fixed in this update --------------------------- o Dispatch8: The S(erve) function did not process retention rules. o IDS-II Load: When host load is performed TYPE=RECORDS or SETS, the unload file is transferred as text (UFT or FTP), the load program could not recognize the file format. o Dispatch8: The S(erve) function could not handle midnight rollover. Improvements in this update --------------------------- o TP Virtual: Use of virtual resources is now partially supported. The CREATE_COMMAND configuration in TP8.CFG may now designate use of a virtual resource as follows: MYTX : MYTPR MYPROFILE [myresource| LIGHT-myresource| SHARED-myresource| EXCLUSIVE-myresource] EXCLUSIVE (default) triggers exclusive allocation of the virtual resource when TX execution starts. If other executing TX's have allocated the resource, either exclusive or shared, the TX will wait until the resource is released. SHARED triggers shared allocation of the virtual resource when TX execution starts. If other executing TX's have allocated the resource, exclusive but not shared, the TX will wait until the resource is released. LIGHT does not trigger any allocation of the virtual resource, and the TX can execute without any consideration. The .LOCKV service call may now be used to trigger exclusive allocation of the virtual resource associated with the command. If no virtual resource is defined for the command, the request is ignored. The .UNLKV service call may now be used to release allocation of the virtual resource associated with the command. If no virtual resource is defined for the command, the request is ignored. Virtual resources are implemented as files, which are either maintained under $g8wbvdir, if the setting is present, or under $g8rbsdir (Server) or $g8rbgdir. A new setting under G8WB-DEFAULTS in G8WB.CFG may be used to control the maximum wait time for virtual resources, ex. VIRTUAL-WAIT-TIME : 180 ; Maximum wait time in seconds, default 180 If the wait time is exhausted, the TX is aborted and restarted, similar to a database lock wait exhaust. o TP: The .LOCK service call is now supported, and causes the current record of run-unit to be 'locked for update'. o Dispatch8: A new setting $g8rbd8dir may be used to place PMS and FMS (Telex8) outside $g8rbgdir, and allow consolidation (shared) between multiple systems. Note: D8.CFG must also reside under $g8rbd8dir. o Logging: The BATLOG utility may now be used to append a file, as follows: BATLOG _A filename [text] Ex. DBACCESS inf_ids2 23mindx.sql>temp.txt BATLOG _A temp.txt DBACCESS 23mindx.sql o Logging: The BATLOG utility may now show elapsed/snapshot time with the text message, as follows: BATLOG "Log this text" BATLOG _E "Log this text and show elapsed time too" BATLOG _T "Log this text and show snapshot time too" The elapsed/snapshot time stamp is kept under $g8rbldir, and is reset whenever BATLOG is executed. Example of use: BATLOG "Start of B1 batch stream" ... BATLOG _T "Phase 1 of B1 complete" ... BATLOG _T "Phase 2 of B1 complete" BATLOG _E "End of B1 batch stream" o Telex8: The application interfaces TLXOUT and TLXBOT, which would only update the Telex8 database, but never transmit any messages (fax, telex, email, internal), are now supported through a new feature added to Dispatch8. The new feature is enabled through D8.CFG, as follows: [FAX-SECTION] FAX-SUPPORT : ON ; OFF(default)/ON When Fax-support is enabled, TLXOUT/BOT will now collect messages under $G8RBGDIR\FMS, awaiting processing by a new Dispatch8 Fax Utility (D8F), which is quite similar to Dispatch8 Executive Utility running the Server funtion. Transmission of fax is based on FaxMaker for SMTP, from GFI, whereas email an internal messages are sent via SMTP mail. Telex is not supported. Following additional configuration entries are available in D8.CFG: [FAX-SECTION] SMTP-SERVER : DOMAIN.COM ; Name of IP of SMTP server SMTP-ADMIN : adm@domain.com ; Administrator DEFAULT-DOMAIN : domain.com ; Default for @domain.com FAXMAKER-PATH : $g8rbgdir\fmsfax ; FaxMaker Text API FAX-OK-CONFIRMATION : ON ; OFF(default)/ON FAX-LINES-PAGE-1 : 48 ; For /newpage control (logo offset) FAX-LINES-PAGE-2 : 54 ; For /newpage control Note: SMTP-SERVER, SMTP-ADMIN and FAXMAKER-PATH settings are mandatory. The Dispatch8 Fax Utility is used to handle distribution of collected messages, and may be started with the D8F command, ex. D8F "Fax Server" =$g8rbldir\FAX.log Fax handling ------------ Fax messages are distributed through the Text API interface of FaxMaker for SMTP. The FAXMAKER-PATH setting must correspond to the TEXT directory setting within FaxMaker. If fax transmission fails, an email notification (with content of message) will be sent to the originator or the administrator. If fax transmission is completed, an optional email confirmation (with content of message) will be sent to the originator or the administrator. The FAX-OK-CONFIRMATION settings controls whether such confirmation is sent or not. The TLXOUT/BOT interface use only to identify orginator, however, this is not sufficient to sent notification/confirmation email messages. The email address of the originator is determined as follows: 1) Initials have been explicitly configured in FAX-INITIALS- SECTION 2) DEFAULT-DOMAIN setting is combined with initials to form the email address 3) SMTP-ADMIN setting is used as last resort Email Handling -------------- Email messages are sent through SMTP mail interface, as defined by the SMTP-SERVER setting. If email transmission fails, an email notification (with content of message) will be sent to the originator or the administrator. If email transmission is completed, an optional email confirmation will be sent to the originator or the administrator. The FAX-OK-CONFIRMATION settings controls whether such confirmation is sent or not. Internal Handling ------------------ Treated like email. Explicit configuration of email address, alternative to implicit email address using initials and default-domain, is a new section in D8.CFG. [FAX-INITIALS-SECTION] ;initials Email-address ABC : abc@domain.com DEF : def@domain.com o TP Bibo: The W8TPC utility now support a command line to enable execution of a single BIBO transaction or a BIBO transaction file. The command line syntax is as follows: W8TPC [BIBOTX "command"|BIBOFILE bibo-file [secs]] [defaults] Command - must quoted if spaces are present (single or double quote). Bibo-file - a file containing one or more transaction. For conversational transaction, the special BIBO format must be used, ref. G8WB documentation. Secs - may be used to set a delay in seconds between each read of the bibo file (default is 0). Note: BIBOTX and BIBOFILE will terminate W8TPC once BIBO transcation(s) have been executed. Defaults format is: [lid [terminal-emulation]] [/ldirpath|/.] Lid - may be used to set a lid for the session, and thus override default configuration. Terminal-emulation - may be used to set terminal emulation and interface for the session, and thus override default configuration. VIP77XX|VIP78XX|DKU71XX|IBM327X REMOTE|TCLIENT|SERVER G8RBLDIR: The setting for G8RBLDIR may be changed on-the-fly, ex. /c:\temp (specific path) /. (current path) o Dispatch8: The S(erve) function may now be used for a group of physical printers. A new configuration in D8.CFG may be used to define group(s) as follows: [SERVER-P1] ;Physical-printer Form-code (mount) AA : 0019 BB : 0022 CC : 0019 [SERVER-P2] ;Physical-printer Form-code (mount) DD : 0019 EE : 0022 The S(serve) function will automatically check 'physical-printer' and determine whether is represents a group or not (check whether a 'SERVER-pp' entry exist in D8.CFG). For a group, form-code is not required, instead a list of physical printers with associated form-codes are processed. Ex. serving multiple printers via P1 group D8 S P1 Ex. serving AA printer with initial form 0019 D8 S AA 0019 o Abort: COBOL Run-time aborts are now trapped for both TP and Batch, and abort information is written to the LOG file, which is now properly closed and consolidated. o W8B: The launch program for Batch application has been enhanced and now accept command line arguments as follows: ["title"] programname [normal|exclusive|nolog|auto|query|nodb] [cbl85|cbl74] [=outfilename] [/ldirpath|/.]" Title: When specified, the title is applied to the execution window. Must be first argument and a quoted value. Programname: The programname or filename of the application program. Databasemode: May be used to control access to the database, if applicable. This feature is primarily provided for G8RHB use. The default is normal. Nodb = database not used by program For SQL implementation Exclusive = lock database and perform auto-commit Nolog = access database without logging (exclusive) Auto = access database with auto-commit Query = access database with query For non-SQL implementation Exclusive = access database without Integrity (FS2) Nolog = access database without Integrity (FS2) Auto = ignored (like Normal) Query = ignored (like Normal) Environment: The execution environment for COBOL-85 or COBOL-74 is now preloaded. The default is cbl85. Redirect: The log may now be redirected to a file. The default is $g8rbldir\BATCH.LOG. G8RBLDIR: The setting for G8RBLDIR may be changed on-the-fly, ex. /c:\temp (specific path) /. (current path) o W8TP: The launch program for TP Monitor has been enhanced and now accept command line arguments as follows: ["title"] [/ldirpath|/.] Title: The title is applied to the execution window. Must be first argument and a quoted value. G8RBLDIR: The setting for G8RBLDIR may be changed on-the-fly, ex. /c:\temp (specific path) /. (current path) o D8: The launch program for D8 has been enhanced and now accept command line arguments as follows: ["title"] Title: The title is applied to the execution window. Must be first argument and a quoted value. Note: The run multiple D8 servers, you can combine title with redirect argument, ex. D8 "Serve P1" =$g8rbldir\P1.log S P1 0019 D8 "Serve P2" =$g8rbldir\P2.log S P2 0019 o Re-hosting: G8WB may now be used to test GCOS applications for re-hosting with GCOS8 Re-hosting Workbench (G8RHB). ============== UPDATE V1.4.47 ============== Errors fixed in this update --------------------------- o WEB8: The CGIG8WBx programs no longer use a window. o WEB8: When an EMI send is forced due to buffer overflow, and ETX character would be included in the message sent to the Web server. ETX(s) are now removed by the CGIG8WBx programs. Note: The updated programs $g8rbgdir\web8\cgi\CGIG8WBL.EXE and CGIG8WBN.EXE must be copied to your web server (cgi-bin or scripts), see WEB8.DOC for details. o Dispatch8: The S(erve) function did not clear the spool file, when a network printer was configured. This would cause duplicate reports to be printed. o IDS-II: FIND ... RETAINING did not raise proper db-exception, ex. end-of-set or end-of-realm. o Interactive IDS-II: FIND ... RETAINING did raise proper db- exception (see problem above), however, the RETAINING clause was carried over to the next DML verb, and could lead to a subsequent currency problem, ex. 0503100. o WEB8: The CGIG8WB program, which is launched by Personal/Internet Server, would abort if application was sending HTML lines longer than 512 characters. Note: The updated program $g8rbgdir\web8\cgi\CGIG8WB.EXE must be copied to your web server (cgi-bin or scripts), see WEB8.DOC for details. Improvements in this update --------------------------- o Terminal Emulation: When using terminal emulation software, ex. Glink, VTD/Amaril, with TELNET or TNVIP interface, the national character-set configuration may now be identical for GCOS and G8WB (adapted to/from PC standard by the interface, whenever o IDS-II: By default all index files (databases) share a common 16KB buffer for index handling. This is normally sufficient, however when loading 'large' databases or when extensive changes are made to keys (Calc and Index), the I/O-system may report problems (9/041 corrupt index). A new option in DBMS.CFG may be used to allocate more buffer space for index handling, ex. [DEFAULT-SECTION] IDX-BUFFER-KB : 32 ; Min. 4 Max. 60 KB When present, the IDX-BUFFER-KB will allocate a buffer of the given size for each index file. This may require substantially more memory if many databases are used concurrently. o IDS-II: FIND DUPLICATE processing has been optimized and now use less I/O, especially when many duplicates exists for the same calc-key. o IDS-II: STORE processing has been optimized and now use less I/O for duplicate calc- and/or index keys, especially when many duplicates exists for the same key(s). ============== UPDATE V1.4.46 ============== Errors fixed in this update --------------------------- o DBWFL: The fix to accept CR and/or LF as data within a record introduced in v1.4.44, would cause problems for nnHBDU programs converted to upper-case or unload-files being converted to upper-case. Also the last record could be lost, if unload-file use on LF as delimiter. Note: Unload/Load programs must be regenerated for this change to become effective for a schema. o IDS-II: If a DML verb, ex. FINISH, is last in a copy and the verb is terminated with a period in the main source, the DML logic could be inserted after and not before the period, and thus change logic of the program. o WEB8: All header and environment fields are in upper-case for G8WB, and field name(s) are now converted to upper-case by G8WB. Improvements in this update --------------------------- o WEB8: The 'Referer:' header field is now emulated, so a TPR can retrieve the information through HTTP_GETHDR. The format is GCOS8 compatible, ex. http://gateway:8080/node.mbx/TPLocG8WB/Command/Options ---------------------------- I I-> constant ============== UPDATE V1.4.45 ============== Errors fixed in this update --------------------------- o OCT/TNVIP: The TNVIP interface did not work correctly with VTD- Amaril terminal emulator. o Pilspraak: The command _N did not work correctly (wrong cursor placement). o PSM: Overpunch field type - format OnT or OnL where n = 1-18, is now supported (undocumented feature of PSM). o DBWFL: Handling of UFT/FTP unload files (text format) would not accept CR or LF characters as data within a record, and treat these as record delimiters. The remaining data would cause an error - Record type invalid, and load operation would be stopped. DBWFL will now accept CR and LF characters as data, and the error for Record type invalid has been changed to a warning, so load operation is continued. Note: Unload/Load programs must be regenerated for this change to become effective for a schema. o TP: Send in edit-mode failed to insert a trailer in the message for an EGI send. The trailer consists of a CR and a LF, unless advancing BEFORE is specified. Improvements in this update --------------------------- o Terminal Emulation: Use of TNVIP interface was not possible if multiple G8RB TP systems were running on the same PC (only one can listen on the TELNET Port 23). To overcome this problem, TCLIENT may be used with TNVIP or TN3270, ex. TERMINAL-EMULATION : VIP78XX TCLIENT TNVIP The TPCLI program must be started on the Client PC where the terminal emulation software is running, just like when running TCLIENT with G8RB terminal emulation. The TPCLI program will act as a local TELNET server, to which you can connect your terminal emulation software. TPCLI will continue to run as long as the corresponding G8RB TP system is running (will terminate with $SHUTDOWN). o Terminal Emulation: The command $BYE is treated as $TERM when when connection to TP is done trough terminal emulation software, ex. GLINK. ============== UPDATE V1.4.43 ============== Errors fixed in this update --------------------------- o DISPATCH8: Direct print to a device ex. LPT1: does not work under Windows 98. Physical printer configuration may now specify a network-name for the printer, and print is then routed through Windows Spooler. Example of D8.CFG configuration: [PRINTER-SECTION] ; Physical Printer(xx) FF-Code CC-Code Device Comments A1 : 50 50 LPT1: A2 : 50 50 =c:\pfile.dat A3 : 50 50 \\ps1\laser1 o DIMS8: Forms configured in DD-CACHE of DIMS8.CFG did not work correctly (fields missing or incorrect). o IDS-II: An ERASE could lead to failure, if the erased record was not current for the set and the currency for the set was having erased record as prior pointer. o IDS-II: A MODIFY (of set membership) could lead to incorrect set pointers, if the currency for the set was having current record as either prior or next pointer, and set has 'insertion next'. o TP8: When TP8 attempted load of a TPR with an all numeric name, ex. 602, a run-time error was reported and TP8 was stopped. This behavior has been changed so the transaction is aborted with X01 abort-code. o TP8: When returning from CALL ".ILINK", G8WB would have restored NEXT-TPR value. This behavior is not GCOS8 compatible and NEXT-TPR will now contain low-value after execution of .ILINK. o Pilspraak: If was filled for a form, the title information would be exported as a comment line. The syntax would, however, overflow column 72, and would be flagged with an error if the form was later imported. o RFV CXPP: Type = 21 with Function = 1 (only called from virtual TPR) was not implemented. o RFV CXAP: The field TXS-MARKOR-POS and TXS-FORSTA-FALT-POS were incorrectly filled with a binary cursor. The cursor information is now given in the format llcc. Receive procedure 126 did not always setup the screen image correctly (line 1 placed in line 2 etc.). o IDS-II: Calc or Index keys would be truncated if BINARY field(s) were part of the key (Maximum key size not calculate correctly). This could lead to unexpected 'duplicate' exception when storing/ loading records. Note: Schema must be translated and validated to correct this problem. Also, Q2UT must be used to initialize database before running DB load. Improvements in this update --------------------------- o Terminal Emulation: 'Real' Terminal Emulators may now be used with G8RB, provided they can use either TNVIP or TN3270 communication interface. The TERMINAL-EMULATION entry in Default Configuration (G8WB.CFG) has been changed as follows: TERMINAL-EMULATION : emulation [interface] ; Emulation ; VIP78XX ; DKU71XX ; IBM327X ; WEB8 ; Other = Name of own Program ; Interface ; TNVIP ; TN3270 ; REMOTE ; TCLIENT [TNVIP|TN3270] When no interface is specified, the G8RB terminal emulators are used. When REMOTE interface is specified, the Open-Client-Interface is used. Note: TCLIENT may be used to connect a TPCLI session to a G8RB TP system, with the option to 'disconnect' or 'shutdown' the remote G8RB TP System. Otherwise is works like REMOTE. TNVIP/TN3270 ------------ When TNVIP or TN3270 is specified, G8RB will act as a telnet Server and listen for a connect on the standard Telnet port (23). The Terminal emulator must be configured with TNVIP or TN3270 as communication interface, and the host name or IP adress of your PC. G8RB will attempt to negotiate a terminal model, and if this fails or the terminal model is not recognizable, the G8RB emulation configuration will be used. The G8RB window will show status messages and you may use ESC-key to trigger the Escape-menu, or request this through a command from the terminal emulator. The following commands are recognized: $*$DIS - terminate and disconnect $*$LOGOUT - terminate and disconnect $*$ID - show connect information $*$BRK - Abort conversational transaction ($ABORT) 'break' signal, treated as $*$BRK $*$ESC - request G8WB escape menu $ESC - request G8WB escape menu $BYE - logon with a new Lid $TERM - terminate TP $TERM - disconnect (if TCLIENT) $SHUTDOWN - terminate TP (if TCLIENT) Note: IBM3270 emulation can only be used with TN3270. o Open-Client-Toolkit: A new DSA interface is now available. With Client DSA, G8RB may present itself as a DSA Node in your network and allow a DSA session (direct or through DNS) to be established with G8RB. The DSA interface may be used to connect Terminal Emulation products or applications through various client interfaces. DSA interface is based on G&R Ggate, and requires either Host Links or Ggate from G&R. Refer to G8WB $g8wbgdir\site\client\g8wbotc.doc for details. ============== UPDATE V1.4.38 ============== o New base release for 32-bit environment. ===================== DOCUMENTATION CHANGES ===================== o Please refer to Release Notes. ============ TIPS & HINTS ============ o Please refer to Release Notes. ============ KNOWN ERRORS ============ o Please refer to Release Notes. ================= KNOWN LIMITATIONS ================= o Please refer to Release Notes. ================= PROBLEM REPORTING ================= Please use the enclosed Software Problem Reporting (SPR) forms for problem reporting. Describe your problem in as much detail as possible, providing example(s) and/or other supporting material if possible, and send this to B & C Solution P.O. Box 54 Ole Piisvej 4 DK-3100 Hornbaek Denmark or fax to +45 49.70.47.80 or send through INTERNET support@bc-solution.com If you have any questions, suggestions for changes and/or improvements, please do not hesitate to let us know. The most recent updates available through INTERNET for download or browsing of update notes. Connect to our web-site 'http://www.bc-solution.com', go to the Support section and select 'GCOS-8 COBOL Run-time 32-bit Update' under Download Software Update. ========================================================================= GCOS-8 COBOL Workbench is a trademark of B & C Solution Sarl. All other trademarks and trade names belong to their respective companies. ========================================================================= Copyright (C) 1991-2000 B & C Solution Sarl. All Rights Reserved.