We’re thrilled to announce that 4D v18 R3 includes an enhancement that will have a huge impact on the developer’s experience. A feature many of you have requested, and 4D delivers!
When you work in 4D standalone mode during the development phase (writing and testing your code), you’re no longer required to restart your database in order to have an up-to-date datastore (ds) when the structure is updated!
Now you don’t need to restart the database each time you need a new attribute or a new table in your code! It’s all automatic!
When you call the ds command, you get an up-to-date datastore object. This means that several versions of this datastore object are handled at the same time … depending on when you updated your structure … without breaking running processes.
If you work in client / server mode, this works fine for code running on the 4D Server.
For remote clients, you simply need to restart the client requiring the structure’s update.
When it comes to ORDA, 4D v18 R3 is full of good news! New member methods are at your disposal to further enhance your coding experience.
For starters, extracting data from an entity selection has been greatly enriched allowing you to build a fully customized collection with your entity selection data.
In addition, we’re providing you a way to indicate to an entity selection that its data needs to be refreshed from the server immediately, invalidating cached data.
Interested in some details? Keep reading, everything you need to know is below.
One of the most interesting features delivered with 4D v18 was remote datastores. They opened a whole world of possibilities and in this blog post we’ll show you a practical use case:
To display a list of records, an entity selection list box is the most suitable when using ORDA technology. 4D v18 R2 simplifies your life with a new tool to easily build entity selection list boxes: List box builder. What is it? It’s a simple dialog where you can set up your list box in a few quick steps (select the table and fields to display, enter column titles, and define the column order).
Blog post by guest author Joel Levy, a 4D developer at Sweetwater:
4D is the heartbeat of Sweetwater Sound. Our application harmoniously interconnects the diverse needs of over 700 concurrent users. We’re always seeking out more developers to fulfill the needs of a constantly growing company. Here’s a look into the strategies that Sweetwater uses to onboard developers new to the 4D platform.
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!
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.
Ever need to analyze the traffic of your ORDA requests between a client and the 4D server? Sometimes it may take a while to receive a response from the server, which can make you wonder if it’s due to network traffic or to an unoptimized request you’ve written! Thankfully, 4D v17 R6 makes it possible to determine the likely reason(s) for this latency with the new ORDA methods available on the ds object. They’re not only debugging functions, they also allow you to optimize your ORDA code with a better understanding of the sent requests.
In a previous blog post, you learned how to build sophisticated and complex search criteria by applying formulas in an ORDA query. To further provide you with complete and powerful development tools, a new ORDA method available: orderByFormula(). With the help of formulas, you can now order an entity selection using complex criteria in a project method or 4D expression.
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