Skip to main content

Download DataFlex Studio

Downloads DataFlex DataFlex studio
Back to overview

Description

Creating applications with DataFlex

To create applications with the DataFlex programming language you need to install the DataFlex Studio product. Run the installer after downloading this product and select options you want to use, install. After the installation finishes you get the option to start the Studio product.

Learn from examples

The installer lets you choose whether you want to install the example applications or not. When you are new to the product go for that as you can learn how to develop applications by running and studying the examples. There are Windows and Web examples. You can also take a look at the Plato SQL based example that can be downloaded here.

What’s new in DataFlex 2022/20.1

Go to the What’s new in DataFlex page to see what’s new!

Features

  • Visual user interface designer
  • Let the wizard do it!
  • A customizeable Studio - Make it yours
  • Dashboard for full project control
  • Powerful Debugger
  • Responsive mobile web applications
  • Boost productivity with Start Center

 

Screenshots

Studio Start Center
Studio WebApp Loaded Dark Theme
WebOrder Mobile Dashboard
WebOrder Mobile Login
WebOrder Mobile Select Order or Customer
Publisher: Data Access Worldwide Version: 20.1 Publication: 20/07/2022 File size: 224 MB

Support

Supported versions

  • DataFlex 2022 / 20.1
  • DataFlex 2021 / 20.0
  • DataFlex 2019 / 19.1

Supported operating systems 

  • DataFlex 2022 / 20.1 is supported at
    • Microsoft Windows 10
    • Microsoft Windows 11
    • Microsoft Windows Server 2019
    • Microsoft Windows Server 2016
  • DataFlex 2021 / 20.0 is supported at
    • Microsoft Windows 10
    • Microsoft Windows Server 2019
    • Microsoft Windows Server 2016
  • DataFlex 2019 / 19.1 is supported at
    • Microsoft Windows 10
    • Microsoft Windows Server 2019
    • Microsoft Windows Server 2016

For support go to

 

Prior versions

Download prior DataFlex versions

Changes in DataFlex 2021/20.0

Unicode and 64-bit
Web Framework
  • Dynamic Web Objects
  • cWebTagsForm
  • cWebGeoLocation
  • Security
More
  • Connectivity
  • WebApp Server
  • Studio Dark Theme

Go to the What’s new in DataFlex page, and scroll down to DataFlex 2021/20.0, for a complete overview.

Changes in DataFlex 2019/19.1

Web
  • HTTP Request Handler
  • Meaningful URL’s and History Management
  • Expandable Lists
  • Horizontal Scrolling
  • Material Design Theme
  • Basic Web Applications
  • Connectivity
Windows
  • Enhanced DPI Awareness
  • Improved and Configurable Form Heights
More
  • Installer
  • Embedded Manifest Files
  • Code Cleanup
  • DataFlex Reports Examples

Go to the What’s New in DataFlex page, and scroll down to DataFlex 2019/19.0, for a complete overview.

 

Security Patch: Cross-Session Contamination

The Issue

Under certain circumstances web property values from one session could leak into another session. This bug does not affect the usability of applications and regular users would not see these values. Hackers can potentially exploit the behavior making it a security risk that needs to be addressed. This issue affects DataFlex 19.0 and higher.

The Fix

To fix this issue we have created updated versions of several source packages of the web framework. For all affected revisions, these files will be made available in a zip file so that developers can manually update their installations. Updated installers will be made available for the DataFlex revisions that are still supported. Note that it is recommended to use the updated installer whenever possible.

DataFlex 2022 – 20.1

Fixed packages are available in the zip file. These have been tested on the latest release build of 20.1.31.70.

A new installer (20.1.33.77) is available which also contains several other stability improvements. We strongly encourage all developers to use the latest installer.

DataFlex 2021 – 20.0

Fixed packages are available in the zip file. These have been tested on build 20.0.7.156.

A new installer (20.0.7.159) is available.

DataFlex 2019 – 19.1

Fixed packages are available in the zip file. These have been tested on build 19.1.58.159.

A new installer (19.1.58.167) is available.

DataFlex 2017 – 19.0

Fixed packages are available in the zip file. These have been tested on build 19.0.33.4 with WebApp Framework build 19.0.8.55 (in 19.0 this had its own build number).

No new installer will be made available.

Applying the Fix Using the Installer

  • Uninstall DataFlex Studio
  • Install the updated DataFlex Studio
  • Recompile your web applications
  • Deploy the updated web applications
    • It is recommended to also update the Web Application Server (although not mandatory for 20.0 and 19.1)

