Downgrade report from 2016 to 2012?

  • Steven.Grzybowski

    Hall of Fame

    Points: 3205

    Is it possible to downgrade a report from SSRS 2016 to 2012?  
    There are a series of reports that were developed against SQl 2016, and now need to be deployed to a production environment running 2012 instead.  
    I would prefer to avoid having to recreate everything.

  • Sue_H

    SSC Guru

    Points: 89894

    Steven.Grzybowski - Monday, May 1, 2017 8:09 AM

    Is it possible to downgrade a report from SSRS 2016 to 2012?  
    There are a series of reports that were developed against SQl 2016, and now need to be deployed to a production environment running 2012 instead.  
    I would prefer to avoid having to recreate everything.

    Technically not a supported way really. But if you developed them in SSDT, there is a target server version setting you can try.
    Another thing you can try is to open the rdl and change the namespace - it works sometimes depending on what features were used. 

    Sue

  • SQLFan-933088

    Mr or Mrs. 500

    Points: 549

    Sue_H - Monday, May 1, 2017 9:21 AM

    Technically not a supported way really. But if you developed them in SSDT, there is a target server version setting you can try.
    Another thing you can try is to open the rdl and change the namespace - it works sometimes depending on what features were used. 

    Sue

    Would it be possible to show an example of this? I have the same situation as the OP and would like to attempt your solution.

  • Sue_H

    SSC Guru

    Points: 89894

    SQLFan-933088 - Tuesday, May 2, 2017 11:14 AM

    Sue_H - Monday, May 1, 2017 9:21 AM

    Technically not a supported way really. But if you developed them in SSDT, there is a target server version setting you can try.
    Another thing you can try is to open the rdl and change the namespace - it works sometimes depending on what features were used. 

    Sue

    Would it be possible to show an example of this? I have the same situation as the OP and would like to attempt your solution.

    Open then rdl for the report in a text editor or xml editor. It's just an XML file.
    Towards the top are the namespace definitions. You want the one beginning with: xmlns=
    It also ends with /reportdefinition.
    So as an example, you can try changing this:
    xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition"
    To this:
    xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition"

    On your report server, you can see the version used by your SSRS with this URL:
    http://YourReportServerName/reportserver/reportdefinition.xsd

    In BIDS, SSDT, you can change the properties for the project, select the project right click and select properties.
    There is a property for TargetServerVersion that can be changed.

    They won't always work but worth a shot since testing those is easy and it could save you from rewriting the report.
    Hopefully you have a non-prod environment to test in which is the same version as production

    Sue

  • SQLFan-933088

    Mr or Mrs. 500

    Points: 549

    Thank you! I'll give it a try.

  • mpindri1

    SSC Rookie

    Points: 27

    I just downgraded an RDL file from 2017 to 2010 by doing the following:

    1. Compared (WINMERGE) 2017 RDL to a 'similar' 2010 RDL (most differences are 'legitimate')
    2. Replaced (in 2017) RDL line '<Report xmlns=...' with the 'similar' line from 2010 RDL
    3. Eliminated <ReportParametersLayout> XML segment from 2017 RDL (this was the feature not existing in 2010 version).

  • chitranshu

    Valued Member

    Points: 55

    Yes, It is possible to downgrade a SSRS report from Visual Studio 2015 to Visual Studio 2012

    Please follow this steps

    1. You need to go to “View code” by right clicking then it opens .xml script.
    2. Then it shows

    <?xml version="1.0" encoding="utf-8"?>
    <Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">

    Change this to

    <?xml version="1.0" encoding="utf-8"?>
    <Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">

    • Remove all <ReportSection></ReportSection> and <ReportSections></ReportSections> from the script.
    • Then remove  <ReportParametersLayout>  </ReportParametersLayout> tag and all the data containing in between this tag because there is no Report section available in the lower version so it need to be removed.

    • Save this code and bingo !!!! Run your Report
  • v_sreedhar

    Grasshopper

    Points: 14

    Thank you, it helped me.

Viewing 8 posts - 1 through 8 (of 8 total)

You must be logged in to reply to this topic. Login to reply