Product 4D v16 R5 supports the JSON pointers

Working with JSON Pointers

Automatically translated from English

In 4D v16 R4, we enriched object commands so you can validate JSON objects. 4D v16 R5 is going even further by introducing the support of JSON pointers. Great – but what is a JSON pointer and what can I do with it?

Just like you don’t store company details for each employee in a database record (using a link to the company record instead), it can be really useful to structure a JSON document with parts that can be reused in a number of places.

For instance, let’s take an example of a website order; the customer enters the shipping address and designates the billing address as the same. Instead of duplicating the address information, we can define the shipping address as a reference to the the billing address.

Product

Full size background pictures with 4D Write Pro

Automatically translated from English

There are common user stories where there is a need to have a background image fill the entire printable area, such as paper-folding lines or a watermark. It’s also sometimes required by a company’s graphic charter.

Thanks to a newly added style for background images, it is now possible to create background pictures filling the full page in 4D Write Pro! You can control this attribute, by either the 4D language or standard actions, or even by using the 4D Write Pro widget.

Product

Help tips on list boxes!

Automatically translated from English

Help tips or hints are very useful, as they simplify the user interface and help users understand objects that sometimes aren’t self-evident. 4D supports help tips in most areas and inputs when hovering the pointer over them, but that was not the case with a list box object.

With 4D v16 R5 we have added the possibility to display a help tip on a list box cell thanks to the enrichment of two commands.

Product Generate disgest, a new 4D command

Generate digest now supports SHA-2

Automatically translated from English

The digest functions are mathematical functions that compute a digest key for a document. Identical documents have the same digest key; if you change part of the document, the digest key is different. These functions are very useful for checking data integrity when you exchange or compare data. In 4D v16 R5, 4D has enhanced the Generate digest command to support SHA-2 algorithms following security recommendations.

Product

More commands to run in preemptive processes

Automatically translated from English

A preemptive process is powerful as it allows your application to take full advantage of multi-core computers; consequently, its results in a faster global execution time and more connected users. A 4D process may be preemptive or not according to compilation options and the use of the language, as explained in this post.

In order to benefit from this mode as much as possible we are pleased to announce that more than twenty existing commands have been enhanced and can now be used inside preemptive processes.

Product New 4D Commands to create a hash password

Hash and verify passwords for web user login

Automatically translated from English

Security is becoming an increasingly important topic as business applications become more frequently accessible through the web and are, as a result, more vulnerable to threats. As 4D is closely paying attention to security matters, in 4D v16 R5 we are providing you with a couple of security improvements, and one of them relates to the web users’ password protection through password hashing.

By the way, if you want to know more about how 4D is helping you to protect your data and with the security in general, I recommend you to take a look at this blog post

Product Manage Header and footer with 4D Write Pro

Programmatically manage headers and footers in 4D Write Pro

Automatically translated from English

We’ve received several customer requests to provide the ability to use the 4D Write Pro template with headers and footers to create other documents based on this template. Well, we heard you and this is available in 4D v16 R5.

A new set of commands have been added to 4D Write Pro to fulfill this need. Some of these commands can be used to get references of headers, body and footers inside documents. Others are handy to get a reference to the frame (header, footer, etc.) where the cursor is currently located, or to set the cursor into a specific frame.

Product

Automatic row height in list boxes, a new 4D View Pro feature!

Automatically translated from English

Starting with 4D v16, you can set a different row height for each row in your list box. So with a few lines of code, you have a list box with rows that conform to the content. With this 4D v16 feature, we gave full control to the developer to precisely define the height for every single row of the list box.

With 4D v16 R5, we’ve decided to go further, and provide you with a fully automatic mode. It’s now possible to display lists in a gorgeous interface without any programming. You only need to set a few properties in the list box, and 4D does the rest for you. It’s magical, fluid, and again … not a single line of code!

Product

Don’t be afraid of undefined values

Automatically translated from English

With 4D v16 R4, we introduced Object Notation which is a great enhancement to the 4D language: your code is fast, flexible, efficient and elegant! This feature created a lot of interest on the 4D forums and we received a lot of feedback from our customers highlighting situations when there were undefined values making the code challenging to write.

With 4D v16 R5, we have taken your feedback into account and have simplified the use of undefined properties and values with Object Notation.