Dynamic Forms and the Data Backbone

The Dynamic Forms refer to Fields within Field Sets to present questions and store answers.

The DATA keyword indicates the Data Structure variable that should be used scope in the Data Backbone where Field Sets are located.

FORM  
 NAME "<name>"  
 DATA <data structure>

If the <data structure> is a path into a subnode, the Template searches for Field Sets in reverse order through this path. The path can refer to elements within arrays to indicate specific nodes in the Data Structure.

FORM  
 NAME "Invoices\CustomerData"  
 DATA _data

The preceding example uses the top-level Field Sets in the Data Backbone.

FORM  
 NAME "Invoices\CustomerData"  
 DATA _data.Company.Relations[4]

The receding example searches through the Data Backbone in the following order:

  1. Field Sets in the 4th Data Structure in the _data.Company.Relations array.
  2. Field Sets in the _data.Company Data Structure.
  3. Top-level Field Sets of the Data Backbone.

If a Field Set could not be located a run-time error is reported.

If the DATA keyword is omitted Field Sets will be located in the scope of the FORM statement and the scopes of callers.

FIELDSET Customer 
FORM  
 NAME "Invoices\CustomerData"

This statement looks for the Field Set Customer in the scope of the FORM statement and does not refer to data from the Data Backbone.