How to connect Tableau with 4D
In 4D Webinar – How to Connect Tableau with 4D, William Taylor (Technical Account Manager, 4D US) gave an overview of the Tableau tool and how it could be used to visualize your 4D data. In this blog post, we’ll dig into the technical details to give you a deeper understanding of how it works. This will allow you to build, for example, a visual showing the highest invoice total with nothing more than 4D REST and Tableau!
Support of Cross-Origin Resource Sharing (CORS)
Have you ever created an HTTP data request only to get hit by a red “access to HTML request has been blocked by cors policy” error?
When your site is on the same domain as the web service server, there’s no problem. However, this isn’t the case when performing a cross-origin request. Access is denied due to browser security preventing HTTP requests to another domain. The result? A CORS policy error.
To help you explicitly allow certain cross-origin requests on your server, 4D now supports the CORS protocol. Accessing data with cross-origin requests just became easier!
ORDA Data Model Classes and REST
In a previous blog post, you learned about ORDA classes and the possibilities they offer to make your coding experience smoother. In this blog post, you’ll see how to use them with the REST server.
Let’s see it in action!
ORDA Classes to handle your data model
In a previous blog post, we introduced you to the world of ORDA data model classes. Now it’s time to get our hands dirty and learn more!
You already know that ORDA‘s structure (datastore, dataclass, entity, entity selection) is made up of objects. But they’re not just objects, they’re strongly-typed objects linked to specific ORDA classes. This means that you can write functions to hide the complexity of your data’s physical implementation.
Welcome to the world of ORDA classes
ORDA was a revolution with 4D v17. It opened a whole new world of possibilities and took you to another programming dimension. A dimension where you can easily develop applications using an object-oriented approach.
We didn’t stop there! We continued to add enhancements to ORDA through a set of features in each subsequent feature release. Now with 4D v18 R4, we’re thrilled to be going another step further with the availability of ORDA data model classes. Classes dedicated to your data model.
This will greatly elevate your code. Your applications can now easily expose services, be more manageable and easier to maintain, and seamlessly integrate with other applications.
This is another big feature made possible thanks to the projects!
Remote datastores – A practical use case
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:
A better understanding of 4D REST sessions
In a previous blog post, we showed you how to get started with the 4D REST server. We walked you through different CRUD operations using Postman and pointed you to the full REST documentation. In this blog post, We’ll explain how sessions work in 4D. This understanding will ensure that you’ll be able to build a session-based authentication system using the 4D REST server.
Multiple 4D data sources, interested?
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!
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