Документация на documentation.lsfusion.org скоро станет недоступной, используйте, пожалуйста, https://docs.lsfusion.org/ru.

Перейти к концу метаданных
Переход к началу метаданных

Оператор MESSAGE - создание действия, показывающего пользователю сообщение. 

Синтаксис

MESSAGE expression [syncType]

Описание

Оператор MESSAGE создает действие, которое выдает пользователю окно с текстовым сообщением. Текстовое сообщение может быть представлено как строковой константой, так и другим более сложным выражением, значением которого является строка, либо значение которого преобразовывается в строку.

Параметры

expression

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

syncType

Определяет, когда завершить выполнение созданного действия:

  • WAIT - после завершения действия клиентом (закрытия сообщения). Это значение используется по умолчанию.
  • NOWAIT -  сразу после подготовки информации для передачи клиенту (чтения текста сообщения). Если во время выполнения некоторого продолжительного действия вызываются несколько MESSAGE NOWAIT действий, то они не создают отдельных сообщений, а объединяются с предыдущими сообщениями такого же вида. В результате пользователю в конце выполнения продолжительного действия будет показано одно объединенное сообщение.

Примеры

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 message  { MESSAGE 'Hello World!'; }                                // простое текстовое сообщение

isGood = DATA BOOLEAN (Item);
stringData(Item i)   { 
    MESSAGE IF isGood(i) THEN 'Good' ELSE 'Bad';   // в зависимости от того, какой item будет передан действию, будет показываться окно с текстом 'Good', либо с текстом 'Bad'
}
  
testMessage()  {                    // В этом случае пользователю будет выдано пять текстовых сообщений
    LOCAL i = INTEGER();
    i() <- 0;
    WHILE i() < 5 DO {
        i() <- i() + 1;
        MESSAGE i();
    }
}
 
testMessageNowait()  {              // В случае NOWAIT пользователю будет выдано одно текстовое сообщение, объединяющее сообщения от пяти вызовов MESSAGE
    LOCAL i = INTEGER();
    i() <- 0;
    WHILE i() < 5 DO {
        i() <- i() + 1;
        MESSAGE i() NOWAIT;
    }
}

  • Нет меток