DataFlex 2025 Beta 1 Changes
This page lists the specific changes in DataFlex 2025 between Alpha 1 and Beta 1.
See What's New in DataFlex 2025 for all new features in DataFlex 2025.
New Features
Regular Expressions Class
The new cRegEx class is a runtime addition that provides the ability to use regular expressions in DataFlex programs without third-party dependencies and libraries. The new class is based on PCRE2 (Perl Compatible Regular Expressions), which is one of the most popular and compatible RegEx standards. Developers can use this class for both convenience and improving the performance of their applications. Finding, matching, substituting, and extracting can all be accomplished in a single class!
Automatic Primary Key Columns
When creating a new table in the Studio, it can now automatically add an auto-increment column. For this, the Create New Table dialog has been extended with a checkbox. When checked, the new table will automatically receive an Id column and a unique index based on this column. When using SQL, this index will be marked as the primary key, and the column will be marked as an identity column.
When using the embedded database, it will look for a system table named DFLastId and add an auto-increment column to it. New workspaces will have this DFLastId table, providing the smoothest experience for new developers.
Read more in Automatic Primary Key Columns.
Web Themes are Now Configurable Using CSS Variables
The web themes have been adjusted to use CSS variables for their main colors and some dimensions. This allows configuration of the themes without changing them, which means less trouble during updates! The main variable names are shared between the themes, but most themes extend these with extra variables.
The full list of variables can be found at the top of the Theme.css file. Initially, themes will support the same configuration options that were already provided by the DataFlex Styler. These variables can be changed outside of the Theme.css file. It is recommended to place these inside CssStyle/Application.css.
Placing the following code in CssStyle/Application.css changes the main colors for the Df_Material theme.
:root {
--df-MainDark: #567d2e;
--df-MainRegular: #7CB342;
--df-MainMedium: #89ba54;
--df-MainLight: #a3c97a;
--df-MainLight2: #cae0b3;
--df-MainLight3: #e4efd9;
--df-MainLight4: #f1f7ec;
}
Compiler
- Optimizations for the compiler (gaining ~10% compile speed).
- Fixed linker issue with linking files that have non-ASCII characters in their file name.
Connectivity
- Fixed memory leak in
SaveRecordfor MS SQL. SQLBindFilegenerated an error for DateTime columns.
Packages
- Fixed message displayed for client/server version check.
Runtime
- Fixed sizing issue with a
dbViewbeing maximized and then reopened. - Changed
Modfunction return type back toLongPtrto fix expression typing issues.
Web Controls
- Fixed rendering issue with
cWebTabContainerwhen navigating back. - Labels of
cWebListgrouping selector are now translated. ActionMode scModeWaitwas not blocking when insidecWebModalDialog.- Fixed sizing issue with lazy rendering of tabs in
cWebTabContainer. - Fixed
cWebDrawinglocalization issues with floats. - Improved
df.defineClasscompatibility for non-ES6 custom controls.
Studio
- Restricted calls to reconciling/rebuilding libraries to processes that update
classlist.xml. This should help load workspaces faster. - Fixed resizing Codejock grid columns in the Visual Designer.
- The Studio no longer adds a BOM to non-DataFlex source files.
- Web Designer did not get the focus when switching back from Table Explorer.
- Studio no longer saves an extra space to the end of
64BitSuffixif that setting is blank. - Moving a Web Control horizontally within the flow layout with
piColumnIndexnot set will place it one column to the left.
WebApp Administrator
- Fixed Web Application Administrator becoming really small.
Installer
- Solved case sensitivity issue with the path to
WorkstationSetup.exe.
Documentation
- Moved 'New Embedded SQL API' page from What's New in DataFlex 2023 to the Developing Database Applications book as Embedded SQL API.