Using aggregated tables in data sources containing large data-sets will degrade performance. In Reportal, performance is improved by caching the data-sets used by the tables, and in View mode all tables are cached by default (tables are not cached in Preview mode).
Performance of affected tables can however be significantly improved. It is possible to explicitly enable caching for scripted tables by adding the following code to the table script:
table.Caching.Enabled = true;
table.Caching.CacheKey = "X"; //can use any string value
This code will function for most scripted tables. The table cache will then take into account any context that may affect the table, for example filters, report base, parameters and benchmark, and will cache different versions of the table for every variation of these. So even if the script modifies these properties, caching can still be enabled.
The table.Caching.CacheKey property can be used if you want to explicitly control the cache criteria for a table. This might be useful if the table is likely to vary by factors other than the properties mentioned above. Note that this property is not optional, so it must be set to a string value even when it is not used. The same value can be used for all tables.
To check whether caching will function for a table, enable caching and verify that the table dynamics (for example report base, filters, drilldowns etc.) still function correctly in View mode.
Note: It is possible to disable caching by setting table.Caching.Enabled=false in the table script.
Important
Caching should be used whenever possible as it will improve performance and take load off the system.