AMT Release Notes

AMT 42

Released: 03 Oct 2018.
For availability, please contact the Avanade Service Portal for information on downloading new releases.

Special attention items:

There are no special attention items for this release.

Product Cat Subcat Description Type Version Priority
Runtime LionScreens AMT LION 317773 Scrollbar view within Memo fields. Memo fields always showed both vertical and horizontal scrollbars in AmtDeveloper, even when the scrollbars property was set to 'none'. Memo fields only had limited Runtime behavior implemented and regarding the WYSIWYG functionality what you saw was not always what you got. The memo field implementation has been extended for use in AmtScreens and the overall Runtime behavior as well as the overall WYSIWYG functionality has been improved. Except for LionSreens, the LineFeed '0A' is now processed as a new line in the AmtScreens Runtime, which is the same behavior as in the web client. AMT 42
Runtime Various AMT LION 316981 Showing leading zeros. If the option 'show leading zeros' of a numeric field was set to 'ALL', and in the web client this field had the focus, then the leading zeros of the numeric value were gone. For instance, if you tried to copy from or to paste at fields where leading zeros are important, those zeros would be lost. Now, if the option 'show leading zeros' of a numeric field is set to 'ALL', and this field has been selected in the web client, the leading zeros will still remain. AMT 42
Runtime LionScreens AMT SCREENS C1803-009 Tab sheet selection. When clicking the left or the right button of a page control to navigate through certain tab sheets in AmtScreens, the related tab sheet would not be selected. In case of not all of the tab sheets would fit on a page control then two buttons will be shown for navigating through its tab sheets. By clicking the left or the right button of the page control, the related tab sheet should also be selected. Now, clicking the left or the right button of a page control in AmtScreens will move the related tab sheets to the left or the right, and will also select the tab sheets according this navigating. This behavior is the same as in LionScreens. AMT 42
Developer Code Logic AMT COBOL 326294 Dividing two numeric integers resulting a decimal value. When a numeric integer was divided by another numeric integer, the return value was automatically rounded as being a numeric value; so the result could never be a decimal value. In that case, the returned result of division 10/3 will be 3.00. Now, when a numeric integer is divided by another numeric integer, the resulting return value is cast as a decimal value. In this case, the returned result of division 10/3 will be 3.33. AMT 42
Runtime LionScreens AMT LION 326614 Clarification of the error message regarding the maximum number of sub sessions. Within the Control Center the maximum number of sub sessions allowed is set. When more than the maximum of sub sessions are being opened, an error message will be thrown about the maximum number of sub sessions that are allowed. The message contained the total number of sessions allowed, namely the main session including the sub sessions, which is very confusing. For example, in case of a maximum of 4 sub sessions the message was 'At most 5 sub sessions are allowed'. In that case the message should be 'At most 4 sub sessions are allowed' or 'At most 5 sessions are allowed'. Now, the original message has been put back, containing the maximum number of sub sessions allowed, taken from the related setting in the Control Center. AMT 42
Developer Reports AMT LION 326606, 326874 Graphical report icon and type shown as text report. After creating a new graphical report in AmtDeveloper, it was not shown in the repository as a graphical report, but the report icon as well as the type were shown as a text report. As soon as the report is generated, the report icon as well as the type, is correctly shown as a graphical report. Now, the report icons and types of all graphical reports will straight away be shown as a graphical report. Note: To repair the repository a synchronization is needed in AMT42. AMT 42
Runtime LionScreens AMT LION 326704 Sorting order within available screens of 'select screen' in LionScreens. The sorting order of the listed form names within available screens of 'select screen' in Runtime was incorrect for shorter names, for example the sorting order could be ABCDEF-ABC-ABCGHI. Now, the sorting order of these form names have been corrected; these names are sorted alphabetic by form name, for example the sorting order will now be ABC-ABCDEF-ABCGHI. AMT 42
Developer Various AMT LION 325317 Showing tooltips in layout designer of text reports. When hovering in the layout designer of text reports over the selection buttons for control item 'Label' or 'Edit box' by mouse over, tooltips did not show. However the tooltips work fine for forms as well as for graphical reports. Now, the tooltips for the 'Label' control and 'Edit box' control will be shown in the layout designer of text reports when the mouse hovers over the selection buttons for these controls. Additionally, certain useless empty space is no longer displayed. AMT 42
Migration COBOL AMT COBOL C1808-011 support of 'file status code' by AMT COBOL. For VSAM files it should be possible to use the two file status data elements of the FILE STATUS statement; the first data element specifies the file VSAM status key which was already supported and the second data element specifies the VSAM file status code which was not supported yet by AMT COBOL. When the file status code was defined, it would cause a validation and generation error. Now, this file status code can be optionally defined as the second value for using the FILE STATUS statement FILE STATUS IS. The file status code has not yet been adopted within the libraries, but it can be defined in a certain not to use sub program. In addition to the status key of the first element, the file status code gives more information when the file status is not zero, which indicates the operation failed. Information on possible values is not available here, but the file status code is now accepted by the parser and generator without errors. AMT 42
Migration COBOL AMT COBOL C1808-021 C# Error on missing CICS HANDLE CONDITION label (IBM Cobol). When generating the C# sources of CICS HANDLE CONDITION in AMT COBOL, an error occured; this error was caused by statement EXEC CICS HANDLE CONDITION during generating. An AMT COBOL program performs a paragraph with CICS statements. This paragraph resides in a copy and has one or more HANDLE CONDITION statements. In specific cases, the generated C# code caused some errors on a missing label for a goto statement. Now, these errors have been resolved. AMT 42
Migration COBOL AMT COBOL C1808-040 Added DMS2200 DMCA variables to AMT-COBOL, OS2200 applications. After DMS2200 database access, the DMCA contains the current state of the data; variables like RUN-UNIT and CURRENT-DBKEY contain the DMS2200 database key as well as AREA-KEY contains the area-key part of the database key. Because some DMCA variables not had been implemeted in AMT COBOL, these not implemented variables returned a parse error. Now, also the DMCA variables DATABASE-KEY, PAGE-NUM OF CURRENT-AREA-KEY and RECORD-NUM OF CURRENT-AREA-KEY are supported by AMT COBOL. AMT 42
Runtime Various AMT LION C1808-052 Defects in AmtScreens security. Based on certain security settings of user rights within the Control Center, some menu items within AmtScreens were not accessible to certain users for which they were authorized, and others were still accessible for which they were not authorized. The accessibillity based on these settings has been optimized, which affects all screens and menu items. Now, menu items are only accessible based on the real user settings. Also where inaccessible menu items were hidden before, all inaccessible menu items will now be disabled instead. Note: In the preview of AmtScreens not all rights features are implemented yet. AMT 42
Generator Various AMT COBOL C1808-056 handling of SQLCA when defined as COPYBOOK SQLCA was always being threaded as an internal library, but since SQLCA is a special name, if a COPYBOOK with the same name is present, then COPYBOOK should be used. Now, when SQLCA is found as a COPYBOOK, this is loaded and parsed as such. AMT 42
Runtime Various AMT COBOL 327104 Starting and restarting transaction agent. When two identically named transactionagents have been running at the same time, this would give non-responsive transactions. This correction ensures that the new transactionagent only starts once the old one is stopped. Note: When new dll's will be added to the binaries folder, all the transactionagents will need to be restarted. AMT 42
Generator Various AMT COBOL C1809-003 Linking SQLCA variables to the library. SQLCA variables were always linked to the internal library. Now, SQLCA variables will only be linked to the internal library variables if statement EXEC DB2 INCLUDE SQLCA is called in the working storage section. AMT 42
Migration LINC AMT LION | AMT COBOL 327115 Truncated labels in the web client. The Content of some labels which was showed correctly in LionScreens, was truncated somehow within the web client. This behaviour depends on the width and the font used. In some cases, the last characters were truncated. In the form designer, you can specify the 'LetterSpacing'. When set to default it used the value stored in the Amt.css files which is defaulted as 0.2. When label values are truncated in the web client then you can change the Amt.css files for all forms or overwrite the value per form. In some cases you need to use a value of -0.2 or -0.4 to get the same alignment in the web client as in LionScreens. AMT 42
Developer Web Services AMT LION C1809-005 Printing options for webservice. In the AmtDeveloper, no options were available for printing old style web services. Now, in the AmtDeveloper, there are options available for printing old style web services. AMT 42
Runtime LionScreens AMT LION 327037 Search functionalities within AmtScreens start report. Within the job functionality of AmtScreens it wasn't possible to filter the name or a part of the name of a certain job or report by using rubrik 'Jobname'. The filter functionality within AmtScreens, for searching jobs and reports, has been improved and confirmed to work for LionScreens. AMT 42
Runtime Jobs/Batches AMT ALL C1809-009 Update of the native PdfPrintingNet.dll. PdfPrintingNet.dll is an external dll that is distributed with the AMT Product Suite to print Pdf documents. The previous used version 2.9.4.0 of the PdfPrintingNet.dll was outdated. The new version, 4.7.4.0, is improved, and contains minor bug fixes. This feature will be used in the future to create PDF documents according to the newest standard for PDF documents. AMT 42
Runtime Various AMT LION C1808-003 Setting focus on a control on a tabsheet that is not visible in AmtScreens. As result of setting focus on a control on a tabsheet which was not visible, the parent tabsheet was also not selected in AmtScreens. Now, when setting focus to a control on a non selected tabsheet, this will make the parent tabsheet selected. AMT 42
Runtime Various AMT COBOL 327104 restart trigger of the transaction engine. Whenever a new dll or other changes were put into production, the transaction agent was triggered to restart. When debugging, this can happen a lot, and this is mostly unneeded. Now, this behavior has changed to only restart if the file or folder change affects the actual items loaded in memory of the transaction agent. AMT 42
Generator Various AMT LION C1809-014 Automating of the generation of an AMT application. Each night, when a new version of an AMT application is to be installed and the application is re-generated, sometimes the generate failed resulting in old generation requests left open. Because of the need to have these open requests to be removed, a new function 'DeleteAllGenerationRequest' is available for the AMT Repository Module Generate Interface 'ILionGenerate'. This function will remove old open generation requests. For more info see also https://help.myasysco.com/lion/iliongenerate.html AMT 42
Migration DB2 AMT COBOL C1809-015 Implementation of EXEC DB2 PREPARE (IBM Cobol). The prepare statement EXEC DB2 PREPARE was not yet implemented for IBM Cobol. Now, the prepare statement EXEC DB2 PREPARE has been implemented for IBM Cobol. AMT 42
Developer Code Logic AMT COBOL 327201 DISPLAY statement without positioning. The usage of display statement DISPLAY on Micro Focus without any position specified and having the force options FORCE set, was always working on position 1,1 instead of the current position. Now, the display statement DISPLAY is using the last active line and displays the content on the next one (with scrolling when needed). AMT 42
Runtime Various AMT LION 327206 Returned RESOK value when using the IN operator in a tablequery. RESOK returned sometimes FALSE where TRUE was expected when using the IN operator in the WHERE clause of a tablequery. This was always the case when using the IN operator in the WHERE clause of the tablequery and the left side of the operand was not part of the tablequery itself; in that case the returned RESOK value was always FALSE. This behavior was caused by a wrong generation order of the parameter binding of the operand. The generator has been changed accordingly, so that the binding is now working fine, for example: tq_customers.WHERE (tq_customers.ID = tq_test.ID and tq_test.NAME IN ['XXXX', 'YYYY']) AMT 42
Developer Code Logic AMT COBOL 327204 resetting the SUM option whitin the CONTROL FOOTING of the Report Writer. Running the Report Writer didn't reset the SUM options when it was called in a loop with INITIALIZE + GENERATE + TERMINATE. Now, when calling INITIALIZE, the SUM values are reset, so a new summation can be restarted as fresh. AMT 42
Runtime LionScreens AMT LION C1809-012 Detecting AmtControls by automated testtools. Several AmtControls were not detected by automated testtools like LeapWork and some controls had unclear names which made creation of testcases very complicated. Now, some automation peers are added to the AmtControls to make them test friendly for automated testing. AMT 42
Generator Various AMT COBOL C1809-026 support of DB2 CONCAT operator '||' (concatenation function). Whenever the DB2 CONCAT operator '||' was used to combine two separate expressions to form a single string expression, the concerned object failed to validate in the AmtDeveloper. The DB2 CONCAT operator '||' for concatienation is now supported. AMT 42
Generator Various AMT COBOL C1809-028 Error message when using LENGTH without specifying OF. Using the statement LENGTH without specifying the option OF gave a confusing error message. For example, when the statement 'MOVE LENGTH TO ' was used instead of 'MOVE LENGTH OF TO ' an error message was reported that the variable var-1 was unknown and could not be parsed. The actual error is that the option OF is not specified in the statement; now, this will be reflected in the error message. AMT 42
Migration COBOL AMT COBOL | AMT-VS C1809-029 implementation of EXEC CICS GETMAIN (IBM Cobol) Till now IBM Cobol instruction EXEC CICS GETMAIN was not implemented yet. In that case a 'not implemented' error message was returned. Now, instead of returning the error message, the CICS GETMAIN function will be understood and handled by the AMT COBOL generator. AMT 42
Runtime Web Client AMT COBOL 327221 Online transaction reading a locked record (Micro Focus). An online transaction reading a locked file record in Micro Focus didn't wait correctly. It showed a dialog for a small while and then it displayed the next record. Now, the online transaction shows within the status, that a file record is locked (not a database lock) and waits until the lock is release by the other person. AMT 42
Generator Various AMT COBOL C1809-033 DB2 SQL implementation of CASE..WHEN..THEN..ELSE. Previously, for DB2 and SQL the statement CASE..WHEN..THEN..ELSE was not supported. Now, support for CASE..WHEN..THEN..ELSE within a select statement is implemented for DB2 and SQL. AMT 42
Developer Code Logic AMT COBOL C1809-034 Code alignment. There were some small issues regarding code alignment. The special names under 'SPECIAL-NAMES' were not indented, as well as the 'REPORT' part inside an 'FD' section was also not indented. On the other hand, the 'RD' part inside of a report section 'REPORT SECTION' was incorrectly indented; this should start on the left side. Now, the above listed issues are aligned correctly when pressing function key F7 for syntax check (depending on, if alignment is enabled within the F10 option). AMT 42
Migration COBOL AMT COBOL | AMT-VS C1809-035 Redesign of parsing some CICS statements. Internally, some CICS statements within the AMT COBOL parser have been redesigned. For maintainability, related code within the AMT COBOL generator has moved; the code itself is mostly unchanged. In this new design, the CICS statements like UNLOCK, FREEMAIN, GETMAIN, START and RETRIEVE will have their own class. AMT 42
Runtime Web Client AMT LION | AMT COBOL 327174 Control Center and Application Center 'Print again' option for multiple prints. Within the Control Center and Application Center it was only possible, to do a reprint for a single selected print out of the listed printouts on tabsheet 'Completed prints' of menu option 'Prints', after pressing button 'Print again'. Now, the listed printouts on tabsheet 'Completed prints' of menu option 'Prints', within the Control Center and Application Center, have been extended with a checkbox column; after pressing button 'Print checked' it is possible to reprint multiple completed prints in one go. When pressing this 'Print checked' button, a dialog pops-up in which the only option is to select the printer to print to. AMT 42
Runtime COM Module AMT LION C1809-038 ActiveAmtLion connection with an Application manager without using a Spare server. When an Application manager was defined without using a Spare server, ActiveAmtLion would not read the port information correctly from the configuration file and a connection could not be made. Now, ActiveAmtLion reads all configuration options correctly and can connect to any Application server or Application manager with or without a Spare Server installed. AMT 42
Generator Various AMT COBOL C1809-036 Improvement of RDMS queries. When having duplicate host-vars in one query, they will be made unique, which caused the generation of too much code. This process had to be improved. Now, it is possible to handle more complex SELECT statements. When having duplicate host-vars in one query, these are now ignored and only the first is generated. AMT 42
Migration COBOL AMT COBOL C1809-039 Support of CICS EIBRESP response codes (IBM COBOL). AMT COBOL only supported a handful of response codes. For Example code like 'IF EIBRESP = DFHRESP(NORMAL)' would be generated correctly, but code like 'IF EIBRESP = DFHRESP(EOF)' did not, because 'DFHRESP(EOF)' was not supported yet. Now, all possible response codes are supported. This does not mean all codes can be returned by CICS statements in AMT COBOL, because mainframe specific errors may never occur in AMT COBOL. AMT 42
Developer Code Logic AMT COBOL C1809-041 Double clicking on a label in EXEC CICS HANDLE ABEND. Double clicking on a label in statement EXEC CICS HANDLE ABEND did not allow the user to jump to the actual label position within the source code. Now, double clicking a label in statement EXEC CICS HANDLE ABEND allows to jump to the related label location in the source code. Also double clicking on labels in statement EXEC CICS HANDLE CONDITION is now supported. AMT 42
Runtime LionScreens AMT LION C1809-016 Improvements regarding XMLSettingsManager. The XMLSettingsManager needed several internal improvements that will not be visible to the customer. Now, the Code logic has been adjusted to support a bigger range of implementation in the AMT product. AMT 42
Migration COBOL AMT COBOL C1809-042 Generation of EXEC CICS HANDLE ABEND (IBM COBOL). A generation error occured when the AMT COBOL generator tried to generate a rare situation it could not handle. This happened only when 2 COBOL sections jumped to each other (PERFORM / GO TO) by jumping to a section containing a label that was referred to by HANDLE ABEND. Now, the AMT COBOL generator has been updated to handle this situation correctly; it will keep track of all information needed to generate correct C# sources, whereby the generation error regarding instruction EXEC CICS HANDLE ABEND has solved. AMT 42
Developer Various AMT LION | AMT COBOL C1809-045 Checkboxes disabled within the security settings windows of the AmtDeveloper. When opening the security settings windows (SEC) of the AmtDeveloper (AMT 40 and AMT 41) for maintaining authorizations, the windows did not have the checkboxes disabled as default. The checkboxes were changable but in fact these changes could not be stored anyhow, until the ‘Edit’ button is pressed. Now, the checkboxes are disabled as default until the ‘Edit’ button is pressed. Afterwards changing the checkbox values will have effect, and those new settings can be stored as well. AMT 42
Generator Various AMT COBOL C1809-043 Implementation of SQL statement WITH. The SQL statement WITH was not yet implemented for the AmtDeveloper. Now, the usage of SQL statement WITH has been implemented in the AmtDeveloper as well as in the AmtDeveloperGenerator. AMT 42
Migration COBOL AMT COBOL C1809-047 Implementation for support of EXEC CICS ASSIGN ABCODE. The assign statement EXEC CICS ASSIGN is used to retrieve a number of values from outside the local environment of the program. Not all values were supported for the variable option. Now, statement EXEC CICS ASSIGN with option ABCODE (variable) is also supported. AMT 42
Generator Various AMT COBOL C1809-048 Implementation of function REVERSE. The function REVERSE was not yet implemented for the AmtDeveloper. Now, the usage of function REVERSE has been implemented in the AmtDeveloper. AMT 42
Migration COBOL AMT COBOL | AMT VS C1809-050 Implementation of options RIDFLD, KEYLENGTH and GENERIC for EXEC CICS DELETE . Deleting a record in a VSAM file only worked for the current record in the file. Now, statement EXEC CICS DELETE with option RIDFLD (key), KEYLENGTH or GENERIC is also supported. AMT 42
Developer Code Logic AMT COBOL 327138 modifying the implementation of CALL SYSTEM with RETURNING (Micro Focus). The implementation of instruction CALL 'system' incorrectly multiplied the exit code by 65536 to mimic the Micro Focus specific COMP-5 behavior. Because the COMP-5 type was not supported yet, this multiplication was unnecessary. Now, the implementation of instruction CALL 'system' will no longer multiply the exit code by 65536. The exit code will be returned as a numeric, so within the AMT COBOL application (Micro Focus) it is possible now for example to retrieve the exit code by using a PIC 9(2) working storage. AMT 42
Generator Various AMT COBOL C1809-052 Implementation of DB2 statement VALUES..INTO. The DB2 statement VALUES..INTO was not yet implemented for the AmtDeveloper. When this statement was used, the AmtDeveloper failed to parse this, resulting in an error message 'Not understood'. Now, the usage of DB2 statement VALUES..INTO has been implemented in the AmtDeveloper as well as in the AmtDeveloperGenerator. AMT 42
Migration COBOL AMT COBOL C1809-055 Implementation for support of multiple conditions for EXEC CICS IGNORE CONDITION. Using multiple conditions for statement EXEC CICS IGNORE CONDITION was not accepted because only one condition was expected. For example the following code would not work: EXEC CICS IGNORE CONDITION FILENOTFOUND INVREQ IOERR END-EXEC. Changes were made to also accept multiple conditions. AMT 42
Generator Various AMT COBOL C1809-057 Using EXEC CICS LINK with option LENGTH(LENGTH OF {VAR}). When using the phrase LENGTH(LENGTH OF {VAR}) within statement EXEC CICS LINK, the AmtDeveloper will give an 'End of statement expected' error message when trying to check syntax of the code (function key F7). This happened for example in case of the following code: EXEC CICS LINK PROGRAM('PROG') COMMAREA(DFHCOMMAREA) LENGTH(LENGTH OF DFHCOMMAREA) END-EXEC Now, instead of returning the error message, the CICS LINK function including the LENGTH option will be handled correctly. AMT 42
Runtime LionScreens AMT LION C1806-023 Runtime behavior of checkboxes in AmtScreens. The runtime behavior for using checkboxes within AmtScreens was not fully complete. Now, the runtime behavior for checkbox controls within AmtScreens have been optimized. AMT 42
Runtime Web Client AMT COBOL C1809-069 statement START on non-existing file (Micro Focus). An OPEN INPUT or OPEN IO on a non-existing file did not cause the program to abort, but on the other hand the statement START thereafter caused aborting the program in conjunction with a 'Value cannot be null' exception. Now, an OPEN INPUT or OPEN IO on a non-existing file will abort the program if there is no FILE STATUS field declared. If the FILE STATUS has been declared, an error code will be assigned to it and the program continues so the logic can handle the error. The START statement also checks whether the file is open and will set the FILE STATUS if it is not open. AMT 42
Runtime Various AMT COBOL 327253 Printfile handling of REPORT HEADER and PAGE HEADER. When generating a report with a REPORT HEADER and a PAGE HEADER which both start on line 1, the PAGE HEADER was incorrectly printed on the same page as the REPORT HEADER. Now, when generating a report with a REPORT HEADER and PAGE HEADER which both start on line 1, the PAGE HEADER will be printed on a new page instead of on the same page as the REPORT HEADER. AMT 42
Runtime Jobs/Batches AMT COBOL 327247 Using IS EXTERNAL on two layouts with different sizes. A program will crash when IS EXTERNAL has been defined for two different layouts (having the same file id) with different sizes; when the smaller layout (FD) is defined first, then the READ will crash with an 'index out of range' exception, caused by the smaller size. Now, the generator has changed to handle the above mentioned scenario, scaling the shared buffer to the larger size. AMT 42
Runtime Web Client AMT COBOL 327117 Application Center logon for a second time. Refreshing the Application Center login page (when using form authentication), or pressing the browser back button several times, was resulting in an error exception 'Automatic creation of user "" failed because of : "InvalidUserName" '. Now, when refreshing the Application Center login page, or pressing the browser back button several times will no longer resulting in an error exception. AMT 42