AMT Release Notes

AMT 58

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

Special attention items:

AMT 58

Product Cat Subcat Description Type Version Priority
AMT LION Runtime Web Client C1711-043
The AMT File uploader has been added as new control for AMT LION/VS.

This new control enabled the uploading of files from AMTScreens and the Webclient to a user defined location.
Please note that, the AMT File uploader will not be available for Lionscreens as it will be phased out. 
More can be found here: https://help.myasysco.com/lion/file-uploader.html

NEW  AMT 58
AMT LION | AMT COBOL AmtTools Reo C1901-049

Changes to the Fillfactor were not noticed by the new AMTReorganize.

The new AMTReorganize did not notice any changes to the fillfactor of a Filegroup/Tablespace of a table.
Therefore, changes would not be applied at all. 

The new AMTReorganize will now check if the fillfactor of the filegroup/tablespace is adjusted and will rebuild the table.
FIX AMT 58
AMT LION Runtime Various C1906-034
Misunderstanding message when your license database type and configuration database type do not match.

When the lion.ini database type is set for example to MSSQL and your license is for ORACLE an unclear message was received by the user.

In the new situation, the AMT Developer Studio will give you a dialog box when the database types of the license does not match the configuration.
FIX AMT 58
AMT LION Generator Various 314230 
ShowPopup instruction allows caption, but is not used on runtime

It was possible to pass a caption to the ShowPopup instruction.
SHOWPOPUP(, [Caption])
On runtime the caption is not used.

Now the parser will reject the second parameter Caption.
CHANGE  AMT 58
AMT LION | AMT COBOL Developer Forms 327719 
Removing the inactive languages from a layout

When an application contains multiple languages that are inactive, the old layout (inactive language) still was stored in the new revision.
This could lead to unwanted behavior when you enabled the language again.

Now the inactive languages are no longer stored in the repository when the object is put in edit and saved.
Also the export of a specific generation set will not export the inactive languages of that generation set.
CHANGE AMT 58
AMT COBOL Runtime Various C1908-008
CLEAR screen option needed for starting a new transaction.

For environments originating from A-Series COBOL a CLEAR screen option was needed for starting a new transaction. When a user hits CTRL + DELETE the client will send the CLEAR screen option to the transaction server. The transaction server will send an empty terminal form (the form as defined under the application options in AMT COBOL) back to the client when the CLEAR screen option is received. The empty terminal form can then be used to start a new transaction. The CLEAR screen option has been implemented in AMT COBOL for Application migrated from from A-Series Mainframes only.
NEW  AMT 58
AMT LION | AMT COBOL Generator Various C1908-029
The IBM DB2 function "IDENTITY_VAL_LOCAL()" needs translation.

In order to retrieve the Unique ID, from a former IBM DB2 Databases, the IDENTITY_VAL_LOCAL(). Now,  we started to add this statement to "SELECT SCOPE_IDENTITY()" for DB2 Databases. 
For AMT LION on the other hand, when inserting a record the LIONRECNO was retrieved using "@@identity". However, that value might be incorrect if used inside a trigger on the table where the insert was performed (For example using the preview of triggers). 
Now the insert statement also uses "SCOPE_IDENTITY()" to read the value of the main record.
FIX AMT 58
AMT COBOL Runtime Various C1908-034
Automatically assign and retrieve SDF form data in runtime libraries

Initially you had to code the logic, for assigning and retrieving screen fields values, in the WS-TO-FORM and FORM-TO-WS sections yourself for application migrated from former A-Series Mainframes (SDF Cobol Forms). This is now all handled in the runtime libraries. The WS-TO-FORM and FORM-TO-WS sections no longer need to include any logic for assigning and receiving screen field values.
Now these sections can be used for some additional validations or data manipulations if required.
CHANGE  AMT 58
AMT COBOL Generator Various C1908-037
Some EXEC-DB2 functions would not return errors in case they were not supported.

Some EXEC-DB2 functions didn't return an error in the generator when they were not supported.
However, when executed in runtime, these EXEC-DB2 functions would throw an error and set the SQL-status code.

Now, the generator will generate an error to highlight SQL-function(s) that are not supported.
FIX  AMT 58
AMT COBOL Runtime Various C1908-044
Filecontroller fix on record size when opening existing file for output.

An existing file was opened for output in AMT COBOL. The file was recreated but the metadata containing record size not. This caused problems on Microfocus sequential files as they have no record ending.

With this fix, the metadata is updated with the correct record size.
FIX AMT 58
AMT COBOL Runtime Various C1908-046
Read next on an indexed file did not return the first record when key contained all binary zeros.

This only happens on a COBOL Read next, when no START was called and the first record contains binary zeros. The first record in an indexed file was not found then. Fix on C1905-034.

With this fix, the first record is found.
FIX AMT 58
AMT LION | AMT COBOL Runtime Web Client 328211
Application center does not translate the decimal separator on typing.

