BDL 2.20 new features
Features added in 2.20 releases of the Genero Business Development Language.
This version of Genero BDL is desupported, use a more recent version of the product.
Corresponding upgrade guide: BDL 2.20 upgrade guide.
Overview | Reference |
---|---|
The Java Interface allows your programs to use the Java library. | See Java Interface. |
New TINYINT, BIGINT and BOOLEAN data types. | See TINYINT, BIGINT, BOOLEAN. |
Private functions: It is now possible to hide a function (or report) to the other modules with the new PRIVATE keyword. | See Understanding functions. |
Automatic source documentation generator. | See Source documentation. |
The fglcomp compiler has been extended with a new option
(--timestamp ) to write the compilation timestamp to the
generated 42m p-code module. If present, the timestamp will be printed
when using fglrun -b . Use compilation timestamps only
if really needed; every new compiled .42m module will be different, even
if the source code has not changed. |
See fglcomp. |
The FGLRESOURCEPATH environment variable to define search paths for program resource files like forms. | See FGLRESOURCEPATH. |
New precision math built-in functions for DECIMAL data. | See fgl_decimal_truncate(), fgl_decimal_sqrt(), fgl_decimal_exp(), fgl_decimal_logn(), fgl_decimal_power(). |
Automatic Code Completion with VIM: If you have Vim 7 installed, you can now use .per and .4gl code completion. | See Source code edition. |
Overview | Reference |
---|---|
The START REPORT instruction now allows to specify the XML SAX Document Handler to process XML output with the TO XML HANDLER clause. | See TO XML HANDLER syntax. |
Report definition file generation with fglcomp --build-rdd option. | See See fglcomp. |
Overview | Reference |
---|---|
Support for typical Tree-View widgets with the new TREE container. | See Tree views. |
The traditional user interface mode: To simplify migration from Informix® 4GL or Four Js BDS, you can now run applications in traditional mode to render windows as simple boxes, as in the WTK front-end. | See Graphical mode with Traditional Display. |
Phantom form fields can be used to define the screen-record or screen-array, but are not used in the LAYOUT section of the form. Phantom fields are especially useful when implementing a TREE container. | See Phantom fields. |
Multi-row selection allows end users to highlight several rows in a list of records. | See Syntax of DISPLAY ARRAY instruction. |
Built-in sort works now in INPUT ARRAY. | See List ordering. |
New contextMenu action default
attribute to allow you to specify whether the menu option is visible in
the default context menu. The default value is "yes" - the option is
visible whenever the action is visible. |
See Action defaults files. |
New integratedSearch presentation
style attribute for TEXTEDIT fields to enable text search. |
See TextEdit style attributes. |
FOLDER elements can now use a
"position " style attribute to define the position (top,
left, right, bottom) of folder tabs. |
See Folder style attributes. |
BUTTON form items get a new
"buttonType " attribute to define the rendering of the
button. |
See Button style attributes. |
MENU object created with the popup option can be
placed with the "position " style attribute. |
See Menu style attributes. |
Window Menu and Action panel decoration can be
customized using the new "ringMenuDecoration ",
"actionPanelDecoration " style attributes. |
See Window style attributes: Ring Menu, Window style attributes: Action Panel. |
The new "tabbedContainer ",
"tabbedContainerCloseMethod " style attributes can be
used to turn on and customize tabbed WCI containers. |
See Window style attributes: Basics. |
TABLE elements can use the new
"tableType " attribute to render data in different ways.
The new "resizeFillsEmptySpace " attribute can be used
to define how the last column is resized when the table is resized. |
See Table style attributes. |
All items with an IMAGE attribute can use the new
"imageCache " attribute to define if the picture can be
cached locally on the front-end. |
Starting with GDC 3.20, this style attribute has been desupported. See Presentation style changes in BDL 3.20. |
New Front-End Functions
"getWindowId ", "feInfo ",
"launchURL ". |
See Standard front calls. |
Front-End protocol compression can now be disabled with a new FGLPROFILE entry. This is especially useful in fast networks to save processor time. | See GUI protocol compression. |
New built-in functions are now available to control the part of the text that is selected in the current field. | See fgl_dialog_getselectionend(), fgl_dialog_setselection(). |
New IMAGE attribute in form LAYOUT element: The LAYOUT section of a form definition can now use the IMAGE attribute to define the icon to be used for the parent Window. This is especially useful in a Container-based application, to distinguish child programs inside the WCI container. | See LAYOUT section. |
Use the new INFIELD clause in ON ACTION interactive block to automatically enable/disable the action when entering/leaving the specified field. | See Field-specific actions (INFIELD clause). |
Getting the current active dialog with ui.Dialog.getCurrent(). | See ui.Dialog.getCurrent. |
Overview | Reference |
---|---|
New database drivers. | List of new database drivers:
|
MySQL Driver supports TEXT/BYTE data types. | See Oracle MySQL / MariaDB. |
To work around conflicts with the Informix database path specification in DBPATH, use the FGLRESOURCEPATH environment variable. | See FGLRESOURCEPATH. |
Database user authentication callback function can be used to specify a database user and password when the DATABASE instruction cannot be replaced by CONNECT TO. | See User authentication callback function. |
FGLSQLDEBUG output is improved to display and SQL command header with SQL command name and source/line information before executing the underlying ODI driver code. If the driver code crashes or stops the process with an assertion, you can easily identify the last SQL instruction that was executed. | See FGLSQLDEBUG. |
Overview | Reference |
---|---|
The Genero Web Services XML Library has been
improved to support the XML-Signature and XML-Encryption specifications
defined by the W3C (also known as XML-Security). The library enables BDL applications to handle public, private, symmetric or hmac keys and X509 certificates in order to sign XML documents or document fragments, and verify a XML signature against a certificate or key. It also enables the applications to encrypt XML nodes using symmetric keys, and decrypt them back using DOM manipulation. Combined with the COM library, any BDL application can now exchange any XML documents over the Internet in a completely secured manner. The
library provides classes for:
|
See XML security classes. |
The Genero Web Services XML library provides APIs to encrypt and decrypt strings with symmetric or RSA public/private keys. These APIs can be used to encrypt/decrypt passwords directly in BDL applications. | See The Encryption class and fglpass. |
The Genero Web Services provides support for the new BOOLEAN ,
TINYINT and BIGINT data types.You
can use these data types when writing your web service or to customize
your BDL RECORDs for XML serialization. The Note: For
compatibility issues, the fglwsdl tool allows code
generation without these new data types by using the option
'-legacyTypes '. |
See Attributes to customize XML serialization and fglwsdl. |