PDF/A3 Attachment Extraction
In previous posts, we explored embedding documents within PDF/A-3 files using 4D Write Pro, including generating electronic invoices. As e-invoicing becomes mandatory in various European countries—such as France and Germany—the ability to extract embedded XML files from these PDFs is becoming crucial. But the utility of PDF/A-3 extends beyond invoices; these files can embed various document types that may require extraction.
While tools like Adobe Acrobat Reader offer manual extraction, this post introduces an efficient, automated method using 4D 20 R6 to easily handle the process.
REST and Qodly Support of Singletons
With 4D 20 R5, we released singletons. And with 4D 20 R6, we now allow you to directly call the exposed functions of your shared singletons through REST calls. Similarly, you can use the exposed functions of your shared singletons in events when designing your Qodly Pages. Let me delve deeper into these new capabilities.
QODLY STUDIO FOR 4D: WHAT’S NEW IN 4D 20 R5
In our previous posts, we introduced you to Qodly Studio for 4D and hope you have begun exploring its features. With each release, Qodly Studio for 4D becomes an increasingly robust and user-friendly solution for building business web applications with minimal coding effort.
Integrated deeply with 4D, Qodly Studio for 4D allows you to leverage existing business logic developed for desktop applications.
Let’s dive into the exciting new features of Qodly Studio for 4D 20 R5 and how you can integrate them into your applications.
Integrate 4D Components Directly from GitHub
Many 4D developers leverage the power of third-party components found on GitHub, particularly those listed in the 4d-component topic. 4D 20 R6 introduces a fantastic new feature: directly integrating these components within the Component Manager.
This blog post dives into the details, making your development process easier and more efficient.
Customize Global Warnings Generation
Warnings are a valuable aid for alerting 4D developers to potential code mistakes. With the release of 4D 20 R6, it is now possible to globally define which warnings are generated, enhancing the overall development experience.
Permissions: Inspect Session Privileges for Easy Debugging
Today, you can benefit from a powerful feature to filter access to data, which is essential for preventing malicious access to your application.
This feature uses privileges that allow certain actions on your data. These privileges are assigned to users through roles and stored in the Session during authentication.
In 4D 20 R6, we enhanced this functionality by allowing you to inspect the privileges in the Session, which is very helpful for debugging.
Keep reading to learn more.
UX: Enhanced Scrolling Behavior in Subforms
User forms are all about making things easy for users. But what happens when scrolling becomes a battle between subforms and their contents? You’ve probably experienced this before: you try to scroll through a list box in a subform, but the entire subform moves instead. Or, worse, you try to scroll the subform itself, but the list box stubbornly stays put!
This has been improved with 4D 20 R6, making the action more natural.
Custom Parameters for Initializing Embedded Web Area
Since the embedded web area utilizes CEF as its web browser engine, there have been requests for a method to incorporate additional CEF switches, like the autoplay-policy switch, during the area initialization.
Starting with 4D 20 R6, you can manage your custom parameters using a parameter file.
Easy Reference Comparison of Objects & Collections
Objects have become an essential part of the 4D language and of Qodly.
But when you declare a variable of this type, you define a reference. So, how do you know if two objects are, in fact, just one and share the same reference?
Starting with 4D 20 R6, comparing object references is simple: enter the = and # operators!
This blog post explores these operators and how they help determine if objects share the same reference. Let’s find out more!
4D Netkit: Customizing OAuth 2.0 Connection Interface
Some of you may need to manage the display of the connection interface during an OAuth 2.0 connection for design or technical reasons. From 4D 20 R6, you can choose not to automatically open a web browser to display the connection interface but use the authenticateURI to display it where you like.
In this blog post, we’ll walk through an example of opening the Microsoft login interface within a web area.
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