Фильтр списка записывается в виде логического выражения. Например:
`[Статус]='Выдано' | [Статус]='Готово'`
Слева пишется поле формы-источника, затем операция сравнения (=, <>, < и т. д.), затем выражение. (Подробнее о выражениях можно узнать здесь.) Условия могут соединятся логическими операциями (И/ИЛИ). Вы можете использовать в выражениях поля, например:
`[устройство]=[устройство] & [марка]=[марка]
[устройство]=[!устройство]`
К обычным операциям сравнения для текстовых полей добавлено еще два: == (найти фрагмент текста) и # (найти, кроме фрагмента текста).
Еще одна возможность: в фильтрах можно использовать необязательные поля. Если значение такого поля равно Null, то оно исключается из фильтра. Для этого перед именем поля ставьте вопросительный знак. Например:
`[?клиент]=[заказчик] & [статус]='Готово'`
Если [заказчик]=Null, то условие исключается из выражения.
Дополнительные операции сравнения и необязательные поля работают ТОЛЬКО в фильтрах списков и источников, в обычных выражениях они не применяются.
Условия фильтра можно брать в фигурные скобки, чтобы изменить их приоритет. Например:
`{[устройство]=[!устройство] | [устройство]=null} & {[марка]=[!марка] | [марка]=null}`
Если в выражениях используются поля, то программа отслеживает изменения в этих полях и обновляет список, даже если он находится в дочерней форме.