Genero 2.11 Maintenance Release

Irving, Texas – January 30, 2009 — Four Js Development Tools announced today the general availability of its latest maintenance release Genero 2.11. This maintenance release is available on the web site https://www.4js.com/ .

It includes the following packages :

  • Genero BDL 2.11.10 (FGL)
  • Genero BDL 2.11.10 including Web Services (FGLGWS)
  • Genero Application Server 2.11.16

Genero BDL 2.11.10

The following features have been implemented in this release:

  • New database drivers:
    • MySQL 5.1.x (mys51x)
  • New decimal computing functions:
    • fgl_decimal_truncate(x,n)    — truncate x to n decimals
    • fgl_decimal_sqrt(x)              — square root of x
    • fgl_decimal_exp(x)              — e exponent of x
    • fgl_decimal_logn(x)             — natural logarithm of x
    • fgl_decimal_power(b,e)      — b raised to e (can be real)
  • New FGLPROFILE entry to authenticate users connecting  with the DATABASE instruction:

    To simplify migration to non-Informix databases in applications using the DATABASE instruction, you can now use the following FGLPROFILE entry to provide a username and password, as with the CONNECT TO instruction. This entry specifies an FGL callback function to be called when the DATABASE instruction is executed.

    dbi.default.userauth.callback = “function-name”

    The callback function must be linked to the 42r program and have the following signature:

    CALL function(dbspec STRING)
    RETURNING STRING (username), STRING (password)

    The value of dbspec is typically used to identify the database source. The fgl_getResource() function is used to read the username and encrypted password from an FGLPROFILE entry. Next decrypt the password with the algorithm of your choice and return the username and decrypted password.

    Example:
    FUNCTION getUserAuth(dbspec)
    DEFINE dbspec STRING — DATABASE dbspec
    DEFINE un, ep STRING
    LET un = fgl_getResource(“dbi.database.”||dbspec||”.username”)
    LET ep = fgl_getResource(“dbi.database.”||dbspec||”.encrypted_pswd”)
    RETURN un, my_decrypt_function(ep)
    END FUNCTION

The following bugs have been fixed in this release:

  • 10262 : Focus set to disabled action in menu when using DIALOG.setActionActive()
  • 10430 : FGL_USENDIALOG: NEXT FIELD NEXT in BEFORE INPUT raises fatal error
  • 11061 : FIELD_TOUCHED(screen_record.*) shouldn’t produce an error if some fields are not used in this INPUT/CONSTRUCT
  • 11539 : ndialog: sort column and type may be not initialized
  • 11554 : Invalid value in second parameter when passing DECIMAL with 32 digits
  • 11558 : Assigning a very large decimal string gives a different value than Informix
  • 11560 : scrollGrid node attribute active is not reset to zero when leaving DIALOG
  • 11561 : DIALOG using CheckBox/INTEGER asserts when front-end sends “null” instead of empty string
  • 11576 : Optimize fgldbsch when no rows in Informix syssyntable table
  • 11590 : Assertion when focus in button and NEXT FIELD to field of other sub-dialog
  • 11593 : Segmentation fault extracting a substring with special characters in UTF8
  • 11637 : Internal function vm_lookupVariable() must load module on demand
  • 11655 : fgldbsch ignores NOT NULL columns when using SQL Server 2000
  • 11657 : Invalid char when reading UTF-8 string with Channels into small VARCHAR
  • 11664 : Default view of ON ACTION close should be hidden when used in MENU
  • 11684 : Error -1147 in fglreport.4gl when XML report TO SCREEN and FGLGUI=1
  • 11685 : In report, OUTPUT REPORT TO SCREEN gives compiler error -4369
  • 11691 : Table node gridHeight is wrong when defining cells on several lines
  • 11692 : Table node pageSize is wrong when defining cells on several lines
  • 11710 : FGL_USENDIALOG: DIALOG.setFieldActive(“formonly.fieldname”) is ignored when screen array
  • 11718 : fglrun crash when calling os.Path.diropen(“/dev”) when sorting by file type
  • 11728 : On Windows, the DVM does not exit when CLOSE APPLICATION event is received
  • 11729 : ndialog: In console mode with ON FILL BUFFER, on last row error message is displayed
  • 11737 : ndialog: Client ConfigureEvent for Table offset attribute not properly handled in DISPLAY ARRAY
  • 11751 : Combination of range operators not taken into account by CONSTRUCT
  • 11755 : Genero db 3.80 (dbmads380) driver must convert double quoted strings
  • 11797 : ON CHANGE fired when leaving COMBOBOX if value changed by program
  • 11807 : fglform should not create vbox around TextEdit inside a ScrollGrid
  • 11808 : DIALOG.setCurrentRow() can go after last row with ON FILL BUFFER

Genero Web Services 2.11.10

The following bugs have been fixed in this release:

  • 11633 : Call to fgl_ws_server_publishfunction gives a crash

Genero Application Server 2.11.16

The following bugs and enhancements have been fixed in this release:

  • 9468 : On idle is invoked only once
  • 10194 : Problems on selecting radiogroup on Opera
  • 10479 : fglxmlp didn’t work as expected
  • 10631 : Menu style attributes “popup”, “winmsg” are not supported in GWC
  • 10683 : Up and down arrow keys do not act on current table but on previous widget
  • 10821 : Need better Kerberos errors logging on Windows
  • 10955 : GASD crash when trying to display a collection of objects plus a string in a gwc:content instruction
  • 11428 : UPSHIFT does not store upshifted values in an INPUT ARRAY
  • 11459 : Default attributes not added in the Configuration
  • 11463 : Startmenu default position
  • 11467 : GAS engine crashes when a TopMenuCommand is removed from the AUI tree without removing the whole TopMenu
  • 11468 : GAS can crash when rendering a page after partial DVM update related to 4GL UI refresh
  • 11480 : Hidden toolbar items are displayed
  • 11481 : GASD crashes when trying to upload a file
  • 11512 : Invalid session Id should respond with 404 error and ‘Connection: close’ header
  • 11514 : Wrong SBRE repeat instruction index value
  • 11517 : GAS can crash when application is killed during a POST request on a child DVM
  • 11540 : New pseudo category ALL for the logs
  • 11553 : GAS engine may crash when the tablePageHeightThreshold style attribute is used
  • 11555 : GAS hangs when an unnamed session data is received
  • 11559 : Styles are not reapplied if Style element is dynamically removed from the AUI tree
  • 11614 : GAS error: “ERROR_NOT_ENOUGH_QUOTA” when using Kerberos authentication
  • 11628 : ISAPI & CGI connectors crash when IP address in connector.xcf is not valid
  • 11644 : GAS error: “Operating system error (2): The system cannot find the file specified” when using Kerberos authentication
  • 11689 : Table style attribute not removed from cache if the table is not visible
  • 11697 : In Internet Explorer, ico format image isn’t displayed
  • 11698 : Only characters in uppercase are trapped by an ON KEY statement with a one letter key
  • 11738 : GAS error: “There is already a pending request” with GDC when the TCP client connection is prematurely closed
  • 11747 : Action with an accelerator name should be fired whether the key pressed is in lowercase or uppercase
  • 11856 : Gas can crash if /wa/gblob URL is accessed after that the corresponding DVM is stopped
  • 11865 : CGI/ISAPI connectors don’t filter ‘WWW-Authenticate’ header
  • 11875 : Gasd may crash when the UA prematurely closes the connection when downloading a static file

Best regards,

Four Js Development Tools