If you’re currently a Crystal Reports user in search of a more convenient .NET reporting tool, FlexReport's one-click migration requires less effort to modify the report definition to obtain desired output. Report subsections, a popular feature among Crystal Reports users, have been a primary focus in our Crystal migration development.

What is a Subsection?

Subsections—also known as “nested” or “child” sections—allow us to further break down the report, which is especially helpful when working with long reports.

Why are report subsections useful?

In other reporting tools, users often loses subsections; they’re combined into a single large section post-migration. That’s a frustrating experience, since subsections provide a number of advantages.

  • Improve your coding experience
    • Hide visual noise when you’re working on a different section
    • Work in smaller code chunks
  • Provide additional user interactivity, such as by expanding and collapsing sections of a report
  • Hide or show data depending on the user of the report

Which tool should I choose for migration?

Please note that while subsections are supported in FlexReport, some changes may be required upon migration, depending on other features used in the subsections, like conditionally showing or hiding a subsection. In some cases, subsection names will be different in FlexReport. Let’s look at migration of some Crystal Reports.

Sample Crystal Report Subsections

Use Case 1: Basic Report Subsections

Let's take example of importing a sample Crystal Report - Accessibility.rpt. The report looks like this in Crystal Report Designer: Crystal Report Detail Sections in Designer Crystal Report Detail Sections in Designer The report has a Detail section that is divided into two Subsections: “Details A” and “Details B”. While Details A shows the Credit Authorization Number and Amount with Labels, Details B section shows only the Field values.

Migrating Accessibility.rpt to FlexReport

Migrating a Crystal Report to FlexReport is a one-click step.

  • Open C1FlexReportDesignerApp.exe.
  • Go to File > Import
  • Choose Accessibility.rpt Crystal Report.

That's it. Your Crystal Report will be converted to Accessibility.flxr FlexReport. You’ll observe that both subsections of Detail section are preserved and named as Detail/DetailSection1 and Detail/DetailSection2. Also, the contents of the subsections are placed in the respective subsections same way as they were in Crystal Report. So you won’t have to make any efforts to rectify the report contents. Accessibility Report in FlexReport Designer Accessibility Report in FlexReport Designer The only exception is that in Crystal Reports, both Details A and Details B subsections are displayed on the basis of the parameter value entered by the user. While such behavior is supported in FlexReport, the current migration tool does not convert the script used in Crystal Report. This is one area where you’ll have to add additional script to generate the desired output. Accessibility report output in Crystal Reports Accessibility report output in Crystal Reports Accessibility Report Output in FlexReport Accessibility Report Output in FlexReport

Use Case 2: Divide a Header into Report Subsections

This Crystal Report divides Group Header into 3 subsections, each having different content and formatting: Crystal Report with Group Header Sections Crystal Report with Group Header Sections As you can see, Group Header #2 is divided into Group Header #2a, Group Header #2b and Group Header #2c.

Migrating OrderPackingList.rpt to FlexReport

Upon migration, all three subsections remain intact in FlexReport, with the same content accurately placed in different subsections with similar formatting as in Crystal Report. GroupHeader subsections in FlexReport Designer GroupHeader subsections in FlexReport Designer In this case, the subsection naming is inconsistent, which you’ll have to correct before running the report. The output, however, is same as that of Crystal Reports. Crystal Report output Crystal Report output FlexReport output FlexReport output Read more about Migrating Crystal Reports to FlexReport >>