Поделиться через


Обновление отчетов

В SQL Server 2008 представлены некоторые изменения языка определения отчетов, модели объектов отчетов и модели объектов для подготовки к просмотру, оказывающие влияние на отчеты, созданные с помощью более ранних версий SQL Server. При обновлении установки служб SQL Server 2005 Reporting Services до установки служб SQL Server 2008Reporting Services существующие отчеты и моментальные снимки, переданные на сервер, автоматически обновляются до новой схемы при первой обработке. Если отчет автоматически обновить не удается, он обрабатывается в режиме обратной совместимости.

Существующие RDL-файлы определения отчетов обновляются автоматически при открытии в конструкторе отчетов среды Business Intelligence Development Studio.

ПримечаниеПримечание

Дополнительные сведения о новых функциях языка определения отчетов, например области данных табликса или новом компоненте «Диаграмма», см. в разделе Новые возможности (службы Reporting Services).

После обновления отчета можно столкнуться с дополнительными ошибками, предупреждениями и сообщениями. Это результат изменений внутренней модели объектов отчетов и компонентов обработчиков, которые приводят к появлению сообщений при обнаружении проблем в отчете. Дополнительные сведения см. в разделе Обратная совместимость служб Reporting Services.

Версии отчетов, которые могут быть обновлены

Обновление поддерживают отчеты, созданные в любой из предыдущих версий служб Reporting Services. Эти версии включают следующие.

  • SQL Server 2000

  • SQL Server 2000 с пакетом обновления 1 (SP1)

  • SQL Server 2000 с пакетом обновления 2 (SP2)

  • SQL Server 2005

  • SQL Server 2005 с пакетом обновления 1 (SP1)

  • SQL Server 2005 с пакетом обновления 2 (SP2)

Файлы определения отчетов (RDL) и конструктор отчетов

Файл определения отчета содержит ссылку на пространство имен языка определения отчетов, которое указывает версию схемы определения отчета, использованную для проверки RDL-файла.

Если RDL-файл открывается в конструкторе отчетов в среде Business Intelligence Development Studio и отчет был создан в предыдущем пространстве имен, конструктор отчетов автоматически создает файл резервной копии и обновляет отчет до текущего пространства имен. Если сохранить обновленное определение отчета, будет сохранен преобразованный RDL-файл. После сохранения его больше нельзя будет открыть в предыдущих версиях конструктора отчетов. Это единственный способ обновления файла определения отчетов.

Можно передать RDL-файл, созданный в более ранней версии служб Reporting Services, на сервер отчетов SQL Server 2008, где он будет автоматически обновлен при первом использовании. На сервере отчетов файлы определения отчетов хранятся в собственном формате. Отчет обновляется автоматически при первом просмотре, однако сохраненный файл определения отчетов остается без изменений.

ПримечаниеПримечание

Нельзя опубликовать или передать на сервер отчет, у которого в пространстве имен определения отчета SQL Server 2008 указан сервер отчетов SQL Server 2000 или SQL Server 2005.

Сведения о том, как определить текущую RDL-схему для отчета, сервера отчетов или конструктора отчетов, см. в разделе Как определить версию схемы отчета.

Опубликованные отчеты и моментальные снимки отчетов

При первом использовании сервер отчетов пытается обновить существующие опубликованные отчеты и моментальные снимки отчетов до новой схемы определения отчетов, что не требует каких-либо действий со стороны пользователя. Попытка обновления происходит, когда пользователь просматривает отчет или моментальный снимок отчета либо когда сервер отчетов обрабатывает подписку. Определение отчета не заменяется, а по-прежнему хранится на сервере отчетов SQL Server 2008 в своей первоначальной схеме. Если отчет невозможно обновить, он работает в режиме обратной совместимости.

Режим обратной совместимости

Успешно обновленный отчет обрабатывается обработчиком отчетов служб SQL Server 2008Reporting Services. Отчет, обновление которого невозможно, обрабатывается обработчиком отчетов служб SQL Server 2005 Reporting Services в режиме обратной совместимости. Нельзя обработать отчет обоими обработчиками.

При первом использовании отчет будет либо успешно обновлен, либо помечен для обработки в режиме обратной совместимости.

Только обработчик отчетов служб SQL Server 2008Reporting Services поддерживает новые функции, такие как постраничный просмотр по запросу, области данных табликса и датчика, а также улучшенные области данных диаграмм. Если обновить отчет не удается, можно просмотреть отчет, готовый для просмотра, однако новые функции будут недоступны. Чтобы использовать эти новые функции, необходимо успешно обновить отчет.