When typing a comma in the application center when a dot was specified (or the other way around) this was not converted. Also the length checks were incorrect and incorrect data could be entered.

Now, when typing the other separator it is automatically converted. Also selecting text with shift + left key now works in a numeric field.
FIX AMT 58
AMT COBOL Runtime Web Client 328169
A numeric input field with format ZZZ9 should show leading spaces in the input field.

A numeric input field with format ZZZ9 should show leading spaces in the input field when displayed. When it has the focus these are removed (like the thousand separators) and replaced when leaving the field. Currently, leading spaces would be trimmed. 

When the format (COBOL forms) has a Z in it the value is no longer trimmed.
FIX AMT 58
AMT LION | AMT COBOL AmtTools Reo C1908-051
Sql error with triggers causing an error: cursor c1 already declared.

Sql error with triggers causing an error: cursor c1 already declared.
This happens when creating user triggers, which inserts a record in another table and both tables have the trigger defined.
Currently, the Trigger functionality is still in preview.

The AMT triggers for date, time, etc. now have each a unique cursor name inside the trigger. For the user triggers it is the responsibility of the developer to make them unique.
*Please note that only the new online reo program will create unique names.
FIX AMT 58
AMT COBOL Generator Various C1908-062
For AMT COBOL migrated from IBM, certain labels were not sent in the transmit.

For AMT COBOL applications migrated from IBM, certain labels were not sent in the transmit. This occurs when the label has a caption/initial value and has a name defined in the BMS definition. 

Normally the BMS labels are not sent and also not part of the copy books with the screen definitions. However, when a label had a name it was sent on the mainframe.
Now, a label has a property for sending its value (as most labels do not need to send) so the screen buffer is aligned the same as on the mainframe.
FIX  AMT 58
AMT COBOL Runtime Web Client C1908-063
Format with B's wouldn't allow input. 

A COBOL form with a Numeric input field containing a format with B's did not allow for input.

Now, in a COBOL Form, with a Numeric input field containing a format with B's, the data can be input. During focus the spaces are removed (like thousand's separators) and formatted again once you have left the field.
FIX AMT 58
AMT COBOL Runtime Various 328212
Converted screen colors were not adjustable at runtime correctly.

Converted screen colors were not adjustable at runtime correctly for an application migrated from IBM COBOL. 

The high is no longer translated into font.bold only. Now, it is set as a new property "intensified" in the developer.  This label/edit will only be available for migrated IBM COBOL applications).
In the amt.css there are 4 new IBM COBOL classes for controlling the layout.
FIX AMT 58
AMT COBOL Runtime Jobs/Batches C1908-078 
AMT COBOL support for multiple program parameters

In the past, it was not possible to pass multiple parameters from a script to an AMT COBOL program, because it was all handled as 1 parameter.

It is now possible to pass multiple parameters from a script to an AMT COBOL program.
CHANGE AMT 58
AMT COBOL Runtime Various C1908-076
IsNumeric check gave true incorrect value for COMP-3 fields filled with spaces

IsNumeric check on COMP-3 fields should return false if the buffer is filled with spaces.
COMP-3 fields with valid numeric data in the memory buffer should always end with a 0x0C, 0x0D or 0x0F.
FIX AMT 58
AMT LION | AMT COBOL AmtTools Reo C1908-083

The new AMT Reorganize is not setting the FLAG_ fields value correctly. When a new index is added with a condition then the FLAG_ fields needs to be added. After that it needs to get a value 0 or 1 based on the logic. The new reo sets all to 1.

Now the correct SQL statement is executed to update the value. Also, any trigger is first disabled before executing the SQL statements to set the FLAG value.
FIX  AMT 58
AMT COBOL Runtime Various C1908-089
The IBM EIB field Eibcposn was always zero.

The EIB field Eibcposn, found in migrated IBM applications, was always zero but should contain on transmit the current cursor location.

Now the field Eibcposn is filled with the location of the field where the cursor is located in.
FIX  AMT 58
AMT COBOL Runtime Various C1908-091
EXEC CICS STARTBR + READNEXT comman did not work

EXEC CICS STARTBR + READNEXT command, when using RBA (relative byte address),  did not work and set error: Vsamfile not opened for browse. 

Reading a vsam file with RBA (Relative Byte Address) now works correctly.
FIX  AMT 58
AMT COBOL Generator Various C1908-093
COBOL source incorrectly marked as containing line/sequence numbers in AMT COBOL.

The AMT COBOL parser would identify sources as if they included line/sequence numbers if the first non-empty line contains more than six spaces at the beginning of the line. This was causing various validation/generation issues.

AMT COBOL doesn't support line/sequence numbers, therefore, we have disabled the line/sequence numbers check. 
FIX AMT 58
AMT LION | AMT COBOL Developer Various 327316
Added documentation to Indexes.

In search results, the documentation from indexes would still be shown but couldn't be opened because the documentation node didn't exist.