Applying the Fix Manually

  • Unzip the zip file
  • Copy the files for your revision to the Pkg folder of your DataFlex installation
    • Note that cWebApp.pkg contains a version number that needs to match your JavaScript Engine. The supplied package contains the build numbers mentioned above.
  • Recompile your system packages
    • Run the studio
      • Note that depending on your installation location you might need to run the studio as administrator
    • Open a workspace
    • Project > Precompile > Precompile system packages
  • Recompile your web applications
  • Deploy the updated web applications

Note that the packages will only work with the stated base revisions, which are the latest released builds for each revision. If you are currently using a build earlier than the stated base revision and attempt to apply the fix manually, you will see the following:

  • When you open a workspace in the Studio, the JavaScript Engine Version Mismatch error will be displayed
  • The system packages will not recompile without errors

To address these issues, you must update. Therefore, we recommend that developers use the newly published installers to apply the fix.

Critical Information

You must have a modern browser (Microsoft Internet Explorer 11, Edge, Chrome, FireFox, etc.) and the Microsoft Internet Information Services (IIS) installed on your machine to enable all the capabilities of DataFlex 2017.

This is an updated release of DataFlex 2017 - 19.0. The original release was revision 19.0.30.8 (released in August 2017).

If you already have an earlier release of DataFlex 2017 - 19.0 installed you must uninstall build 19.0.30.8 and then install build 19.0.33.4. 

Recently, two issues were brought to our attention that we have addressed with in-line updates to DataFlex 18.x. Other than the information below, there are no changes to these releases.

1. Windows 10 Creators Update Bug

As part of the Windows 10 Creators Update, Microsoft introduced an operating system bug that halts program execution when using the GetWindowLong function to retrieve information from a window that is not processing its message queue. This bug is not DataFlex specific, it was reported to Microsoft using test programs written in C.

Microsoft has acknowledged this bug and has stated their intention to address it in a future Windows 10 update. To respond to this issue in the shortest possible time for the benefit of our developers, we have created a work around in DataFlex for this operating system bug. We eliminated the use of the GetWindowLong call during initialization as it was a legacy technique to look for other DataFlex instances that is no longer used. This workaround is implemented in the DataFlex Virtual Machine (runtime) component (vdfvm18.dll).

2. Web Services Updates

DataFlex developer Raphael Theiler identified the potential for External XML Entity Injections (XXE) and exponential entity expansions to be exploited in DataFlex Web Services. We confirmed his findings and have addressed both vulnerabilities in an update to our Web Services engine.

During the same time period, we discovered that sending HTTP POST requests without a body to a JSON web service could cause a crash and have hardened Web Application Server against that scenario. There are three changes in the update to the DataFlex Web Application Server Web Service Endpoint (waswsvc.dll) to address these issues.

  • Fix for XXE vulnerability of web services parser
  • Fix for exponential entity expansion vulnerability of web services parser
  • Fixed a bug where HTTP POST requests without a body to a JSON Web Service would cause a crash

Updates are available now...

The new components have been published for DataFlex 18.2 (original release date of July 2016).

As an alternative, a ZIP file (DataFlex18.2Update.zip) that contains the two changed components that can be applied to existing installations.

Critical Information - This build includes Security Updates for Web Services, a workaround for Microsoft GetWindowLong Bug in the Windows 10 Creators Update and the 6.1.0.32 SQL Drivers• Fix for XXE vulnerability of web services parser.

  • Fix for exponential entity expansion vulnerability of web services parser.

  • Fixed a bug where HTTP POST requests without a body to a JSON Web Service would cause a crash.

  • Workaround for Microsoft bug in Windows 10 Creators Update that causes the progrem to hand when using the GetWindowLong call on a window that is not processing its message queue.

  • Includes the 6.1.0.32 SQL Drivers with the following fixes:

  • Setting the value of a SQL_TIME column, could cause memory overwrite. This was side effect of earlier fix in 6.1.0.30 A masked time value of 00:00:00 would be passed as " : : ", causing a “Time contains an invalid value” error. This will now be handled as time value 00:00:00

    • Setting the DD value of a text column, for example could cause memory error if the value was the same as the value already in the column and an ansi/oem conversion was done.
    • Moving data to a df_ascii/sql_varchar column, where the data was larger than the field length, could cause a memory error.
    • Oracle columns created as type INTEGER returned an incorrect length.
    • On a standard table with an identity column (df_file_identity = true), when inserting or deleting a column BEFORE the identity column, the identity would not be adjusted. This caused identity insert error during restructure.

You must have Microsoft Internet Explorer 8 (or higher) and the Microsoft Internet Information Services (IIS) installed on your machine to enable all the capabilities of DataFlex 2016.

