Project databases, available in beta in the latest 4D v 17 R-Releases, are now available for production in 4D v18! Among the many changes in 4D v18 is the way user and groups are managed … it’s become much easier, especially deployment. This post will briefly highlight everything you need to know about these changes.
4D v18 introduces a new architecture for files and folders to keep your deployed macOS package and Windows application folders intact. In a nutshell, the logs folder and all user-based settings, including 4D backup settings, are now stored next to the data file. In fact, the settings exist twice; one next to the structure to use as default settings for new data files, and one beside the data file, storing user changes.
As a result, the folder containing the structure can be read-only, since nothing is modified inside (*). Deployment becomes easier because the structure folder can simply be replaced, nothing within it needs to be copied beforehand.
(*) only in project databases. In binary databases the user & password tables are stored in the structure, so the folder must not be read-only.
As a 4D developer, you may have already encountered a need to develop applications without a graphical user interface (GUI), otherwise known as a headless applications. Previously in 4D, this wasn’t entirely possible to do …. until 4D v18! In this blog post, we’ll go through some of the newly available capabilities so you can make your applications “headless”!
Why create headless applications? There are several use cases such as simulating Windows behavior on macOS, or having the Windows service behavior without using the service manager, and so on. But above all, it opens new opportunities such as developing bots with 4D.
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.
When programming an application, you may need to know where you are in your code, especially when one method calls other methods, which may then call other methods. That’s why it’s very helpful to see the chain of methods, or the call chain, during the debugging process. For this, 4D v17 R6 provides the new Get call chain command to give you an insight into the executed code. Now you won’t have to worry about getting lost anymore!
Using ORDA to access large tables (especially those with relations) in Client/Server mode has been greatly enhanced. With 4D v17 R5, you’ll see 2-3xs improved LAN performance and up to 30xs faster WAN performance. And best of all – there’s no need to change anything in your code, it’s all automatic. Interesting, isn’t it? Well, let’s delve into the details.
As a 4D developer, you may have already activated the debug log to troubleshoot problems. 4D v17 R5 introduces several improvements to help you analyze these files, such as logging only the current process and logging calls to member methods (collection or object methods).
As a 4D developer you often need to manage end users with your own directory system. For internal users, you might create a few profiles with different rights or you might just use the default Designer account for everyone. The problem is when multiple people use the same profile, everyone has the same name and it’s difficult – sometime impossible – to differentiate them. Fortunately, 4D v17 R5 resolves the headache of trying to figure out who’s who. In this blog post, we’ll explain a new command and new selectors that’ll help you set the 4D user identity by defining a custom name to use instead of the current 4D user account name.
Got a question, suggestion or just want to get in touch with the 4D bloggers? Drop us a line!
* Your privacy is very important to us. Please click here to view our Policy