Управление моделями отчетов

В службах Службы Reporting Services управление моделями включает в себя добавление моделей на сервер отчетов и удаление их с него, изменение свойств моделей и управление общим источником данных, связанным с моделью. Дополнительные сведения по управлению доступом к модели или ее части см. в разделе Защита моделей. Дополнительные сведения о формировании модели из заранее заданного общего источника данных см. в разделе Как создать модель с помощью диспетчера отчетов.

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

Модели отчетов не поддерживаются в SQL Server Express with Advanced Services. Дополнительные сведения о функциях этого выпуска см. в разделе Службы Reporting Services в выпуске SQL Server Express with Advanced Services.

Использование моделей в службах Reporting Services

Для эффективного управления моделями необходимо понимать, как они используются. В службах Службы Reporting Services модели отчетов описывают данные для нерегламентированных отчетов, создаваемых и изменяемых в построителе отчетов. Модели отчетов используются следующими способами.

  • В качестве источника данных для проектирования отчета в построителе отчетов или отчета на основе модели в конструкторе отчетов.

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

  • В качестве источника данных при выполнении запросов для получения данных. Клиентские приложения от сторонних разработчиков могут иметь программный доступ к модели и использовать ее в качестве источника данных отчета.

Стандартные и автоматически формируемые отчеты с дополнительной информацией

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

Автоматически формируемые отчеты с дополнительной информацией создаются сервером отчетов здесь же во время перемещения пользователя по данным в отчете. Сервер отчетов использует шаблоны для создания временных отчетов. Имеется два шаблона: один для данных одного экземпляра (например, чтобы показать данные об определенном пользователе) и другой для данных нескольких экземпляров (чтобы показать список заказов определенного продукта). Шаблоны не могут быть изменены. Однако можно заменить временный отчет с дополнительной информацией стандартным отчетом, имеющим необходимый стиль и макет.

Стандартные отчеты с дополнительной информацией являются пользовательскими опубликованными отчетами, которые привязываются к определенным частям модели. Когда пользователь попадает в ту часть модели, к которой привязан стандартный отчет, он или она видит пользовательский отчет, а не отчет с дополнительной информацией, формируемый сервером отчетов. Так как они создаются автором отчета, стандартные пользовательские отчеты могут использовать все возможности, доступные через построитель отчетов. Если нужно представить данные в определенном макете, следует создать пользовательский отчет. Стандартные отчеты с дополнительной информацией должны создаваться в построителе отчетов. После создания и сохранения отчета можно использовать диспетчер отчетов, чтобы связать его с сущностью в модели.

Доступ к стандартным отчетам управляется назначениями ролей по отчету. Если пользователь не имеет доступа к явному или наследуемому назначению ролей, ему будет выведен для просмотра временный, а не стандартный отчет, привязанный к элементу модели.

Перемещение по отчетам, управляемым моделями

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

Последовательность отчетов для перемещения при детализации

Если несколько сущностей связаны друг с другом, путь перемещения для детализации определяется значением в отчете, представляющем собой базовую сущность. Например, предположим, что имеется модель, содержащая сущности «Клиент», «Заказы клиента» и «Возвраты клиента». Если отчет «Клиент» содержит поля для числа заказов и возвратов, то пользователь, щелкая число заказов, переместится в отчет, показывающий список заказов, если же пользователь щелкает число возвратов, то он переместится в отчет, показывающий список возвратов.

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

Привязка стандартного отчета к сущности в модели отчета

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

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

  1. Формирование модели на сервере отчетов.

  2. Создание пользовательского отчета с использованием модели в качестве источника данных.

    Для создания отчетов с источниками данных модели используется построитель отчетов. Необходимо создать набор отчетов для каждой сущности: один для данных одного экземпляра и другой для данных нескольких экземпляров. Дополнительные сведения см. в разделе Учебник. Настройка отчетов с дополнительной информацией построителя отчетов.

  3. Сохранение отчетов на сервере отчетов.

  4. Запустите программу Диспетчер отчетов.

  5. Щелкните правой кнопкой мыши модель и выберите Свойства.

  6. На странице Отчеты с дополнительной информацией найдите сущность, для которой будет указан пользовательский отчет. Дополнительные сведения см. в разделе Страница «Отчеты с дополнительной информацией» (диспетчер отчетов).

  7. Выбор созданных отчетов в одном и нескольких экземплярах.

Управление общими источниками данных и моделями отчета

Модели отчета могут использовать данные из баз данных SQL Server 2000 и более поздних, а также из баз данных кубов служб Службы Analysis Services версии SQL Server 2005 и более поздних. Для подключения к базе данных модель отчета использует общий источник данных, определяющий строку соединения, учетные данные и модули обработки данных.

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

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

  • сохраненных учетных данных;

  • встроенной авторизации Windows.

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

Добавление моделей на сервер отчетов

Добавить файлы моделей (SMDL) на сервер отчетов можно одним из следующих способов:

  • опубликовать на сервере отчетов модель из конструктора моделей;

  • загрузить модель на сервер отчетов из файловой системы.

Наиболее простым способом поместить модели на сервер отчетов является их формирование из общего источника данных. Можно также опубликовать модель из конструктора моделей или загрузить SMDL-файл из файловой системы.

Не все SMDL-файлы могут быть загружены. Если в файле отсутствуют сведения о представлении источника данных, то при попытке загрузить файл будет обнаружена ошибка. Сведения о представлении источника данных будут отсутствовать, если вы пытаетесь загрузить файл, никогда не публиковавшийся ранее на сервере отчетов. Перед публикацией из конструктора моделей SMDL-файл и представление источника данных хранятся отдельно. Во время публикации сведения о представлении источника данных сливаются с SMDL-файлом. Следовательно, нужно загрузить SMDL-файл, который был ранее опубликован на сервере отчетов и впоследствии сохранен с этого сервера в файловой системе.

Дополнительные сведения о публикации и загрузке моделей см. в разделах Публикация модели отчета и Передача файлов в папку.

Удаление моделей и источников данных

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

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

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

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

Переименование моделей и зависимых источников данных

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

Обновление элементов модели

Для моделей, основанных на реляционной базе данных SQL Server, для изменения и публикации модели можно использовать конструктор моделей. При повторной публикации модели во время ее использования (например, если пользователь перемещается по отчетам с дополнительной информацией, сформированным из этой модели) отчет будет заблокирован, пока выполняется развертывание. Чтобы остановить обработку модели во время ее повторной публикации, нужно отключить общий источник данных, используемый этой моделью. Для этого снимите флажок с параметра Включить этот источник данных на странице свойств «Источник данных». При удалении элемента модели, используемого в опубликованном отчете, пользователь обнаружит ошибку «элемент модели не найден» для этой части отчета.

Для создания или изменения параметров безопасности элемента модели можно использовать диспетчер отчетов. В пространстве имен модели числа идентификаторов модели уникальным образом идентифицируют элементы модели. При обновлении модели сервер отчетов сравнивает идентификационные номера загруженной и сохраненной ранее версии модели. Если обнаружено соответствие, элемент обновленной модели принимает настройки безопасности существующего элемента. Существует ряд требований к защите элементов модели. Дополнительные сведения см. в разделе Страница «Безопасность элементов модели» (диспетчер отчетов).