ORDA: Thoroughly compare two entity selections
Since ORDA allows you to work with several entity selections simultaneously, we’re sure you take advantage of this by passing entity selections as a parameter to project methods or to functions of ORDA Data model classes.
To work efficiently with object-oriented programming using as few lines of code as possible, you need robust and optimized functions. That’s why with 4D v19 R3, we are shipping a new function available on the entitySelection object: the selected() function.
Thanks to it, you’ll be able to inspect and compare two entity selections. Let’s see the details!
A magic show awaits you with ORDA’s computed attributes!
It is often helpful or even essential that databases be adapted in a flexible and evolving way to users and their businesses in the computer world. The control of accessible data is also a recurrent and sensitive subject. From this point of view, developers use methods and formulas that are sometimes complex to give or restrict access to information, depending on the context or the access rights of the users.
Let’s take a simple example. In your application, you sometimes need to display a list of people. One of the columns displays their full names, but in your database, you have a first name field and a last name field. Currently, you write a formula in the list box column, and you have to manage the sorting on the column yourself. Wouldn’t it be great to have a computed field where you can define its calculation formula and sorting method, and have all the business logic inside the class and not in each interface?
Well, starting with 4D v19 R3, 4D provides a solution to this, with computed attributes.
Full support of BLOB in ORDA
Many of you have already taken the leap and started using ORDA. To ease your coding experience, we are glad to announce that Blobs are now fully supported in ORDA, like any other type. After the first step in 4D v19 R2, with the support of the Blobs in objects, 4D v19 R3 brings the support of Blobs in ORDA.
ORDA: Easy looping with a new 4D tag
You have probably already used a For each…End for each loop to work with ORDA entity selections or with collections. Its use is simple and straight forward. Would like to use it as a 4D tag in your SHTML pages? Or perhaps with the PROCESS 4D TAGS command?
As of 4D v19, you can! Keep reading to learn more.
4D Data Explorer in Action
Even though the 4D Data Explorer is still in Preview version (there are certainly more features to come in the next versions), we thought we’d show you the product in action and let you discover its capabilities.
This is a web browser interface usable by the administrator as well as the developer, remotely (in a secure way with an HTTPS connection) or locally on the same machine as your opened database.
Need to check your data during development? Need to find data that could cause bugs? The Data Explorer, with its powerful query engine and intuitive web interface, is made for you!
Let’s watch the video:
Your data live … in a web interface
As a 4D developer, you may have dreamed of visualizing your data immediately and easily while you update/create it. Or maybe you’re a 4D administrator and you need to quickly find a record that causes an error due to inappropriate data. This has been possible with 4D’s built-in query interface and output form, but it can take time to customize this form and you may need a more responsive tool.
How about a modern and user-friendly web interface to view your data? And for a cherry on the top, what if this interface comes with a powerful query engine? Dream no more! All this is now a reality thanks to Data Explorer, a new tool provided as a Preview for you to evaluate it and give us your feedback.
Of course, it will be enhanced in future versions.
Let’s discover it now!
Sharing leads to performance
Following this blog post about the new concept of shareable entity selections and the subsequent discussions on the forum, we’ll now take the time to explain how ORDA fits into the future.
Move to shareable entity selections smoothly
In this blog post, you discovered the power that shareable entity selections can offer. 4D focuses on data sharing because, in the long run, it leads to performance.
But we’re aware that this strategy might not be your current strategy. We’ve followed the discussions on the forum and understood your comments and feelings.
To soften this step and give you more flexibility and tools, we’ve made some enhancements regarding the nature (shareable or non-shareable) of entity selections.
Before continuing, we highly recommend that you read this blog post and this one so you can make sense of the enhancements described below.
ORDA – Share an entity selection between processes
4D v16 R6 introduced a new concept of communication between processes: shared object and shared collection variables! Thanks to this, you’re able to easily share information between processes.
Until now, entity selections weren’t shareable between processes. However, that has changed … we’re pleased to announce that in 4D v18 R5 entity selections are shareable!
Gone are the days of building a list of primary keys to move a selection of entities to another process. Enhance your multi-processes code by including ORDA entity selections as shared objects.
Keep reading to learn more.
ORDA – Improve your API with function scope
4D v18 R4 and ORDA made it possible for you to create high-level class functions above the data model. This allows you to write business-oriented code to hide complexity, reduce errors, and speed up the development process.
With 4D v18 R5, we’re bringing even more features to help you optimize and organize your code. For example, you might need to run a function locally on the client to improve performance when working in client/server mode. It’s now possible! Or if you expose your database as a REST server, you might want some functions to be available on the server-side but hidden for your REST clients. This is also possible!
Contact us
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