4D V17 R3 Beta starts today

We’re thrilled to announce the launch of beta testing for 4D v17 R3! Let’s take a look and see what this beta release includes:

   

  • 4D for iOS: More features to customize your mobile applications, with data formatters, create your own templates, and the ability to add your own icons.  
  • 4D Write Pro: New commands for complex and beautifully designed documents.
  • 4D View Pro: Import and export Microsoft Excel documents (.xlsx format).
  • More thread-safe 4D commands for even more preemptive processes.
  • Export your structure file in plain text for source control repositories.
  • Write your own methods for objects.
  • And much more (see below).

Download 4D v17 R3 now (Exclusive to 4D Partners) 

4D for iOS – Preview

Data formatters

4D for iOS is getting more feature-rich with every R-release. 4D v17 R3 introduces a new concept: Data Formatters. They allow you to define specific data types for your fields so the content is displayed in the correct format. You can quickly override your fields’ default format to display the format of your choice, such as currency, boolean, percentage, dates, and much more.

Create your own list and detail form templates

4D for iOS already provides various list and detail form templates to cover most of your needs. However, things have gotten even better with 4D v17 R3! Now you can easily create your own list and detail form templates.

add your own icons

4D for iOS has a large icons library. Icons for commerce, finance, education, government, health, industry, real estate, services, etc. But what if you want an icon that’s not already in that list? With 4D v17 R3 you can add your own icons to the library. Just create a …/Resources/Mobile/medias/icons folder and drag and drop your icons into it.

4D Write Pro

 

new attributes to avoid widows, orphans, and page breaks

4D Write Pro provides two options to avoid widows and orphans for paragraphs or tables, and page breaks inside paragraphs or tables.

Widows and orphans are the single lines at the beginning or end of a paragraph which are left all by themselves at the top or bottom of a page. To prevent them, 4D Write Pro has a new attribute to use with the WP SET ATTRIBUTES command: wk avoid widows and orphans. The available values for this attribute are wk true or wk false.  

But that’s not all! There’s also a new attribute to prevent page breaks inside paragraphs or tables: wk page break inside. It’s available values are wk avoid or wk auto. This option can be useful when you don’t want a paragraph, several paragraphs, or a table to break across two pages.

Create headers and footers with code

With 4D v17 R3, you can programmatically create a header and a footer for a specific section with two new commands: WP New header and WP New footer. You can also delete a header or footer with the WP DELETE HEADER and WP DELETE FOOTER commands.

page layout in 4D write pro

Using code to define page size, orientation, and margins is now possible with 4D v17 R3. 4D Write Pro has new attributes to use with the WP SET ATTRIBUTES and  WP GET ATTRIBUTES commands:

  • wk page widthwk page height
  • wk page orientation
  • wk page marginwk page margin leftwk page margin rightwk page margin topwk page margin bottom

manage sections with code in 4d write pro documents

4D v17 R3 introduces sections. Sections allow you to create different layouts within the same document. For example, in each section you can define a different paper size, orientation, different margins, different headers and footers, and so on. The final result being complex and beautifully designed documents. Sections can be manipulated by code with two new commands, WP Get sections (allowing you to retrieve a collection of sections in your document) and WP Get section (to retrieve the current section). To change the attributes for a specific section, you can pass the section reference to the WP SET ATTRIBUTES and WP GET ATTRIBUTES commands.

 

 4D language

More thread safe commands

With all the enhanced thread-safe commands (see list below), your applications can take full advantage of multi-core computers resulting in faster responses to simultaneous requests.

Thread-safe commands:

  • COMPRESS BLOB
  • EXPAND BLOB
  • BLOB PROPERTIES
  • ENCRYPT BLOB
  • DECRYPT BLOB
  • GENERATE ENCRYPTION KEYPAIR
  • GENERATE CERTIFICATE REQUEST
  • RECEIVE BUFFER
  • SET DEFAULT CENTURY 
  • GET DOCUMENT ICON
  • TRANSFORM PICTURE
  • SVG EXPORT TO PICTURE
  • Get localized document path
  • Get database localization
  • LOCKED BY
  • LOG EVENT
  • Current client authentication
  • GET MEMORY STATISTICS
  • TEXT TO ARRAY

Improving database tests

4D products can already be launched using command line parameters to allow automatic testing or deployment. With 4D v17 R3, new parameters have been added for even more flexibility when opening your database:

–opening-mode: will define how your database is opened: interpreted or compiled mode.

–create-data: will allow creating a new data file if the current one is not found or with a specific name if –data is passed.

–user-param: will send a string that can be read after the database is launched using the GET DATABASE PARAMETER command.

 

 

4D View Pro

Work with Microsoft Excel (.xlsx) documents using 4D View Pro

With 4D v17 R3, the existing 4D View Pro VP IMPORT DOCUMENT and VP EXPORT DOCUMENT commands have been enhanced. They now support the .xlsx extension (Microsoft Excel). Just pass your filepath to the commands and you’re all set!

 

 More programming capabilities

create your own formula objects

Objects have changed the way many 4D developers write code, making it more generic, flexible, easier, and faster. Starting with 4D v17 R3 and the New formula command, you can create formulas as objects. You can pass parameters to it or access the contents of the object. Formulas as objects can perform calculations for object attributes or be passed to a method. It even has its own call back and error handler. If you’re already using ORDA or doing classic selection-based coding, objects just became much more powerful.

export the structure file in plain text

With 4D v17 R3, you can export the structure file (.4DB) as text in several files. This offers many new possibilities, such as storing your code in a source control repository. Two options are available for the export, either via a new item in the “File/Export” menu or you can use the new Export structure file command.

convert Classic 4D forms to dynamic forms

4D v17 R3 introduces a new command allowing you to export classic 4D forms (stored in .4DB files) to dynamic forms. You can pass the form name and receive an object describing the form. Then depending on your needs, you can modify your form options such as the font size or the position of objects on the screen. 

get info about the running application

With the Get application info command, you can retrieve information about the network configuration and activity of your database such as: the amount of CPU used, the time since it has been started, and the list goes on.

 

Need more technical details? Take a look at the 4D v17 R3 Beta documentation in the 4D Doc Center.

Your feedback is greatly appreciated and will help us improve our product quality and better serve your needs. We’d love to hear your thoughts about any of the features above. Contribute to our “beta version” forum (accessible for all 4D Partners).

Not a partner yet? Become a 4D Partner and join the conversation!

Avatar
• Product Marketing Manager • Intissar joined 4D in 2017 as a Product Marketing Manager. She works closely with the product, marketing, engineering, and technical support teams to highlight the ‘why’, the ‘how’, and the ‘what’ of new and updated features to different audiences. This close proximity allows her to craft messaging frameworks and write in-depth content and code samples for the 4D blog and website. After graduating with an engineer's degree in Computer Science from VINCI university, Intissar worked in several startups as a software engineer. Her hands-on experience includes software specification, design, and development, user training and support, and team management.