Skip to content

DataFlex 2024 Release Candidate Release Notes

This page lists the specific changes in DataFlex 2024 between the Release Candidate and Beta 2.

See What's New in DataFlex 2024 for all new features in DataFlex 2024.

See DataFlex 2024 Beta 2 Changes for the specific list of changes in DataFlex 2024 between Beta 2 and Beta 1.

Date Changes in DataFlex 2024

While working with the SQL Executor, some developers encountered issues when the database contains 01-01-01 dates, also known as zero dates. The DataFlex Connectivity Kit (depending on its configuration) writes these dates to represent empty dates from the backend in DataFlex. One of the problems was that these dates sometimes got converted into 01-01-2001. Note that this was not caused by cSQLExecutor, but happens later when using the value (or displaying it in the debugger). This is caused by the DF_DATE_4_STATE implementation in the runtime in combination with DF_EPOCH_VALUE - this code adds 2000 (or 1900 depending on the DF_EPOCH_VALUE setting) when converting between dates and strings.

We added a new attribute, DF_DATE_4_STATE_ONLY_ON_PARSE, that fine-tunes this behavior.

If DF_DATE_4_STATE_ONLY_ON_PARSE is set to True, it will just apply the epoch logic when converting from a String to a Date where the year only has 2 digits (so year 01 will be converted to 2001 but year 0001 will remain untouched). If set to False, String to Date conversions will use the DF_DATE_4_STATE / DF_EPOCH_VALUE logic as before.

We also fixed the behavior of DataFlex Windows controls to use the setting of the new DF_DATE_4_STATE_ONLY_ON_PARSE attribute. Previously, dates of 01/01/0001 were converted to 01/0/1/2001 when displayed in controls with a Date or DateTime mask.

For DataFlex 24.0, this new attribute will default to False to prevent compatibility issues. It is intended to be set to True for an entire application.

Depending on test results, we intend to default the attribute to True and have this new behavior turned on for the next DataFlex revision.

Other Improvements

Web Controls

  • Fixed piHeight in flow layout for cWebEdit and other controls.
  • Fixed 'Referenced Array Index Out of Bounds' error on WebSet of struct property on dynamic web object.
  • WebMultiSelectList ClearListSelection did not clear all checkboxes.
  • WebMultiSelectList SelectAll and DeSelectAll didn't work.

WebApp Server

  • WebApps did not start after changing the disabled registry key.
  • Replaced "Visual DataFlex 9" text strings, which displayed in some error messages.

WebApp Administrator

  • Running a web application under a different user account triggered an error.

Packages / JavaScript Engine

  • Entering an invalid date in a FlexTron app resulted in an endless loop of errors.

Studio

  • Web views did not show DDO Explorer content until an object is selected in Code Explorer.

Studio / WebApp Designer

  • Previewer in web wizards triggered an error on Theme.
  • Fixed a typo on the Configure Workspace dialog.

Database Explorer

  • ReadOnly icon in the status bar no longer reflects the current table state.

Compiler

  • DfComp.exe crashed on the second compile.

Examples

  • Anchors are not properly set in the Order Calendar sample.

CSS Themes

  • WebIcon_Print used an incorrect font-icon.

Documentation

  • Added DF_DATE_4_STATE_ONLY_ON_PARSE documentation.
  • Updated Registration program documentation with the latest changes and a screenshot.
  • Added a list of types from variant.pkg that may be returned when using DerefW.
  • USE_DUMMY_ZERO_DATE now makes it clear that the value saved may depend on the backend's data type.
  • Documentation on the center function was incorrect.
  • Fixed cWebImage sample pointing to a non-existent image file.
  • Clarified how the Special Build and Private Build information can be used in the Project Properties - Version page.
  • Fixed Euro Symbol sample in Field_Mask.
  • Added a note that Include_Text expects UTF-8.
  • Improved description of cWebDrawing.peResizeMode.
  • Updated Installation & Environment Guide.