Элементы отчета (построитель отчетов и службы SSRS)

Примечание

Части отчетов являются устаревшими для всех выпусков SQL Server Reporting Services начиная с SQL Server Reporting Services 2019 года и для всех выпусков Сервер отчетов Power BI начиная с Сервер отчетов Power BI сентября 2022 г.

Элементы отчетов, такие как таблицы, матрицы, диаграммы и изображения, можно публиковать как элементы отчета. Части отчета — это элементы отчета с разбиением на страницы, опубликованные отдельно на сервере отчетов, которые можно повторно использовать в других отчетах с разбиением на страницы. Элементы отчета имеют расширение RSC.

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

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

Жизненный цикл элемента отчета

rs_ComponentCreation

  1. Пользователь А создает отчет с диаграммой, которая зависит от внедренного набора данных.

  2. Пользователь А принимает решение опубликовать диаграмму на сервере отчетов. Построитель отчетов назначает опубликованной диаграмме уникальный идентификатор. Пользователь А решает не предоставлять набор данных для совместного использования, поэтому набор данных остается внедренным в диаграмму.

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

    rs_componentupdate

  4. Пользователь В добавляет диаграмму к отчету и с помощью панели заменяет эту диаграмму в отчете круговой диаграммой.

  5. Пользователь В имеет разрешения, необходимые для перезаписи диаграммы на сервере, и выполняет это действие, переиздавая диаграмму на сервере. В результате этого обновляется опубликованная на сервере копия диаграммы. Тем не менее пользователь В решает не предоставлять набор данных для совместного использования, поэтому набор данных остается внедренным в диаграмму.

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

Публикация элементов отчета

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

Ниже перечислены элементы отчета, которые можно публиковать как части отчета.

  • Диаграммы

  • Датчики

  • Изображения

  • Maps

  • Параметры

  • Прямоугольники

  • Таблицы

  • Матрицы

  • Списки

При публикации элемента отчета, который отображает данные (например, таблицы, матрицы или диаграммы), набор данных, от которого зависит элемент отчета, сохраняется вместе с ним как внедренный в него набор данных. Можно также сохранить набор данных отдельно как общий набор данных, который может использоваться самим разработчиком и другими пользователями в качестве основы для других элементов отчета. Дополнительные сведения см. в разделе Элементы отчета и наборы данных в построителе отчетов.

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

Дополнительные сведения о публикации частей отчета см. в разделе Публикация и повторная публикация элементов отчетов (построитель отчетов и службы SSRS).

Изменение метаданных элемента отчета

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

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

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

Можно также изменять описание на панели «Свойства».

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

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

Поиск элементов отчетов

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

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

Состав элемента отчета

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

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

Разрешение конфликтов имен

При добавлении элемента отчета построитель отчетов устраняет любые конфликты имен. Например, если в отчете уже имеется элемент Chart1 и происходит добавление элемента отчета с именем Chart1, построитель отчетов автоматически переименовывает новый элемент отчета в Chart2. Если в отчете уже имеется набор данных Dataset1 и происходит добавление элемента отчета, ссылающегося на другой набор данных, который также носит имя Dataset1, то построитель отчетов переименовывает новый набор данных в Dataset2 и обновляет ссылки.

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

В отчет можно добавлять неограниченное число элементов. Но одновременно может быть добавлен только один элемент отчета. Можно даже добавить в один и тот же отчет несколько экземпляров элемента отчета. У них будут уникальные имена, однако это экземпляры одного и того же элемента отчета на сервере с одинаковым уникальным идентификатором.

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

Обновление элементов отчета после внесения изменений на сервере

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

Примечание

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

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

Принятие обновлений

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

Возврат к предыдущей версии элемента отчета

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

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

Обновление элементов отчета, уже находящихся на сервере

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

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

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

Работа с элементами отчета в конструкторе отчетов

Элементы отчета работают немного иначе в конструктор отчетов в SQL Server SQL Server Data Tools (SSDT). В конструкторе отчетов публикация является односторонней: из конструктора отчетов можно опубликовать элемент отчета, однако нельзя повторно использовать существующий элемент отчета. Дополнительные сведения см. в разделе Элементы отчетов в конструкторе отчетов (службы SSRS).

Инструкции

Публикация и повторная публикация элементов отчетов (построитель отчетов и службы SSRS)

Просмотр элементов отчета и назначение папки по умолчанию (построитель отчетов и службы SSRS)

См. также

Элементы отчета и наборы данных в построителе отчетов
Управление элементами отчета