Guest Post

An enhanced UX with AJUI_Progressbar

Have you ever executed an action, nothing seemed to happen, and you didn’t know if you should click again or continue waiting? There’s no feedback provided, even if the application is performing an action in the background? Perhaps the action requires some time to return a result? As you may know, 4D already provides a built-in progress bar component that makes execution time more tolerable, but if you want something with a more web like design then keep reading, because that’s what the AJUI_Progressbar gives you!

Guest Post blank

An ORDA Cheat Sheet

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.

Guest Post blank

AJUI_Tip: A tooltip engine for 4D

Have you ever been flooded by confirmation dialogs, alert boxes, and contextual help windows that make it nearly impossible to locate the form window on which you were working? Wouldn’t it be more user-friendly to stay on the same page and see help bubbles pointing directly at the original target? 

This is possible thanks to the 4D component AJUI_Tip. It’s a powerful tooltip engine based on the technologies available in 4D such as ORDA, New Formula, SVG, SubForm, CALL FORM, to name a few. In this blog post, we’ll highlight the component’s usage, and show how you can design beautiful tooltips to enhance your applications’ UI. A download link can be found at the end of the blog post.

Tips blank

ORDA – Genealogy – Episode three

In the first  and second episodes of this trilogy, we demonstrated the basics of ORDA using list boxes, entities, and entity selections. We also showed the way to use similar list boxes with distinct data sources and how to use Meta info expression to improve the list boxes’ graphics.

Today we’re going to have even more fun, with less code!

Tips blank

ORDA – Genealogy – Episode two

In the first episode of this trilogy, we demonstrated the basics of ORDA using list boxes, entities, and entity selections. Today, we’re going a bit deeper by running some queries that will take advantage of recursive relationships. We’ll also have a quick look at how to display list boxes nicely using the “meta info expression” property.

Tips blank

ORDA – Genealogy – Episode one

We can all agree that ORDA is a great 4D V17 feature. A kind of revolution in the way of thinking and programming. 4D databases will never be seen the same way as before.

ORDA allows you to conceive advanced applications in less time, with more readable and clean code. To show you the power of ORDA we’ve prepared a series of tips for you, divided into three episodes. In this first episode, we’ll demonstrate how links should now be considered more as entities and entity collections, and we’ll show you how listboxes can now be based on entity selections, rather than selections or arrays.

News blank

4D v17 is here

We couldn’t be more thrilled to announce that the wait is over and 4D v17 is now available!

This groundbreaking release can open lots of options for your next 4D-based application. Though by no means exhaustive, here is a list of features to whet your appetite for this release:

Tips blank

Create a 4D View Pro document offscreen

Do you need to create a 4D View Pro document using code, without any user interface? It’s possible! Because 4D View Pro documents are objects, it’s very easy to create off-screen documents. You can create a new document in a variable of object type and manipulate it through its properties. When your document is ready, you can register it in your database, in a file, or display it directly in a 4D View Pro area.