Change in Navigation List |
Information |
X |
Xev1 |
Xev2 |
GeneXus X Reports shows "Output Devices: File" instead of "Output Devices: ScreenPrinter" |
The Report Output property changes its default value from Ask User to Only to File. More information |
Yes |
- |
|
New warning "spc0141: Rule %1 is deprecated" in GeneXus X. |
Some Functions or Rules, like No Read, are no longer supported in GeneXus X. More information |
Yes |
Yes |
|
Formula navigation changes completely. |
In GeneXus X almost all formulas can be resolved in the server and also several formulas (with similar execution plan) can be executed together (in the same SQL). Therefore, the navigation list changes completely in this case. More information
Fixed SACs referring to with formulas:
SAC 26866 : Implicit condition was incorrectly added.
|
Yes |
Yes |
|
New specification control: "spc0142: The value of %1 will be the same for all rows..." in GeneXus X |
This message indicates that the value will be the same for all records.
|
Yes |
Yes |
|
Warning "spc0116: Group cannot be ordered by %1" does not appear in GeneXus X |
Order clause supports more formula attributes, as most formulas are evaluated on the server side. This is the reason for the message to disappear in this version. In those cases, a new warning appears: "spc0136: Order ATT is a formula in group starting at line n". More information
|
Yes |
Yes |
|
New warning "spc0136: Order %1 is a formula %2." |
It is just a warning indicating that the order clause uses an attribute defined as a formula (%1). The formula might have to be evaluated for each record in order to sort the results and this could be costly to the server.
%2 indicates the context where the attribute formula is referenced, for instance, the For Each' Order Clause or the Item Description attribute of Suggest/Dynamic Combo Box control.
Note: Only "server side" formulas can be used in the order clause. If GeneXus determines that the formula cannot be evaluated on the server, the spc0139 also appears. |
Yes |
Yes |
|
Order clause with a formula attribute shows its name instead of its composition. |
|
Yes |
Yes |
|
Warning "spc0026: Formula %1 cannot be evaluated in this program" does not appear in GeneXus X |
This message is shown when vertical formulas are used in objects other than Transactions. The restriction does not apply any more in GeneXus X, and these formulas can be used everywhere. More information |
Yes |
Yes |
|
Warning "spc0133: Formula %1 cannot be evaluated in %2 does not appear in GeneXus X when the %1 is a Find formula. |
This message was shown for Find formulas used as Item Descriptions in Dynamic Combo Box or Suggest controls. This restrictions does not apply any more in GeneXus X, as of GeneXus X Upgrade 4.
See : Formulas , SAC # 26243
|
Yes |
Yes |
|
New warning "Type mismatch in condition: &var = Boolean.False" |
An enumerated domain "Boolean" was defined in a previous version and now is a GeneXus Data Type. Rename the domain or use the new data type. |
Yes |
Yes |
|
Object's navigation shows new "FILL <DynCombo>" groups. |
Now subtypes attributes inherit their control-info from the corresponding supertypes.
This is the default behavior in GeneXus X (as for Upgrade 4). So, during conversion process all subtype attributes with a default Control-Info will inherit the value from their supertype.
This also affects variables basad on Subtype attributes or based on Business Components with subtypes attributes.
So, if the variable/attribute is present on a web form, you will notice this new behavior looking at the object's navigation.
SAC # 24870
This compatibility issue has been fixed as of GX X Evolution 1 Upgrade 2. See SAC # 28095 for more details.
|
Yes |
Yes |
|
New specification controls for Methods and Link function:
"spc0023: Parameter %1 has wrong type <linking | for method> %2."
"spc0024: Not enough parameters <linking | for method> %1"
"spc0025: Too many parameters <linking | for method> %1"
|
Previous GX versions didn't check the data type and the amount of parameters in Methods and Link Function. Therefore, some of these warning message can appears during specification time.
SAC #24456
|
|
Yes |
|
New message warning when rules are not included:
"spc0158: Rules %1 not included."
|
As from X Evolution 1 when rules are not included, an spc0158 is shown during specification time (SAC # 26371).
In same cases, this warning could disappear because of a new validation in rules that depend on SDTs. (SAC # 26762)
Also new warnings could appears for those "call" rules containing a parameter that has not been initialized. Now the specifier validate that each input parameters in the called object is initialized in the caller. (SAC # 25706). This apply also to GX X as from Upgrade 4.
|
|
Yes |
|
"Find" formula navigation is show as "READ Table.." |
Those Find formulas that is know will retrieve just one record are optimized.
SAC # 24780
|
|
Yes |
|
Some messages have slightly changed to show more contextual information about the error / warning. |
Examples:
spc0023: Parameter FeriadoSACLocalID calling GX00Z0 has wrong type. (Rules | Source, Line: n)
|
|
Yes |
|
This message does not appears as for GeneXus X ev1 Upgrade 1:
"spc0097: Rule 'confirmtrn()'does not apply to Business Component. Ignored."
|
The rule confirmation() does not apply to Business Components, therefore as of GeneXus Xev1 Upgrade 1 is not included to the BC code. |
|
Yes |
|
Warning: 'UseAutomation' is a deprecated property. |
See Deprecated Functions and Properties for more details. |
|
Yes |
|
The LoadContext invocation on Start Event does not appear any more as of GeneXus X Evolution 1 Upgrade 2. |
The &Context variable initialization is performed within the Initial Value property. See SAC 27780 for more details. |
|
Yes |
|
Warning spc0001 changes to spc0168. |
This change applies as from X Evolution 1 Upgrade 3. See SAC 28253 for more details. |
|
Yes |
|
A constraint appears in Break navigations |
This change applies as from X Evolution 1 Upgrade 3. See SAC 28175 for more details. |
|
Yes |
|
Dynamic Combo and Suggest navigations of subtypes changes the attributes named (subtype or supertype). |
The expected navigation for Dynamic ComboBox and Suggest in subtypes is as follows:
FILL SubtypeCode with <ItemValues>, <ItemDescription>
INTO SubtypeCode, SubtypeDesc
Order SubtypeDesc
Therefore, in some cases you will see that navigation changes the attributes in the "INTO" or "ORDER" clause:
FILL SubCityCode with CityCode, CityName in =GNTPAI(PaiCod)
INTO SubCityCode, SubCityName
Order SubCityName
And in other casues where the supertype attribute was mentioned in the Fill clause, now it shows the subtype, to be consistent.
This change applies as from X Evolution 1 Upgrade 4. See SAC 29670 for more details.
|
|
Yes |
|
New message warning indicating that a redundant formula is not going to be automatically updated in some cases:
Attribute %1 which is redundant in table %2 will not be updated.
|
Lookup the spc0172 on Specification Codes from spc0150 onwards for more details.
The message could appears as from X Evolution 1 Upgrade 5.
|
|
Yes |
|
The Order clause of For Eachs changes when exist condicions with Enum or SDT values. |
See SAC 30329
The fix applies as from X Evolution 1 Upgrade 6.
|
|
Yes |
Yes |
New optimization: Server Paging |
See Server Paging |
|
|
Yes |
The Order clause of Grids and Data Providers now includes an 'Othewise' if it has not been explicity specified by the user. |
This clause is needed in order to apply server paging optimization.
See SAC 30923
|
|
|
Yes |
Rule ControlName.Enabled = 0 is automatically added when using the Readonly property in a Control. |
See SAC 30362
The fix applies as from X Evolution 1 Upgrade 6.
|
|
Yes |
Yes |
The navigation of some horizontal formulas no longer appears in the navigation list. |
See SAC 30725
This change applies as from X Evolution 1 Upgrade 7.
|
|
Yes |
Yes |
For horizontal formulas that are conditionals (if) but does not include a default value (otherwise clause), the specifier will add this clause automatically |
See SAC 30922
This change applies as from X Evolution 1 Upgrade 7.
|
|
Yes |
Yes |
Joins involving inferred foreign keys stored as redundants, now are generated as outer join |
See SAC 31068
This change applies as from X Evolution 1 Upgrade 7.
|
|
Yes |
Yes |
Navigation of Find formula adds an "Allowing null" on the READ statement, in order to get the "default value" when there are no records that satisfy the formula navigation. |
See SAC 31213
This change applies as from X Evolution 1 Upgrade 8.
|
|
Yes |
Yes |
Detail Navigation of Aggregate formulas add a Where Clause Att = @Att, being Att the implicit condition (is already appears as 'Given' attribute. |
This is an optimization that applies only for Mysql DBMS. See SAC 31172
Let's see an example to know where the difference appears:
Suppose we have a two level Transaction with this formula on the first level:
AttFirstLevel = sum(AttSecondLevel)
The navigation (detailed) will be as follows:
Navigation to evaluate: AttFirstLevel
Formula: SUM ( AttSecondLevel)
Where: AttFirstLevelPK = @AttFirstLevelPK
Given: AttFirstLevelPK
Group by: AttFirstLevelPK
It was included the "AttFirstLevelPK = @AttFirstLevelPK" condition.
This change applies as from X Evolution 1 Upgrade 8.
|
|
Yes |
Yes |
Selection promtps show registers that have nullable attributes.
|
See SAC 31229 for more information.
This change applies as from X Evolution 2.
Let's see an the differences between Evolution 1 and Evolution 2:
In Ev2 the conditions of the prompt were changed to (for example):
TestId LIKE &cTestId;
TestName LIKE &cTestName when not &cTestName.IsEmpty();
TestDate >= &cTestDate when not &cTestDate.IsEmpty();
TestNumber >= &cTestNumber when not &cTestNumber.IsEmpty();
TestComments LIKE &cTestComments when not &cTestComments.IsEmpty();
TestIdST LIKE &cTestIdST when not &cTestIdST.IsEmpty();
In Ev1 the conditions of the prompt were:
TestId LIKE &cTestId;
TestName LIKE &cTestName;
TestDate >= &cTestDate;
TestNumber >= &cTestNumber;
TestComments LIKE &cTestComments;
TestIdST LIKE &cTestIdST;
|
|
|
Yes |
Conditions were added by attributes mentioned in a call rule inside the Start Event. |
See SAC 22824
This change applies as from X Evolution 2.
|
|
|
Yes |
This message does not longer appears as for GeneXus X ev2, when the rule's input variable is in the form as editable field:
"spc0158: Rule <rule> not included."
|
See SAC 31439
This change applies as from X Evolution 2.
|
|
|
Yes |
When an object receives input attributes as a parameter (or input-output), filters conditions could be applied to some groups (For Each, Grids, etc) (See Parm rulefor more details).
The above rule is not being considered in some situations and therefor some changes were introduced in GeneXus X Evolution 2 to fix it.
|
See Group Navigations that receive attributes as parameters
This change applies as from X Evolution 2.
|
|
|
Yes |
New specification control spc0187 when the result of applying a method is not assigned. |
See SAC 31770
This change applies as from X Evolution 1 Upgrade 8.
|
|
Yes |
Yes |
New specification control spc0188 when the result of applying a rule has no effect. |
See SAC 32081
The case is displayed as a warning message, it applies since X Evolution 2 Upgrade 1.
See SAC 31638
The case is displayed as an error message, it applies since X Evolution 2 Upgrade 2.
|
|
|
Yes |
Conditions with UDP functions are shown in Navigation Filters insteads as Constraints. |
This is an optimization that applies to conditions that refere Udp functions without attributes as parameters.
See SAC 32024 for more details.
This optimization applies as from X Evolution 2 Upgrade 1.
|
|
|
Yes |
A case where Join was performaned in the server when it must be performed in the client, so now the navigation changes its "Join Location". |
See Join Type and Join Location Specification and SAC 32212 for more details.
This change applies as from X Evolution 1 Upgrade 8.
|
|
Yes |
Yes |
spc0017 (Expression %1 does not return a value) specification control is shown as error, when the caller object expects a result and the called objects does not include the parm rule or an output parameter. |
For instance, the error will appears for these rules when ProcObject and WebPanelObject does not return a value:
&value = ProcObject()
WebComp.Object = WebPanelObject()
Att = ProcObject.Udp()
See SAC 33892 for more details.
This control applies as from X Evolution 2 Upgrade 3.
|
|
|
Yes |
Improvements determining the order of call rules |
See SAC 35507 for more details |
|
|
Yes |