AX1740
Fixed Report component for Axiom forms
Using the Fixed Report component, you can query data from the Axiom Budgeting and Forecasting for Higher Education database and display that data in a fixed-row report structure, within an Axiom form. The Fixed Report component can be used to display an income statement or any other report that uses a fixed format, including headers, subheaders, subtotals, and totals.
The Fixed Report component queries the data directly from the database, using the primary table defined in the component properties, and the column and row information defined in the associated data sources. The resulting data is not returned into the spreadsheet source file; it is only returned into the form. This provides a more efficient and performant method of displaying data in an Axiom form, as compared to querying data into the spreadsheet source file and then tagging it for display in a Formatted Grid component.
The Fixed Report component also supports the following reporting features:
-
Drilling: You can optionally enable drilling for the report. Users can drill down any data row in the report, to see the data at a different level of detail.
-
Icons and commands: You can optionally display icons in the report. The icons can be used simply as informational signals, or they can be used to trigger a command or open a designated URL. The icons can be persistent in the report, or they can display on hover only. Conditions can be defined for the icons, so that the icons only display when certain conditions are met.
-
Excel export: You can optionally enable the ability to export the report contents to an Excel spreadsheet.
-
Save-to-database: You can configure a report to allow users to edit certain column values and then save the changed data to the database.
Generally speaking, the Fixed Report component does not support user-definable formatting options. The various components of the report are automatically formatted (such as shading and borders on subtotal and total rows). This default formatting cannot be customized.
Defining a fixed report is a multiple-step process that requires the following:
-
Creation of a FixedReportConfig data source in the spreadsheet that defines the row structure of the report, including headers, subheaders, data row sections, subtotals, and totals. This process may include creation of one or more optional FixedReportSectionConfig data sources, to individually define the rows in a section, as opposed to dynamically generating the rows based on the values in a specified table column.
-
Creation of a FixedReportColumns data source in the spreadsheet that defines the columns to display in the report, as well as various display properties for those columns.
-
Placement and configuration of a Fixed Report component on the Axiom form canvas. The primary table for the query and the overall data filter are defined in the component properties.
How the sections in a Fixed Report component correspond to its various data sources
The Fixed Report component is one of several options that can be used to display reporting data in an Axiom form, along with the Data Grid component and the Formatted Grid component. For more information on the differences between these components and when to use each, see Displaying reporting data in an Axiom form.
NOTE: The Fixed Report component has special update behavior that does not follow the same rules as other form components. If you want the data in the report to change based on changes made to other components, you must be aware of this behavior and design accordingly. For more information, see Update behavior.
Data source tags: FixedReportConfig
A Fixed Report component must have a defined FixedReportConfig data source within the file, to define the row structure of the report. The tags for the data source are as follows:
Primary tag
Row tags
Column tags
This section provides reference information for each column tag. However, each row type uses the column tags differently. For more detailed instructions on how to create each type of row, see Defining report sections for a Fixed Report.
(missing or bad snippet)To use the Data Source Wizard to add the tags to a sheet, right-click in a cell and then select Create Axiom Form Data Source > Fixed Report. You can also highlight a range of data first and then use the wizard to add the tags around that data. The cells in the row above and the column to the left of the selected area must be blank in order for Axiom to place the tags in sheet.
The following example shows a sample FixedReportConfig data source tagged in a sheet:
Example FixedReportConfig data source
Note the following about this example:
Most of the data row sections in this example are configured to automatically generate the rows based on a specified Table.Column and section filter. For example, the data row section for Payroll has defined row data of
Acct.Acct;Acct.Description
, and a section filter ofAcct.Category='Payroll'
. This means that the section will be automatically populated with account-level rows that belong to the category Payroll. Additionally, instead of showing the account code on each row, the report will use the account description as the row label.The data row section for Marketing uses a data source name instead of a Table.Column. This means that the rows in this section are defined in the referenced FixedReportSectionConfig data source.
The section subtotal rows in this example immediately follow their corresponding data row sections, so they will automatically subtotal the rows in that section. In this case, it is not necessary to specify anything in the
[RowData]
field for the section subtotal rows. If instead you wanted the subtotal rows to display above their corresponding sections, then you would need to specify the data row section name as the row data for the section subtotal.On the subtotal and total rows, ID names are referenced to indicate what should be included in the subtotal and total.
The resulting report for the example data source shown above looks as follows. In this example, you can see the various headers, sections, subtotals, and totals that were mapped out in the data source.
Example row structure generated from the FixedReportConfig data source
Data source tags: FixedReportSectionConfig
A Fixed Report component can optionally use one or more defined FixedReportSectionConfig data sources within the file, to define the individual rows within a data row section. You can specify the name of a FixedReportSectionConfig data source in the [RowData]
field of a [DataRowSection]
, in the FixedReportConfig data source.
The tags for the FixedReportSectionConfig data source are as follows:
Primary tag
Row tags
Column tags
(missing or bad snippet)To use the Data Source Wizard to add the tags to a sheet, right-click in a cell and then select Create Axiom Form Data Source > Fixed Report Row Section. You can also highlight a range of data first and then use the wizard to add the tags around that data. The cells in the row above and the column to the left of the selected area must be blank in order for Axiom to place the tags in sheet.
The following example shows a sample FixedReportSectionConfig data source tagged in a sheet:
Example FixedReportSectionConfig data source
This section will contain two rows with the labels specified in the data source. The first row contains data for account 5700 and the second row contains data for account 5800. The intent of this data source is to allow you to precisely define both the label text and data for each row. It is most useful when you want to display row data that does not directly correspond with a particular grouping—for example, if you want to display row data at different grouping levels within the same section.
The following example shows the rows generated from the FixedReportSectionConfig data source (within the context of the FixedReportConfig data source shown in the previous section):
Example rows generated from FixedReportSectionConfig data source
Data source tags: FixedReportColumns
A Fixed Report component must have a defined FixedReportColumns data source within the file, to indicate the columns of data to display in the report. The tags for the data source are as follows:
Primary tag
Row tags
Column tags
(missing or bad snippet)To use the Data Source Wizard to add the tags to a sheet, right-click in a cell and then select Create Axiom Form Data Source > Fixed Report Columns. You can also highlight a range of data first and then use the wizard to add the tags around that data. The cells in the row above and the column to the left of the selected area must be blank in order for Axiom to place the tags in sheet.
The following example shows a sample FixedReportColumns data source tagged in a sheet:
Example FixedReportColumns data source
The resulting report for the example data source shown above looks as follows:
Example columns generated from the FixedReportColumns data source
You can define the following properties for a Fixed Report component.
(missing or bad snippet)(missing or bad snippet)Item | Description |
---|---|
Title Text | The title text for the component. This text displays in the title bar for the component within the Axiom form, if the title bar is enabled. |
Show Title Bar | (missing or bad snippet) |
Primary Table | (missing or bad snippet) |
Data Filter | (missing or bad snippet) |
Suppress Zeros in Data Rows | Optional. If enabled, then data rows that contain all zeroes are suppressed from showing in the fixed report. Non-key columns that meet both of the following criteria are evaluated to determine whether a row should be hidden:
If the primary table is a data table, Integer and Numeric columns on lookup reference tables are ignored—meaning these columns may have values, but the row is still suppressed if all applicable data table columns have zero values. There is one exception: reference table columns are considered if the column classification is Values and the numeric type is Currency. Calculated columns defined in the fixed report are not evaluated for this purpose and do not prevent a row from being hidden. If all rows in a particular section are zero-data rows, the associated section header and subtotal row (if present) are not automatically hidden. You can enable the separate option Hide Empty Sections to hide these items. |
Columns Data Source | The FixedReportColumns data source for the report. You must have defined the data source within the file using the appropriate tags in order to select it. (missing or bad snippet) |
Fixed Report Data Source | The FixedReportConfig data source for the report. You must have defined the data source within the file using the appropriate tags in order to select it. (missing or bad snippet) |
Component Dependencies | Optional. Specifies one or more components that the Fixed Report component is dependent on. (missing or bad snippet)For more information, see Update behavior. |
Hide Empty Sections | Optional. Specifies whether data row sections with no rows are hidden in the fixed report. By default, this option is disabled, which means that all data row sections defined in the FixedReportConfig data source are shown in the report, regardless of whether any data rows were returned for the section. If this option is enabled, then data row sections with no data rows are hidden, including any associated section header text and section subtotal row. Additionally, if all of the data row sections referenced by a Whether a data row section is considered to be empty depends on how the row data is defined:
|
Enable Row Selection | (missing or bad snippet) |
Auto Submit | Specifies whether the Axiom form automatically updates when a user selects a row in the report. This option only applies if Enable Row Selection is enabled. By default, auto submit is disabled. You should leave this option disabled if you have not enabled row selection. However, if you have enabled row selection, then in most cases you will want to enable auto submit as well. If both auto submit and row selection are enabled, then the form automatically updates when the user selects a row in the report (by clicking on it). If auto submit is disabled but row selection is enabled, then the user must use a separate Button component (or a different auto-submit component) in order to update the form for the selected row. |
Enable Excel Export | Specifies whether users can export the report contents to an Excel spreadsheet (XLSX).
When a user clicks the Export to Excel button, the contents of the report are exported to an Excel spreadsheet. Configured number formats are not preserved, but default number formatting is applied based on the column data type. The name of the exported file is the Title Text for the component, if defined. Otherwise, a system generated name is used. It is recommended to define title text for this purpose when using the export feature, even if the title bar is not enabled. The following features are not supported with the export feature:
For more information, see Exporting Fixed Report contents to a spreadsheet. |
Enable Saving | (missing or bad snippet) |
Enable Drilling | Optional. Select this check box to enable drilling for the report. If enabled, users can "drill down" a row in the report to see the data in that row at a different level of detail. The remaining properties in this section, such as Drill Button Tooltip and Drilling Hierarchies, only apply if drilling is enabled. For more information about setting up and using drilling for a Fixed Report component, see Setting up drilling for Fixed Report components in Axiom forms. |
Selected Row Filter | A filter statement representing the currently selected row, based on the row data definition. This system-controlled field is automatically populated when a user selects a row in the report. This field is only located on the Form Control Sheet, and only applies when Enable Row Selection is enabled. You can optionally reference this value when setting up form interactivity based on the selected row. NOTE: This property is only available on the Form Control Sheet; it does not display in the Form Assistant or in the Form Designer. |
Action Row Filter | A filter statement representing the icon action row, based on the row data definition. This system-controlled field is automatically populated when a user clicks on an action icon in the report. This field is only located on the Form Control Sheet. You can optionally reference this value when setting up form interactivity based on the action row. NOTE: This property is only available on the Form Control Sheet; it does not display in the Form Assistant or in the Form Designer. |
For Fixed Report components, the component-level style only impacts the external report container; it does not affect the internal report contents.
(missing or bad snippet)(missing or bad snippet)(missing or bad snippet)If Enable Row Selection is enabled for the Fixed Report component, users can select a data row in the report. The values in the selected row are submitted back to the source file, and written to the SelectedRowValue column of the FixedReportColumns data source. A filter representing the current row is also written back to the Selected Row Filter field in the Form Control Sheet.
If you want the Axiom form to respond to the currently selected row, then you must set up the file so that another component references one or more of the selected values (or the filter), and changes based on those values. For example, you could have a chart that updates to show information about the department for the currently selected row. For general information on setting up interactive components for an Axiom form, see Using interactive components in an Axiom form.
The row selection feature is the primary means of impacting the form based on user interaction in the report. However, you can also set up interactive behavior for icons displayed in the report, to execute a command when a user clicks on an icon. For more information on using actions with icons, see Using the IconConfig data source with Fixed Report components.
Example
A fixed report could display a summary income statement:
If a user selects the Revenue row, then the values in that row are submitted back to the source file and written to the SelectedRowValue column in the FixedReportColumns data source:
The filter for the current row is also written to the Selected Row Filter in the Form Control Sheet:
There are a number of ways that the form could respond to the selected value in the report. For example, you might want to display detailed information about the selected row in a chart. The chart would need to be set up with formulas that look to the appropriate cells of the SelectedRowValue column (or to the Selected Row Filter field), so that the data in the chart changes based on the currently selected value.
Creating column groups for the report header
(missing or bad snippet)Using sign reversal for variance columns
You can perform sign reversal on certain calculated columns in a Fixed Report component, on a section by section basis. This is intended for cases where the column contains a variance calculation, and the variance needs to be shown differently for different sections in the report. For example, when comparing budget to actuals in a report, you may want revenue sections to show positive variance (Actuals-Budget) while expense sections show negative variance (Budget-Actuals).
Sign reversal can be enabled using the following columns in the FixedReportColumns data source and the FixedReportConfig data source:
For calculated columns where you want to enable sign reversal, enter
True
into the[IsVarianceColumn]
field of the FixedReportColumns data source.Then for each section where you want the sign to be reversed, enter
True
into the[InvertVarianceColumns]
field of the FixedReportConfig data source. You can enable this option on[DataRowSection]
rows to reverse the sign on all data rows in the section, including the associated section subtotal row (if present). If you want to reverse the sign on separate[Subtotal]
or[Total]
rows, you must separately enable the option on those rows.In this example, the variance calculation is defined as Budget-Actuals, so the sign reversal should be performed on the Revenue section and on the Net Income total row. If instead the variance calculation was defined as Actuals-Budget, then the sign reversal should be performed on the Expenses sections and their separate subtotal.
The Fixed Report component in this example looks as follows:
Designating certain rows as "contra accounts"
You can optionally designate certain rows in a data row section as "contra accounts," so that the row values are subtracted from the section subtotal instead of added. This feature can be used to accommodate a section that contains both debit and credit accounts.
Contra account rows also have special treatment in calculated columns designated as variance columns using [IsVarianceColumn]
. If a row is designated as a contra account within a data row section, the variance column value for that row is inverted (meaning the number sign is reversed). Additionally, if the variance column is itself inverted using the [InvertVarianceColumns]
property, then the inverted contra value is inverted again (so that it continues to use the opposite sign of non-contra rows).
Dynamic data row sections
When configuring a dynamic data row section, you can designate contra account rows by defining a conditional expression within the [RowData]
syntax. Any row in the section that matches this expression is flagged as a contra row and subtracted from the section subtotal. The [RowData]
syntax supports an optional fourth parameter for this expression:
ValueColumn;LabelColumnOrDisplayFormat;SortColumn;ContraExpression
For example, the following configuration creates a data row section showing fixed asset accounts. Any account with C
in the Acct.Credit column is subtracted from the section subtotal.
Fixed data row sections
When using a fixed data row section, the FixedReportSectionConfig data source supports an optional column tag of [IsContraAccount]
. If a row is flagged as True in this column, that row will be subtracted from the section subtotal instead of added. If the column tag is not present, or if a row is blank or flagged as False, it is treated as normal and added to the section subtotal.
The following screenshot shows the Non-Interest Income row in the previous example being subtracted from the section subtotal.
Treatment of pre-aggregation calculations for contra account rows
Pre-aggregation calculations have special treatment on subtotal rows. Instead of applying the calculation to the subtotal, the values in the column are added. Pre-aggregation calculations are treated as follows for contra account rows:
- If the calculation is not a variance column, then the calculation is treated the same way as normal columns on the row—meaning, the contra values are subtracted instead of added.
- If the calculation is a variance column, then the sign on the calculated value is reversed, and the contra values are still subtracted instead of added.
- If the calculation is an inverted variance column, then the reversed sign on the calculated value is reversed again, and the contra values are added instead of subtracted.
PDF design considerations
The following design considerations apply when generating a PDF of an Axiom form with a Fixed Report component:
The report is automatically extended to show all rows in the PDF. It does not matter which rows are currently visible in the form.
Report columns are resized to fit the component width in the PDF, regardless of their configured column size. If the columns exceed the page width, the remaining columns are omitted from the PDF. You should set the PDF page size and orientation as needed to fit the columns. For example, a wide report with many columns should be set to Landscape.
Header groups are all shown in the same shade of gray in the PDF, instead of the varying shades shown in the report.
Any unsaved edits made to editable columns in the report are not reflected in the PDF. The PDF displays the data as it was originally queried.
Design alternatives
The Fixed Report component is designed to handle a very specific purpose, to display reporting data using a fixed-row format. If the fixed-row format is a requirement, but you need more flexibility in the report design, you can use a Formatted Grid component. For example, you might use a Formatted Grid component in the following cases:
When you need to use more advanced data query configurations or features. You can use Axiom queries to bring data into the source file, and then use the Formatted Grid component to display that data in the form.
When you need to provide more advanced user input controls and save-to-database options. Formatted Grid components support many options for editing data.
When you need the ability to format the report contents at a more granular level. Formatted Grid components support a variety of formatting options to format grid contents, including fonts, colors, and borders.
If the fixed-row format is not a requirement, and you want users to be able to have more features to explore data, then you can use a Data Grid component. The Data Grid component provides built-in sorting, filtering, and grouping tools.
Video: How to create a fixed report in an Axiom form