Перейти к основному содержимому
Версия: 5.x

Фильтр (FILTER)

Оператор фильтра создает свойство, которое возвращает TRUE, если набор объектов входит в установленный в заданной группе объектов фильтр, и NULL в обратном случае.

Язык

Для объявления свойства, определяющего вхождение в фильтр, используется оператор FILTER.

Примеры

CLASS Store;
name = DATA STRING[100] (Store);

FORM stores
OBJECTS s = Store
;
countF 'Кол-во фильтр. складов' = GROUP SUM 1 IF [ VIEW stores.s](Store s);
orderF 'Порядок в группе объектов' (Store s) = PARTITION SUM 1 IF [ FILTER stores.s](s) ORDER [ ORDER stores.s](s), s;
setNameX 'Добавить X к имени'() {
LOCAL k = INTEGER ();
k() <- 0;
FOR [ FILTER stores.s](Store s) ORDER [ ORDER stores.s](s) DO {
k() <- k() + 1;
name(s) <- 'X' + k() + name(s);
}
}