Report controls can either display static information or dynamic data fetched from the bound database. Data-bound controls are indicated by a yellow database icon in their top-right corner, both in the Design Panel and Report Explorer.
To embed dynamic information to a report, if this information is contained in the report's data source, this can easily be done using one of the following approaches:
- Using the Field List
- Using the Smart Tag
1. Using the Field List
- To bind an existing report control to a data field, click the required field item in the Field List, and then drag and drop it onto the control. The yellow database icon inside it will indicate that it's been successfully bound.
- To add a new data-bound control, simply drag the required data field from the Field List onto a report band. This will create a Label bound to this data field.
- A more flexible way to create data-bound elements is to right-click a Field List item, and then drag and drop it onto a report. This will invoke the Context Menu, where you can choose which control should represent your data, and it will be automatically created and bound to the selected data field.
2. Using the Smart Tag
Click a control's Smart Tag and in the invoked menu, select the required field from the Rtf Expression drop-down list.
3. Special Capabilities
After a control is bound, you can apply formatting to its dynamic content e.g. for it to be treated as currency, or date-time content.
It is possible to make a control display a result of a summary function calculated across the data field to which it is bound.
See Add Totals to a Report for more information.
If it's required to perform some pre-calculations over the data field to which a control is bound, this can be done by creating a calculated field, and binding the control to it.
See Add Calculated Fields to a Report for more information.
In turn, a calculated field may contain both dynamic and static parameters, which can be requested each time a report is being previewed.
See Add Parameters to a Report for more information.