This document describes some considerations to take into account after converting a previous version Knowledge Base to GeneXus X Evolution 1 and Genexus X Evolution 2 in order to get it ready for use.
Model Conversion to Environment or Version
The concept of Model no longer exists in GeneXus X. Prototype and Production models will be converted as an Environment or a Version, depending on their synchronicity with the Design model. Take a look at Development and Knowledge Base Management: GeneXus X vs. Previous Versions for more details.
When all the models are synchronized with the Design Model, they will be converted as Environments.
If there is a pending Impact Analysis from the Design Model to the Prototype/Production Model and there aren't any new objects in the Prototype/Production Model compared to the Design one, the Prototype/Production Model will be converted as an Environment.
If there is a pending Impact Analysis from the Design Model to Prototype/Production Model and some objets in the Prototype/Production Model are newer than the same objects in Design, the Prototype/Production Model will be converted as an Environment. In this case, the Environment is shown with the ? symbol meaning that this Environment needs a user action. The user must decide if this Model will be a Version (object changes in Prototype/Production will be kept) or an Environment (object changes in Prototype/Production will be lost in the next copy model).
Note: Backup model is not converted (it doesn't make sense to convert it)
Not Supported Model Information
Unlike de GX X version, the Evolution 1 & 2 supports not only Web Interface but also Windows form and Character form.
Visual Basic generator is no longer supported. Models that use it will be converted as a C# Generator, detailing the following message:
WARNING: Model \"VB - Access\" default environment is not supported. Changed to C#
Preferences with invalid values in GeneXus X Evolution 1 and GeneXus X Evolution 2 will be converted with the unknown Property Value value; check the Properties Compatibility in GeneXus X Evolution 1 and Properties Compatibility in GeneXus X Evolution 2 for more information.
Not Supported Objects
The following objects are not converted:
Style objects: Despite Style objects are not supported as from GX X version, when converting to GX X Evolution 1 & 2 the style will be applied to those objects based on it, during conversion process. Also, the object reference to the Style is kept in case future version implement it (they are categorized as "ToBeDefined" Objects). This enable you to easily know which object are based on specific Style by means of Object References window.
Notice that all modified properties in the Style are not applied to the converted Object; in this case the properties in the object must be changed manually.
Private Objects: This objects types are no longer supported. Change object visibility, that means, recover the orignal/no-private object, otherwise you will get the following error:
Looking for private Transactions...
ERROR: Private transaction '<ObjectName>'
Font types Not Supported
Since GeneXus X the fonts support in the IDE and generated applications is restricted to TrueType ones. True Type fonts preserves it's properties when printing, it's like a WYSIWYG (What you see is what you get) for the printer.
When converting a Knowledge Base or importing an object using a Non TrueType Font a warning message will be displayed in the output detailing the situation. An equivalent TrueType Font will be assigned. See SAC # 26660 for more details. Font types at Report\Procedure level are maintained during the conversion process when possible, check the SAC # 27045 for further details on fonts assignments at version and object level.
Conversion of reports to procedures
When converting a KB to Xev1 or higher, all Reports are converted to Procedures.
The reports do not have commitment management, the Procedures do.
If a converted report is involved in a LUW (Logical Unit of Work), the developer will have to analyze the LUW again and decide the correct "Commit on exit" property value for the converted report. By default the Procedure "commit on exit" property is set to "Yes".