Author: Roland Lannuzel

Roland Lannuzel
• Product Owner & 4D Expert •After studying electronics, Roland went into industrial IT as a developer and consultant, building solutions for customers with a variety of databases and technologies. In the late 80’s he fell in love with 4D and has used it in writing business applications that include accounting, billing and email systems.Eventually joining the company in 1997, Roland’s valuable contributions include designing specifications, testing tools, demos as well as training and speaking to the 4D community at many conferences. He continues to actively shape the future of 4D by defining new features and database development tools.
Product blank

4D Write Pro: Mastering Sections and Subsections with new functions!

Sections and subsections are the building blocks of any well-structured document. You’ve likely used them countless times, perhaps without even realizing it, as every document contains at least one section by default!

Whether you’re a seasoned pro or just starting out, this post will walk you through the basics of sections and subsections.

We’ll also explore the exciting new 4D Write Pro features in 4D 20 R7, which make managing these elements easier and more powerful than ever.

Product blank

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.

Product blank

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.

Product blank

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!