New 4D View Pro Format File: sjs

For those of you working with larger and more complex 4D View Pro files, we understand the performance concerns that arise. To tackle this, we have introduced a new file format called .sjs. The .sjs format is a compressed file with multiple smaller JSON files, following a structure similar to Excel XML. This new format aims to enhance performance and optimize the handling of these files.

News blank

Introducing Qodly Studio

Today, we are excited to announce the availability of Qodly Studio (currently in Developer Preview) to all our Silver Partners (and higher).

Starting is straightforward: open 4D, refresh your 4D Partner licenses, and you’re ready to proceed.

In this blog post, we’ll explain what Qodly Studio is, why it matters, pricing details, and how you can get started.

Product blank

4D Write Pro – A Wizard to Create Tables with Data

Over the last few versions of 4D Write Pro, many table-related features have been added. You can easily create tables based on database data using contexts, data sources, and formulas.

This is so easy that many of just want to let your end-users use the feature as it is. But we understand this can sometimes be challenging for users who lack training in formatting data sources or formulas for various table components. To address this, we have developed a solution shipped with 4D v20 R2: the brand-new table wizard.

The wizard is available to end-users; they can take advantage of templates adapted to their use and business provided by the developer. Configuring templates includes:

  • define dataclass and dataclass attributes,
  • translate dataclass, dataclass attributes, and formula names,
  • prepare formulas adapted to the business,
  • design graphic styles.


Continue reading to find out more, and don’t forget to check out the HDI and watch the bonus video that guides you through various possibilities.

Product blank

4D Netkit: Send email with the Gmail API

We understand the significance of email communication and recognize that sending emails is a frequent requirement in modern applications. Numerous individuals who use Gmail have expressed their desire for an API that facilitates email sending through Gmail API. The integration of OAuth 2.0 was essential to establish a connection with the Gmail server.

We are pleased to announce that we will be venturing into Gmail management and implementing a ‘send email’ command.

Product blank

Activate QUIC Layer from the Structure, User and Database Settings

In 4D v20 beta, we were excited to show you our work on the new QUIC network layer. As the layer is still in the beta version, we deactivated it for the LTS final release. The QUIC layer will be available in the feature releases, so you can follow its development and help us improve it.

While 4D v20 allowed switching network layers only in interpreted applications and forced a new build for engined applications, 4D v20 R2 allows layer changing in compiled/build applications via the Structure, User and Database Settings to facilitate testing even in production.

Product blank

Enhanced Error Management in 4D Code

Throwing errors in your 4D code is now possible starting from v20R2.

Those errors behave as any 4D error: they trigger an error dialog or can be handled in an ON ERR CALL method.

This feature will ease your life because you’ll be able to improve the quality of your code by proactively detecting errors as soon as they occur. You can also handle better error logging.

Before digging into details, It’s important to note that this feature is the first step towards achieving robust error management.

Now, let’s dig into the details!

Product blank

4D Netkit: Enhancement of OAuth2 Authorization

With 4D v19 R3, connecting your application to the Microsoft Graph API through OAuth 2.0 has become incredibly convenient using 4D NetKit.

Now, with 4D v20 R2, you can seamlessly obtain an OAuth 2.0 token for Google API or other OAuth 2.0 servers. And even better, to further enhance the integration of this authentication process into your application, we have introduced a feature that allows you to display your HTML page directly in your web browser once the token is received.

Keep reading for all the details!

Product blank

Websocket Client

In today’s interconnected world, the need for real-time updates is paramount for websites and IoT applications.

A way to deliver information instantly to your sites or applications is to use the Websocket protocol which provides a full-duplex communication channel between a server and a client. From 4D V20, you can create a websocket server with the 4D.WebSocketServer class. We continue in v20 R2 with the 4D.WebSocket class that allows you to create a websocket client to connect to any websocket servers.