Добавление интерактивной сортировки в таблицу или матрицу в отчетах с разбивкой на страницы (построитель отчетов)

Применимо: Microsoft построитель отчетов (SSRS) Power BI построитель отчетов конструктор отчетов в SQL Server Data Tools

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

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

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

Примечание.

Создать и изменить определение для отчета на страницу (RDL-файл) можно с помощью построителя отчетов (Майкрософт), построителя отчетов Power BI и конструктора отчетов в SQL Server Data Tools.

В этой статье

Сортировка строк сведений для таблицы без групп

Сортировка родительской группы строк верхнего уровня для таблицы или матрицы

Сортировка дочерних групп или строк сведений для группы

Сортировка строк на основе сложного выражения группы

Синхронизация порядка сортировки для нескольких регионов данных

Сортировка строк с подробными сведениями из таблицы, не содержащей групп

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

Добавление кнопки интерактивной сортировки в заголовок столбца и сортировка таблицы по значению

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

  2. Выберите интерактивную сортировку.

  3. Выберите Включить интерактивную сортировку для этого текстового поля.

  4. В разделе "Выбор того, что нужно сортировать", выберите строки сведений.

  5. В поле Сортировать поукажите выражение сортировки. В списке выберите поле, соответствующее столбцу, для которого вы определяете действие сортировки. Например, для заголовка столбца с именем Title choose [Title]. Указание выражения сортировки обязательно.

  6. Нажмите ОК.

  7. Повторите шаги 1–6 для каждого столбца, в который нужно добавить кнопку интерактивной сортировки.

Чтобы проверить действие сортировки, нажмите кнопку "Запустить для предварительного просмотра отчета", а затем нажмите кнопки интерактивной сортировки.

В начало

Сортировка родительской группы строк верхнего уровня для таблицы или матрицы

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

Добавление кнопки интерактивной сортировки в заголовок столбца и группы сортировки

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

  2. Выберите интерактивную сортировку.

  3. Выберите Включить интерактивную сортировку для этого текстового поля.

  4. В разделе "Выбор того, что нужно сортировать", выберите "Группы".

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

    Примечание.

    Для групп на основе сложных выражений вручную введите выражение группы в поле Сортировать по .

  6. Нажмите ОК.

Чтобы проверить действие сортировки, нажмите кнопку "Запустить для предварительного просмотра отчета", а затем нажмите кнопки интерактивной сортировки.

В начало

Сортировка дочерних групп или строк подробностей в группе

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

Добавление кнопки интерактивной сортировки в текстовое поле в заголовке строки группы и сортировке дочерних групп или строк сведений

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

  2. Выберите интерактивную сортировку.

  3. Выберите Включить интерактивную сортировку для этого текстового поля.

  4. В разделе "Выбор того, что нужно сортировать", выберите один из следующих вариантов:

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

    • Группы: выберите группы для сортировки значений дочерних групп. Для этого параметра поле Сортировать по автоматически заполняется выражением группы.

  5. Нажмите ОК.

Чтобы проверить действие сортировки, нажмите кнопку "Запустить для предварительного просмотра отчета", а затем нажмите кнопки интерактивной сортировки.

В начало

Сортировка строк на основе сложного выражения группы

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

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

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

Добавление кнопки интерактивной сортировки в заголовок столбца и сортировка нескольких групп

  1. В представлении конструктора отчетов добавьте матрицу.

  2. Перетащите числовое поле в ячейку данных и свяжите набор данных с матрицей.

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

  3. Убедитесь, что матрица выбрана в области конструктора. В области группирования отображается группа строк и столбцов по умолчанию.

  4. В области "Группы строк" щелкните правой кнопкой мыши группу строк по умолчанию и выберите пункт "Изменить группу". Откроется диалоговое окно "Свойства группы".

  5. В поле Имязамените имя по умолчанию именем, определяющим несколько групп, по которым нужно выполнить сортировку.

  6. В выражениях группы в группе нажмите кнопку Expression (fx), чтобы открыть диалоговое окно "Выражение ".

  7. Введите выражение, указывающее все поля, по которым требуется сгруппировать. Например, следующее выражение группы объединяет поле с именем Color и полем с именем Size: =Fields!Color.Value & Fields!Size.Value.

  8. Нажмите ОК.

    Вы определили группу. Затем перетащите поля для отображения в область текста табликса матрицы. Добавьте поля, выбранные для группирования на шаге 7, в область текста табликса, каждое в собственный столбец.

    Для этого сценария не требуется первый столбец в области групп строк табликса. Чтобы удалить столбец, щелкните правой кнопкой мыши заголовок столбца и выберите пункт "Удалить столбцы". Диалоговое окно спрашивает, следует ли удалять связанные группы. Выберите Нет. Область группы строк удаляется, и остается только область текста табликса.

    Затем удалите группу столбцов по умолчанию.

  9. В области "Группы столбцов" щелкните правой кнопкой мыши группу столбцов по умолчанию и выберите пункт "Удалить группу". Диалоговое окно спрашивает, следует ли удалить группу и связанные строки и столбцы или только группу. Выберите " Удалить только группу". Удаляется группа столбцов и область группы столбцов. Остается только область текста табликса.

    Затем добавьте кнопку интерактивной сортировки в текстовое поле, охватывающее матрицу.

  10. Выберите текстовое поле в первой строке, а затем выберите "Свойства текстового поля".

  11. Выберите интерактивную сортировку.

  12. Выберите Включить интерактивную сортировку для этого текстового поля.

  13. В разделе "Выбор того, что нужно сортировать", выберите "Группы".

  14. В списке выберите имя группы, созданной на шаге 5. Выражение группы автоматически копируется в текстовое поле Сортировать по .

  15. Нажмите ОК.

    Вы добавили кнопку сортировки в текстовое поле.

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

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

В начало

Синхронизация порядка сортировки для нескольких регионов данных

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

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

Синхронизация порядка сортировки с диаграммой для кнопки интерактивной сортировки в области данных матрицы

  1. В представлении конструктора отчетов добавьте матрицу в отчет.

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

  3. Определите группу строк. По умолчанию порядок сортировки группы равен выражению группы.

  4. Добавьте к отчету диаграмму, например, круговую.

  5. Перетащите поле, выбранное на шаге 2, в область Значение на панели Данные диаграммы .

  6. Перетащите поле, по которому будет производиться группирование, в область Группы категорий .

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

  7. Щелкните правой кнопкой мыши группу категорий и выберите "Свойства группы категорий".

  8. Выберите "Сортировка".

  9. Выберите Добавить. В сетку параметров сортировки добавится новая строка сортировки.

  10. В разделе "Сортировка по" в списке выберите то же поле, которое вы выбрали на шаге 6, чтобы сгруппировать по.

  11. Нажмите ОК.

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

  13. Выберите интерактивную сортировку.

  14. Выберите Включить интерактивную сортировку для этого текстового поля.

  15. В разделе "Выбор того, что нужно сортировать", выберите "Группы".

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

  17. Выберите Также применять эту сортировку к другим группам и областям данных в:. В текстовом поле введите имя набора данных. Например, введите SalesData.

  18. Нажмите ОК.

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

В начало

Фильтрация, группирование и сортировка данных (построитель отчетов)
Интерактивная сортировка (построитель отчетов)
Сортировка данных в регионе данных (построитель отчетов)
Узнайте о гибкости области данных Табликса (построитель отчетов)