Guides/ReportDesign/14.0-Izenda-FORMS.md
... ...
@@ -104,8 +104,44 @@ Caution is recommended when designing nested sub-reports and forms. When you ca
104 104
105 105
The flexibility of nesting reports and forms is most desirable for many small cases, in which sub-reports only exhibit a very small performance hit. Complex or multi-level nested reports may experience significant performance issues; in these cases it is best to find a way to achieve your goal without using sub-reports.
106 106
107
+### Subreporting and Forms
108
+
109
+There are two ways to call a subreport in a Form: the single bracket method and the double bracket method.
110
+
111
+#### Single Bracket
112
+
113
+The single bracket method of subreporting is simply the same [[subreporting method|/FAQ/Questions/sub-reports-and-drilldowns]] used outside of Forms, in a default tabular report. A field is assigned to a subreport and passes the value from one cell at a time to that subreport. Since this field is called as a normal field, with a set of single square brackets like [FieldName], we call this the single bracket method. Linked subreports are accessible in forms, as are embedded subreports. It is also possible to pass multiple keys from a form to a subreport, but when doing please make sure that all of the values being passed to the subreport are being drawn from the same repeater-level of the form: in other words, you cannot pass a primary drilldown key from the top level of a form, and a secondary drilldown key from within a repeater!
114
+
115
+All standard rules of subreporting apply to Forms as well as default tabular reports. You can have as many subreports as you have fields, and each field can only target a single subreport. The URL feature on the Advanced Field Settings is also accessible on a form, and behaves the same as a subreport with the link(new window) behavior.
116
+
117
+#### Double Bracket
118
+
119
+The double bracket method is exclusive to Forms. This method calls an entire report by placing the full report name in double square brackets, for example: [[MyCategory/MyReportName]]. When using the double bracket method, values are selected and passed from parent to child using filters. Filters must be defined and populated on the parent report, and the child report will inherit those filters. This is a requirement to make the double bracket method work - it is not possible to simply import an entire report into a form without any sort of control over which values are returned.
120
+
121
+#### Single Vs. Double
122
+
123
+There is no clear advantage to using either method. The single bracket method is useful for invisibly passing drilldown values, passing different sets of values to multiple reports, and designing reports that do not require user input to pass values. The double bracket method is useful for passing the same set of values to a number of subreports, or filtering a parent and child report with the same values.
124
+
125
+### Toolbar
126
+
127
+#### Fields
128
+
129
+This dropdown allows the user to insert any field from the currently selected data set. This is the same as if the user had typed the name of the field in square brackets, but is accessible from within the Forms designer.
130
+
131
+#### Columns
132
+
133
+This dropdown allows the user to insert any field from the Izenda fields tab. This is the same as if the user had typed the name of the column as defined in the Description box for a given field. The difference between a field and a column is that a field is drawn directly from the database, whereas a column is drawn from Izenda's field list on the Fields tab and thus can be modified through aggregation, formatting, an expression, etc.
134
+
135
+#### Subreports
136
+
137
+This dropdown allows the user to select any report visible to them in the current environment which has a drilldown key defined. Subreports will be inserted using the double bracket method, meaning that the entire subreport will be called and will be controlled using filters. Single bracket subreports can be placed using the Columns dropdown.
138
+
107 139
### Smart Tags
108 140
141
+#### Filters
142
+
143
+The Filters smart tag allows the user to place a string or set of strings on the form which describes the currently active filters. In order to use this tag, the "Show Filters in Report Description" box on the Filters tab must be checked. The Filters tag simply reproduces that text, but at a custom location on the form.
144
+
109 145
#### Date
110 146
111 147
The Date smart tag allows the user to place a timestamp on the form. This timestamp will be the current system time as of the moment the form is rendered.