Product

On resize… On resize… On resize…

Automatically translated from English

Wondering how to create a nice and dynamic user interface? Typically when a form is resized, the form objects whose horizontal sizing or vertical sizing properties are set to move or grow, are automatically resized. In some cases  (e.g., finer user interface management), developers choose to manage form object size and position by programming. To do so, they check the “on resized” event which is triggered within the form method. But what happens when the form contains one or more subforms? On many levels? This blog post gives you the answers!

Product

Multiple 4D data sources, interested?

Automatically translated from English

We’ve got an exciting new feature to announce in 4D v18 and the title may have already given you a hint!

This feature opens new possibilities for client/server work. Rather than being limited to the current database and requiring a permanent network connection, an application in 4D v18 can get data from another, remote 4D database that’s exposed on a 4D server!

A lot of options become available thanks to this feature. For example, you could organize your applications to work offline and only synchronize local data when remote data is reachable. Or you could consider publishing your data on multiple servers and switching from one to the other as necessary. Another option could be splitting your data model across different databases (e.g. local data, international data). What about having your data distributed in different places yet still accessible through a single 4D client code (project methods and form objects)? All of these scenarios are now possible and this blog post tells you how!

Guest Post

An enhanced UX with AJUI_Progressbar

Automatically translated from English

Have you ever executed an action, nothing seemed to happen, and you didn’t know if you should click again or continue waiting? There’s no feedback provided, even if the application is performing an action in the background? Perhaps the action requires some time to return a result? As you may know, 4D already provides a built-in progress bar component that makes execution time more tolerable, but if you want something with a more web like design then keep reading, because that’s what the AJUI_Progressbar gives you!

Tips

Build a web-based monitoring dialog, step by step

Automatically translated from English

Want to recreate the 4D Server Administration Window with a web interface? Want to conveniently check what’s happening in the 4D Server without needing to go to the server room, to use a remote desktop, or to consume a 4D Client license? It’s now possible to view all of 4D Server’s main parameters(e.g., memory usage, drive space, users, processes, and even the real-time monitor) via the web.

In this blog post, we’ll walk you through a set of commands that 4D delivered over various R-releases to build your own web-based server administration dialog. Additionally, the regional technical manager of 4D Hispano (Angelo Caroprese) has provided a complete component to be used right in your applications.

 

Guest Post

An ORDA Cheat Sheet

Automatically translated from English

Blog post by guest author Cannon Smith, a 4D developer from southern Alberta, Canada: 

The introduction of collections and entities has dramatically changed the landscape in 4D, giving developers new ways to map business rules to code. Just recently I refactored several thousand lines of code that were central to the business rules of our application, resulting in a significant speed improvement (5xs faster) which our users are very happy about. This refactoring was largely about moving from old code constructs to objects, collections, and ORDA.

Tips

Power of objects and dot notation

Automatically translated from English

With 4D v17 R5, we showed you how easy it is to manipulate an object to retrieve the attributes of a file or folder. Things have gotten even easier thanks to object notation! In this blog post, we’re providing you an HDI with a user interface to manage files and folders. This isn’t new in 4D since you could do it with classic 4D commands, but now you can do it easier and with fewer lines of code!

Product

CSS color strings for better readability

Automatically translated from English

Improved and simplified 4D commands just keep coming. Now you can set colors in your form objects using CSS strings instead of numeric values. Previously CSS colors for objects were declared with a 4-byte longint (e.g., 0x00RRGGBB). But if you feel more comfortable writing BLUE instead of its numeric equivalent 255 (0xFF), we’ve got good news … 4D v17 R6 makes it possible!

Product

A new tool at your fingertips to analyze debug logs

Automatically translated from English

With 4D v17 R5, we’ve improved the debug logs by adding methods and allowing each process to be traced independently. With this R-release, we’ve gone a step further by shipping a debug logs analyzer tool to help you monitor process execution. You’ll be able to see which processes are the most consuming, the call chain with the corresponding running time, and much more.