Упорядочивание в системе компоновки данных желательно выполнять средствами самой системы компоновки данных, а не средствами языка запросов.
По умолчанию каждая группировка будет упорядочена по полям группировки. Например, в отчете есть группировка по полю Номенклатура и не указан порядок. В таком случае упорядочивание группировки будет осуществляться по полю Номенклатура.
Если для отчета задана другое упорядочивание, то сначала будет применено упорядочивание отчета, а потом упорядочивание по полю группировки.
Сортировку можно задать не только в настройках варианта отчета, но и в наборе данных, причем в наборе данных можно устанавливать сортировку по логическому условию.
Например надо отсортировать записи следующим образом: сначала записи с услугой "Ремонт компьютера", а потом по коду с убыванием.
На наборе данных в поле "Наименование" открываем выражение упорядочивания.
Диалог выражения упорядочивания упорядочивания содержит:
- Выражение – текст выражения на языке выражений системы компоновки данных;
- Тип упорядочивания – по убыванию или по возрастанию;
- Необходимость упорядочивания – флажок для определения упорядочивания ссылочных полей. Если данный флажок установлен в значение Истина, то для упорядочивания ссылочных полей, полученных в результате вычисления выражения, будут использоваться поля, по которым следует упорядочивать таблицу, на которую осуществляется ссылка. В противном случае ссылки будут упорядочиваться в соответствии с правилами сравнения ссылочных значений компоновки данных, описанных в документации.
В выражении упорядочивания добавляем 2 строки:
- Выражение: "Выбор Когда Наименование = "Ремонт компьютера" Тогда 1 Иначе 2 Конец ", тип упорядочивания "по возрастанию"
- Выражение: "Код", тип упорядочивания "по убыванию"
Теперь, если в настройках варианта отчета выбрать сортировку по полю "Наименование", то сортировка будет не по наименованию, а по сложной сортировке, которую мы описали в наборе данных.
|