processing Element Overview
The Processing element specifies the configuration settings that will be applied during the processing of the report.
<processing>
element
Attributes |
|
Child elements |
|
Parent element |
Telerik.Reporting - specifies the root element of the Telerik Reporting configuration settings. Only one <processing> element can be used in the Telerik.Reporting element. |
Example
XML-based configuration file:
JSON-based configuration file:
CacheDefinitionProperties
We provide a mechanism for caching the report definition properties that boost the performance. Naturally, it prevents modifying the report during the processing stage. The default value of the property is True.
The Report Events are not intended to be used to modify the report definition, as explained in the Understanding Events article. For that reason, in R3 2016 (10.2.16.914) for performance reasons, we introduced a change - cacheDefinitionProperties
which caches the report definition properties, so such modifications are not respected. Setting the cacheDefinitionProperties to false will skip the definition item properties caching, which will allow the report definition to be changed in the report events. This may result in a performance penalty though.
Starting with R3 2022 SP1 (16.2.22.1109) CacheDefinitionProperties
was exposed as a Report definition property in the ReportEngineSettings
properties collection, so that you may specify it per Report. The property value may be set to Default
, True
, or False
. The Default
, which is the default value, lets you specify that the Reporting engine should respect the cacheDefinitionProperties set in its configuration on the project level.
Graphics Engine
The graphicsEngine element was introduced with the Skia graphics engine in R3 2023 (17.2.23.1010). It sets the graphics engine used for processing and rendering the reports. There are two implementations of the graphics engine: GDI-based and SkiaSharp-based. GDI is not supported on non-Windows platforms for applications that target .NET 7 or higher. Skia implementation has cross-platform support. The active implementation is determined by the value of the engineName element which corresponds with the members of the Telerik.Drawing.Contract.GraphicsEngine enumeration.
If the graphicsEngine element is not present in the configuration file, the PlatformDependent value will be used. Skia implementation is not available in applications that target .NET Framework. They can only work with the GDI graphics engine.
<graphicsEngine>
element
Attributes |
engineName – required string attribute. Determines the type of the Telerik.Drawing.Contract.GraphicsEngine used in the application. Available values:
|
ResourceResolver
resourceResolver element allows to alter the default resource-resolving mechanism. This element determines which implementation of the Telerik.Reporting.Interfaces.IResourceResolver interface will be used by the processing engine to resolve the resources that are specified in the report definition. Such resources are:
- Images used by Telerik.Reporting.PictureBox and Telerik.Reporting.CheckBox report items, referenced by a relative path.
- Elements from report's Telerik.Reporting.Drawing.ExternalStyleSheet collection, referenced by a relative path.
- Source property of Telerik.Reporting.CsvDataSource and Telerik.Reporting.JsonDataSource report items, referenced by a relative path.
This ResourceResolver is intended to be used in scenarios where the resources are not retrieved from a local file path but rather obtained from a different type of storage. As an example, Telerik Report Server persists its assets in storage that can be file-based or can use an MSSQL or Redis database as a backend. Processing a report definition that has relative paths to its resources would not work in this scenario unless the necessary resources are not placed in folders relative to the root of the Telerik Report Server web application. The custom resource resolver can be used here to provide specific logic that will retrieve the necessary resources as byte arrays using the resource identifier from the report definition.
<resourceResolver>
element
Attributes |
provider – required string attribute. Determines the provider type of the ResourceResolver instance. Only two types are supported:
|
Child elements |
parameters – specifies a collection of parameters for the resource resolver in the <resourceResolver> element. Only one parameters element can be used in the <resourceResolver> element.Supported parameters for path provider
|
Parent element | processing - specifies the parent element of the Telerik Reporting configuration settings. |
SharedDataSourceResolver
sharedDataSourceResolver element allows to alter the default shared DataSource(.sdsx
)-resolving mechanism. This element determines which implementation of the Telerik.Reporting.Processing.Data.ISharedDataSourceResolver interface will be used by the processing engine to resolve the shared DataSources references that are specified in the report definition.
This SharedDataSourceResolver is intended to be used in scenarios where the .sdsx
files are not retrieved from a local file path but rather obtained from a different type of storage. As an example, if a custom Telerik.WebReportDesigner.Services.ISharedDataSourceStorage is implemented where the .sdsx
files are stored in a database, then a custom SharedDataSourceResolver
would be necessary to provide specific logic that will retrieve the .sdsx
XML from the database and will then Deserialize it to an instance of the Telerik.Reporting.DataSource class and return it in the Resolve
method.
<sharedDataSourceResolver>
element
Attributes |
provider – required string attribute. Determines the provider type of the SharedDataSourceResolver instance. Only two types are supported:
|
Child elements |
parameters – specifies a collection of parameters for the resource resolver in the <sharedDataSourceResolver> element. Only one parameters element can be used in the <sharedDataSourceResolver> element.Supported parameters for path provider
|
Parent element | processing - specifies the parent element of the Telerik Reporting configuration settings. |