Product

LIST BOXES: More Control. More Beauty!

Automatically translated from English

List boxes are powerful and very customizable form objects. And their power is extended with 4D v19 R6 thanks to two new properties: horizontal and vertical padding (the inner margins or the space between an element’s content and its border). They will give new presentation possibilities to your list boxes, and an even more professional appearance to your interface, 

Product

Form and subform communication made easy!

Automatically translated from English

Starting with 4D v19 R5, the ability to associate a variable with a subform has enriched the possibilities of interfaces and communication between forms and subforms. The means of communication are now simplified by two new commands: Say hello to OBJECT Get subform container value and OBJECT SET SUBFORM CONTAINER VALUE.

Product

A Seamless Way to Manage Parameters

Automatically translated from English

In the declaration of a function or method, you explicitly define its parameters. Then, when calling that function or method, you can pass fewer parameters to it if some are optional. Or, if you used the declaration with ${n}, the number of passed parameters is variable. In this case, you use the Count Parameters command with a loop over the arguments. This code works flawlessly. Still, it’s a little bit heavy.

You asked us for a lighter way to handle parameters, and we listened. Starting with 4D v19 R5, we provide you with a new command, Copy parameters, allowing you to write a seamless, more elegant, and easier-to-read code. 

Product

More options for object set enterable command

Automatically translated from English

There is a multitude of interfaces and rules to be respected. Often, these constraints are linked to the domains of activity. Obviously, some data can be entered or not by the user. For a field that is not enterable, there are two ways of managing the interface:

  • users can still select and copy its content, for example to add it to a report
  • users are not allowed to copy the field or select its content
Product

4D language: The improvements you requested are here

Automatically translated from English

Do you dream of using short-circuit evaluation, ternary operators, breaking free from a loop, or exiting from a method with a simple keyword?

Well, dream no more! We listened and kept an eye on your feature requests from the 4D Forum, so here comes a set of 4D language improvements that will help you simplify your code. 

Product

Quickly jump to different functions of a class

Automatically translated from English

Classes were introduced with 4D v18 R3. They allow you to organize your business logic and separate it from the UI part more quickly.

Classes are composed of several functions of varying lengths, so it’s not always easy to find the function you want to modify, or to move from one function to another. You can use the explorer, which displays classes and functions, but when you’re coding in the editor window, you don’t want to waste time changing windows.

With 4D v19 R4, the list of functions in your class is displayed in the code editor toolbar, allowing you to easily jump to a specific function. 

Product

Debug on the server with scalable web sessions

Automatically translated from English

Scalable web sessions were a significant improvement brought by 4D v18 R6. They allow you to use 4D tags, 4D actions, and REST API in preemptive processes, even in interpreted mode, on a 4D server. However, to debug such programs, you needed to open your development environment on the server to make it switch to cooperative mode, as the debugger window cannot be opened with preemptive processes. This way, until v19 R2, you could debug REST, 4D actions, or 4D tags. From v19 R3, all of this has become much easier, and you can debug on the server-side simply by attaching the debugger to it, as usual.

Product

Bcrypt support for passwords

Automatically translated from English

Security is a fundamental topic for today’s business solution systems. At 4D, we understand its importance; that’s why we keep delivering features that tackle this topic.

And with 4D v19 R3, 4D now uses a stronger hashing algorithm for user passwords. Let’s find out more!