POP3: Download the Mail Header Only

When retrieving email messages using POP3, it’s possible to retrieve just the message headers (which include information such as the sender, subject, and date) without downloading the entire message body.

Retrieving just the message headers can be helpful when you want to quickly scan the list of messages in your mailbox to decide which ones to download and read in full.

Starting with 4D v20, a new parameter is added to the .getMail() function of the POP3 transporter to receive your emails without the body. This function can be even more helpful if you use Gmail because it does not trigger the deletion of read emails.

Product blank

Microsoft 365: Create, delete, and rename mail folders with the Microsoft Graph API

To access the data in Microsoft 365, like emails, Microsoft is deprecating Basic authentication for IMAP and POP3 and is increasingly promoting the Graph API.

With this last set of functions that includes all the features to manage folders from the 4D v20, you have in 4D NetKit a set of functions to manage your mailboxes by programming with the Microsoft Graph API.

Tips blank

Integrate your Own Administration Window for 4D Server

When deploying their applications, some developers want to customize the built-in 4D dialogs to fit their needs. It is especially true for the 4D Server Administration Window where they sometimes want some information and actions to be accessible only for their team and not for their customer administrators.

Product blank

Automatic integration of multiple journals

As developers and database administrators, you know the importance of quickly recovering from data corruption. Backups and journals help you with the task. But sometimes, a backup may be corrupted, and you need to come back from an older backup and integrate multiple journals consecutively. Or maybe your journal file is growing big too quickly, and you prefer to regularly create a new one to avoid cluttering your server hard drive. Or you are just using your own way of backing up your database. In all these cases, you must integrate multiple journals, which is only manually possible through the Maintenance and Security Center.

With 4D v20, you can automatically integrate multiple journals at database startup. Let me explain to you how it works.

Product blank

Meet the Improved Distinct Function

Retrieving the list of unique data elements is always helpful when manipulating data. In some cases, retrieving the number of occurrences of each value is essential. The distinct function of the Collection and Entity selection classes allows retrieving a list of unique values. With 4D v20, you can also retrieve the number of occurrences of each distinct value.

And that’s not all!

An object in the database can be used to save custom data entered by the user. So on the code side, you need to know all the possible paths to the object. The distinctPaths function has been added to the Entity selection class.

Here is everything you need to know.

Product blank

New VS Code Editor Features with 4D v20

As usual, a new release, new VS Code extension features for developers who want to view and edit code with this free editor.

4D v20 brings new capabilities to the Visual Studio Code editor through the 4D-Analyzer extension: Say hello to Document Syntax Checking, which will help the developer to type fewer mistakes, Code Folding and Indentation for a better look, and tool4d to allow faster LSP server starting.

Product blank

QUIC layer: the future of network communications

The most considerable production servers running with 4D accept more than a thousand simultaneous connections, and this number keeps growing. As a consequence, performance becomes an increasingly important focus of our teams. The QUIC protocol, used by the new version of the HTTP standard, has been specifically built to increase speed and reliability. As we are always looking for exciting technologies, we are working on replacing our low-level network protocol with the QUIC protocol.

For v20, you can switch to this network layer and check if it improves your performance. This is still in beta test, as we need your feedback before using it as our default network layer. As such, you will only be able to use it on beta versions of 4D.

Product blank

Create a Help Menu with a Simple Collection

The “Help” menu of a software is handy. Obviously, you have a menu item to open the online documentation of the software, but also how to contact the support, and several other items depending on the software.

With 4D v20, you can easily create your application’s “Help” menu by passing a collection describing the different menu items.

Product blank

Break Rows. A New Addition to 4D Write Pro Tables!

The 4D Write Pro document tables have greatly improved over the last few versions. In fact, we, the 4D team, are so invested in making 4D Write Pro a potent template-based documents generator —that we have already released advances such as headers, datasources, carry-over rows…a few powerful features off the top of my head.

Now, with 4D v20, it’s the turn of break rows to make their entry!

Ladies and gentlemen, drum roll, please!