Product Create dynamic forms

Discover the power of dynamic forms

Automatically translated from English

You’ve told us how much you want a feature to dynamically build forms fully adapted to your end users’ needs. Well, we heard you, and 4D v16 R6 now opens new opportunities with dynamic forms! Provided as a preview in 4D v16 R6, dynamic forms allow you to programmatically build your forms in an object or load them from a text file. But this only scratches the surface of what we’ve cooked up for you…

Product

A wide range of possibilities to manage your collections

Automatically translated from English

4D v16 R6 provides advanced capabilities to manipulate collections, thanks to a series of methods to be used with Object Notation. Over 40 methods are now  available, which allow, for example, the ability to add or remove elements in a collection, sort it, search the elements in it and much more! There are so many new possibilities that it is impossible to present them in a single post. This post is the first of a series you don’t want to miss…

Product

Dates inside objects!

Automatically translated from English

Objects are great! Their flexibility, combined with speed and elegance, make them a first choice for most developers. Using dates inside objects is now easier and more intuitive. From now on, dates can be set as datesand not strings inside objects!

Product

Sharing information in multi-threading environment

Automatically translated from English

4D v16 R6 introduces a new concept of communication between processes: shared object and shared collection variables! They are a solution so you can avoid using interprocess variables (which can’t be used in multi-thread mode). Thanks to this, you will be able to easily share information between preemptive processes.

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

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.

Product

Passing data back and forth between forms

Automatically translated from English

Wouldn’t it be great if you could just open a form and pass it some parameters to initialize your form objects? What about being able to also get the data back to process, after it’s been modified by the user? 4D v16 R5 makes your coding so much easier by greatly simplifying communications with forms.

Until now, when you wanted to display data (not coming from the database itself, but computed or external) to multiple users, you had two options: either write complex code to handle data display in multiple processes, or create as many forms as necessary with a bunch of global variables. But you know that global variables are not an optimized way of coding, from a memory point of view.

So get rid of your complex code and global variables! With 4D v16 R5 you can just bind an object to your form and use it internally with the new Form command. Painless…and powerful!

Product Picture attribute in 4D object

Support of pictures in Objects

Automatically translated from English

From 4D v16 R4, we have added the support of pictures in object attributes. For example, if you use an object to exchange settings or data between methods, forms or processes, now, you can also pass an icon or a picture in this object. You don’t need anymore to temporarily save the picture on disk.

This new type can be used like any other object attribute type: you can use, get and set pictures in objects. You can also use the controls of the picture theme.