GeneXus X Evolution 2 Compatibility Section

Official Content
This documentation is valid for:

Check for compatibility issues with GeneXus X or prior versions here.

Compatibility with GeneXus X Evolution 1

To convert a Knowledge Base from GeneXus X Evolution 1 to GeneXus X Evolution 2 just open it with a GeneXus GeneXus X Evolution 2 instance, it will be converted automatically when confirming this message:

[Opening Knowledge Base]

This is the first time you open this Knowledge Base with X Evolution 2 (10.2.XXXXX)..
If you continue and save objects with this version, they may not be openable with previous GeneXus versions.

Do you want to open it anyway?
[Yes][No]

If you proceed, the Knowledge Base will be converted to GeneXus X Evolution 2 format and you will not be able to open it again with a previous version.

KB Adjustments

Check for property compatibility changes.

Navigation changes

Every time you convert a KB from previous version is a good practice to perform a Navigation Comparison in order to detect, during specification time, some changes that could affect your system. Here you can see some of the differences that you may find in your own KB.

In particular, make sure to check this article.

Error Messages and Warnings

A list of conversion error and warning messages are detailed here.

GXflow Specific

If your Knowledge Base uses GXFlow, check this article.

Export \ Import

A theme object exported with Xev2 cannot be imported in Xev1, the following error will occur:

Import_Task
Processing file 'c:\temp\Xev2SampleObjects.xpz'...
Checking Import References...
Part descriptor not found: 'Font' (provided by package 'GenexusBL').
Finished
Reading import file objects...
Finished

Web Generation Changes

HTML document type considerations

Check the following considerations if you change the original value of the HTML Document type property. 

Client Side Validation properties

Check the Client Side Validation new properties. If you want to keep the GeneXus X Evolution 1 look and feel set the following values:

  • Stop on error: Yes
  • Validation message position: Top

Character attributes layout generation on Grids

Character data types takes into account the Maximum Edit Length property to set the default control length for plain level structures and grids. More Info

Grid Paging and local calculation

If you use specific code to numerate rows or any local calculation on variables on a paging grid, you may have a difference in behavior when converting your application to Xev2 version.

For example, suppose you have this code to generate a "record number" on a grid with paging enabled:

for each
  &vRowNum += 1
  grid.load()
endfor

In Xev1, when moving forth and back the grid will get the expected row number as paging is executed on the client-side.

As Xev2 generated code is improved, this code will not get the desired result when moving to the second page and following pages. You need to calculate the right "record number" using Grid.Rows and Grid.CurrentPage properties explicitly. The correct code for Xev2 version is the following:

for each
  If &vRowNum.isEmpty()
    &vRowNum = Grid.Rows * (Grid.CurrentPage -1) + 1 // first item
  Else
    &vRowNum +=1 // accumulate based on previous value
  EndIf
  grid.load()
endfor

Combobox default values

The default value for a Combo box is initialized with the empty value if exists, otherwise it uses the first Combo item value. For more information check SAC#37282.

See Also

Subcribe to this category's changes
Sub CategoriesAdd a new subcategory in this category
PagesAdd a new page in this category
Was this page helpful?
What Is This?
Your feedback about this content is important. Let us know what you think.