Functionality has been added to create a working documentation node under indexes.
This will show all the old index documentation and also includes all functionality to create new or edit existing index documentation.
NEW  AMT 58
AMT COBOL Runtime Various C1908-094
STRING is truncated when insert-statement has length parameter set

In AMTQUERY, a VARCHAR parameter (of an Insert or Update statement) is restricted to the length of the first string that is passed.
All subsequent parameters will be set to an equal length as the first parameter. In cases, where larger strings were passed, the data would be truncated by Ado.Net. 

In applications migrated from an IBM Mainframe, a separated length parameter is used in case of a VARCHAR field. This parameter is used to determine the maximum length to prevent values get truncated. This has now been implemented and will not have consequences for AMT- LION customers.
FIX AMT 58
AMT COBOL Runtime Various C1908-100
EXEC CICS XCTL & LINK can give errors, If A calls B and then B call A again.

AMT reused the instance A, while it was still in use, this can cause unwanted behavior and errors (like NULL Reference Exceptions).
This has been resolved.
FIX  AMT 58
AMT COBOL Runtime Various C1908-102
SDF screen field attribute handling in AMT runtime libraries.

For the migration of A-Series SDF screens, we have added an SDF field attribute property to all editboxes and labels on a COBOL Form, this is only available for A-Series SDF COBOL Forms. It is used to specify that a specific field attribute can be changed on Runtime.
NEW  AMT 58
AMT LION | AMT COBOL Developer Various C1908-104
All categories were displayed in upper case in the AMT Developer Studio.

All categories in the AMT Developer Studio, of newly created applications, were being displayed in uppercase.

Categories will now keep their default casing settings.
FIX  AMT 58
AMT COBOL Runtime Various C1908-105
Queued transactions reusing COBOL program instance.

If the transaction server is already running the maximum number of instances of a (transaction) program and a new request is received for the same (transaction) program then that transaction gets queued.
As soon as one of the running instances is finished the (next) queued transaction is executed. But the problem was that it was reusing the same instance without disposing and recreating it first. This was causing runtime issues with the usage of copies in AMT COBOL.

Now, the transaction request disposes and recreates program instances before executing queued transactions.
FIX AMT 58
AMT LION Runtime AmtScreens 328407 
The system item SI-FOCUSFIELD was not set when pressing Enter on a single field.

The focused field element was not kept when pressing Enter (Xmit key). It did work for events like OnEnter and Onclick.

The focused field is now also sent for Xmit Event.
i.e. Sending the form via Xmit Key when the focus is on a focusable field.
FIX AMT 58
AMT COBOL Developer Forms C1908-107
SDF form attributes in AMT COBOL

For the migration of A-Series SDF screens we have added SDF form attributes settings to the options of a COBOL Form, this is only available for A-Series SDF COBOL Forms. It is used to specify SDF specific form behaviour.
NEW AMT 58
AMT COBOL Runtime Various C1908-110
The "LENGTH OF" function did not return the length

The "LENGTH OF" function did not return the length as defined in the PIC part, like: "01 X PIC 9(8) COMP-3" returned 8 in this case.

The "LENGTH OF" function should return the length of the memorybuffer occupied by the variable. 
FIX AMT 58
AMT LION Runtime Web Client 328418
Problems connecting or users were kicked off

The following error would be logged in the event-logs quite a lot: "Station SECURITY already existed in the Client data list of this socket, it was replaced with the new Client data."
The error above is logged when users have problems connecting or are kicked off possibly because of a reconnect.

This issue has now been resolved in the connection logic.
FIX  AMT 58
AMT COBOL Runtime Various C1908-113

EVALUATE statement did not work correctly if there was an empty line between the WHEN conditions. The statement should be "ored" 

EVALUATE statement now works correctly if there are empty line(s) between the WHEN conditions.
FIX AMT 58
AMT COBOL Generator Various C1908-114
Initial HEX value numeric COMP fields incorrect in AMT

The initial hexadecimal value of numeric COMP (PACKED-DECIMAL) fields is incorrectly generated out in the C# code.
Causing incorrect initial memory values for those fields.
This was only causing problems when using non-numeric hexadecimal values. This issue has now been resolved.
FIX  AMT 58
AMT LION Developer Code Logic 328399 
Some listview properties could only be set in code

Retrieving listview attributes like font.italic gave a generation error.

Now the functions can be edited in the runtime library to retrieve the attributes.
FIX AMT 58
AMT LION Runtime Various C1909-011
The AMT File uploader will now clear the file it's holding after a transmit.

Also when selecting a file it is possible to deselect the file by pressing the button again.
NEW AMT 58
AMT LION AmtTools Reo C1909-012
The new AMT Reorganize does not create unique indices correctly within Oracle.

When a Unique Index did not have any included columns the unique index was created correctly within Oracle.

The creation of the unique index within Oracle has been corrected.
FIX  AMT 58