DynamicProperty

The DynamicProperty element is a child element of DynamicProperties.

DynamicProperties can have one or more DynamicProperty children.

The DynamicProperty element has attributes. Valid attributes depend on the parent element of Form, BusinessRecord, BusinessApplication, or Database.

Syntax

   <File>
      <DynamicProperties>
        </DynamicProperty>
        </DynamicProperty>
        </DynamicProperty>
      </DynamicProperties>
    </File>

Attributes

Table 1. DynamicProperty element attributes
Attribute Options
name Property identifier, name that appears in the xml. Must be unique among all the dynamic properties. The property gets associated with the Item / Relation through name.
description Textual description of the property. Displayed in property view tooltip.
type Data type that property can hold.
initialValue Default value used when no user value is set. This is the value set when the restore button is used. The default value is not saved in the file.
dynamicContent (Form) Name of the dynamic content source if the property is dynamic. The available dynamic contents in Form Designer are:
 
databaseName
List of available databases in the project and preferences.
 
sqlTabName
List of available database tables in the current database.
 
colName
List of available columns available with the sqlTabName table in the current database
 
aggregateColName
List of available columns available with the aggregateTableName table in the current database.
 
displayColName
List of available columns available with the displayLikeTableName table in the current database.
 
validateColName
List of available columns available with the validateLikeTableName table in the current database.
 
fieldType
List of available field type (only formonly if there is no database).
 
hidden
Adds USER to true, false if the selection contains only table columns.
 
posX, posY, gridwith, gridHeight
Returns the geometry limits depending on parent geometry.
 
rowCount, colCount, stepX, stepY
Corresponding min and max (for matrices).
 
totalRows
Min and max rows for table elements.
 
expandedColumns
Deprecated.
 
masterTable
List of record implicit tables.
 
componentType
List of available web components.
 
lookup
List of lookups in the parent record.
 
srcFieldsContent
List of available record fields in relation source.
 
dstFieldsContent
List of available record fields in relation destination.
 
precision
Available precision for current qual1 qualifier.
 
scale
Available scale for current qual2 qualifier.
 
aggregatePrecision
Available aggregate precision for current aggregateQual1 qualifier.
 
children
List of available children names.
 
sibling
List of available sibling names.
dynamicContent (BusinessApplication) Name of the dynamic content source if the property is dynamic.
The available dynamic contents in BusinessApplication are:
srcFieldsContent
List of available fields in the relation source or the current item if not a relation.
dstFieldsContent
List of available fields in the destination item or the current item if not a relation.
actionContent
List of available actions in the source item or the current item if not a relation.
type
List of available types for the current element.
editorInfo
Semi-colon separated list of attribute:value pair containing the property editor information. For example,
editorInfo="contains:ButtonEdit|CheckBox
|ComboBox|DateEdit|Edit|FFImage|FFLabel
|Field|ProgressBar|RadioGroup|Slider
|SpinEdit|TextEdit|TimeEdit"
editor
Use another editor than the default one associated to the property type.
alwaysUpdate
If true, the model is modified immediately on each user action.
contains
List of values for ENUM type if not dynamic.
editMode
If true, the property editor is editable (combobox, BRQuery).
filters
For FILE type, set the browse dialog extension filter.
isDynamic
If true, the values (contains property) is computed.
range
Range of values for spinbox editor (similar to contains), two values separated with ‘|’.
label Text displayed in the Properties view.
readOnly Sets property to read only. Options are true or false.

Example

    <File extension="4fdm" isManaged="true">
      <DynamicProperties>
        <DynamicProperty name="foreignFields"  type="FIELDS"  
          label="foreignFields" initialValue="" 
          editorInfo="isDynamic:true" dynamicContent="srcFieldsContent"/>
        <DynamicProperty name="primaryFields"  type="FIELDS"  
          label="primaryFields" initialValue="" 
          editorInfo="isDynamic:true" dynamicContent="dstFieldsContent"/>
        <DynamicPropertyGroup name="relations"     
          label="Relation"      
          description="Relation properties group" 
          properties="foreignFields;primaryFields"/>
        <DynamicProperty name="canSearch"      type="BOOLEAN" 
          label="canSearch"     initialValue="true" 
          description="Allow search using Query By Example"/>
        <DynamicProperty name="canAdd"         type="BOOLEAN" 
          label="canAdd"        initialValue="true" 
          description="Allow adding items"/>
        <DynamicProperty name="canModify"      type="BOOLEAN" 
          label="canModify"     initialValue="true" 
          description="Allow modifying existing items"/>
        <DynamicProperty name="canDelete"      type="BOOLEAN" 
          label="canDelete"     initialValue="true" 
          description="Allow deleting items"/>
        <DynamicPropertyGroup name="functionality" 
          label="Functionality" 
          description="Functionality properties group" 
          properties="canAdd;canModify;canDelete;canSearch"/>
      </DynamicProperties>
      <Items>
        <Item nodeName="Relation" srcProperty="foreignFields" 
          dstProperty="primaryFields" 
          dynamicProperties="primaryFields;foreignFields"/>
        <Item nodeName="Record" 
          dynamicProperties="canAdd;canModify;canDelete;canSearch"/>
      </Items>
    </File>