Блоки фильтров и сортировок
Блоки фильтров и сортировок инструкции FORM
- добавление фильтров и сортировок в структуру формы, а также групп фильтров и пользовательских фильтров в интерактивное представление формы.
Блок фиксированных фильтров
Синтаксис
FILTERS expression1, ..., expressionN
Описание
Блок фиксированных фильтров добавляет на форму фильтры, которые будут автоматически применяться при чтении любых данных на форме. В одном блоке можно перечислить через запятую произвольное количество фильтров.
Каждый фильтр задается выражением, которое определяет условие фильтрации. Во всех выражениях в качестве параметров можно использовать имена уже объявленных объектов на форме.
Параметры
-
expression1, ..., expressionN
Список выражений - фильтров.
Примеры
CLASS Stock;
name = DATA ISTRING[100] (Stock);
region = DATA Region (Stock);
CLASS Group;
name = DATA ISTRING[100] (Group);
group = DATA Group(Sku);
nameGroup (Sku s) = name(group(s));
active = DATA BOOLEAN (Sku);
onStock = DATA NUMERIC[10,2] (Stock, Sku);
FORM onStock 'Остатки' // создаем форму, в которой можно смотреть остатки по товарам
OBJECTS r = Region PANEL // добавляем объект регион
// добавляем свойство имя региона, при нажатии на который пользователь сможет его выбирать
PROPERTIES name(r) SELECTOR
OBJECTS st = Stock // добавляем объект склады
PROPERTIES name(st) READONLY // добавляем имя склада
FILTERS region(st) == r // добавляем фильтр, чтобы показывались только склады выбранного региона
OBJECTS s = Sku // добавляем товары
// добавляем наименование группы товаров, присваивая ему groupName в качестве имени свойства на форме,
// а также наименование и остаток по товару
PROPERTIES READONLY groupName = nameGroup(s), name(s), onStock(st, s)
FILTERS active(s) // включаем, чтобы показывались только активные товары
;
Блок пользовательских фильтров
Синтаксис
USERFILTERS formProperty1, ..., formPropertyN
Описание
Блок пользовательских фильтров добавляет на форму пользовательские фильтры. Они аналогичны тем, которые пользователь может добавить сам по нажатию F3
, однако их невозможно удалить.
Каждый фильтр задается свойством на форме, которое уже должно быть добавлено на форму ранее.