Search This Blog

Monday, July 29, 2013

Developing the new Reports module

You are probably aware that we have a very popular feature request for our XAF Reports module:

Reports - Make it possible to easily use XtraReports designed in Visual Studio.

It is primarily about allowing you to easily reuse regular XtraReports created in Visual Studio in an XAF application

I must say that nothing has already prevented you from displaying regular reports in XAF in exactly the same way as you would do in a non-XAF app, but of course the XAF reporting is not only about that: our built-in module also integrates reports into the application navigation and menu systems, enabling end-users to create reports at runtime and store them in the database, adds the Show In Report command to list and detail forms, as well as adding many other features requested by our customers.

I wanted to inform you that the aforementioned request is planned for version 13.2, and we are currently working on it.

Here is a very short overview of the new features:

1. You can create a regular XtraReport in Visual Studio and connect it to a special XAF reports data source dragged from the Toolbox;
2. There are two main XAF report data source types: CollectionDataSource and ViewDataSource.
The CollectionDataSource is very similar to an XPCollection, while you can think of ViewDataSource as an XPView component, allowing you to specify and load only required data properties or aggregated calculations instead of the whole objects hierarchy. The latter part is new for XAF reporting and is also something that was requested in the past by many customers, because it can help you achieve a better performance and less memory consumption for large and complex data models.
3. You can configure data type, sorting and filtering options for these data sources at design time and XAF will connect it to the corresponding data from your app at runtime.

We decided to create a  new module to avoid breaking changes for existing customers, which means that existing XafReports will work as expected in the new version and can coexist in the same application with the new reports:

Feedback is needed!
Please let me know whether you like these features. Also, which features you want to see in the new module?


  1. Will it be possible to designate one of the new type reports as an "in place" report, as we do now with reports created in XAF?

  2. >>You can configure data type, sorting and filtering options for
    >> these data sources at design time
    I would expect sorting and filtering also to be available at run-time, or did I miss something?

    1. @Martin: Yes, this should be available at runtime as well.

  3. @DryHeat: Yes. In general, all typical features of the former reports module should be there as well.

  4. This comment has been removed by the author.

  5. According to plan a CTP or Beta version of this module should be out in early December. Thanks!

  6. I'm sorry, I accidentally deleted my comment. My client can't wait till December. Anyhow, will this support web applications?

  7. Yes, it will support Web apps. Generally this module will support most of the features of the existing Reports module.