Desktop User Guides > Reporter > Tabulating hierarchical data > The base in grid tables

The base in grid tables
The grid tables Understanding grid tables, show that, unlike a standard table, there is either a base row or column, but not both. Specifically, the base is shown when the rows or columns are created from the variable inside the grid and not when they are formed from the iterations. The base is calculated in both the rows and columns, but it is not displayed for the iterations, because it can be confusing. To illustrate how the base for the iterations works, we will look at some tables that show this base. These tables were created using UNICOM Intelligence Reporter because in UNICOM Intelligence Reporter, you cannot show the base for the iterations.
Here is a table for which the results have been generated at the default level (the level above the grid, in this case, vehicle), which shows the base on both sides of the table:
Table with results generated at default (vehicle) level When the results for this grid table are generated at the vehicle level, each cell shows the number of vehicles for which the given category was chosen in that iteration. In other words, in this table each case is a vehicle. The base therefore shows the total number of vehicles.
Now look at the same table when results are generated at the grid level, which in this example is the rating level (the header displays the level as "Features" because this is the description text for the rating grid):
Table with results generated at grid (rating) level When the results are generated at the level of the grid, each cell shows the number of responses for the given category in that iteration. This means that in this table each response to the rating question in each iteration is a case. The base therefore shows the total number of responses in all of the iterations. However, because each iteration was asked once for each vehicle, the number of cases in all the other cells is the same as in the table where results were generated at the vehicle level.
Setting up bases for grid iterations
The following example demonstrates how to setup bases for grid iterations to include all respondents. The base expressions includes a higher-level question that forces the base to include null values:
double[0..100] precision(5) scale(1) axis("{base1 'Base' base() [IsHidden=True], b 'Base' base('^.Respondent_Number is not null')
[IsHidden=True], s 'Sum [Hidden]' sum(Grid_AE[{..}].AE) [IsHidden=True], m 'Mean' derived('@1 / @2') [Decimals=1]}");
By default, null iterations are omitted because they can hinder performance. The EvaluateEmptyIterations custom property must be applied to the grid in the metadata in order to override the default behavior. For example:
Grid_AE "Attitudinal equity score"
[
EvaluateEmptyIterations = true
]
loop
When EvaluateEmptyIterations custom property is set to true, all iterations, including empty iterations that do not exist in the CDSC, are returned.
See “Custom properties in use in UNICOM Intelligence products” in the UNICOM Intelligence Developer Documentation Library for more information about custom properties.