Upgrade Guides for Genero BDL / 2.20 upgrade guide |
Program variable identification in static SQL statements is more strict in version 2.20 than older versions.
If you define a variable with the same name as a SQL object (i.e. table name, table alias), the fglcomp compiler will raise an error because it will consider the program variable first. For example, if the variable name matches the table or alias identifier, using table.column in the SQL statement will be resolved as variable.member, which does not exist.
MAIN DEFINE c INTEGER DATABASE stores SELECT COUNT(*) INTO cFROM customer c WHERE c.fnameIS NULL END MAIN
The code also fails to compile with IBM® Informix® 4gl 7.32, but it did compile with version of Genero Business Development Language.
MAIN DEFINE c INTEGER DATABASE stores SELECT COUNT(*) INTO cFROM customer c WHERE @c.fnameIS NULL END MAIN
Recompile all your programs to find the conflicts.