Component Overview


Learn about the various components of the embeddable Ad Hoc Report Creator client and how to create your own Ad Hoc report.

The Pull Reports™ Ad Hoc Report Creator is a HTML5 and JavaScript client of the Pull Reports REST API which allows users to create ad hoc reports and data exports. The Ad Hoc Report Creator embeds in any HTML page and displays the following primary components.

Figure 1. The user interface components of the Pull Reports™ Ad Hoc Report Creator
The user interface components of the Pull Reports™ Ad Hoc Report Creator


The header displays the current <report> name along with controls to navigate between reports.

A. Report name

From the <report>'s name attribute.

B. Switch report

Allows the user to change the <report> available within the creator. Only displayed if there is more than one <report> available.

C. Full Screen

Toggles the creator between normal and full screen mode.

Press the Full Screen button or the Escape key to exit full screen mode.

Navigation Tab: Tables

The Tables Tab presents the <report>'s tree graph of related <table>s and the <column>s available within each table. Additionally, the Tables Tab has controls to add columns to the Export Report REST API result, filter columns, and view catalog configuration metadata.

The Tables Tab focuses to one table within the tree graph at a time. Navigate to a different table from the Related Tables panel or via the Join Path navigation bread crumbs.

A. Table display name

From the <table>'s displayName attribute.

B. Join path breadcrumbs

The table resource path of the current <table>. Click the path elements to focus the <table>.

Columns Panel

The Columns Panel lists the <column>s of the currently focused table and provides controls to add columns to the Export Report REST API export, create filters, and view metadata.

A. Column label

Click or drag column labels into the Results Preview to add them to the export results. Clicking a label adds the column as the last column in the Results Preview. Dragging a column allows the column to be precisely positioned. The column labels are taken from the <column>'s displayName attribute.

When the column is included the export results, a check icon is displayed to the right of the column name. Shift+click a column label to remove that column from the Results Preview.

B. Add filter menu item

Select the Add filter menu item to open the Filters Tab, Create Filter form with the column pre-selected.

C. Metadata menu item

Select the Metadata menu item to view the <column> metadata such as the description, id, and paramType. Clicking the Metadata button again closes the metadata.

D. Add all button

Click the Add all button to add all exportable columns from the focused table to the end of the export results.

E. Column order toggle

The Column order toggle button toggles the column order between alphabetical (the default) and the order in which the <column>s are listed within the <table> catalog configuration.

F. Non-exportable columns

Any columns attributed as export='false' are listed separately. They may not be added to the export results.

Description Panel

The Description Panel displays the focused <table>'s description.

A. Table description

The description is taken from the <table>'s <description> element.

Navigation Tab: Search

The Search Tab supports full text searching of <table> and <column> displayName attributes and <description>s. Tables and columns within the search results contain controls to add columns to the export result and create filters.

A. Table search result

Table search results contain the same controls for adding the table's columns to the export result, filtration, and metadata viewing as does the Tables Tab, Related Tables Panel.

B. Column search result

Column search results contain the same controls for adding the column to the export result, filtration, and metadata viewing as does the Tables Tab, Columns Panel. Additionally, the column's parent table name and path display below the column control to provide additional context.

Navigation Tab: Filters

The Filters Tab supports creation and editing of filter parameters to be applied to the Export Report REST API export.

Normal Mode

Normal mode: A. Filter indicator

The Filters Tab reflects the number of filters applied to the Export Report REST API export as a superscript to the Filters label.

Normal mode: B. Add Filter button and Add filter drop zone

Click the Add Filter button to create a new filter to be logically AND'ed together with other filters.

Alternatively, drag a column header from the Results Preview to the Add filter drop zone to create a filter on the <column>.

Normal mode: C. Existing filter

Each filter term's column, operator, and value information display within the Filters Tab with accompanying Edit and Remove buttons. Multiple filter terms within the same filter are logically OR'ed together. Multiple filters are logically AND'ed together.

Click the hyperlinked table name within a filter term to focus the table within the Columns Tab.

Normal mode: D. Add OR term button

Click the Add OR term button to create a new term to be logically OR'ed to the existing terms in the filter.

Normal mode: E. Pre-filter

Any <pre_filter>s applied to the report display as non-editable filters with a lock icon instead of edit controls.

Create/Edit Mode

Create/Edit mode: F. Table selection

Drop down list of the <table> elements available for filtration.

Create/Edit mode: G. Column selection

Drop down list of the table's <column> elements available for filtration based on the selected table.

Create/Edit mode: H. Operator selection

Drop down list of the filter operators available based on the selected <column>'s paramType.

Create/Edit mode: I. Value

User supplied value for the filter if applicable for the selected operator.

For <column>s with a child <label_value_list> element, the user will be able to select one or more of the pre-defined values from a select list.

Create/Edit mode: J. Save buttons

Click the Save button to persist the filter term but not apply the filter criteria to the Results Preview. Use the Save button when creating multiple filters to prevent unnecessarily refreshing the Results Preview. Then use the Results Preview Refresh button to refresh the preview after completing all filter configuration.

Click Save & Refresh to both persist the filter and refresh the Results Preview.

Results Preview

The Results Preview displays a limited preview of the export results and contains controls to export the report to any export format. By default, the Results Preview displays the first 10 records within the exported report.

A. Refresh

Refreshes the export results from the database.

The Refresh button turns dark blue to indicate that the current export results are stale due to the creation or editing of a filter or addition of a new column.

B. View mode buttons

Toggles the Results Preview between table and map view. The View mode buttons are only available if the <report> may be exported to the geojson format.

C. Pagination

Allows paging through the available export results. The total number of results displays red if it exceeds the configured

D. Limit

Determines the number of preview results displayed at one time.

E. Distinct checkbox

Toggles the distict export parameter. See the distinct parameter example usage documentation in the REST API guide for more information.


Displays the Structured Query Language (SQL) and query parameters to be used when creating the report export.

The SQL button is visible when the configuration property is true for the report and the current user is permitted to request the GET Export SQL endpoint.

G. Export format

The export format select list displays the available export format parameter values. The Export button exports the full report to a new browser window in the chosen format.

The Export button turns red and becomes disabled if the total number of results exceeds the configured

H. Export link

The export link button reveals the Export Report REST API URL that will be invoked when the Export button is clicked.

I. Table cell header

Table cell headers are above adjacent columns within the same table. Re-position all columns under the header by dragging the table cell header to the left or right. Click the remove button to remove all columns under the header from the export results.

J. Column cell header

Column cell headers are above each column. Re-position a column by dragging the column cell header to the left or right.

K. Sort indicator

Column cell headers display an ascending or descending indicator if the respective sort is applied to the column.

L. Column cell header controls

Click the Column cell header remove button to remove the column from the export results. Click the Column cell header menu button to display additional controls for column sorting, filtering, and positioning.

M. Filter indicator

Column cell headers display a filter icon if the column is used within a filter.

N. Cross join indicator

The cross join indicator displays within a table cell header when the table contributes to a cross join in the report export. Cross joins happen when multiple tables in a to-many join relationship to the base table are included in the report export without a join condition.

Clicking the indicator button opens a dialog which explains the cross join and possible courses of action.

O. Column hyperlinks

<column>s with a child <url_template> element have hyperlinked values.