Экспорт в Microsoft Excel (построитель отчетов версии 3.0 и службы SSRS)
Модуль подготовки отчетов в формате Excel подготавливает отчеты, совместимые с Microsoft Excel 97 и более поздними версиями. При экспорте отчетов в электронные таблицы Excel некоторые элементы макета теряются, как это описывается в этом разделе. Форматом для подготовки отчетов Microsoft Excel является BIFF (Binary Interchange File Format). Содержимое файлов, создаваемых этим модулем подготовки отчетов, имеет следующий тип: application/vnd.ms-excel. Файлы, созданные этим модулем подготовки отчетов, имеют расширение XLS.
Примечание по безопасности |
---|
Если определен параметр с типом String, пользователь может ввести в текстовое поле любое значение. Если параметр отчета не привязан к параметру запроса, но значения этого параметра включены в отчет, пользователь может ввести в качестве значения этого параметра синтаксическое выражение, скрипт или URL-адрес и подготовить отчет к просмотру в приложении Excel. Если затем другой пользователь при просмотре отчета щелкнет содержимое параметра, он может неумышленно выполнить вредоносный скрипт или перейти по ссылке. |
Чтобы сократить риск неумышленного запуска вредоносных скриптов, открывайте готовые для просмотра отчеты только из надежных источников. Дополнительные сведения о защите отчетов см. в разделе Защита отчетов и ресурсов.
Примечание |
---|
В построителе отчетов и в конструкторе отчетов среды Business Intelligence Development Studio можно создавать и изменять определения отчета (RDL). В каждой среде разработки существуют различные способы создания, открытия и сохранения отчетов и связанных элементов. Дополнительные сведения см. в разделе Разработка отчетов в построителе отчетов и конструкторе отчетов 3.0 (SSRS) на веб-сайте microsoft.com. |
В данной статье
Элементы отчета в Excel
Разбиение на страницы
Имена вкладок листа
Свойства документа
Верхние и нижние колонтитулы
Интерактивность
Отображение стилей в Excel
Ограничения Excel
Изменение отчетов во время выполнения
Настройки сведений об устройстве
Элементы отчета в Excel
Прямоугольники, вложенные отчеты, текст отчета и области данных преобразуются в диапазон ячеек Excel. Текстовые поля, изображения, диаграммы, гистограммы, спарклайны, датчики и индикаторы должны быть помещены в одну ячейку Excel; в зависимости от особенностей макета отчета ячейки могут быть объединены.
Изображения, диаграммы, спарклайны, гистограммы, карты, датчики, индикаторы и линии располагаются в пределах одной ячейки Excel, однако они располагаются поверх сетки ячеек. Линии отображаются как границы ячеек.
Диаграммы, спарклайны, гистограммы, карты, датчики и индикаторы экспортируются как изображения. Отображаемые ими данные, такие как метки значений и элементов на диаграмме, не экспортируются вместе с ними и не приводятся в книге Excel, кроме случаев, когда такие данные включены в столбец или строку в области данных внутри отчета.
Если требуется работать с данными диаграмм, спарклайнов, гистограмм, карт, датчиков и индикаторов, экспортируйте отчет в файл .csv или сформируйте Atom-совместимые потоки данных из отчета. Дополнительные сведения см. в разделах Экспорт в файл CSV (построитель отчетов версии 3.0 и службы SSRS) и Формирование веб-каналов данных из отчетов (построитель отчетов версии 3.0 и службы SSRS).
В начало
Разбиение на страницы
Этот модуль подготовки отчетов поддерживает только логические разрывы страниц. Для каждого явно определенного логического разрыва страницы создается новая вкладка с листом Excel.
Именование страниц
Если в книге присутствует только один лист (за исключением схемы документа), то именем отчета становится имя листа.
Если кроме схемы документа в книге содержится несколько листов, то листам присваиваются имена ЛистХ, где Х — это номер листа в книге. Например, имя пятого листа будет — Лист5.
Изменение размера страницы
Модуль подготовки отчетов в формате Excel использует настройки высоты и ширины страницы для определения того, какую настройку бумаги следует задать в листе Excel. Excel пытается подогнать параметры PageHeight и PageWidth под наиболее распространенные размеры бумаги.
Если это сделать не удается, Excel использует размер страницы по умолчанию для принтера. Если ширина страницы меньше, чем ее высота, то устанавливается книжная ориентация; в противном случае устанавливается альбомная ориентация.
В начало
Имена вкладок листа
При экспорте отчета в Excel страницы отчета, созданные с помощью разрывов страницы, экспортируются на другие листы. При указании имени стартовой страницы для отчета это имя по умолчанию присваивается всем листам книги Excel. Имя отображается на вкладке книги. Однако, поскольку все листы в книге должны иметь уникальное имя, к имени стартовой страницы всех дополнительных листов добавляется целое число, начинающееся с 1, с шагом 1. Например, если имя стартовой страницы — Отчет по продажам за финансовый год, то второй лист будет иметь имя Отчет по продажам за финансовый год1, третий — Отчет по продажам за финансовый год2 и т. д.
Если все страницы отчета, созданные с помощью разрывов страниц, будут иметь новые имена, то листу будет присвоено имя связанной страницы. Однако имена этой страницы могут не быть уникальными. Если имена страницы не являются уникальными, то листам имена присваиваются аналогично именам стартовой страницы. Например, если страница двух групп имеет имя Продажи по NW, то первая вкладка листа будет иметь имя Продажи по NW, а вторая Продажи по NW1.
Если в отчете не указано ни имя стартовой страницы, ни имена страниц, связанных с разрывами страниц, то вкладкам листов будут присваиваться имена по умолчанию: Лист1, Лист2 и т. д.
Службы Reporting Services предоставляют свойства, задаваемые для отчетов, областей данных, групп и прямоугольников, что позволяет создавать отчеты, которые можно экспортировать в Excel нужным образом. Дополнительные сведения см. в разделе Основные сведения о разбиении на страницы в службах Reporting Services (построитель отчетов версии 3.0 и службы SSRS).
В начало
Свойства документа
Модуль подготовки отчетов Excel записывает в файл Excel следующие метаданные.
Свойства элемента отчета |
Описание |
---|---|
Created |
Дата и время выполнения отчета со значением в формате ISO. |
Author |
Report.Author |
Description |
Report.Description |
LastSaved |
Дата и время выполнения отчета со значением в формате ISO. |
В начало
Верхние и нижние колонтитулы
В зависимости от значения параметра SimplePageHeaders в параметрах устройства заголовок страницы может отображаться в двух вариантах: в верхней части каждой сетки ячеек листа или в настоящем разделе заголовка листа Excel. По умолчанию верхний колонтитул создается в сетке ячеек листа Excel.
Нижний колонтитул страницы всегда создается в области нижнего колонтитула листа Excel, вне зависимости от значения настройки SimplePageHeaders.
В области верхнего и нижнего колонтитулов Excel допускаются значения с максимальной длиной в 256 символов, включая разметку. Если данное максимальное число превышается, то модуль подготовки отчетов Excel сокращает общее число символов, удаляя символы разметки, начиная с конца строки верхнего и нижнего колонтитулов. Если после удаления всех символов разметки длина все еще превышает максимальную длину, то строка усекается, начиная с правого края.
Настройки SimplePageHeaders
По умолчанию настройка сведений об устройстве SimplePageHeaders имеет значение False, поэтому колонтитулы вставляются в отчет в виде строк на лист Excel. Строки листа, содержащие верхние колонтитулы, блокируются. Эту панель можно закрепить или освободить в Excel. Если выбран параметр Печатать заголовки, то верхние колонтитулы будут автоматически печататься на каждой странице листа.
Если на вкладке «Параметры страницы» в Excel был выбран параметр Печатать заголовки, то верхний колонтитул страницы будет отображен на всех листах книги, кроме листа со схемой документа. Если параметр Печать на первой странице или Печать на последней странице в диалоговом окне «Свойства верхнего колонтитула отчета» или «Свойства нижнего колонтитула отчета» не был выбран, то соответствующий колонтитул не будет добавлен на первую или последнюю страницу.
Нижние колонтитулы отображаются в области нижних колонтитулов Excel.
В связи с ограничениями Excel единственные элементы отчета, которые могут выводиться в области верхнего или нижнего колонтитулов, — текстовые поля.
В начало
Интерактивность
В Excel поддерживаются некоторые интерактивные элементы. Ниже приведено описание особенностей поведения.
Показать и скрыть
Microsoft Excel имеет ограничения по управлению скрытыми и отображаемыми элементами отчета при их экспорте. Группы, строки и столбцы, содержащие переключаемые элементы отчета, преобразуются в структуры Excel. Excel создает структуры, расширяющие или сворачивающие строки и столбцы по всей их длине, что может привести к свертыванию элементов отчета, не подлежащих свертыванию. Кроме того, символы структурирования Excel могут стать загроможденными при наличии множества перекрывающихся структур. Для решения данных проблем при использовании модуля подготовки отчетов в формате Excel применяются следующие правила структурирования.
Переключаемый элемент отчета, расположенный в верхнем левом углу, может быть переключен в Excel. Переключаемые элементы отчета, находящиеся в одной строке или столбце с переключаемым элементом отчета, расположенным в верхнем левом углу, не могут быть переключены в Excel.
Для определения того, будет ли возможно свертывание области данных по строкам или столбцам, производится определение расположения элемента отчета, управляющего переключением, и переключаемого элемента отчета. Если элемент, управляющий переключением, находится до переключаемого элемента, то свертка элемента по строкам возможна. В противном случае элемент может быть свернут только по столбцам. Если элемент, управляющий переключением, находится рядом или выше переключаемой области, этот элемент может быть отображен со строкой, сворачиваемой по строкам.
Для определения места, в которое будут помещены подытоги в отчете, готовом для просмотра, модуль подготовки отчетов проверяет первый экземпляр динамического элемента. Если непосредственно над ним присутствует одноуровневый статический элемент, считается, что динамический элемент является подытогом. Структуры настраиваются на отображение данного места в качестве итоговых данных. Если у динамического элемента нет статических одноуровневых элементов, то подытогом будет первый экземпляр элемента.
В связи с ограничениями Excel, структуры могут иметь не больше семи уровней вложения.
Схема документа
Если в отчете существуют метки схемы документа, то происходит отображение схемы документа. Схема документа будет отображена в виде титульного листа Excel, вставленного на позицию первой вкладки в книге. Этому листу присваивается имя Схема документа.
Текст, отображаемый в схеме документа, определяется свойством DocumentMapLabel элемента отчета или группы. Метки схемы документа перечисляются в том порядке, в котором они появляются в отчете, начиная с первой строки в первом столбце. Каждая ячейка метки схемы документа углубляется настолько, насколько глубоко (по уровням) она расположена в отчете. При углублении на каждый последующий уровень происходит перемещение метки в следующий столбец. В Excel поддерживается до 256 уровней вложения структур.
Схема документа отображается в виде свертываемой структуры Excel. Структура совпадает с вложенной структурой схемы документа. Развернутое и свернутое состояния структуры начинаются со второго уровня.
Корневой узел схемы — это имя отчета, <reportname>.rdl; он не является интерактивным. В ссылках схемы документа используется шрифт Arial, 10 пт.
Ссылки детализации
Ссылки детализации, появляющиеся в текстовых полях, преобразуются в гиперссылки Excel в ячейках, содержащих текст. Ссылки детализации для изображений и диаграмм преобразуются в гиперссылки Excel на изображение. При щелчке ссылки детализации открывается веб-браузер по умолчанию и осуществляется переход к целевому HTML-представлению.
Гиперссылки
Гиперссылки, появляющиеся в текстовых полях, преобразуются в гиперссылки Excel в ячейках, содержащих текст. Гиперссылки для изображений и диаграмм преобразуются в гиперссылки Excel на изображение. При щелчке гиперссылки открывается веб-браузер по умолчанию и осуществляется переход по целевому URL-адресу.
Интерактивная сортировка
Excel не поддерживает интерактивную сортировку.
Закладки
Ссылки закладок в текстовых полях преобразуются в гиперссылки Excel в ячейках, содержащих текст. Ссылки закладок для изображений и диаграмм преобразуются в гиперссылки Excel на изображение. При щелчке закладки выполняется переход в ячейку Excel, в которой содержится ссылаемый элемент отчета.
В начало
Отображение стилей в Excel
Далее приводится краткое описание подготовки элементов к отображению в Excel.
Цветовая палитра
В Excel поддерживается палитра до 56 цветов. Первые 56 уникальных цветов, использованных в отчете, определяются в пользовательской палитре. Если в отчете используется больше 56 цветов, то модуль подготовки отчетов сопоставит необходимый цвет с одним из 56 цветов, доступных в палитре. Для сопоставления цветов с теми, что уже существуют в палитре, используется алгоритм сопоставления цветов Excel.
В начало
Ограничения Excel
В связи с ограниченными возможностями формата BIFF, Excel накладывает на экспортируемые отчеты ограничения. Наиболее значительны из них следующие.
Максимальное количество строк на листе — 65 536. При превышении этого количества в модуле подготовки отчетов отображается сообщение об ошибке.
Максимальное количество столбцов на листе — 256. При превышении этого количества в модуле подготовки отчетов отображается сообщение об ошибке.
Максимальная ширина столбца — 255 символов или 1726,5 пунктов. Модуль подготовки отчетов не производит проверку превышения ширины столбца.
Максимальная высота строки — 409 пунктов. Если содержимое строки приводит к увеличению ее высоты до размера более 409 пунктов, то содержимое разделяется и добавляется в следующую строку.
Максимальное количество символов в ячейке — 32 767. При превышении этого количества в модуле подготовки отчетов отображается сообщение об ошибке.
Примечание В ячейке Excel на листе может быть отображено примерно 1 000 символов; однако в строке формул можно работать с максимальным количеством символов.
В Excel нет ограничения на максимальное число листов, однако его появление могут вызвать внешние факторы, например нехватка памяти или места на диске.
В структурах Excel допускается до 7 уровней вложенности.
Если элемент отчета, управляющий переключением другого элемента, не находится в соседней с ним строке или столбце, то структура отключается.
Размеры файлов Excel
Когда отчеты в первый раз экспортируются и сохраняются в формате Excel, для них не выполняется оптимизация файлов, автоматически применяемая в Excel к файлам книг *.xls. Увеличение размеров файлов может стать причиной проблем при работе с подписками и вложениями электронной почты. Чтобы уменьшить размер файлов *.xls экспортируемых отчетов, откройте файлы *.xls и сохраните эти книги повторно. Повторное сохранение книг обычно приводит к уменьшению размеров файлов на 40–50%.
Текстовые поля и текст
Следующие ограничения относятся к текстовым полям и тексту.
Значения текстового поля, являющиеся выражениями, не преобразуются в формулы Excel. Значения всех текстовых полей вычисляются во время обработки отчета. Вычисляемые выражения экспортируются в виде содержимого каждой из ячеек Excel.
Текстовые поля подготавливаются к просмотру в виде отдельной ячейки Excel. Единственным видом форматирования, поддерживаемым для отдельного текста в ячейке Excel, является размер и тип шрифта, оформление и стиль.
Текстовый эффект «Надчеркивание» в Excel не поддерживается.
Excel добавляет значения по умолчанию с левой и правой сторон ячеек, составляющие 3,75 пункта. Если в настройках полей установлено значение меньше 3,75 пунктов и места едва хватает для размещения текста, это может вызвать перенос по словам.
Примечание Эту проблему можно обойти, увеличив ширину текстового поля в отчете.
Изображения
Следующие ограничения применяются к изображениям.
Фоновые изображения для элементов отчетов не учитываются, поскольку в Excel не поддерживаются фоновые изображения для отдельных ячеек.
Модуль подготовки отчетов в формате Excel поддерживает фоновые изображения только для текста отчета. Если фоновое изображение текста отчета отображается в отчете, то оно будет преобразовано в фоновое изображение листа.
Прямоугольники
Следующее ограничение применяется к прямоугольникам.
- Прямоугольники в нижних колонтитулах отчетов не экспортируются в Excel. Однако прямоугольники в теле отчета, ячейки табликсов и т.д. преобразуются в диапазоны ячеек Excel.
Верхние и нижние колонтитулы отчета
К верхним и нижним колонтитулам отчетов применяются следующие ограничения.
В верхних и нижних колонтитулах Excel поддерживаются значения с максимальной длиной в 256 символов, включая разметку. Модуль подготовки отчетов производит усечение строки после 256 символов.
Службы Reporting Services не поддерживает обрамляющие поля в верхних и нижних колонтитулах отчетов. При экспорте в Excel значения ширины этих полей устанавливаются равными нулю, а у любых верхних и нижних колонтитулов, состоящих из нескольких строк данных, на печать могут быть выведены не все строки, в зависимости от параметров принтера.
У текстовых полей в верхних и нижних колонтитулах при экспорте в Excel сохраняется форматирование, но не выравнивание. Это происходит потому, что при выводе отчета в формате Excel начальные и конечные пробелы удаляются.
Объединение ячеек
К объединению ячеек применяется следующее ограничение:
- Если ячейки объединены, то не будет правильно работать перенос по словам. Если в строке есть объединенные ячейки, а при подготовке к просмотру текстового поля этой строки было включено свойство AutoSize, то автоматическое масштабирование не будет работать.
Модуль подготовки отчетов Excel является главным образом модулем подготовки макетов. Его задача — воспроизвести макет подготовленного к просмотру отчета в листе Excel как можно точнее, поэтому для сохранения макета отчета ячейки могут объединяться. Объединенные ячейки могут вызывать проблемы, так как для правильной работы функций сортировки в Excel ячейки необходимо объединять только строго определенным способом. Например, для сортировки объединенных ячеек в Excel необходимо, чтобы их диапазоны имели одинковый размер.
Если важно иметь возможность сортировки экспортируемых в Excel отчетов, можно выполнить следующие действия, чтобы уменьшить количество объединяемых в листах Excel ячеек, которые часто вызывают проблемы при сортировке в Excel.
Основная причина объединения ячеек — отсутствие выравнивания по правому и левому краям. Убедитесь, что все элементы отчета выравнены между собой по правому и левому краям. Выравнивание элементов и использование одинаковой ширины в большинстве случаев решает проблему.
В некоторых редких случаях столбцы все равно объединяются, несмотря на то, что все элементы точно выровнены. Это может быть вызвано внутренним преобразованием единиц измерения и округлением во время подготовки листа Excel к просмотру. На языке определения отчетов (RDL) положения и размеры могут указываться в различных единицах измерения, таких, как дюймы, пикселы, сантиметры и пункты. Для внутренних расчетов Excel использует пункты. Чтобы минимизировать выполняемые преобразования и возможную неточность округления при преобразовании дюймов и сантиметров в пункты, следует рассмотреть возможность непосредственного указания всех размеров в пунктах. Один дюйм равен 72 пунктам.
Группы строк и группы столбцов отчета
Отчеты, содержащие группы строк или группы столбцов, при экспорте в Excel содержат пустые ячейки. Представьте отчет, группирующий строки по каналу продаж и почтовому индексу. Каждый канал содержит много почтовых индексов, а для каждого почтового индекса перечислено много названий магазинов. Отчет изображен на следующем рисунке.
При экспорте отчета в Excel почтовый индекс отображается только в одной ячейке столбца почтового индекса. В зависимости от выравнивания текста в отчете (по верху, по центру или по низу) значение отображается в первой, средней или последней ячейке. Другие ячейки остаются пустыми. Столбец, содержащий названия магазинов, не содержит пустых ячеек. На следующем рисунке изображен тот же отчет после экспорта в Excel. Красные границы ячеек были добавлены для выразительности. Они не являются частью экспортированного отчета.
Это означает, что отчеты со сгруппированными столбцами или строками требуют изменения после экспорта в Excel и перед отображением экспортированных данных в сводной таблице. Необходимо добавить групповое значение в ячейки, в которых оно отсутствует, чтобы лист превратился в плоскую таблицу со значениями во всех ячейках. На следующем рисунке изображен обновленный лист.
Если отчет создается специально для экспорта в Excel для последующего анализа данных отчета, то не рекомендуется включать в него группы строк или столбцов.
В начало
Изменение отчетов во время выполнения
Если отчет должен обрабатываться в нескольких форматах, а создать макет отчета, отображаемый требуемым образом во всех необходимых форматах, невозможно, рассмотрите возможность использования значения во встроенном глобальном выражении RenderFormat для условного изменения вида отчета во время выполнения. Это позволит скрывать или отображать элементы отчета в зависимости от используемого модуля подготовки и, таким образом, достичь наилучших результатов при подготовке в каждом из форматов. Дополнительные сведения см. в разделе Использование встроенных глобальных значений и ссылок на пользователей (построитель отчетов версии 3.0 и службы SSRS).
В начало
Настройки сведений об устройстве
Некоторые настройки по умолчанию для этого модуля подготовки отчетов можно изменить через настройку сведений об устройстве. Дополнительные сведения см. в разделе Настройки сведений об устройстве Excel.
В начало
См. также
Основные понятия
Журнал изменений
Обновленное содержимое |
---|
Добавлены сведения об экспорте отчетов, содержащих группы строк и столбцов. |