Обновление отчета с вложенными отчетами

Если отчет содержит вложенные отчеты, то при обновлении возникает одна из приведенных ниже четырех ситуаций.

  • Главный отчет и все вложенные отчеты успешно обновляются. Они обрабатываются обработчиком отчетов служб SQL Server 2008Reporting Services.

  • Главный отчет и все вложенные отчеты обновить не удается. Обработка выполняется обработчиком отчетов служб SQL Server 2005 Reporting Services.

  • Возможно обновление главного отчета, однако один или несколько вложенных отчетов обновить не удается. Главный отчет обрабатывается обработчиком отчетов служб SQL Server 2008 Reporting Services, однако отчет, готовый для просмотра, покажет сообщение «Ошибка: не удалось обработать вложенный отчет» в том месте, где должен отображаться вложенный отчет, который не удалось обновить.

  • Главный отчет обновить нельзя, однако можно обновить один или несколько вложенных отчетов. Главный отчет обрабатывается обработчиком отчетов служб SQL Server 2008 Reporting Services, однако отчет, готовый для просмотра, покажет сообщение «Ошибка: не удалось обработать вложенный отчет» в том месте, где должен отображаться вложенный отчет.

Если отображается сообщение «Ошибка: не удалось обработать вложенный отчет», необходимо изменить определение главного отчета или вложенного отчета таким образом, чтобы отчеты могла обработать одна версия обработчика отчетов.

Это ограничение не касается детализированных отчетов, поскольку они обрабатываются как независимые отчеты.

Обновление пользовательских элементов отчета в отчете

Отчеты служб SQL Server 2005 Reporting Services могут содержать пользовательские элементы отчета, предоставленные сторонними поставщиками ПО и установленные системным администратором на компьютере разработчика отчетов и на сервере отчетов. Обновлять отчеты с пользовательскими элементами отчета можно следующим образом.

  • Сервер отчетов служб SQL Server 2005 Reporting Services обновляется до сервера отчетов служб SQL Server 2008Reporting Services. Отчеты, опубликованные на сервере отчетов, автоматически обновляются при первом использовании.

  • Отчет служб SQL Server 2005 Reporting Services передается на сервер отчетов служб SQL Server 2008Reporting Services. Отчет автоматически обновляется при первом использовании.

  • Отчет служб SQL Server 2005 Reporting Services открывается в конструкторе отчетов среды Business Intelligence Development Studio. Создается резервная копия отчета. Возможен один из двух вариантов.

    1. Ни один пользовательский элемент отчета не содержит неподдерживаемых функций. Пользовательские элементы отчета преобразуются в элементы отчета в новой схеме определения отчета; таким образом, обновляется весь отчет. При сохранении файл сохраняется в текущем пространстве имен языка определения отчетов.

    2. В одном или нескольких пользовательских элементах отчета есть неподдерживаемые функции. Открывается диалоговое окно, в котором пользователю предлагается выбрать действие: преобразовать пользовательские элементы отчета или оставить их без изменений.

    Дополнительные сведения см. в подразделе Открытие отчета в конструкторе отчетов далее в этом разделе.

Сведения об определении текущего пространства имен языка определения отчетов для сервера отчетов, среды BI Development Studio или отчета см. в разделе Как определить версию схемы отчета.

Обновление отчетов на сервере отчетов

При первом запуске отчета служб SQL Server 2005 Reporting Services на сервере отчетов, обновленном до версии служб SQL Server 2008 Reporting Services, отчет автоматически обновляется до текущего пространства имен определения отчетов, которое поддерживается сервером отчетов. Отчет может существовать на сервере отчетов до обновления, либо его могли передать туда с помощью диспетчера отчетов или опубликовать на сервере отчетов из конструктора отчетов в среде SQL Server 2005 BI Development Studio.

В следующей таблице перечислены действия по обновлению, выполняемые сервером отчетов для каждого конкретного типа пользовательских элементов отчета.

Тип пользовательского элемента отчета

Действие сервера отчетов по обновлению

Сторонние пользовательские элементы отчета

Обновление не выполняется.

Обрабатывается обработчиком отчетов служб SQL Server 2005 Reporting Services.

Пользовательский элемент отчета Dundas 2005 Chart без неподдерживаемых функций

