Search code examples
c#reportactivereportsgrapecity

Upgrading Grapecity Active Reports from version 9 to version 14


I have successfully modified my application to use Grapecity active reports 14 which was using only Grapecity active reports 9. Right now I need to support both 9 and 14 since I have more than 100 projects already referring 9.

The current implementation have a common report project has one base class with required methods needed to generate a pdf and excel report using active reports 9 and one more base class with replication of code for active reports 14. I have referred this base project to create any report using 9 and 14.

Below is an example to represent how my solution looks like

 MyProjectSolution
    BaseReportProject
        BaseReport9.cs
        BaseReport14.cs
    ProjectReport1
        Report.cs : BaseReport9.cs
    ProjectReport2
        Report.cs : BaseReport14.cs

My confusion here is, is there any better approach for doing this? When there is a need to include another active report version as per current implementation I need to add one more base class.

Is there a better approach to implement this type of requirement?

I am not sure if this is a valid question.If yes,any suggestion would be appreciated


Solution

  • A better approach to this is to have three separate projects:

    1. A project for your v9 reports
    2. A project for your v14 reports
    3. A project that can call project #1 or #2

    The reason we suggest this is that there have been significant changes from v9 to v14 so you may encounter conflicts with both reports in the same projects.

    For more information about the changes, please refer to the documentation below: https://www.grapecity.com/activereports/docs/v14/online/whats-new.html https://www.grapecity.com/activereports/docs/v14/online/breaking-changes.html?highlight=breaking%2C

    If you have any other questions, feel free to reach out to our support team!

    Sincerely,

    GrapeCity Support Team