Templates are like variables in your form that will be replaced with the actual values users enter into the form during use. Templates make your form feel more interactive and are useful in summarizing information in collapsed section controls. Templates can be used in the form designer in the following control properties:
- Labels
- Hints
- Help
- Error Msg
[[image:Template_LabelHintHelp_UseAll.png]]
Templates can also be used in:
- Business Rules
- Form Actions
- Doc Actions
- Display Messages
- Email Action
- Form Url Parameters _data
See the sections on [[V4_Integration | integration]], [[V4_Using_Forms | Testing & Using forms ]] and [[V4_Using_Forms#Url_Template_Variables | Url Template Variables]] for more details on these other uses.
Templates have the syntax: {<control name>}. For example, this form contains three controls labeled "Apples", "Oranges" and "Pears". The controls are named "Q1", "Q2" and "Q3" respectively and would be referenced in a template as {Q1}, {Q2} and {Q3}.
Templates can have default values. The syntax is {<control name>=<default>} For example, this form also contains a controls labeled "Total Items in Cart" which is named "T". A template {T=0} would resolved to the value "0" when the field named T is empty otherwise it would resolve to the entered value.
[[image:Template_LabelHintHelp.png]]
The Shopping Cart section control contains templates its Label, Hint and Help.
[[image:Template_LabelHintHelp_PropSettings.png]]
The Help property contains this text:
Code Block | ||||
---|---|---|---|---|
| ||||
You have {T} items in your cart.<br/>
{Q1=0} Apples<br/>
{Q2=0} Oranges<br/>
{Q3=0} Pears |
Before the user starts entering values into this form they will see:
[[Image:template_HelpHint1.png]]
As a user begins entering values into the form fields, the templates will immediately begin appearing, and the user will see:
[[Image:template_HelpHint2.png]]
Repeat Controls
The template syntax is extended for controls inside repeats. The name of the repeating control must be proceeded with the '|' character. For example if you have a control name Phone inside a repeat, the template must be written as {|Phone}. The result of this template is to output the list of all phone numbers items entered into the form.
The syntax also allows for a optional separator. If you would like to get the list of phone number items separated by ", " (comma and space), use the following template: {, |Phone}. Other examples are {|Phone}, {,|Phone}, { |Phone}. The 1st template lists all the entered phone numbers with no separator. The 2nd uses a comma and the 3rd a space. If you used these three in a form's Doc Action Display Message and two phone numbers were entered 203.208.3117 and 203.208.3118 you would see this output for those three templates:
Code Block | ||||
---|---|---|---|---|
| ||||
203.208.3117203.208.3118
203.208.3117,203.208.3118
203.208.3117 203.208.3118 |
Another example is {<br/> |Names} for a control named Names inside a repeat you would see the output:
Code Block | ||||
---|---|---|---|---|
| ||||
Joe
Nancy
James |
Repeat Item Labels
It is very useful to use templates with repeat controls. Imagine a long list of medications that appear on the form in a collapsed state. It is helpful if the section labels are not simply a static text such as "Medication" but rather dynamic and indicative of the values entered into the form.
[[image:Template_LabelHintHelp_Repeat1.png]]