Это старая версия документа.
Окно Фильтра (Рис. 1) открывается с помощью кнопки или с помощью комбинации клавиш «Ctrl+D». Фильтр можно открыть из окна с любым списком элементов.
Ниже в таблице показаны кнопки панели инструментов окна фильтра, которые могут находиться в нажатом или отжатом состоянии.
Таблица 11.1.1
Внимание: Для хранимого фильтра (см. п. 11.3) с видом результата «Форма справочника» управление показом группы осуществляется отметкой пункта меню «Действия –> Опции списка –> Показать группу».
Кнопка сохраняет настроенный фильтр как хранимый фильтр. Подробнее см. п. 11.3 «Хранимые фильтры».
Используется для фильтрации элементов, лежащих только в заданной группе. Сама группа фильтра не войдет в результат фильтра.
Щелчок по кнопке «Сохранить» запускает выполнение фильтра. Щелчок по кнопке «Отмена» закрывает окно фильтра.
На закладке «Условия» показана таблица со списком параметров класса и полями для ввода условий фильтра. Условия фильтра для параметра задаются в ячейках: «Тип», «Оператор», «Значение», «Не», «Потомки».
В ячейке «Тип» выбирается тип операции сравнения. Тип операции по умолчанию − «Нет», т.е. операция не задана. Чтобы задать условие фильтра, нужно выбрать тип операции «Значение», «Список значений» или «Диапазон» (последнее только для даты).
В ячейке «Оператор» из списка перечислений выбирается оператор сравнения:
В ячейке «Значение» вводится значение параметра. В зависимости от типа параметра это значение либо вводится с клавиатуры, либо выбирается из справочника, списка перечислений или календаря. Для типа операции «Список значений» значения выбираются из списка «Список значений».
Для параметра с типом «Дата» можно указать типы сравнения «Значение» или «Диапазон». Если выбран тип «Значение», то в ячейке «Значение» открывается календарь для выбора конкретной даты. Если выбран тип «Диапазон», то в ячейке «Значение» открывается окно «Выбор периода». Кроме того, для сравнения даты можно вводить специальные константы. Подробнее об этом сказано в п. «Использование системных констант в фильтре».
Опция «Не» служит для отрицания указанного условия, она включается и выключается щелчком мышкой в поле. Например, если выбрать оператор сравнения равно и включить опцию «Не», то в результат фильтрации войдут все объекты, у которых значение параметра не равно заданному.
Опция «Потомки». Параметр, на который накладывается условие, может являться группой, то есть иметь потомков. В этом случае в качестве значения параметра может быть указана группа, а не конечный элемент. Для того чтобы сравнение проводилось не только с группой, но и с её потомками, нужно включить опцию «Потомки».
Чтобы отменить условия фильтра, в ячейке «Тип» нужно выбрать − «Нет».
Внимание: Не рекомендуется настраивать условия по рассчитываемым параметрам, например, параметр «Название» в классе Процессы. Необходимо использовать хранимое поле «Название процесса».
Некоторые параметры класса имеют сложную структуру. Слева от названия такого параметра показан значок «+». Щелчок по значку «+» раскрывает структуру параметра, представляющую собой список параметров, для которых также можно задать условия фильтра.
Если условие задано для параметра нижнего уровня структуры, то на каждом уровне-владельце в ячейке «Тип» необходимо указать тип «Подфильтр».
Для возврата к основной структуре параметра нужно щелкнуть по значку , показанному слева в заголовке списка параметров (Рис. 11.1.2).
Рис. 11.1.2
Операция подобия используется только для строковых и текстовых параметров. В ячейке «Значение» возможно использование шаблонных символов «_», «%», «[», «]» и «^».
Таблица 11.1.2 Использование шаблонных символов для операции подобия
Комбинация символов | Описание | Пример |
% | Любая строка длиной от нуля и более символов | Фильтр по классу «Бумажные документы». На закладке «Условия»: для параметра «Название» выбран Тип – «Значение», Оператор – «~», Значение – «%договор%». Результат: перечень всех документов, в которых встречается слово «договор». |
_ (подчеркивание) | Любой одиночный символ | Фильтр по классу «Физические лица». На закладке «Условия»: для параметра «Фамилия» выбран Тип – «Значение», Оператор − «~», Значение – «_етров». Результат: перечень всех физических лиц, фамилия которых состоит из шести букв и заканчивается сочетанием «етров» (Петров, Ветров и т.п.). |
_% | Любая строка длиной больше нуля символов | Фильтр по классу «Процессы». На закладке «Условия»: для параметра «Содержание деятельности» выбран Тип – «Значение», Оператор – «~», Значение «_%». Результат: перечень всех процессов, у которых заполнен параметр «Содержание деятельности». |
[<перечень символов>] | Задает перечень символов, которые могут быть на указанной позиции в слове или тексте | Фильтр по классу «Физические лица». На закладке «Условия»: для параметра «Фамилия» выбран Тип – «Значение», Оператор − «~», Значение – «В[ои]лков». Результат: перечень всех физических лиц с фамилиями, начинающимися на «В», оканчивающимися на «лков» и имеющими в качестве второго символа букву «о» или «и» (Волков и Вилков). |
[^<перечень символов>] | Задает перечень символов, которые не могут быть на указанной позиции в слове или тексте | Фильтр по классу «Физические лица». На закладке «Условия»: для параметра «Фамилия» выбран Тип – «Значение», Оператор − «~», Значение – «В[^ои]лков». Результат: перечень всех физических лиц с фамилиями, начинающимися на «В», оканчивающимися на «лков» и не имеющими в качестве второго символа букву «о» или «и» (Вялков и т.п.). |
Условием фильтра может служить имя системной константы. Чтобы ввести в ячейку «Значение» константу, щелкните на строке параметра правой кнопкой мышки. В контекстном меню строки выберите команду «Вставить константу», при этом в ячейке «Значение» появятся квадратные скобки. Установите курсор между скобками и введите системное название константы. В ячейке «Тип» выберите тип операции сравнения «Значение», выберите оператор сравнения.
Таблица 11.1.3 Константы для подстановки в качестве Значения
Константа | Тип | Описание |
База.ПолноеИмя | Строка | В качестве значения подставляется Имя текущего пользователя (пункт Главного меню «Сервис –> Настройки пользователя»). |
База.Пользователь | Строка | В качестве значения подставляется текущий Пользователь (пункт Главного меню «Сервис –> Настройки пользователя»). |
БизнесМодель.Физлицо | Объект | В качестве значения подставляется объект – Физическое лицо, поставленный в соответствие текущему пользователю (пункт Главного меню «Сервис –> Настройки пользователя»). |
База.ДатаС | Дата | В качестве значения подставляется Дата начала периода в Системных настройках пользователя (пункт Главного меню «Сервис –> Настройки пользователя», гиперссылка Дополнительно). |
База.ДатаПо | Дата | В качестве значения подставляется Дата конца периода в Системных настройках пользователя (пункт Главного меню «Сервис –> Настройки пользователя», гиперссылка Дополнительно). |
ДатаС | Дата | В качестве значения подставляется 00ч00мин даты начала Тип периода в Системных настройках пользователя (пункт Главного меню «Сервис –> Настройки пользователя», гиперссылка Дополнительно). |
ДатаПо | Дата | В качестве значения подставляется 00ч00мин следующего дня после конца Тип периода в Системных настройках пользователя (пункт Главного меню «Сервис –> Настройки пользователя», гиперссылка Дополнительно). |
Для параметров с типом «Дата» может использоваться оператор сравнения «Диапазон».
Рис. 11.1.3
Таблица 11.1.4 Константы даты для подстановки в качестве Диапазона
Константа | Описание |
СвободныйПериод | В диапазон значений подставляется тип периода (пункт Главного меню «Сервис –> Настройки пользователя», гиперссылка Дополнительно, берется диапазон дат с Даты начала периода по Дату конца периода) |
Сегодня | В диапазон значений подставляется текущая дата |
ЗаЭтуНеделю | В диапазон значений подставляется текущая неделя |
ЗаЭтотМесяц | В диапазон значений подставляется текущий месяц |
ЗаЭтотКвартал | В диапазон значений подставляется текущий квартал |
ЗаЭтоПолугодие | В диапазон значений подставляется текущее полугодие |
ЗаЭтотГод | В диапазон значений подставляется текущий год |
Вчера | В диапазон значений подставляется вчерашняя дата |
ЗаПрошлуюНеделю | В диапазон значений подставляется прошлая неделя |
ЗаПрошлыйМесяц | В диапазон значений подставляется прошлый месяц |
ЗаПрошлыйКвартал | В диапазон значений подставляется прошлый квартал |
ЗаПрошлоеПолугодие | В диапазон значений подставляется прошлое полугодие |
ЗаПрошлыйГод | В диапазон значений подставляется прошлый год |
ИнтервалДат | В диапазон значений подставляется текущий период (пункт Главного меню «Сервис –> Настройки пользователя», гиперссылка Дополнительно, берется тот диапазон дат, который указан в параметре Тип периода) |
В диапазон подставляются значения с 00ч 00мин дня начала интервала до 00ч 00мин дня, следующего за днем конца интервала.
Внимание: Можно константу диапазона подставить для типа операции «Значение». В этом случае работа будет происходить с датой начала диапазона.
Внимание: Константы значений нельзя подставлять для типа операции «Диапазон».
В качестве констант можно использовать параметры Объекта по умолчанию любого класса в виде:
[<СистемноеНазваниеКласса>.<СистемноеНазваниеПараметра>]
Объектом по умолчанию называется корневая группа класса, любой справочник имеет объект по умолчанию. Например, для класса «Процессы» объектом по умолчанию является сама группа «Процессы».
Если в качестве константы подставляется параметр типа «Список», необходимо указывать тип фильтрации «Список значений».