Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применяется к: Microsoft Report Builder (SSRS)
Power BI Report Builder
Конструктор отчетов в SQL Server Data Tools
В отчетах с разбивкой на страницы выражения используются в определении отчета для указания или вычисления значений параметров, запросов, фильтров, свойств элементов отчета, группирования и сортировки определений, свойств текстовых полей, закладок, схем документов, динамического содержимого верхних и нижних колонтитулов страницы, изображений и динамических определений источников данных. В данном разделе приводится множество примеров использования выражений для внесения разнообразия в содержимое или внешний вид отчета. Этот список не является исчерпывающим. Вы можете установить выражение для любого свойства в диалоговом окне, где отображается кнопка выражения (fx), или в выпадающем списке, где отображается< Expression...>.
Выражения бывают простыми и сложными. Простое выражение содержит ссылку на одно поле набора данных, параметр или встроенное поле. Сложные выражения могут содержать несколько встроенных ссылок, операторов и вызовов функций. Например, сложное выражение может включать функцию Sum, применяемую к полю Sales.
Выражения записываются на языке Microsoft Visual Basic. Выражение начинается со знака равенства (=), за которым следует сочетание ссылок на встроенные коллекции, например поля набора данных, параметры, константы, операторы и функции.
Примечание.
Файлы определения страничных отчетов (.rdl) можно создавать и изменять в Microsoft Report Builder, Power BI Report Builder и в конструктор отчетов в SQL Server Data Tools.
Использование простых выражений
Простые выражения отображаются в области конструктора и в диалоговых окнах в скобках; например, поле набора данных отображается как [ProductID]. Простые выражения создаются системой автоматически, при перетаскивании поля из набора данных в текстовое поле. Создается заполнитель, а выражение определяет базовое значение. Вы также можете вводить выражения непосредственно в ячейку области данных или текстовое поле как в области конструктора, так и в диалоговом окне (например, [ProductID]).
В следующей таблице приведены примеры использования простых выражений. В таблице описана функциональность, задаваемое свойство, диалоговое окно, в котором оно обычно задается, и значение свойства. Простые выражения можно вводить непосредственно в области конструктора, в диалоговом окне или на панели свойств, а также, как любые другие выражения, изменять в диалоговом окне «Выражение».
| Функция | Свойство, контекст и диалоговое окно | Значение свойства |
|---|---|---|
| Задать поле набора данных для отображения в текстовом поле. | Свойство Value для заполнителя внутри текстового поля. Используйте диалоговое окно Свойства заполнителя — Общие. | [Sales] |
| Агрегатные значения для группы. | Значение свойства для местозаполнителя в строке, связанной с группой tablix. Используйте диалоговое окно Свойства текстового поля. | [Sum(Sales)] |
| Укажите номер страницы. | Значение свойства для заполнителя в текстовом поле, расположенном в верхнем колонтитуле страницы. Используйте диалоговое окно Свойства текстового поля — Общие. | [&PageNumber] |
| Отобразить значение выбранного параметра. | Свойство Value для заполнителя внутри текстового поля на поверхности конструктора. Используйте диалоговое окно Свойства текстового поля — Общие. | [@SalesThreshold] |
| Задать определение группы для области данных. | Выражение группировки для группы табликса. Используйте диалоговое окно Свойства группы табликса — Общие. | [Category] |
| Исключить из таблицы значение конкретного поля. | Уравнение фильтра для табликса. Используйте диалоговое окно Свойства табликса — Фильтры. | В качестве типа данных выберите Integer.[Quantity]>100 |
| Включить только конкретное значение для фильтра группирования. | Уравнение фильтра для группы табликса. Используйте диалоговое окно Свойства группы табликса — Фильтры. | [Category]=Clothing |
| Исключить из набора данных конкретные значения нескольких полей. | Уравнение фильтра для группы в табликсе. Используйте диалоговое окно Свойства табликса — Фильтры. | =[Color]<>Red=[Color]<>Blue |
| Задать порядок сортировки по существующему полю таблицы. | Выражение сортировки в табликсе. Используйте диалоговое окно Свойства табликса — Сортировка. | [SizeSortOrder] |
| Связать параметр запроса с параметром отчета. | Коллекция параметров набора данных. Используйте диалоговое окно Свойства набора данных — Параметры. | [@Category][@Category] |
| Передать параметр из основного отчета в подотчет. | Коллекция параметров подотчета. Используйте диалоговое окно Свойства вложенного отчета — Параметры. | [@Category][@Category] |
Использование сложных выражений
Сложные выражения могут содержать несколько встроенных ссылок, операторов и вызовов функций и отображаются на рабочей области конструктора как <<Expr>>. Чтобы просмотреть или изменить текст выражения, нужно открыть диалоговое окно Выражение или ввести выражение непосредственно в панели свойств. В приведенной ниже таблице описаны типичные примеры применения сложных выражений для вывода или организации данных и для изменения внешнего вида отчета. Указаны задаваемое свойство, диалоговое окно, в котором оно обычно задается, и значение свойства. Выражение можно ввести непосредственно в диалоговом окне, в области конструктора или в панели свойств.
| Функция | Свойство, контекст и диалоговое окно | Значение свойства |
|---|---|---|
| Агрегатные вычисления значений в наборе данных. | Значение свойства для заполнителя в текстовом поле. Используйте диалоговое окно Свойства заполнителя — Общие. | =First(Fields!Sales.Value,"DataSet1") |
| Объединить текст и выражения в одном текстовом поле. | Значение для заполнителя в текстовом поле, размещённом в верхнем или нижнем колонтитуле страницы. Используйте диалоговое окно Свойства заполнителя — Общие. | ="This report began processing at " & Globals!ExecutionTime |
| Вычислить агрегированное значение для набора данных в другом контексте. | Значение для заполнителя внутри текстового поля, размещённого в группе табликса. Используйте диалоговое окно Свойства заполнителя — Общие. | =Max(Fields!Total.Value,"DataSet2") |
| Форматировать данные в текстовом поле в зависимости от их значения. | Цвет замещающего текста внутри текстового поля в строке сведений для табликса. Используйте диалоговое окно Свойства текстового поля — Шрифт. | =IIF(Fields!TotalDue.Value < 10000,"Red","Black") |
| Вычислите значение один раз, чтобы ссылаться на него по всему отчету. | Значение для переменной отчета. Используйте диалоговое окно Свойства отчета — Переменные. | =Variables!MyCalculation.Value |
| Включить в набор данных конкретные значения нескольких полей. | Уравнение фильтра для группы в табликсе. Используйте диалоговое окно Свойства табликса — Фильтры. | В качестве типа данных выберите Boolean.=IIF(InStr(Fields!Subcat.Value,"Shorts")=0 AND (Fields!Size.Value="M" OR Fields!Size.Value="S"),TRUE, FALSE)=TRUE |
| Скрыть текстовое поле на поверхности конструктора, которое пользователь может показывать и скрывать с помощью логического параметра с именем Show. | Свойство Hiddenproperty у текстового поля. Используйте диалоговое окно Свойства текстового поля — Видимость. |
=Not Parameters!
Показать<логический параметр>.Value |
| Динамически задать содержимое верхнего или нижнего колонтитулов страницы. | Значение заполнителя внутри текстового поля, которое находится в верхнем или нижнем колонтитуле страницы. | ="Page " & Globals!PageNumber & " of " & Globals!TotalPages |
| Динамически задать источник данных с помощью параметра. | Строка подключения в источнике данных. Используйте диалоговое окно Свойства источника данных — Общие. | ="Data Source=" & Parameters!ServerName.Value & ";initial catalog=AdventureWorks2022" |
| Задать все значения для многозначного параметра, выбранного пользователем. | Значение заполнителя в текстовом поле. Используйте диалоговое окно Свойства табликса — Фильтры. | =Join(Parameters!MyMultivalueParameter.Value,", ") |
| Указать разрывы страниц через каждые 20 строк в табликсе, не содержащем других групп. | Выражение группы для группы в табликсе. Используйте диалоговое окно «Свойства группы», страница «Разрывы страниц». Установите параметр Между всеми экземплярами группы. | =Ceiling(RowNumber(Nothing)/20) |
| Задать условную видимость в зависимости от значения параметра. | Скрытое свойство для табликса. Используйте диалоговое окно Свойства табликса — Видимость. |
=Not Parameters!<
логический параметр>.Value |
| Укажите дату, отформатированную для определенной культуры. | Значение заполнителя внутри текстового поля в области данных. Используйте диалоговое окно Свойства текстового поля — Общие. | =Fields!OrderDate.Value.ToString(System.Globalization.CultureInfo.CreateSpecificCulture("de-DE")) |
| Объедините строку и число, отформатированное как процент с точностью до двух знаков после запятой. | Значение заполнителя внутри текстового поля в области данных. Используйте диалоговое окно Свойства текстового поля — Общие. | ="Growth Percent: " & Format(Fields!Growth.Value,"p2") |
Связанный контент
- Выражения в отчете с разбивкой на страницы (построитель отчетов)
- Примеры выражений в страницированных отчётах Report Builder
- Параметры отчета с разбивкой на страницы в Report Builder
- Примеры уравнений фильтра в отчете с разбивкой на страницы (построитель отчетов)
- Фильтрация, группировка и сортировка данных в отчётах с разбивкой на страницы в Report Builder
- Верхние и нижние колонтитулы страниц в отчете с разбивкой на страницы (построитель отчетов)
- Форматирование текста и заполнителей в отчетах с разбивкой на страницы (построитель отчетов)
- Скрыть элемент (Построитель отчетов)