Global Notes:
5.X products are parts of the “Blu Age II – Legacy to cloud” product family, built on Kepler (Eclipse 4.3);
Product documentation is available at http://wikimod.bluage.com/mediawiki/index.php/Main_Page;
Starting with version 5.0, a new license management has been introduced, requiring the use of a new License Server (shipped separately – see corresponding documentation for details);
5.X versions rely on the launch configurations mechanism introduced with the 4.X product series in replacement of the previous workflow mechanism. Migrating from the 3.X workflow to the 5.X launch configuration is described in a dedicated guide.
Various improvements were performed on the WSDL to UML wizard:
Better fields naming.
minOccurs/maxOccurs support.
CXF/JAX-RS-like annotations were added to support this scenario:
As a complement, a tagged value was added to the RestOperation
stereotype to support @Consumes
(similarly to @Produces
).
Detailed content of BLU AGE COBOL2SpringMVC release 5.1.0 from BLU AGE 5.0.0.
Global Notes:
5.X products are parts of the “Blu Age II – Legacy to cloud” product family;
Product documentation is available at: http://wikimod.bluage.com/mediawiki/index.php/Main_Page
Starting with version 5.0, a new license management has been introduced, requiring the use of a new License Server (shipped separately – see corresponding documentation for details);
5.X versions rely on the launch configurations mechanism introduced with the 4.X product series in replacement of the previous workflow mechanism. Migrating from the 3.X workflow to the 5.X launch configuration is described in a dedicated guide.
A “Refresh” button was added in the Statistics View toolbar to update its content on demand.
Better UNSTRING statement parsing.
Better EXEC SQL statement parsing.
Homonym paragraphs in distinct sections are now supported.
Mapping to “Bean” or “ValueObject” elements is now possible.
More PIC formats support (now case insensitive).
“Skipped” annotations could sometimes halt transmodeling.
Modernization of entities containing a THU range works properly.
“Trying to set value from another repository” does not happen anymore.
Negative values are now supported during level 88 modernization.
The following annotations interact with transmodeling functionalities:
Skipped: annotated lines will not be processed by transmodeling.
Modernized as:
This annotation is added by transmodeling tooling (for this purpose, ensure that the “Create Service Call Annotation” option is checked in transmodeling preferences).
The “Go to UML” option of the contextual menu of those annotations enables navigation to the associated UML element.
Other annotations have a documentary / organizational role.
DAOFinder classes were renamed as DAOService.
Some compatibility improvements when editing SpringMVC mockups with G-Marker (better meta support, multiple tr in thead/tfoot support).
A superfluous “getInstanceFromSession” call was removed from pre-controllers generated code.
Global Notes:
5.X products are parts of the “Blu Age II – Legacy to cloud” product family, built on Kepler (Eclipse 4.3);
Product documentation is available at http://wikimod.bluage.com/mediawiki/index.php/Main_Page;
Starting with version 5.0, a new license management has been introduced, requiring the use of a new License Server (shipped separately – see corresponding documentation for details);
5.X versions rely on the launch configurations mechanism introduced with the 4.X product series in replacement of the previous workflow mechanism. Migrating from the 3.X workflow to the 5.X launch configuration is described in a dedicated guide.
Rare low-level errors could halt the parsing of COBOL programs (Eclipse message “An internal error occurred during: “Updating project”). Now, should those happen, they will be displayed in the “Problems” view, under the “Unexpected Parsing Error” type.
Parsing of the
NOT INVALID KEY
construct is more robust.SOURCE-COMPUTER
/OBJECT-COMPUTER
entries in theCONFIGURATION
section andSYMBOLIC CHARACTERS
in theSPECIAL-NAMES
section do not halt parsing anymore.Parentheses in the replacement source of
COPY REPLACING
are supported.“
SYSLIB
” and “FOR RESPONSE
” are now accepted in “CALL
” verbs.“#” is now accepted in PIC formats.
More PIC variants are supported (order of specifications is more flexible).
More
STRING
/UNSTRING
variants supported (DELIMITED
is now optional).Parsing of intrinsic
FUNCTION
expression has been improved.The
DO PERFORM
variant is now supported.
File search results in COBOL programs are not offset anymore by copybooks inclusion.
An “ALL” category was added in statistics export and combo box.
Order of categories is preserved in statistics export.
The Category preference is now synchronized with the editor.
The Statistics view does not cause slowdowns anymore.
Included copybooks are now properly taken into account in lines count.
Linking (
Ctrl+Click
) toFILE DESCRIPTION
from file manipulation verbs is now available.Linking to programs will now use in priority the
PROGRAM-ID
to identify the target program, then fallback to the file name.Common
COPYBOOK
s are now included in programs (SQL ORACA
,SQLSA
andSQLCA
).Any textual file can now be annotated. For this purpose, use
Right click > Open With > Annotation Text Editor
. Statistics for those annotations can be generated from the Statistics View.
Transmodeling of intrinsic
FUNCTION
expression has been improved (parameters are now properly extracted).
Generation of BLUAGE-compatible HTML mockups from BMS maps has been improved:
BMS maps not using the standard lines continuation mechanism (a character on column 72) are now properly parsed,
more attribute formats are supported,
the idiom of starting a field on column 80 is now properly interpreted.
Global Notes:
5.X products are parts of the “Blu Age II – Legacy to cloud” product family, built on Kepler (Eclipse 4.3) ;
Product documentation is available at http://wikimod.bluage.com/mediawiki/index.php/Main_Page ;
Starting with version 5.0, a new license management has been introduced, requiring the use of a new Licence Server (shipped separately – see corresponding documentation for details);
5.X versions rely on the launch configuration mechanism introduced with the 4.X product series in replacement of the previous workflow mechanism. Migrating from the 3.X workflow to the 5.X launch configuration is described in a dedicated guide.
The renaming option for inputs proposed by the COBOL reverse projects creation wizard now searches for JCL scripts. When such a file is identified, it is renamed with the «
.jcl
» extension (and no longer «.cpy
»).Duration of initial built of COBOL reverse projects has been reduced.
ON [NOT] OVERFLOW
construct is now recognized.TIMEOUT
is now valid as an identifier.Handling of the
COPY … REPLACING ==XXX== …
syntax has been generalized.
When a COBOL paragraph and section have the same name and a
PERFORM
or aGO TO
targets this name, Ctrl + Click from these verbs will reach the paragraph instead of the first element found.The
INDEXED BY
construct does not cause a warning any longer, and can now be reached by Ctrl + Click.
Considering the following COBOL code:
IF <condition>
NEXT SENTENCE
ELSE
<Statements>
Its transmodeling now generates a test with a reversal of the condition. There is therefore no more opaque generated for the NEXT SENTENCE
.
The
STRING … INTO
verb is now supported forDELIMITED BY SIZE
andDELIMITED BY <literal>
operators, with reading and writing into elementary fields.The
INITIALIZE
verb is supported for the initialization of the elementary fields.It is now possible to modernize (using the wizard Transient Object Modernization) and transmodel level 01 fields directly owning levels 88.
A caching mechanism is now provided. It can significantly improve the initialization time of the transmodeling wizard starting from its second launch. To activate it, tick the following checkbox in the preferences: «
Blu Age
⇨Blu Age Reverse
⇨Model Transformation
⇨Generic Model caching
».A mechanism allowing to choose the type of activity diagrams generated by the COBOL transmodeling has been set up.
By default, the previous behaviour has been preserved (generation of the
<<Process>>
activity and the associated operation).When checking «
Blu Age
⇨Blu Age Reverse
⇨Transmodeling
⇨Choose Activity Type on generate transmodeling wizard
», you can select the type of activity to generate by default (<<Process>>
or<<ProcessOperation>>
) :Ticking this option triggers the display of an additional column «
Generate Process Operation
» in the transmodeling wizard :This column is editable, therefore the type of activity to generate can be chosen for each line when necessary :
A contextual menu on the column title allows to change the status of all entries of this column at once:
For easier configuration, BSP properties have been reorganized in a “standard” and “advanced” scope.
Global Notes:
5.X products are parts of the “Blu Age II – Legacy to cloud” products family, built on Kepler (Eclipse 4.3) ;
Product documentation is available at http://wikimod.bluage.com/mediawiki/index.php/Main_Page ;
Starting with version 5.0, a new licence management has been introduced, requiring the use of a new licence Server (shipped separately – see corresponding documentation for details);
5.X versions rely on the launch configuration mechanism introduced with the 4.X product series in replacement of the previous workflow mechanism. Migrating from 3.X workflow to the launch configuration is described in a dedicated guide.
A CICS mapsets modernization wizard towards a Blu Age parameterized HTML mockup and its associated « screen bean » is available.
This wizard can be launched using a right-click on the CICS mapset (of .bms
extension), « Modernize BMS Map
» action.
It checks that a UML model is open, then it searches for a copybook (of .cpy
extension) with the same name as the mapset. It parses it and tries to detect if it is a SDF map (IBM "screenpainter" that generates mapping comments between screen fields and copybook). This information feeds the first page of the wizard and can be modified when necessary:
If the copybook is valid, the « Next
» button is enabled and leads to the second screen of the wizard:
The list of the CICS maps in this mapset (there may be several ones) is to the left (« BMS Fields
»). The root objects are the maps and their children, the CICS fields to be mapped. In this example, they are SDF maps, therefore to the left the “long” name with the “legacy” name in brackets are displayed.
To the right (« Screen Entity
») is a component equivalent to the « Legacy Objects Modernization
» tool (usual actions of the context menu are available here if needed). The wizard pre-feeds this part with entities issued from the merging of segments and fields « xxxI
» and « xxxO
». It also uses names to match each BMS field with the corresponding TOM one.
Once the « Finish » button is clicked, two types of entities are created.
On one hand HTML mockups: they are identical to those generated by the « Generate BLU AGE Mockup
» action, but also contain BLU AGE tags mapping to the UML (see on the left):
In the other hand the associated UML entities:
They include mappings for both « xxxI
» and « xxxO
» legacy fields so that there is an access to the corresponding merged UML field in both cases during transmodeling:
Gmarker is now the default editor for
.htmlgm
and.html
files containing at least one Blu Age tag.
There is no need to add a «
hidden
» field when a BO instance is only used to feed a table.The correct syntax of the
bluage:RequiredFieldValidator
tag is now as follows (note that the «id
» field associated with the validator must now be unique):<bluage:RequiredFieldValidator errormessage="required Last Name" forid="CUST_LNAME1" id="req_CUST_LNAME" />
In screen diagrams, it is now possible to use as the target of a navigation flow a
Call Behavior Action
UML node named after the textual path of the destination screen:
The quality of the generated code has been improved by taking into consideration the following Sonar warnings:
Redundant non-null check.
Inefficient traversal of map.
Passing a potentially null parameter when a non-null one is compulsory.
Update of a static class variable from a non-static method.
Controllers
,Forms
andValidators
class names must be capitalized (independently of associated model elements names).
Global Notes:
5.X products are parts of the “Blu Age II – Legacy to cloud” products family, built on Kepler (Eclipse 4.3) ;
Product documentation is available at http://wikimod.bluage.com/mediawiki/index.php/Main_Page ;
Starting with version 5.0, a new licence management has been introduced, requiring the use of a new licence Server (shipped separately – see corresponding documentation for details);
5.X versions rely on the launch configuration mechanism introduced with the 4.X product series in replacement of the previous workflow mechanism. Migrating from 3.X workflow to the launch configuration is described in a dedicated guide.
The following constructs of the COBOL Unisys variant are now parsed:
SECTION and PARAGRAPH IDs can be an INT
Declarative Section => USE AS GLOBAL PROCEDURE : AS is optional
USING clause added to Datasets (Record Database)
For segment definition:
"FROM DICTIONARY SAME RECORD AREA" ([KEY] IS [VALUE])
WITH keyword added
REAL keyword added
TYPE IS keyword added
@EEEE@ hexadecimal values are accepted
LOCAL-STORAGE section added
PROGRAM-LIBRARY section added
VA accepted as an alias for VALUE
OC accepted as an alias for OCCURS
REF accepted as an alias for REFERENCE
I-O accepted as an alias for INPUT-OUTPUT of SECTION
WITH USING and EXTERNAL keywords added to USE clause on section and paragraph
Accepted as ID and keywords:
MYSELF
AREAS and PROTECTED on FileDescription
LOCK statement :
Added keywords: STRUCTURE, FIRST, LAST, NEXT ...
Added AT clause
FIND statement:
Added keyword KEY OF
Added keyword de fin END-FIND
START and STOP statement on ID or STRING
CREATE statement:
Added ON EXCEPTION clause
Added CREATE XXX(INT) construct
Added keyword END-CREATE
CLOSE statement:
Added ON EXCEPTION clause
Added WITH keyword and CRUNCH option
Added keyword END-CLOSE
OPEN statement:
Added ON EXCEPTION clause
END-TRANSACTION statement:
Added ON EXCEPTION clause
SELECT statement:
Added keywords SORT, KEY
Added options: ASSIGN TO SORT DISK | PORT | PRINTER | READER | REMOTE | TAPE | VIRTUAL
STRING statement: Added keyword FOR
SORT statement:
Added clauses MEMORY SIZE IS and DISK SIZE IS
Added optional keywords on clauses GIVING SAVE | LOCK | RELEASE | NO REWIND | CRUNCH
DELETE statement:
Added optional keywords OF and NEXT
READ and WRITE statements:
Added option FORM
Added statements :
ENTER
FREE
RECREATE
CHANGE
ENABLE
DISABLE
WAIT
ATTACH
DETACH
SEEK
Added literal ATTRIBUTE
Added options to clause RECEIVED BY
Added field in clause COMMUNICATION AREA
Added TRUE and FALSE constants
Added VALUE literal in expressions
Handling of NULL literal, including when IS operator is implicit
Added USE ON clause on a section
Support for the copybook inclusion by fragments syntax: COPY [NAME] FROM [INT] THRU [INT] REPLACE ...
Beans can now bear synthetic operations, stereotyped with
<<formula>>
or<<process>>
.