Поиск и сортировка в таблице отчета
По данным отчета можно осуществлять поиск и сортировку. Поиск можно осуществлять по данным всех столбцов в отчете или по конкретному столбцу. Для того чтобы задать возможность поиска данных определенному столбцу, в поле поиск объектного типа СТОЛБЕЦ_СХЕМЫ устанавливается значение ДА. Индикатором того, что у столбца установлена возможность поиска данных, является "невыпуклый" вид заголовка столбца.
Кроме того, можно задать столбец быстрого поиска. Быстрый поиск позволяет сразу найти и перейти к нужной записи отчета без вызова стандартного диалога поиска. Для того чтобы воспользоваться быстрым поиском, нужно начать печатать то, что нужно найти. В строке состояния отображается вводимая строка для поиска. При первом же совпадении набранной строки с данными в отчете курсор будет перемещен на нужную ячейку отчета с искомыми данными. Быстрый поиск осуществляется по всем нижестоящим ячейкам столбца быстрого поиска относительно текущей позиции курсора. Задать столбец быстрого поиска можно при помощи метода УСТ_СТОЛБЕЦ_ПОИСКА .
В отчетах можно производить сортировку столбцов по различным условиям: по данным столбцов или по значениям дополнительного атрибута сортировки, по убыванию или по возрастанию. Условия сортировки задаются в объектном типе СОРТ_СТОЛБЕЦ. Дополнительные атрибуты сортировки позволяют хранить дополнительные значения, по которым и будет осуществляться сортировка. Примером использования дополнительных атрибутов сортировки является случай, когда нужно отсортировать столбец со строковыми значениями, полученными неким преобразованием (например, каким-то специальным форматированием) из числовых значений. При использовании простой сортировки по данным столбца со строковыми данными будет произведена сортировка строк по алфавиту. Исходные числовые значения можно сохранить в дополнительном атрибуте и выполнять сортировку по этому атрибуту, а не по столбцу со строковым представлением.
Метод СОРТИРОВКА производит сортировку по данным указанного столбца. Для использования атрибутов сортировки необходимо сначала добавить дополнительный атрибут сортировки при помощи метода ДОБ_АТР_СОРТ, затем установить значение атрибуту методом УСТ_АТР_СОРТ, после чего применить метод СОРТИРОВКА.
Пример
Пример иллюстрирует функцию, которая устанавливает возможность поиска по нескольким столбцам и столбец быстрого поиска, а также осуществляет сортировку столбца со строковыми значениями цены по значению дополнительного атрибута, которое хранит числовое значение цены.
ФУНКЦИЯ Поиск_Сортировка(ЦЕЛОЕ: номер_стр) //установка возможности поиска ЕСЛИ УСТ_ИМЯ_СХЕМЫ("схема") ТО ПЕРЕМ СХЕМА: схема СЧИТАТЬ_СХЕМУ(схема) схема.столбцы[1].поиск = ДА схема.столбцы[2].поиск = ДА схема.столбцы[4].поиск = ДА УСТАНОВИТЬ_СХЕМУ(схема) КОНЕЦ_ЕСЛИ //установка столбца быстрого поиска УСТ_СТОЛБЕЦ_ПОИСКА("наим") //добавление атрибута сортировки ДОБ_АТР_СОРТ("атр_сорт", 0) //присваивание значения атрибуту сортировки УСТ_АТР_СОРТ(номер_стр, "атр_сорт", ЗНАЧЕНИЕ("цена", номер_стр)) //установка параметров сортировки парам_сорт.столбцы[5].столбец = "атр_сорт" парам_сорт.столбцы[5].убыв = НЕТ СОРТИРОВКА(парам_сорт) КОНЕЦ_ФУНКЦИИ