4D V17 R4 Beta starts today

We’re pleased to announce the launch of beta testing for 4D v17 R4! This release is loaded with enhancements and new features that you won’t want to miss!


  • Your processes can be run preemptively on 4D Remote which means taking full advantage of the power of multi-core computers.
  • Exporting your documents in .docx format and a new vertical ruler to manage margins are just a sneak peek of the new 4D Write Pro features.
  • Restricted queries, support of multi-criteria searches, and the possibility to create a custom data formatter are what 4D for iOS has to offer with this R-release.
  • A new way to send emails is at your disposal. Easy and more powerful than the former way using 4D Internet Commands.
  • Your formulas are more readable and easily accessible with 4D View Pro’s automatic completion thanks to named ranges and formulas.
  • And much more (see below).

Download 4D v17 R4 now (Exclusive to 4D Partners) 

 More preemptive options

Preemptive processes on 4D remote

With 4D v17 R4, your processes can be run preemptively on 4D Remote. This means taking advantage of the power of multi-core computers by running an operation on all available cores, in parallel, which leads to getting results much faster. And good news! There’s nothing new to be learned if you’re already using preemptive processes on the server. Everything that’s valid on the server, runs the same on the client.


Beginning with 4D v17 R4, Begin SQLEnd SQL, and the associated SQL statements used with an internal database are now preemptive-compliant. For example, if you use these commands to perform a lot of asynchronous activities in your database, requests can be started in parallel, therefore the application’s speed is increased.


4D v17 R4 includes the new command, New signal.You can use this command to – for example – perform long running calculation in parallel, using all your CPU cores, or another scenario when you need to delegate work to a cooperative process in order to use a non-preemptive command.


4D Write Pro


Convert your documents to Microsoft Word .DOCX Format

Exporting your 4D Write Pro documents to .docx format is now possible with 4D v17 R4. Simply use the new wk docx constant with the existing WP EXPORT DOCUMENT command.

new vertical ruler

Say hello to the new 4D Write Pro vertical ruler. In page mode, the ruler can be displayed on the left side of the document. This lets you graphically manage the vertical margins, as well as easily modify the spaces between headers or footers and the body of your document. A new Show vertical ruler property is available from the Property List to enable the ruler.


With 4D v17 R4, you can get coordinates in a 4D Write Pro document. The WP Get position command returns an object describing the current position of either a range, an element reference, or a 4D Write Pro document. Now, it also returns two new attributes: bounds and rangeHeightThis new feature will allow you to easily set up complex page designs.


Since creating user-friendly interfaces is a high priority for every application developer, 4D v17 R4 enhances the user experience by supporting virtual structure definitions of the database for table and field expressions in 4D Write Pro documents. This enables easier translating and readability in standard dialogs (query, sort, and formula editors) and filtering out any tables or fields that shouldn’t be viewed by end users. 


4D for iOS – Preview


We know you’ve been waiting for this feature… well, the wait is over! With 4D v17 R4, multi-criteria search is now available in 4D for iOS. You’re now able to run search operations based on multiple fields and display filtered content in your generated 4D for iOS app.


4D for iOS is getting more feature-rich with every R-release. 4D v17 R4 introduces a new concept: restricted queries. They allow you to filter data to be displayed in your mobile app without being limited to just tables and fields., Now you have control over which records are being sent. 


4D for iOS already provides various data formatters for dates, percentages, time, etc. With 4D v17 R4, you can easily create your own data formatters and use them directly from the Project Editor. The data formatter creation process is quite simple and allows you to spice up your apps by using JSON files.



 4D language

Send email

4D v17 R4 introduces a new way to send emails. Easy and more powerful than the former way with 4D Internet Commands. Sending eye-catching emails based on HTML, with images, videos, and attachments, can be done with just a few lines of code. Code that is easy to write and understand. New commands are at your disposal to create and send emails. They provide a lot of power hidden beneath a veneer of simplicity. For example, you can easily test the transporter settings (user credentials, server data), or specify enclosures as attachments or inline (displayed in HTML within the message), to name a few. This is the first of several features in the pipeline, more functionality to handle emails will be provided with the coming R-releases.

new server administration commands

4D continues to deliver features to help you create your own applications to monitor your servers. With 4D v17 R4, new commands are available: 

  • SEND MESSAGE TO REMOTE USER to send a message from the server to a remote user. 
  • Get process activity to retrieve a list of user sessions. 
  • DROP REMOTE USER to end a user session. 
  • ABORT PROCESS BY ID to stop a specific process by using its unique process number.
  • Get process activity or Process properties to retrieve the unique process number.
  • REJECT NEW REMOTE CONNECTION to block new remote connections. 
  • Get application info to tell if the connections have been accepted or refused.  
  • SOAP REJECT REQUESTS to block SOAP requests. 
  • WEB Get server info to know if connections have been accepted or refused.  
  • Refresh license to update a license.


4D View Pro


With 4D v17 R4, you can create ranges with code. New commands are available so you can define a range object to manipulate your cells by programming: VP CellVP CellsVP ColumnVP RowVP All and VP Combine ranges. A range object can define a cell or a group of cells, a column or a group of columns, a row or a group of rows, or all the cells of a sheet.


A cool new feature is available with 4D v17 R4: named ranges and formulas. They can be very useful if you need to use formulas with references to cell(s) or constant(s).

Two types of names can be created by programming. The first refers to a range of cells. It lets you apply a readable name to the cells you’re interested in using the VP ADD RANGE NAME command. The second refers to replacing calculations with readable names in your spreadsheets using the VP ADD FORMULA NAME command. It also lets you create a constant and make the calculations in your spreadsheet easier.


With 4D v17 R4, you can fill your documents by programming and set and get data as labels, database fields, or formulas in your documents. You can also retrieve cell formulas or values entered by your end users. For this, 4D provides you the commands: VP SET VALUE, VP SET BOOLEAN VALUE, VP SET DATE TIME VALUE, VP SET DATE VALUE, VP SET TIME VALUE, VP SET NUM VALUE, VP SET TEXT VALUE, VP SET FORMULA, VP SET FIELD, VP Get value, VP Get formula



Need more technical details? Take a look at the 4D v17 R4 Beta documentation in the 4D Doc Center.

Your feedback is greatly appreciated and will help us improve our product quality and better serve your needs. We’d love to hear your thoughts about any of the features above. Contribute to our “beta version” forum (accessible for all 4D Partners).

Not a partner yet? Become a 4D Partner and join the conversation!

• Product Marketing Manager • Intissar joined 4D in 2017 as a Product Marketing Manager. She works closely with the product, marketing, engineering, and technical support teams to highlight the ‘why’, the ‘how’, and the ‘what’ of new and updated features to different audiences. This close proximity allows her to craft messaging frameworks and write in-depth content and code samples for the 4D blog and website. After graduating with an engineer's degree in Computer Science from VINCI university, Intissar worked in several startups as a software engineer. Her hands-on experience includes software specification, design, and development, user training and support, and team management.