AMT Release Notes

AMT 52

Released: 02 May 2019.
For availability, please contact the Avanade Service Portal for information on downloading new releases.

Special attention items:

AMT 52

Product Cat Subcat Description Type Version Priority
AMT LION Developer Forms C1711-040  Radiobutton captions would only show the default language if set to an empty value.  In cases where multilingual forms are used, the default language of the Radiobutton is used instead of the expected language.  This issue would only exist when one would assign a blank value to the caption (ergo calling the object in the source code) of one of the items of the Radiobutton.   Other objects, like for instance the label, were correctly handled.  All objects controls containing captions or text will now show the text defined in the languages now. Please note that languages are not yet read and stored correctly in the Webclient and AMT Screens. Also, the Webclient will not show the language correctly. Currently, it will always show the default language. This will be addressed in a future release. FIX AMT 52
AMT LION AmtTools Reo C1809-010 Create or drop foreign keys in the new AMT Reorganize The new AMT Reorganize is still in preview mode and functions are added in a phased approach.  It was not possible to create or drop foreign keys in the new AMT Reorganize.  Now, new functionality has been added to create or drop foreign keys. CHANGE AMT 52
AMT LION | AMT COBOL Control Center Configuration 327241 Printer option 'Trim trailing spaces' is not set to true by default Due to an internal change, the Printer option 'Trim trailing spaces' was set too false. However, this value needs to be set to true as a default value. The Printer option 'Trim trailing spaces' is now set default to true. FIX AMT 52
AMT LION Developer Various 326952 Changing parameters of a performed Global Routine or DLL could raise an index out-of-bounds error.  When objects call a Performed Global Routine or DLL that has not been generated  the screen may crash with an index out-of-bounds error.  The same goes when the method signature of a Performed Global Routine or DLL has changed. For example, in a situation where fewer parameters get passed then it will throw an index out-of-bounds error. When passing more parameters it will continue silently. Both situations are wrong. The number of parameters will now be checked for Performable Global Routines and DLL's, also a clear exception is thrown when not equal. FIX AMT 52
AMT LION | AMT COBOL Runtime Various C1902-013 Change Runtime license warning behaviour. In the past, the runtime license would start throwing warnings in the log files starting 60 days before the actual expiration date.  This would clutter the log files, making it hard to read the logs.  The warning will now start to appear in the log files 30 days before the actual expiring date.  CHANGE AMT 52
AMT LION | AMT COBOL Developer Code Logic 327276 C# error CS0103 when defining Global Includabe local. Generated code did not compile because the name of the Insertable routine was used instead of the parent. This situation could occur when the Global Includable was defined as Constant or Variable of a (local) routine. This would then result in the following C# Error: CSharp: error CS0103: The name 'Gv_ResamRouDefs' does not exist in the current context. The Generator was corrected to generate the right parent name where the variables are hosted in.  FIX AMT 52
AMT LION Runtime AmtScreens 327909 Closing popup cancels out changes that are set in the code. During our routine test, with an internal test case, we detected that the pop-up was affecting dynamically filled ButtonGroups or RadioButtonGroups. These ButtonGroups or RadioButtonGroups were dynamically filled from the source code. After opening and closing the popup, these ButtonGroups or RadioButtonGroups would show the default values (the values set in the AMT Developer layout) instead of filling them dynamically.  This behaviour has been fixed, changed attributes won't be reset to the default value anymore. FIX AMT 52
AMT LION Developer Reports 327984 CSharp: error CS1061 error in Generator. When trying to use a Graphical Report Layout as a variable no error or warning was given when syntax checking,  However, this should not be possible as it will throw an error during the generation process of the report. In this case, the following error will be raised: "CSharp: error CS1061: 'AmtGraphicalPrintLayout' does not contain a definition for 'IsReadWriteLayout' and no extension method 'IsReadWriteLayout' accepting a first argument of type 'AmtGraphicalPrintLayout' could be found () Eg.  You should not be allowed to define:        if  <> ''          ...      endif  Instead, one should define this command like this:      if . <> ''          ...      endif  Now, when trying to use a Graphical Report Layout as a variable an error is thrown when syntax checking. FIX AMT 52
AMT COBOL Developer Code Logic C1904-011 Conditional expressions were not validated on being Boolean, causing a generation error. Currently, we are taking a phased approach in improving COBOL syntax validations checks. In this change, modifications have been made to improve the checks on Conditional Expressions.  In some cases it was possible to use an alpha field in 'IF', 'PERFORM UNTIL' and 'EVALUATE WHEN' statements. Because Conditional Expressions were not validated if faulty statements were created, this would cause a generation error when generating the sources.  The Amt COBOL conditions used in statements 'IF', 'PERFORM UNTIL' and 'EVALUATE WHEN' are now validated on being a Boolean expression. If not, an error is set in AMT Developer Suite. CHANGE AMT 52
AMT LION Runtime AmtScreens C1904-021 AMT Screens - Macro support for Left right, up down, end, home and tab has been added. Macros are being implemented in a phased approach.  Macro support for the following keys: Left right, up down, end, home and tab was still missing from AMT Screens.  In AMT 52 these keys have been implemented into the Macro support. NEW AMT 52
AMT COBOL AmtTools Reo C1904-020 AmtReorganize Table/View Synonyms The new Amt Reorganize was not yet capable of maintaining the 'Synonyms' that are defined for a table or a view in the AMT Developer Studio. Therefore, in this release, we've added functionality for maintaining the 'Synonyms'. CHANGE AMT 52
AMT LION Runtime AmtScreens C1904-022 Old sources could have objects in which the decimal and the thousand separator character is equal.  The AMT Framework checks in current releases whether decimal and the thousand separators are declared with the same character and will prohibit one from doing so.  However, in some cases old LION sources will still contain objects (for example: the edit box) where the decimal and a thousand separators are set to the same character. This could cause invalid values to appear on screen. AMT Screens will now throw an error when this situation occurs with the following error message: "The decimal separator character cannot be the same as the thousand separator Character.".  FIX AMT 52
AMT LION Runtime AmtScreens 328068 OnSelect can be triggered in read-only Combobox. OnSelect events could be triggered in a Combobox despite the fact that it was set as a read-only object.  The problem existed when one would use the down key in a Combobox. By this event the selection could be changed for a few seconds, causing the OnSelect event to be triggered. This behaviour should not be possible. A read-only Combobox cannot be changed anymore with the arrow keys. FIX AMT 52
AMT LION | AMT COBOL Developer Various 328031 Make current AMT user visible in AMT Developer. When using the AMT Developer Studio, it wasn't possible to check which user was used to log-in to the AMT Developer Studio. In some cases when one did not have the right security clearance it would come in handy to see the station and name.  It is now possible to see your station and user name in the about screen.  CHANGE AMT 52
AMT COBOL Runtime Various C1904-025 Check usage if CobolMiFoWindows application kind in runtime. For migrated Micro Focus applications customers using AMT COBOL that come from a Windows environment, different runtime behaviour is needed than the ones migrated from a Unix environment. Therefore, a new 'application kind' has been added alongside "CobolMifoUnix" application kind, that can be chosen under Architecture in the Control Center.  Additionally, a check has been built-in to check the source code to see if this new application kind needs to be set for existing applications that have originally been set to "COBOL Microfocus Unix" kind.   CHANGE AMT 52
AMT LION Runtime AmtScreens C1904-027 Listbox tabbing is broken. In previous releases, it was not possible anymore to tab through a Listbox more than once.  The first time, it would still be possible to tab through all the element, however, after one has looped through all the elements, the focus was not changed and the tab seemed to do nothing anymore.  Tabbing has been fixed for the Listbox.  FIX AMT 52
AMT COBOL Generator Various C1904-030 VALUE ALL would be defined with spaces instead of character.  In AMT COBOL, when a '01 level' was defined with the VALUE ALL 'N', the value would be filled with spaces instead of filling it with the N characters. Example:  01  PL-LEVEL1                   VALUE ALL 'N'.      05  PL-LEVEL2 OCCURS 87  TIMES PIC X. Now, this behaviour has been changed and all characters will be defined with 'N' instead.  CHANGE AMT 52
AMT LION Runtime AmtScreens C1904-035 Crash when the first control on a form is an invisible Combobox. When the first control in a TabOrder of a Combobox is set to be invisible,  AMT Screens would crash with a null reference exception. Now the correct focus will be set, when opening a form, by checking the visible and enabled state first and setting focus to the first enabled and visible control of the Combobox. FIX AMT 52
AMT LION Runtime AmtScreens C1904-032 Page control also triggers OnChange when changing a child combobox. The Page control, the container of one or more overlapping tab sheets,  also trigged an OnChange event of one of the Comboboxes (that was added to the container). If one would select a different item from the Combobox, the OnChange event would be triggered. This caused the default item to be chosen again.  These 'child controls' should be ignored. The sender is now checked, therefore, OnChange events from child controls will now be ignored. FIX AMT 52
AMT COBOL Generator Various C1904-036 Remove unnecessary prefix from filename in ASSIGN TO statement In migrated IBM sources prefixes can be found in filenames that were used in the 'ASSIGN TO' statement because IBM COBOL needed this to function.  However, these prefixes are no longer needed in AMT COBOL and will, therefore, be stripped for the source when its being generated. So, the prefixes can still be found in the AMT COBOL source code, yet the generated source will no longer contain these prefixes. FIX AMT 52
AMT LION Developer Web Services C1904-037 Using Old-Style Provided Webservices the generator gave an error The implementation of the Soapheader in the AMT Release of AMT 51 had caused a generation error. This generation error would occur when one would generate an Old-Style Provided Webservice. The following generation error would be thrown:  GeneratedError CSharp: error CS7036: There is no argument given that corresponds to the required formal parameter 'soapParameters' of 'AmtWebservice.Invoke() The generation error is solved now. FIX AMT 52
AMT COBOL Runtime Various C1904-039 Added support for duplicate records in VSAM files. In previous releases duplicate records in VSAM files would always throw an error. In this release, a checkbox has been added to the VSAM config in Control Center, for AMT COBOL( migrated IBM / MicroFocus customers), to add support for duplicate records.  When this checkbox is set, duplicate records are accepted. NEW AMT 52
AMT LION Developer Code Logic 328069 Public & Type keyword highlighting The keywords Public and Type did not highlight correctly. This has been adjusted, now both keywords highlight correctly. FIX AMT 52
AMT LION Developer Web Services C1904-044 Check on the SOAP-Header in Webservice options The SOAP-Header was introduced in AMT 51, yet there were still checks needed on the SOAP-Header properties. In AMT 51 it was still possible to choose for RPC-encoding together with the new SOAP-Header. It was possible to generate the Webservice without error, however,  when the WSDL would be called in the browser, it would throw an error: (Message ROU_SOAPHEADER_CLASS must not have headers to be used in RPC-encoded style). Additionally, it was possible to generate a SOAP-Header without a Class name filled in. Lastly, it was possible to add a SOUP-Header that wasn't an existing class yet.  Proper checks have been implemented on the SOAP-Header name and the SOAP-Header class. Additionally, the SOAP-Header class must exist as a class. CHANGE AMT 52
AMT LION Developer Web Services 327481 Generation of a Consumable Webservice with definition XSD:short would throw errors. When an XSD:short element was defined in a WSDL, the generation would fail, throwing the following CSharp Error: "Added to AMTVariable.cs a function ToInt16()". This was caused by the fact that the short was generated as a native Int32 instead of the native Int16. Now the generator will generate the right native definition against the valid XSD-definition. FIX AMT 52
AMT COBOL Runtime Various C1904-049 "Data Exception" raised on assignments due to performance improvements. A "Data Exception", in AMT COBOL for former IBM z/OS and former Micro Focus customers, should only occur when an arithmetic action is taken place on a Numeric field containing invalid Numeric data. But currently (due to the performance changes) this also happens when assigning (MOVE) an invalid numeric value to a Numeric field. This has now been resolved. FIX AMT 52
AMT COBOL Runtime Various C1904-050 The behaviour of EXEC CICS READ & STARTBR has been adjusted. For Customers, migrated from IBM / Microfocus environment that made use of CICS, the behaviour of the EXEC CICS READ & STARTBR commands have been adjusted. The default read behaviour has now been set based upon file type. - For Indexed files, it is set to EQUAL - For Sequential & Relative files is has been set to GTEQ This can be overruled by adding the EQUAL or GTEQ keyword in the CICS command FIX AMT 52
AMT COBOL Generator Various C1904-053 Group item defined using COMP-X as parent level item was not supported. When a Group item, on the 01 Record description entry was, was predefined with a COMP-X as "parent level" item this would cause issues on runtime as it was not supported. Because of the COMP-X definition, a PICTURE string of a COMP-X item may contain only all "9" symbols or all "X" symbols.  However, this definition was not recognized as a Group item, causing issues at runtime.  E.g.:       05  FD-FILE-DATE                COMP-X.          10  FD-DAY        PIC 9(2).          10  FD-MONTH      PIC 9(2).          10  FD-YEAR       PIC 9(4). In this example, the Group item FD-FILE-DATE would be generated as a separate variable alongside its members instead of being generated as a parent of the group.  This is now fixed, FD-FILE-DATE will now be generated as a structure, containing the members: FD-DAY, FD-MONTH and FD-YEAR. FIX AMT 52
AMT COBOL Runtime Web Client C1904-054 Implement Cobol HighIntensity. For migrated CICS applications the display intensity of field can be set to a higher intensity. Therefore, some adjustments have been made to the Amt.css file. Here one can change/add the '.CHighIntensityCobol class'. The colour defined in this class will be set if the 'HighIntesity' attribute is set on a field. CHANGE AMT 52
AMT COBOL Generator Various C1904-057  DYNAMIC was not handled when used in ASSIGN TO statement. The FD statement DYNAMIC was not used in AMT COBOL when in the FILE CONTROL section DYNAMIC was specified in the ASSIGN TO command. Now support has added for applications migrated from a MicroFocus mainframe. When the FD statement DYNAMIC is used, a dynamic file variable is created.  FIX AMT 52
AMT LION | AMT COBOL Generator Various 327027  The AMT Generation service was shown as running while it got an error at startup. When the AMT Generation service is started with the right AMT License,  it would still show as running.  This was caused by a dialogue box that was defined in the service. The dialogue box is now deactivated for the service and instead, an event is written in the event log. FIX AMT 52
AMT LION Runtime AmtScreens C1904-061 Automatically open the message tab after Job starts. In LIONScreens, when a Job is started (from the Start Job tab) and when the Job would need user input, the messages tab would automatically get the focus. However, in AMT Screens, This logic was not implemented yet.  Now AMT Screens will open the input tab automatically as well. CHANGE AMT 52
AMT COBOL Developer Code Logic C1904-068 Usage of SQLCA.SQLERRD array items not supported in AMT COBOL. The usage of SQLCA.SQLERRD array items was causing "Operand … is not declared" errors in AMT COBOL, for customers migrated from IBM z/OS customers. This has been resolved, the SQLCA.SQLERRD array items are now supported in AMT COBOL. This wil not impact existing customers. FIX AMT 52
AMT COBOL Developer Code Logic C1904-073 CICS ASSIGN (NETNAME) not supported in AMT COBOL. For migrated IBM z/OS customers, the usage of the CICS ASSIGN (NETNAME) statement was not supported in AMT COBOL. The NETNAME option of the CICS ASSIGN statement has now been implemented. This wil not impact existing customers. FIX AMT 52
AMT LION Developer Code Logic 326985  Century should be calculated on a fixed time frame. In some cases, the Shifting Time Frame resulted in unexpected behaviour of the Dateconvert command. For instance, In cases where a two-digit year number is needed, for example with a YYDDMM format, the typed year should result in the same century every year. Eg. 570101 should always result in value 19570101 when the format CCYYMMDD is applied. When Shifting Time Frame is applied the result in the next year will be 20570101. Hence, a new parameter, called Century Start, is introduced in the AMT Development and can be found the application options.  When this parameter is not equal to zero (0), the Shifting Time Frame will not be used. The value type will be used as the first year to start the previous century. Eg. value 57 will always result in the year 1957 when you type the 57 in the format YYMMDD.  NEW AMT 52
AMT LION Runtime AmtScreens C1904-088 In RTQuery the first underscore would disappear within the columns of the listview. The issue had to do with access characters within WPF. Underscores will now properly show again. FIX AMT 52
AMT COBOL Runtime Various C1904-077 Database trace does not show the source of the query In AMT COBOL, only the name of the main program would be shown in database traces. In cases where the main-program called other linked programs or sub-programs, trace logs were not that useful, as they did not supply the name of the sub-program, making it hard to understand where exactly the error occurred.   EG.: 20190425    11:21:42.355    15376    Debug    MAINPROG1  MAINPROG1  The name of the main program is MAINPROG1 in this example. The database trace will now show the name of the program that executes the query. So instead of MAINPROG1, it will show the actual program name. CHANGE AMT 52