Important Information for Existing DataFlex Users:

  1. DataFlex 2016 - 18.2 uses different DLL component naming and/or a completely separate registry branch from DataFlex 18.1 (and earlier). You may install and use DataFlex 2016 - 18.2 on the same machine as DataFlex 18.1 (and earlier) without interference.

  2. The WebApp Server components of DataFlex 2016 - 18.2 can coexist with previous revisions of the WebApp Server on the same machine without interference.

  3. Some of the changes that you have made in your DataFlex 18.1 development environment (registry settings that control utilities, editor customizations, etc.) will be automatically detected or used by DataFlex 2016 - 18.2. For those that are not imported, you will need to duplicate those changes manually. There are utilities that can assist you in migrating existing workspaces.

 

Recently, two issues were brought to our attention that we have addressed with in-line updates to DataFlex 18.x. Other than the information below, there are no changes to these releases. 

1. Windows 10 Creators Update Bug

As part of the Windows 10 Creators Update, Microsoft introduced an operating system bug that halts program execution when using the GetWindowLong function to retrieve information from a window that is not processing its message queue. This bug is not DataFlex specific, it was reported to Microsoft using test programs written in C.

Microsoft has acknowledged this bug and has stated their intention to address it in a future Windows 10 update. To respond to this issue in the shortest possible time for the benefit of our developers, we have created a work around in DataFlex for this operating system bug. We eliminated the use of the GetWindowLong call during initialization as it was a legacy technique to look for other DataFlex instances that is no longer used. This workaround is implemented in the DataFlex Virtual Machine (runtime) component (vdfvm18.dll).

2. Web Services Updates

DataFlex developer Raphael Theiler identified the potential for External XML Entity Injections (XXE) and exponential entity expansions to be exploited in DataFlex Web Services. We confirmed his findings and have addressed both vulnerabilities in an update to our Web Services engine.

During the same time period, we discovered that sending HTTP POST requests without a body to a JSON web service could cause a crash and have hardened Web Application Server against that scenario.
There are three changes in the update to the DataFlex Web Application Server Web Service Endpoint (waswsvc.dll) to address these issues.

  • Fix for XXE vulnerability of web services parser
  • Fix for exponential entity expansion vulnerability of web services parser
  • Fixed a bug where HTTP POST requests without a body to a JSON Web Service would cause a crash

Updates are available now...

The new components have been published for DataFlex 18.1 (original release date of July 2015) as ZIP file. The ZIP file (DataFlex18.1Update.Zip) contains the two changed components that can be applied to existing installations.

Data Access Worldwide Recommends...

We recommend updating to the latest SQL drivers at the same time. You can obtain the SQL Driver update at: https://www.dataaccess.eu/resources/downloads/download-category/download-subcategory-842?dagapsg=80

Critical Information

You must have Microsoft Internet Explorer 8 (or higher) and the Microsoft Internet Information Services (IIS) installed on your machine to enable all the capabilities of DataFlex 2015.

Important Information for Existing DataFlex Users:

  1. DataFlex 2015 - 18.1 uses different DLL component naming and/or a completely separate registry branch from DataFlex 18.0 (and earlier). You may install and use DataFlex 2015 - 18.1 on the same machine as DataFlex 18.0 (and earlier) without interference.

  2. The WebApp Server components of DataFlex 2015 - 18.1 can coexist with previous revisions of the WebApp Server on the same machine without interference.

  3. Some of the changes that you have made in your DataFlex 18.0 development environment (registry settings that control utilities, editor customizations, etc.) will be automatically detected or used by DataFlex 2015 - 18.1. For those that are not imported, you will need to duplicate those changes manually. There are utilities that can assist you in migrating existing workspaces.

 

Recently, two issues were brought to our attention that we have addressed with in-line updates to DataFlex 18.x. Other than the information below, there are no changes to these releases. 

1. Windows 10 Creators Update Bug

As part of the Windows 10 Creators Update, Microsoft introduced an operating system bug that halts program execution when using the GetWindowLong function to retrieve information from a window that is not processing its message queue. This bug is not DataFlex specific, it was reported to Microsoft using test programs written in C.

Microsoft has acknowledged this bug and has stated their intention to address it in a future Windows 10 update. To respond to this issue in the shortest possible time for the benefit of our developers, we have created a work around in DataFlex for this operating system bug. We eliminated the use of the GetWindowLong call during initialization as it was a legacy technique to look for other DataFlex instances that is no longer used. This workaround is implemented in the DataFlex Virtual Machine (runtime) component (vdfvm18.dll).

2. Web Services Updates

DataFlex developer Raphael Theiler identified the potential for External XML Entity Injections (XXE) and exponential entity expansions to be exploited in DataFlex Web Services. We confirmed his findings and have addressed both vulnerabilities in an update to our Web Services engine.

During the same time period, we discovered that sending HTTP POST requests without a body to a JSON web service could cause a crash and have hardened Web Application Server against that scenario.
There are three changes in the update to the DataFlex Web Application Server Web Service Endpoint (waswsvc.dll) to address these issues.

  • Fix for XXE vulnerability of web services parser
  • Fix for exponential entity expansion vulnerability of web services parser
  • Fixed a bug where HTTP POST requests without a body to a JSON Web Service would cause a crash

