Since several versions of 4D, different features have been added to create your own build chain. For example,
- the creation of a “.zip” folder,
- the addition of information such as the copyright on an executable or a “dll”,
- the creation of an “info.plist” file,
- and the new build4D component.
With 4D v20, two new features allow finalizing the creation of a standalone or client/server application in 4D code:
- the addition of an icon to an executable
- the generation of the deployment license file for a server (OEM license only) or a standalone application.
Data Explorer allows you to view the data in your database. You can choose which fields to display, organize, filter, and sort the data.
With 4D v20, the Data Explorer can be opened in 4D instead of an external browser. Users can access the Data Explorer directly from the toolbar with just one click, saving time and improving productivity.
Introduced with 4D v19 R8, text boxes allow you to insert text, tables, images, formulas, and other elements anywhere into your applications. This feature has been improved in v20 to include the ability to export and import these elements from and to docx documents.
In addition, a new export option has been added that is also valid for other document types!
4D v20 brings two very useful features to IMAP Transporters!
Interacting with some IMAP mail servers and clients requires to manage custom keywords in mails, and benefit from some of their specific features.
We also added the mailbox ID support in our IMAP Transporter so that you can identify a given mailbox even after it is renamed.
To allow you to make the most beautiful interfaces, we continue to improve the form objects. Since 4D v19 R6, you can define a rounded border for static text and input text form objects.
With 4D v20, new possibilities are available.
- For buttons, radio buttons, and checkboxes, we have added new settings for the text and the icon.
- For radio buttons and checkboxes, the number of states for the icon has been improved to allow a better rendering for the end user.
4D v16 R5 brought a significant improvement to the DIALOG command. An improvement that lays in the possibility of passing a new parameter “formData” of type object. It was great to hear that this new addition has been well received by 4D developers.
With 4D v20, two other commands are upgraded, Print form and FORM LOAD! The benefit will be just as great. The object’s content passed in the parameter will be directly exploitable in the printed forms or forms loaded in memory.
In the development industry, CI/CD has become a standard practice. With each code modification, automated actions such as testing, compilation, building, delivery, and sometimes deployment are generated to ensure the code is high quality and easily integrated into the existing system.
These actions require a tool to execute the necessary code. As 4D developers, we decided to provide a free tool that allows developers to execute elementary actions. This tool is called tool4d, and it streamlines the process of executing necessary actions within the 4D environment.
In this article, we will explore the functionalities of tool4d and how it can be used to enhance your development process.
The “Find and Replace” feature in the code editor has existed for many years. Developers can easily and efficiently search and replace code, especially when dealing with large codebases. 4D v20 is bringing improvements that are sure to be appreciated by developers who rely on this functionality to streamline their coding workflows:
- knowing the number of occurrences to replace,
- knowing the position of the current occurrence,
- having permanent access to the Next and Previous navigation options,
- display a palette instead of a modal window to limit the number of clicks.
Since the appearance of ORDA, classes, and other objects, you must work increasingly with undefined values.
Since some of you are asking for an easier way to use them, starting with v20, you can compare any type of value to an undefined value without throwing an error.
In an increasingly connected world, websites or IoT applications must be updated in real-time.
A way to deliver information instantly to your sites is to use the Websocket protocol that provides a full-duplex communication channel between a server and a client. From the v20, 4D provides commands to create a Websocket server.