Обновляется до самой последней схемы языка определения отчетов. Все пользовательские элементы отчета Dundas 2005 Chart преобразуются в области данных диаграммы SQL Server 2008Reporting Services.

Обрабатывается обработчиком отчетов служб SQL Server 2008Reporting Services.

Пользовательский элемент отчета Dundas 2005 Gauge без неподдерживаемых функций

Обновляется до самой последней схемы языка определения отчетов. Все пользовательские элементы отчета Dundas 2005 Gauge преобразуются в области данных датчика SQL Server 2008Reporting Services.

Обрабатывается обработчиком отчетов служб SQL Server 2008Reporting Services.

Пользовательский элемент отчета Dundas 2005 Chart с неподдерживаемыми функциями

Обновление не выполняется.

Обрабатывается обработчиком отчетов служб SQL Server 2005 Reporting Services.

Пользовательский элемент отчета Dundas 2005 Gauge с неподдерживаемыми функциями

Обновление не выполняется.

Обрабатывается обработчиком отчетов служб SQL Server 2005 Reporting Services.

Открытие отчета с пользовательскими элементами отчета в конструкторе отчетов

При открытии отчета служб SQL Server 2005 Reporting Services с пользовательскими элементами отчета в конструкторе отчетов в среде SQL Server 2008 Business Intelligence Development Studio отчет обновляется до новой схемы определения отчета. В зависимости от того, какие пользовательские элементы отчета содержит отчет, выполняется одно из следующих действий.

  • Обнаружены сторонние пользовательские элементы отчета. Если версия пользовательского элемента отчета, установленного на компьютере разработчика отчетов, несовместима с новой RDL-схемой, то в области конструктора отображается текстовое поле с красной буковой «X». Чтобы установить новые версии пользовательских элементов отчета сторонних поставщиков, совместимых с новой RDL-схемой, необходимо обратиться к системному администратору.

  • Обнаружены пользовательские элементы отчета Dundas 2005 Chart или Gauge, все экземпляры содержат поддерживаемые функции. Все пользовательские элементы отчета Dundas 2005 Chart и Gauge преобразуются в элементы отчета «Диаграмма» и «Датчик» служб Reporting Services, которые находятся в области элементов. Они известны как собственные элементы отчета «диаграмма» и «датчик».

  • Обнаружены пользовательские элементы отчета Dundas 2005 Chart или Gauge, все экземпляры содержат неподдерживаемые функции. Неподдерживаемые функции описаны после этого раздела. Можно выбрать, следует ли преобразовывать пользовательские элементы отчета в собственные элементы отчета.

    • При преобразовании отчет обновится до новой RDL-схемы и пользовательские элементы отчета Dundas 2005 Chart и Gauge будут преобразованы в соответствующие собственные диаграммы и датчики, но неподдерживаемые функции будут удалены. В отчете, готовом для просмотра, способ отображения пользовательских элементов отчета может отличаться.

    • Если отказаться от преобразования, отчет обновляется до новой RDL-схемы, но все пользовательские элементы рассматриваются как сторонние пользовательские элементы отчета. Чтобы установить новые пользовательские элементы отчета, совместимые с новой схемой отчета, необходима помощь системного администратора или стороннего поставщика. Если новые пользовательские элементы отчета недоступны, в отчете отображается текстовое поле с красной буквой «X» в конструкторе отчетов.

Сохранение отчета после обновления в среде, где он был создан, — единственный способ обновить существующий отчет до новой схемы определения отчета.

Неподдерживаемые функции пользовательского элемента отчета Dundas 2005 Chart

Ниже приведены неподдерживаемые функции пользовательского элемента отчета Dundas 2005 Chart.

  • Заметки.

  • Пользовательские условные обозначения.

  • Пользовательские атрибуты со следующими именами:

    • CUSTOM_CODE_CS;

    • CUSTOM_CODE_VB;

    • CUSTOM_CODE_COMPILED_ASSEMBLY.

      Например, если RDL-файл содержит следующий раздел, перед обновлением этот код необходимо удалить:

      <CustomProperty>
       <Name>CUSTOM_CODE_CS</Name>
       <Value>dXNpWERwegfdfgiobxxl3bmc... </Value>
      </CustomProperty>
      

Неподдерживаемые функции пользовательского элемента отчета Dundas 2005 Gauge

Ниже приведены неподдерживаемые функции пользовательского элемента отчета Dundas 2005 Gauge.

  • Числовые индикаторы.

  • Индикаторы состояния.

  • Пользовательские изображения.