Updates are available now...

The new components have been published for DataFlex 18.0 (original release date of August 2014) as ZIP file. The ZIP file (DataFlex18.0Update.Zip) contains the two changed components that can be applied to existing installations.

 

Data Access Worldwide Recommends...

We recommend updating to the latest SQL drivers at the same time. You can obtain the SQL Driver update at: https://www.dataaccess.eu/resources/downloads/download-category/download-subcategory-842?dagapsg=80

 

See older versions

Beta

The DataFlex Pre-Releases are test versions of upcoming versions of DataFlex. Use them to preview the latest capabilities and test the new features on your own programs. Select the desired version on the left to find more details on a specific release.

Pre-releases

Improvements in this build compared to Beta 2

  • Fixed the cLocalWebControlHost which was not responding to ClientActions like DataSetAppendRow (cWebList).
  • Fixed cWebDynamicObjectContainer which was not serializing columns of the cWebList.
  • Fixed the cWebMultiSelectList which was broken by the new grouping feature.
  • Fixed WebApp Framework horizontal sizing issues of controls due to label and grid layout changes.
  • Fixed WebApp Framework container sizing issues and pbScroll improvements.
  • Fixed cWebList phoKeyBuddy issue.
  • Fixed cWebList inside cWebListExpandPanel rowid conflict issue.
  • Fixed the SourceToUtf8 utility crashes and made several improvements
  • Fixed the expression evaluator precedence issue.
  • Fixed error while importing studio preferences.
  • cSQLExecutor now respects RedirectConnectionId changes.

The What’s New in DataFlex 2023 – Beta 2 section of the help details all the latest changes in the pre-release build.

To get started with DataFlex 2023:

 

Along with incremental bug fixes and continued improvements to the Beta 1 release, the Beta 2 build also includes:

  • Collapsible WebList Groups: Groups in WebLists can now be collapsed or expanded.
  • Resizable Columns in Grid Layout: You can now resize columns in grid layout mode in the Studio’s Web Designer.

The What’s New in DataFlex 2023 – Beta 2 section of the help details all the latest changes in the pre-release build.

To get started with DataFlex 2023:

Along with incremental bug fixes and continued improvements to the Alpha 2 release, the Beta 1 build also includes:

WebList Grouping

The cWebList class now supports grouping of data. When enabled, the user can configure the groups via the context menu on the header of the list.

Web Grid Layout

The grid layout is a new layout system now available for web applications. It provides more control over the vertical positioning of your controls. It is based on the CSS grid layout.

Better Studio Icons for High DPI Screens

The icons now contain larger sizes for high DPI screens. This especially shows when running the studio at 200% or higher.

The What’s New in DataFlex 2023 – Beta 1 section of the help details all the latest changes in the pre-release build.

To get started with DataFlex 2023:

Along with incremental bug fixes and continued improvements to the Alpha 1 release, the Alpha 2 build also includes:

CodeSense in SQL Queries:

The Studio will now help write SQL queries by providing CodeSense on your SQL statements when using @SQL strings in the language or when using the Query Tester.

Aligned multiline strings

When embedding foreign code like SQL, JavaScript or HTML into DataFlex code, you can now use a new style of multiline strings that allows better alignment with the rest of your code without adding additional whitespace.

Customizable context menu for WebLists

The context menu available in the header of cWebLists and cWebGrids can now be customized.

Improved Query Tester

Besides being extended with CodeSense, the Query Tester has been updated with the ability to show multiple result sets and can execute partial SQL statements by selecting text before executing.

DataFlex 2023 Alpha 2 includes many other features and improvements. See all in the online documentation.

To get started with DataFlex 2023: 

DataFlex 2023 extends the DataFlex ecosystem by providing exciting new ways to build windows user interfaces and much more natural ways to execute SQL statements.

FlexTron

DataFlex 2023 introduces FlexTron, which brings Web views and controls into Windows applications, allowing a more modern look and feel or just adding Web features to more mature Windows applications. You can use a single Web control or build entire applications. 

New Embedded SQL API 

  • DataFlex 2023 comes with a new way to work directly with SQL statements. A new engine for executing statements is built into the runtime that puts result sets directly into native DataFlex types. This means that your results can now go directly into structs, multidimensional arrays and variants with the proper type conversions being done automatically. Parameterized queries now support named parameters and only a single class / object is needed for executing queries. 
  • Studio support for working with SQL statements is improved by adding syntax highlighting, code sense and a query test tool for SQL statements. 

DataFlex 2023 includes many other features and improvements. Find out more below. 

To get started with DataFlex 2023: 

Legacy

Quotes

FAQ