Product

4D FOR IOS is coming soon!

Automatically translated from English

Do you need to extend your 4D application to mobiles? Are you in a business where you need to constantly check, for example, unpaid invoices or customer quotes? Perhaps you also need to perform a quick search for a product reference to answer a customer? They’re all simple actions that can be performed from a mobile device. And 4D for iOS is the perfect tool for this!

The 4D for iOS product was announced during 4D Summit 2018, opening a whole world of possibilities for you and your customers. It’s fully integrated in 4D, which means that you can easily create a new mobile project directly from 4D, without the need of any prior expertise building native iOS apps!

Product

Handle entities in an entity selection

Automatically translated from English

FIRST RECORD, LAST RECORD, NEXT RECORD, PREVIOUS RECORD; does that ring any bells? I bet it does. You’ve already been using them to handle selections! ORDA provides useful and familiar methods to navigate through entities in an entity selection – and obviously, some perks!

For starters, you can handle several entity selections at the same time and navigate through them independently, whereas normally you can only manage a single ‘current selection’ per table. That’s precisely what we’re going to see in this blog post.

Product

Working with ORDA optimistic locking

Automatically translated from English

4D v17 introduces ORDA, a major evolution in 4D which is opening a world of new possibilities for 4D developers. One of the benefits of using ORDA is related to record locking, because ORDA offers a choice between optimistic and pessimistic locking. After having introduced the ORDA locking mechanisms, we continue the ORDA series so you can discover how to work efficiently with optimistic locking with ORDA.

Product

Use table ranges in 4D Write Pro

Automatically translated from English

Since 4D v16 R4, it’s been possible to create tables by programming in your 4D Write Pro documents. Styling the whole table or just certain cells could be done during the creation of the document, but maybe you also want to manage your tables afterwards. Now, it’s easy to manipulate tables in an existing document, to change the border style or color, to change the font size or make it bold, etc.

4D Write Pro programming is highly based on “ranges“. After paragraph ranges and picture ranges, 4D v17 introduces a new type of range: table ranges, returned by a new command: WP Create table range. Styling tables is now simple with this new command and new type of range!

Product

Programmatically access elements in 4D Write Pro

Automatically translated from English

4D Write Pro keeps offering more and more programming capabilities! Let’s say you want to programmatically change the style of a table, paragraph, or image in an existing 4D Write Pro document. With 4D v17, it’s possible! Now you can access any element or part of a document, by programming. These parts, called elements, will be returned either as a collection thanks to the WP Get elements function, or as a single element with WP Get element by ID function.

Product

Locking entities with ORDA

Automatically translated from English

The ORDA series continues! In this blog post, we’ll look at how you can use locks in your databases with ORDA concepts! It’s not uncommon to need to manage conflicts that might occur when several users or processes load and/or attempt to modify the same records at the same time. Record locking is a methodology used in relational databases to avoid inconsistent updates to data.

ORDA provides an optimistic locking mode in addition to the one you already know (pessimistic locking).

Product

Loops, loops and … more loops!

Automatically translated from English

Like many other programming languages, 4D provides the ability to iterate over numbers with a For(…) / End for statement, or over a condition thanks to the While(…)/End while and Repeat/Until(…) keywords. These iterations (or loops) are very useful, but not the most appropriate way to iterate over advanced data types such as collections and entity selections. That’s why the new For each(…)/End for each iterator has been created, to help ease your coding!

Product

ORDA: work with objects and collections

Automatically translated from English

In this latest addition to the ORDA series, we’ll look at how the new ORDA concepts can interact with existing objects and collections. In fact, it’s possible to turn entities and entity selections into objects and collections, as well as build entities and entity selections from objects and collections. By doing so, you can easily integrate ORDA code within your existing code. You can take full advantage of ORDA without needing to rewrite your code!

Product

Going back and forth between current selections to ORDA

Automatically translated from English

ORDA is a major innovation of 4D v17, this is why we’re dedicating an entire series of blog posts to ORDA. While ORDA has its own concepts that are very different from the classic approach, it’s still possible to mix ORDA with your existing code.

In a nutshell, this blog post will show you how you can update the current selection of a table from an entity selection and get an entity selection from the current selection of a table. It’ll allow you to smoothly integrate ORDA concepts into your existing 4D code, step by step.