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

Инструкция <- WHEN

Инструкция <- WHEN - создание вычисляемого события.

Синтаксис

propertyId(param1, ..., paramN) <- valueExpr WHEN eventExpr;

Описание

Инструкция <- WHEN создает вычисляемое событие для свойства, указанного в левой части инструкции. Этот оператор может объявлять свои локальные параметры при задании свойства, значение которого будет изменяться. Затем эти параметры могут быть использованы в выражениях условия и значения, на которое будет изменяться свойство.

Для свойства можно задать только одно вычисляемое событие.

Параметры

  • propertyId

    Идентификатор свойства, значение которого будет изменено при наступлении события.

  • param1, ..., paramN

    Типизированные параметры свойства, значение которого будет изменено при наступлении события. Количество этих параметров должно совпадать с количеством параметров изменяемого свойства.

  • valueExpr

    Выражение, на значение которого необходимо изменить значение свойства.

  • eventExpr

    Выражение, значение которого является условием создаваемого события.

Примеры

// при добавлении клиента, по умолчанию, предоставить ему заданную скидку
defaultDiscount = DATA NUMERIC[6,2] ();
discount = DATA NUMERIC[6,2] (Customer);
discount(Customer c) <- defaultDiscount() WHEN SET(c IS Customer);

quantity = DATA NUMERIC[10,2] (OrderDetail);
price = DATA NUMERIC[10,2] (OrderDetail);
sum = DATA NUMERIC[10,2] (OrderDetail);

sum(OrderDetail d) <- quantity(d) * price(d) WHEN CHANGED(quantity(d)) OR CHANGED(price(d));