Skip to end of metadata
Go to start of metadata

ClientUI Reporting is a full-fledged XAML reporting engine which includes a powerful C# style scripting support for the most demanding business reports. Designed from the ground-up, ClientUI Reporting has the power and flexibility you need to produce great-looking reports. It also feature blazing-fast rendering performance, great usability and superior user experiences.

The following chart illustrates the overview of ClientUI Reporting architecture.

On this page:

The following sections explains the basic structure and concepts behind ClientUI Reporting. With a better understanding on how it works, you can create a business report easier.

Report Document

Report document is the main object model of ClientUI Reporting, as it contains all properties needed to customize the look, feel, and behaviour of a report. You can easily define it using XAML or programmatically through code. To learn more about report document, see Report Document Overview.

Report Page

Report page is used as a container for all components and bands of a report. A report document can contain single or multiple report pages. To learn more about report page, see Report Page Overview.

Report Bands

ClientUI Reporting introduces a variety of report bands to be used in a report. Each type of report band has its own unique capabilities, defining how to render report components that belong to it. To learn more about report bands, see Report Bands Overview.

Report Components

ClientUI Reporting introduces a variety of report components to be used in a report. Each type of report component has its own unique functionalities, displaying specific information in a report, such as text, image, checkmark, panel, shape, barcode, etc. To learn more about report components, see Report Components Overview.

Data Provider

ClientUI reporting is an entity-based data source, so you can use any objects – a simple POCO object or a complex domain model object – as the report's data source. Report data provider is used here to supply data which is needed in a report according to the defined data definitions. Actually the data definitions contains information about the object data sources and parameters needed in a report. To learn more about report data provider, see Data Provider Overview. To learn more about data definitions, see Data Definitions Overview.


ClientUI Reporting introduces styles to be used in a report. Style contains common properties that can be shared among the report components in a report document. Style can be used to maintain consistency and also minimizes redundant code in XAML files tremendously. For more information about styles, you can refer to Styles Overview.


ClientUI Reporting introduces a c# style scripting which allow you to write code and execute it at runtime when a report is generated. Backed with powerful scripting engine and it's comprehensive capabilities, almost all of business scenario can be achieved easily by using scripting. To learn more about scripting, see Scripting Overview.


ClientUI Reporting introduces scriptable events to be used in a report. You can intercept or perform custom logic when the events are fired. To learn more about events, see Events Overview.

Unit Measurement

Most sizes in report document re measured in the same units of measurement. In general, ClientUI Reporting supports several units of measurement to be used in the report, such as Centimeters, Hundredth of Inch, Inches, and Millimeters. To learn more about unit measurement, see Unit Measurement Overview.


Bookmarks are used to show the report's structure in a tree-like form. It can be seen through the bookmark browser in the ReportViewer. To learn more about bookmarks, see Bookmarks Overview.


ClientUI Reporting allows you to use hyperlink in a report. You can easily jump to each report section or navigate to specific web address by clicking on it. To learn more about hyperlink, see Hyperlink Overview.


ClientUI Reporting allows you to visualize data using chart in a report. You can utilize over 30+ built-in chart types depending on the data you are working with. To learn more about chart, see Chart Overview.