Я использую надстройку Visual Studio SSDT BI для создания отчетов для служб отчетов SQL Server. Созданный мной проект настроен на таргетинг на версии SQL Server 2008/2012/2014, так как это целевые серверы SQL, которые есть у наших клиентов.Могу ли я управлять версией новых отчетов SSDT в Visual Studio?
Однако файлы отчетов, создаваемые в Visual Studio, как представляется, нацелены на SQL Server 2016. Если я копирую файлы rdl
на другой сервер и загружаю их через браузер, мне говорят, что они из более новой версии SSRS и не могут быть загружены.
Проблема заключается в двояком:
<Report>
тега содержит новые 2016 имен, который заменяет один 2010, который существовал в предыдущих версиях:<Report xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner" xmlns:cl="http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition" xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition">
Новый формат файл включает в себя раздел конфигурации параметров, который определен в пространстве имен 2016, но не в 2010 году:
<ReportParametersLayout> . . . </ReportParametersLayout>
Если изменить пространство имен обратно 2010
и удалить раздел ReportParametersLayout
, отчет прекрасно работает в SQL 2012, но Visual Studio будет вернуть его в следующий раз, когда я открываю отчет.
(Интересно, если я раскрываю отчеты непосредственно из VS, я получаю предупреждение о том, что макет параметр не поддерживается в 2012 году и удаляется, что предполагает, что Visual Studio является подправить определения отчетов на лету.)
Есть ли способ заставить VS оставить файлы отчетов в предыдущем формате?
Кто-нибудь нашел обходное решение для этого? Комментарий от Рами. A не затрагивает актуальную проблему. –
В SSDT 16.3 (номер сборки: 14.0.60812.0) они сказали: «Исправлена ошибка, из-за которой были созданы недопустимые отчеты для SQL Server 2008 R2, 2012 и 2014». Кто-нибудь знает, устранила ли это проблему? – Ulli